Z Axis Broken?

Home Forums TinyG TinyG Support Z Axis Broken?

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #3428
    Colecago
    Member

    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?

    #3429
    Colecago
    Member

    Oh, 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.

    #3430
    alden
    Member

    Sorry to hear you are having problems. What are your settings? Try $$

    #3433
    Colecago
    Member

    $$
    [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 deg

    #3434
    alden
    Member

    These 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.

     

    #3435
    Colecago
    Member

    it 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=i3p9Rua12Lo

    first 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> g1f200z40

    turned 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> g1f1200z40

    turned 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> g1f800z0

    It 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 video

    The chip isn’t even warm to the touch, the motor is a 200 step (1.8degrees)

    This is the same motor I’m using

    http://www.ebay.com/itm/Lot-4-Stepper-Motors-CNC-Router-Lathe-Robotics-24-VDC-Nema-17-42mm-Square-NEW-/300768657200?pt=BI_Robotics&hash=item4607357f30#ht_6656wt_1397

    #3436
    alden
    Member

    If 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?

    #3438
    Colecago
    Member

    Okay, 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?

    #3439
    alden
    Member

    I 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.

    #3440
    Colecago
    Member

    Yeah, 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 🙂

Viewing 10 posts - 1 through 10 (of 10 total)
  • You must be logged in to reply to this topic.