Leadshine BLM57180 Not Achieving Max Speed

  • 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

    ; Network
    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)

    ; Drives
    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

    ; Endstops
    M574 X1 Y1 S0 ; Set active high endstops

    ; Z-Probe
    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

    ; Heaters
    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

    ; Fans
    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

    ; Tools
    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

    ; Heaters
    M305 P0 X151 T"J"

    ; Automatic saving after power loss is not enabled

    ; Custom settings are not configured

  • administrators

    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.

  • Touche...Looks like I need a faster screw or faster external driver.

  • also you ignored the very big warning for M584 to unmap the old assignment

Log in to reply