Simple Inverted Pendulum with LQR,PID SimMechanics

This sample this sample show the simple Inverted Pendulum control with lqr
ダウンロード: 8.5K
更新 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
謝辞

ヒントを得たファイル: Rotary double inverted pendulum;sim mechanics model

コミュニティ

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