Go Down

Topic: EXPLANATION: SERVO vs SERVO MOTOR and driver (Read 3728 times) previous topic - next topic

lastchancename

Feb 22, 2018, 11:24 am Last Edit: Jan 06, 2020, 11:24 am by lastchancename
Just to help explain a simple but often misquoted concept.

A SERVO is a closed-loop control system.
It may _not_ be a motor, but typically is*, using feedback to create a stable, deterministic output from the controlled device.
Example
You provide a reference, and the servo control system varies the output to equalise the feedback with the reference value.

* it /could/ be a fluid servo that maintains the specific level in a tank..

Many servo systems utilise MOTORS to delver mechanical output.
It /could/ be a STEPPER motor with step-counting, limits, feedback and drivers to achieve the desired motion control,

OR in ArduinoLand...

the MOTOR might well be a generic DC motor, with attached feedback electronics to achieve a simpler type of low-cost closed-loop control.
This is typically what is inside your *RC 'hobby' servo*.
Example
The reference is a pulse-train which the motor driver 'chases' while moving the motor shaft - providing feedback to the 'closed-loop' driver to maintain equilibrium.
Some gearing is often provided to deliver reasonable torque, speed and stability at low cost.

Added Edit: Putting it another way...
In most cases, a servo motor is a simple DC motor, combined with an h-bridge driver, and some form of feedback.  This usually 'called' a SERVO... or specifically...

As above, a 'servo' is a system of elements combined to form a controlled process. In many cases an RC servo performing simple rotation between two points on an arc..

The reason an RC servo can move to a position and 'hold' that position is due to the internal reduction gear 'holding' the last position.

You could use a simple DC motor and driver, but when it's stopped (no power), it's very easy to bump the position... hence the 'servo'  loop always monitors the position feedback and 'pushes' the motor back to where it should be.
Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

losmi

Okay, could you please post some concrete models/images to illustrate these SERVO types?

lastchancename

#2
May 04, 2018, 06:24 pm Last Edit: May 04, 2018, 06:24 pm by lastchancename
A SERVO is not a type, it is a process.

SERVO refers to a closed-loop control methodology.
In the case of an RC hobby servo, the control process is contained *within* that small box with three wires and an output shaft.

Other 'servos' may be a free spinning motor with an encoder on the shaft. In that case the servo functionality is implemented by the control process between the encoder and the motor driver...
It may control motor speed and/or angular positioning as needed.

...or a cistern that stops overflowing - with a float valve that controls the flow rate and/or on/off valve state.

Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

slipstick

Too much theory, not enough practical. To an Arduino beginner the important difference is between a (hobby type) servo and a motor.

A servo can be sent to a particular position, usually an angle. Most servos will only move through about 130-180 degrees though there are exceptions. Typically used for steering things or moving controls.

A motor is a thing that rotates round and round. You can usually control the direction and speed of rotation but you can't position it accurately without some additional equipment , typically an encoder. Often used for driving wheels to make cars, robots etc move.

Much confusion is caused because, for some unknown reason, a lot of Arduino documentation refers to servos as "servo motors".

And to add to the confusion some servos can be converted to what are often called 360 degree or continuous rotation when they spin continuously and you lose the ability to position them. In other words they are no longer servos they are just (geared) motors.

Steve

lastchancename

#4
May 12, 2018, 12:14 am Last Edit: May 12, 2018, 12:14 am by lastchancename
You're welcome to post some extra content ;)
Be careful of your terminology, just because an (RC)servo can be driven to a particular angle, don't dismiss 'servo motors' ...
Quote
A motor is a thing that rotates round and round. You can usually control the direction and speed of rotation but you can't position it accurately without some additional equipment , typically an encoder
...because that's *exactly* what's inside an RC servo!

It's that extra glue that makes a very important distinction.
Thanks for making me clarify that point!
Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

slipstick

Be careful of your terminology, just because an (RC)servo can be driven to a particular angle, don't dismiss 'servo motors' ... ...because that's *exactly* what's inside an RC servo!
One the things inside a servo is indeed a motor. But that's not a good reason enough for referring to the whole servo as though it was just a motor.

My car contains a fuel tank but if I talked about going for a drive in my car fuel tank people would look at me very strangely.

Steve

lastchancename

#6
May 16, 2018, 01:38 am Last Edit: May 16, 2018, 01:41 am by lastchancename
One the things inside a servo is indeed a motor. But that's not a good reason enough for referring to the whole servo as though it was just a motor.
Post #2 clarifies that.
Quote
if I talked about going for a drive in my car fuel tank people would look at me very strangely.
As they rightly should !
There *are* exceptions
Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

Metron_Ross

One the things inside a servo is indeed a motor. But that's not a good reason enough for referring to the whole servo as though it was just a motor.

My car contains a fuel tank but if I talked about going for a drive in my car fuel tank people would look at me very strangely.

Steve
Steve,

You are missing the OP's important point.  Many people have been misled by imprecise writers into thinking that a "Servo" is a type of motor. 

Along those lines, you described the entire universe of possible servos as if that universe only contains rotating pointers.  The meaning of the word "servo" encompasses way more topics than just devices that can do that.

The OP isn't referring to the "whole servo as if it was just a motor."  He is saying that while servos often contain one or more motors of one sort or another, they are not a type of motor.

If I'm understanding you correctly, earlier you were describing a servo mechanism, that probably contained some sort of electric motor.  However, despite what many might think, the OP and I are pointing out that that mechanism isn't a servo-motor.

To further clarify the point, consider this, if you study types of motors, in a properly written textbook or other source, you won't find a "servo motor" type of motor.  Why? Because a servo isn't a type of motor.  A servo is (generally) a collection of things used to control an output, and none of those things have to be a motor, much less some specific type of electric motor.

It's common mistake, reinforced by plenty of imprecise literature and vendors' ads.  The Arduino Servo library's documentation is an example of that sort of imprecise writing.

lastchancename

Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

slipstick

Well I hope that any newcomers trying to read these convoluted explanations are less confused by them than I am. But I doubt it.

I'll say it again....too much blinding people with the theory of "the whole universe of things that might be called servos/servo motors/servo mechanisms" and too little consideration of the type of things that 99.99% of people actually meet and are talking about.

If I could just persuade people (including those who write some of the Arduino technical information) to stop calling hobby servos "servo motors" I'd be happy enough.

Steve

Metron_Ross

How about this:

No matter what any vendor or naive person says, a "Servo" is device that often *contains* a motor (and other things), and is *not* a type of motor. 

Devices called "Servo Motors" by many, many hobbyists, are actually Servos that *contain* Motors and other things.

That's not so convoluted, is it?



Geek Emeritus

you use a definition of closed loop that is different from what I learned

per my instructors, a closed loop is a control system that receives feedback from that which is controlled, and adjusts that which is controlled

open loop driving a car: speed limit 35 >> watch speedo >> adjust gas pedal or brake as necessary

closed loop driving a car: drive 35 >> set cruise control >> cruise control monitors speed >> cruise control adjusts speed. no human intervention required
All PMs will be deleted unopened due to arrogant argumentative pot stirring Malfoys.
 If you have not read "How to use this forum - please read", in particular: "7. If you are posting code or error messages, use "code" tags":  expect rude responses

lastchancename

You're right.

A closed-loop is an integrated 'system' that acts independently of its surroundings to maintain equilibrium.

An open-loop depends on one or more non-integral components (e.g. the driver) that acts independently of the sensors and actuators to approximate the control algorithm.

Notably, a tightly calibrated cruise-control with good sensor data and sufficient performance will maintain speed far more accurately than a human driver...
There is an argument the driver can 'look ahead' to anticipate changes in load... that's not the fault of the closed-loop system, but a deficiency in the components and algorithms being compared.
Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

FEBaily

#13
Oct 05, 2019, 11:37 am Last Edit: Oct 08, 2019, 02:20 pm by FEBaily
I don't see what the (lack of) human intervention has to do with it. A car controlled by a human can certainly be regarded as a closed system, where the driver is as integral a part of the system as the throttle or the speedo.

Then a driver keeping an eye on the speedo, and juggling the controls accordingly to minimise the error between the actual and desired speeds is closed-loop control.

Open-loop control would be saying "I'm going to drive quite fast, so I will press the accelerator quite hard" and then never check if the speed is as desired or not.

Closed loop is exactly what it says, a loop where the actual goings-on are fed back to some kind of controller to adjust things, and why should it matter if the controller is human, mechanical, electrical or voodoo? It's the comparison of the actual to the desired that makes it a closed loop.


lastchancename

ok, bad example.
The original discussion was to separate the concept of a 'servo' from a 'motor'.

If that doesn't work for you, please write a new intro-tutorial on the difference between open and closed loop systems.

This is not the place. It just muddies the initial conversation.
Experienced responders have a nose for laziness, (they were beginners once)... Sure, there are trolls, chest-beaters, and pretenders - but the help you'll get here is about as good as it gets - if you try to help youself!.

Go Up