Robotics begineer needing some info.

I'm just starting on servo control and wanted some questions answered.

I have been looking all over the internet for information and clarification, but the more I read the more I get confused. My main question is understanding how a continuous pulse will not continue to cause the motor to want to rotate past the desired position. I have read a detailed description of how servos work at the following site, but I'm still lost:

formatting link
Is the detailed description at this site missing something or am I just too dense to understand it?

I'm technically savvy, but somehow this one has me stumped and I can't seem to move on 'til I completely understand the basics.

Thanks.

Reply to
Killer Bean
Loading thread data ...

That article says it pretty well. But it's easy to miss if you don't know what to look for.

The key here is that the pulse does not directly drive the motor. Rather, it is what is used by the servo's internal electronics as a position reference. The actual position is read by a potetiometer inside the servo, and through some electronic magic the motor is spun until the potentiometer reads the correct position.

hth

Killer Bean wrote:

Reply to
Jason Tang

The pulse is a position command to the servo. The servo spends its time trying to keep the output shaft at the position commanded by the pulse. So the pulse is saying to the servo "go to 30 degrees". The reason it needs to be repeated at all is because the servo stores the pulse electronically in a way that needs to be refreshed. If it didn't need to be refreshed, you would be able to send the pulse once or as frequently as you wanted.

Mitch Berkson

Reply to
Mitch Berkson

When you emit a cyclical pulse, the output pin sees an "average" current and voltage. (Assuming your frequency is high enough, something like

20-40khz.) Just like any other motor, a current in the servo causes it to rotate.

The only special thing about a servo is that its output shaft is hooked up to a potentiometer (aka a variable resistor). This variable resistor also emits a varying current and voltage drop based on the position of the servo's output shaft.

Using a comparator, the servo compares the two voltages and uses the resulting signal to drive (indirectly) the current through the motor windings. The important thing to notice here is that the output of the comparator is proportional to the difference between the two voltages (recall: the voltage off the pot and the average voltage seen by your PWM output pin)..

So if your servo is at 180deg and you emit a 0deg control pulse, the servo applies a large current to motor windings and the arm begins to spin. As the arm moves towards 0 degrees, the difference in voltage grows smaller and so the output signal of the comparator diminishes, which in turn moves the motor slower. This feedback effect continues until the motor gets right near 0deg, at which point the comparator outputs zero voltage and the motor comes to rest.

If you were at this point to put your finger on the servo horn and try to spin it, the potentiometer would quickly show a slight amount of rotation, and the motor would turn on in the opposite direction. The harder you pushrf against it, the harder the motor would push back. It will return equal force as long as it can to maintain the same position.

Or were you talking about "how it works" in the sense of "how do I use it"?

Reply to
Mark Haase

Darn it, I knew it was something as simple as that. I have just started using servo's and the ones we are using at work are computer controlled through position encoders. I fully understood this kind of operation as all the software has to do is keep a count of pulses received from the encoders and it can tell at any one time where the controlled item was.

What I had missed in the hobbyists type of servos, and what all of you that replied stressed, is the fact that there is more circuitry hidden in the motor. I now fully comprehend how the little darn thing operates!

Thanks to all.

clarification,

Reply to
Killer Bean

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.