文档详情

倒立摆带降维观测器实验报告.doc

发布:2017-01-04约5.87千字共31页下载文档
文本预览下载声明
一、实验目的和要求 了解倒立摆控制系统的原理和系统组成 加深对实际控制系统物理组成部分的认识和理解 (3)掌握线性系统控制器的设计、软件算法编制与实现 要求针对直线型一级或二级倒立摆系统,设计状态反馈控制器和状态观测器,完成对小车倒立摆的稳定控制。 二、实验内容和原理 以直线一级或二级倒立摆为研究对象,开展以下实验内容: (1)系统数学模型建模与分析 (2)倒立摆经典控制设计 (3)倒立摆状态反馈控制与状态观测器设计 (4)倒立摆实物控制调试 三、实验项目 1)倒立摆前馈控制起摆研究 (2)能量控制起摆研究 (3)倒立摆经典控制器设计及调试 (4)倒立摆状态反馈控制器设计及调试 四实验器材 五操作方法与实验步骤 (一)模型建立 一级倒立摆的模型示意图如下: 图1 直线倒立摆一级模型可以写成关于和的微分方程: 由[2]可得到运动方程: 根据本次试验对两种模型分别进行了输入输出观察,以[1]中的模型为主进行计算。其中都为googol公司给的参数,u为预期的输入控制。 (二)起摆问题的数学表述 在有限的时间内,使得系统的状态参数为 其中0时刻为倒立状态。 根据实验器材的性能,最主要限制条件为: 速度和加速度的限制条件未见说明书中提及。 (三)控制思路 图2 前馈加反馈控制示意图 如图所示,为前馈控制,为反馈控制,*代表预期值。 (四)前馈控制设计: 由系统的微分方程可知,状态方程的A,B,C都为时变的,对此不进行能控能观判据检验(实际上无法写出系统的状态方程)。把问题转化为一个非线性BVP求解的过程。而由微分方程的维数和限制条件维数可求得u中参数p的个数[3]为4。 其中,u的形式为 利用Matlab中函数bvp4c,求得P1,P2,P3,P4。输入,求得实际轨迹。 由于前馈控制对于模型参数的精确性要求特别高,而实际得到的状态轨迹与预期的偏差特别大,对系统参数进行调整可以减小误差(理论上)。通过Matlab函数fmincon可以解决如下问题: 代表参数的集合,为实际轨迹,由此可求得调整后的参数集合。 (五)反馈控制设计 反馈作为前馈控制的一个补偿量,引入新的状态量,满足 则状态向量为,系统可写成 该系统为非线性系统,但是沿线性化可求得 其中 用Matlab中函数lqr可以求出。 第二种起摆控制 把小车的移动认为是对摆杆做功的过程,只要在时间T内,摆杆得到的能量为左右,摆杆的位置已能切换至倒立稳定控制的模块。其中,摆杆能量超出部分的多少与倒立控制模块的鲁棒性有关。 摆杆总的能量为 通过对E求微分可得 则可以得出只要控制u就能控制能量的变化率。令 根据,,可以通过编程实现整个控制过程。 黑箱问题 由于系统是由googol公司制作并封装好的,只能对电机的进行输入控制,输入信号为Acc和Vel,如图 图3 在实验过程中也发现了输入与预期输入偏差太大的情况,故对此问题进行研究。 通过观察已有实例和自己设定的输入得出的实例验证,得到了电机输入到小车输出的对应原则。 一级倒立摆控制 仿真PID位移控制,采用试凑法获得合适的=-45 , ki =-0.15 , kd = -10; (二)在原有角度模块下完成PID控制位移控制模块) (三)连接实验器材实验数据 图4 一级倒立摆降维观测器 降维观测器原理搭建降维观测器控制模块图) 图5 (二)根据工程实践降维观测器的极点选为-45-45; (三)运用Lyapunov方程求解矩阵参数Matlab中运算结果如下 a=[0 1 0 0; 0 0 0 0; 0 0 0 1; 0 0 29.4 0]; b=[0 1 0 3]; c=[1 0 0 0; 0 1 0 0]; d=[0 0]; f=[-45 0 ;0 -45]; l=[1 2;2 1] rank(ctrb(f,l)) t=lyap(-f,a,-l*c) g=t*b t1=inv([t;c]) 实验结果 ans= 2 0.0222 -0.0005 0.0451 -0.0010 0.0444 -0.0010 0.0225 -0.0005 g = -0.0035 -0.0025 t1 = 0.0222 -0.0005 0.0451 -0.0010 0.0444 -0.0010 0.0225 -0.0005 1.0000 0 0 0 0 0 1.0000 0 (四)将降维观测器接入实时控制模块不参与反馈,通过器件观测降维观测器的数据真实数据存在偏差
显示全部
相似文档