ball screw stepper settings



  • im driving a 16/05 ball screw with a nema17 60mm stepper

    when i changed steps the stepper motor just squeaks M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    ; M92 X79.7 Y6400 Z400.4 E96 ; Set steps per mm
    M92 X79.2 Y6400 Z400.5 E96 ; Set steps per mm

    what i changed its Y from 79.2 to 6400
    i believe the math to be as follows
    200X16 divided by 10 =640 mm any suggestions as to why this is wrong??



  • Your motor just squeaks because it can't move as fast as you're asking it too. Assuming the pitch of ballscrew is 5mm, try 640 instead of 6400.

    (FYI, (200x16)/10=320)



  • sounds like it has more power but still wont move squeals louder and thanks for correcting my math 🙂 so i think probably still trying to go to fast toquick?? maybe you would look at my homey.g
    ; homex.g

    ; homex.g

    G91 ; relative positioning
    G1 S2 X0.2 Y0.2 Z0.2 ; Move all axis 0.2 mm, clear stall status
    M400 ; make sure everything has stopped before we make changes
    M574 X1 S1 ; set endstops to use limit sw.
    G1 S1 X-265 F5000 ; move X, stopping at the end stop
    G1 Z-0.2 ; Move all axis -0.2 mm,
    M400 ; make sure everything has stopped
    G90 ; back to absolute mode



  • i stand corrected made a mistake you would want to see homey.g; homey.g

    G91 ; relative positioning
    G1 S2 X0.2 Y0.2 Z0.2 ; Move all axis 0.2 mm, clear stall status
    M400 ; make sure everything has stopped before we make changes
    M574 Y0 S1 ; set endstops to use motor stall
    G1 S1 Y-260 F5000 ; move X, stopping at the end stop
    G1 Z-0.2 ; Move z -0.2 mm,
    M400 ; make sure everything has stopped
    G90 ; back to absolute mode



  • @ziggymanpopo

    So there's a few things here. Firstly, post your config.g so we can see what motor current, acceleration etc. you have. 5000 mm/m seems pretty high for a lead/ball screw too and I can't imagine you're going to have enough torque to get to that speed quickly (if at all with a NEMA17).
    Secondly, what firmware are you running (post the output of M115) as newer firmware I believe is depreciating the S parameter in G1 for the H parameter. Finally, I don't know if it's just very specific oversight in the comment, but S1 in M574 is for setting an endstop. S3 should be used for stall detection if that's really what you're trying to do.

    M574 Y0 S1 ; set endstops to use motor stall
    

  • Moderator

    You may need to reduce the acceleration for the Y axis as well since there is a lot of rotational inertia to overcome and reduce. The max speed may still be attainable, but it will take longer to get up to speed and then ramp down again.

    Furthermore, the high steps per mm may require reducing the max speed attainable.


  • Moderator

    @ChrisP said in ball screw stepper settings:

    Finally, I don't know if it's just very specific oversight in the comment, but S1 in M574 is for setting an endstop. S3 should be used for stall detection if that's really what you're trying to do.

    Based on his other recent posts I think he is using an actual endstop now.

    @ziggymanpopo you should remove the M574 command from the homing files completely. They only need to be in config.g.



  • Correct i am now using endstopps
    I will post my confi shortly in about one hour
    Almost there 😁👍



  • thats what i thought that i was asking it to accelerate too quick
    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool on Thu Sep 06 2018 21:21:12 GMT-0700 (Pacific Daylight Time)

    ; General preferences
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 Pe3 ; Set machine name
    M552 S1 ; Enable network
    ;*** Access point is configured manually via M587
    M586 P0 S1 ; Enable HTTP
    M586 P1 S0 ; Disable FTP
    M586 P2 S0 ; Disable Telnet

    ; Drives
    M569 P0 S0 ; Drive 0 goes forward
    M569 P1 S0 ; Drive 1 goes backwards
    M569 P2 S1 ; Drive 2 goes forwards
    M569 P3 S0 ; Drive 3 goes backwards

    M569 P3 S1 ; Drive 3 (Extruder 0) goes backwards

    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping with interpolation
    ; M92 X79.7 Y640 Z400.4 E96 ; Set steps per mm
    M92 X79.2 Y640 Z400.5 E96 ; Set steps per mm

    M566 X600 Y600 Z24 E300 ; Set maximum instantaneous speed changes (mm/min)
    M203 X30000 Y30000 Z300 E1500 ; Set maximum speeds (mm/min)
    M201 X300 Y300 Z100 E5000 ; Set accelerations (mm/s^2) was 500 you changed it to 300 for stall guard
    M906 x950 Y950 Z850 E950 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S300 ; Set idle timeout

    ; Axis Limits
    ; M208 X-5.5 Y-10 Z0 S1 ; Set axis minima
    ; M208 X258.5 Y246 Z260 S0 ; Set axis maxima

    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X500 Y500 Z500 S0 ; Set axis maxima

    ; Endstops
    M574 X1 Y1 Z1 S1 ; Set endstops controlled by sw.

    ; Z-Probe
    ; M558 P5 H5 F100 T2000 ; Set Z probe type to bltouch and the dive height + speeds
    M558 P9 H5 F100 T4000 ; Set Z probe type to bltouch and the dive height + speeds
    G31 P500 X-42 Y-5 Z1.35 ; Set Z probe trigger value, offset and trigger height - is Nozzle hoger

    M557 X15:215 Y35:215 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 80C
    M305 P1 T100000 B4400 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 240C

    ; M307 H1 A245.3, C121.7, D4.0, S0.5 ; PID

    ; Fans
    ; M106 P0 S1 I0 F500 H T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    ; M106 P1 S0 I0 F500 H-1 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned off

    M106 P0 S0 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

    ; Automatic saving after power loss is not enabled
    ; Custom settings are not configured

    ; BLTouch - Heaters
    M307 H3 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch

    ; Enable Bed Leveling
    G29 S1 ; Enable Mesh Bed Leveling



  • so M203 is my issue now ??



  • M556 is also at 600 what should i use as a reasonable pickup speed


  • Moderator

    @ziggymanpopo said in ball screw stepper settings:

    M556 is also at 600 what should i use as a reasonable pickup speed

    if you mean the jerk value, that should probably be ok.


  • Moderator

    @ziggymanpopo said in ball screw stepper settings:

    M201 X300 Y300 Z100 E5000 ; Set accelerations (mm/s^2) was 500 you changed it to 300 for stall guard

    300 should be ok for acceleration as well. It's quite low, so it should be smooth with the ball screw.



  • do i need to change M203 if so to what


  • Moderator

    well right now it's set to 500mm/s which is likely much much too fast.

    Try M203 X15000 Y15000 for starters.



  • also tried M203 x10000 y10000
    sounds more like a stuck motor than a squeal now
    is it also necessary to keep X &Y at the same value
    is it safe to try lower values



  • here in my homey,g the F5000 is that a speed that also needs reducing also???
    G1 S1 Y-260 F5000 ; move X, stopping at the end stop



  • ; homey.g

    G91 ; relative positioning
    G1 S2 X0.2 Y0.2 Z0.2 ; Move all axis 0.2 mm, clear stall status
    M400 ; make sure everything has stopped before we make changes
    G1 S1 Y-260 F5000 ; move X, stopping at the end stop
    G1 Z-0.2 ; Move z -0.2 mm,
    M400 ; make sure everything has stopped
    G90 ; back to absolute mode

    x is still a belt
    and y 16/05 ballscrew as you suspected ...


  • Moderator

    @ziggymanpopo said in ball screw stepper settings:

    is it also necessary to keep X &Y at the same value

    No, they can be different.

    @ziggymanpopo said in ball screw stepper settings:

    is it safe to try lower values

    Yes, you can go lower if need be, but remember that this is the limit, so if you set it lower than your normal print speed or travel speed it will stop it from going as fast as you request it to in the slicer.

    @ziggymanpopo said in ball screw stepper settings:

    here in my homey,g the F5000 is that a speed that also needs reducing also???

    Possibly. 5000mm/min is 83mm/s which may be too fast for it. you'll need to experiment.

    @ziggymanpopo said in ball screw stepper settings:

    G1 S2 X0.2 Y0.2 Z0.2 ; Move all axis 0.2 mm, clear stall status

    You can remove this line not that you're not using stall detection.

    @ziggymanpopo said in ball screw stepper settings:

    ; Enable Bed Leveling
    G29 S1 ; Enable Mesh Bed Leveling

    remove this from the end of config.g and add it to your slicer start gcode after the G28. loading the heightmap at startup before the printer is homed can lead to problems with the homed z height.

    @ziggymanpopo said in ball screw stepper settings:

    G1 S1 Y-260 F5000 ; move X, stopping at the end stop

    Your axis limit is set as 500mm, so you need to make sure your homing moves are a bit longer than that so they are sure to hit the endstop. Y-260 may not be a long enough move. Try Y-600 just to be sure. Same goes for the other axis.

    @ziggymanpopo said in ball screw stepper settings:

    G31 P500 X-42 Y-5 Z1.35 ; Set Z probe trigger value, offset and trigger height - is Nozzle hoger

    Change the P500 to P25 for the BLtouch.



  • im not running the b.l.touch so i believe thats right and ill make the other changes you suggested
    im sure ill have some more setting questions but i thing ill start a new one, its time to mark this one "SOLVED"
    its running and and im close

    im glad to say around M203 Y 500 it runs good... it moves at M203 Y1000 and its a bit loud at Y800 it has missed steps im putting this in for the next guy that has the idea too do this.
    again i am thankfull to everone who puts up with us newbies.. cant tell you how much ive learned but this is daunting for someone who is learning my hats off to you all 👍

    Thanks again


Log in to reply