Code covered by the BSD License

### Highlights from Simple Inverted Pendulum with LQR,PID SimMechanics

5.0

5.0 | 1 rating Rate this file 49 Downloads (last 30 days) File Size: 320 KB File ID: #25139

# Simple Inverted Pendulum with LQR,PID SimMechanics

25 Aug 2009 (Updated )

This sample this sample show the simple Inverted Pendulum control with lqr

File Information
Description

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)

Acknowledgements

Rotary Double Inverted Pendulum;Sim Mechanics Model inspired this file.

Required Products Control System Toolbox
SimMechanics
MATLAB release MATLAB 7.7 (R2008b)
04 Sep 2013
25 Nov 2011

so good!!

15 Nov 2011

My name is Yudha from indonesia, I want make controller with LQR,

my case about nonlinear equation, the example is van der pol eq.

if i used the ode45 and the next i used LQR, what i must be do?

i hope u can help me , thank you

best regards

yudha