倒立摆实验报告

  • 格式:doc
  • 大小:412.10 KB
  • 文档页数:14

一、实验内容

1、完成Matlab Simulink 环境下的电机控制实验。

2、完成直线一级倒立摆的建模、仿真、分析。

3、理解并掌握PID控制的的原理和方法,并应用与直线一级倒立摆

4、主要完成状态空间极点配置控制实验、LQR控制实验、LQR控制(能量自摆起)实验、直线二级倒立摆Simulink的实时控制实验。

二、实验设备

1、计算机。

2、电控箱,包括交流伺服机驱动器、运动控制卡的接口板、直流电源等。

3、倒立摆本体,包括一级倒立摆,二级倒立摆。

三、倒立摆实验介绍

倒立摆是一个典型的不稳定系统,同时又具有多变量、非线性、强耦合的特性,是自动控制理论中的典型被控对象。它深刻揭示了自然界一种基本规律,即一个自然不稳定的被控对象,运用控制手段可使之具有一定的稳定性和良好的性能。许多抽象的控制概念如控制系统的稳定性、可控性、系统收敛速度和系统抗干扰能力等,都可以通过倒立摆系统直观的表现出来。

(1) 被控对象 倒立摆的被控对象为摆杆和小车。摆杆通过铰链连接在小车上,并可以围绕连接轴自由旋转。通过给小车施加适当的力可以将摆杆直立起来并保持稳定的状态。

(2) 传感器 倒立摆系统中的传感器为光电编码盘。旋转编码器是一种角位移传感器,它分为光电式、接触式和电磁感应式三种,本系统用到的就是光电式增量编码器。

(3) 执行机构 倒立摆系统的执行机构为松下伺服电机和与之连接的皮带轮。电机的转矩和速度通过皮带轮传送到小车上,从而带动小车的运动。电机的驱动由与其配套的伺服驱动器提供。

光电码盘1将小车的位移、速度信号反馈给伺服驱动器和运动控制卡,而光电码盘2 将摆杆的位置、速度信号反馈回控制卡。计算机从运动控制卡中读取实时数据,确定控制决策(小车向哪个方向移动、移动速度、加速度等),并由运动控制卡来实现该控制决策,产生相应的控制量,使电机转动,带动小车运动,保持摆杆平衡。

图1 直线倒立摆系统总体结构图 四、实验步骤

4.1 状态空间极点配置控制实验

极点配置法通过设计状态反馈控制器将多变量系统的闭环系统极点配置在期望的位置上,从而使系统满足瞬态和稳态性能指标。前面我们已经得到了倒立摆系统的比较精确的动力学模型,下面我们针对直线型一级倒立摆系统应用极点配置法设计控制器。

1)状态空间分析

对于控制系统XAXBu

式中:X—状态向量(n维);u—控制向量;A—nn常数矩阵;B—1n常数矩阵。

选择控制信号为:uKX

求解上式,得到:()()()xtABKxt

方程的解为:()()(0)ABKtxtex

图3 状态反馈闭环控制原理图

可以看出,如果系统状态完全可控,K选择适当,对于任意的初始状态,当t

趋于无穷时,都可以使趋于0。

2)状态空间极点配置

前面我们已经得到了直线一级倒立摆的状态空间模型,以小车加速度作为输

入的系统状态方程为:

'301004.2900100000000010uxxxx '0001000001uxxxy

即:

04.2900100000000010A

3010B

01000001C 00D

对于如上所述的系统,设计控制器,要求系统具有较短的调整时间(约3秒)和合适的阻尼(阻尼比0.5)。

下面采用极点配置的方法计算反馈矩阵。

1、检验系统可控性

由系统可控性分析可以得到,系统的状态完全可控性矩阵的秩等于系统的状态维数4,系统的输出完全可控性矩阵的秩等于系统输出向量的维数2,所以系统可控。

图4 倒立摆极点配置原理图

2、计算特征值

根据要求,并留有一定的裕量(设调整时间为2秒),我们选取期望的闭环极点(1,2,3,4)isi其中:123410,10,223,223jj。

34,是一对具有0.5,4n的主导闭环极点,12,位于主导闭环极点的左边,因此其影响较小,可以将系统近似为二级系统,根据公式

jtennns22,1113.3%2

可得n,和一对主导极点2,1

因此期望的特征方程为:

12344321010223223241967201600sssssssjsjssss

因此可以得到:

123424,196,720,1600

由系统的特征方程:

244.294.2900100000001ssssssAsI

因此有0,0,4.29,04321aaaa。

系统的反馈增益矩阵为:

1112211nnnnKaaaaT

3、确定使状态方程变为可控标准型的变换矩阵T:

TMW

其中:

02.88032.8803000010010][32BABAABBM 000100100104.29104.2900001001011112123aaaaaaW

所以:

30000300104.2900104.29MWT ,3333.000003333.0000113.00034.0000113.00034.01T

2、求状态反馈增益矩阵K:

]1633.162738.934898.244218.54[3333.000003333.0000113.00034.0000113.00034.0]244.291967201600[][111223344TaaaaK

得到控制量: 1633.162739.934898.244218.54xxKXu

以上计算可以采用 MATLAB 编程计算。

3)Simulink仿真实验

在MATLAB Simulink下对系统进行仿真。

图5 直线一级倒立摆极点配置控制仿真模型

双击“State-Space”模块打开直线一级倒立摆的模型设置窗口如下:

图6 系统状态空间模型设置窗口

把参数A,B,C,D 的值设置为实际系统模型的值。

双击“Pole Controller”模块打开极点配置控制器参数的设置窗口:

图7 反馈增益矩阵输入窗口

把上面计算得到的反馈增益矩阵K输入,设置好各项参数后,点击“”运行仿真。

4)Simulink实时控制实验

图9 实验五 状态空间极点配置控制实验

上图中的红色方框为设计的极点配置控制器,运行前查看是否为自己设计好的控制器,并确定保证摆杆此时竖直向下。不用编译链接,直接单击“”按钮,用手捏住摆杆顶端(不要抓住中部或下部),慢慢地提起,到接近竖直方向时放手,当摆杆与竖直向上的方向夹角小于0.30弧度时,进入稳摆范围,可以观察到,摆杆直立不倒,小车稳摆在初始位置,然后单击“”停止实验。

4.2 LQR控制实验

1)LQR控制分析

LQR控制器是应用线性二次型最优控制原理设计的控制器。当系统状态由于任何原因偏离了平衡状态时,能在不消耗过多能量的情况下,保持系统状态各分量仍接近于平衡状态。线性二次型最优控制研究的系统是线性的或可线性化的,并且性能指标是状态变量和控制变量的二次型函数的积分。它的解很容易获得,并且可以达到非常好的控制效果,因此在工程上有广泛的应用。

二次型性能指标一般形式如下:

011()()()()()()()()22ftTTTfftJxtQtxtutRtutxtFxt

其中,Qnn维半正定状态加权矩阵;Rrr维正定控制加权矩阵;

Fnn维半正定终端加权矩阵;

最优控制的目标就是使minJ,则其实质在于,用不大的控制来保持较小的误差,从而达到能量和误差综合最优的目的。

2)LQR控制器设计

系统状态方程为: DuCXyBuAXX (1)

二次型性能指标函数:

dtRUUQXXJTT0][21 (2)

其中:加权矩阵Q和R是用来平衡状态变量和输入向量的权重,X是n维状态变量, U是r维输入变量, Y为m维输出向量,如果该系统受到外界干扰而偏离零状态,应施加怎样的控制U*才能使得系统回到零状态附近并同时满足J达到最小,那么这时的U*就称之为最优控制。由最优控制理论可知, 使式(2)取得最小值的最优控制律为: KXPXBRUT1 (3)

式中, P就是Riccati方程的解, K是线性最优反馈增益矩阵。这时求解Riccati代数方程:01QPBPBRPAPATT (4)

就可获得P值以及最优反馈增益矩阵K值。PBRKT1 (5)

前面我们已经得到了直线一级倒立摆系统的系统状态方程:

'301004.2900100000000010uxxxx

'0001000001uxxxy

可知:

04.2900100000000010A,3010B

四个状态量,,,xx分别代表小车位移、小车速度、摆杆角度、摆杆角速度,输出],[xy包括小车位置和摆杆角度。