Upgrading the RepRap's stepper motors

In the pursuit of print speed, I have decided to upgrade my stepper motors.

My current ones are four Mercury Motor SM-42BYG011-25's. They are pretty nice motors, though they feel very underpowered. With 1/16 microstepping, the best I could do was a whisker under 100mm/s; when extruding, barely 40mm/s.

About as cute as they are pathetic for the job, I'm afraid.
So, I decided to grab some upgraded Wantai 42BYGHM809's from my favourite local gadgetry shop, nicegear.co.nz. Hadley stocks all manner of Sparkfun electronics, but at prices that make them affordable to us here in good old New Zealand, especially considering that shipping is free on orders above a certain amount (which I cannot for the life of me remember what it is).

When I got the motors, my first thought was, "wow, these are heavy."

Shown here on my workshop bench, ready to have their shafts filed.
Don't worry, most of the gunk on the workbench is actually its normal color.
After filing down their shafts and installing them in the Mendel, I ran into a couple of issues that had to be taken care of before I could hit "Print".

Firstly, these new motors are 0.9 degrees per step (400 steps per revolution), while the old ones were 1.8 (200 steps). This meant I had to double the steps-per-unit and re-flash the firmware on the RAMPS board.

Secondly, the Arduino powering the RAMPS board is simply not fast enough to keep up with 1/16th microstepping at full speed (see below...). I had to re-jump the RAMPS board to run on 1/8th microstepping, although I could have probably gone down to 1/4 or even 1/2. Even through full steps, with my 10-tooth pulleys on 5mm pitched belts, these 0.9-degree motors would give a resolution of 0.125mm. Considering my measurable backlash is just about that, I could even have gone for full steps! In any event, this led to another reflash of the firmware to put the steps-per-unit back down to the original (the steps-per-unit for a 200-step motor at 1/16's is the same as for a 400-step motor at 1/8's).

The extruder driver's mounting arms are actually bending under the weight of the beast.
Now, here's where things get interesting. The old stepper motors barely gave 27N/cm; I had to under-run them considerably to prevent them from heating up to the point of melting their way into their PLA brackets. The new motors are 68N/cm, and can happily run at 90% of their rated amperage before they even start warming up properly. As we speak, they are running, and their cans are only luke-warm.

I did some speed tests, and this is when things got really interesting. With the old motors at 27N/cm underrun to around the 15N/cm mark, the best reliable X-axis speed I could get was just a hair under 6800mm/min. With the new steppers running at around 60-65N/cm, I was expecting a top movement speed of around 12000mm/min, with which I would have been happy, considering the disproportional amount of extra torque required to accelerate the components of the machine faster. However, I was pleasantly surprised - I could now get reliable movement at 28,000mm/min! The even more awesome part - this is not the top speed because the motors can't move faster; this is the top speed because the Arduino can't drive the Pololus fast enough. With 1/8th microstepping, who knows what is possible?

I'm tempted to give that a try now...

Comments

Popular posts from this blog

Repetier-firmware thermistor table for Honeywell 100k

Converting to a Greg's-powered Bowden extruder