Z-Axis in centimeters
-
Hi,
I'm already aware that my Z-Axis probably has the wrong steps per mm, as my Z-Axis is in centimeters. As far as how my Z-Axis is setup, I have an M6 lead-screw driven by a Nema 17 stepper motor at 1.8 degree step angle. And if necessary, here is my config.g file.; Configuration file for Duet WiFi (firmware version 2.03)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v2.1.8 on Mon Mar 09 2020 20:36:41 GMT-0500 (Central Daylight Time); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"Printrbot Afterburner" ; set printer name
M551 P"bruh" ; Machine password (used when you connect Duet Web Control or via FTP); Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
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 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z3200.00 E1338.6 ; set steps per mm
M566 X9000.00 Y9000.00 Z12.00 E3.00 ; set maximum instantaneous speed changes (mm/min)
M203 X1000.00 Y1000.00 Z80.00 E60 ; set maximum speeds (mm/min)
M201 X1000.00 Y1000.00 Z50.00 E5.00 ; set accelerations (mm/s^2)
M906 X1500 Y1500 Z1500 E750 I60 ; 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 X200 Y150 Z200 S0 ; set axis maxima; Endstops
M574 X2 Y1 S1 ; set active high endstops
M574 Z1 S2 ; set endstops controlled by probe; Z-Probe
M558 P5 I1 E0 S0 H2.5 F200 T600 ; set Z probe type to inductive and normally open the dive height + speeds
G31 P1000 X25 Y0 Z0.095 ; set Z probe trigger value, offset and trigger height
M557 X15:215 Y15:195 S20 ; define mesh grid; Heaters
M140 H-1 ; disable heated bed
M305 P1 B4725 C7.06e-8 ; set thermistor + ADC parameters for heater 1
M143 H1 S280 ; set temperature limit for heater 0 to 280C; Fans
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 P1 D0 H1 F0 S"Print Head" ; define tool 1
G10 P0 X0 Y0 Z0 ; set tool 1 axis offsets
G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C; Custom settings are not defined
-
Are you sure you have an M6 thread? 3200 should be correct if that's the case.
https://blog.prusaprinters.org/calculator/#stepspermmlead
But if 10mm is 100mm then 3200 is 10x too much.
-
I'll check to see if my screw is M8. If it is, then I've been using the wrong settings this whole time.
-
I've changed the value, and the Z-Axis seems to be more accurate, but I'll still have to print to see if anything has changed. Thanks for the help.
-
@Super_Sonic_7036 3200 (micro) steps divided by 16x microstepping gives 200 full steps. A 1.8 degree motor has 200 full steps per revolution. If the lead of your screw is 1mm, then 1 revolution will move a nut fitted to the screw 1mm. So 3200 micro steps at 16x is correct for a 1mm lead screw. Note that I use the term "lead" and not "pitch". They happen to be the same for single start threads, but for multi start threads, the lead is the pitch multiplied by the number of starts. The diameter of the screw is irrelevant.
-
I looked up my printer's specs, and I have a 4 start acme threaded leadscrew. So then what would I have to change in my calculations?
-
@Super_Sonic_7036 we'd need to know how much movement one turn of the screw produces. Is it a TR8*8? Meaning 8mm diameter and 8mm movement from a single turn. These are most common in 3d printers.
The link I included earlier to the Prussian calculator site will let you enter your values and it will tell you your steps per mm.
-
I just did the calculations, and I multiplied the pitch of an M8 (1.25) by how many starts my screw has (4), and I got 5. I put that into the Prusia calculator, and my steps per mm are now 640. I think I've finally got it right. I'm testing my new value by printing a benchy.
-
Here's the bare bones kit I'm using in case it helps.
https://vectormfg.net/shop/simple-pro-barebones-kit/ -
@Super_Sonic_7036 said in Z-Axis in centimeters:
I just did the calculations, and I multiplied the pitch of an M8 (1.25) by how many starts my screw has (4), and I got 5. I put that into the Prusia calculator, and my steps per mm are now 640. I think I've finally got it right. I'm testing my new value by printing a benchy.
That looks about right. An easy way to measure the pitch accurately is to measure across a number of thread peaks, then divide the answer by the number of threads. So for example, if you measure 10 threads and get 12.5mm, then the pitch is 1.25mm. That technique reduces the error.
So 1.25mm pitch x 4 start gives a lead of 5mm (as you said). We know that 1 revolution of the motor is 200 full steps, therefore (200/5 = ) 40 full steps gives us 1mm of movement. 40 full steps x 16 micro-steps gives (micro) 640 steps per mm.
-
Upon testing, I now have the right heights in mm. Thanks for the help!
-
I have never known a 8mm diameter Acme thread to have a pitch of 1.25 I am more likely to think it will be a TR8x8 which would give you a steps of 400.
Every TR8 lead screw that is a multi start I have ever come across have a pitch of 2mm so yours with 4 starts would have a lead of 8mm.
HTH
Doug
-
-
I know that this is a bit redundant, but I reset my steps per millimeter to 400, and this time, I've finally got it. I would like to thank you all in this thread for making my printer the best it can be. And so, thank you all again for the amount of help you've given me.
-
To summarize, I set my Z steps per mm to 400.
-
That's a cool benchy though you gotta admit.
-
@Super_Sonic_7036 said in Z-Axis in centimeters:
To summarize, I set my Z steps per mm to 400.
Which means that the lead of your screw is 4mm not 5mm. If it's a 4 start thread, then the pitch is 1mm not 1.25mm.
For info, it's generally a good idea not to rely on microstepping for positional accuracy. 400 (mico( steps per mm means that 1 full step will be 0.04mm so use layer heights which are multiples of that. So 0.2 or 0.4 but avoid 0.3 for example. -
@Super_Sonic_7036 I found this the other day on the Printbot forums about the 'Z Lead screw 4 start Upgrade', but didn't post it because you said you had it fixed. https://www.printrbottalk.com/forum/viewtopic.php?f=80&t=11294#p72399
The steps/mm setting is (200 steps/rev * 16 microsteps/step) / (8mm/rev) or 3200/8.
3200 / 8 = 400
FYI an 'ACME' thread is the shape of the thread, not the pitch. I thought it meant it was an imperial/inch thread, but not so.
Ian
-
@droftarts said in Z-Axis in centimeters:
I thought it meant it was an imperial/inch thread, but not so.
think you're right about that, the metric counterpart are just called trapezoidal and have a 30 degree angle instead of the 29 for the Acme.
-
To be pedantic, "trapezoidal" refers to the thread form (essentially the peaks and troughs have the pointy bit chopped off which helps to alleviate binding), so ACME threads are also trapezoidal. There is an ISO standard for metric lead screws but it's seldom followed. Tr denotes that the thread form is trapezoidal. The number after the Tr is the nominal diameter. This is followed by "X nn" which is the lead. For a single start thread, this is also the pitch. For multi start threads, the pitch should be shown in parenthesis e.g. (P2) but this is often omitted. So a TR8 x 8 means a lead screw of 8mm diameter and 8mm lead. Technically it should be referred to as a TR8 x 8 (P2) where P2 means it has a 2mm pitch and so therefore we can deduce that it is a 4 start thread. What we often see is Tr8x 8 screws with the (Pn) omitted and being referred to as having 8mm pitch which is absolutely not true.