Navigation

DIY Fully Automated Pickup Winder

  • Views Views: 2,110
  • Last updated Last updated:
  • This page describes the components and assembly instructions for a DIY fully automated pickup winder made from readily available components. Fully automated means that once you press "Start" the winder takes care of the rest of the work including turning the bobbin, guiding the wire onto the bobbin in even layers, and stopping when the desired number of turns have been wound. The goal of the winder is to make perfectly flat layers during the wind -- something impossible to achieve with a hand guided winder.

    Here is a close-up photo of the first layer of 42 AWG wire wound with this winder:
    first_layer_zoom.jpg

    And a video of the first version of this winder:
    Click to play demonstration video


    Hardware Components

    All components below are available from a few North American sellers with minimal shipping fees but if you live in other regions, or just have other preferred sources, comparable parts can be ordered from any vendor of your choosing.

    If you are new to microcontrollers and want to getting that part working before committing to the rest of the build, order these parts first then follow the software installation section below:
    The remaining parts complete the winder:
    • Stepper motor driver module (2) (about $2.50 each in a 5 pack)
      • Any of the common modules based on A4988 or DRV8825 will work
    • NEMA17 stepper motor with mounting bracket and cable (about $22)
    • Linear actuator (about $19)
    • Bobbin motor shaft coupler (about $15)
    • 20 V Power supply (about $13)
      • Any 15-22 V power supply with an Output of 2 A or more will work
    • Wood base board to mount components onto
      • Use anything that will fit components (ex: plywood, particle board etc)
    • Wood standoff block to mount bobbin motor off the board to allow bobbin clearance
    • Wood bobbin mounting block
    • 100 mm (4") ~14 AWG bare copper wire to use as a wire guide
    • 1 pair of large ~25 mm (1") fender washers
    • 1 pair felt pads ~25 mm (1") diameter
    • Tensioner spring, ~ 13 mm (1/2") long
    • Tensioner machine screw ~ 25 mm (1") long of a diameter that will fit through washers
    • Tension adjuster butterfly nut
    • Various screws
    • Light (ex: 26 AWG) hookup wire
    • Electronics solder
    Total cost should be around $100 CAD depending on shipping rates, taxes etc.

    Software Installation

    The pickup winder software (aka, sketch) is licensed under the CC BY-NC-SA license which means anyone is free to modify the code in any way they want. Feel free to change/add/delete whatever you would like!
    • Install the Arduino IDE by following these instructions: https://www.arduino.cc/en/Guide
      • Install the appropriate IDE version for your OS using links in the "Install the Arduino Desktop IDE" section
    • Connect the Arduino Nano to a USB port on your computer with the winder power switch turned off
    • Launch the IDE and click Tools->Manage Libraries...
      • Search for TM1638plus and click the Install button. Tested with V1.7.0 but newer versions may work also.
      • Once that finishes search again, this time for TimerOne and scroll to the library by Jesse Tane et. al. and click the Install button. Tested with V1.1.0 but newer versions may also work.
      • Once that finishes close the library manager window
    • Download a patched version of the AccelStepper library designed to work with interrupts from here and save it, taking note of the location
    • Install the AccelStepper library by clicking Sketch->Include Library-> Add .ZIP Library and choose the file saved in the previous step
    • Download the PickupWinder.ino file from here and save it, taking note of the location
      • Note: If you are using a 4096 step per rotation stepper motor for the wire guide, user @13ghosts contributed a modified version available here
    • In the Arduino IDE click:
      • File->Open and choose the file saved in the previous step. If prompted to move the file, click OK.
      • Tools->Board->Arduino AVR Board:->Arduino Nano
      • Tools->Board->Arduino AVR Processor:->ATmega328P (Old Bootloader) unless running a genuine Arduino board, then choose AVR Processor:->ATmega328P
      • Sketch->Upload

    You should see lights flickering on the Arduino board for a few seconds, followed by a success message at the bottom of the IDE window.

    Electronics Assembly

    All connections should be soldered with electronic resin core solder (not plumbing/acid core)
    • Cut the connector off the power supply cable, strip the ends off the wires and solder them to the prototype board
      • Check that the power supply Output voltage is less than 23 V!
    • Connect the voltage regulator to the power supply output and ground
      • BEFORE connecting the voltage regulator to the Arudino, adjust the voltage potentiometer until the regulator output voltage is between 4.8 and 5.2 V
    • Wire the Arduino Nano. For reference, the pins are labeled as follow:
    arduino-nano-pinout-300x236.png

    • Connect the Arduino GND pin to the power supply ground
    • Connect the Arduino 5V pin to the voltage regulator output pin
    • Connect the TM1638 LED+KEY module to the Arduino with light gauge hookup wire
      • Connect the Vcc pin to the voltage regulator output
      • Connect the GND pin to the power supply ground
      • Connect the STB pin to the Arduino D6 pin
      • Connect the CLK pin to the Arduino D7 pin
      • Connect the DIO pin to the Arduino D8 pin
    • Connect the stepper motor drivers to the Arduino. For reference, the motor controller pins are labeled as follows:
    A4988-Stepper-Motor-Driver-Pinout.png

      • Bobbin motor controllerConnect the EN (1) pin to Arduino D13 pinConnect the RST (5) and SLP (6) pins togetherConnect the STEP (7) pin to the Arduino D3 pin
        Connect the DIR (8) pin to the Arduino D2 pinConnect the GND (9) pin to the power supply groundConnect the VDD (10) pin to the voltage regulator outputConnect the stepper motor cable to pins 1B/1A/2A/2B (11-14)
        • Note: the connector can be installed in either direction but the blue wire normally goes to pin 11. However, if the motor spins in the wrong direction when wired this way simply flip the connector around so the blue wire is on pin 14.
        Connect the GND (15) pin to the power supply groundConnect the VMOT (16) pin to the power supply output
      • Wire guide motor controller
        • Connect the EN (1) pin to Arduino D13 pin
        • Connect the RST (5) and SLP (6) pins together
        • Connect the STEP (7) pin to the Arduino D5 pin
        • Connect the DIR (8) pin to the Arduino D4 pin
        • Connect the GND (9) pin to the power supply ground
        • Connect the VDD (10) pin to the voltage regulator output
        • Connect the stepper motor cable to pins 1B/1A/2A/2B (11-14)
          • Note: the connector can be installed in either direction but the blue wire normally goes to pin 11. However, if the motor spins in the wrong direction when wired this way simply flip the connector around so the blue wire is on pin 14.
        • Connect the GND (15) pin to the power supply ground
        • Connect the VMOT (16) pin to the power supply output
    • Adjust the current control potentiometers on the drivers to the lowest (furthest counterclockwise) setting
    • Connect the other end of the 4 wire stepper motor cable to the stepper motors

    Mechanical Assembly

    Most of this section requires fabrication of the wood pieces. Use whatever materials and techniques you prefer.
    • Cut the bobbin motor mounting block
      • Make the block at least as long/Wide as the motor bracket
      • Make the block high enough that the bobbin mounting board won't contact the base board when the motor is spinning, typically about 75 mm (3")
    • Attach the motor bracket to the motor mounting block
    • Attach the NEMA 17 stepper motor in the motor bracket with provided screws
    • Cut a bobbin mounting board from approx. 19 mm (3/4") Thick material to accommodate the largest bobbin width desired, typically about 75 mm (3") square
    • Drill a recess in one face to fit the Round spindle nut using a bit such as a forstner or spade
      • Mark the center point using diagonal lines from the opposing block corners
      • The nut should not protrude above the outer bobbin mounting board surface when installed!
    • Drill a 16 mm (5/8") hole for the shaft coupler
    • Install the shaft coupler onto the stepper motor and tighten the set screw
    • Attach the bobbin mounting board onto the shaft coupler and tighten the nut with the provided tool
    • Attach the bobbin motor mounting block to the base board using screws installed through the bottom of the board into pre-drilled holes
      • Be sure to leave room in front of the bobbin motor assembly for the linear actuator!
    • Twist a pigtail into one end of the ~100 mm (4") long ~14 AWG guide wire using needle nose pliers
      • The opening should be large enough to allow the intended magnet wire to pass through, but not significantly larger
      • Be sure there are no sharp surfaces on the guide wire as the magnet wire insulation is very Thin and could be damaged by sharp surfaces
    • Twist a loop in the other end of the wire large enough to pass a screw through the loop
    • Attach the guide wire to the linear actuator sled with an appropriate screw
    • Assemble the wire tensioner assembly by sandwiching the pair of felt pads between the washers on the tensioner screw
    • Drill a hole the size of the tensioner screw in the linear actuator sled
    • Pass the tensioner screw through the hole, securing with the butterfly nut
    • Attach the linear actuator to the base board in front of the bobbin motor
      • The middle of travel of the linear actuator should be approximately aligned with the outside face of the bobbin mounting board
      • The end of the wire guide should be as close to the bobbin mounting board as possible
    • Attach the LED display/keys module to the base board in a convenient location
    • Attach the prototype board in a location where it won't be disturbed/damaged
      • Optionally, install the prototype board in an enclosure to protect it
    • Attach wire clamps the wires and attach to the base board to keep wiring out of the way and provide a strain relief for the power supply cable
    • Flatten the face of the bobbin mounting board
      • This step is most easily accomplished using a power sander (ex: random orbit, rotary sander or flap sanding disc) while the bobbin motor is running
      • Sand the face until it is flat and there is no wobble when spinning

    Operation

    When assembly is complete, plug the power supply into a wall outlet. Within a few seconds the Arduino should boot and function like the example in the video above.

    The winder is designed to be completely controllable from the control keys and LED display. It does not require a USB connection after being programmed in the software installation section above.
    • Attach the bobbin to the bobbin mounting board, centering it over the middle of the shaft
    • Run the wire through the hole in the guide wire and tape the end to the outside of the bobbin to keep it from catching on anything during the wind
    • Manually turn the guide motor so that the wire is lined up with the inside Edge of the side of the bobbin closest to the bobbin motor
    • Manually turn the bobbin a few revolutions to start the wind with the wire in the correct position
    • Plug in the winder power supply and wait for the rEAdy message to appear
    • Press the "Setup" button
      • Each press of the Setup button will scroll to the next setup option:
        • turns
          • The number of turns in the wind
        • Copp diA
          • The outside diameter of the copper wire in micrometers
        • bob thic
          • The bobbin thickness (width of the bobbin wire channel) in millimeters
        • dirEctio
          • "StAndArd" (clockwise wind/counter-clockwise bobbin) or "CountEr" (counter-clockwise wind/clockwise bobbin)
        • rEstArt
          • Reset all values to start-up defaults
    • When the desired setup option is reached, press "Enter"
    • Use the "+", "-" or "+100", "-100" buttons to adjust the number as desired
    • When the desired value is displayed, press "Enter" to store the value
    • Press "Exit" to leave the menu
    • Press "Setup" again to move onto the next menu item
    • Press "Start" to begin winding
      • The wind starts at slow speed for the first few seconds so the beginning of the wind can be observed, then begins to slowly ramp up to the maximum speed of 500 RPM
    • Press "Stop" to pause the wind at any time
      • Pressing "Start" again will resume the wind where it left off
    • Pressing the "+" and "-" buttons when the winder is stopped will jog the wire guide left or right one step at a time
      • This is useful to fine tune the alignment of the guide

    Contact Jeff Siddall if you have any questions.