基于某一阶倒立摆地matlab仿真实验.docx
《基于某一阶倒立摆地matlab仿真实验.docx》由会员分享,可在线阅读,更多相关《基于某一阶倒立摆地matlab仿真实验.docx(16页珍藏版)》请在冰豆网上搜索。
基于某一阶倒立摆地matlab仿真实验
成都理工大学工程技术学院
基于一阶倒立摆的matlab仿真实验
实验人员:
-------
-------
学号:
--------
---------
实验日期:
20150618
摘要
本文主要研究的是一级倒立摆的控制问题,并对其参数进行了优化。
倒立摆是典型的快速、多变量、非线性、强耦合、自然不稳定系统。
由于在实际中有很多这样的系统,因此对它的研究在理论上和方法论上均有深远的意义。
本文首先简单的介绍了一下倒立摆以及倒立摆的控制方法,并对其参数优化算法做了分类介绍。
然后,介绍了本文选用的优化参数的状态空间极点的配置和PID控制。
接着建立了一级倒立摆的数学模型,并求出其状态空间描述。
本文着重讲述的是利用状态空间中极点配置实现方法。
最后,用Simulink对系统进行了仿真,得出在实际控制中是两种比较好的控制方法。
Abstract
Thispapermainlystudiestheleveloftheinvertedpendulumcontrolproblem,anditsparametersareoptimized.Invertedpendulumisatypicalrapid,multi-variable,nonlinear,strongcoupling,naturalunstablesystem.Inpractice,however,becausetherearealotofsuchasystem,sothestudyofitintheoryandmethodologyhaveprofoundsignificance.Thisarticlefirstintroducedtheinvertedpendulum,andsimpleoftheinvertedpendulumcontrolmethod,madeaclassificationandtheparameteroptimizationalgorithmisintroduced.Andthen,introducedinthispaper,choosetheoptimizationoftheparametersofstatespacepoleconfigurationandPIDcontrol.Thensetupthelevelofthemathematicalmodelofinvertedpendulum,andfindoutthestatespacedescription.Thispaperfocusesonthepoleassignmentmethodistheuseofstatespace.Finally,thesystemaresimulatedusingSimulink,itisconcludedthatintheactualcontrolistwogoodcontrolmethod.Thispapermainlystudiestheleveloftheinvertedpendulumcontrolproblem,anditsparametersareoptimized.Invertedpendulumisatypicalrapid,multi-variable,nonlinear,strongcoupling,naturalunstablesystem.Inpractice,however,becausetherearealotofsuchasystem,sothestudyofitintheoryandmethodologyhaveprofoundsignificance.Thisarticlefirstintroducedtheinvertedpendulum,andsimpleoftheinvertedpendulumcontrolmethod,madeaclassificationandtheparameteroptimizationalgorithmisintroduced.Andthen,introducedinthispaper,choosetheoptimizationoftheparametersofstatespacepoleconfigurationandPIDcontrol.Thensetupthelevelofthemathematicalmodelofinvertedpendulum,andfindoutthestatespacedescription.Thispaperfocusesonthepoleassignmentmethodistheuseofstatespace.Finally,thesystemaresimulatedusingSimulink,itisconcludedthatintheactualcontrolistwogoodcontrolmethod.
1引言
1.1倒立摆介绍以及应用
倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。
对倒立摆系统的研究能有效的反映控制中的许多典型问题:
如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。
通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。
通过对它的研究不仅可以解决控制中的理论和技术实现问题,还能将控制理论涉及的主要基础学科:
力学,数学和计算机科学进行有机的综合应用。
其控制方法和思路无论对理论或实际的过程控制都有很好的启迪,是检验各种控制理论和方法的有效的“试金石”。
倒立摆的研究不仅有其深刻的理论意义,还有重要的工程背景。
在多种控制理论与方法的研究与应用中,特别是在工程实践中,也存在一种可行性的实验问题,使其理论与方法得到有效检验,倒立摆就能为此提供一个从理论通往实践的桥梁,目前,对倒立摆的研究已经引起国内外学者的广泛关注,是控制领域研究的热门课题之一。
倒立摆不仅仅是一种优秀的教学实验仪器,同时也是进行控制理论研究的理想实验平台。
由于倒立摆系统本身具有的高阶次、不稳定、多变量、非线性和强耦合特性,许多现代控制理论的研究人员一直将它视为典型的研究对象,不断从中发掘出新的控制策略和控制方法,相关的科研成果在航天科技和机器人学方面获得了广阔的应用。
二十世纪九十年代以来,更加复杂多种形式的倒立摆系统成为控制理论研究领域的热点,每年在专业杂志上都有大量的优秀论文出现。
因此,倒立摆系统在控制理论研究中是一种较为理想的实验装置。
倒立摆主要应用在以下几个方面:
(1)机器人的站立与行走类似于双倒立摆系统,尽管第一台机器人在美国问世至今已有三
十年的历史,机器人的关键技术--机器人的行走控制至今仍未能很好解决。
(2)在火箭等飞行器的飞行过程中,为了保持其正确的姿态,要不断进行实时控制。
(3)通信卫星在预先计算好的轨道和确定的位置上运行的同时,要保持其稳定的姿态,使卫星天线一直指向地球,使它的太阳能电池板一直指向太阳。
(4)侦察卫星中摄像机的轻微抖动会对摄像的图像质量产生很大的影响,为了提高摄像的质量,必须能自动地保持伺服云台的稳定,消除震动。
(5)为防止单级火箭在拐弯时断裂而诞生的柔性火箭(多级火箭),其飞行姿态的控制也可
以用多级倒立摆系统进行研究。
由于倒立摆系统与双足机器人、火箭飞行控制和各类伺服云台稳定有很大相似性,因此对倒立摆控制机理的研究具有重要的理论和实践意义。
1.2倒立摆的控制方法
倒立摆有多种控制方法。
对倒立摆这样的一个典型被控对象进行研究,无论在理论上和方法上都具有重要意义。
不仅由于其级数增加而产生的控制难度是对人类控制能力的有力挑战,更重要的是实现其控制稳定的过程中不断发现新的控制方法,探索新的控制理论,并进而将新的控制方法应用到更广泛的受控对象中。
当前,倒立摆的控制方法可分为以下几类:
(1)线性理论控制方法
将倒立摆系统的非线性模型进行近似线性化处理,获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法,得到期望的控制器。
PID控制、状态反馈控制、能量控制]、LQR控制算法是其典型代表。
(2)预测控制和变结构控制方法
预测控制:
是一种优化控制方法,强调的是模型的功能而不是结构。
变结构控制:
是一种非连续控制,可将控制对象从任意位置控制到滑动曲面上仍然保持系统的稳定性和鲁棒性,但是系统存在颤抖。
预测控制、变结构控制和自适应控制在理论上有较好的控制效果,但由于控制方法复杂,成本也高,不易在快速变化的系统上实时实现
2单级倒立摆数学模型的建立
在忽略了空气流动,各种摩擦之后,可将倒立摆系统抽象成小车和匀质杆组成的系统,如下图1所示
图1单级倒立摆模型示意图
那我们在本实验中定义如下变量:
M小车质量(本实验系统1.096Kg)
m摆杆质量(本实验系统0.109Kg)
b小车摩擦系数(本实验系统0.1N/m/sec)
l摆杆转动轴心到杆质心的长度(0.25m)
I摆杆惯量(0.0034kg*m*m)
F加在小车上的力
x小车位置
φ摆杆与垂直向上方向的夹角
θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)
下面我们对这个系统作一下受力分析。
下图2是系统中小车和摆杆的受力分析图。
其中,
和
为小车与摆杆相互作用力的水平和垂直方向的分量。
注意:
在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图,图示方向为矢量正方向。
图2倒立摆模型受力分析
分析小车水平方向所受的合力,可以得到等式:
应用Newton方法来建立系统的动力学方程过程如下:
分析小车水平方向所受的合力,可以得到以下方程:
由摆杆水平方向的受力进行分析可以得到下面等式:
即
把这个等式代入上式中,就得到系统的第一个运动方程:
(1)
为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:
力矩平衡方程如下:
注意:
此方程中力矩的方向,由于
,故等式前面有负号。
合并这两个方程,约去
和
,由
得到第二个运动方程:
(2)
设
(
是摆杆与垂直向上方向之间的夹角),假设
与1(单位是弧度)相比很小,即
《1,则可以进行近似处理:
,
,
。
用
来代表被控对象的输入力
,线性化后两个运动方程如下:
(3)
2.1传递函数
对方程组(3)进行拉普拉斯变换,得到
(4)
注意:
推导传递函数时假设初始条件为0。
由于输出为角度
,求解方程组(4)的第一个方程,可以得到
把上式代入方程组(4)的第二个方程,得到
整理后得到传递函数:
其中
2.2状态空间方程
系统状态空间方程为
方程组(3)对
解代数方程,得到解如下:
整理后得到系统状态空间方程:
带入参数可得系统的状态空间方程:
3系统Matlab仿真和开环响应
系统开环稳定性分析
num=[2.3565500];
den=[10.088167-27.9169-2.30942];
sys=tf(num,den)
[z,p,k]=tf2zp(num,den);
step(sys)%阶跃响应曲线:
gridon
阶跃响应曲线
rlocus(sys)%根轨迹
根轨迹
bode(sys)%波特图
[A,B,C,D]=tf2ss(num,den);
Q=ctrb(A,B)
rank(Q)%系统能控性分析
Q=
1.0000-0.088227.9247
01.0000-0.0882
001.0000
ans=
3
由得到的rank(Q)的值可知,原系统的能控性矩阵为3,所以我们可知原系统是不能控的。
m=obsv(A,C)
rank(m)
m=
2.356500
-0.207865.78765.4423
65.8059-0.3580-0.4798
ans=
3
由得到的rank(m)的值可知,原系统的能观性矩阵为3,所以我们可知原系统是能观的。
eig(A)
ans=
5.2810
-5.2864
-0.0827
由eig(A)的值可知系统是不稳定的。
4系统设计
4.1极点配置与控制器的设计
采用极点配置法设计多输出的倒立摆系统的控制方案。
可以用完全状态反馈来解决,控制摆杆和小车的位置。
设计状态反馈阵时,要使系统的极点设计成两个主导极点和两个非主导极点,用二阶系统的分析方法确定参数。
根据系统性能要求:
最大超调量10%,调节时间为1s
运用超调量计算公式:
得到
得到两个主导极点为:
选取两个非主导极点:
根据MATLAB求取状态增益矩阵,程序如下:
a=[0100
0-0.08831670.6293170
0001
0-0.2365527.82850];
b=[0
0.883167
0
2.35655];
p=[-4+4.33j-6-4.33j-20-20];
k=acker(a,b,p)
k=
-740.4267-247.3685646.9576113.8866
4.2系统仿真:
根据状态空间表达式建立一阶倒立摆SimuLink仿真图,如下:
4.3仿真结果
系统仿真图(位置,速度,角度,角速度)
根轨迹
4.4根据传递函数设计第二种控制方法-----PID串级控制
PID控制器系统框图:
经过几次参数调试得出Kp=300,Ki=200,Kd=20满足性能要求,其仿真图形如下:
5结论
本次设计主要通过PID串级控制和状态空间极点配置的方法对直线一级倒立摆进行校正,通过此次课程,掌握MATLAB的基本使用方法。
在课程设计过程中,培养了团队协作能力,刻苦钻研以及编程能力,为今后的学习工作打下了良好的基础。
经过这次课程,是我受益匪浅。
第1、学会了如何运用自己所学的知识结合实践
第2、硬件最然需要不断尝试,但不是盲目的调试,而是需要有理论作为指导,指明调整的方向,这样设计系统就会事半功倍。
第3、Matlab等工具软件的使用也大大提高了设计系统的速度。
这些都是试验中珍贵的收获。
最后再一次感谢老师的耐心讲解与精心的教诲,让我渡过难关,顺利完成实验。