当前位置:文档之家› 设计模糊控制器

设计模糊控制器

设计模糊控制器实验题目:MATLAB中模糊控制器设计课程名称:智能控制概论任课教师:任彦姓名:吕同兴学号:1167106317 班级:自动化11-3班一、实验目的利用MATLAB中模糊工具箱设计一个模糊控制器二、相关知识一般控制系统的架构包含了五个主要部分,即:定义变量、模糊化、知识库、逻辑判断及反模糊化:1、定义变量也就是决定程序被观察的状况及考虑控制的动作,例如在一般控制问题上,输入变量有输出误差E与输出误差变化率EC,而模糊控制还将控制变量作为下一个状态的输入U。

其中E、EC、U统称为模糊变量。

2、模糊化将输入值以适当的比例转换到论域的数值,利用口语化变量来描述测量物理量的过程,根据适合的语言值(linguistic value)求该值相对的隶属度,此口语化变量称为模糊子集合(fuzzy subsets)。

3、知识库包括数据库(data base)与规则库(rule base)两部分,其中数据库提供处理模糊数据的相关定义;而规则库则藉由一群语言控制规则描述控制目标和策略。

4、逻辑判断模仿人类下判断时的模糊概念,运用模糊逻辑和模糊推论法进行推论,得到模糊控制讯号。

该部分是模糊控制器的精髓所在。

5、解模糊化解模糊化(defuzzify):将推论所得到的模糊值转换为明确的控制讯号,做为系统的输入值。

三、控制背景直线一级倒立摆的模糊控制四、参考资料整理1、【名称】基于模糊控制理论的二级倒立摆控制算法【作者】过润秋;洪旭;苏旺旺;【关键词】二级倒立摆;模糊控制;融合函数;量化因子;【期刊名】西安电子科技大学学报【发表时间】2006年01期【简介】采用模糊控制理论研究了二级倒立摆控制问题.运用最优控制方法设计了融合函数以降低模糊控制器的输入变量维数,大大减少模糊控制的规则数,并研究了量化因子对控制效果的影响,通过设置阈值使量化因子可自动调节,进而提高模糊控制器的性能品质.仿真和实验结果都证明这种模糊控制算法规则数少,响应速度快,有良好的稳定性和鲁棒性.2、【名称】直线一级倒立摆控制策略研究及仿真分析【作者】梁春辉;冯雷;张欣;【关键词】直线一级倒立摆;数学模型;经典控制方法;现代控制方法; MATLAB/SIMULINK;【期刊名】长春工程学院学报(自然科学版)【发表时间】2010年01期【简介】应用牛顿力学定律建立了直线一级倒立摆的传递函数、状态空间表达式等数学模型,并分析其稳定性、可控性和可观测性。

在此基础上,分别研究经典控制方法和现代控制方法在一级倒立摆系统中的应用,包括PID控制算法、系统频率响应分析与校正、线性二次最优控制算法和极点配置法,并在MATLAB/SIMULINK仿真平台上对这些控制算法的效果进行仿真,可以取得不同的控制效果。

3、【名称】基于变量分组模糊控制算法的倒立摆系统【作者】魏胜男;【关键词】倒立摆;模糊控制;变量分组;两回路;【期刊名】微计算机信息【发表时间】2012年02期【简介】采用模糊控制理论研究了直线一级倒立摆控制问题。

直线一级倒立摆系统是多变量不稳系统,为了解决模糊规则爆炸问题,本文采用了变量分组的方法完成倒立摆模糊控制器的设计方案。

要使直线一级倒立摆系统稳定,必须对小车位置和摆杆角度同时进行闭环控制,而单一的控制只能控制一个控制量,本文提出了两回路的模糊控制方案。

仿真和实验结果证明了该方案的可行性和良好的控制性能。

4、【名称】基于模糊控制技术的倒立摆控制【作者】陈振锋;张鹏;蔡毓峰;丁莉芬;【关键词】倒立摆;模糊控制;模糊规则; Simulink;仿真;【期刊名】中国民航学院学报 ,【发表时间】2004年06期【简介】简要介绍了模糊控制技术的发展和应用,详细介绍了模糊控制器的设计,着重讨论了单级倒立摆的模糊规则的制定,并通过Simulink仿真,验证了所制定的模糊规则的正确性和可行性。

5、【名称】一种双轮小车的自平衡运动控制系统【作者】齐光景;谢刚;柳英杰;【关键词】双轮小车;模糊控制;运动控制;【期刊名】计算机仿真 ,【发表时间】2014年04期【简介】研究双轮自平衡小车控制的优化问题,由于双轮小车运行不稳定和具有非线性、强耦合等特性,无法准确建立数学模型,传统控制理论已不能很好的满足实际控制要求,为了解决双轮小车高速稳定运行的问题,在考虑了被控对象的特性同时又兼顾了实际工程应用的基础上,建立了系统动力学模型并进行了特性分析,提出一种模糊-PI复合控制方法。

上述方法对双轮小车的倾斜角度和速度分别设计了模糊控制器和Pl控制器,通过小车的速度控制仿真和抗干扰特性仿真,结果表明,所设计的模糊-PI控制器能够保证双轮自平衡小车的高速稳定运行,改进方法不仅抗干扰性强,动态品质好,而且结构简单,易实现,具有很好的工程实用价值。

五、分析模型倒立摆已由原来的直线一级倒立摆扩展到很多类型,最主要的有直线倒立摆,环形倒立摆和复合倒立摆等,在此主要研究简单基础的直线一级倒立摆,采用模糊算法进行倒立摆的模糊控制器设计。

倒立摆具有非线性,不确定性,耦合性,开环不稳定性和约束限制的特性。

直线一级倒立摆的数学模型建立过程如下:那我们在本实验中定义如下变量: M 小车质量 (本实验系统 0.5 Kg ) m 摆杆质量 (本实验系统 0.2 Kg )b 小车摩擦系数 (本实验系统 0.1 N/m/sec ) l 摆杆转动轴心到杆质心的长度(0.3 m ) I 摆杆惯量 (0.006 kg*m*m ) F 加在小车上的力 x 小车位置φ 摆杆与垂直向上方向的夹角θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图,图示方向为矢量正方向。

应用Newton 方法来建立系统的动力学方程过程如下: 分析小车水平方向所受的合力,可以得到以下方程:N x b F xM --= 由摆杆水平方向的受力进行分析可以得到下面等式:)sin (22θl x dtd mN +=即 θθθθsin cos 2ml ml x m N -+= 把这个等式代入上式中,就得到系统的第一个运动方程:F ml ml x b xm M =-+++θθθθsin cos )(2 (1) 为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:θθθθθcos sin )cos (222ml ml mg P l dtd m mg P --=-=-即:力矩平衡方程如下:θθθ I Nl Pl =--cos sin 注意:此方程中力矩的方向,由于θφθφφπθsin sin ,cos cos ,-=-=+=,故等式前面有负号。

合并这两个方程,约去P 和N ,由231ml I =得到第二个运动方程: θθθcos sin 24xml mgl ml -=+ (2) 设φπθ+=(φ是摆杆与垂直向上方向之间的夹角),假设φ与1(单位是弧度)相比很小,即φ《1,则可以进行近似处理:1cos -=θ,φθ-=sin ,0)(2=dtd θ。

用u 来代表被控对象的输入力F ,线性化后两个运动方程如下:⎪⎩⎪⎨⎧=-++=-u ml x b x m M x g l φφφ)(34 (3) 传递函数对方程组(3)进行拉普拉斯变换,得到⎪⎩⎪⎨⎧=Φ-++=Φ-Φ)()()()()()()()(342222s U s s ml s s bX s s X m M ss X s g s s l (4) 注意:推导传递函数时假设初始条件为0。

由于输出为角度φ,求解方程组(4)的第一个方程,可以得到)(]34[)(2s sgl s X Φ-=把上式代入方程组(4)的第二个方程,得到)()()()()()()(22222s U s s ml s s s g mlml I b s s s g ml ml I m M =Φ-Φ⎥⎦⎤⎢⎣⎡+++Φ⎥⎦⎤⎢⎣⎡-++ 整理后得到传递函数:sqbmgls q mgl m M s qbml s s qml s U s -+-+=Φ2323442)()()(其中 ])())([(22ml ml I m M q -++= 状态空间方程 系统状态空间方程为DuCX y Bu AX X+=+=方程组(3)对φ ,x解代数方程,得到解如下: ⎪⎪⎪⎩⎪⎪⎪⎨⎧++++++-==+++++-==u l m M l m M m M g x l m M b um M m M m g x m M b x x x )4(3)4()(3)4(3)4(4)4(3)4(4φφφφφ整理后得到系统状态空间方程:u l m M m M x x lm M m M g lm M b m M m g m M b x x ⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+++⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡+++-++-=⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡)4(30)4(400)4()(3)4(3010000)4(3)4(400010φφφφ u x x x y ⎥⎦⎤⎢⎣⎡+⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡=0001000001φφφ 系统Matlab 仿真和开环响应实际系统参数如下,求系统的传递函数、状态空间方程,并进行脉冲响应和阶跃响应的Matlab 仿真。

M 小车质量 1.096 Kg m 摆杆质量0.109 Kg b 小车摩擦系数0 .1N/m/secl 摆杆转动轴心到杆质心的长度 0.2 5mI 摆杆惯量0.0034 kg*m*mF 加在小车上的力x 小车位置θ 摆杆与垂直方向的夹角 T 采样频率0.005秒注意:在进行实际系统的Matlab 仿真时,请将采样频率改为实际系统的采样频率。

传递函数:在Matlab 中,拉普拉斯变换后得到的传递函数可以通过计算并输入分子和分母矩阵来实现。

求系统传递函数的m-文件内容如下: M = 1.096; m = 0.109; b = 0.1; I= 0.0034; g = 9.8; l = 0.25;q = (M+m)*(I+m*l^2)-(m*l)^2; %simplifies inputnum = [m*l/q 0]den = [1 b*(I+m*l^2)/q -(M+m)*m*g*l/q -b*m*g*l/q] t = 0 : 0.01 : 5;impulse ( num , den , t ) axis ( [ 0 1.1 0 70 ])执行上面的文件,就可以求出系统传递函数的分子与分母多项式的Matlab 表示: num =2.3566 0 den =1.0000 0.0883 -27.8285 -2.3094可以得到系统开环脉冲响应的曲线如下:I m pulse R esponseTim e (sec)A m p l i t u d e图4 系统开环脉冲响应曲线状态空间法:状态空间法可以进行单输入多输出系统设计,(从实验二开始,我们将尝试同时对摆杆角度和小车位置进行控制)。

相关主题