Simple Inverted Pendulum with LQR,PID SimMechanics

版本 1.2.0.0 (320.4 KB) 作者: Leonardo Araujo
This sample this sample show the simple Inverted Pendulum control with lqr
8.6K 次下载
更新时间 2009/8/26

查看许可证

Hi guys this is my Simple Pendulum model and control using SimMechanics and Control toolbox, later I will include also the SolidWorks files to show how to use SolidWorks link.

Anyone who finds that I should do things in another way please fell free to post any comment and help me :)

This sample was modelled with SimMechanics and control was made with lqr command.

First I've imported the pendulum from solidworks with
mech_import;

>> mgrPend = MECH_STATEVECTORMGR;
>> mgrPend.StateNames

ans =

'InvertedPendulumModel/Pendulo_Invertido/Revolute:R1:Position'
'InvertedPendulumModel/Pendulo_Invertido/Prismatic:P1:Position'
'InvertedPendulumModel/Pendulo_Invertido/Revolute:R1:Velocity'
'InvertedPendulumModel/Pendulo_Invertido/Prismatic:P1:Velocity'

>> [A,B,C,D] = linmod('InvertedPendulumModel');

>> eig(A)

ans =

0
0
2.3132
-2.3132

>> open_plant = ss(A,B,C,D);
>> impulse(open_plant);

>> Q = diag([ 0 100 0 100]);
>> K = lqr(A,B,Q,R)

K =

284.3487 -10.0000 126.1560 -23.6582

>> Ac = [(A-B*K)];
>> Bc = [B];
>> Cc = [C];
>> Dc = [D];
>> sys_cl=ss(Ac,Bc,Cc,Dc);
>> T=0:0.01:50;
>> U=0.2*ones(size(T));
>> [Y,T,X]=lsim(sys_cl,U,T);
>> plot(T,Y)

引用格式

Leonardo Araujo (2024). Simple Inverted Pendulum with LQR,PID SimMechanics (https://www.mathworks.com/matlabcentral/fileexchange/25139-simple-inverted-pendulum-with-lqr-pid-simmechanics), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2008b
兼容任何版本
平台兼容性
Windows macOS Linux
社区

Community Treasure Hunt

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

Start Hunting!
版本 已发布 发行说明
1.2.0.0

Added the SolidWorks files and re-modeled things with the imported plant (Inverted Pendulum) model from SolidWorks

1.0.0.0