Designing a PID controller for a pendulum

4 次查看(过去 30 天)
we have the following system:
  • (4.545 s) / (s^3 + 0.1818 s^2 - 31.21 s - 4.459)
we have a upside down pendulum, and we need to design a PID controller which can hold it up straight. such that the following conditions occurs:
.
% setteling time: <5 Sec
% overshoot: 20 degree
% risetime: <0.5 Sec
.
any tips??
i, first, put Ti = Inf and Td = 0;
then found the value for Kp = Kcritical according to Routh Table: Kp = Kcr = 159.4546249
but when I want to calculate Natural Frequency (Omega), i get three answers which have imaginary parts:
.
0.0000 + 7.3625i
2.9609 - 3.5903i
-2.9609 - 3.5903i
.
I'm guessing I am not using the correct method
  1 个评论
Arkadiy Turevskiy
Arkadiy Turevskiy 2015-3-17
You could tune the PID controller with PID Tuner app, unless you are trying to stcik with your method specifically.
>>s=tf('s');
>> sys=(4.545*s) / (s^3 + 0.1818*s^2 - 31.21*s - 4.459)
sys =
4.545 s
----------------------------------
s^3 + 0.1818 s^2 - 31.21 s - 4.459
Continuous-time transfer function.
>> pidTuner(sys)
Then playing a little bit with sliders you could get to something like this:

请先登录,再进行评论。

回答(1 个)

Arkadiy Turevskiy
Arkadiy Turevskiy 2015-3-17
You could tune the PID controller with PID Tuner app, unless you are trying to stcik with your method specifically.
>>s=tf('s');
>> sys=(4.545*s) / (s^3 + 0.1818*s^2 - 31.21*s - 4.459)
sys =
4.545 s
----------------------------------
s^3 + 0.1818 s^2 - 31.21 s - 4.459
Continuous-time transfer function.
>> pidTuner(sys)
Then playing a little bit with sliders you could get to something like this:

类别

Help CenterFile Exchange 中查找有关 PID Controller Tuning 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by