1
$\begingroup$

Based on the wiki page of ESC, the ESC generally accepts a nominal 50 Hz PWM servo input signal whose pulse width varies from 1 ms to 2 ms

http://en.wikipedia.org/wiki/Electronic_speed_control

For our project, we integrate a flight controller for our UAV, Naza m-lite and we want to implement position control. We already have localization and we can control the quadrotor by applying servo width to roll, pitch, yaw and thrust throttle. Since the ESC only accepts 50 Hz, will the PID controller work at only 50 Hz?

$\endgroup$
1
$\begingroup$

First things first: the information on wikipedia refers to ESCs in general, and not a specific one. You should consult the datasheet on your particular ESC model to make sure that it does in fact use 50 Hz.

You also seem to have a misconception about how the PID controller and ESC are coupled together; in fact, the PID controller can work at whatever frequency it wants. The output of the PID will be some value, and in order to send that value to the ESC you will need to convert it to a pulse-width modulated (PWM) signal on the frequency that the ESC uses for input.

$\endgroup$
2
  • $\begingroup$ So the frequency of the PID controller does not have to be the same as of the frequency of sending PWM signal to the flight controller even if the frequency of the PWM signal is only at 50 Hz? What is the usual frequency for PID controller? $\endgroup$
    – Xegara
    Oct 23 '14 at 17:41
  • $\begingroup$ There is no "usual" frequency for PID controls. If you wanted to PID control the steering on a large boat, 1Hz might be fine; for some flying robots, you may want it to be much higher than 50Hz. Higher frequency is generally better than lower frequency, but if your ESC can only accept 50 inputs per second then there's no gain to making your PID run faster than that. $\endgroup$
    – Ian
    Oct 23 '14 at 18:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.