模糊控制一级倒立摆matlab实现文档格式.docx
- 文档编号:21883506
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:9
- 大小:154.76KB
模糊控制一级倒立摆matlab实现文档格式.docx
《模糊控制一级倒立摆matlab实现文档格式.docx》由会员分享,可在线阅读,更多相关《模糊控制一级倒立摆matlab实现文档格式.docx(9页珍藏版)》请在冰豆网上搜索。
模糊控制;
MATLAB/SIMULINK
一引言
倒立摆最初研究开始于20世纪50年代,麻省理工学院的控制论专家根据火箭发射器原理设计出一级倒立摆实验设备,而后倒立摆就成了验证控制方法和理论的实验平台,被广泛应用与实验教学中。
一级倒立摆具有结构简单,便于模拟的优点,同时它在控制过程中能够优先的反应控制中的许多关键问题,如系统的非线性、鲁棒性等。
因此对倒立摆的研究一直是控制领域中经久不衰的课题。
二一级倒立摆数学模型的建立
在忽略各种摩擦之后,一级倒立摆系统是由小车、质量块和匀质杆组成的系统,通过控制小车位置,以使小车上的倒立摆始终处于反转垂直位置,左右倾斜角在
范围内,原理结构图如图1.1所示。
图1.1一级倒立摆原理结构图
对该模型进行受力分析,作如下假设:
M小车质量1.096Kg
m摆杆质量0.109Kg
b小车摩擦系数0.1N/m/sec
I摆杆惯量0.0034Kg*m*m
T采样频率0.005s
摆杆转动轴心到杆质心的长度0.25m
F夹在小车上的力
x小车位置
摆杆与垂直向上方向的夹角
摆杆与垂直向下方向的夹角
分析小车水平方向所受的合力:
摆杆水平方向的合力:
即:
把这个等式代入上式中,得到系统的第一个运动方程:
对摆杆垂直方向上的合力进行分析,得到以下方程:
力矩平衡方程如下:
合并以上两个方程,得到第二个运动方程:
线性化后两个运动方程如下:
对方程组进行拉普拉斯变换,得到摆杆角度和小车位移之间的传递函数:
将实际参数代入后得到实际模型:
三模糊控制器控制
3.1模糊控制原理
模糊逻辑控制简称模糊控制,是以模糊集合论、模糊语言变量和模糊逻辑推理为基础的一种计算机数字智能控制技术。
模糊控制的基本思想是把人类专家对特定的被控对象或过程控制策略总结成一系列以“IF条件THEN作用”形式表示的控制规则,通过模糊推理得到控制作用集,构成相应的算法,作用于被控对象或过程。
模糊控制的基本原理图如图3.1所示。
模糊控制器主要可以分为四个部分:
输入量模糊化接口、知识库、模糊推理和输出量解模糊接口。
1、输入量模糊化接口
模糊逻辑控制器的输入量必须要经过模糊化才能够用于模糊控制系统输出的求解,模糊化接口是模糊控制器的输入接口。
模糊控制器的输入语言变量一般取系统误差和误差变化率,它的主要作用是将确定量转化为模糊域的模糊量。
图3.1模糊控制的基本原理图
2、知识库
知识库包括数据库和规则库,它存放着模糊控制器的全部知识,决定模糊控制器的主要性能,知识库是模糊控制器的核心组成。
(1)数据库
模糊逻辑控制中的数据库主要包括量化等级的选择、量化方式、比例因子和模糊子集的隶属度函数。
在模糊推理规则的模糊关系方程的求解过程中,向推理机提供具体数据。
(2)规则库
规则库中存放着全部的模糊控制规则,它根据控制目的和控制策略给出了一套由语言变量描述的通过如专家或者手动操作人员经验的积累产生的控制规则集合,主要是在推理时向推理机提供控制规则。
它一般的表示形式如下:
3、模糊推理
在模糊控制中,最常用的表达知识的语句形式是模糊语句。
模糊语句包括模糊直言语句和模糊条件语句,即判断句和推理句。
模糊控制规则通常表述为“IF前提THEN结论”,基于已知的前提条件得到相应的结论的过程,就是推理。
4、输出量解模糊接口
经过模糊推理得到的模糊控制器输出结果仍然是一个模糊概念,然而实际控制中需要从输出的模糊集合中判决出一个确定的控制量u作用于被控对象来驱动执行机构,所以为了得到实际的用于控制的精确量还必须要对模糊量进行一次转换计算,即为解模糊。
通常我们把输出端具有转换功能的部分叫做解模糊接口。
3.2模糊控制器设计步骤
实现模糊控制一般步骤如下:
1、确定模糊控制器的输入变量和输出变量(即控制量);
2、设计模糊控制器的控制规则;
3、进行模糊化和去模糊化;
4、选择模糊控制器的输入变量及输出变量的论域,并确定模糊控制器的参数。
5、编制模糊控制算法的应用程序。
3.3模糊控制器
1、定义输入输出变量并命名
在MATLAB提示符下键入下列名字启动系统“Fuzzy”。
打开一个标记为input1的单输入,标记为output1的单输出的一个没有标题的FIS编辑器。
打开Edit菜单并选择AddVariable...分别添加输入、输出,并分别命名为e,ec,u。
将控制器命名为“jiaodu”,如图3.2所示。
图3.2设置好的fis编辑器
2、编辑隶属函数
在上图所示窗口中,打开View下拉式菜单并选择EditMembershipFunctions...通过双击各个变量,设置Range和DisplayRange以及定义其论域和每支隶属函数的范围。
将输入误差e、误差变化率ec,输出u分别划分为7个模糊集:
NB(负大),NM(负中),NS(负小),ZO(零),PS(正小),PM(正中),PB(正大)。
即模糊子集为e=ec=u={NB,NM,NS,ZO,PS,PM,PB}。
经计算得论域分别为[-0.526,0.526],[-1,1],[-6,6]。
如图3.3所示。
图3.3隶属函数编辑器
3、编辑模糊规则库
根据电机输出力的大小与摆杆角度的关系,确定角度控制的模糊规则库,如表3.1所示。
在上图所示窗口中,点击“Edit”,选中“Rules...”按照表中的关于e、ec、u的模糊规则,参照编辑器的提示,将规则一条一条的录入其中,如图3.4所示。
表3.1模糊规则表
模糊规则
e
NB
NM
NS
ZE
PS
PM
PB
ec
图3.4模糊规则库
将规则输入后,通过viewer菜单得到直观图,可以看到它有明显的梯度分布,如图3.5所示。
图3.5模糊规则直观图
模糊控制器设计完成后,保存为“jiaodu.fis”文件,在MATLAB命令窗口中执行jiaodu=readfis(jiaodu.fis)命令,将模糊控制器与simulink中的模块相连接。
四SIMULINK仿真
在SIMULINK中搭建仿真框图,如图4.1所示。
图4.1控制系统SIMULINK模型
对该系统进行仿真,得到仿真结果,如图4.2所示。
图4.2仿真结果
从图中可以看出,系统在3s左右达到稳定,系统平衡在0附近,证明该控制器对该系统进行了有效的控制。
五结论
在MATLAB环境下,通过Fuzzy和SIMULINK建立模糊控制器,使得一级倒立摆系统在较短时间内达到期望稳定值,从仿真结果来看,模糊控制系统在对不稳定系统的控制上具有响应速度快,稳定性好的优点。
六参考文献
1王广雄,张静,罗晶,等.倒立摆的模型和控制问题.电机与控制学报,2004,8(3):
247-249
2杨治明,宋乐鹏,杨清林,等.基于模糊控制和PID控制的一阶倒立摆系统建模与仿真.北华大学学报,2012,13(3):
356-359
3黎君,阎世梁.一级倒立摆模糊PID控制器设计.研究与开发,2012,31(4):
50-52
4关文祥,陈炜,罗俊奇,等.一级倒立摆的建模、仿真与实时控制.深圳信息职业技术学院学报,2007,5
(2):
67-69
5赵文杰,张丽娟,刘延泉,等.基于模糊加权的倒立摆混合控制.控制理论与应用,2004,21(5):
689-692
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 模糊 控制 一级 倒立 matlab 实现