单级倒立摆稳定控制实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.实验目的

1.了解单级倒立摆的原理与数学模型的建立;

2.掌握LQR控制器的设计方法;

3.掌握基于LQR控制器的单级倒立摆稳定控制系统的仿真方法。

二.实验内容

图1 一级倒立摆原理图

一级倒立摆系统的原理框图如上所示。系统包括计算机、运动控制卡、伺服机构、倒立摆本体和光电码盘几大部分,组成了一个闭环系统。光电码盘1将连杆的角度、角速度信号反馈给伺服驱动器和运动控制卡,摆杆的角度、角速度信号由光电码盘2反馈回控制卡。计算机从运动控制卡中读取实时数据,确定控制决策,并由运动控制卡来实现该控制决策,产生相应的控制量,驱动电机转动,带动连杆运动,保持摆杆的平衡。

在忽略了空气阻力,各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如下图2所示。

图2 直线一级倒立摆系

其中:

M小车质量

m 摆杆质量

b 小车摩擦系数

l 摆杆转动轴心到杆质心的长度

I 摆杆惯量

F 加在小车上的力

x 小车位置

φ 摆杆与垂直向上方向的夹角

θ 摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)

下图是系统中小车和摆杆的受力分析图。其中,N 和P 为小车与摆杆相互作用力的水平和垂直方向的分量。

注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图所示,图示方向为矢量正方向。

图3 (a )小车隔离受力图;

(b ) 摆杆隔离受力图

分析小车水平方向所受的合力,可以得到以下方程:

Mx F bx N =-- (1)

由摆杆水平方向的受力进行分析可以得到下面等式:

()2

2sin d N m x l dt

θ=+ (2) 即:2cos sin N mx ml ml θθθθ=+-

为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:

()2

2cos d P mg m l dt

θ-= (3) 即: 2sin cos P mg ml ml θθθθ-=--

力矩平衡方程如下:

sin cos Pl Nl I θθθ--= (4)

注意:此方程中力矩的方向,由于θπφ=+,cos cos φθ=-,sin sin φθ=-故等式前面有负号。

合并这两个方程,约去P 和N ,得到第二个运动方程:

()2

sin cos I ml mgl mlx θθθ++= (5) 设θπφ=+(φ是摆杆与垂直向上方向之间的夹角),假设φ与1(单位为弧度)相比很小,即1φ<<,则可以进行近似处理:cos 1θ=-,sin θφ=-,2

0d dt θ⎛⎫= ⎪⎝⎭

,用来u 代表被控对象的输入力F ,线性化后两个运动方程如下: ()()2I ml mgl mlx M m x bx ml u φφφ⎧+-=⎪⎨++-=⎪⎩ (6) 系统状态空间方程为:

X AX Bu y CX Du

⎧=+⎨=+⎩ (7) 即: ()()()()()()()()()2222222222010000

00001000I ml b I ml x x m gl x x I M m Mml I M m Mml I M m Mml u mgl M m ml mlb I M m Mml I M m Mml I M m Mml φφφφ⎡⎤⎡⎤⎢⎥⎢⎥-++⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥++++++⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥+⎣⎦⎣⎦-⎢⎥⎢⎥⎢⎥⎢⎥++++++⎣⎦⎣⎦

1000000100x x x y u φφφ⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥==+⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥⎣⎦

(8) 2. 倒立摆系统LQR 控制器设计与仿真

最优控制理论主要是依据庞德里亚金的极值原理,通过对性能指标的优化寻找可以使目标极小的控制器。其中线性二次型性能指标因为可以通过求解Riccatti 方程得到控制器参数,并且随着计算机技术的进步,求解过程变得越来越简便,因而在线性多变量系统的控制器设计中应用较广。利用线性二次型性能指标设计的控制器称作LQR 控制器。前面我们已经得到了直线一级倒立摆系统的比较精确的动力学模型,下面我们针对直线型一级倒立摆系统应用LQR 法设计与调节控制器,控制摆杆保持倒立平衡的同时,跟踪小车的位置。

实际系统的模型参数如下:

M 小车质量 1.096 Kg

m 摆杆质量 0.109 Kg

b 小车摩擦系数 0 .1N/m/sec

l 摆杆转动轴心到杆质心的长度 5m

I 摆杆惯量 0.0034 kg*m*m

T 采样频率 秒

注意:在进行实际系统的MATLAB 仿真时,请将采样频率改为实际系统的采样频率。请用户自行检查系统参数是否与实际系统相符,否则请改用实际参数进行实验。

由倒立摆系统状态方程:

0100000.1818 2.67270 1.181820001000.454531.18180 4.5455x x x x u φφφφ⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥=+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦⎣⎦

1000000100x x x y u φφφ⎡⎤⎢⎥⎡⎤⎡⎤⎡⎤⎢⎥==+⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦⎣⎦⎢⎥⎣⎦

(9)

应用线性反馈控制器,控制系统结构如图4。图中,R 是施加在小车上的阶跃输入,四个状态量x ,x ,φ,φ分别代表小车位移、小车速度、摆杆位置和摆杆角速度,输出[]T

y x φ=包括小车位摆杆角度。设计控制器使得当给系统施加一个阶跃输入时,摆杆会置和摆动,然后仍然回到垂直位置,小车可以到达新的指定位置。

系统的开环极点可以用Matlab 程序求出。开环极点为0,,,,可以看出,有一个极点位于右半S 平面,这说明开环系统不稳定。

假设全状态反馈可以实现(四个状态量都可测),找出确定反馈控制规律K 。。用Matlab 中的lqr 函数,可以得到最优控制器对应的K 。lqr 函数允许选择两个参数(R 和Q ),这两个参数用来平衡输入量和状态量。最简单的情况是假设R=1,

*Q C C '=.当然,也可以通过改变Q 矩阵中的非调节控制器以得到期望的响应。

图4 控制系统结构

三. 实验代码

A=[0 1 0 0 ;0 0;0 0 0 1;0 0];

B=[0;;0;];

C=[1 0 0 0;0 0 1 0];

D=[0;0];

Q=[1 0 0 0;0 0 0 0;0 0 1 0;0 0 0 0];

R=2;

x0=[2;0;-3;0];

K=lqr(A,B,Q,R);

csys=ss(A-B*K,B,[],[]);

[y,t,x]=initial(csys,x0);

Plot(t,x)

四. 实验数据与处理

相关文档
最新文档