587,760 active members*
2,740 visitors online*
Register for free
Login
Page 1 of 2 12
Results 1 to 20 of 38
  1. #1
    Join Date
    Mar 2004
    Posts
    500

    How do Servo Motors Work?

    Hi all,
    I have been researching on servo motors and am a bit confused. The motor is actually just a normal DC Motor, but it has all of the circuitry and the encoder on the back to control it. How does the motor stop? Is there power supplied to all of the coils? Why do servos need step and direction signals aswell, or don't they? Also, can you program servo's by moving the motors, in turn moving the encoders in the direction or path that you want with your hand. The computer picks up all of the DRO's and can repeat that? Is that possible?
    I'm a bit confused.
    Thanks for the help everyone.
    I really appreciate it.

  2. #2
    Join Date
    Dec 2003
    Posts
    24220
    If you are just talking DC servo's, start with a motor and an amplifier, without the motion control element,
    A DC servo does not in and of itself need an encoder to operate, typically in the past DC servo's had a dc tachometer back to the amplifier for velocity control feedback. The amplifier in most cases requires a +- 10vdc analogue signal to control the velocity, If you search the web on basic DC motor operation, you will find the explanation of the relationship between the armature windings and magnetic field and how the armature windings are fed or commutated.
    The encoder is only required when you start using a motion controller and it requires to know exactly what the motor is doing and control it via the +- 10v signal. There are various types of amplifier ranging from the older SCR drives to the later drives which used Pulse Width Modulation, but the motor itself did not change that much.
    Modern drives, operating under CNC control, no longer use the velocity loop and tachometer, but operate in the torque or current mode, so the encoder itself is all that is needed for feedback.
    Like I said there should be a whole raft of web based information on DC servo's that will give you an in depth information.
    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 2003
    Posts
    4826
    edit: oops, I see Al beat me.

    Oh well, I'll just leave what I wrote as kind of a layman's interpretation.

    Well, actually the motor is completely dumb: it will run whenever a current is flowing. The "smarts" are in the controller which compares the current encoder position to the commanded position. When there is a difference, the controller outputs an error signal, which is interpreted by the servo amplifier as a command to supply the current in a particular direction. The motor moves, dragging the encoder disk along for the ride, and as the controller monitors the position according to the encoder it detects "ahhah, we are getting closer to position so let's decrease the error signal in proportion". So it does, and then the amplifier reduces it current and voltage output and the motor slows down. When the encoder position coincides with the commanded position, the controller says "we're there" and reduces the error signal to zero. The amplifier then stops outputting a current and the motor has to stop.

    That's just a simplified description, but there are not really "steps" to a servo the way there are steps to a stepper. The "steps" to command a servo motor are not related to its construction but rather to the number of lines on the encoder.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  4. #4
    Join Date
    Mar 2004
    Posts
    500
    So there is no actuall brake in the servo system? How does the holding torque work then?
    Thank you very much for the help.
    I really appreciate it.

  5. #5
    Join Date
    Mar 2004
    Posts
    500
    Do servo controllers include the amplifier, like the G320 Gecko Drive? Or does this drive work with the other torque and current mode?
    Thank you ver much for the help.
    I really appreciate it.

  6. #6
    Join Date
    Mar 2003
    Posts
    4826
    No, there is no mechanical brake in the servo system.

    This is part of the reason that tuning the servos is very important. Tuning is actually just a way of calibrating the controller so that it knows how to accel/decel the motor, by supplying a current that is exactly right for all facets of movement, including coming to a perfect stop without any overshoot of position. If any kind of force attempts to turn the motor when it is stopped, this immediately "awakens" a response in the controller which immediately begins to supply a current that will restore the motor to the stopped position, until such time as a command is received for the motor to change position.

    No, the servo controller is generally not in the amplifier (for cnc purposes), in case it needs to coordinate motion in more than one axis at a time.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  7. #7
    Join Date
    Mar 2004
    Posts
    500
    So, servos do not just brake and stop, they are in a stop position with no current = no turning, when turned, the encoder signals to the amplifier that the shaft turned and the amplifier send a signal that says go back to the original position? So doesn't this mean less +- accuracy? Also, so you have to get a G320 Driver, and then get an amplifier as well for servo use?
    Thank you very much for the help.
    I really appreciate it.
    Also, would supplying current to all of the coils in the motor also act as a brake in a servo? I know now that this is not how it is done, but is this possible?

  8. #8
    Join Date
    Dec 2003
    Posts
    24220
    Quote Originally Posted by Sanghera
    Also, would supplying current to all of the coils in the motor also act as a brake in a servo? I know now that this is not how it is done, but is this possible?
    With a DC servo you can only supply power to one set of windings (the commutated pair).
    With any servo that uses permanent magnets it would be possible to brake if you remove the power to the motor and short out the windings, this used to be a practice years ago for DC motor braking. It is not practical for modern servo systems. Although there are various ways of dynamic braking used in VFD etc.
    Al
    CNC, Mechatronics Integration and Custom Machine Design

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

  9. #9
    Join Date
    Mar 2003
    Posts
    4826
    Quote Originally Posted by Sanghera
    So, servos do not just brake and stop, they are in a stop position with no current = no turning, when turned, the encoder signals to the amplifier that the shaft turned and the amplifier send a signal that says go back to the original position? So doesn't this mean less +- accuracy? Also, so you have to get a G320 Driver, and then get an amplifier as well for servo use?
    Thank you very much for the help.
    I really appreciate it.
    Also, would supplying current to all of the coils in the motor also act as a brake in a servo? I know now that this is not how it is done, but is this possible?
    I think the G320 is the amplifier. Driver and amplifier are the same thing. Your PC is the controller.

    Does accuracy suffer? No, not if the motor is tuned correctly. Some of the tuning parameters have to do with the speed of response of the controller to error conditions. Although the holding current might be close to zero, you'd never know the motor was at rest, because if you torque on a handwheel or something, with the servo on, it feels just like the "brakes are on". Its quite amazing how fast the feedback system works, really.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  10. #10
    Join Date
    Dec 2003
    Posts
    383
    How do servos work?...


    They work very nicely! (Sorry, couldn't resist!)

    "braking"... when commanded to a static position, any deviation from that position will trigger the amplifier to provide corrective current. The feedback is such that if you power up a system, and gently attempt to turn the coupling, the servo will aggressively fight you. Even small motors have terrific holding power in this manner. The servo's tuning has a powerful influence here. If the parameters are off a bit, the servo may hum when static. The humming may throw the shaft off a few encoder ticks; the amplifier says "whoa go back" and applies current. The motor shaft overshoots, the current then reverses in an attempt to correct, and then the servo goes beserk as the hum becomes a pounding vibration, moving heavy tools off the bench and scaring the operator.

    This didn't really happen to me several times; I've just heard about it!

    These guys are really smart on servos, they'll help you!

  11. #11
    Join Date
    Mar 2004
    Posts
    500
    That's amazing how fast it works. Does the shaft feel like it has some extremely minute play in it when you try to turn it? How does the motor have such high oz-in values in holding torque? I would think that the amplifier doesn't want to send too much current to the motor when it is been "tugged" on because it may overshoot, causing inacuracies. But if it doesn't send enough, then the motor may just lose it's position too easily. This must be extremely advanced physics to calculate the exact amound of current needed to slowly stop the motor taking into consideration the velocity the speed. I don't know if I'm understaning this right. Does the driver acually slowly turn off the current to the motor at just the right amount as to stop it in a specific spot? What about rack and pinion, if something is constantly torqing the motor as it is trying to position, what make the motor keep it's constant speed even if it may be turned and pushed? Woah that's a lot of question.
    Thank you all very much for the help.
    I really appreciate it.

  12. #12
    Join Date
    Mar 2003
    Posts
    4826
    You're getting in deeper all the time

    There are three different factors to set when tuning the servo motor: its called a PID algorithm, or something like that. This is an acronym for Proportional, Integral, and Derivative gain. You might try googling PID loop and check out some of the articles that come up.

    By carefully adjusting each of these three parameters, you can observe the effect that this has on the controller's control of the servo motor.

    The "I" and "D" factors control the resetting and damping of the controller servo loop. It helps to "calm down" the harshest responses that are technically possible, as the controller monitors the encoder position and tries to make it obey the "prime directive", which is always to have a difference of zero between the commanded and actual encoder position.

    Imagine an example: the encoder is only one count off of commanded position: should the controller command a huge current to move the motor that last count, or should it be a small current? It depends on the load. That's why the tuning has to be done in real life, on the real load, so that it can be judged when the controller response is adequately proportioned. This keeps the motor from getting into a "buzzy state" where it continuously overshoots both directions from zero, because the applied minimum correction is too large.

    Its hard to explain, until you see what happens as you play with the values on a real circuit. Its quite easy to judge when its right, just by looking at it....it takes a bit more work and measurements while the machine move, to prove that it is correctly tuned.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  13. #13
    Join Date
    Dec 2003
    Posts
    383
    I am still struggling with tuning, but am getting better at it. There seems to be a tradeoff between acceptable position error, and ill behaviour from a too-aggressive system.

    Some systems have auto-tuning utilities. My own (Logosol) has one, but I've found that they almost always require some hand-tweaking to the PID values. Auto-tuned, and the servos buzz a bit too much, growl during rapids, and generally make me cringe at times, as instead of sweet music during interpolated moves, they grumble and grind.

    What a ridiculous description! Lots of audio terms, but so far for me (a beginner with servos) it seems the ear does have a lot to say. Suffice it to say that rather than simply minimizing overall position error, one must make some compromises. A set of PID values which delivers the tightest performance at 80 ipm will be different than one which executes its test moves at 6 ipm. So one must find a good, overall set of values for all the machining one is likely to execute, understanding that the average position error may go from 2 servo counts to 7. You'll also feel better when you realize that 5 counts on a 1000 line quadrature encoder with a 5TPI direct drive system is roughly 0.00025", and also that the servo is constantly taking this closer to 0. It really is amazing stuff when you think about it. Look at 0.001" on a micrometer, then divide this by 5, and that is the error as the system rips along at 100 ipm!

  14. #14
    Join Date
    Mar 2003
    Posts
    4826
    I agree with much of what you say, Swede. A bit of manual tweaking and averaging seems to always be required.

    Its interesting that the "black box" cnc's now use very high encoder resolutions like 25K or 100K encoders. I suppose this gives much better control during motion, because I suppose the feedback is that much more useful, being "finer grained".

    On a Galil motion control card, the servo update rate is on the order of 1 millisecond, so take whatever ipm, let's say 100ipm, and divide by 1000, means that basically the machine is "coasting" for .1" between position updates, assuming that everything is okay. So in the strictest sense, the controller does not have really tight control of the machine as one might imagine. Hence the need for higher speed motion controls and the need to "slow down on the corners" to ensure that the path coincides with the theoretical path.

    I guess it is highly repeatable though, so we live with it.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  15. #15
    Join Date
    Oct 2003
    Posts
    399
    Quote Originally Posted by Sanghera
    *snip* How does the motor have such high oz-in values in holding torque?
    The holding torque will be the same as the motor's maximum torque. Turn the shaft harder and the controller will trip an excessive following or overcurrent error.

    Quote Originally Posted by Sanghera
    *snip* I would think that the amplifier doesn't want to send too much current to the motor when it is been "tugged" on because it may overshoot, causing inacuracies. But if it doesn't send enough, then the motor may just lose it's position too easily. This must be extremely advanced physics to calculate the exact amound of current needed to slowly stop the motor taking into consideration the velocity the speed.
    This is called control theory (and I guess in our case, practice ). Luckily for me I have the advantage of reading control theory as part of my university studies. I've managed to get through basic control theory, and right now I'm at the follow-up course advanced control theory. There's also "modelling of dynamic systems", "nonlinear control", "hybrid and embedded control systems", a project course... and probably lots of other courses that are more or less related to control. One could spend years studying it, and it probably takes a lifetime to master...

    But it's fun!

    Arvid

  16. #16
    Join Date
    Oct 2003
    Posts
    399
    Quote Originally Posted by HuFlungDung
    *snip* Its interesting that the "black box" cnc's now use very high encoder resolutions like 25K or 100K encoders. I suppose this gives much better control during motion, because I suppose the feedback is that much more useful, being "finer grained".
    Encoder resolution is something I have really come to appreciate while building my controller card. If the max tolerable following error corresponds to 1000 encoder counts, then the error has ~10 bits of resolution. If it corresponds to 100 encoder counts, then only 6-7 bits of error resolution is available.

    It gets even more important if the encoder is also used as a speed sensor. To get 12 bit resolution of speed simply by counting encoder transitions between servo loop updates, a 273K encoder is needed! (10 kHz update rate, max motor speed 4500 RPM). Today's servo systems seems to use sin-cos encoders, where the drive can see extremely high encoder resolutions (1 million counts per rev or so).

    Quote Originally Posted by HuFlungDung
    On a Galil motion control card, the servo update rate is on the order of 1 millisecond, so take whatever ipm, let's say 100ipm, and divide by 1000, means that basically the machine is "coasting" for .1" between position updates, assuming that everything is okay. So in the strictest sense, the controller does not have really tight control of the machine as one might imagine. Hence the need for higher speed motion controls and the need to "slow down on the corners" to ensure that the path coincides with the theoretical path.
    This is also due to physical constraints. Even with an optimal, perfectly tuned, continuous time controller, there are limits like motor torque. Even such an elementary thing as the reference voltage to the drive cannot get infinitely high - which would be needed to take a 90 degree perfect corner without slowing down. I would guess this (physics), more than servo loop rates, is the big hindrance unless you're really into the high end of things?

    Arvid

  17. #17
    Join Date
    Dec 2004
    Posts
    524
    Quote Originally Posted by HuFlungDung
    I agree with much of what you say, Swede. A bit of manual tweaking and averaging seems to always be required.

    Its interesting that the "black box" cnc's now use very high encoder resolutions like 25K or 100K encoders. I suppose this gives much better control during motion, because I suppose the feedback is that much more useful, being "finer grained".

    On a Galil motion control card, the servo update rate is on the order of 1 millisecond, so take whatever ipm, let's say 100ipm, and divide by 1000, means that basically the machine is "coasting" for .1" between position updates, assuming that everything is okay. So in the strictest sense, the controller does not have really tight control of the machine as one might imagine. Hence the need for higher speed motion controls and the need to "slow down on the corners" to ensure that the path coincides with the theoretical path.

    I guess it is highly repeatable though, so we live with it.

    Ah, I thought that I was the only one that did that. You mixed inches per minute and samples per second. 100 ipm is about 2 inches per second. So, the "coast" is only about 2 mils. And because the velocity is proportional to the error, when you get close to the target position, the velocity should be way less than 100 ipm (one would think).

    Ken
    Kenneth Lerman
    55 Main Street
    Newtown, CT 06470

  18. #18
    Join Date
    Mar 2003
    Posts
    4826
    Right you are about ipm, Ken. Whew, that sounds a little better, doesn't it.

    Actually, the Galil does not have to issue a stop when its been fed a continuous chain of vectors, so there is not necessarily any stop between movements. But the error is lower than I guesstimated, for sure.
    First you get good, then you get fast. Then grouchiness sets in.

    (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)

  19. #19
    Join Date
    Aug 2004
    Posts
    16
    You guys really deserve recognition for making people understand in layman terms the meaning of servo system. And that includes me. Thanks.

  20. #20
    Join Date
    Mar 2004
    Posts
    500
    This is soo much information!!!! Thank you all. So, Huflungdung you said:

    "Imagine an example: the encoder is only one count off of commanded position: should the controller command a huge current to move the motor that last count, or should it be a small current? It depends on the load. That's why the tuning has to be done in real life, on the real load, so that it can be judged when the controller response is adequately proportioned. This keeps the motor from getting into a "buzzy state" where it continuously overshoots both directions from zero, because the applied minimum correction is too large."

    How can you tune in real life with real load, when all loads may be different. One time it may take so many pounds of force, the next so many grams of force, how does it know how much force is being applied so that it can send the right amount of current to counteract the force quickly enough so that there is no play in the shaft or overshooting?
    Thanks for the layman's version of how a servo motor works, it really helps.
    I really appreciate it. :wee:

Page 1 of 2 12

Similar Threads

  1. Using surplus servo motors as spindle drive
    By Swede in forum Servo Motors / Drives
    Replies: 11
    Last Post: 03-16-2008, 02:05 PM
  2. DC motors worthy of being a servo?
    By WoodSnarfer in forum Servo Motors / Drives
    Replies: 12
    Last Post: 07-22-2006, 07:25 AM
  3. German DC servo motor, will these work
    By Bryscnc in forum Servo Motors / Drives
    Replies: 7
    Last Post: 01-29-2005, 09:18 PM
  4. 3 servo motors - What are the actual specs?
    By Bloy2004 in forum Servo Motors / Drives
    Replies: 10
    Last Post: 06-10-2004, 07:36 PM
  5. New Contest WIN SERVO MOTORS!!!
    By cncadmin in forum Community Club House
    Replies: 83
    Last Post: 07-18-2003, 08:16 AM

Posting Permissions

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