资源描述:
《现代控制理论大作业.ppt》由会员上传分享,免费在线阅读,更多相关内容在PPT专区-天天文库。
1、课题背景2021/8/81两轮自平衡小车的左右轮共轴、独立驱动、整个车身质心基本位于车轮轴正上方,通过车轮前后运动实现动态平衡,并且可以实现直立行走。作为人为驾驶的代步工具,将会使得人们小范围、短距离的上班出行变得更加方便、灵活、环保。课题背景2021/8/82双轮机器人属于动态稳定而静态不稳定的系统,本身具有多变量、非线性、强耦合等特性,它能有效反映诸如稳定性、鲁棒性、随动性等控制理论中的关键问题,对于学生掌握控制系统设计的基本方法十分有帮助,因而具有较大的研究价值。课题背景2021/8/83
2、系统工作原理课题背景2021/8/84系统工作原理前进(后仰)前进(纠正前倾)后退(前倾)后退(纠正后仰)由于车身是不断变化,检测、反馈就不断随之变化,动态地跟踪车身的倾角状态,使车身一直保持平衡状态,这就是动态自平衡原理。控制对象分析与建模2021/8/85忽略空气阻力后,可以将两轮平衡车抽象成小车和匀质杆组成的系统,如下图所示:其中,M——小车质量m——摆杆质量b——小车的摩擦系数l——摆杆的转动轴心到质心的长度I——摆杆惯量F——施加给小车的力x——小车的位置θ——摆杆与垂直向下方向的夹角
3、φ——摆杆与垂直向上方向的夹角自平衡车系统简图图2小车及摆杆受力分析控制对象分析与建模2021/8/86忽略空气阻力后,可以将两轮平衡车抽象成小车和匀质杆组成的系统,如下图所示:其中,M——小车质量m——摆杆质量b——小车的摩擦系数l——摆杆的转动轴心到质心的长度I——摆杆惯量F——施加给小车的力x——小车的位置θ——摆杆与垂直向下方向的夹角φ——摆杆与垂直向上方向的夹角图1自平衡车系统简图图2小车及摆杆受力分析控制对象分析与建模2021/8/81.分析小车在水平方向所受合力可得:2.分析摆杆在
4、水平方向所受合力可得:(1)(2)3.把(2)式带入(1)式可得系统的第一个运动方程:(3)4.对摆杆垂直方向受力分析可得:(4)5.把(4)式带入(3)式可得系统的第二个运动方程:(5)控制对象分析与建模2021/8/86.被控对象的输入力F用u表示,线性化后得到运动方程:(6)7.整理后得到系统状态空间方程:(7)控制对象分析与建模2021/8/86.各物理量取以下数值,得到状态空间矩阵为:M=1.096kgm=0.109kgb=0.1N/(m·s)I=0.034kg·m2l=0.25mg=
5、9.8m/s2状态变量控制变量输出变量状态方程控制对象分析与建模2021/8/87.能控性和能观性分析:Matlab程序:结论:Rank(M)=4系统完全能控Rank(N)=4系统完全能观symsImMlbgxfai;M=1.096;m=0.109;b=0.1;I=0.034;l=0.25;g=9.8;t=I*(M+m)+M*m*l^2;A=[0,1,0,0;0,-(I+m*l^2)*b/t,m^2*g*l^2/t,0;0,0,0,1;0,-m*l*b/t,m*g*l*(M+m)/t,0;]B=
6、[0;(I+m*l^2)/t;0;m*l/t;]C=[1,0,0,0;0,0,1,0;]Uc=ctrb(A,B)Vo=obsv(A,C)rankc=rank(Uc)ranko=rank(Vo)namid=eig(A)计算结果:rankc=4ranko=4稳定性分析2021/8/8运用Matlab解出矩阵A的特征值如下:namid=eig(A)namid=0-0.0830-2.57822.5769A的特征值中有一个零点和一个整根,故系统的状态是不稳定的。传递函数:阶跃输入的响应曲线极点配置2021
7、/8/81.状态反馈矩阵K的计算已知该系统不稳定,要使系统稳定,必须重新配置极点,因为状态矩阵完全能控,所以可以采用状态反馈来使系统稳定。通过设置不同的极点,可以得到不同的状态反馈矩阵,再通过比较不同输入下的响应曲线的响应速度和稳定性,可以得出一组较好的极点以及状态反馈矩阵。pole=[-1,-2,-3,-4];K=place(A,B,pole)A1=A-B*K;pole=[-3,-4,-5,-6];K=place(A,B,pole)A2=A-B*K;pole=[-8,-9,-10,-11];K
8、=place(A,B,pole)A3=A-B*K;Matlab计算程序:极点为[-1,-2,-3,-4]时:K1=[-4.3530-9.168880.540631.3573]极点为[-3,-4,-5,-6]时:K2=[-65.2954-62.1306321.1232124.8984]极点为[-8,-9,-10,-11]时:K3=[-1436.5-613.53121.3986.3]计算结果:极点配置2021/8/82.阶跃输入下的响应Matlab计算程序:sys1=ss(A1,B,C,D);cur