587,196 active members*
3,015 visitors online*
Register for free
Login
Page 1 of 2 12
Results 1 to 20 of 27
  1. #1
    Join Date
    Oct 2007
    Posts
    43

    gantry motion gets jerky when jogging.

    I recently had our cnc router retrofit with camsoft cnc plus. When I jog the gantry, (servo motors Xa and Xb) the gantry starts to move smoothly, and then starts to shake. Its almost like the encoders are loose, and picking up more pulses, than they are supposed to. Maybee the servos are not tuned properly. The outfit that retrofit our unit, never finished the job properly, and tech support from camsoft, has been maybe one question answered in a weeks time. Any ideas how i can smooth out the travel?:drowning:

  2. #2
    Join Date
    Apr 2003
    Posts
    332
    With what you said here it maybe related to the gantry binding. There are several solutions for this.

    We need you to call in to proceed. We need ask your dealers name and serial number and to look up what you have.


    Tech Support
    CamSoft Corp.
    [email protected]
    PH 951-674-8100
    Fax 951-674-3110
    www.cnccontrols.com
    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  3. #3
    Join Date
    Dec 2003
    Posts
    24223
    I would think that if the integrator used gearing to synchronize the Xa axis as master and Xb slave, you need to make sure that no back lash exists on either master or slave.
    Is this a gantry that has a rack and pinion either side?
    It could be the gain is set too high on the master side?
    Al.
    CNC, Mechatronics Integration and Custom Machine Design

    “Logic will get you from A to B. Imagination will take you everywhere.”
    Albert E.

  4. #4
    Join Date
    Sep 2003
    Posts
    552
    It would help to know a few things:

    1. Are your servos analog controlled (+/-10v) slaved by the Galil, or are they digital (Step and Direction) with seperate inputs or do they share the same input?

    2. Did this problem come with the retrofit or ran fine then appeared later?

    Al's advice would pertain to the analog servos with Galil. The digital control can also be in the form of CW/CCW or A/B signals, S/D being the most common. The slaving can also be done with a master axis running either analog or digital and the slave running digital A/B encoder following off the master axis.

  5. #5
    Join Date
    Oct 2007
    Posts
    43

    cnc router gantry problems

    The router was manufactured by multicam. serial # MG20442986.
    We had this retrofit last year, and the techs never worked out the problems completely, and took about 1 year to do the job, instead of the 2 weeks which was quoted. The gantry never had a problem, before the retrofit. It worked after, but it was never as smooth as before. Now after upgrading to camsoft cncplus version 6.5, It gets real jerky when it reaches jog speed. It doesn't matter if we are going 30 ipm or 250ipm. It seems to be feeding on itself, and accumulating encoder pulses. The other problem we have that still hasn't been addressed is: the Y axis drifts over a little ever time we cycle. After 20 pieces or so they are out of tolerance. We were just drilling a straight line of holes in this example. J.P. Our router has rack and gears for the gantry. Xa and Xb servo motors with motor mounted encoders.

  6. #6
    Join Date
    Oct 2007
    Posts
    43

    gantry motion

    The servo motors that move the gantry, Xa, and Xb were not tuned properly by the people who did our retrofit. They had one motor set at 52.3, and the other set at 23. I, (through trial and error) set them both at 30, and now they move very smooth, at any speed slow, ar fast. J.P.l

  7. #7
    Join Date
    Mar 2004
    Posts
    1543
    Quote Originally Posted by japco43 View Post
    The servo motors that move the gantry, Xa, and Xb were not tuned properly by the people who did our retrofit. They had one motor set at 52.3, and the other set at 23. I, (through trial and error) set them both at 30, and now they move very smooth, at any speed slow, ar fast. J.P.l
    CONGRATULATIONS!

    It's a great feeling to solve an issue. The tougher the problem, the better you feel when you beat it.

    Karl

  8. #8
    Join Date
    Jun 2008
    Posts
    262

    On a similar note...

    I got Camsoft's mid range pendant for my unit - encoder for jogging and 2 buttons - the 600$ one not the USB cheapie. Thanks for them to let me know they just started offering it.

    When I use the encoder wheel to move an axis, it is a bit jumpy, not a big problem since I don't cut just position using it. Anybody have had this? I know it's just a setting in the code (overrun limiting?)

    Thanks to all.
    i build the braces that keep american teeth straight......tick tick tick

  9. #9
    Join Date
    Mar 2004
    Posts
    1543
    Quote Originally Posted by nelZ View Post
    I got Camsoft's mid range pendant for my unit - encoder for jogging and 2 buttons - the 600$ one not the USB cheapie. Thanks for them to let me know they just started offering it.

    When I use the encoder wheel to move an axis, it is a bit jumpy, not a big problem since I don't cut just position using it. Anybody have had this? I know it's just a setting in the code (overrun limiting?)

    Thanks to all.
    I had this on all three machines i've done. Changing RAPIDSPEED and using OK2STOP is the key. Then you got a bit of a mess cause you need to change RAPIDSPEED back when you exit the macro. here's one of my macros - I use coarse and fine on my handwheel.

    Karl




    '************************************Handwheel**** *************************************
    [[HANDWHEEL]] 'handwheel jogging code
    LOADING \55:IF \55=0 THEN EXIT

    IF \140=1 THEN MESSAGE . Start of Handwheel 830= \830

    IF \142=1 THEN [GALILERRORS] 'message Galil errors
    HANDWHEEL 0
    'X axis, #79=0 for large steps
    IF\830=5THENIF#79=0THEN RAPIDSPEED 1;1000:HANDWHEEL 1;16;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 16 GIVES 0.010" PER CLICK z AXIS
    IF\830=5THENIF#79=1THEN RAPIDSPEED 1;100:HANDWHEEL 1;800;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 800 GIVES 0.002" PER CLICK Z AXIS
    'Y axis, #79=0 for large steps
    IF\830=4THENIF#79=0THEN RAPIDSPEED 2;1000:HANDWHEEL 2;16;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 16 GIVES 0.010" PER CLICK z AXIS
    IF\830=4THENIF#79=1THEN RAPIDSPEED 2;100:HANDWHEEL 2;800;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 800 GIVES 0.002" PER CLICK Z AXIS
    'Z axis, #79=0 for large steps
    IF\830=3THENIF#79=0THEN RAPIDSPEED 3;1000:HANDWHEEL 3;16;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 16 GIVES 0.010" PER CLICK z AXIS
    IF\830=3THENIF#79=1THEN RAPIDSPEED 3;100:HANDWHEEL 3;800;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 800 GIVES 0.002" PER CLICK Z AXIS
    'A axis, #79=0 for large steps
    IF\830=3THENIF#79=0THEN RAPIDSPEED 4;1000:HANDWHEEL 4;16;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 16 GIVES 0.010" PER CLICK z AXIS
    IF\830=3THENIF#79=1THEN RAPIDSPEED 4;100:HANDWHEEL 4;800;OK2STOP1: GOTO :ENDHANDWHEEL ' SETTING OF 800 GIVES 0.002" PER CLICK Z AXIS

    'NOTE rapidspeeds are reduntant in RAPIDPERCENT macro, must change both places
    :ENDHANDWHEEL





    EDIT I didn't explain setting RAPIDSPEED back


    I use a MODE switch to put the machine in HANDWHEEL mode. On exit from the handwheel macro, run a [RAPIDSPEED] macro with these commands:

    [[RAPIDPERCENT]]
    RAPIDSPEED 1;\129 'assign current rapid speed for X axis
    RAPIDSPEED 2;\130 'assign current rapid speed for Y axis

    RAPIDSPEED 3;\131 'assign current rapid speed for Z axis
    RAPIDSPEED 4;\132 'assign current rapid speed for A axis
    'NOTE my maco also uses a multiplier for different rapid %s

    also set your RAPIDSPEED in startup.file
    \129=20000 'original value of X axis RAPIDSPEED
    \130=20000 'original value of Y axis RAPIDSPEED
    \131=20000 'original value of Z axis RAPIDSPEED
    \132=10000 'original value of A axis RAPIDSPEED

  10. #10
    Join Date
    Jun 2008
    Posts
    262
    Thanks, Karl I'll use your example to doctor my file.

    Many thanks right from the beginning!

    Nelson
    i build the braces that keep american teeth straight......tick tick tick

  11. #11
    Join Date
    Jan 2007
    Posts
    206

    Smile One line in the setup file

    My torch is a gantry with the 3rd axis slaved to the first. the slaved axis always acted goofy. there is a line in the setup.file with 7 parameters that will make the PID on the slave = the PID on the master. IF you dont go in and change the numbers it will default back to the old original and you will always have trouble with the slave. Ernie was the hero on this one.
    Good Luck
    The Farmer

  12. #12
    Join Date
    Mar 2008
    Posts
    114

    handwheel motion

    I have found that electronic gearing is the best solution for the handwheel - no need to change rapid speeds all around. I, like Karl, have coarse and fine on my handwheel - just different electronic gearing ratios. I noticed in the past that with the camsoft handwheel logic if you turn the handwheel back and forth as fast as you can it gets confused and runs away in one direction. And I HATE having to remember to change rapidspeeds around all the time whenever I edit logic. With the galil commands for electronic gearing this is no longer an issue - it's almost like a real machine now - not jerky and never gets confused not matter how stupid you get playing with the handwheel. I can post the logic for this if anyone is interested.

  13. #13
    Join Date
    Mar 2004
    Posts
    1543
    Quote Originally Posted by davesnd View Post
    ... I can post the logic for this if anyone is interested.
    Yes, please. I really like to see when somebody thinks outside the box and finds a better way. Did you, by chance, play with the SLAVE command?

    I used electronic gearing on my rigid tap cycle G84 because I found no other way. I had troulbe with the position registers getting confused in Camsoft (Basically the card is told directly what to do and the host is unaware - at least my understanding) I take it you haven't seen this problem.

    For other viewer's benefit; you need OKTOSTOP parameter to stop run on problem if using HANDWHEEL. And, setting RAPIDSPEED back on exit from a Camsoft routine is going to be about the same as turning off electronic gearing on exit from a Galil routine.

    Karl

  14. #14
    Join Date
    Mar 2008
    Posts
    114

    handwheel using gearing

    Here it is Karl

    I use the enable and disable buttons on the membrane keypad to enter and exit handwheel mode. I have the handwheel mounted on the carriage of the lathe along with an axis selector switch for switching between x & z once in handwheel mode. I almost never use fine - I have fine set to move .0001" per click and coarse moves .001" per click. I have a jog stick on the carriage as well, so I get close to where I want to be with jog and then switch to handwheel to touch off. Since the gearing allows me to get crazy spinning the handwheel, I can still move 2 or 3 inches in handwheel mode quite quickly if I have a little repair job or something where I want to machine using the handwheel - it's quite handy. If I spring for a motion card with more encoder channels on it I could have a handwheel for each axis on the carriage like a teach lathe and you could actually work it like a manual machine - I might try this sometime. Also at the bottom is my logic for a feedrate over-ride switch that doesn't require analog in on your motion card. Just a cheap 11 position rotary switch and 10 available inputs. Works far better than the mouse feedrate over-ride because it's on the carriage of the machine so you can adjust on the fly a lot easier than trying to click some little thing with the mouse as the machine is vibrating itself silly. I could ramble on but this is getting long enough.

    enable press macro
    LOADING \55
    IF\55>1 THEN EXIT
    IF\810=1THEN LABEL1 ERROR - QUIT JOG MODE FIRST;12:EXIT
    \666=1
    IF #54=1 THEN \813=1
    IF #54=0 THEN \813=2
    IF \56=1 THEN KNOB 3
    DISPLAY6 \813
    IF\813=1 THENGOTO :ZLATHE
    IF\813=2 THENGOTO :XLATHE
    EXIT
    :ZLATHE
    MACHHOME1 \1:POSITION 1 ;\1
    \1=0
    IF#54=1THEN LABEL1 Z AXIS HANDWHEEL;3
    IF \56=2 THEN COMMAND GA D,D:COMMAND GR -1:EXIT
    IF \56=3 THEN COMMAND GA D,D:COMMAND GR -10:EXIT
    :XLATHE
    MACHHOME2 \1:POSITION 2;\1
    \1=0
    IF#54=0THEN LABEL1 X AXIS HANDWHEEL;3
    IF \56=2 THEN COMMAND GA D,D:COMMAND GR ,.5:EXIT
    IF \56=3 THEN COMMAND GA D,D:COMMAND GR ,5:EXIT

    disable press macro
    LOADING \55
    IF\55>1 THEN EXIT
    KNOB 1 ' Set knob to default off position
    ' This logic is to reset the distance to go position register after the POSITION command has been issued.
    ' No motion will occur
    MACHHOME1 \1:POSITION 1;\1
    MACHHOME2 \1:POSITION 2;\1
    \1=0
    LABEL1 HANDWHEEL DISABLED;3
    \666=0

    inputio file
    LOADING \54
    ' Green and Yellow Buttons
    IF#45=0 THENIF \105=1 THEN \105=0:EXIT
    IF#45=1 THENIF \54>0 THENIF \105=0 THEN \105=1:[CYCLESTART_PRESS]:EXIT
    IF#44=0 THENIF \106=1 THEN \106=0:EXIT
    IF#44=1 THENIF \54>0 THENIF \106=0 THEN \106=1:[FEEDHOLD_PRESS]:EXIT
    ' Emergency Stop
    IF #43=1 THENIF \101=1 THEN \101=0:LABEL1 E-STOP HAS BEEN RESET;3:EXIT
    IF #43=0 THEN \101=1:LABEL1 EMERGENCY STOP;12:ESTOP:EXIT
    IF \13=1 THEN EXIT
    ' Jog Stick on carriage
    IF#52=1 THENIF \107=1 THEN EXIT
    IF#52=1 THENIF \107=0 THEN \107=1:[ARROWLEFT_PRESS]:EXIT
    IF#52=0 THENIF \107=1 THEN \107=0:[JOG_STICK_STOP]:EXIT
    IF#50=1 THENIF \108=1 THEN EXIT
    IF#50=1 THENIF \108=0 THEN \108=1:[ARROWRIGHT_PRESS]:EXIT
    IF#50=0 THENIF \108=1 THEN \108=0:[JOG_STICK_STOP]:EXIT
    IF#51=1 THENIF \109=1 THEN EXIT
    IF#51=1 THENIF \109=0 THEN \109=1:[ARROWDOWN_PRESS]:EXIT
    IF#51=0 THENIF \109=1 THEN \109=0:[JOG_STICK_STOP]:EXIT
    IF#53=1 THENIF \110=1 THEN EXIT
    IF#53=1 THENIF \110=0 THEN \110=1:[ARROWUP_PRESS]:EXIT
    IF#53=0 THENIF \110=1 THEN \110=0:[JOG_STICK_STOP]:EXIT
    ' On/Off Key
    IF#42=1 THENIF \100=1 THEN EXIT
    IF#42=1 THENIF \100=0 THEN \100=1:LABEL1 INTERFACE SUSPENDED;14:SUSPEND GUI:EXIT
    IF#42=0 THENIF \100=1 THEN \100=0:LABEL1 INTERFACE RESUMED;3:RESUME:EXIT
    ' X axis limit switch
    IF#49=1 THENIF \102=1 THEN EXIT
    IF#49=1 THENIF \102=0 THEN \102=1:LABEL1 X AXIS OVERTRAVEL;14:STOP:EXIT
    IF#49=0 THENIF \102=1 THEN \102=0:LABEL1 X AXIS RESUME;3:EXIT
    ' Z axis limit switch
    IF#48=1 THENIF \103=1 THEN EXIT
    IF#48=1 THENIF \103=0 THEN \103=1:LABEL1 Z AXIS OVERTRAVEL;14:STOP:EXIT
    IF#48=0 THENIF \103=1 THEN \103=0:LABEL1 Z AXIS RESUME;3:EXIT
    ' Spindle jog
    IF#47=1 THENIF \104=1 THEN EXIT
    IF#47=1 THENIF \104=0 THENIF \9=0 THEN \104=1:#56=0:#61=1:LABEL1 SPINDLE JOG;14:EXIT
    IF#47=0 THENIF \104=1 THEN \104=0:#61=0:#56=1:LABEL1 SPINDLE JOG OFF;3:EXIT
    ' Axis Selector
    IF\666=0 THENIF \810=0 THEN GOTO :FORK
    IF\666=1 THENIF #54=1 THEN WAITUNTIL STOP:[ENABLE_PRESS]:EXIT
    IF\666=1 THENIF #54=0 THEN WAITUNTIL STOP:[ENABLE_PRESS]:EXIT
    IF\810=1 THENIF #54=0 THEN [JOGPLUS_PRESS]:EXIT
    IF\810=1 THENIF #54=1 THEN [JOGMINUS_PRESS]:EXIT
    ' Feedrate Override on Carriage
    :FORK
    IF#41=1 THEN \73=100:EXIT
    IF#40=1 THEN \73=90:EXIT
    IF#39=1 THEN \73=80:EXIT
    IF#38=1 THEN \73=70:EXIT
    IF#37=1 THEN \73=60:EXIT
    IF#34=1 THEN \73=50:EXIT
    IF#32=1 THEN \73=40:EXIT
    IF#33=1 THEN \73=30:EXIT
    IF#46=1 THEN \73=20:EXIT
    IF#35=1 THEN \73=10:EXIT
    IF#41=0 THENIF #40=0 THENIF #39=0 THENIF #38=0 THENIF #37=0 THENIF #34=0 THENIF #32=0 THENIF #33=0 THENIF #46=0 THENIF #35=0 THEN \73=0:EXIT

  15. #15
    Join Date
    Mar 2004
    Posts
    1543
    Thanks for sharing. I like that idea of handwheel and jog buttons on the carriage for a big machine. I think I'll do this on my plasma table.

    You know I'm an anal engineer. I enjoyed reading your code and seeing how someone else solves a problem. The simple ideas are best. Using LABEL1 like that to message the operator is great.

    Here's proof that I'm really anal. I know a better way to get more feed percentages with less inputs. Takes a bit a trick wiring on your rotary switch but then you can use base 2 or binary to get 8 levels with 3 inputs; 16 levels with 4 inputs; 32 levels with 5 inputs. I like rotary switches wired like this for feed, speed, rapid %, handwheel axis, etc.

    Here's a code snip for 8 options with 3 inputs:
    \830=1
    IF#74=1THEN\830={\830+1}
    IF#73=1THEN\830={\830+2}
    IF#72=1THEN\830={\830+4}
    IF \830=1 THEN EXIT ' all bits go to 0 between modes

    Karl

  16. #16
    Join Date
    Feb 2008
    Posts
    482
    glad im using mach 3/ galil where all that works off the screen with no code writing!
    interesting post to read through though
    so much to learn, so much to pass on.

  17. #17
    Join Date
    Aug 2009
    Posts
    9
    Quote Originally Posted by battwell View Post
    glad im using mach 3/ galil where all that works off the screen with no code writing!
    interesting post to read through though
    For us I am sure glad that my son ditched mach3. The code we did write in in Camsoft was easy compared to the VB code in mach3.

  18. #18
    Join Date
    Mar 2004
    Posts
    1543
    Quote Originally Posted by ontheroad View Post
    For us I am sure glad that my son ditched mach3. The code we did write in in Camsoft was easy compared to the VB code in mach3.
    You're both right. For a small hobby machine you can't beat Mach. its capabilties continue to improve.

    For an industrial quality machine control you can't beat Camsoft. Its capabilities are light years more than Mach.

    So, it just depends on your needs.

    Karl

  19. #19
    Join Date
    Feb 2008
    Posts
    482
    ontheroad. just read your other posts. you read but you dont write?
    did you write the camsoft manuals? :-))))
    so much to learn, so much to pass on.

  20. #20
    Join Date
    Feb 2008
    Posts
    482

    correct me if im wrong

    what can camsoft do that mach cant?
    i know that mach is limited to 64 extra i/o without writing extra code or using external plugins
    but. things like mpg ,jogging etc everything seems to work really well with no hiccups.
    even better now they have mach well interfaced with galil controllers. ive been testing one of these with mach for a major refit of a huge router and all seems great so far! and i havnt had to write any code apart from copying the original tool change fixed cycle and simplifying it to work with mach as a macro.

    with things like torch height control for plasma, tangental control for water jet, knife engraving etc already there ready to switch on without writing code.
    so my original question what can camsoft do that mach cant?:argue:
    so much to learn, so much to pass on.

Page 1 of 2 12

Similar Threads

  1. Jerky motion
    By Matty Zee in forum G-REX
    Replies: 9
    Last Post: 03-28-2010, 08:35 AM
  2. Jerky CNC Motion
    By Cartierusm in forum DIY CNC Router Table Machines
    Replies: 29
    Last Post: 03-31-2009, 12:48 AM
  3. Jerky motion with CV on (solution)
    By Rhodan in forum Mach Software (ArtSoft software)
    Replies: 6
    Last Post: 01-18-2009, 05:05 AM
  4. 3D Milling Motion Jerky - Now Solved.
    By Eclipze in forum Mach Mill
    Replies: 4
    Last Post: 01-17-2009, 11:07 PM
  5. Vertical Gantry Motion Management
    By harryn in forum Linear and Rotary Motion
    Replies: 3
    Last Post: 06-24-2007, 09:21 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •