Solved Duet 3 Hangs, Nema23 issues
-
@JayT said in Duet 3 Hangs, Nema23 issues:
M92 X800 Y800 Z800.00 E420.00 ; set steps per mm
that a very high step/mm setting.
are you using any gear reduction? -
No, gear reduction not used.
-
ok why are the step/mm so high then?
-
@Veti : Using 1/16 microstepping with 4mmpitch.
As per @T3P3Tony , we can set 60-90% of rated current. With this motor, if was setting current >1A for XY axis, even then the motors hanged or skipped. its a Motion King NEMA23. Did anyone face such a problem, that on increasing current from the drive, it hangs the motor? Any method to evaluate current to set for an axis?
-
@JayT said in Duet 3 Hangs, Nema23 issues:
Using 1/16 microstepping with 4mmpitch.
so its a leadscrew based system?
-
@Phaedrux, @T3P3Tony @dc42 : Hi, So I tried running motor with low impedance, with Duet 3 onboard drivers and could go only upto speed of 40mm/s with acceleration of upto 100-150 on ballscrew system. Tried expansion board with external drivers on Nema23 (impedance 6.8mh as earlier) motor and it now prints upto 70mm/s with upto 100mm/s2. When the motor skips, and i run M122, it does not show any hiccups neither prints any errors related. M using panelDue (not DWC). I dont understand why M not able to run these motors with onboard drivers of Duet 3 with rated current of upto 4.3 RMS. My motor's rated current is 3A. Any suggestions? The reprap calculator also applies to external drivers used? (Cause I notice different behaviour)
Also David, On running M122, there is a lot of information that scrolls through too quick. Any way to save it in a file?
I am using RRF 3.3Beta version, after which stepper motors run more stable. with 3.2+ 1XD, i noticed more skipping -
If you connect using DWC then when you send M122 you will see the whole output.
You mention being able to get higher speeds using external drivers. What drivers at what settings?
70mm/s at 800 steps/mm is a step rate of 56KHz which should be ok on the 1XD running RRF 3.3 beta with the default timing of "fast". Its marginal with T=1 and too high step rate with T=2.5 or higher. This can be confirmed by sending
M122 Bnnn
where "nnn" is the address of the 1XD board. Send this once the print has been running for a while to confirm there are no hiccups.
For the 6HC mainboard that step rate is not an issue unless you have a huge number of very tiny moves in the file, once again use M122 to report any issues on the mainboard.
Please post your M122 output in full, config.g and an example gcode file.
-
@T3P3Tony : Thanks Tony. I shall try that. For the current print, i saw hiccups as non zero(>100 value) for both the axis. What do hiccups mean ? What action can be taken to reduce hiccups?
I will send config, M122 info and sample print by tomorrow. -
@JayT, you should be able to achieve the same speeds with the Duet internal drivers as with the external drivers if the driver VIN voltage, load, speed, acceleration etc. is the same in both cases. If the external drivers run at a higher VIN voltage than the Duet accepts (e.g. 48V), then they will support higher speeds than the Duet does.
One possible difference is how the current is set. The M906 command in RRF sets the peak current. The switches on your external drivers may set RMS current - check the documentation for details. When microstepping, peak = 1.414 * rms.
-
@dc42 : VIN is same 32V (with or without external driver), load conditions are same too. External drivers run as 2.03 RMS (2.84 Peak). micro stepping 1/8, so 400steps permm.Also it ran well for 2 hours @ 50mm/s, 200 mm/s2, vi 5mm/s
a) Based on reply, Keeping all things same, With onboard MB driver, 2400/2800mA on MB 6HC, the motor makes noise and hangs/skips. it runs this motor with only 800mA (tried with diff current settings) upto certain speed and acc . it's a motion king motor 23H2A2430. (6.8mH).b) Used impulse double stack with lower impedance of upto 3.6mH. The onboard driver still hangs or skips with higher current.
c) Impulse motor(3.6mH) run well with external driver, since it has lower torque, i provided 3.3 peak current from external driver. I am running a print since 50 mins, so far no hanging issues with speed of 60mm/s, with acceleration of 300mm/s2 , vi =5. Since its smaller, with low impedance, with lower back emf, it is able to pull for higher acceleration unlike bigger motor with 6.8mH impedance , right?
Any suggestions why conditions a & B occur with onboard drivers. ?
Note: No hiccups. seen with external drivers at 1/8 microstepping. at 1/16 there were few.
-
a) With Onboard Drivers, @24-32V supply, the motors hang with current >1A. Even if the low impedance motor is connected, it does not go beyond 40mm/s and hang if current set via 906 is >1-1.5A.
b) With external drivers, the same motors can run upto speed of 70mm/s and acceleration 100-500mm/s2. If motors are provided 48V(instead of 32V), the motors run well upto 80+ speed @300mm/s2. Few prints passed since then.
How to debug onboard driver issue here?
the least I think I should be able to set is >1A current with onboard and it shouldn't cause more skipping, hanging for long run.P.S, : Motors show no hiccups with onboard/external dirvers @1/8 microstepping.
onboard motor & config details @32V:
motor in use: IM57HS76-2804-62
Config:
M569 P0 S1 ; physical drive 0 goes forwards
M569 P1 S1 ; physical drive 1 goes forwards
M569 P2 S1 ; physical drive 2 goes forwards
M569 P3 S1 ; physical drive 3 goes forwards
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X8 Y8 Z16 E16
M92 X400 Y400 Z800.00 E415.00 ; set steps per mm
M566 X180.00 Y180.00 Z120.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X3000.00 Y3000.00 Z1800.00 E1200.00 ; set maximum speeds (mm/min)
M201 X100.00 Y100.00 Z55.00 E250.00 ; set accelerations (mm/s^2)
M906 X1000 Y1000 Z800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
gcode: up_heart_70mm.gcode -
@JayT said in Duet 3 Hangs, Nema23 issues:
a) With Onboard Drivers, @24-32V supply, the motors hang with current >1A. Even if the low impedance motor is connected, it does not go beyond 40mm/s and hang if current set via 906 is >1-1.5A.
In what way do the motors hang? Do they just stop, or squeal, or something else?
-
@dc42 said in Duet 3 Hangs, Nema23 issues:
something else?
Motor skips steps, makes noise. And the moment we reduce current to 800mA , it runs ok at lower speed . So its like we can feel the motor is trying to rotate but stuck, with the noise.
-
@JayT said in Duet 3 Hangs, Nema23 issues:
@dc42 said in Duet 3 Hangs, Nema23 issues:
something else?
Motor skips steps, makes noise. And the moment we reduce current to 800mA , it runs ok at lower speed . So its like we can feel the motor is trying to rotate but stuck, with the noise.
Have you tried using a different driver output, in case there is a fault in the one you are using?
-
@dc42 :
Yes.
Following is what I tried:- I tried switching the driver output.
- Tried to replace the board with a new Duet 3 in spare. and checked. Then Phaedrux suggested to upgrade so I went to 3.2 version. Upgraded that too.
- I also tried to give 2000mA, and ran the motor in free mod, It runs. Problem comes when I attach it to the axes.
- I also tried to give 24 V then 32 V supply.
Same load with same motor runs well with external driver. Is it possible that the onboard TMC driver is not compatible with the motor in use?
-
When you run the motor and it stalls, if you then run M122 what lowest VIN voltage does it report? The fact that it runs better at low current suggests that the driver supply voltage could be drooping at higher currents.
Can you confirm that when it was running with external drivers, you were using the same PSU to power both the drivers and the Duet (except when you tried 48V)?
-
PS one other possibility I can think of is that the external drivers you are using are quite smart, and they reduce the acceleration or advance the current when they detect from the motor back EMF that the motor isn't keeping up. Some drivers use DSPs to monitor the back EMF.
If that's the case, then you would need to reduce acceleration when using the drivers on the Duet.
-
@dc42 : I guess the external drivers are smart. As with 32V i was able to run till 70mm/s with 100mm/s2-150mm/s2 acceleration (with upto 100 mm/s2 less fails). So when you had mentioned of different voltage to external driver, I connected 48V. Now it ran 3 prints at v=85mm/s, a= 300mm/s2 config. Gcode generated with CURA used the option of proportional speeds for different infills.
-
@dc42 : Yes PSU was same for duet and external drivers : 32V when motor stalled. Even with onboard driver same PSU was used & axes stalled with >800mA current.
For M122 report, I will try onboard again and send you the lowest VIN that Duet reports.
-
@JayT, I think I know what the problem is. The code speed increase in RRF 3.2 on the MB6HC compared to previous released means that the step pulse width required by the TMC5160 is not always met when the step rate is high. I already fixed this in the 3.3beta firmware, and I have just back-ported this fix to RRF 3.2.1. The 3.2.1 release is currently undergoing testing.
You may wish to try using the internal drivers with those motors running RRF 3.1.1. Alternatively, if you are feeling brave, you can try the candidate 3.2.1 binaries at https://www.dropbox.com/sh/1lwimb98k6hzz3z/AAApVr_P6roUjnya4riDbGAba?dl=0. The release notes are at https://github.com/Duet3D/RepRapFirmware/blob/v3-dev/WHATS_NEW_RRF3.md.