Z-axis stalls–but not always!

Home Forums TinyG TinyG Support Z-axis stalls–but not always!

Viewing 10 posts - 1 through 10 (of 10 total)
  • Author
    Posts
  • #9668
    Vex
    Member

    Hi again folks! I have an interesting problem that I would like some input on: I’m trying to figure out if it’s a physical (the machine itself), a hardware (TinyG), or a software (Chilipeper) issue. My trouble seems to be that at a very specific line in the code (around Line 54 “G0 z15.24”) my Z-axis will stall.

    I’ve run multiple tests and different gcodes that repeatedly test the jog of the z-axis up and down the entire length without problem. The motor doesn’t stall at all.

    I’ve included the code below for reference (and bolded the location that causes my machine to stall).

    (FACE6)
    M5
    M9
    T1
    S11028 M3
    G54
    M9
    G0 X52.864 Y-49.368
    Z15.24
    Z5.08
    G1 Z0.317 F1026.
    G18 G3 X52.546 Z0. I-0.318 K0.
    G1 X50.8
    X0.
    G17 G2 Y-46.379 I0. J1.495
    G1 X50.8
    G3 Y-43.389 I0. J1.495
    G1 X0.
    G2 Y-40.4 I0. J1.495
    G1 X50.8
    G3 Y-37.411 I0. J1.495
    G1 X0.
    G2 Y-34.421 I0. J1.495
    G1 X50.8
    G3 Y-31.432 I0. J1.495
    G1 X0.
    G2 Y-28.442 I0. J1.495
    G1 X50.8
    G3 Y-25.453 I0. J1.495
    G1 X0.
    G2 Y-22.464 I0. J1.495
    G1 X50.8
    G3 Y-19.474 I0. J1.495
    G1 X0.
    G2 Y-16.485 I0. J1.495
    G1 X50.8
    G3 Y-13.496 I0. J1.495
    G1 X0.
    G2 Y-10.506 I0. J1.495
    G1 X50.8
    G3 Y-7.517 I0. J1.495
    G1 X0.
    G2 Y-4.528 I0. J1.495
    G1 X50.8
    G3 Y-1.538 I0. J1.495
    G1 X0.
    G18 G3 X-0.317 Z0.317 I0. K0.317
    <strong>G0 Z15.24</strong>
    G17

    If I don’t stop/hit the safety switch the machine will crash during the adaptive milling phase that follows.

    There has been, on occasion, a stall on other Z-axis movements with this gcode (see the first call for a g0 z15.24).

    As for TinyG status I am using FW 440.20 and here’s my settings dump: https://drive.google.com/open?id=0Bx6o1FtzhQNZOWxxc3FSRDREdTA

    Any help/direction would be well appreciated. Thanks

    #9669
    cmcgrath5035
    Moderator

    A couple of things that look strange (not necessarily ‘bad’) in your parameters:
    You have a Z axis homing switch, yet Zmin=0 and Zmax = 254mm (really?)
    By convention, if you home Z axis with a homing cycle, Zhome=0.(=Zmax)
    Zmin should in your case should be -254mm, Zmax=0.0
    If you don’t home Z, should not be an issue but then suggest you set $zsx=0.

    Most folks run microstepping=4 on axis with very small $_tr

    Did you enter your speeds in In mode?
    [zvm] z velocity maximum 635 mm/min
    [zfr] z feedrate maximum 457 mm/min
    would suggest that, unless 635 mm/min is special to you.
    There have been issues with parameters entered in in mode,
    mm mode highly recommended

    This entry
    [xjm] x jerk maximum 1905 mm/min^3 * 1 million
    [xjh] x jerk homing 51 mm/min^3 * 1 million
    and the Y axis entries look very unusual as well.

    You appear to have a really fine thread ball screw machine(?)
    $_tr=1.27mm.
    Not clear what the correct jerk setting are for such a machine, but consider that on a typical SH2 belt machine ($_tr=40 mm), $zjm=5000 and $zjh=10000 to 20000.

    Unexplainable parameters like
    [xsv] x search velocity 406 mm/min
    frequently are the result of corrupted EEPROM (the parameter store).
    If you can’t explain 406, as opposed to 400, or don’t remember explicitly setting it, I would suggest the following:

    1. use your Gdrive file as a guide, write down what you think parameters should be, based on whatever setup guide you might be following.
    I have never seen a guide that suggested [xsv] x search velocity 406 mm/min.

    2. from the CP Serial console command line, enter $DEFA=1 command
    This will reset tinyG parameters to factory defaults, likely nothing close to what is right for your machine.

    3. Grab another $$ parameter dump and mark it up with the values you believe are correct for your machine.

    4. Enter G21 in the serial console to ensure tinyG in mm mode.

    5. Now enter parameters that need to be changed, one at a time, in the Serial Port console CLI. I suggest avoiding the configuretinyG widget, it seems to have contributed to corruption for some users, but not others.

    When done, save your $$ list for future reference.

    Now rerun your job, maybe in air first, to see if it behaves more sanely.

    If not, reports results, and this time better explain what you mean by Z axis “stalling”. Just not moving, stopping but making a lot of noise, etc, etc.

    BTW, if you do have a screw machine, double check the set screws on your motor couplings as well.

    #9672
    Vex
    Member

    Thanks for getting back to me!

    A couple of things that look strange (not necessarily ‘bad’) in your parameters:
    You have a Z axis homing switch, yet Zmin=0 and Zmax = 254mm (really?)
    By convention, if you home Z axis with a homing cycle, Zhome=0.(=Zmax)
    Zmin should in your case should be -254mm, Zmax=0.0
    If you don’t home Z, should not be an issue but then suggest you set $zsx=0.

    I currently don’t home my machine (no home/limit switches). It is on my to-do list, but would like to be able to machine the mounts. I’ll go ahead and set $zsx=0

    Most folks run microstepping=4 on axis with very small $_tr

    Wouldn’t that make the location inaccurate, IE if I’m running a 10 TPI screw and adjust it to 5 TPI with the same decrease in microstep?

    Did you enter your speeds in In mode?

    Yes

    [zvm] z velocity maximum 635 mm/min
    [zfr] z feedrate maximum 457 mm/min
    would suggest that, unless 635 mm/min is special to you.
    There have been issues with parameters entered in in mode,
    mm mode highly recommended

    I don’t quite follow? Are you suggesting I adjust feedrate and velocity to some other value?

    This entry
    [xjm] x jerk maximum 1905 mm/min^3 * 1 million
    [xjh] x jerk homing 51 mm/min^3 * 1 million
    and the Y axis entries look very unusual as well.

    You appear to have a really fine thread ball screw machine(?)
    $_tr=1.27mm.
    Not clear what the correct jerk setting are for such a machine, but consider that on a typical SH2 belt machine ($_tr=40 mm), $zjm=5000 and $zjh=10000 to 20000.

    If I remember correctly I based it around this, and fine tuned by ear. Are these values incorrect?

    Unexplainable parameters like
    [xsv] x search velocity 406 mm/min
    frequently are the result of corrupted EEPROM (the parameter store).
    If you can’t explain 406, as opposed to 400, or don’t remember explicitly setting it, I would suggest the following:

    I don’t recall ever adjusting this value away from default–I may have, but it’s been awhile.

    1. use your Gdrive file as a guide, write down what you think parameters should be, based on whatever setup guide you might be following.
    I have never seen a guide that suggested [xsv] x search velocity 406 mm/min.

    2. from the CP Serial console command line, enter $DEFA=1 command
    This will reset tinyG parameters to factory defaults, likely nothing close to what is right for your machine.

    3. Grab another $$ parameter dump and mark it up with the values you believe are correct for your machine.

    4. Enter G21 in the serial console to ensure tinyG in mm mode.

    5. Now enter parameters that need to be changed, one at a time, in the Serial Port console CLI. I suggest avoiding the configuretinyG widget, it seems to have contributed to corruption for some users, but not others.

    When done, save your $$ list for future reference.

    Now rerun your job, maybe in air first, to see if it behaves more sanely.

    Sounds good. I’ll run through it next chance I have to carve out some time.

    If not, reports results, and this time better explain what you mean by Z axis “stalling”. Just not moving, stopping but making a lot of noise, etc, etc.

    Yeah, I must apologize for the lack of that descriptor. The Z-axis stepper stalled out (I heard the noise and saw that the coupler wasn’t moving). Tested the z-axis after that without issue.

    BTW, if you do have a screw machine, double check the set screws on your motor couplings as well.

    Yup. Tight as can be and not slipping.

    #9673
    cmcgrath5035
    Moderator

    $xjm=1905 would not be a problem, and probably translates to a more ’round’ number in inches.
    $xjh=51 is very low, but you don’t home the machine so this value never gets used.

    Turn off all home/limit switches that you don’t want to be active.

    To my knowledge, there is not a Synthetos ‘suggested’ parameter set for screw machines, so you are on you own to collaborate with others.
    If you do find one, send me a link.

    #9674
    Vex
    Member

    Carl,

    A quick thought occurs to me: Based on this Discussion, it sounds like I may have my current limiting dash pots set too low.

    My physical setup includes NEMA23s on each axis (bipolar, 4-wire, rated for 3 amps, double shaft), active cooling on the ground plane of the TinyG v8 (CPU fan CF-T12S), it is contained within a case that houses the power supply (Meanwell switching with thermally controlled fan) and spindle control board. This case also has an AC fan to cycle air through the case while turned on.

    Would it be of benefit to increase the current limit?

    Thanks!

    #9679
    cmcgrath5035
    Moderator

    Inadequate drive current is certainly a possibility, I suppose.
    Do you have a very heavy spindle?
    With $tr=1.27mm, your Z motor already has a good mechanical advantage.
    You could run your problematic code repeatedly while tuning your current pot to see if that helps.

    What you describe sounds like cooling is about as good as it gets – forced air on the bottom of the tinyG is the most effective way to go.

    Are you sure there is no binding along the travel of your up-down motion?
    Do you keep the Z screw lubricated(Graphite, etc)?
    What material do you typically mill?
    How do you keep the lead screws clean?
    At this pitch (1.27), seems that could be a long term issue.
    Is this a custom machine?

    #9681
    Vex
    Member

    The spindle is one of the heavier components on the machine. It is a modified Sherline machine with very little customization on the physical side. It is similar in size and scope to this mill, the only difference being that it is actually an older version. Current physical alterations include new shaft couplers and steppers (increased torque from the original 120 some-odd oz-in–Current stepper motors, I believe, are rated around 400 some-odd oz-in).

    I have not noticed any binding on the z-axis. I’ve adjusted the gibs and lubricated both the screw and the prismatic beam. Gear grease and silicon spray respectively. There is no backlash mechanism on this version for the z-axis so binding ‘shouldn’t’ be an issue on that front.

    All test cuts are using plexiglass/acrylic. Sufficiently soft to not bind and cause missing steps (running spindle around 8-10k rpm). Lead screw on this machine is hidden behind the prismatic beam/rail–no swarf is able to get to it that way. Chips are usually cleaned after each use of the machine (air spray and brush). X- and Y- axis screws are similar and hidden from swarf and debris either from the work table itself, or through various covers.

    #9682
    Vex
    Member

    Intermediate update: Just completed doing an air-cut test of the program after increasing the current limit from the dash-pot. It appears to have successfully completed a run without stalling. I will attempt another test cut of the material and report back.

    #9683
    Vex
    Member

    Completed test cut. It appears to be a success. My current was set to low. I may bump the current on my x- and y- too as I think I’m missing a few steps there during some aggressive cuts. But all things said and done; it turned out quite well!

    #9688
    cmcgrath5035
    Moderator

    You might find it worthwhile to invest in a laser guided temp measurement tool, such as

    and gather some temp rise data measuring driver package temp, relative to the device specifications.
    You **may** encounter issues on very log jobs, or not. Hard to predict.

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