Jump to content

Theory of the operation of a servo


Recommended Posts

Advert


Posted by Kenneth Fereday on 17/01/2020 13:58:51:

Does that mean that the analogue and digital servos are interchangeable?

Yes, in principle. The main practical differences are:

  • An analogue servo "pushes" with less force the nearer it gets to the target point, whereas a digital continue to push with high torque even if it is only fractionally displaced from target position. This results in higher holding power for digital servos.
  • Digital servos tend to draw more current for the reason above - any bind on the linkage or load on the surface causes the servo to drive and draw current, particularly if the deadband is very small. However it's not an absolute rule; the biggest influencer on servo current draw from my testing is actually speed, not size, torque rating or whether it is digital or not.

The best place to use a digital is where you need strong holding power or very accurate centring (though just because a servo is digital doesn't mean it necessarily centres well, particularly in the cheaper models). They are not IMO required in average sized sports models, though they increasingly appear there anyway as they often don't cost any more these days.

Edited By MattyB on 17/01/2020 15:11:15

Link to comment
Share on other sites

I hate the terms "analogue" and "digital" when referring to our servos, as neither term is strictly accurate.

Early proportional RC systems were truly analogue, and supplied a varying voltage from the receiver to the servo. Those early servos were REAL analogue, and bear no relation to anything currently in use.

Modern systems became known as "digital" because the signal was either off or on (0 or 1), however, the varying pulse width is (sort of) analogue.

The main difference between between a standard ( "analogue" ) servo and a "digital" one is that the "digital" one uses speed controller technology to drive the motor. This makes it relatively independent of the frame rate of the transmitter. The amplifier in a standard servo will only work correctly if the frame rate of the pulses it receives are within a fairly narrow window, in the 50 - 60 Hz region. Both work on a variable pulse width control signal.

The original (truly) analogue RC systems were much less sensitive to interference than the "digital" systems that succeeded them. However, they suffered from fairly slow response times, neutral drift and it was very difficult to make a system with more than four channels.

Even four channels was a challenge, and Kraft spent years trying to produce an analogue system, before giving up and going "digital".

"Digital" systems weren't so good on interference rejection, but offered better response times, better centering, little or no drift, and many channels. They were also cheaper to produce, as all the circuits for the different channels was the same. You only had to design one channel and then you could "daisy chain" the rest.

So PLEASE can we be careful when referring to analogue and digital servos, as neither term is really correct!

[Rant mode /off] devil

--

Pete

 

Edited By Peter Christy on 17/01/2020 16:08:21

Link to comment
Share on other sites

P.S. Should have added (for the benefit of OP):

A "digital" servo will work with either a low or high frame rate system. An "analogue" servo will only work on a low (standard) frame rate, and may be damaged if used at a high frame rate.

All 35 MHz systems are standard frame rate, and most 2.4GHz systems put out a standard frame rate unless specifically instructed otherwise. Some gyros output a high frame rate.

--

Pete

Link to comment
Share on other sites

Peter is I think, referring to mid 60s servos. They used to have a pencil lead in the servo. And a wiper, following the arms position, measured the resistance of the pencil lead, a Wheatstone bridge for physics students. And that decided, where the servo was, in relation to the command.

what can go wrong on a cold damp day.

To answer the last post. Servos  wot work.

Edited By Don Fry on 20/01/2020 20:34:42

Link to comment
Share on other sites

Apologies in advance to anyone of a nervous disposition, who might find this a bit scary

The problem I have with all the definitions of "analogue" versus "digital" servos I've seen (including the above links) is that they just state that analogue servos work at 50Hz and digital servos work at 300Hz, without explaining what that actually means.

The following video might help to put the difference between "analogue" and "digital" servos into perspective. It shows the actual voltage being applied to the motor - as measured on an oscilloscope.

What the video doesn't go on to emphasise is the average (or RMS) voltage being applied to the motor by each type of servo, which is actually the most important bit, as this controls the speed / power at which the servo will move. I have yet to see a video or a report that actually ties it all together, so I'll have a go.

An analogue servo applies a narrow pulse every 20mS (50Hz), with a mark/space ratio (on / off ratio) according to the required motor movement. Average this out and the voltage is variable, according to the required motor movement, but quite low for small movements - and therefore quite slow to respond.

The digital servo on the other hand, applies narrow pulse trains every 3.3mS (300Hz), but not just that! The pulse trains are made up of even shorter pulses of 53uS (19kHz) which vary in their mark/space ratio according to the required motor movement. Average these pulses out and the voltage would be much higher than the analogue equivalent - and very much quicker to respond. And the important bit is that the gaps between the 20ms pulses of the analogue servo have almost been filled in, giving a much higher average motor voltage - and much faster response times.

I hope this makes sense and helps distinguish analogue and digital servos.

 

Edited By Gary Manuel on 20/01/2020 21:45:21

Link to comment
Share on other sites

"Average these pulses out and the voltage would be much higher than the analogue equivalent"

I'm not sure you understand the control theory behind analogue and digital difference amplifiers. And nor does the guy in that video, it's 13 minutes of red herring talking about the PWM rate. Which is the least important aspect of the servo.

It would be perfectly possible to make an power equivalent digital version of an analogue servo.

It would be perfectly possible to make an analogue servo that had 300Hz PWM output.

Analogue servos ran at 50Hz because - traditionally - they were hung on the end of the 35mhz decoder, which (guess what) had a frame rate of 50H; the servo ran at the same speed to minimise complexity.

In a digital servo, the control signal is processed differently. This opens up some possibilities over and above the analogue servos.

The major difference in the digital servo is that the difference amp - being software - can be programmed however the manufacturer likes, and it can put out very high power much quicker than the analogue. In engineering terms, the digital amp can implement a higher order difference algorithm to figure out the drive voltage.

(none of this is visible from looking at a scope trace of the motor drive signal).

The implementation of the difference amp is what is responsible for determining how good a servo is at holding a position under load, any overshoot it suffers, and centering accuracy. An analogue circuit, there are less elements to play with to get this right, all the elements are physical components, so component tolerances affect its performance and that has to be factored into the design. With a digital amp, more accurate control is possible, their can be more simulated elements in the control algorithm, and none of them suffer from tolerance or lifespan issues.

It has little to none to do with the PWM frequency.

Link to comment
Share on other sites

Nigel - yes I agree that digital servos process the incoming PWM signal differently - and different manufacturers might process it differently.

Apologies again if this gets a bit heavy.

Perhaps I wasn't clear about how I believe the average voltage is increased by the output waveforms shown on the oscilloscope. Ignore for a moment that the 300Hz output is split up into pulse trains and assume that it is just one pulse every 3.3mS with a variable mark/space signal.The average output voltage is increased by repeating the output pulses during the time that an analogue servo would have stopped outputting. Repeat it 5 times and the average voltage becomes 6 times greater.

The benefit of repeating the initial pulse only applies up to the point where the "analogue" pulse runs into the start of the second pulse after 3.3ms (at about 1/6th of maximum demand).

Now consider the pulse trains. Lets say there are 60 x 53us pulses per 3.3ms train. Apply the same principle of repeating each pulse and the average voltage is increased by 60. Don't forget that this is already being multiplied by 6, giving a total multiplication of 6 x 60 = 360. Again, this option of repeating the 1st pulse only applies until the 1st pulse runs into the 2nd after 52us.

So I say that for tiny inputs of less than 1/360th max, a digital servo can give 360 times more power than an analogue. Between 1/360th max and 1/6th max, it can give 6 times more power. Above 1/6th max, the power output would be pretty much maximum. This assumes that the microprocessor is not making any adjustments to the actual width of the pulse (which it could well do).

I stand to be corrected, but this is my interpretation of how a digital servo works and of what is being seen on the oscilloscope.

Edited By Gary Manuel on 21/01/2020 12:29:57

Link to comment
Share on other sites

Any properly designed servo amp will apply FULL and CONSTANT voltage across the motor if the error is more than about 10% (typically). This is true of a genuine analogue servo, a PWM "analogue" servo or a "digital" servo.

True analogue servos have not been available since the demise of Flight Link and the Staveley analogue system.

On a true analogue system, when the error is less than 10%, the voltage across the motor is reduced, and becomes proportional to the error. This is why true analogue systems suffered from poor centering that varied with load.

On a PWM "analogue" servo, or indeed a "digital" one, when the error is less than 10% (approx) the motor gets a pulsed drive, still at full voltage, but with a mark/space ratio proportional to the remaining error. This provides full torque for brief periods, improving the centering under varying loads.

The main difference between a PWM "analogue" servo and a "digital" one is the rate at which the motor is "pulsed" at low errors (less than 10% typically). On an "analogue" servo, the rate will be around 16-20mS (50-60Hz). On a "digital" servo it will be higher, maybe as high as 300Hz. However, the "digital" servo will still only receive updates from the transmitter at around 50Hz, unless it is either connected to a high-speed gyro, or the receiver has been programmed to a high frame rate.

In short, the main difference between any of the 3 different types of servo is only noticeable when the error is less than around 10%. If the error is greater than 10%, all will behave the same - all other factors being equal.

--

Pete

 

 

Edited By Peter Christy on 21/01/2020 12:55:23

Link to comment
Share on other sites

"I stand to be corrected, but this is my interpretation of how a digital servo works"

You can see the digital PWM in effect quite clearly around 10:50 in the video linked above.

It is exactly like analogue PWM, but at a higher frequency.

As Pete has explained quite well, either analogue or digital can output anywhere between 0% and 100% power.

However, I would say this again, the most important difference is that the digital controller can drive the motor with more power and accuracy, when the error between desired position and actual position is very very small, the main reason for this is that the digital amp can implement more complex feedback processing, beyond just the simple 'proportional to error' that an analogue will do. It can also add rotation speed, and acceleration into the mix*. This gets better accuracy at low errors. You can't really see that stuff on the scope trace. All you can see is the PWM implementation.

* you can do it with analogue, but, more components needed, with tighter tolerances, more cost, etc.

Edited By Nigel R on 21/01/2020 13:59:48

Link to comment
Share on other sites

Nigel: Yes, all quite true!

I really didn't want to get into concepts like velocity feedback and damping because I would imagine many readers eyes would have been glazing over already! wink

Its actually not too difficult to apply a crude form of velocity damping to a conventional "analogue" servo by feeding some of the back emf from the motor (during the "off" period) to the pulse stretchers, and most amplifiers do this. It helps in controlling overshoots on light loads.

--

Pete

Link to comment
Share on other sites

Posted by Peter Christy on 21/01/2020 14:34:42:

Its actually not too difficult to apply a crude form of velocity damping to a conventional "analogue" servo by feeding some of the back emf from the motor (during the "off" period) to the pulse stretchers, and most amplifiers do this. It helps in controlling overshoots on light loads.

every day is a school day - fine points of analogue circuitry was/is not my strong suit

Link to comment
Share on other sites

"Simple description":

When an "analogue" servo receives a control pulse it generates a pulse from the feedback pot at the same time. Any difference is stretched, amplified and applied to the motor. Nothing else happens until the next control pulse is received.

A "digital" servo measures the input pulse, but is able to monitor the feedback pot all the time (not just once every input pulse). This results in the motor being driven to the target position all the time, and can also correct the output position if it moves due to an external load, without waiting for the next input pulse.

The terms "analogue" and "digital" refer to the control circuitry, the input pulse width and the feedback pot are both analogue values.

Mike

Link to comment
Share on other sites

True enough, Mike!

The problem is that I'm old enough to remember *real* analogue systems - Space Control, Sampey 404, Orbit (all American), and in the UK, Flight Link and Staveley.

They offered good interference rejection, but were inferior in every other measurable way - though the Staveley was probably the best of the bunch.

These were genuine analogue systems where the servos were controlled by a varying voltage, not by pulse width, and thus really deserved the name "analogue". We mis-use the terms "analogue" and "digital" for our current generation of servos, because in reality, they aren't really either, but have some characteristics common to both.

Sorry, but this terminology is a pet hate of mine! devil

--

Pete

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...