586,060 active members*
3,506 visitors online*
Register for free
Login
IndustryArena Forum > CNC Electronics > Servo Motors / Drives > tuning dual servos on CNC router
Results 1 to 18 of 18
  1. #1
    Join Date
    Mar 2010
    Posts
    275

    tuning dual servos on CNC router

    I'm just learning about servos, and I think I've got some of the basic concepts of servo tuning. I understand that what's usually done is to command a move and compare the commanded position to the actual position reported by the encoder, and that this is typically done with the motor installed and connected to it's intended load, so that the inertia and resonance of the whole system can be tuned.

    What's puzzling me is how one goes about tuning a pair of servos that need to work in tandem, which is what I've got on the Multicam router I recently bought.

    I'm getting an "excessive following error" fault occasionally on one of the drives, so I'm wondering if they need tuning.

    Thanks for any help.

    -Jim Hart

  2. #2
    Join Date
    Dec 2003
    Posts
    24221
    The tuned loop for servo systems is referred to as the PID loop, a search will bring you much info if you want to get more info on it, also a valuable resource is the instructional videos on the Galil Motion site if you want to learn about servo tuning.
    Generally for two servo's to be used on the same axis requires the gearing feature of the controller, one axis (slave) is geared off the primary axis (master) encoder, Multicam mention they use a stand alone RISC/DSP controller which may imply they use closed loop gearing function in order to synchronize the dual axis.
    Excess following error could well mean tuning, or alternatively a binding on the slave side, if this error is on the dual axis
    Al.
    CNC, Mechatronics Integration and Custom Machine Design

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

  3. #3
    Join Date
    Mar 2010
    Posts
    275
    Thanks for the quick reply, Al!

    It sounds like you're saying that the synchronization of the 2 motors takes place in the machine controller, and the general term for this is "gearing".

    Unfortunately, the controller for this machine (made by Extratech) is kind of a Black Box, they're an OEM vendor who won't talk at all to an end user. Getting support from Multicam has been kind of an arduous process, where you leave a message and a tech gets back to you in several hours, or maybe not at all.

    My Kingdom for a set of ladder diagrams! At least I have a copy of Ultramaster, so I can get detailed fault descriptions. There may be some mechanical binding, not sure how to check and adjust the pinions.

    Anyway, in the dual motor setups you've worked on, is tuning done on the motors individually or simultaneously? Would you use a looping g-code program to command a long sequence of plus and minus moves, then tune one drive at a time?

    thanks,
    -Jim Hart

  4. #4
    Join Date
    Dec 2003
    Posts
    24221
    In a typical CNC machine, the servo loop and tuning is invisible to the part programming.
    In a synchronized geared situation, both drives should be tuned for optimum, often the software is either capable of self tuning through a soft ware program, or a series of moves are performed whilst the PID is tuned for optimum performance to achieve as low as possible following error on each axis.
    I would expect anyone designing a machine of this nature to have a maintenance or diagnostic tuning feature available.
    If you have an axis that is difficult to achieve a reasonable result, then I would look at mechanical problems for the solution.
    Although rare, I have run across proprietary designs in the past that have been averse to offering anything in the way of technical detail.
    Al.
    CNC, Mechatronics Integration and Custom Machine Design

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

  5. #5
    Join Date
    Mar 2010
    Posts
    275
    Ultramaster has an autotune option, although the help file recommends using the autotune as a jumping off point for manual tuning (at least that's the way I read it).

    I've sucessfully used the manual tune option to set up a continuous oscillation on the y-axis. The software has a built-in o-scope, and I've been able to compare commanded speed and position with what the encoder says. Haven't been bold enough to change any PID or K-values, but I'm starting to get a bit of a grip on it conceptually.

    Still can't grasp how one is supposed to tune the pair of x-axis motors. I can look at the scope while a program is running and compare commanded and encoder values, but then the program has to be stopped and the drive disabled to adjust the PID and K's.

    Interestingly, the problem only happens during an extended slew move at full rapid, such as when parking the gantry high or low. Short slew moves, all normal cutting speeds, and rapid jog (about 75% of full rapid) all work just fine.

  6. #6
    Join Date
    Dec 2003
    Posts
    24221
    It could be that on extended moves the following error gradually increases and this could cause the slave side to skew or yaw and this will aggravate the problem due to friction.
    On the cards I use (Galil) they have an option to look at the following error as during a move and the ability to change the PID in between moves.
    Record the PID and experiment, you could always plug the original back in.
    If you look at one of the Galil manuals, near the front of each manual is tuning the PID loop, the general sequence applies to other systems also, not just to Galil.
    Al.
    Al.
    CNC, Mechatronics Integration and Custom Machine Design

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

  7. #7
    Join Date
    Mar 2010
    Posts
    275

    still working on this

    It looks like I'm getting some overshoot on the X axis, an shown by the ripples in the corner. Kd is set at zero. I'm wondering if setting a positive value for Kd would increase damping and reduce overshoot. The screen shot is from Ultramaster.

    -Jim Hart
    Attached Thumbnails Attached Thumbnails x axis overshoot.jpg   XA tuning normal operation position.png  
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  8. #8
    Join Date
    Mar 2010
    Posts
    275

    weird wave

    I wrote a little g-code program which moves the X-axis back and forth over a 3 inch span, then looked at the built in oscilloscope in Ultramaster and saw this rather weird waveform. Things would be so much easier if I could just send the same square wave to both motors.

    -Jim Hart
    Attached Thumbnails Attached Thumbnails X POS CMND.png  
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  9. #9
    Join Date
    Nov 2004
    Posts
    436
    KD=0 is wrong, unless you are in velocity mode. What does the other gantry servo drive tuning set to?

    Rob

  10. #10
    Join Date
    Jun 2010
    Posts
    463

    Tuning dual servos on CNC router

    Jim,
    I thing you guys might be over thinking this:

    Have you looked at all of the mechanics of the servo assemblies
    1. Pinions do they look like mountain peaks or devils tower. I should look like Devils Tower.
    2. How does your rack look. It should have the same look
    3. If you drop your servo and spin the pinion by hand, back and forth are you feeling any backlash.
    4. If you feel backlash, pull apart the motor from the transmission, I think you have a small pinion is connected to the servo shaft, but then again Multicam had various versions, check that little pinion it could be worn out.
    5. If you still haven't found anything:
    1.Move to the front of the table and set a home point and drop one of the motors.
    2. Press Enter to get into the Menu and move cursor until you get to Move, Enter
    3. Put a X value of say 36" and don't work about Y or Z.
    4. Measure from the front of the rail to say the front of the bearing car and repeat the same process for the other side. Check those measurements.
    5. At that point switch the motors side, XA for XB and XB for XA.

    If one side is short and once your switch side, that shortness shows up on the other side, then it is something with the motor or gearbox. If you get the same measurement, have you squared the gantry.

    Try this and let me know...

    Chris..

  11. #11
    Join Date
    Mar 2010
    Posts
    275
    MCP, yes I've been through the mechanicals. The pinions and couplings are tight, gearboxes are like new, and the rack doesn't look anything like that machine in South Africa that's been used to run composites all day! The X-axis overshoot is quite observable while cutting, it's consistent, and it happens in both directions.

    Spoiledbrat, the other option is the position loop. The servo tunung docs at Kollmorgen say to tune the fastest loops first, which is why I'm starting with the velocity loop. I've now completed a full set of screenshots of all the original settings, so now I'm set to start tweaking things.

    I agree, it's odd that D is greyed out. Evidently the velocity loop is PI, but the position loop is PID.

    Here's a shot of the position tuning screen, I haven't changed Kd, it was set at zero.

    I've been following your struggle with your Galil controller.

    -Jim Hart

    -Jim Hart

    Quote Originally Posted by spoiledbrat View Post
    KD=0 is wrong, unless you are in velocity mode. What does the other gantry servo drive tuning set to?

    Rob
    Attached Thumbnails Attached Thumbnails XA tuning normal operation position.png  
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  12. #12
    Join Date
    Jun 2010
    Posts
    463

    Tuning dual servos on CNC router

    Can you give me a pic of your servo and the amp..... might have the old programs for that drive....

  13. #13
    Join Date
    Mar 2010
    Posts
    275
    The drives Electro-Craft Bru-series, and I've been plugging a serial cable into them so I can use Ultramaster. That's how I got the screen shots. Is that the software you mean, or are you thinking of something else?

    -Jim Hart
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  14. #14
    Join Date
    Jun 2010
    Posts
    463

    Tuning dual servos on CNC router

    No I have the actual drive parameters...that Multicam loads into those drives...

    Which machine do you have again....and send me a regular e-mail address...so I can send you the file...

  15. #15
    Join Date
    Mar 2010
    Posts
    275

    a days work

    Okay, I worked all day on it, and this is the best I could do. Quarter inch bit. It seems like the motors don't have quite enough oomph to damp that big, heavy gantry.

    Is this as good as it gets for a Multicam MG?

    -Jim Hart
    Attached Thumbnails Attached Thumbnails x axis overshoot 004.jpg  
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  16. #16
    Join Date
    Sep 2010
    Posts
    1765
    another 2cents (prob all its worth)

    Since tuning is so dependent on the load as you realize, tuning one at a time likely is not a good idea for you. We tune 1 at a time as basic starting point to get in the ballpark, then tune on the machine together. since ur machine runs already, I would strongly suggest no tuning individually but together instead.

    How we tune dual motor axes is to be sure to make same change to both motor drives/control at the same time. so first, check and make sure both your drives/control have same tuning set; if different, it will try to skew and cause following error and other bad things. so assuming you got same parameters in both, yes, you can program back/forth motion and use whatever software you have available to watch command vs feedback. then go make a change to ONE PARAMETER ONLY - and make the change on both axes then try again. Improved? go further on next step? worse? go back and go other way?

    do this for each parameter that might effect what you are tuning and you should be ok. keep ur hand on the estop button too. good luck!

  17. #17
    Join Date
    Mar 2010
    Posts
    275
    Thanks, Mike, that's pretty much what I've been doing. It might be easier if I had a way to feed a the same square wave to both drives simultaneously. Right now they are set up for step/dir, so I'd have to learn a bit more to figure out how to connect a function generator.

    My testing has been with a quarter inch bit, I'm thinking I'm seeing some snapback from bit flex. My next move will likely be to test cut with a half inch bit to reduce the bit flex component.

    -Jim Hart
    My main machine: Multicam MG series (MG101) with original Extratech H971 controller, Minarik servo motors, Electro-Craft BRU-series drives, 4KW Colombo. Let's talk Multicam!

  18. #18

    Re: tuning dual servos on CNC router

    I know this is an old post, but my experience with tuning CNC servos has been that the movements you are seeing at the corners are almost always caused by a mechanical issue. Especially if it is on a machine that once worked correctly. A servo shouldn't go out of tune (at least not modern digital servos.) I used to work on machines from one particular company, and these large heavy built machines with Fanuc controls and servos, would often exhibit the same behavior on their rack and pinion dual motor gantry. It was usually due to a worn bearing or the shaft the bearing rides on for either the pinion shaft or the intermediate transmission shaft (double belt gear reduction, motor to belt to pulleys on a shaft, to belt to pinion shaft,) Any slight amount of looseness in any of those bearings would cause the exact same kind of wobble you are seeing there. Slowing the machine and softening the servo tune would help to reduce the wobble, but at the expense of reduced performance. I have also seen the exact same type of wobble on a machine with a worn out ball screw. The screw would actually show no backlash under normal backlash testing conditions with a light load and a dial indicator, but under load would have a couple hundredths of an inch backlash, so under dynamic conditions such as under acceleration the machine would wobble like at your corners. You have to look carefully for these sorts of mechanical problems, often they will hide and the play may only be noticeable under load and a tiny amount is all it takes to cause big tool marks like your photos.

Similar Threads

  1. Tuning Viper 200 with Large Servos
    By NICKKINSMAN in forum Viper Servo drives
    Replies: 11
    Last Post: 05-16-2014, 07:51 PM
  2. Dual AC Servo Tuning
    By Alan XR8 in forum CNC Machine Related Electronics
    Replies: 4
    Last Post: 03-07-2013, 04:05 AM
  3. I can't tuning my AC Servos
    By boebi88 in forum CNC Machine Related Electronics
    Replies: 11
    Last Post: 03-05-2013, 12:23 AM
  4. Tuning Servos
    By Snipes44 in forum Dynomotion/Kflop/Kanalog
    Replies: 3
    Last Post: 09-18-2012, 05:40 AM
  5. Tuning Servos with out an O-scope?
    By Bird_E in forum Gecko Drives
    Replies: 2
    Last Post: 02-23-2005, 07:16 PM

Tags for this Thread

Posting Permissions

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