Home › Forums › TinyG › TinyG Support › Z Axis Broken?
- This topic has 9 replies, 2 voices, and was last updated 12 years, 3 months ago by Colecago.
-
AuthorPosts
-
August 25, 2012 at 11:58 pm #3428ColecagoMember
I’ve been having trouble with noise on my Z Axis ever since I put the ShapeOko together. At first I had what I thought were only mechanical problems
http://www.youtube.com/watch?v=nRkHqJvBOaw
So I took the axis a part, cleaned everything out, added lube, put it back together and this is what I got
http://www.youtube.com/watch?v=NplH3sDlyHk
I thought maybe my motor had a bent shaft as I had a hard time getting the pulley off this axis so I tried a different motor, this was the result
http://www.youtube.com/watch?v=rJYhKeq8WnE
I’ve tried my previous Z motor and this new one on other axes and they work fine. I’ve played with the current limit (the first part of that last video had it at 3/4, the second part, after I moved the camera a little, had it at where it starts), I reset to factory defaults, and I can’t get this axis to work right. Is there a setting or something I should be checking or is this probably a hardware problem?
August 26, 2012 at 12:00 am #3429ColecagoMemberOh, I should also mention, 3 times already I’ve had the Z Axis freak out and go way higher than it was supposed to go but the tinyG reports in the terminal that it thinks it is where it is supposed to be.
August 26, 2012 at 9:48 am #3430aldenMemberSorry to hear you are having problems. What are your settings? Try $$
August 26, 2012 at 10:13 am #3433ColecagoMember$$
[fb] firmware_build 339.02
[fv] firmware_version 0.94
[si] status_interval 0 ms [0=off]
[gpl] gcode_select_plane 0 [0,1,2]
[gun] gcode_units_mode 1 [0,1]
[gco] gcode_coord_system 1 [1-6]
[gpa] gcode_path_control 2 [0,1,2]
[gdi] gcode_distance_mode 0 [0,1]
[ea] enable_acceleration 1 [0,1]
[ja] junction_acceleration 200000 mm
[ml] min_line_segment 0.080 mm
[ma] min_arc_segment 0.100 mm
[mt] min_segment_time 5000 uSec
[ic] ignore_CR (on RX) 0 [0,1]
[il] ignore_LF (on RX) 0 [0,1]
[ec] enable_CR (on TX) 0 [0,1]
[ee] enable_echo 1 [0,1]
[ex] enable_xon_xoff 1 [0,1]
[g54x] g54_x_offset 0.000 mm
[g54y] g54_y_offset 0.000 mm
[g54z] g54_z_offset 0.000 mm
[g54a] g54_a_offset 0.000 mm
[g54b] g54_b_offset 0.000 mm
[g54c] g54_c_offset 0.000 mm
[g55x] g55_x_offset 0.000 mm
[g55y] g55_y_offset 0.000 mm
[g55z] g55_z_offset 0.000 mm
[g55a] g55_a_offset 0.000 mm
[g55b] g55_b_offset 0.000 mm
[g55c] g55_c_offset 0.000 mm
[g56x] g56_x_offset 0.000 mm
[g56y] g56_y_offset 0.000 mm
[g56z] g56_z_offset 0.000 mm
[g56a] g56_a_offset 0.000 mm
[g56b] g56_b_offset 0.000 mm
[g56c] g56_c_offset 0.000 mm
[g57x] g57_x_offset 0.000 mm
[g57y] g57_y_offset 0.000 mm
[g57z] g57_z_offset 0.000 mm
[g57a] g57_a_offset 0.000 mm
[g57b] g57_b_offset 0.000 mm
[g57c] g57_c_offset 0.000 mm
[g58x] g58_x_offset 0.000 mm
[g58y] g58_y_offset 0.000 mm
[g58z] g58_z_offset 0.000 mm
[g58a] g58_a_offset 0.000 mm
[g58b] g58_b_offset 0.000 mm
[g58c] g58_c_offset 0.000 mm
[g59x] g59_x_offset 0.000 mm
[g59y] g59_y_offset 0.000 mm
[g59z] g59_z_offset 0.000 mm
[g59a] g59_a_offset 0.000 mm
[g59b] g59_b_offset 0.000 mm
[g59c] g59_c_offset 0.000 mm
X origin offset: 0.000 mm
Y origin offset: 0.000 mm
Z origin offset: 0.000 mm
A origin offset: 0.000 deg
B origin offset: 0.000 deg
C origin offset: 0.000 deg
[1ma] m1_map_to_axis 0 [0=X, 1=Y…]
[1sa] m1_step_angle 1.800 deg
[1tr] m1_travel_per_revolution 36.540 mm
[1mi] m1_microsteps 8 [1,2,4,8]
[1po] m1_polarity 0 [0,1]
[1pm] m1_power_management 1 [0,1]
[2ma] m2_map_to_axis 1 [0=X, 1=Y…]
[2sa] m2_step_angle 1.800 deg
[2tr] m2_travel_per_revolution 36.540 mm
[2mi] m2_microsteps 8 [1,2,4,8]
[2po] m2_polarity 1 [0,1]
[2pm] m2_power_management 1 [0,1]
[3ma] m3_map_to_axis 2 [0=X, 1=Y…]
[3sa] m3_step_angle 1.800 deg
[3tr] m3_travel_per_revolution 1.250 mm
[3mi] m3_microsteps 1 [1,2,4,8]
[3po] m3_polarity 0 [0,1]
[3pm] m3_power_management 1 [0,1]
[4ma] m4_map_to_axis 1 [0=X, 1=Y…]
[4sa] m4_step_angle 1.800 deg
[4tr] m4_travel_per_revolution 36.540 mm
[4mi] m4_microsteps 8 [1,2,4,8]
[4po] m4_polarity 0 [0,1]
[4pm] m4_power_management 1 [0,1]
[xam] x_axis_mode 1 [standard]
[xvm] x_velocity_maximum 16000.000 mm/min
[xfr] x_feedrate_maximum 16000.000 mm/min
[xtm] x_travel_maximum 170.000 mm
[xjm] x_jerk_maximum 5000000000 mm/min^3
[xjd] x_junction_deviation 0.0500 mm (larger is faster)
[xsm] x_switch_mode 1 [0,1,2]
[xsv] x_search_velocity -1000.000 mm/min
[xlv] x_latch_velocity 100.000 mm/min
[xlb] x_latch_backoff 2.000 mm
[xzb] x_zero_backoff 1.000 mm
[yam] y_axis_mode 1 [standard]
[yvm] y_velocity_maximum 16000.000 mm/min
[yfr] y_feedrate_maximum 16000.000 mm/min
[ytm] y_travel_maximum 170.000 mm
[yjm] y_jerk_maximum 5000000000 mm/min^3
[yjd] y_junction_deviation 0.0500 mm (larger is faster)
[ysm] y_switch_mode 1 [0,1,2]
[ysv] y_search_velocity -1000.000 mm/min
[ylv] y_latch_velocity 100.000 mm/min
[ylb] y_latch_backoff 2.000 mm
[yzb] y_zero_backoff 1.000 mm
[zam] z_axis_mode 1 [standard]
[zvm] z_velocity_maximum 1200.000 mm/min
[zfr] z_feedrate_maximum 1200.000 mm/min
[ztm] z_travel_maximum 50.000 mm
[zjm] z_jerk_maximum 50000000 mm/min^3
[zjd] z_junction_deviation 0.0500 mm (larger is faster)
[zsm] z_switch_mode 1 [0,1,2]
[zsv] z_search_velocity -400.000 mm/min
[zlv] z_latch_velocity 100.000 mm/min
[zlb] z_latch_backoff 2.000 mm
[zzb] z_zero_backoff 1.000 mm
[aam] a_axis_mode 1 [standard]
[avm] a_velocity_maximum 3600.000 deg/min
[afr] a_feedrate_maximum 3600.000 deg/min
[atm] a_travel_maximum -1.000 deg
[ajm] a_jerk_maximum 20000000 deg/min^3
[ajd] a_junction_deviation 0.0500 deg
[ara] a_radius_value 1.0000 deg
[asm] a_switch_mode 1 [0,1,2]
[asv] a_search_velocity -600.000 deg/min
[alv] a_latch_velocity 100.000 deg/min
[alb] a_latch_backoff -5.000 deg
[azb] a_zero_backoff 2.000 deg
[bam] b_axis_mode 0 [disabled]
[bvm] b_velocity_maximum 3600.000 deg/min
[bfr] b_feedrate_maximum 3600.000 deg/min
[btm] b_travel_maximum -1.000 deg
[bjm] b_jerk_maximum 20000000 deg/min^3
[bjd] b_junction_deviation 0.0500 deg
[bra] b_radius_value 1.0000 deg
[bsm] b_switch_mode 1 [0,1,2]
[bsv] b_search_velocity -600.000 deg/min
[blv] b_latch_velocity 100.000 deg/min
[blb] b_latch_backoff -5.000 deg
[bzb] b_zero_backoff 2.000 deg
[cam] c_axis_mode 0 [disabled]
[cvm] c_velocity_maximum 3600.000 deg/min
[cfr] c_feedrate_maximum 3600.000 deg/min
[ctm] c_travel_maximum -1.000 deg
[cjm] c_jerk_maximum 20000000 deg/min^3
[cjd] c_junction_deviation 0.0500 deg
[cra] c_radius_value 1.0000 deg
[csm] c_switch_mode 1 [0,1,2]
[csv] c_search_velocity -600.000 deg/min
[clv] c_latch_velocity 100.000 deg/min
[clb] c_latch_backoff -5.000 deg
[czb] c_zero_backoff 2.000 degAugust 26, 2012 at 2:10 pm #3434aldenMemberThese look good. Can you explain what was happening in the third video? I could not tell. Some questions to try to diagnose this:
– How much torque was the movement in the 3rd video delivering? Can you stop the motor by hand? How hard is it to stop?
– Does the Z axis work better if you drop the Vmax from 1200 to (say) 1000 or 800?
– Do you get better results with a G1 F800 Z…?
– Is your motor a 200 step of 400 step motor? Your settings are for a 200 step motor.
– How hot does the Motor3 chip get (Z axis?). Do you have an IR thermometer, if not just feel it by touch – relative to the X and Y chips.
– What is your current pot set to. Say that 12:00 is dead center, 8:00 is off and 4:00 is full on.
August 26, 2012 at 5:44 pm #3435ColecagoMemberit was hard to see in that video, but the stepper wasn’t turning. It
would turn a little bit when accelerating and decelerating but then
would just stall out in between.See new video here-
http://www.youtube.com/watch?v=i3p9Rua12Lofirst part of video, torque pot was set to 12 – couldn’t stall it when it was actually turning
tinyg[mm] ok> g0z20
tinyg[mm] ok> g0z0
tinyg[mm] ok> g1f800z40
tinyg[mm] ok> g1f700z0
tinyg[mm] ok> g1f750z40
tinyg[mm] ok> g1f400z0
tinyg[mm] ok> g1f200z40turned torque pot to 4 – couldn’t stall it when it was turning
tinyg[mm] ok> g1f600z0
tinyg[mm] ok> g1f400z40
tinyg[mm] ok> g1f500z0
tinyg[mm] ok> g1f400z40
tinyg[mm] ok> g1f300z0
tinyg[mm] ok> f1f600z40
tinyg[mm] ok> g1f800z0
tinyg[mm] ok> g1f1200z40turned torque pot to what it was when shipped, about 10 o clock – stalled easily
tinyg[mm] ok> g1f1200z0
tinyg[mm] ok> g1f800z40
tinyg[mm] ok> g1f800z0It seems that the higher the current limit is set to, the harder it is to stall when properly stepping, but the lower the max speed you can go. Is that normal for a stepping motor?
Also, it makes like a grinding noise when accelerating and
decelerating as can be heard in the videoThe chip isn’t even warm to the touch, the motor is a 200 step (1.8degrees)
This is the same motor I’m using
August 26, 2012 at 9:52 pm #3436aldenMemberIf you move the motor to a different motor channel (1,2 or 4) and set the parameters the same as they are in motor 3 do you get the same results?
ALso, what results do you get if you run the motor at 2 microsteps instead of 1?
August 27, 2012 at 8:31 pm #3438ColecagoMemberOkay, got back to testing it again, here is what I found
Output 1, does the same thing
If I try and load the output, I can get it to run at higher speeds, if unloaded it pulls out when getting up to max speed
2-4 microsteps make it able to achieve a slightly higher max speed than no stepping, 8 doesn’t appear to help at all
the noise is still there, I think it has to do with the acceleration curve and that this is going so fast, I don’t remember noticing it during the hello world or other runs, it almost sounds like its coasting (which it is not)
I don’t think its broken anymore, I think that’s the physics of steppers maybe? I understand the higher current = higher torque, but somehow higher current means less max speed as well.
Also, the reason this came up first of all, everything was working okay, but I was getting terrible resonant noise on the z axis. I tried some things, took it all a part, lubed things up, steel wool on the threaded rod, and that issue went away, but then I noticed the “grinding” at the beginning and end of the cycle (at this point I was just running up and down at max speed to test). I took a part the axis again, tried more alignment things, then thought maybe my motor was bad, as this was the motor I had cut the pulley off of. So I borrowed a motor and ran it out of the system, it wouldn’t run with the standard g0 command. I tried my motor as well, it wouldn’t either, so I thought my Z axis broke. Unloaded this thing can’t run full speed set in the settings, as I just tried, loaded, I can get it to run, so the load of the axis was enough to get it to run properly.
Now that you’ve had me try a few things, I’m a lot more confident that nothing is wrong. The “grinding” noise still bothers me, but I think its just the acceleration curves and the different whining frequencies of the motor. Did you experience this when running your motors?
August 27, 2012 at 8:49 pm #3439aldenMemberI do have some rattle on the Z axis at hugh speeds. I attributed this to the construction of the Z axis on the Shapeoko. It rattles. You can see this in my YouTube video (search on “TinyG Shapeoko”).
I don’t have these other issues with my motors, but I prefer to run them at at least 2x microstepping. I notice 1x is very noisy. This is true on almost any driver, not just TinyG (or grblshield).
It sounds like you may also have the Z max velocity set too high for your motors ($zvm). Try dropping it a bit at a time and see if you can get a full move with a G0. Ut may also help to play with the current setting when you do this. Be careful not to strip the pots by turning them too far. Then set $xfr to the same value.
August 27, 2012 at 9:16 pm #3440ColecagoMemberYeah, I’m thinking about leaving it half way and having the max speed set to 600-650, it seemed pretty reliable at that speed.
I’m still learning this stuff, and your controller has a crap ton of settings 🙂
-
AuthorPosts
- You must be logged in to reply to this topic.