2级倒立摆模糊控制_第1页
2级倒立摆模糊控制_第2页
2级倒立摆模糊控制_第3页
2级倒立摆模糊控制_第4页
2级倒立摆模糊控制_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

二级倒立摆的模糊控制学院:电气工程 班级:08电气(2)班 学号:P 姓名:毕锋绪 论倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论设计及测试的理想实验平台。倒立摆系统控制涉及到机器人技术、控制理论、计算机控制等多个领域。其被控系统本身是一个绝对不稳定、高阶次、多变量、强耦合的非线性系统,可以作为一个典型的控制对象对其进行研究1。同时,由于实际机械系统中存在的各种摩擦力,实际倒立摆系统亦具有一定的不确定性。倒立摆系统的控制涉及到许多典型的控制问题:非线性问题、随动及跟踪问题、鲁棒性问题、非最小相位系统的镇定问题等等。正是由于倒立摆系统的特殊性,许多不同领域的专家学者在检验新提出理论的正确性和实际可行性时,都将倒立摆系统作为实验测试平台。再将经过测试后的控制理论和控制方法应用到更为广泛的领域中去1。如:把一级倒立摆的研究成果应用到对航空航天领域中的火箭发射推进器和卫星飞行状态控制的研究;把二级倒立摆的研究成果应道到双足机器人行走控制中2。所以说,对倒立摆系统控制理论的研究不仅具有理论研究价值,也具有相当的实际工程应用价值。倒立摆系统的传统控制方法主要是使用经典控制理论和现代控制理论。它们都以精确的系统数学模型为控制对象。经典控制理论在线性定常、输入输出量较少的系统中能很好的完成控制设计指标,经典控制理论的数学基础是拉普拉斯变换,占主导地位的分析和综合方法是频率域方法。而现代控制理论是建立在状态空间分析法上的,基本分析方法是时域分析法。这种方法能够克服经典控制理论的缺陷:能够解决系统的输入输出变量过多、系统的非线性等问题。现代控制理论已经在工业生产过程、军事科学、航空航天等许多方面都取得了成功的应用。例如极小值原理可以用来解决某些最优控制问题;利用卡尔曼滤波器可以对具有有色噪声的系统进行状态估计;预测控制理论可以对大滞后过程进行有效的控制。但是它们都有一个基本的要求:需要建立被控对象的精确数学模型3。随着科学技术的迅猛发展,各个领域对自动控制控制精度、响应速度、系统稳定性与适应能力的要求越来越高,所研究的系统也日益复杂多变。然而由于一系列的原因,诸如被控对象或过程的非线性、时变性、多参数间的强烈耦合、较大的随机干扰、过程机理错综复杂、各种不确定性以及现场测量手段不完善等,难以建立被控对象的精确模型4。虽然常规自适应控制技术可以解决一些问题,但范围是有限的。对于像二级倒立摆这样的非线性、多参数、强耦合的被控对象,使用传统控制理论难以达到良好的控制性能。而模糊控制理论能够克服这些困难,达到实际设计要求。2 模糊控制的基本原理2.1 模糊理论的基本知识2.1.1 模糊控制概述几千年来,人类虽然一直延用数字计算,整个自然科学建立在数字基础上,然而却一直采用语言模糊描述。人类本身可感知信息,进行思维判断和决策,但人类的智能和科学之间存在着不可逾越的鸿沟。自从1965年美国自动控制理论专家LAZadeh首次提出了模糊集合理论以后人类智能和现代科学之间才有了联系的桥梁。随着计算机技术的发展,模糊控制理论在控制领域取得了巨大的成功,使模糊控制理论成为模糊理论最广泛最成熟的应用分支3。1974年英国教授马丹尼首先将模糊集合理论应用于加热器的控制,其后产生了许多应用的例子。其中比较典型的有:热交换过程的控制,暖水工厂的控制,污水处理过程的控制,交通路口控制,水泥窑控制,飞船飞行控制,机器人控制,模型小车的停靠和转弯控制,汽车速度控制,水质净化控制,电梯控制,电流和核反应堆的控制,并且生产出了专用的模糊芯片和模糊计算机8。在模糊控制的应用方面,日本走在了前列。日本在国内建立了专门的模糊控制研究所,日本仙台的一条铁路的控制系统采用了模糊控制的方法并取得了很好的效果。日本还率先将模糊控制应用到日用家电产品的控制中,如照相机、吸尘器、洗衣机等,模糊控制的应用在日本已经相当普及。模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,它从行为上模仿人的模糊推理和决策过程。该方法首先将操作人员或专家经验编成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化的信号作为模糊规则的输入,完成模糊推理,将推理后得到的输出量去模糊化后加到执行器上。它适用于被控对象没有数学模型或很难建立数学模型的过程中,并且在这些过程中参数变动呈现极强的非线性,模糊控制是解决不确定性系统控制的一种有效途径。2.1.2 模糊集合(1)论域。具有某种特定属性的对象的全体,称为集合。所谓论域,指我们所研究的事物的范围或所研究的全部对象。论域中的事物称为元素,其中一部分元组成的集合称作子集。(2)模糊集合定义。论域U中的模糊集F用一个在区间0,1上的取值的隶属函数来表示,即是用来说明隶属于的程度, F可以表示为: 以越接近1则表示x属于F的程度越高;以越近0则表示x属于F的程度越低。模糊集合不仅能区分清晰类事物,更适用于模糊性事物。(3)隶属函数。通过隶属函数可以将模糊集合的模糊性作定量描述,故隶属函数在模糊集合中占有十分重要的地位。隶属函数的值域为0,l,根据论域为分散或连续的不同情况,隶属度函数的描述也有两种:数值描述方法和函数描述方法。常见的隶属函数有正态分布函数、三角函数、梯形函数、S型函数、Z型函数等。不同的隶属函数所描述的模糊集合也不同,同时隶属度函数的形状对模糊控制的性能有很大影响。正确定义隶属函数,是运用模糊集合理论解决模糊控制问题的基础,也是模糊理论中的关键问题。隶属函数一般根据经验或统计确定,也可由经验丰富的专家给出,因此隶属函数的确定又带有主观性。常用的隶属函数确定方法有:模糊统计法、例证法、专家经验法及二元对比函数法。2.1.3 模糊规则和模糊推理(1)语言变量。语言变量是指以自然或人工语言的词、词组或句子作为值的变量。模糊语言变量是自然语言中的词或句,取值不是通常的数,而是用模糊语言表示的模糊集合。模糊控制规则中位于前提的语言变量构成模糊输入空间,位于结论的语言变量构成模糊输出空间。每个语言变量的取值为一组模糊语言名称,它们构成了模糊语言名称的集合,每个模糊语言名称相应一个模糊集合。模糊语言变量的确定,包含了根据语法规则生成适当的模糊语言值,根据语义规则确定语言值的隶属函数以及确定语言变量的论域等。在模糊控制中,关于误差的模糊语言常见的有:正大(PB)、正中(PM)、正小(PS)、零(ZE)、负小(NS)、负中(O)、负大(NB)。一般说来一个语言变量的语言值越多,对事物的描述就越准确,控制效果就越好。(2)模糊命题。模糊命题是指含有模糊概念,具有某种真实程度的陈述句,模糊命题的真值,由该变量对模糊集合的隶属程度表示。模糊命题分为:子模糊命题和复合模糊命题。子模糊命题是指单独的陈述句,如:x为A,x为语言变量,A为语言变量x的值:复合模糊命题是指子模糊命题通过连接词“且”、“或”、“非”连接起来构成的命题(“且”、“或”、“非”分别表示模糊交、模糊并、模糊补)。(3)模糊规则。模糊控制是建立在一系列模糊控制规则基础上的,这些规则是人对被控对象进行控制时的经验总结。如:“若x为a,则y为b”或“IF A,THEN B”。其中x,y为语言变量,a, b为语言变量的值,A表示“x为a”,B表示“y为b”,A,B为不同论域上的集合。模糊控制中,有简单模糊条件语句、多重简单模糊条件语句等。应用最多的是一类二维模糊语句,一般用A表示偏差,B表示偏差变化率,C表示控制量,语句形式为:“若A且B则C”或IF A and B , THEN C”。(4)模糊推理。推理是根据一定的原则,从一个或几个已知判断引出一个新的判断的思维过程。推理包含两个部分的判断,一部分是已知的判断,作为推理的出发点,叫做前提(前件),由前提所推出的判断,叫做结论(后件)。模糊推理是一种近似推理,模糊控制理论中比较常用的推理方法有Mamdani模糊推理算法、Takagi-Sugeno型模糊推理算法。本文中主要用的是Mamdani型模糊推理算法。它采用极小运算规则定义模糊蕴涵表达的模糊关系。在多输入多输出的模糊逻辑系统中,常可能会有很多规则,并且这些规则的前提部分和结论部分也可以由许多语句组成。前面介绍的IFTHEN规则只是最简单的形式,是最基本的模糊系统单元。对于复杂的模糊逻辑系统,如果满足“输出一输入解耦的,各输入间、输出间分别是独立的”,就可以用连接词“and”、“or”和“also”连接的一系列简单的模糊规则组成的模糊规则库来表示。其中,“and”和“or”用来连接同一规则的多个输入或多个输出,“also”用来连接多条不同的模糊规则。模糊推理的规则通常来源于专家的知识,对于多输入多输出系统,其规则库可以看成由n个子规则库所组成,每一个子规则库由n个多输入单输出规则所组成,而且每个子规则库是相互独立的,因此通常只要考虑一个多输入单输出规则库的模糊推理问题,分别求出每一个单输出,组合起来就是最终结果。2.1.4 反模糊化通过模糊推理得到的结果是一个模糊集合或者隶属函数,但在实际使用中,特别是在模糊逻辑控制中,必须用一个确定的值才能控制或驱动执行机构。在推理得到的模糊集合中取一个相对最能代表这个模糊集合的单值的过程就称作反模糊化或解模糊,常用的有最大隶属度法、重心法和加权平均法。(1)最大隶属度法。这种方法最简单,在输出模糊集合中取隶属度最大的作为精确值输出。(2)重心法。所谓重心法就是取输出模糊集合隶属函数曲线与横坐标轴围成面积的重心相应的输出作为输出的精确值。(3)最大平均法。当输出模糊集合不是单峰的,其隶属函数有多个极值时,可以把值最大的所有输出取平均作为精确值输出。2.2 模糊控制系统的设计3.2.1 模糊控制系统的组成及原理模糊控制属于计算机数字控制的一种形式,因此,模糊控制系统的组成类似于一般数字控制系统,其基本原理框图如图4.2所示。图4.2 模糊控制系统原理框图(1)模糊控制器:这是模糊控制系统的核心部分,采用基于模糊控制知识表示和规则推理的语言型“模糊控制器”,这也是模糊控制系统区别于其他自动控制系统的特点所在。(2)输入/输出接口:模糊控制器通过输入/输出接口从被控对象获取数字信号,并将模糊控制器决策的数字信号经过数模转换,将其转变为模拟信号,然后给被控对象。在I/O接口装置中,除A/D,D/A转换外,还包括必要的电平转换。(3)执行机构:包括交、直流电机,伺服电机,步进电机,气动调节阀和液压电动机、液压阀等。(4)被控对象:这些被控对象可以是确定的或者模糊的、单变量的或者多变量的、有滞后的或者无滞后的,也可以是线性的或者非线性的,定常的或者时变的,以及具有强耦合和干扰等多种情况。对于那些难以建立精确数学模型的复杂对象,更加适合采用模糊控制。(5)传感器:是将被控对象或者各种过程的被控量转换为电信号(模拟或者数字的一类装置)。被控制量往往是非电量,如位移、速度、加速度、温度、压力、流量、浓度、湿度等。传感器在模糊控制系统中占有十分重要的地位,它的精度往往直接影响整个控制系统的精度,因此,在选择传感器时,应该选择精度高且稳定性好的传感器。模糊控制系统主要由模糊控制器、输入/输出接口、执行机构、被控对象、传感器等组成。模糊控制系统的核心是模糊控制器,其工作原理如下:模糊控制的控制规则部分由计算机的程序实现,微机通过采样获得被控制量的精确值,然后将此量与给定值相比较得到误差信号E(在此取误差反馈)。一般误差信号E作为模糊控制器的输入量。把误差信号E的精确量进行模糊化变成模糊量,误差E的模糊量可用相应的模糊语言来表示。至此,得到了误差E的模糊语言集合的一个子集 (e实际上是一个模糊向量)。 再由 e和模糊控制规则R(模糊关系)根据推理合成规则进行决策,得到模糊控制量u为:R 。为了对被控对象施加精确的控制,还需要将模糊量u转换为精确量,即反模糊化。得到了精确的数字控制量后,经数模转换后送给执行机构,对被控对象进行控制。由图4.2所示模糊控制器主要由四部分组成:(1)模糊化:将输入的精确量转化为模糊量。其中输入量包括外界的参考输入,系统的输出或状态等。(2)知识库:包含了具体应用领域中的知识和要求的控制目标。它通常由数据库和模糊控制规则库两部分组成。(3)模糊推理:是模糊控制器的核心,它具有模拟人的基于模糊概念的推理能力。该推理过程基于模糊逻辑中的蕴涵关系及推理规则来进行,包括将模糊规则库中的模糊“IFTHEN”规则转换成某种映射,即将输入空间上的模糊集合映射到输出空间的模糊集合。主要包括连接词的计算、“IFTHEN”规则的表示、直觉推理判据和一些相关的运算性质。(4)反模糊化:将模糊推理得到的控制量(模糊量)变换为实际用于控制的清晰量。或理解为将输出空间上的一个模糊集合映射为一个确定的点,以达到实际运用的目的。 2.2.2 模糊控制器设计的基本方法与步骤实现模糊控制一般步骤如下:(1)确定模糊控制器的输入变量和输出变量(即控制量);(2)设计模糊控制器的控制规则;(3)进行模糊化和去模糊化;(4)选择模糊控制器的输入变量及输出变量的论域,并确定模糊控制器的参数。(如量化因子、比例因子);(5)编制模糊控制算法的应用程序。在实际应用中,一般采用系统输出的偏差E和偏差的变化率EC作为输入信息,而把控制量的变化作为控制器的输出量。一般的双输入单输出模糊控制系统的结构图如图4.3所示。图中,表示量化因子,表示比例因子。下面针对图4.3所示的双输入单输出模糊控制系统说明模糊控制器的设计方法。图4.3双输入单输出模糊控制系统示意图输入输出变量的模糊语言描述。为了把控制规则中偏差e,ec以及控制量u所对应的语言变量E,Ec,U表示成模糊集,通常把语言变量分为几个档次,用不同的语言值表示。选择较多的词汇描述输入、输出变量可以使制定控制规则方便,但是控制规则相应变得复杂;选择词汇过少,便利描述变量变得粗糙,导致控制器性能变坏。一般情况下选择七个词汇,但有时也可根据实际系统需要选择三个或五个语言变量。3 二级倒立摆模糊控制器的设计倒立摆系统的简化物理模型如下图所示:该系统的微分方程是:其中m是摆杆的质量,l是摆长,是从垂直方向上的顺时针偏转角,=u(t)为作用于杆的逆时针扭矩,t是时间,g是重力加速度常数。假设x1=,x2=d/dt为状态变量,则由微分方程式给出的非线性系统的状态表达式为由于偏转角很小时,sin=,可以将状态空间线性化表示:线性离散时间状态空间表达式可以用矩阵差分方程来表示:设两个输入变量的论域为-5,5和-9,9 所以分别在两个输入变量的空间建立相应的隶属度函数。分别用下图中在matlab仿真的情况来说明。首先,对x1在其论域上建立三个隶属度函数,指示值分别为正值(P)、零(Z)和负值(N)如下图3.1 图3.1同样的对输入x2进行修改如下图 3.2 图 3.2然后划分控制空间(输出),对u(k)在其论域上建立5个隶属度函数。下图为具体的输出u的分区情况。然后用下表所示的规则建立具体的输入输出规则X1 X2PZNPPBPZZPZNNZNPB然后将上述实施规则录入到matlab仿真结构中,具体如下图3.3所示。 图3.3录入结束后要对所指定的输入输出规则进行保存,以便在具体的仿真过程中实现调用,保存的文件扩展名为.fisIf(x1=P)and(x2=Z),then(u=P)If(x1=P)and(x2=N),then(u=Z)If(x1=Z)and(x2=Z),then(u=Z)If(x1=Z)and(x2=N),then(u=N)此外,在建立起具体的模糊推理规则以后,可以通过view功能来得到规则的直观显示,这些图形可以帮助更好的理解建立的模糊推理规则。如下图3.4 图3.4设置完后保存文件为abc.fis通过Matlab进行建模如下图3.5 图3.5最后,通过调用已经建立的模糊推理系统来进行具体模型的仿真分析。在这个过程中需要对物理量进行适当且合理的赋值。具体意义见的源代码的相应注释。%倒立摆仿真源代码 dt=0.0001; % 仿真步进T=15; % 仿真时间长度t=0:dt:T; % 仿真计算时间序列g=9.8; % 重力加速度L=1; % 摆线长度m=10; % 摆锤质量k=5; % 空气阻力比例系数theta0=3.1; % 初始摆角设置v0=0; % 初始摆速设置v=zeros(size(t); theta=zeros(size(t);v(1)=v0; theta(1)=theta0; for n=1:length(t) v(n+1)=v(n)+(g*sin(theta(n)-k./m.*v(n).*dt; theta(n+1)=theta(n)-1./L.*v(n).*dt;endfuz=readfis(c8fzpd.fis);AX,H1,H2 = plotyy(t,v(1:length(t),t,theta(1:length(t),plot);set(H1,LineStyle,-); set(H2,LineStyle,-.);set(get(AX(1),Ylabel),String,线速度 v(t) m/s);set(get(AX(2),Ylabel),Strin

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论