How do servomotors remember PWM signal? Do they care for duty cycle or voltage

Thread Starter

Faws

Joined May 10, 2022
2
Hello!

I am working with servos alot lately, and I have been wondering. When you control a servo using a PWM signal, is it the duty cycle or the amplitude of the signal that determins which position the servo has? I realize that a PWM signal will simply be interpreted as a voltage if you measure it, but how does it then know the difference between PWM signal using 3v and 5v. Because those will result in different voltages using same duty cycle, however, my servo interprets them as the same angle still.

Also, when you apply a PWM signal to the motor, it will "remember" the signal for some time without applying it again. How does it do this? I vaguely remember reading it does this using a capacitor that holds the set voltage for some time, before being discharged.

Thank you for any replies in advance!
 

BobTPH

Joined Jun 5, 2013
4,927
The PWM signal is a logic signal. Its voltage must be within the specified range for a logic high, otherwise the voltage does not matter.

Bob
 

djsfantasi

Joined Apr 11, 2010
8,330
First, there are different types of servos. I am going to assume that you are talking about RC hobby servos.

Hobby RC Servos are controlled by the duty cycle of the control signal, which typically runs at 50hz. Each cycle lasts 20ms. A signal whose duty cycle of 15ms out of 20ms is the RC servos center position.

An RC servo does NOT remember the PWM signal. If the signal were to stop, the servo is free to move and will do so if mechanical forces are applied. To hold a given position, the appropriate PWM signal must be continuously applied.

AFAIK, hobby RC servos run between 6-7V. They can operate at a lower voltage, but the rated torque and speed will be reduced.

I usually run them at 5V, and they perform to my satisfaction. I do so because I use 5V for my microprocessors.
 
Last edited:

djsfantasi

Joined Apr 11, 2010
8,330
I didn’t address this point of yours.
Also, when you apply a PWM signal to the motor, it will "remember" the signal for some time without applying it again. How does it do this? I vaguely remember reading it does this using a capacitor that holds the set voltage for some time, before being discharged.
the servo does NOT remember the PWM signal not its corresponding position. Mechanically, if external forces are not applied, it will stay in the position it was commanded to move to. Try an experiment. Write a short sketch or circuit to move the servo to some random position. Then, disconnect the signal wire or stop sending the PWM command. Then manually move the servo ‘horn’.
 
Last edited:

Thread Starter

Faws

Joined May 10, 2022
2
I didn’t address this point of yours.


the servo does NOT remember the PWM signal not its corresponding position. Mechanically, if external forces are not applied, it will stay in the position it was commanded to move to. Try an experiment. Write a short sketch or circuit to move the servo to some random position. Then, disconnect the signal wire or stop sending the PWM command. Then manually move the servo ‘horn’.

Thank you for the replies! What you said is indeed correct. I don't know where I read about capacitors storing position, or why I remembered it. I guess it made sense in my head because I thougt it was the voltage that ultimately decided the servo position.
 
Top