Intro: Wiring Your Z Stepper Motors in Series
This instructable is meant for owners of RepRap and other 3d Printers which use 2 stepper motors for the Z axis, as commonly seen in the Prusa or Mendel styles of printers, among many others.
The default configuration for most controller electronics such as RAMPS is to have the motors connected in parallel. However as I will attempt to explain, it can be more beneficial to connect the motors in series instead.
So the purpose of this instructable is to describe a method of creating a "plug and play" wiring harness that will convert your motors from parallel to series.
Pictured are conceptual diagrams which hopefully illustrate the path of the circuit and how this makes the motors series connected.
Step 1: The What and Why of Series Stepper Motor Wiring
On my printer I used DRV8825 stepper drivers which don't behave very well with parallel wired motors. Due to some specifics about how the driver works it basically ends up "skipping" parts of the microstepped waveform. That's not to say it misses any steps and loses its position, just that it flattens out parts of what should be a smooth sinusoidal current waveform making for louder more jerky operation. This is particularly noticeable if autoleveling is enabled on your printer. Autoleveling compensates for a bed which is not parallel to the toolhead movement by constantly making small Z adjustments as it moves across the X and Y axes. In my case this caused very audible "pop" sounds from my Z motors as it skipped a bunch of microsteps during a print.
For a way more detailed and technical explanation of what's going on and another solution to the issue involving diodes, see this informative blog post. (not my blog)
So the gist of it is that wiring the Z motors in series rather than parallel significantly reduces this effect, by making the motors act like one of a higher voltage rating/higher resistance (4x compared to parallel configuration).
Another benefit is that the motors will only require 1/2 the current for the same amount of motor output torque, allowing the stepper driver to run cooler.
Step 2: Parts and Tools
Here is a list of items used to build my harness. If you find this instructable useful and require any parts or tools, using these amazon affiliate links for your shopping would help me out.
This project requires to following parts:
- Breadboard Jumper Wire w/ Female end (male-female, 40pcs OR full set, 120pcs )
- Double Row 0.1" Male Headers
- Heat shrink tubing assortment various sizes
- Solder basic 60/40 rosin core
- Wire cutters flush cutters great for clipping wires or component leads
- Soldering iron / station (includes wire cutters) the HAKKO FX888 is basically the gold standard of soldering stations
- Wire strippers I've had an older version of these wire strippers for over a decade and they are still my favorite, very reliable and quick
- optional Tweezer nose pliers very nice for fine work bending wires or pins
The jumper wires typically come in a ribbon of 40 wires at a time, and you can peel away contiguous strips of any number. This project only requires 4 such wires. I find these style of jumper wires incredibly handy for electronics protoyping and tinkering, they are great for connecting arduinos, breadboards, and other quick connections. There are three types: Male to Male, Male to Female, and Female to Female. As long as your wires have female on at least one end it will work here.
Step 3: Prepare Wires
Peel 4 wires from your breadboard jumpers(with female ends), fold in half and clip in the middle.
Take a side with female connectors, and splay out the wires and strip a small amount from the ends (about the length of the shorter side of the header pins).
Tin the ends of your wires with a small amount of solder, and place some heat shrink tubing over them, 1/16" size fits just right. Make sure the wires are peeled backed far enough that the heatshrink won't get heated during soldering.
Step 4: Prepare Pins
Clip off a 4x2 piece of your male header pins.
Placing these pins on a breadboard(with the longer end facing into the breadboard) helps to hold everything in place while its being worked on. Pictured is a random Arduino shield with built in breadboard.
Now two pairs of diagonal pins will need to be electrically connected, as shown. I do this by carefully bending them toward each other, and then soldering with a small amount of solder. Tweezer nose pliers are helpful here as they can fit in very small spots.
Care should be taken when bending and soldering these pins as they can slide up and down in the plastic header(the breadboard helps somewhat to keep the pins from slidingn). If the heat from the soldering iron is left too long it can melt the plastic holder causing the pins to fall loose, and you may need to start with a fresh header piece. Also when soldering, avoid globbing on too much which could cause unwanted bridging to other pins, space is somewhat tight.
You should end up with four remaining unbent pins in a staggered pattern, which we will solder our wires to.
Step 5: Solder Wire Ends to Pins and Finish
Now we can solder our previously tinned wires to the header pins. Lay the wire ends straight along each pin and solder. Try to solder it along the outside edge, giving more room to avoid bridging the connection with the diagonal connections.
When soldering the wires, be sure not to swap the orientation of them; they will be staggered, but should still stay in the same ordering from left to right.
Visually inspect that no unwanted pins were bridged. A multimeter can also be used to verify this.
Push the heat shrink down over the soldered connections and heat with a heat gun.
Now the other end of the wires, the 4 female pins can be held together with a piece of 3/8" heatshrink. Again be sure not to change the ordering of the wires when heating shrinking these.
That's all, now it can be plugged into a single RAMPS(or other controller) Z-motor output, and the two Z motors plugged into the other end of the harness. The motors are now connected in series.