您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 交通运输 > 单级倒立摆的模糊控制以及在MATLAB中的仿真1
单级倒立摆的模糊控制以及在MATLAB中的仿真姓名:韦盛学号:P081613346院系:电气工程学院专业班级:电气工程及其自动化指导教师:刁晨日期:2011年11月11日单级倒立摆的模糊控制以及在MATLAB中的仿真摘要倒立摆系统是一个典型的多变量、非线性、强藕合和快速运动的自然不稳定系统。因此倒立摆在研究双足机器人直立行走、火箭发射过程的姿态调整和直升机飞行控制领域中有重要的现实意义,相关的科研成果己经应用到航天科技和机器人学等诸多领域。本文围绕一级倒立摆系统,采用模糊控制理论研究倒立摆的控制系统仿真问题。仿真的成功证明了本文设计的模糊控制器有很好的稳定性。主要研究工作如下:(1)使用了牛顿力学和Lagrange方程对倒立摆进行数学建模,推导出倒立摆系统传递函数和状态空间方程。(2)分析了模糊控制理论的数学基础,对模糊控制的方法进行了研究:介绍了模糊子集、模糊关系和模糊推理等相关知识。(3)介绍了如何利用Simulink建立倒立摆系统模型,特别是利用Mask封装功能,使模型更具灵活性,给仿真带来很大方便。(4)进行一级倒立摆系统的控制器设计与仿真。通过matlab的Simulink实现倒立摆模糊控制系统的仿真。说明仿真结果的趋向。关键词:倒立摆模糊控制仿真MATLAB第一章绪论1.1倒立摆系统的重要意义倒立摆系统是研究控制理论的一种典型实验装置,具有成本低廉,结构简单,物理参数和结构易于调整的优点,是一个具有高阶次、不稳定、多变量、非线性和强藕合特性的不稳定系统。在控制过程中,它能有效地反映诸如可镇定性、鲁棒性、随动性以及跟踪等许多控制中的关键问题,是检验各种控制理论的理想模型。迄今人们已经利用经典控制理论、现代控制理论以及各种智能控制理论实现了多种倒立摆系统的控制稳定。倒立摆主要有:有悬挂式倒立摆、平行倒立摆、环形倒立摆、平面倒立摆;倒立摆的级数有一级、二级、三级、四级乃至多级;倒立摆的运动轨道可以是水平的,也可以是倾斜的:倒立摆系统己成为控制领域中不可或缺的研究设备和验证各种控制策略有效性的实验平台。同时倒立摆研究也具有重要的工程背景:如机器人的站立与行走类似双倒立摆系统;火箭等飞行器的飞行过程中,其姿态的调整类似于倒立摆的平衡等等。因此对倒立摆控制机理的研究具有重要的理论和实践意义。1.2倒立摆系统的控制方法自从倒立摆产生以后,国内外的专家学者就不断对它进行研究,其研究主要集中在下面两个方面:(1)倒立摆系统的稳定控制的研究(2)倒立摆系统的自起摆控制研究而就这两方面而言,从目前的研究情况来看,大部分研究成果又都集中在第一方面即倒立摆系统的稳定控制的研究。目前,倒立摆的控制方法可分如下几类:(1)线性理论控制方法将倒立摆系统的非线性模型进行近似线性化处理获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法得到期望的控制器。如1976年Morietc的把倒立摆系统在平衡点附近线性化利用状念空间的方法设计比例微分控制器。1980年,Furutaetc基于线性化方法,实现了二级倒立摆的控制。1984年,Furuta首次实现双电机三级倒立摆实物控制。1984年,wattes研究了LQR(LinearQuadraticRegulator)方法控制倒立摆。这类方法对一、二级的倒立摆(线性化后误差较小、模型较简单)控制时,可以解决常规倒立摆的稳定控制问题。但对于像非线性较强、模型较复杂的多变量系统(三、四级以及多级倒立摆)线性系统设计方法的局限性就十分明显了。(2)预测控制和变结构控制方法由于线性控制理论与倒立摆系统多变量、非线性之间的矛盾使人们意识到针对多变量、非线性对象,采用具有非线性特性的多变量控制解决多变量、非线性系统的必由之路。人们先后开展了预测控制、变结构控制和自适应控制的研究。预测控制是一种优化控制方法,强调实模型的功能而不是结构。变结构控制是一种非连续控制,可将控制对象从任意位置控制到滑动曲面上,仍然保持系统的稳定性和鲁棒性,但是系统存在颤抖。预测控制、变结构控制和自适应控制在理论上有较好的控制效果,但由于控制方法复杂,成本也高,不易在快速变化的系统上实时实现。(3)智能控制方法在倒立摆系统中用到的智能控制方法主要有神经网络控制、模糊控制、仿人智能控制、拟人智能控制和云模型控制等。利用神经网络的自适应能力、并行处理和高度鲁棒性,采用神经网络方法设计的控制系统将具有更快的速度、更强的适应能力和更强的鲁棒性。但是神经网络控制方法存在的主要问题是缺乏一种专门适合于控制问题的动态神经网络,而且多层网络的层数、隐层神经元的数量、激发函数类型的选择缺乏指导性原则等。拟人智能控制模糊控制、神经网络控制等智能控制理论的问世,促进了当代自动控制理论的发展。然而,基于这些智能控制理论所设计的系统往往需要庞大的知识库和相应的推理机,不利于实现实时控制。这又阻碍了智能控制理论的发展,因此又有学者提出了一种新的理论一拟人控制理论。仿人智能控制仿人智能控制的基本思想是通过对人运动控制的宏观结构和手动控制行为的综合模仿,把人在控制中的“动觉智能”模型化,提出了仿人智能控制方法。研究结果表明,仿人智能控制方法解决复杂、强非线性系统的控制具有很强的实用性。云模型控制利用云模型实现对倒立摆的控制,用云模型构成语言值,用语言值构成规则,形成一种定性的推理机制。这种拟人控制不要求给出被控对象精确的数学模型,仅仅依据人的经验、感受和逻辑判断,将人用自然语言表达的控制经验,通过语言原子和云模型转换到语言控制规则器中,就能解决非线性问题和不确定性问题。鲁棒控制方法---鲁棒控制的研究始于20世纪50年代,是一种解决非线性、复杂性和不确定性的工具,发展方向是面向那些不确定因素变化范围大和稳定裕度小的对象。但是,鲁棒控制系统的设计要由高级专家完成。一旦设计成功,就不需太多的人工干预。另一方面,如果要升级或作重大调整,系统就要重新设计。1.3论文的主要工作本论文的主要工作是研究了直线一级倒立摆系统的模糊控制问题,用Matlab和Simulink对一级倒立摆模糊控制系统进行了仿真,验证了设计的可行性。具体内容如下:(1)论述了一级倒立摆数学建模方法,推导出他们的微分方程,以及线性化后的状态方程。(2)讨论了单级倒立摆系统的模糊控制方法和操作步骤。(3)用Simulink实现了单级倒立摆模糊控制仿真系统,分别给出一级倒立摆系统控制量的响应曲线。通过仿真说明控制器的有效性和实现性。(4)对论文的工作进行总结和下一步工作的展望。第二章倒立摆的建模本章研究倒立摆系统的数学模型推导。系统建模可以分为两种:机理建模和实验建模。实验建模就是通过在研究对象上加上一系列的研究者事先确定的输入信号,激励研究对象并通过传感器检测其可观测的输出,应用数学手段建立起系统的输入和输出之间的关系。机理建模就是在了解研究对象的运动规律基础上,通过物理、化学的知识和数学手段建立起系统内部的输入一状态关系。对于倒立摆系统,由于其本身是自不稳定的系统,实验建模存在一定的困难。但是经过小心的假设忽略掉一些次要的因素后,倒立摆系统就是一个典型的运动的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。下面我们采用其中的牛顿一欧拉方法建立直线型一级倒立摆系统的数学模型。2.1一级倒立摆的数学模型在忽略了空气阻力,各种摩擦之后,可以将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图2—1所示。各参数符号含义如下:M小车质量单位:Kg;m摆杆质量单位:kgb小车摩擦系数单位:N/m/sec1摆杆转动轴心到杆质心的长度单位:mI摆杆惯量单位:kgF加在小车上的力单位:Nx小车位置单位:kgψ摆杆与垂直向上方向的央角(ψ=θ-Π)单位:radθ摆杆与垂直向下方向的央角(考虑到摆杆初始位置为竖直向下)单位:rad图2—2是系统中小车和摆杆的受力分析图。其中,N和助小车与摆杆相互作用力的水平和垂直方向的分量。矢量定义如图2-2所示,图示方向为矢量正方向。倒立摆的数学模型分析:根据图2-2所示的倒立摆系统简图,设计和分析其模糊控制器。下面给出了该系统的微分方程(Kailaith,1980;Craig,1986)tumdtdmlsinlg222(1)这里m是摆杆的质量,l是摆长,是从垂直方向上的顺时针偏转角,=u(t)为作用于杆的逆时针扭矩【u(t)是控制作用】,t是时间,g是重力加速度常数。假设dtdxx21,为状态变量,有等式(1)给出的非线性系统的的状态空间表达式为21xdtxdtumlxlgdtxd2121sin从所周知,当偏转角很小时,有sin()=,这里所测得用弧度表示。由此式可将状态空间表达式线性化,并得21xdtxd22121tumlxlgdtxd若所测1x用度表示,2x用每秒度表示,当取l=g和m=2180g时,线性离散时间状态空间表达式可用矩阵查分方程表式kxkxkx2111kukxkxkx2121在此问题中,设上述两变量的论域为221x和sradxsrad552,则设计步骤为第1步。首先,对1x在其论域上建立三个隶属度函数,即如图1所示的正值(P)、零(Z)和负值(N)。然后,对2x在其论域上亦建立3个隶属度函数,即图2所示的正值(P)、零(Z)和负值(N)。图2-3输入1x的分区图2-4输入2x的分区第2步。为划分控制空间(输出),对ku在其论域上建立5个隶属度函数,2424ku,如图3(注意,图上划分为7段,但此问题中只用了5段)。图2-5输出u的分区第3步。用表1所示的3*3规则表的格式建立9条规则(即使我们可能不需要这么多)。本系统中为使倒立摆系统稳定,将用到和dtd。表中的输出即为控制作用u(t)。X1x2PZNPPBPZZPZNNZNNB表1模糊控制规则表第4步。我们可用表1中规则导出该控制问题的模型。并用图解法来推导模糊运算。假设初始条件为101x和sradx402然后,我们在上例中取离散步长30k,并用矩阵差分方程式导出模型的四部循环式。模型的每步循环式都会引出两个输入变量的隶属度函数,规则表产生控制作用u(k)的隶属度函数。我们将用重心法对控制作用的隶属度函数进行精确化,用递归差分方程解得新的1x和2x值为开始,并作为下一步递归差分方程式的输入条件。分别为1x和2x的初始条件。从模糊规则表(表1)有If(1x=P)and(2x=Z),then(u=P)If(1x=P)and(2x=N),then(u=Z)If(1x=Z)and(2x=Z),then(u=Z)If(1x=Z)and(2x=N),then(u=N)表示了控制变量u的截尾模糊结果的并。利用重心法精确化计算后的控制值为u=-2。在已知u=-2控制下,系统的状态变为3001211xxx10001212uxxx依次类推,可以计算出下一步的控制输出u(1)。模糊控制器能够满足倒立摆的运动控制。第三章模糊控制器的建立3.1在MTALAB中的fuzzy控制器的建立与封装在命令窗口中输入:fuzzy然后回车可得出如下图所示:图3-1模糊控制器设置界面然后对其各个变量进行设置其步骤如下图3-2:对输入变量X1进行设置如下图3-3所示:变量X2的设置如下图3-4所示:输出量的设置图3-5所示:模糊规则控制表的设置如下图3-6所示:设置出来的效果图如图3-7(a),(b),(c)所示:(a)(b)(c)3.2最终在MATLAB中的搭建出来的框图如下:图3-8单级倒立摆在MTALAB中simulink仿真的框架图主要的状态空间模块的参数设置如下:第四章仿真结果以及分析通过(fuzzy)模糊控制模块,可以和包含模糊控制器的fis文件联系起来,还可以随时改变输入输出论域,隶属度函数以及模糊规则。仿真结果如下图:图4-1和图4-2。图4-1分析如下:从图4-1仿真图中可以看
本文标题:单级倒立摆的模糊控制以及在MATLAB中的仿真1
链接地址:https://www.777doc.com/doc-7413139 .html