Leadshine BLM57180 Not Achieving Max Speed
ajlapp last edited by
Now that I finally have my external brushless servos working....thanks everyone on the forum....I'm not achieving max motor speed.
These motors are rated for 3000RPM and should be able to hit 4000RPM max. The motor has a 1000 line encoder and is driving a 10mm pitch ball screw.
With quadrature decoding my steps/mm are 400.
Max Speed = (3000RPM * 4000steps/rev) / 400 steps/mm = 30,000 mm/min = 500mm/s
I have my axis set as such with M203 set to 30,000.
When I run the actuator I on;y hit about 100-125mm/sec.
Am I hitting a limit because of the slow timing needed for these external steppers?
; Configuration file for Duet WiFi (firmware version 1.21)
; executed by the firmware on start-up
; generated by RepRapFirmware Configuration Tool v2 on Wed Jan 16 2019 13:17:53 GMT-0500 (Eastern Standard Time)
; General preferences
G90 ; Send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"AAM_Large_Volume_Printer" ; Set machine name
M551 P"password: ; Set password
M552 P10.0.0.55 S1 ; Enable network and set IP address
M553 P255.255.255.0 ; Set netmask
M554 P192.168.1.254 ; Set gateway
M586 P0 S1 ; Enable HTTP
M586 P1 S0 ; Disable FTP
M586 P2 S0 ; Disable Telnet
M584 X5:6 ; map drive 5:6 to X axis
M92 X400 ; set steps/mm for X axis (drive 5 & 6)
M569 P5 S0 T8.5:8.5:50.0:67.0 ; set drive timings for drive 5 (first drive on breakout board)
M569 P6 S0 T8.5:8.5:50.0:67.0 ; set drive timings for drive 6 (second drive on breakout board)
M569 P1 S1 ; Drive 1 goes forwards
M569 P2 S1 ; Drive 2 goes forwards
M569 P3 S1 ; Drive 3 goes forwards
M92 Y80.00 Z4000.00 E400.00 ; Set steps per mm
M566 X30000.00 Y900.00 Z12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min)
M203 X30000.00 Y6000.00 Z180.00 E1200.00 ; Set maximum speeds (mm/min)
M201 X30000.00 Y500.00 Z20.00 E250.00 ; Set accelerations (mm/s^2)
M906 X2000.00 Y800.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout
; Axis Limits
M208 X0 Y0 Z0 S1 ; Set axis minima
M208 X762 Y1000 Z1000 S0 ; Set axis maxima
M574 X1 Y1 S0 ; Set active high endstops
M574 Z1 S2 ; Set endstops controlled by probe
M558 P1 H5 F120 T6000 ; Set Z probe type to unmodulated and the dive height + speeds
G31 P500 X0 Y0 Z2.5 ; Set Z probe trigger value, offset and trigger height
M557 X15:0 Y15:195 S20 ; Define mesh grid
M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
M143 H0 S120 ; Set temperature limit for heater 0 to 120C
M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1
M143 H1 S280 ; Set temperature limit for heater 1 to 280C
M106 P0 S0.3 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off
M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on
M563 P0 D0 H1 ; Define tool 0
G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets
G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
M305 P0 X151 T"J"
; Automatic saving after power loss is not enabled
; Custom settings are not configured
With 8.5us minimum step pulse width and step pulse interval, the absolute maximum step pulse rate possible is 1000000/(8.5+8.5) = 58.8kHz. Allowing for some processing time, say about 50kHz. At 400 steps/mm the maximum speed is therefore 50000/400 = 125mm/sec.
So the answer to your question is yes. To get higher speeds, you will need to reconfigure the drivers to reduce the steps/mm.
ajlapp last edited by
Touche...Looks like I need a faster screw or faster external driver.
Veti last edited by
also you ignored the very big warning for M584 to unmap the old assignment