小车倒摆模糊系统控制作业_第1页
小车倒摆模糊系统控制作业_第2页
小车倒摆模糊系统控制作业_第3页
小车倒摆模糊系统控制作业_第4页
小车倒摆模糊系统控制作业_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、潴以上至上冬模糊数学题目:小车倒摆模糊系统控制学 院: 机械工程学院专 业:机械电子班 级:学 号:学生:指导老师:提交日期:2013 年1月14日小车倒摆模糊系统控制问题1:如何区分模糊与可能性?模糊性通常是指对概念的定义以及语言意义的理解上的不确定性。模糊性只要是人为的主观理解上的不确定性。例如老人、温度高、数量大的不确定性都是模糊性。可能性是指:事物发生的概率,是包含在事物之中并预示着事物 发展趋势的量化指标。两者的区别是,前者是指一件事情的程度问题,后者则是指事情 发生的概率问题。问题2与问题3的解答请详见如下一、 简介小车倒立摆系统是一个典型的非线性、不稳定的控制对象,因此小车倒立摆

2、 系统的控制问题被公认为控制理论中的一个典型问题“ fuzzy group ”作出的。 1992年J.S.Jang提出的自适应神经网络模糊控制的方法对于倒摆控制系统这 个经典问题又有了极大的发展。下面我们使用基于自适应网络的模糊推理系统 ANFIS来研究倒摆的控制问题。二、小车倒摆的数学模型分析图1中给出了二维的杆和滑车系统,滑车可以沿轨道运动。如图1所示。倒 立摆不是稳定的,如果没有适当的控制力作用在它上面, 它将随时可能向任何方 向倾倒。这里只考虑二维问题,即认为倒立摆只在图2所示平面内运动。控制力 F作用于小车上。假设摆杆白重心位于其几何中心 Ao在滑车的质量重心的控制 力为F,现设计其

3、控制器,使杆尽可能平衡,同时滑车的水平位置也得到控制, 跟踪一个指令信号xd(t)0其中M为滑车的质量;m为杆的质量;l为杆长的一2半;g 9.8m/s为重力加速度。建立该系统的运动方程式,首先设输入作用力为F ,输出为摆角。设摆杆(Xa, Ya),于是:XaYax l sinl cos摆杆围绕中心A点转动方程为:d2J2-Vl sin Hl cosdt2式中J为摆杆围绕重心A的转动惯量。摆杆重心A沿x轴的运动方程为:m*H dt2 d2m2-(x l sin ) H dt2杆重心A沿y轴方向运动方程:d2yAm2- V mg dt2d2mp-(l cos ) V mg小车沿x轴方向运动方程式

4、为:d 2xM J F H dt212J ml32、ml( sin cos ) V Mgd2m2(x l sin ) H dt,,2、.m(x l(cos sin ) H(M m)x ml cos42. ml lm cos x 3ml cos43ml2M mml cosF ml sinMg F ml sin x Mg此倒摆系统为非线性系统。为了运用线性系统理论和模糊控制中的Takagi-Sugeno模型进行控制器的分析和设计,可考虑将其先进行局部线性化, 使之成为假设干子系统,再将这些子系统进行综合。其物理意义是:将整个四维 状态空间分为L个模糊子空间集合,对每个模糊子空间,系统的动力学特性可

5、用 一个局部线性状态方程来描述。整个系统动力学的特性则是这些局部线性模型的 加权和。该模糊建模方法的本质在于将一个整体非线性的动力学模型用多个局部 线性模型进行模糊逼近。三、车杆系统的MATLABi型MATLA邈供了函数linmod ,从而可以在不同状态点处对非线性系统进行线性化。下面 利用这个函数来对小车模型进行线性化。首先,把车杆系统输入到 MATLAB在Simulink编辑环境中创建如图 3所示的一个车杆 系统模型,将其存盘为 ln.mdl。图3车棒系统动力学模型四、对象模糊线性化为了对小车模糊进行分析,可以将小车模型用开环子系统封装起来。用Create Subsystem命令产生一个车

6、体动力学,S型子系统。模型如图4所示:图4车棒对象系统封装模型在初始化项中加入初始状态设置和系统参数的设置:初始状态设置为0,0,0,0即平衡位置;小车质量M 1;杆的质量为m 0.1;杆的长度的一半l 0.5;重力加速度 g 9.8。右击 Cart&Pole Dynamics 选择 Mask Parameters ,弹出Function Block Parameters 对话框,修改参数设置如图 5所示:-Cart _Pslft '33sk;二:1#"工2 Fmndu;g u=:Ps_r satersInitial CcndLxicns uiglti 聆mu=&qu

7、ot; vt;ucit7r cu-tanil cart v-i;acitr);I0一电d 1Fhi:二a:喘品不 pole «trith: pe二七 二国$缸 tart sa 幅金 品;:li.Or C. 13 10: alJd凶图5参数设置在系统的仿真模型中采用了系统的,完全的,非线性的模型,但是在设计系统的控制器时,上述非线性的模型虽然精确,但由于过于复杂,非常不利于设计 出简单、实用的的系统控制器。因为在设计系统控制器时,希望利用一些不那么 精确却简单的系统模型,例如,线性系统模型,这就需要把非线性模型转化为线 性模型。通常的做法是将非线性模型在系统的某个工作状态进行线性化,这

8、时可用MATLAB勺命令linmod将系统线性化,其调用格式为A, B, C, D=linmod( 'In.mdl ' ,0,0,0,0, 0)得到的系统线性模型如下:系统状态变量为x= x ,系统输入为控制力u=F,系统/&出为y x ''xx系统状态方程为( x Ax Bu系统输出方程为( y Cx Du这样我们就得到了系统的一个线性化模型。基于这种线性模型,用线性系统理论很容易就能够设计出其控制器。五、 Takagi-Sugeno型自适应神经网络模型控制器的设计用Takagi-Sugeno模型设计的模糊控制器,对应于其用 also连接的第一条模糊规

9、则。可以将该模糊控制器看作一个线性控制器,而整体的控制器由多条模糊推理规则处理,经过模糊综合、清晰化等过程后,逼近一个非线性的控制器。它的物理意义是:将一个非线性系统在不同的假设干状态下进行线性化,然后分别设计控制器,将分别设计的线性控制器用模糊控制的理论进行综合,使之成为一个非线性的控制器。可以看出,如果选择了合适的线性化状态、模糊空间划分、 模糊隶属度函数、局部线性控制器,其最终得到的控制系统将优于一般的线性理 论所得到控制器。控制器模型可直接使用Simulink中的Fuzzy controller 来实现,控制的参 数和类型只需对Fuzzy controller 模块的参数Fismatr

10、ix进行设置来实现。Takagi-Sugeno型模糊控制器的设计关键是得到输入的模糊集合隶属度函 数以及输入、输出规则。可以根据经验和习惯来确定输入的模糊集合及其隶属度 函数,而模糊规则可以在相应的模糊集合隶属度函数的最大值点来 设计Takagi-Sugeno型控制器的输入、输出规则为线性函数,可以设计为该点处的 最优控制或是用极点配置等方法得到线必性控制器。车杆闭环系统模型结构如 图6所示:F世立斗LogicControl图6车杆闭环控制系统六、确定输入变量空间根据实际控制要求,可以大致确定的状态变量和控制变量的范围如下: 设定杆平衡指标0.3Q.3,1,1;跟踪目标指标Xd2.5,2.5;

11、控制位置偏差指标x 3,3;跟踪速度指标x 3,3;控制力限制F 10,10。七、输入空间数据点的选取根据上述的范围分析,可以划分状态空间。这里采用MATLA却度来自动产生状态空间中的点集,程序 genstate.m 和order.m用来产生状态空间的点。 order.m用来将输入各个变量的分割数目的排列组合,genstate.m 用来调用order.m 来生成输入变量数据点。函数 order.m 和genstate.m 原代码如下:刷数 order. mfunction h=order(x)%x=3,2,4,5;n=length(x);%计算输入变量个数w=prod(x,2);h=;%+算总

12、数据点数N = n1 x n2 x n3 x n4 for i=1:na=w/prod(x(1:i),2);b=w/x(i)/a;c=;m=;for k=1 :x(i);c=c;k*ones(a,1); endfor j=1:b;m=m;c; endh=h,m; endreturn ;%B 数 genstate. m function h=genstate()n1=5n2=5n3=5n4=5% 俞入变量一的分割点数目 % 俞入变量二的分割点数目 % 俞入变量三的分割点数目 % 俞入变量四的分割点数目%±述数目不必相等难们在每个变量方向上都选5个点data=order(n1 n2 n3

13、 n4);al =linspace(-0.3,0.3,n1);a2=linspace(-1,1,n2);a3=linspace(-3,3,n3);a4=linspace(-3,3,n4);%t面是进行均匀分割呦口果不想使用均匀分割可以直接给定其他的分割点%且是个数必须与前面指定的相当涮如 al=-0.25 -0.15 0 0.2 0.3;for i=1:length(data);data(i,1)=al (data(i,1);data(i,2)=a2(data(i,2);data(i,3)=a3(data(i,3);data(i,4)=a4(data(i,4);end;%t述语句将各个输入变量

14、组合成数据h=data;return ;编写好上述函数并存盘在MATLAB工作目录下,可以通过以下命令来观察这 两个函数的作用:order(3,2,4,5) genstate()八、数据点输出计算对于上面划分的模糊BO心间,用上述的每个离散状态空间点 X1,X2,.,Xn来 线性化线性车杆模型,选择合适的 LQR控制参数Q,R,N ,设计出线性最优控制 器K1,K2,.,Kn。根据控制要求和仿真结果选择一组 Q,R, N:10 00000 500Q, R 0.5, N0 0 100 00 0050经仿真发现闭环系统的系统动态性能比较能符合要求。在MATLAB提供函数K,S,E lqr (A,B

15、,Q,R,N)来针对每个空间输入点来设计最优控制器Kl,这里A,B是前面线性化得到的九、训练生成ANFIS模糊推理系统当获得了足够的数据,就可以用自适应神经网络模糊系统来模糊这些离散状 态的和并且模糊综合那些线性控制器Ki, K2).,Kn,即训练产生模糊规则和隶属度函数。下面,用模糊神经网络并根据上述的离散状态空间采样点及其相应的控 制力F1,F2,.FN ,来训练产生模糊控制器。MATLAB提供函数ANFISA完成,经过 训练得到的模糊控制参数矩阵包括输入的模糊隶属度函数及输出Sugen那模糊控制规则。下面函数genfismat.m来完成ANFISS统的训练过程:炉中k为前面生成的输入空间

16、数据 function h= genfismat(k) q=10 0 0 0;0 5 0 0;0 0 100 0;0 0 0 5;%最优控制参数Qr=0.5;%最优控制参数Rn=0 ;0 ; 0; 0;%1优控制参数Nlk=size(k);lk=lk(1);data=; for i=1:lk;a,b,c,d=linmod( 'ln' ,k(i,:);照4所生成的对象模型K,S,E=lqr(a,b,q,r,n);X=k(i,:)*K'R=k(i,:),-X;data=data;R; end h=data; return下面这段命令用来结合前面的所有程序和过程来完整地生成车

17、杆系统的模糊控制器。在确认前面所编写的函数 genfismat.m、genstate.m > genrulescp.mdl 文件都已经存在之后,输入下面命令来生成该车杆系统的模糊控制器:state=genstate;fismatrix=genrules(state);输出结果如以下图所示WI5 info:Number of nodes; 55JFumber af linear parajnelers: SONumber of nonlinear parsjieters: 24Tot al nuuLber of par ameters: 104Ihunber of t raining: d

18、art a pairs: 900Number of checking: data pairs: Dof fuasy 匚。1电3; 16St arl ti;aiaing iNFIS . 10,07896782I07747330,07592534U,07433225LI.0727025Step size increases to 011000 after epoch 5.60.071D4S970.06921028Q,067375290,0655632St ep size increases to 0» 012100 after epoch 9.10a,063S013Designated

19、epoch number reachsd 一一 AKFIS training coupleted at epoch 10.f ijnatrix =xi3jne: type: 加西Shod; orMethod: defuzzMethod: iuipJAethod: agg: Method;input: output; xule;'anf 工"sugano'"pxod?d 一一 ,R3LK"wtaver皿疝 一 tmas1x4 St!uct1x1 sixact1x16 struct十、模型仿真根据上述的倒摆模型和线性化理论,用模糊神经网络训练产生模糊规

20、则,用 MATLA般计函数genrules来产生控制参数矩阵fismatrix ,离线生成模糊控制 参数矩阵后可以存盘为cp.fis文件。以后使用前调用命令fiamatrix=readfis'就可以进行仿真了。MATLA中自带了车棒系统的仿真,K型以及一个设计好的Sugeno型模糊控制系统。仿真模型可以通过 SLCP可以打开这个仿真模块。如果我们希望使用刚刚自己所创建的模糊推理系统 CP.FIS,可以在打开模 型以后,在MATLAB2作命令行环境里输入命令fiamatrix=readfis '用 我们创建好的模糊模型来替换系统自带的推理系统。仿真图如下。I-IQ 5ppc昌自

21、麻郎卢I莉圈飘 日。/卜一、对控制参数进行修改已到达最优控制1、先对R0.5进行修改,当Rfi从0.5减小到0.1时,图形变化如下:I Scope口 B S2与电的融挹I胃-R=0.1时的仿真将上图与R=0.5时的仿真进行比照,可以看出,仿真结果变化不大,系统 能到达控制的效果。当Rfi从0.5逐渐增大时,图形变化如下:6看8R*I r ImT闷I00|万户4I强迪已季R=1R=2将上述两图与R0,5时进行比照,可以看出,R逐渐增大时,系统不能到达 控制的效果。综上所述:最优控制参数RR好维持在0.1 ,1.0 的区间内,系统才能到达控制 的效果。2、对控制参数n=0 ;0 ; 0;0进行修改,当n=10 ;0 ; 0; 0 时,仿真结果如 下:Mli=i 当盟I户户#1的涓房I营/>当的0 ;10 ; 0; 0 时,仿真结果如下:Bl KCp=-=J IJ.息茸|庐户Q埼儡国营干当口=0 ;0 ; 10; 0 时,仿真结果会出现错误,无法仿真当口=0 ;0 ; 0; 10 时,仿真结果如下:.Scope| C3 | L11 立曾昌|向庐尸蹒暗唱B i *-当n=10;0 ; 10;0 时,仿真结果如下Sccppo= 1EFH0由工:户&

温馨提示

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

评论

0/150

提交评论