直线一级摆的极点配置及仿真.docx
- 文档编号:8188891
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:20
- 大小:397.07KB
直线一级摆的极点配置及仿真.docx
《直线一级摆的极点配置及仿真.docx》由会员分享,可在线阅读,更多相关《直线一级摆的极点配置及仿真.docx(20页珍藏版)》请在冰豆网上搜索。
直线一级摆的极点配置及仿真
内蒙古科技大学
控制系统仿真课程设计说明书
题目:
直线一级摆的极点配置及仿真
学生姓名:
张琳
学号:
0967112337
专业:
测控技术与仪器
班级:
09测控3班
指导教师:
张勇
摘要
倒立摆是进行控制理论研究的典型试验平台。
由于倒立摆系统本身所具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人员一直将他视为典型的研究对象,不断从中发掘出系的控制策略和控制方法,相关的科研成果在航天科技和机器人方面获得了广阔的应用。
对于倒立摆系统,由于其本身是自不稳定的系统,实验建模存在一定的困难。
但忽略一些次要因素,倒立摆系统可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。
此设计利用牛顿—欧拉方法建立直线型一级倒立摆系统的数学模型。
在分析的基础上,基于状态反馈控制中极点配置法对直线型倒立摆系统设计控制器。
由MATLAB仿真表明采用的控制策略是有效的,设计的控制器对直线型一级倒立摆系统的平衡稳定性效果好,提高了系统的干扰能力。
关键词:
倒立摆、极点配置、MATLAB仿真
目录
摘要1
第一章MATLAB简介2
1.1MATLAB简介2
1.1Simulink简介3
第二章直线一级倒立摆3
2.1一级倒立摆简介3
第三章数学模型的建立4
3.1数学模型的建立5
3.1.1微分方程的数学模型5
3.1.2状态空间数学模型7
3.2系统稳定性分析9
3.3系统可控性分析10
第四章状态空间极点配置12
4.1状态空间分析12
4.2状态空间极点配置及仿真13
第五章仿真验证18
5.1Simulink仿真18
第六章总结22
参考文献23
第一章MATLAB简介
1.1MATLAB简介
MATLAB的名称源自MatrixLaboratory,它是一种科学计算软件,专门以矩阵的形式处理数据。
MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作,而且利用MATLAB产品的开放式结构,可以非常容易地对MATLAB的功能进行扩充,从而在不断深化对问题认识的同时,不断完善MATLAB产品以提高产品自身的竞争能力。
MATLAB是MATLAB产品家族的基础,它提供了基本的数学算法,例如矩阵运算、数值分析算法,MATLAB集成了2D和3D图形功能,以完成相应数值可视化的工作,并且提供了一种交互式的高级编程语言——M语言,利用M语言可以通过编写脚本或者函数文件实现用户自己的算法。
MATLABCompiler是一种编译工具,它能够将那些利用MATLAB提供的编程语言——M语言编写的函数文件编译生成为函数库、可执行文件、COM组件等等,这样就可以扩展MATLAB功能,使MATLAB能够同其他高级编程语言例如C/C++语言进行混合应用,取长补短,以提高程序的运行效率,丰富程序开发的手段[1]。
利用M语言还开发了相应的MATLAB专业工具箱函数供用户直接使用。
这些工具箱应用的算法是开放的可扩展的,用户不仅可以查看其中的算法,还可以针对一些算法进行修改,甚至允许开发自己的算法扩充工具箱的功能。
目前MATLAB产品的工具箱有四十多个,分别涵盖了数据采集、科学计算、控制系统设计与分析、数字信号处理、数字图像处理、金融财务分析以及生物遗传工程等专业领域。
1.1Simulink简介
是基于MATLAB的框图设计环境,可以用来对各种动态系统进行建模、分析和仿真,它的建模范围广泛,可以针对任何能够用数学来描述的系统进行建模,例如航空航天动力学系统、卫星控制制导系统、通讯系统、船舶及汽车动力学系统等等,其中包括连续、离散,条件执行,事件驱动,单速率、多速率和混杂系统等等。
Simulink提供了利用鼠标拖放的方法建立系统框图模型的图形界面,而且Simulink还提供了丰富的功能块以及不同的专业模块集合,利用Simulink几乎可以做到不书写一行代码完成整个动态系统的建模工作[2]。
第二章直线一级倒立摆
2.1一级倒立摆简介
倒立摆是进行控制理论研究的典型实验平台。
倒立摆是机器人技术、控制理论、计算机控制等多个领域、多种技术的有机结合,其被控系统本身又是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象对其进行研究。
最初研究开始于二十世纪50年代,麻省理工学院(MIT)的控制论专家根据火箭发射助推器原理设计出一级倒立摆实验设备。
近年来,新的控制方法不断出现,人们试图通过倒立摆这样一个典型的控制对象,检验新的控制方法是否有较强的处理多变量、非线性和绝对不稳定系统的能力,从而从中找出最优秀的控制方法。
图2.1一级倒立摆系统
倒立摆系统作为控制理论研究中的一种比较理想的实验手段,为自动控制理论的教学、实验和科研构建一个良好的实验平台,以用来检验某种控制理论或方法的典型方案,促进了控制系统新理论、新思想的发展。
由于控制理论的广泛应用,由此系统研究产生的方法和技术将在半导体及精密仪器加工、机器人控制技术、人工智能、导弹拦截控制系统、航空对接控制技术、火箭发射中的垂直度控制、卫星飞行中的姿态控制和一般工业应用等方面具有广阔的利用开发前景。
平面倒立摆可以比较真实的模拟火箭的飞行控制和步行机器人的稳定控制等方面的研究。
第三章数学模型的建立
倒立摆系统其本身是自不稳定的系统,实验建模存在着一定的困难。
在忽略掉一些次要的因素之后,倒立摆系统就是一典型的运动的刚体系统,可以在惯性坐标系中应用经典力学理论建立系统动力学方程。
下面采用牛顿-欧拉方法建立直线型一级倒立摆系统的数学模型。
3.1数学模型的建立
3.1.1微分方程的数学模型
在忽略了空气阻力和各种摩擦力之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图1所示:
图3.1直线一级倒立摆模型
设系统的相关参数定义如下:
M:
小车质量
m:
摆杆质量
b:
小车摩擦系数
l:
摆杆转动轴心到杆质心的长度
I:
摆杆质量
F:
加在小车上的力
x:
小车位置
Φ:
摆杆与垂直方向上方向的夹角
θ:
摆杆与垂直方向下方向的夹角(摆杆的初始位置为竖直向下)
如下图2所示为小车和摆杆的受力分析图。
其中,N和P为小车与摆杆相互作用力的水平和垂直方向的分量。
图3.2小车和摆杆受力分析图
应用牛顿方法来建立系统的动力学方程过程如下:
分析小车水平方向所受的合力,可以得到以下的方程:
(1)
由摆杆水平方向的受力进行分析可以得到下面的等式:
即
(2)
将此等式代入上述等式中,可以得到系统的第一个运动方程:
(3)
为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面的方程:
(4)
(5)
力矩平衡方程如下:
(6)
注意:
此方程中力矩的方向,由于
(7)
故等式前面有负号。
合并这两个方程,约去P和N,得到第二个运动方程:
(8)
设θ=π+φ,当摆杆与垂直向上方向之间的夹角φ与1(单位是弧度)相比很小时,即Φ<<1时,则可以进行如下近似处理:
(9)
用u代表被控对象的输入力F,线性化后得到该系统数学模型的微分方程表达式:
(10)
3.1.2状态空间数学模型
控制系统的状态空间方程可写成如下形式:
(11)
解代数方程可得如下解:
(12)
整理后可得系统的状态空间方程:
(13)
对于质量均匀分布的摆杆,其转动惯量为:
(14)
代入微分方程模型中得:
(15)
化简后可得:
(16)
设
则有:
(17)
以小车加速度为控制量,摆杆角度为被控对象,此时系统的传递函数为:
(18)
摆杆质量m
摆杆长度L
摆杆转轴导到质心长度l
重力加速度g
0.111kg
0.40m
0.20m
9.81m/
表3.1直线一级倒立摆实际系统的物理参数
将这些参数带入上面的状态方程得到系统精确模型。
系统状态空间方程:
(19)
系统传递函数:
(20)
3.2系统稳定性分析
上面已经得到系统的状态方程式,对其进行阶跃响应分析,在MATLAB指令区中键入以下命令:
>>clear;
A=[0100;0000;0001;0036.90];
B=[0;1;0;3.75];
C=[1000;0100];
D=[0;0];
Step(A,B,C,D)
曲线如下图所示。
图3.3系统单位阶跃响应仿真曲线
可以看出,在单位阶跃响应作用下,小车位置和摆杆角度都是发散的。
即系统是不稳定的。
3.3系统可控性分析
对于连续时间系统:
系统状态完全可控的条件为:
当且仅当向量组B,AB,
B…
B是线性无关的,或n×n维矩阵:
(21)
的秩为n。
系统的输出可控性的条件为:
当且仅当矩阵:
(22)
的秩等于输出向量y的维数。
应用以上原理对系统进行可控性分析。
由(17)式可以得到:
将矩阵A,B,C,D分别代入(21)式和(22)式中,并在MATLAB中计算对应的秩。
MATBLAB计算过程如下:
>>clearl;
A=[0100;0000;0001;0029.40];
B=[0;1;0;3];
C=[1000;0100];
D=[0;0];
cona=[BA*BA^2*BA^3*B];
cona2=[C*BC*A*BC*A^2*BC*A^3*BD];
rank(cona)
rank(cona2)
ans=
4
ans=
2
可以看出,系统的状态完全可控性矩阵的秩等于系统的状态变量维数,系统的输出完全可控性矩阵的秩等于系统输出向量y的维数,所以系统可控,因此可以对系统进行控制器的设计,使系统稳定。
对于以外界作用力作为输入的系统状态方程的可控性分析,可以按上述方法自行计算。
第四章状态空间极点配置
经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型,现代控制理论主要是依据现代数学工具,将经典控制理论的概念扩展到多输入多输出系统。
极点配置法通过设计状态反馈控制器将多变量系统的闭环系统极点配置在期望的位置上,从而使系统满足瞬态和稳态性能指标。
前面我们已经得到了倒立摆系统的比较精确的动力学模型,下面我们
针对直线型一级倒立摆系统应用极点配置法设计控制器。
4.1状态空间分析
对于控制系统:
式中:
—状态向量(n维);
U—控制向量;
A—n×n常数矩阵;
B—n×1常数矩阵;
选择控制信号为:
u=—KX求解上式,得到:
方程的解为:
图4.1系统方框图
可以看出,如果系统状态完全可控,K选择适当,对于任意的初始状态,当t趋于无穷时,都可以使x趋于0。
极点配置设计步骤:
1.检验系统的可控性条件;
2.从矩阵A的特征多项式
来确定
的值;
3.确定使状态方程变为可控标准型的变换矩阵T:
T=MW
其中M为了空性矩阵,
4.利用所期望的特征值,写出期望的多项式:
并确定
的值。
5.需要的状态反馈增益矩阵K由以下方程确定:
4.2状态空间极点配置及仿真
前面我们已经得到了直线一级倒立摆的状态空间模型,以小车加速度作为输入的系统状态方程为:
即
对于如上所述的系统,设计控制器,要求系统具有较短的调整时间(约3
秒)和合适的阻尼(阻尼比0.8)。
下面采用极点配置的方法计算反馈矩阵。
1、检验系统可控性,由系统可控性分析可以得到,系统的状态完全可控性矩阵
的秩等于系统的状态维数4,系统的输出完全可控性矩阵的秩等于系统输出向量
的维数2,所以系统可控。
2、计算特征值
根据要求,并留有一定的裕量(设调整时间为2秒),我们选取期望的闭环极点
其中
=-50,
=-50,
=
=
是一对具有
的主导极点,
,
位于主导极点的左侧,因此其影响较小,因此期望的特征方程为:
有系统的特征方程:
因此有
。
系统的反馈增益矩阵为:
3、确定使状态方程变为可控标准型的变换矩阵T:
T=MW
其中:
所以:
得到控制量:
以上计算可以采用MATLAB编程计算,计算程序如下:
>>clear;
A=[0100;0000;0001;0036.90];
B=[0103.75]';
C=[1000;0010];
D=[00]';
J=[-50000;0-5000;00-1-1.5*sqrt(3)*i0;000-1+1.5*sqrt(3)*i];
pa=poly(A);pj=poly(J);
M=[BA*BA^2*BA^3*B];
W=[pa(4)pa(3)pa
(2)1;pa(3)pa
(2)10;pa
(2)100;1000];
T=M*W
K=[pj(5)-pa(5)pj(4)-pa(4)pj(3)-pa(3)pj
(2)-pa
(2)]*inv(T)
运行结果如下:
T=
-36.9000-0.00001.00000
0-36.9000-0.00001.0000
0-0.00003.75000
-0.00000-0.00003.7500
K=
-525.0678-156.5041871.924768.9344
第五章仿真验证
5.1Simulink仿真
在MATLABSimulink下对系统进行仿真,模型如下图所示:
图5.1直线一级倒立摆极点配置控制仿真模型
双击“State-Space”模块打开直线一级倒立摆的模型设置窗口如下:
图5.2系统状态空间模型输入窗口
把参数A,B,C,D的值设置为实际系统模型的值,双击“Pole-Configuration”模块打开极点配置控制器参数的设置窗口:
图5.3反馈增益矩阵输入窗口
把上面计算得到的反馈增益矩阵K输入到Gain中,设置好各项参数后,点击“
”运行仿真,得到仿真结果:
图5.4直线一级倒立摆极点配置控制仿真图
可以看出,在存在干扰的情况下,系统在2秒内基本上可以恢复到新的平衡位置,但超调量不满足10%以下的要求。
需要对级点进行重新调整,K=[-525.0678-156.5041871.924768.9344],调整后极点配置控制器参数的设置窗口如下:
图5.5反馈增益矩阵输入窗口
设置好各项参数后,点击“”运行仿真,得到仿真结果:
图5.6直线一级倒立摆极点配置控制仿真图
可以看出,在存在干扰的情况下,系统在2秒内基本上可以恢复到新的平衡位置,稳态误差满足系统要求,且超调量为8%左右。
第六章总结
两周的课程设计,其内容是针对直线一阶倒立摆建立控制系统模型,根据技术参数和指标要求对系统进行极点配置控制器的设计。
通过本次设计使我对MATLAB软件和Simulink有了一个初步的认识和理解。
在实践中深切体会到很多平时上课遇不到的问题及其解决方法,增强了自己的实践操作能力。
在本次课程设计中,我还深刻感受到自己很多地方的不足,例如基础知识掌握不扎实,参数调试不够熟练等等,在以后的学习过程中力求不断提高。
最后,感谢张勇老师对我的悉心帮助与指导和帮助。
参考文献
[1]于长官,现代控制理论[第3版].哈尔滨工业大学出版社,2005.[2]郭钊侠,方建安,苗清影.倒立摆系统及其智能控制研究[J].东华大学学报,2003,29
(2):
122—126.[3]刘豹.现代控制理论[M].北京:
机械工业出版社,2005.[4]王正林,王胜开.MATLAB/Simulink与控制系统仿真[M].北京:
电子工业出版社,2005.[5]段学超,仇原鹰,段宝岩,等.平面倒立摆自适应滑模模糊控制[J].控制与决策,2007.22(7):
774—777.[6]郑科,徐建明,俞立.基于T—S模型的倒立摆最优保性能模糊控制[J].控制理论与应用,2004,21(5),703—708.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 直线 一级 极点 配置 仿真
![提示](https://static.bdocx.com/images/bang_tan.gif)