资源描述
目录
摘要 3
1.一阶倒立摆概述 4
1.1倒立摆起源和中国外发展现实状况 4
1.2倒立摆系统组成 5
1.3倒立摆分类: 5
1.4倒立摆控制方法: 5
1.5本文研究内容及安排 6
1.6系统内部各相关参数为: 6
2.一阶倒立摆数学模型建立 7
2.1概述 7
2.2数学模型建立 8
2.3一阶倒立摆状态空间模型: 11
2.4实际参数代入: 12
3.定量、定性分析系统性能 13
3.1,对系统稳定性进行分析 13
3.2 对系统稳定性进行分析: 15
4.状态反馈控制器设计 16
4.1反馈控制结构 16
4.2单输入极点配置 17
4.3利用MATLAB编写程序 20
5.系统仿真研究,校验和分析 22
5.1使用Matlab中SIMULINK仿真 22
6.设计状态观察器,讨论带有状态观察器状态反馈系统性能。 26
6.1观察器设计思绪: 26
6.2利用MATLAB进行编程 27
6.3状态观察器仿真 29
小结 32
参考文件: 33
摘要
倒立摆是进行控制理论研究经典试验平台。倒立摆也是机器人技术,控制理论,计算机控制等多个领域,多个技术有机结合,其被控系统本身又是一个绝对不稳定,多变量,强耦合非线性系统。能够作为一个经典被控对象对其进行研究。最初研究开始于二十世纪50年代,教授依据火箭发射助推器原理设计出一级倒立摆试验设备。多年来,新控制方法不停出现,大家试图经过倒立摆一个经典控制对象,检验新控制方法是否有较强处理多变量,非线性和绝对不稳定系统能力,从而从中找出好控制方法。
倒立摆不仅仅是一个优异教学试验仪器,同时也是进行控制理论研究理想试验平台。倒立摆研究不仅含有深刻理论意义,还相关键工程背景,在多个控制理论和方法研究中,尤其是在工程实践中,也存在一个可行性试验问题,使其理论和方法得到有效检验,倒立摆就能为此提供一个从理论通往实践桥梁,现在,对倒立摆研究也引发了中国外学者广泛关注,是控制领域热门课题之一。
1.一阶倒立摆概述
1.1倒立摆起源和中国外发展现实状况
倒立摆最初研究开始于二十世纪五十年代,麻省理工学院控制理论教授依据火箭助推器原理设计出来一级倒立摆试验设备。倒立摆作为一个经典不稳定,严重非线性例证被正式提出于二十世纪六十年代后期。中国,在倒立摆系统试验平台前后出现了多个控制算法。用状态空间法设计百分比微分控制器来实现单机倒立摆稳定控制;利用最优状态调整器实现双电机三集倒立摆实物控制;用变结构方法实现倒立摆控制。用神经网络自学习模糊控制器输入输出对比,引发其它学者关注,以后不停出现实时学习神经网络方法来控制倒立摆。
图1 一级倒立摆
1.2倒立摆系统组成
倒立摆系统由计算机,运动控制卡,伺服机构,传感器和倒立摆本体五部分组成。
1.3倒立摆分类:
1,依据摆杆数目标不一样,能够把倒立摆分为一级,二级和三级倒立摆等
2,依据摆杆间连接形式不一样,能够把倒立摆系统分为并联式倒立摆和串联式倒立摆;
3依据运动轨道不一样,能够把倒立摆系统分为倾斜轨道倒立摆和水平轨道倒立摆;
4依据控制电机不一样,能够把倒立摆分为多电机倒立摆和单电机倒立摆
5依据摆杆和小车连接方法不一样,能够把倒立摆分为刚性摆和柔性摆
6依据运动方法不一样,能够把倒立摆分为平面倒立摆,直线倒立摆和旋转倒立摆。
1.4倒立摆控制方法:
1)PID控制:该方法出现最早,首先是对倒立摆系统进行力学分析,并在牛顿定律基础上得到运动方程,然后在平衡点周围对其进行线性化求出传输函数,最终在要求系统特征方程应有全部左半平面根条件下,设计闭环系统控制器。
2)状态反馈控制:极点配置法是在动态特征和稳态特征全部满足条件下,将多变量闭环倒立摆系统极点配置在期望位置上,来设计状态反馈控制器
3)线性二次型最优控制(LQR)
LQR最优控制是经过寻求最好状态反馈控制规律使期望性能指标达成最小。
1.5本文研究内容及安排
倒立摆控制算法多个多样,多种方法全部有其各自领域及关键,经过算法比较,能够看出它们相互之间部分优缺点。
本课程设计被控对象采取固高企业生产GIP-100-L型一阶倒立摆系统,选择稳定控制算法中状态反馈极点配置设计,在分析了倒立摆受力情况后,建立理论模型,由此推倒出系统状态方程,而且对系统性能进行定量、定性分析。配制出理想极点,设计状态反馈控制器,使适当在小车上施加1N脉冲信号时,闭环系统响应满足性能指标要求。对设计系统进行仿真研究、校验和分析,设计状态观察器,讨论带有状态观察器状态反馈系统性能。
1.6系统内部各相关参数为:
小车质量 0.5 Kg ;摆杆质量0.2 Kg ;小车摩擦系数0.1 N/m/sec ; 摆杆转动轴心到杆质心长度0.3 m ;摆杆惯量0.006 kg*m*m ;采样时间0.005秒。
2.一阶倒立摆数学模型建立
2.1概述
倒立摆系统其本身是自不稳定系统,试验建模存在部分问题和困难,在忽略掉部分次要原因后,倒立摆系统是一个经典运动刚体系统,能够再惯性坐标系中利用经典力学对它进行分析,来建立系统动力学方程。
在忽略掉了空气阻力和多种摩擦力以后,能够讲一阶倒立摆系统抽象成小车和均匀杆组成系统,一阶倒立摆系统结构示意图以下:
图2 一阶倒立摆系统结构示意图
定义参数为: 小车质量
摆杆质量
小车摩擦系数
摆杆惯量
加在小车上力
小车位置
摆杆和垂直向上方向夹角
摆杆转动轴心到杆质心长度
摆杆和垂直向下方向夹角(摆杆初始位置为竖直向下)
得到小车和摆杆受力图:
图3 小车和摆杆受力图
2.2数学模型建立
利用牛顿定理分析受力得到下列方程:(2-1)
由摆杆水平方向受力进行分析能够得到下面等式:
(2-2)
求导得到:
(2-3)
代入第一个方程得到:
(2-4)
在摆杆垂直方向上协力进行分析得到方程:
(2-5)
即:
(2-6)
力矩平衡方程:
(2-7)
又因为为摆杆和垂直向下方向夹角(摆杆初始位置为竖直向下),为摆杆和垂直向上方向夹角,由和关系得合并这两个方程,约去 P和 N,得到第二个运动方程:
(2-8)
微分方程建立:
因为,假设φ <<1弧度,则能够进行近似处理:来实现线性化。
用上述近似进行线性化得直线一阶倒立摆微分方程为:
(2-9)
一阶倒立摆传输函数模型:
对上式进行拉普拉斯变换,得:
(2-10)
推导传输函数时假设初始条件为 0。
因为输出为角度φ,求解方程组第一个方程,可得:
(2-11)
或
(2-12)
假如令,则有:
(2-13)
把上式代入方程组(2-1)第二个方程,得:
(2-14)
整理后得到传输函数:
(2-15)
其中。
2.3一阶倒立摆状态空间模型:
设系统状态空间方程为:
(2-16)
方程组(2-9)对解代数方程,得到解以下:
(2-17)
整理后得到系统状态空间方程:
(2-18)
(2-19)
2.4实际参数代入:
GIP-100-L型一阶倒立摆系统,系统内部各相关参数为:
小车质量 0.5 Kg ;
摆杆质量0.2 Kg ;
小车摩擦系数0.1 N/m/sec ;
摆杆转动轴心到杆质心长度0.3 m ;
摆杆惯量0.006 kg*m*m ;
采样时间0.005秒。
将上述参数代入得实际模型:
摆杆角度和小车位移传输函数:
(2-20)
摆杆角度和小车所受外界作用力传输函数:
(2-21)
以外界作用力作为输入系统状态方程:
(2-22)
3.定量、定性分析系统性能
3.1,对系统稳定性进行分析
在MATLAB中运行以下程序:
A=[ 0 1 0 0; 0 -0.181818 2.672727 0; 0 0 0 1; 0 -0.454545 31.181818 0];
B=[ 0 1.818182 0 4.545455]';
C=[ 1 0 0 0; 0 0 1 0];
D=[ 0 0 ]';
[z,p,k]=ss2zp(A,B,C,D)
z =
-4.9497 0.0000 + 0.0000i
4.9497 0.0000 - 0.0000i
p =
0
-5.6041
-0.1428
5.5651
k =
1.8182
4.5455
>> impulse(A,B,C,D)
图4 系统脉冲响应
由图可得,系统在单位脉冲输入作用下,小车位移和摆杆角度全部是发散,同时,由以上程序零极点得极点有一个大于零,所以系统不稳定。
3.2 对系统稳定性进行分析:
A=[ 0 1 0 0; 0 -0.181818 2.672727 0; 0 0 0 1; 0 -0.454545 31.181818 0];
B=[ 0 1.818182 0 4.545455]';
C=[ 1 0 0 0; 0 0 1 0];
D=[ 0 0 ]';
>> Qc=ctrb(A,B);
>> Qo=obsv(A,C);
>> rank(Qc)
ans =
4
>> rank(Qo)
ans =
4
所以系统为完全能观察和完全能控。
4.状态反馈控制器设计
4.1反馈控制结构
设系统为,其中x,u,y分别为n维状态变量,m维输入向量和p维输出向量;A,B,C分别为n*n,n*m,p*n矩阵
当将系统控制量u取成状态变量线性函数u=v+Kx
称之为线性直接状态反馈,其中v为m维参考输入向量,K为m*n矩阵,成为反馈增益矩阵。
得到采取状态反馈后闭环系统状态空间方程为:
得出结论引入状态反馈后系统输出方程没有改变,状态反馈将开环系统方程式中系数矩阵A,变成了闭环系统状态方程中(A+BK),特征方程从变为了,能够看出状态反馈后闭环系统系统特征跟不仅和系统本身结构参数相关,而且和状态反馈增益矩阵K相关,正是利用这一点进行配置。
4.2单输入极点配置
控制系统品质很大程度上取决于系统闭环极点在复平面上位置,所以在对系统进行综合讨论是,往往给出一组期望极点,或依据时域指标提出一组期望极点,所谓极点配置问题就是经过对反馈增益矩阵设计,使闭环系统极点处于复平面所期望位置,以取得理想动态特征。
因为用状态反馈对系统进行极点配置只包含系统状态方程,和输出方程无关,所以设系统状态方程为
其中,是由n个复数组成集合,假如A中复数总是共轭成对出现,则称A为对称复数集合,对于任意对称复数集合,假如存在状态反馈
U=kx+v
其中,k为1*n常数阵,再次反馈作用下,闭环系统为
极点集合为A,即
责成系统用状态反馈能任意配置极点,k称为反馈增益阵
设计状态反馈控制器
设计要求:
当在小车上施加1N脉冲信号时,闭环系统响应指标为:
(1)稳定时间小于5秒
(2)稳态时摆杆和垂直方向夹角改变小于0.1 弧度
由得,.又因为
所以得到,
又因为配置极点,
所以得到期望闭环极点为:,
所以特征方程为:
由系统特征方程:
求变换阵T,因为,得到
于是依据公式有
所以得到变换矩阵T
所以得到
所以求得状态反馈增益为
K =[-2.5401 -4.3012 33.9233 6.0805]
所以所求状态反馈为
U=kx+v=[-2.54 -4.30 33.92 6.08]x+v
4.3利用MATLAB编写程序
A=[ 0 1 0 0; 0 -0.181818 2.672727 0; 0 0 0 1; 0 -0.454545 31.181818 0];
B=[ 0 1.818182 0 4.545455]';C=[ 1 0 0 0; 0 0 1 0];D=[ 0 0 ]';
J=[-9 0 0 0;0 -9 0 0;0 0 -1+0.63i 0;0 0 0 -1-0.63i];
pa=poly(A);pj=poly(J);
Qc=[B A*B A^2*B A^3*B];
F=[pa(4) pa(3) pa(2) 1;pa(3) pa(2) 1 0;pa(2) 1 0 0;1 0 0 0];
T=Qc*F
K=[pj(5)-pa(5) pj(4)-pa(4) pj(3)-pa(3) pj(2)-pa(2)]*inv(T)
Ac=[(A-B*K)];Bc=B;Cc=C;Dc=D;
sys=ss(Ac,Bc,Cc,Dc);
Tc=0:0.005:5;
[y,Tc,X]=impulse(sys,Tc);
plot(Tc,X(:,1),'--');hold on;
plot(Tc,X(:,2),'-.');hold on;
plot(Tc,X(:,3),':');hold on;
plot(Tc,X(:,4),'-')
legend('小车位置曲线','小车速度曲线','摆杆角度曲线','摆杆速度曲线')
T =
-44.5455 -0.0000 1.8182 0
-0.0000 -44.5455 -0.0000 1.8182
-0.0000 -0.0000 4.5455 0
-0.0000 -0.0000 -0.0000 4.5455
K =
-2.5401 -4.3012 33.9233 6.0805
图5 系统脉冲响应曲线
由上图能够看出,小车位置曲线在4S内能够很好回到平衡位置,在脉冲干扰情况下,小车摆杆角度改变小于0.1弧度,满足设计要求。
5.系统仿真研究,校验和分析
5.1使用Matlab中SIMULINK仿真
Simulink是MATLAB最关键组件之一,它提供一个动态系统建模、仿真和综合分析集成环境。在该环境中,无需大量书写程序,而只需要经过简单直观鼠标操作,就可结构出复杂系统。Simulink含有适应面广、结构和步骤清楚及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理复杂仿真和设计。同时有大量第三方软件和硬件可应用于或被要求应用于Simulink。
Simulink是MATLAB中一个可视化仿真工具, 是一个基于MATLAB框图设计环境,是实现动态系统建模、仿真和分析一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理建模和仿真中。Simulink能够用连续采样时间、离散采样时间或两种混合采样时间进行建模,它也支持多速率系统,也就是系统中不一样部分含有不一样采样速率。为了创建动态系统模型,Simulink提供了一个建立模型方块图图形用户接口(GUI) ,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一个愈加快捷、直接明了方法,而且用户能够立即看到系统仿真结果。 Simulink是用于动态系统和嵌入式系统多领域仿真和基于模型设计工具。对多种时变系统,包含通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、实施和测试。. 构架在Simulink基础之上其它产品扩展了Simulink多领域建模功效,也提供了用于设计、实施、验证和确定任务对应工具。Simulink和MATLAB紧密集成,能够直接访问MATLAB大量工具来进行算法研发、仿真分析和可视化、批处理脚本创建、建模环境定制和信号参数和测试数据定义。
图6 状态反馈控制器仿真图
图7 摆杆角度改变曲线
图8 小车位置曲线
图9 小车速度曲线
图10 摆杆速度曲线
采取状态反馈控制器后,系统性能达成了设计要求。系统能够在4S内达成稳定,摆杆摆动角度也小于0.1弧度。
6.设计状态观察器,讨论带有状态观察器状态反馈系统性能。
6.1观察器设计思绪:
状态观察器实质上是一个状态估量器,它是利用被控对象输入变量U和输出Y对系统状态x进行估量,从而处理一些状态变量不能直接测量难题。
考虑线性定常系统:结构状态观察器,输入是输出Y和输入U综合。
其输出为Z使,则Z能够作为X估量值,从而实现实状况态重构。
为了得到估量值Z,一个很自然想法是用模拟部件去再实现系统式,结构系统式模拟系统:
因为上式是结构,所以Z全部是可测量信息,若以Z去做为X估量值,则其估量误差为,则误差满足方程:
假如上式不稳定,则当,有z不能作为x估量值,所以上式不能作为一个观察器。所以采取方法利用输出估量误差Cz-y作为反馈,此时结构动态系统:
其中Kz反馈增益阵
估量误差ez方程为:
假如选择适宜Kz,使得上式稳定,则有,所以Z能够用为X估值,所以能够作为线性定常系统一个观察器。
6.2利用MATLAB进行编程
> A=[ 0 1 0 0; 0 -0.181818 2.672727 0; 0 0 0 1; 0 -0.454545 31.181818 0];
B=[ 0 1.818182 0 4.545455]';C=[ 1 0 0 0; 0 0 1 0];D=[ 0 0 ]';
b1=[1 0 0 0]';b2=[0 0 1 0]';E=[0 0 0 0];
Ac=A';Cc=B';Bc=C';Dc=0;
J=[ -2; -2; -3;-3];
[Z,P,K]=ss2zp(Ac,b2,Cc,Dc);
[num,den]=ss2tf(Ac,b2,Cc,Dc);
[num,denf]=zp2tf(Z,J,K);
Q=[b1,Ac*b1,b2,Ac*b2];
S=[0 0 0 0;0 1 0 0];
K1=S*inv(Q);
T=[0 0 0 1]*inv(Q);
K11=den(:,5)-denf(:,5);
K12=den(:,4)-denf(:,4);
K13=den(:,3)-denf(:,3);
K14=den(:,2)-denf(:,2);
Ky=[K11 K12 K13 K14];
A1=Ac+Bc*K1;
Tc=[T;T*A1;T*A1^2;T*A1^3];
K=Ky*Tc;
Kc=K1+[K;E];
Kz=-Kc'
Az=A-Kz*C
Kz =
1.0e+003 *
0.0361 0
0.2439 -0.0010
0.3706 0
2.1456 0
Az =
1.0e+003 *
-0.0361 0.0010 0 0
-0.2439 -0.0002 0.0037 0
-0.3706 0 0 0.0010
-2.1456 -0.0005 0.0312 0
6.3状态观察器仿真
图11 全维状态观察器系统仿真图
图12 摆杆角度曲线
图13 小车位置曲线
图14 状态观察器摆杆曲线
图15 小车位置曲线
如上图所表示,所设计状态观察器小车位置曲线和摆杆曲线几乎一样,所以状态观察器观察性能达成要求,所以能够利用状态观察器来观察系统性能。
小结
此次课程设计我们完成了一级倒立摆系统状态反馈极点配置设计。经过对一级倒立摆系统建模,实现了系统传输函数和状态空间方程,而且对系统稳定性,能控能观性进行了分析。再设计状态反馈控制器使适当在小车上施加1N脉冲信号时,闭环系统响应满足性能指标要求并完成仿真,设计状态观察器。
这次课程设计中不仅检验了我所学习知识,也培养了我怎样去把握一件事情,在设计过程中,和同学分工设计,和同学们相互探讨,相互学习,使我学习了团体合作和独立完成精神。
课程设计是我们专业课程知识综合应用实践训练,这是我们迈向社会,从事职业工作前一个必不少过程综合。利用本专业所学课程理论和生产实际知识来独立完成此次课程设计。
参考文件:
【1】现代控制理论基础 北京大学出版社
【2】自动控制原理 清华大学出版社
【3】MATLAB程序设计和应用(第二版)
【4】现代控制理论及其MATAB实践
展开阅读全文