您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 一级倒立摆的Simulink仿真
单级倒立摆稳定控制直线一级倒立摆系统在忽略了空气阻力及各种摩擦之后,可抽象成小车和匀质摆杆组成的系统,如图1所示。mg杆长为2u图1直线一级倒立摆系统图2控制系统结构假设小车质量M=0.5kg,匀质摆杆质量m=0.2kg,摆杆长度2l=0.6m,x(t)为小车的水平位移,θ为摆杆的角位移,2/8.9smg。控制的目标是通过外力u(t)使得摆直立向上(即0)(t)。该系统的非线性模型为:umlxmMmlmglxmlmlJ22)sin()()cos(sin)cos()(,其中231mlJ。解:一、非线性模型线性化及建立状态空间模型因为在工作点附近(0,0)对系统进行线性化,所以可以做如下线性化处理:32sin,cos13!2!当θ很小时,由cosθ、sinθ的幂级数展开式可知,忽略高次项后,可得cosθ≈1,sinθ≈θ,θ’^2≈0;因此模型线性化后如下:(J+ml^2)θ’’+mlx’’=mglθ(a)mlθ’’+(M+m)x’’=u(b)其中231mlJ取系统的状态变量为,,,,4321xxxxxx输出Txy][包括小车位移和摆杆的角位移.即X=4321xxxx=''xxY=x=31xx由线性化后运动方程组得X1’=x’=x2x2’=x’’=mmMmg3)(43x3+mmM3)(44uX3’=θ’=x4x4’=θ’’=mllmMgmM3)(4)(3x3+mllmM3)(43u故空间状态方程如下:X’='4'3'2'1xxxx=03)(4)(300100003)(43000010mllmMgmMmmMmg4321xxxx+mllmMmmM3)(4303)(440uX’='4'3'2'1xxxx=01818.3100100006727.20000104321xxxx+5455.408182.10uY=31xx=010000014321xxxx二、通过Matlab仿真判断系统的可控与可观性,并说明其物理意义。(1)判断可控性代码:A=[0100;00-2.6270;0001;0031.18180];B=[0;1.8182;0;-4.5455];P=ctrb(A,B);n=rank(P);运行了得n=4所以P为满秩,系统能控(2)判断可观性代码:A=[0100;00-2.6270;0001;0031.18180];B=[0;1.8182;0;-4.5455];C=[1000;0010];P=obsv(A,C);n=rank(P);运行了得n=4所以P为满秩,系统能观。三、能否通过状态反馈任意配置系统的极点?若能,通过Matlab仿真确定反馈控制规律K(如图2),使得闭环极点配置在j1,2,14.321上。并给出系统在施加一个单位脉冲输入时状态响应曲线;答:因为系统完全能控,所以能通过状态反馈任意配置系统的极点。要将闭环极点配置在j1,2,14.321上,所以期望特征方程为|I—(A-BK)|=()*(+2)*((+1)^2+1)=^4+5^3+10^2++4Matlab求解K如下:A=[0100;00-2.6270;0001;0031.18180];B=[0;1.8182;0;-4.5455];J=[-1-2-1+i-1-i];K=place(A,B,J);运行得:K=[-0.089378-0.22345-9.0957-1.1894];未加入极点配置。仿真图:未进行极点配置仿真电路图(1)X的响应图:Θ的响应图:配置后:加入极点配置仿真图(2)X的响应图:Θ的响应图:四、用MatLab中的lqr函数,可以得到最优控制器对应的K。要求用LQR控制算法控制倒立摆摆动至竖直状态,并可以控制倒立摆左移和右移;欲对系统进行最优状态反馈设计,及小化性能指标为:J=∫[]dt编写matalab程序如下:A=[0100;00-2.6270;0001;0031.18180];B=[0;1.8182;0;-4.5455];C=[1000;0010];D=[0;0]x=1;y=1;Q=[x000;0000;00y0;0000];R=1;G=lqr(A,B,Q,R);A1=[(A-B*G)];B1=[B];C1=[C];D1=[D];t=0:0.01:5;U=zeros(size(t));x0=[0.100.10];[Y,X]=lsim(A1,B1,C1,D1,U,t,x0);plot(t,Y);legend('小车','倒立摆');运行可得:G=[-1-1.5495-18.68-3.4559]由图分析可得调节时间很长,所以增加Q的比重,将上程序中的x,y改为x=150,y=150.运行可得:G=[-12.247-9.3413-41.934-7.7732]比较可得,控制效果明显改善。但反馈增益变大,意味着控制作用变强,消耗能量变大。将G放入系统中,进行simulink仿真可得:仿真电路图:仿真结果:X的响应图:Θ的响应图:五、写出本次仿真实验的心得体会。本实验,从数学建模到仿真系统的搭建,再到加进控制环节进行实时控制,最后得出结果的过程中,参考了大量的资料,通过对比整合,设计出了适合自己的一套实验方法:倒立摆数学模型推导部分:首先用线性化数学模型,接着用动态系统空间状态方程法导出状态方程系数矩阵,然后用MATLAB对系统进行可控可观判断及进行几点配置,加入配置后在Simulink软件上进行系统仿真。最后通过matlab求解线性二次型最优控制的G矩阵,然后加入形同进行Simulink仿真。通过本实验,掌握了倒立摆仿真的整个过程,熟悉了MATLAB的仿真软件Simulink的使用,也对系统控制有了较好的理解。通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并激发了良好的关于系统控制方面的学习兴趣。除此之外,通过本次大作业,让我学会了很多word的操作,在此基础上,相信在以后的学习将会有较大帮助。
本文标题:一级倒立摆的Simulink仿真
链接地址:https://www.777doc.com/doc-5414558 .html