倒立摆系统技术报告(共31页).doc

上传人:飞****2 文档编号:14089429 上传时间:2022-05-02 格式:DOC 页数:31 大小:246.50KB
返回 下载 相关 举报
倒立摆系统技术报告(共31页).doc_第1页
第1页 / 共31页
倒立摆系统技术报告(共31页).doc_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《倒立摆系统技术报告(共31页).doc》由会员分享,可在线阅读,更多相关《倒立摆系统技术报告(共31页).doc(31页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上1.1倒立摆系统的简介1.1.1倒立摆系统的研究背景及意义倒立摆系统的最初分析研究开始于二十世纪五十年代,是一个比较复杂的不稳定、多变量、带有非线性和强耦合特性的高阶机械系统,它的稳定控制是控制理论应用的一个典型范例。倒立摆系统存在严重的不确定性,一方面是系统的参数的不确定性,一方面是系统的受到不确定因素的干扰。通过对它的研究不仅可以解决控制中的理论问题,还将控制理论涉及的相关主要学科:机械、力学、数学、电学和计算机等综合应用。在多种控制理论与方法的研究和应用中,特别是在工程中,存在一种可行性的实验问题,将其理论和方法得到有效的验证,倒立摆系统可以此提供一个从控制理论

2、通过实践的桥梁。近些年来,国内外不少专家、学者一直将它视为典型的研究对象,提出了很多控制方案,对倒立摆系统的稳定性和镇定问题进行了大量研究,都在试图寻找不同的控制方法实现对倒立摆的控制,以便检查或说明该方法的严重非线性和绝对不稳定系统的控制能力,其控制方法在军工、航天、机械人领域和一般工业过程中都有着广泛的用途,如精密仪器的加工、机器人行走过程中的平衡控制、火箭发射中的垂直度控制、导弹拦截控制、航空对接控制、卫星飞行中的姿态控制等方面均涉及到倒置问题。因此,从控制这个角度上讲,对倒立摆的研究在理论和方法论上均有着深远意义。倒立摆系统是一个典型的自不稳定系统,其中摆作为一个典型的振动和运动问题,

3、可以抽象为许多问题来研究。随着非线性科学的发展,以前的采用线性化方法来描述非线性的性质,固然无可非议,但这种方法是很有局限性,非线性的一些本质特征往往不是用线性的方法所能体现的。非线性是造成混乱、无序或混沌的核心因素,造成混乱、无序或混沌并不意味着需要复杂的原因,简单的非线性就会产生非常的混乱、无序或混沌。在倒立摆系统中含有极其丰富和复杂的动力学行为,如分叉、分形和混沌动力学,这方面的问题也值得去探讨和研究。无论哪种类型的倒立摆系统都具有如下特性:(1)非线性倒立摆是一个典型的非线性复杂系统。实际中可以通过线性化得到系统的近似模型,线性化处理后再进行控制,也可以利用非线性控制理论对其进行控制,

4、倒立摆的非线性控制正成为一个研究的热点。(2)不确定性主要是指建立系统数学模型时的参数误差、量测噪声以及机械传动过程中的减速齿轮间隙等非线性因素所导致的难以量化的部分。(3)欠冗余性一般的,倒立摆控制系统采用单电机驱动,因而它与冗余机构,比如说冗余机器人有较大的不同。之所以采用欠冗余的设计是要在不失系统可靠性的前提下节约经济成本或者节约有效的空间。研究者常常是希望通过对倒立摆控制系统的研究获得性能较为突出的新型控制器设计方法,并验证其有效性及控制性能。(4)耦合特性倒立摆摆杆和小车之间,以及多级倒立摆系统的上下摆杆之间都是强耦合的。这既是可以采用单电机驱动倒立摆控制系统的原因,也是使得控制系统

5、的设计、控制器参数调节变得复杂的原因。(5)开环不稳定性倒立摆系统有两个平衡状态:垂直向下和垂直向上。垂直向下的状态是系统稳定的平衡点(考虑摩擦力的影响),而垂直向上的状态是系统不稳定的平衡点,开环时微小的扰动都会使系统离开垂直向上的状态而进入到垂直向下的状态中。(6)约束限制由于实际机构的限制,如运动模块行程限制,电机力矩限制等。为制造方便和降低成本,倒立摆的结构尺寸和电机功率都尽量要求最小,行程限制对于倒立摆的摆起尤为突出,很容易出现小车的撞边现象。倒立摆的以上特性增加了倒立摆的控制难度,也正是由于倒立摆的这些特性,使其更具有研究价值和意义。1.1.2 倒立摆系统的分类倒立摆系统诞生之初为

6、单级直线形式,即仅有的一级摆杆一端自由,另一端铰接于可以在直线导轨上自由滑动的小车上。在此基础上,人们又进行拓展,产生了多种形式的倒立摆。按照基座的运动形式,主要分为三大类:直线倒立摆、环形倒立摆和平面倒立摆,每种形式的倒立摆再按照摆杆数量的不同可进一步分为一级、二级、三级及多级倒立摆等。摆杆的级数越多,控制难度越大,而摆杆的长度也可能是变化的。多级摆的摆杆之间属于自有连接(即无电动机或其他驱动设备)。目前,直线型倒立摆作为一种实验仪器以其结构相对简单、形象直观、构件参数易于改变和价格低廉等优点,已经广泛运用于教学。关于直线倒立摆的控制技术已经基本趋于成熟,在该领域所出的成果也相当丰富。尽管环

7、形倒立摆的基座运动形式与直线倒立摆有所差异,但二者相同之处是基座仅有一个自由度,可以借鉴比较成熟的直线倒立摆的研究经验,所以近几年来也产生了大量的理论成果。平面倒立摆是倒摆系统中最复杂的一类,这是因为平面倒立摆的基座可以在平面内自由运动,并且摆杆可以沿平面内的任一轴线转动,使系统的非线性、耦合性、多变量等特性更加突出,从而增加了控制的难度,而且机械和电子器件发展遇到瓶颈性的困难,给平面倒立摆的工程实现也带来了一定的难度。按摆杆的材质不同,倒立摆系统分为刚体摆杆倒立摆系统和柔性倒立摆系统。在柔性倒立摆系统中,摆杆本身己经变成了非线性分布参数系统。根据研究的目的和方法不同,倒立摆系统又分为悬挂式倒

8、立摆、球平衡系统和平行式倒立摆。其中,研究比较多的是悬挂式倒立摆。这种倒立摆开始工作时,摆杆处于自由下垂状态。控制开始时,首先使摆杆按自由振荡频率摆动,随着摆杆振荡幅度的加大,当摆杆接近于倒立摆竖直倒立位置时,自动转换控制方法,使其稳定于倒置状态。根据导轨的形状小同,倒立摆的运动轨道可以是水平的,也可以是倾斜的。倾斜倒立摆对实际机器人的步行稳定控制研究非常有意义。尽管倒立摆系统的结构形式多种多样,但是无论属于哪一种结构,就其本身而言,都是一个非线性、多变量、强耦合、绝对不稳定性系统。1.1.3 倒立摆系统的研究现状倒立摆系统的研究具有重要的理论意义和应用价值,对其控制研究是控制领域研究的热门课

9、题之一,国内外的专家学者对此给予了广泛的关注。倒立摆系统研究最早始于上世纪50年代,麻省理工学院(MIT)机电工程系的控制论专家根据火箭发射助推器原理设计出一级倒立摆实验装置。1966年Schaefer和Cannon应用BangBang控制理论将一个曲轴稳定于倒置位置。其实,正式提出倒立摆概念的是60年代后期。在此基础上,世界各国专家和学者对倒立摆进行了拓展,产生了直线二级倒立摆、三级倒立摆、多级倒立摆、柔性直线倒立摆、环形倒立摆、平面倒立摆、环形并联多级倒立摆以及斜坡倒立摆等实验设备,并用不同的控制方法对其进行了控制,使研究成为了具有挑战性的课题之一。1976年Mori etc首先把倒立摆系

10、统在平衡点附近线性化,利用状态空间方法设计比例微分控制器实现了一级倒立摆的稳定控制。1980年,Furuta etc等人基于线性化方法,实现了二级倒立摆的控制。1984年,Furuta等人应用最优状态调节器理论首次实现双电机三级倒立摆实物控制;Wattes研究了LQR(Linear Quadratic Regulator)方法控制倒立摆。80年代后期开始,较多的研究了倒立摆系统中的非线性特性,提出了一系列的基于非线性分析的控制策略。1992年,Furuta等人提出用变结构控制来控制倒立摆。1993年,Wiklund等人应用基于李亚普诺夫的方法控制了环形一级倒立摆。Bouslama利用一个简单的

11、神经网络来学习模糊控制器的输入输出数据,设计了新型控制器。1995年,Fradkov等人提出的基于无源性的控制;Yamakita等人给出了环形二级倒立摆的实验结果;Li利用两个并行的模糊滑模来分别控制小车和摆杆偏角;Deris利用神经网络的自学习能力来整定PID控制器参数。1997年,Gordillo比较了LQR方法和基于遗传算法的控制方法,结论是传统控制方法比遗传算法控制效果更好。国内对倒立摆的研究始于80年代,虽然起步较晚但发展迅速,取得了可喜的成果。对于单级倒立摆口钉和二级倒立摆系统的研究已经历了很长的历程,并且有很多控制成功的报道。在此基础上,三级倒立摆b53及多级倒立摆的研究也取得了

12、很大进展,不仅在系统仿真方面,而且在实物实验中,都出现了控制成功的范例。尹征琦等成功的以模拟的降维观测器实现了二级倒立摆的控制。梁任秋等针对二级倒立摆系统给出了三种实用的数字控制器和降维观测器。1994年,北京航空航天大学教授张明廉将人工智能与自动控制理论相结合,提出“拟人智能控制理论”,实现了用单电动机控制三级倒立摆实物以及后来实现对二维单倒立摆控制。张乃尧等用双闭环模糊控制方法对倒立摆进行了控制。李祖枢等人利用拟人智能控制理论研究了二级倒立摆的起摆和控制问题。李德毅教授利用反映语言值中蕴涵的模糊性和随机性,给出云发生器的生成算法,解释多条定性推理规则同时被激活时的不确定性推理机制,利用这种

13、智能控制方法有效地实现了单电机控制的一、二、三级倒立摆的多种不同动平衡姿态,显示其鲁棒性,并给出了详细试验结果。北京师范大学李洪兴教授领导的模糊系统与模糊信息研究中心暨复杂系统实时智能控制实验室采用变论域自适应模糊控制理论,分别于2001年6月和2002年8月完成了四级倒立摆系统的仿真和实物实验。朱江滨等人提出了一种基于专家系统及变步长预测控制的实时非线性系统控制方法,仿真实现了二级倒立摆的摆起及稳定控制侧。王永等通过对多级倒立摆动力学分析,得到了任意级旋转倒立摆的数学模型。2005年国防科学技术大学的罗成教授等人利用基于LQR的模糊插值实现了五级倒立摆的控制。总之,倒立摆系统是检验各种控制算

14、法、研究控制理论很有效的实验设备。目前应用在倒立摆上的算法主要有以下几类:(1)经典控制理论:PID控制。通过对倒立摆物理模型的分析,建立倒立摆系统的动力学模型,设计PID控制器实现控制。(2)现代控制理论:状态反馈。通过对倒立摆系统物理模型的分析,建立系统的动力学模型,然后使用状态空间理论推导出状态方程和输出方程,应用状态反馈,实现对倒立摆的控制。常见的方法有:1)极点配置,2)线性二次型最优控制,3)鲁棒控制,4)状态反馈控制。(3)模糊控制理论:主要是确定模糊规则,克服系统的非线性和不确定性实现对倒立摆的稳定控制。(4)神经网络控制理论。利用神经网络能够充分逼近复杂的非线性关系,学习与适

15、应严重不确定系统的动态特性,与其他控制方法结合实现对倒立摆的稳定控制。(5)拟人智能控制理论。不需要了解被控对象的数学模型,凭借人的知识与直觉经验并借助计算机快速模拟控制经验,把人的思维中的定性分析与控制理论中的定量计算相互结合,从而实现对倒立摆的控制。(6)云模型控制理论。用云模型构成语言值,用语言值构成规则,形成一种定性的推理机制。这种方法不要求给出对象的精确的数学模型,而仅依据人的经验、感受和逻辑判断,将人用自然语言表达的控制经验,通过语言原子和云模型转换到语言控制规则器中,就能解决非线性问题和不确定性问题。(7)自适应控制理论。主要是为倒立摆设计出自适应控制器。(8)非线性控制理论。应

16、用非线性控制的方法研究倒立摆的控制。(9)遗传算法。以要寻优的参数组成染色体,通过模拟生物从父代到子代,再从子代到孙代,不断地进化演变的过程来进行迭代求解的。其模拟生物界优胜劣汰的进化过程来实现参数的寻优。(10)支持向量机聆刿。提出最优超平面的概念并且与核空间相结合,以一个凸二次优化及其Wolfe对偶来构造分类问题,并且在此基础上发展成多类分类和函数回归问题。(11)变结构控制理论:滑模控制。(12)几种控制算法相结合的控制方式。充分利用各控制算法的优越性,来实现一种组合式的控制方法,比如:神经网络控制与模糊控制理论结合的方法,遗传算法与神经网络控制结合的方法,模糊控制与PID控制结合的方法

17、,神经网络控制与预测控制算法相结合的方法,遗传算法与模糊控制理论结合的方法,支持向量机与模糊控制相结合的方法等。1.1.4 倒立摆的控制方法倒立摆系统的输入为小车的位移(即位置)和摆杆的倾斜角度期望值,计算机在每一个采样周期中采集来自传感器的小车与摆杆的实际位置信号,与期望值进行比较后,通过控制算法得到控制量,再经数模转换驱动电机实现倒立摆的实时控制。电机通过皮带带动小车在固定的轨道上运动,摆杆的一端安装在小车上,能以此点为轴心使摆杆能在垂直的平面上自由地摆动。作用力平行于轨道的方向作用于小车,使杆绕小车上的轴在竖直平面内旋转,小车沿着水平导轨运动。当没有作用力时,摆杆处于垂直的稳定的平衡位置

18、(竖直向下)。为了使摆杆摆动或者达到竖直向上的稳定,需要给小车一个控制力,使其在轨道上被往前或朝后拉动。因此,倒立摆系统的控制原理可简述如下:用一种强有力的控制方法对小车的速度作适当的控制,从而使摆杆倒置稳定于小车正上方。倒立摆刚开始工作时,首先使小车按摆杆的自由振荡频率摆动,摆杆随之大幅度摆动。经过几次摆动后,摆杆能自动直立起来。这种被控量既有角度,又有位置,且它们之问又有关联,具有非线性、时变、多变量耦合的性质。1.2 MATLAB简介MATLAB是美国Math Works 软件公司于1984年推出的一种用于科学计算的高性能语言。它集数值计算、图形图像显示以及编程于一体, 是常用的控制系统

19、分析与设计工具。1990 年, MathWorks软件公司为MATLAB 提供了新的控制系统图形化模型输入与仿真工具Simulink。这是MATLAB的一个扩展软件模块。该模块提供了一个建模、分析与仿真等多种物理与数学问题的软件环境, 并为图形用户界面提供了动态系统的结构方块图模型, 从而使用户可以既快又方便地对系统进行建模、仿真, 而不必写任何代码程序。因此该工具很快就在控制工程界获得了广泛的认可,并使仿真软件进入了系统模型的图形组态阶段。1.2.1 Simulink仿真环境介绍Simulink环境是1990年前后由Mathworks公司推出的产品,原名SimuLAB,1992年改为Simu

20、link。其名字有两重含义,仿真(simu)与模块连接(1ink),表示该环境可以用框图的方式对系统进行仿真。Simulink是用来建模、分析和仿真各种动态系统的交互环境,包括连续系统、离散系统和混合系统。Simulink提供了采用鼠标拖放的方法建立系统框图模型的图形交互平台。通过Simulink提供的丰富的功能块,可以迅速地创建动态系统模型。同时Simulink还集成了Stateflow,用来建模、仿真复杂事件驱动系统的逻辑行为。另外,Simulink也是实时代码生成工具Real-Time Workshop的支持平台。控制系统仿真研究的一种很常见的需求,系统在某些信号驱动下,观测系统的时域响

21、应,从中得出期望的结论。对于简单线性系统来说,可以利用控制系统工具箱中的相应函数来对系统进行分析。对于复杂的系统来说,单纯采用上述的方法有时难以完成仿真任务。比如说,若想研究结构复杂的非线性系统,用前面介绍的方法则需要写出系统的微分方程,这是很复杂的。如果有一个基于框图的仿真程序,则解决这样的问题就轻而易举了。Simulink环境就是解决这样问题的理想工具,它包含一个庞大的模块库,用户可以通过鼠标点击和拖拉模块既快速又方便地对系统进行建模仿真,而不必编写任何程序代码。它还能在同一屏幕上进行仿真、资料显示和输出波形。Simulink环境是解决非线性系统建模、分析与仿真的理想工具。Simulink

22、是MATLAB环境下的模拟工具,其文件类型为.mdl,Simulink为用户提供了方便的图形化功能模块,以便连接一个模拟系统,简化设计流程,减轻设计负担。更重要的是,Simulink能够用MATLAB自身的语言或其它语言,根据S.函数的标准格式,写成定义的功能模块。因此其扩充性很强,同时也能调用.dll文件类型的应用程序,实现与其集成应用的目的。在倒立摆系统的仿真过程中会用到Simulink的基本操作和用法。1.2.2 S-函数简介 Simulink中的函数也称为系统函数,简称S-Function。它是Simulink为用户提供的一种强大的编程机制。它采用一种特殊的调用规则来实现用户与Simu

23、link内部解法器的互换。这种互换同Simulink内部解法器与内置的模块之间的互换非常相似,并且这种交互可以适用于不同性质的系统,如连续系统、离散系统及混合系统。通过编写S-函数,用户可以向S-函数中添加自己的算法,该算法可以用MATLAB编写,也可以用标准C语言或其他汇编语言进行编写。2.1 倒立摆的稳定控制方案比较模糊控制、神经网络控制、PID控制、状态反馈控制、最优控制等均可以用于倒立摆系统进行稳定控制,这些方法各具优缺点,下面对这几种控制方法进行比较分析。2.1.1 模糊控制算法模糊控制系统的结构可以分为5个不同的部分:(1)定义变量:包括模糊控制器的输入变量和输出变量。输入变量一般

24、为误差E和误差变化率EC,输出变量为系统的控制量;(2)模糊化:将输入变量以适当的比例转换到论域的数值;(3)知识库:包括数据库和规则库。数据库提供必要的定义,规则库由语言控制规则描述控制目标和策略;(4)逻辑判断:运用模糊逻辑进行模糊推理得到模糊控制信号;(5)解模糊化:将逻辑判断阶段得到的模糊控制信号变为实际的控制信号。模糊控制器是一种语言变量控制器,控制规则策略简单、直观,不需要复杂的推理计算,是解决倒立摆这类不确定性系统的一种有效途径。将模糊控制理论用于倒立摆系统中,仿真证明,控制效果并不理想,主要原因是模糊控制规则确定起来比较困难,控制规则不全,系统极易失控。2.1.2 神经网络控制

25、人工神经网络是一个并行和分布式的信息处理网络结构,该网络结构一般由多个神经元组成,每个神经元有一个单一的输出,它可以连接到很多其它的神经元,其输入有多个连接通路,每个连接通路对应一个连接权系数。人工神经网络和生物神经网络一样,必须经过学习才能具有智能特性。人工神经网络的学习过程,实际上就是调节权值和阂值的过程。 人工神经网络控制有许多优秀控制特性:(1)可以并行分布处理信息;(2)具有学习功能,具有对输入数据归纳优化的功能;(3)不仅可以用于线性控制,也可以用于非线性控制;(4)具有较强的自适应能力。虽然神经网络控制具有诸多优点,在对倒立摆系统进行控制时不是非常有效,这是因为:(1)对于要满足

26、什么样的条件才能实现非线性逼近的问题,讨论的很少,这一问题解决比较困难;(2)研究建模算法和控制系统的收敛性和稳定性有很大的难度,一般的方法未必适用;(3)目前的神经网络本身就存在一些不足,特别是在线学习难以满足要求。将模糊控制和神经网络控制相结合,提出了自适应神经模糊推理系统。自适应神经模糊推理系统(ANFIS,Adaptive Neural Network based Fuzzy Inference System)是一种将模糊逻辑(FL)和神经网络(NN)有机结合的新型的模糊推理系统结构,从功能上与模糊推理系统等价的自适应网络。自适应神经网络技术为模糊建模过程学习一个数据集的信息提供了一种

27、方法,计算隶属度函数参数最好允许相关的模糊推理系统跟踪给定的输入输出数据,根据样本数据自动调整前提参数和结论参数。2.1.3 PID控制当今的自动控制技术大多基于反馈的概念。反馈理论的要素包括三个部分:测量、比较和执行。PID控制的基本思想是:通过测量输出变量,与期望值相比较,用这个误差调节控制系统。PID(比例一积分一微分)控制是一种简单而又优秀的控制方法,关键是,在做出正确的测量和比较后,能更好地调节被控系统。PID控制器作为最早实用化的控制器己有50多年历史,现在仍然是应用广泛的工业控制器。PID控制器结构简单,使用中不需要精确的系统模型,因而应用最为广泛。PID控制有其固有的优点:首先

28、,PID控制本身应用范围广。虽然倒立摆模型是非线性的,但通过对其线性化可以变成线性系统,这样PID控制就可以运用到倒立摆系统中了。PID控制还可以应用于时变系统。另外,PID控制器参数比较容易整定。也就是,PID控制器的参数可以根据过程的动态特性及时整定。如果过程的动态特性变化,例如,倒立摆在稳定控制中,外界给摆杆一个扰动,就可容易对PID参数重新整定。但PID控制也有其固有的缺点:PID控制在控制像倒立摆这样的非线性、强耦合及参数和结构不确定的控制对象时,控制效果不理想。2.1.4 LQR控制算法 如果研究的系统为线性,所取的性能指标为状态变量与控制变量的二次型函数,那么这种动态系统的最优化

29、问题,称为线性二次型问题。线性二次型最优控制问题的最优解可以由黎卡提方程求得,具有统一的解析表达式,且可以与输入构成一个简单的线性状态反馈控制律,容易计算和实现闭环反馈控制,成为最优控制理论及应用最成熟的部分。最优控制理论主要是依据庞德犀亚金的极值原理,通过对性能的优化寻找可以使目标极小的控制器。其中线性二次型性能指标因为可以通过求解Riccati方程得到控制器参数,并且随着计算机技术的进步,求解过程变的越来越简便,因而在像倒立摆这样的线性多变量系统的控制器设计中应用很广。利用线性二次型性能指标设计的控制器称作LQR控制器。倒立摆系统的设计属于连续系统的二次型设计。KR+-yx图3.1 最优控

30、制方法系统图线性二次型最优控制不仅易于设计,容易实现、具有工程性,最优控制的结果还可以应用于非线性系统,但是该非线性系统必须工作在小信号条件下的,用线性二次型最优控制方法计算和实现比非线性方法容易。线性二次型最优控制器还可以用于求解非线性最优控制问题。自己设计实现的思路:3.1 PID调节简述PID调节又叫PID控制,是比例、积分、微分调节的简称。在自动控制的发展历程中,PID调节历史悠久、控制性能最强的基本调解方式。PID调节原理简单,易于整定,使用方便;按照PID调节功能工作的各类调节器广泛应用于工业生产部门,适用性较强;PID调节性能指标对于受控对象的特性的稍许变化不很敏感,这就极大地保

31、证了调节的有效性;PID调节可用于补偿系统使之达到大多数品质指标的要求。直到目前为止,PID调节仍然是最广泛应用的基本控制方式23。具有PID特点的调解器既可以作为控制器,叫PID控制器;也可以作为校正器,叫PID校正器。PID校正是一种负反馈闭环控制器。PID调校正器通常与被控对象串联连接,设置在负反馈闭环控制的前向通道上。若校正器与系统的前向通道或者前向通道的一部分构成负反馈闭环连接,这种校正叫做反馈校正。PID控制系统原理框图如图4.1所示yout(k)K比例微分积分被控对象rin(k)+-+图4.1 典型PID校正器的结构框图PID控制器是一种线性控制器,它根据给定值r(f)与实际输出

32、值y(t)构成控制偏差。其中 (4-1)将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,对被控对象进行控制,故称为PID控制器。其控制规律为: (4-2)其传递函数形式为: (4-3)式子中为比例系数,为积分时间常数,为微分时间常数。在控制系统设计和仿真中,也将传递函数写成: (4-4)该式子中为比例系数,为积分时间常数,为微分时间常数。简单地说,PID控制器各校正环节的作用如下:(1) 比例调节(P)成比例的反映控制系统的偏差P(f),偏差一旦产生,控制器立即产生控制作用,以减小偏差。比例系数的大小决定了比例调节器调节的快慢程度,但过大会使系统出现超调或振荡现象,过小又起不

33、到调节作用。比例控制无法消除余差。(2) 积分调节(I)主要用于消除稳态误差,积分作用的强弱取决于积分时间常数,越大,积分作用越弱,越小,积分作用越强。增大积分时间乃,有利于减小超调,减小振荡,使系统更加稳定。因此,积分常数大小的选择要得当。(3) 微分调节(D)反映偏差信号的变化趋势,并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,来抑制偏差的变化,使系统更趋于稳定,改善系统的动态性能。增大微分时间靠,有利于加快系统的响应,使超调量减小,稳定性增加,但系统对扰动的抑制能力减弱,对扰动有较敏感的响应。3.2 直线一级倒立摆PlD控制器设计直线一级倒立摆

34、的输出量主要考虑两个,即摆杆的角度和小车的位置。因此要设计合适的PID控制器对摆杆的角度和小车的位置进行控制。3.2.1 直线一级倒立摆摆杆角度控制直线一级倒立摆的初始位置为垂直向上,给系统施加一个扰动,观察摆杆的响应。系统的控制结构框图如下图所示:PID控制器KD(s)被控对象G(s)f(s)=Fu(s)+y(s)e(s)r(s)=0+-图4.2 摆杆角度控制结构框图上图中,KD(s)是PID控制器的传递函数,G(s)是被控制对象的传递函数。设输入r(s)=0,则图4.2结构框图变为图4.3所示结构框图。PID控制器KD(s)被控对象G(s)u(s)f(s)=Fy(s)图4.3 变换后摆杆角

35、度控制结构框图由图4.3可得系统的输出为:(4-6) 上式中num表示被控对象传递函数的分子项,den表示被控对象传递函数的分母项,num表PIO控制器传递函数的分子项,den表示PID控制器传递函数的分母项。由第二章我们得到以输入力u为输入量,以摆杆摆角为输出量的传递函数: (4-7)上式中, PID控制器的传递函数为: (4-8)只需调节PID控制器的参数,就可以得到满意的控制效果。4.1稳定性与可控性分析我们先看一看系统的稳定性,将数据代入状态方程中,利用matlab程序可以求出系统的零极点。源代码如下:M = 1.096;m = 0.109;b = 0.1;I= 0.0034;l =

36、0.25; a b c d=wer_ss(M,m,b,l);%自己编写的函数,建立模型之用,具体程序见下面sysc=ss(a,b,c,d); sysd=c2d(sysc,0.005);da db dc dd=ssdata(sysd);z p gain=ss2zp(da,db,dc,dd,1)z = -0.9999 -0.9999 1.0275 1.0000 + 0.0000i 0.9733 1.0000 - 0.0000ip = 1.0000 0.9996 1.0285 0.9723gain = 1.0e-004 * 0.1113 0.3338wer_ss源程序:function a b c

37、d=wer_ss(M,m,b,l)a=0 1 0 0;0 -4*b/(4*M+m) 3*m*9.8/(4*M+m) 0;0 0 0 1;0 -3*b/(4*M+m)*l) 3*9.8*(M+m)/(4*M+m)*l) 0;b=0;4/(4*M+m);0;3/(4*M+m)*l);c=1 0 0 0;0 0 1 0;d=0;0由得到的p(极点)可知,有的极点在单位圆外,所以可知原系统是不稳定的。同样,我们可以利用matlab来得到系统的能控性,源代码如下:ud=ctrb(da,db);rank(ud)ans = 4由得到的rank(ud)的值可知,原系统的能控性矩阵为4,所以我们可知原系统是能控

38、的。4.2控制器设计4.2.1 基于状态反馈的控制算法设计与仿真LQR由理论分析知,可以设计基于最优控制的状态调节器,使系统闭环稳定。设状态反馈调节律的形式为通过使性能指标函数为最小,根据在附录1中我们所介绍的求得其中P由下列黎卡提方程获得其中,分别用来对状态向量x(k),控制向量u(k)引起的性能度量的相对重要性进行加权。在实际运算中我们运用Matlab控制系统工具箱中的“dlqr”函数直接进行运算。利用dlqr函数,我们需要提供两个权值矩阵:Q、R。通常我们取R=1,而对于Q我们只能通过不断的凑取来得到。源代码如下: R=1; Q=10 0 0 0;0 0 0 0;0 0 1 0;0 0

39、0 0Q = 10 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 T=0.005; syse k=wer_lqr(da,db,dc,dd,Q,R,T);%wer_lqr是自己定义的函数,具体见下面程序 x0=0.05;0;0.0175;0; t=0:0.005:10; y x1=initial(syse,x0,t);plot(t,y(:,1),red,t,y(:,2),blue)wer_lqr源程序:function sysresult k=wer_lqr(da,db,dc,dd,Q,R,T);%sysresult k=wer_lqr(da,db,dc,dd,Q,R,T);k S

40、 e=dlqr(da,db,Q,R);G=da-db*k;sysresult=ss(G,db,dc,dd,T);我们已开始的Q为:Q1=10 0 0 0;0 0 0 0;0 0 1 0;0 0 0 0;结果得到的图为图6;Q2取为:Q=100 0 0 0;0 0 0 0;0 0 10 0;0 0 0 0;结果得到的图为图7;通过比较,我们发现当Q11、Q33比值一定时,取大的值时系统的响应速度加快,但是超调加大;反之则响应变慢但是超调减小。图6 Q1响应图图7 Q2响应图在左右权衡之间,我们最终选取了:Q=300 0 0 0;0 0 0 0;0 0 30 0;0 0 0 0此时的响应曲线如图8

41、,而k值为:k = -16.6147 -12.4226 56.5909 10.2444图8 最优的响应曲线此时的单位阶跃响应曲线为图9:图9 单位阶跃响应曲线从仿真效果来看,零状态响应和单位阶跃响应都符合要求。4.3 极点配置法采用极点配置法设计多输出的倒立摆系统的控制方案。可以用完全状态反馈来解决,控制摆杆和小车的位置。 图10是控制系统的示意图。图10 控制系统框图 假定所有的状态变量都可以测量和反馈,可以证明:若所研究的系统是状态完全可控的,那么,利用状态反馈的方法,经过适当的状态反馈增益矩阵,就可以把闭环系统的极点配置到任何期望的位置。 设开环控制系统的离散状态方程为: x(k+1)

42、= Gx(k) + Hu(k)其中,假设系统是状态完全可控的x(k) 为在第k次采样时刻的状态矢量(n维矢量)u(k) 为在第k次采样时刻的控制信号(标量)G = nn矩阵H = n1矩阵设极点配置的控制律形式为式中是状态反馈增益矩阵(矩阵),于是该系统就成为一个闭环控制系统。其闭环状态方程为 注意,的特征值就是所要求的闭环极点。 我们希望利用状态反馈把闭环极点布置在,。即要求特征方程为: 根据Cayley_hamiton定理, 经过推导 (此略) 可以得到 其中上式给出所要求的状态反馈增益矩阵。矩阵的这种特殊表达式就是常说的阿克曼公式。状态反馈增益矩阵按这样的方法确定,即可使误差(由扰动所引

43、起的)以足够快的速度降到零。注意,对于一个给定的系统,矩阵并不是唯一的,而是取决于所期望的闭环极点位置(它决定响应速度)的选择。选择期望的闭环极点或期望的特征方程是在误差矢量响应的快速性与对扰动和测量噪声敏感型之间的一个折衷方案。也就是说,如果我们使误差响应的速度提高,那么扰动和测量噪声的有害影响往往也会增强。在确定给定系统的状态反馈增益矩阵时,通常是通过比较按不同的期望闭环极点或期望特征方程得到的矩阵,并从中选出使整个系统达到的特性最好的那个矩阵。在实际设计时, 我们运用Matlab控制系统工具箱中的“place”函数直接进行仿真和运算。先在连续域中进行计算,然后再转到离散域。根据系统的性能

44、要求,我们可取,这时完全满足题中的性能要求。那么我们就可以进行离散域设计了: z1=exp(-3*20.5)/2+(-3*20.5)*j/2)*0.005)z1 = 0.9894 - 0.0105i z2=exp(-3*20.5)/2-(-3*20.5)*j/2)*0.005)z2 = 0.9894 + 0.0105i z3=exp(-10*0.005)z3 = 0.9512 z4=exp(-12*0.005)z4 = 0.9418 p=z1 z2 z3 z4;K=place(da,db,p)K = -38.6579 -25.5096 103.3247 17.9041 G=da-db*K; s

45、yse=ss(G,db,dc,dd,0.005); t=0:0.005:10; x0=0.05; 0; 0.0175; 0; y1,x=initial(syse,x0,t); plot(t,y1(:,1),red,t,y1(:,2),blue)图11极点配置图零输入响应而它的单位阶跃响应是:u=ones(1,length(t); y,x=lsim(syse,u,t)图12极点配置单位阶跃响应从仿真效果来看,也是基本上达到了系统的要求。附录1摆杆角度控制首先,需要把输出为摆杆角度时系统的传递函数用Matlab表示出来,建立一个m-文件,将下面几行表示传递函数的语句拷贝进去,其中代表比例系数:M

46、= 1.096;m = 0.109;b = 0.1;I = 0.0034;g = 9.8;l = 0.25;q =(M+m)*(I+m*l2) -(m*l)2; %simplifies inputnum = m*l/q 0 0den = 1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0kd=1k=1ki=1numPID= kd k ki ;denPID= 1 0 ;numc= conv ( num, denPID )denc= polyadd ( conv(denPID, den ), conv( numPID, num ) ) t = 0 : 0.05 : 5;impulse ( numc , denc , t )其中函数polyadd 是求两个多项式之和的函数,它不是Matlab 工具,因此必须把它拷贝到

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁