Increase Extruder Motor Current Limit



  • I'm using Flex3D extruders in my machine. I paired them with some fairly large Wantai Nema 17s https://www.phidgets.com/productfiles/3311/3311_0/Documentation/3311_0_Datasheet.pdf because I had them laying around. They work but the downside is that they have a fairly high rotor inertia and coupled with the 40:1 drive ratio that means their speed has to change quite a bit in order to They are rated by the mfg for 2.6 amps, not that I want to go quite that high but it seems that the FW is limited to 1.6 amps?

    This all stems from the fact that I would like to increase my extruder jerk from 55 and acceleration from 725 but cannot because I occasionally miss steps due to the high rotor inertia and current limit. These limitations coupled with the M572 extruder advance means that the extruders frequently limit the acceleration of my machine. I know most machines don't require nearly this much current for the extruder but is there a way around this?

    My long term solution would be to use motors with smaller rotors but for now I would like to just test this out.



  • @BMMal:

    …........................... but it seems that the FW is limited to 1.6 amps?

    Not sure where you got that figure from - take a look at the Wiki here https://duet3d.com/wiki/Choosing_stepper_motors. It used to be 2.0Amps for the Duet Wifi but looks like it's now 2.4.



  • A DC motor could be a better alternative.

    Does anyone know a controller which could emulate a stepper motor, by using step/dir as input signals, and driving a DC motor+encoder?



  • @deckingman:

    @BMMal:

    …........................... but it seems that the FW is limited to 1.6 amps?

    Not sure where you got that figure from - take a look at the Wiki here https://duet3d.com/wiki/Choosing_stepper_motors. It used to be 2.0Amps for the Duet Wifi but looks like it's now 2.4.

    I'm foolish. I had M906 in a homing macro that was also changing the extruder current limit to 1600 after config.g would set it to 2400….


  • administrators

    Send M906 with no parameters to check what the motor currents we set to. If it's not 2400mA then you probably have another M906 command later in config.g or in one of your homing files.



  • @fma:

    A DC motor could be a better alternative.

    Does anyone know a controller which could emulate a stepper motor, by using step/dir as input signals, and driving a DC motor+encoder?

    Gecko drive makes a reasonably priced servo controller. I will be using them when I convert my Stratasys machine to Duet.

    I was thinking that for my custom machine I might just go to a shorter stack Nema 17 since I don't want to deal with too much redesign etc. I've also thought about implementing a gear train so that the motor does not have to spin as fast at speeds.



  • @BMMal:

    …............................... I've also thought about implementing a gear train so that the motor does not have to spin as fast at speeds.

    If you are already struggling with torque then such a gear train might make matters worse. If you had say 1:2 gearing then torque at the output would be approximately half of what the motor can deliver although at lower speed, the motor itself might deliver more torque - you'd need to look at the spec sheet. With gear trains, backlash can be problematic too (as well as losing some more torque through drive train losses).



  • @deckingman:

    @BMMal:

    …............................... I've also thought about implementing a gear train so that the motor does not have to spin as fast at speeds.

    If you are already struggling with torque then such a gear train might make matters worse. If you had say 1:2 gearing then torque at the output would be approximately half of what the motor can deliver although at lower speed, the motor itself might deliver more torque - you'd need to look at the spec sheet. With gear trains, backlash can be problematic too (as well as losing some more torque through drive train losses).

    It's not really torque that is the issue. Even at high extrusion rates (at least what I can achieve with a 0.4mm Volcano) the motors produce plenty of it . It's the transients coupled with the the 40:1 reduction that requires the motors to make very large and relatively rapid changes in angular momentum. With the current drive ratio, the motors produce more than enough torque even at speed. The high reduction is designed into the Flex3Drive to alleviate the torque on the flexible drive shaft and keep hysteresis within the flexible shaft to a minimum. Though, I would also argue that with how fast my motors do need to turn, the natural torque curve of the motor is probably diminishing quickly and if the motor ever does have to spin much faster (such as with a larger nozzle) then I might have a problem with torque to maintain a flow rate or just run into the motor's maximum speed with 24V. What I am trying to do in the long term is reduce the motor's rotor inertia or reduce the angular velocity requirements such that the changes in angular momentum will be reduced.

    I'm not very concerned about backlash with extruders, that is handled fairly easily by the tool change/priming macro as well as adjusting the amount of extra (+/-) with retraction and unretraction. I'm using FW retraction which so far has been awesome.

    At the end, going to a smaller motor stack is probably the most straightforward to change over though.



  • Both the flex3drive and nimble require to use low motor current, the motor can't make a fast direction change at high current as quickly. I use 500mA with nimble and a 34mm motor. A 20mm pancake motor or nema 14 would also work. Acceleration needs to be low 120 to facilitate the direction changes. Jerk at around 40. More motor current is a red herring.



  • Ah, OK. I understand now.



  • @DjDemonD:

    Both the flex3drive and nimble require to use low motor current, the motor can't make a fast direction change at high current as quickly. I use 500mA with nimble and a 34mm motor. A 20mm pancake motor or nema 14 would also work. Acceleration needs to be low 120 to facilitate the direction changes. Jerk at around 40. More motor current is a red herring.

    Interesting. Looking back it was recommended to me to start with only about 450 or 500 ma. What I found was that I needed at least 800 ma to get my set up to reliably maintain a high flow rate without missing steps.

    What is the reasoning behind lower current limits improving the motor's ability to change velocity? Reducing the amount of time it takes to bleed current off when trying to switch the direction in a winding?

    I probably need to redo some testing as I've really only tweaked my initial settings up or down.

    I'm currently using Jerk 45mm/min and 725mm/s^2 acceleration. Current is now set at 2.4 amps. I have not noticed or seen evidence of any lost steps since I increased the current limit from 1.6 amps.



  • @BMMal:

    What is the reasoning behind lower current limits improving the motor's ability to change velocity? Reducing the amount of time it takes to bleed current off when trying to switch the direction in a winding?

    Yes that's it. At 2.4A doesn't your motor run red hot?

    What sort of flow rates are you considering "high"?



  • @DjDemonD:

    @BMMal:

    What is the reasoning behind lower current limits improving the motor's ability to change velocity? Reducing the amount of time it takes to bleed current off when trying to switch the direction in a winding?

    Yes that's it. At 2.4A doesn't your motor run red hot?

    What sort of flow rates are you considering "high"?

    So the main reason for reducing the current is temperature?

    They are currently running 110F. They are rated for 2.6 amps.

    When I had a 0.6 mm nozzle, I was aiming for 10mm/s filament feed which is about 24mm^3/s. With a 0.4mm nozzle I only expect about 9 to 11^3mm/s depending on the material being used.



  • What hot end are you using volcano? 24mm3/s is pushing its maximum melt rate which I would expect to be around 15mm3/s even with a larger nozzle than 0.4.

    Temperature is okay at 40ish deg C. My motors are max rated 1.68A so for your 2.6A units I'd expect 800mA rather than 500 to be optimal.

    I recently did a series of tests with genuine volcano using 0.4mm nozzle and maxed out at 9.14mm3/s before underextruding https://youtu.be/H8pe_xal2FQ but that was at a head speed of 180mm/s. That was with titan aero not flex3drive or nimble, I have both, but I wouldn't expect to be able to go that fast with remote drive.



  • @DjDemonD:

    What hot end are you using volcano? 24mm3/s is pushing its maximum melt rate which I would expect to be around 15mm3/s even with a larger nozzle than 0.4.

    Temperature is okay at 40ish deg C. My motors are max rated 1.68A so for your 2.6A units I'd expect 800mA rather than 500 to be optimal.

    I recently did a series of tests with genuine volcano using 0.4mm nozzle and maxed out at 9.14mm3/s before underextruding https://youtu.be/H8pe_xal2FQ but that was at a head speed of 180mm/s. That was with titan aero not flex3drive or nimble, I have both, but I wouldn't expect to be able to go that fast with remote drive.

    For some ABS (Hatchbox Cool Grey and Coex3D Stone Grey) I've found that 7mm^3/s is the max, with an advance factor of 0.11. With Matterhacker's Regular Grey I can print 10mm^3/s with an advance factor of 0.09. I typically try to do my flow rate and advance calibration using both large and small islands to make sure I'm hitting the full speeds and such.



  • @DjDemonD:

    Both the flex3drive and nimble require to use low motor current, the motor can't make a fast direction change at high current as quickly. I use 500mA with nimble and a 34mm motor. A 20mm pancake motor or nema 14 would also work. Acceleration needs to be low 120 to facilitate the direction changes. Jerk at around 40. More motor current is a red herring.

    In my experiments with a nimble and a pancake stepper I had to go to 600mA. 500mA and less the stepper stalled on high extrusion speeds. (~12-16mm^3 on a 0.6mm volcano nozzle).



  • What acceleration were you using? A stall is less likely with lower acceleration, (or higher current) but this apparently makes reversing direction slower.



  • Hi!

    Which one of these motor would you suggest for a Flex3drive?

    https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-14-bipolar-18deg-125ncm-177ozin-1a-35v-35x35x28mm-4-wires-14hs11-1004s.html

    or

    https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-14-bipolar-18deg-40ncm-567ozin-15a-42v-35x35x52mm-4-wires-14hs20-1504s.html

    They both have very low impedance. The big one has a higher torque (40N.cm), but also a higher inertia… As I understand, low inertia is better for fast accel, but does the small model have enough torque (12.5N.cm)?

    Thanks,



  • Definitely the smaller one. You hardly need any torque at all, the gearing is 40:1, I suspect a nema 14 would handle it. You need the ability to turn fast (low inductance) and reverse direction quickly (low inertia).

    24v better, but it'll work on 12v.

    I wouldn't see much use for that larger motor in 3d printing except maybe for driving a really heavy bed moving in Z, where torque is everything and speed nothing, ability to reverse only needs to be quite modest.



  • Thanks. BTW, it is a NEMA 14 😉

    The large motor could be used as a direct drive extruder, as it has same torque as common Nema 17. It is longer, but has a smaller section.



  • Ahh yes.. but still the torque is plenty, I drive titans with 20cm pancake nema 17 with 13Ncm torque and this works great, a 30:1 (nimble) or 40:1 (flex3drive) no issue at all.



  • While we are on the subject of flexible drive systems:

    I noticed that my machine was having small variations in flowrate. Small enough that it still made parts pretty well but large enough that it makes the exterior surfaces rough. In an attempt to figure out the issue, I slowed the machine way down and it was still present but at slow speeds I was able to see torsional flexing in the drive shaft at a frequency that looked similar to the changes in flowrate from the nozzle. I knew the grease in my worm gears was likely dried out. I cleaned them and reapplied Krytox. So far it seems to have remedied the problem.

    While investigating, I did notice that the flex3drive seems to be configured in such a way that the torsion on the drive shaft while extruding will cause the outer wire windings to expand rather than contract. Just using my hand, I can feel a significant difference in the hysteresis between the two directions. It seems to me that it would be better to have the driveshaft turning the opposite direction (or wound in the opposite direction) so that the outer windings would tend to contract and improve the stiffness of the system when extruding rather than retracting.

    I know that flexible drive shafts have a higher torsion rating in one direction versus the other but do not recall which direction relative to the winding that is.



  • I hear a lot about this but do not notice it either with flex3drive or nimble, perhaps I'm not looking closely enough. With nimble since you can mount it either way then, in theory, you could configure it by your thinking above, to run in the "optimal" direction for extrusion. Whilst some people report feeling slightly more tension in the drive cable at a certain point on its rotation I'm unconvinced this affects print quality, just because there is more resistance, doesn't mean it actually turns more slowly.



  • If the torque on the shaft changes enough, there will be a different angle from end to end (this angle depends on the torque, and is a data of the shaft). In this case, it is not surprising to see variations on the extrusion.



  • @DjDemonD:

    I hear a lot about this but do not notice it either with flex3drive or nimble, perhaps I'm not looking closely enough. With nimble since you can mount it either way then, in theory, you could configure it by your thinking above, to run in the "optimal" direction for extrusion. Whilst some people report feeling slightly more tension in the drive cable at a certain point on its rotation I'm unconvinced this affects print quality, just because there is more resistance, doesn't mean it actually turns more slowly.

    It only became a problem when the grease on my worm drive dried out. I do run my flex3drives in an 80C chamber. The problem came on so gradually that I didn't really notice or do anything about it until now. I'm seeing differences in flow rate of about 7% and M572 calibration of about 0.03 while also getting much smoother extrusions.


Log in to reply