Be the first to rate this file! 57 Downloads (last 30 days) File Size: 320.42 KB File ID: #25139
image thumbnail

Simple Inverted Pendulum with LQR,PID SimMechanics

by Leonardo Araujo

 

25 Aug 2009 (Updated 26 Aug 2009)

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

| Watch this File

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

The author wishes to acknowledge the following in the creation of this submission:
Rotary double inverted pendulum;sim mechanics model

Required Products Control System Toolbox
SimMechanics
Simulink
MATLAB release MATLAB 7.7 (R2008b)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (2)
15 Nov 2011 yudha hadibowo

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

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

i dont understand about linearized, can u explaint me about it.

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

25 Nov 2011 Yi seong woo

so good!!

Please login to add a comment or rating.
Updates
26 Aug 2009

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

Tag Activity for this File
Tag Applied By Date/Time
simmechanics Leonardo Araujo 26 Aug 2009 10:05:55
simulink Leonardo Araujo 26 Aug 2009 10:05:55
mimo Leonardo Araujo 26 Aug 2009 10:05:55
pid Leonardo Araujo 26 Aug 2009 10:05:55
lqr Leonardo Araujo 26 Aug 2009 10:05:55
solidworks Leonardo Araujo 26 Aug 2009 10:05:55
how to write a matlab program for two inputs in lqrgive some exa pauline asha 05 Jan 2010 05:52:49
how to write a matlab program for two inputs in lqr give some ex pauline asha 05 Jan 2010 05:56:35
how to write matlab program for tunning pid with optimal control ona Fitria 24 Jul 2010 23:22:22
how to convert lqr to pid with matlab program ona Fitria 24 Jul 2010 23:23:54
simulink Helos 12 Jun 2011 17:06:03

Contact us at files@mathworks.com