《matlab实验七及实验八》由会员分享,可在线阅读,更多相关《matlab实验七及实验八(9页珍藏版)》请在金锄头文库上搜索。
1、实验七实验七 线性二次型指标最优控制系统设计线性二次型指标最优控制系统设计一、实验目的一、实验目的1、学习线性二次型指标最优控制系统设计方法。 2、完成线性二次型指标最优控制系统设计实践。二、相关知识二、相关知识 最优控制系统是指在一定的具体条件下,在完成所要求的控制任务时,系 统的某种性能指标具有最优值。根据系统的不同用途,可提出各种不同的性能 指标,最优控制的设计就是选择最优控制以使某一种性能指标为最小(或者最优 值)。在实际工程应用中,最优控制系统的性能指标通常采用二次型指标。 对于状态完全能控的线性连续定常系统,其状态方程为,( )( )( )x tx tu t0,0; B=0,1;
2、%该语句的号代表求矩阵转置 C=1,0;D=0; Q=2,1;1,4; R=1/2;3K,P,E=lqr(A,B,Q,R) %计算并显示最优状态反馈矩阵 K、P 矩阵和特征值 E 上述程序执行后,计算出的最优状态反馈矩阵 K 为2.03.4641K那么,使系统线性二次型性能指标 J 取最小的最优控制为*( )u t* 12( )2 ( )3.4641( )u tx tx t 另外,代数黎卡提(Riccati)方程的解 P 矩阵为2.46411 11.7321P闭环系统特征方程的特征值为,12.7321 20.7321 由自动控制理论,上述特征值均具有负实部,闭环系统是渐近稳定的。 根据以上计算
3、,可得到状态反馈最优控制系统结构图如图所示。 2. 设线性系统的状态方程为,输出方程为0100 ( )001( )0( ) 169121ttt 0 0 1;-16 -9 -12;B=0;0;1; Q=300 0 0;0 1 0;0 0 1;R=1;N=0;0;1;K,P,E=lqr(A,B,Q,R,N) 上述程序执行后,计算出的最优状态反馈矩阵 K 为 7.57978.59221.6449K4那么,使系统线性二次型指标 J 取最小的最优控制为*( )u t* 123( )7.5797 ( )8.5922( )1.6449( )u tx tx tx t 另外,代数黎卡提(Riccati)方程的解
4、,即对称矩阵 P 为 270.8183113.7437.5797 113.743115.46518.5922 7.57978.59220.6449 P闭环系统特征方程的特征值为,112.3776 2,30.63371.2262i 上述特征值均具有负实部,根据自动控制理论,该闭环系统是渐近稳定的。 根据以上计算,可得到状态反馈最优控制系统结构图如图所示。 三、实验报告要求三、实验报告要求1、提交所有仿真结果; 2、根据实验结果,判断系统的稳定性。5实验八实验八 模糊控制系统仿真实验模糊控制系统仿真实验一、实验目的一、实验目的 (1)熟练掌握 MATLAB/SIMULINK 工具箱的使用; (2)
5、利用 MATLAB/SIMULINK 与 FUZZYTOOLBOX对给定的二阶动态系统, 确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制 规则; 比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响 应的变化情况;掌握用 MATLAB 实现模糊控制系统仿真的方法。二、相关知识二、相关知识 模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智 能控制方法,首先将操作人员或专家经验编写成模糊规则,然后将来自传感器 的实时信号模糊化,将模糊化的信号作为模糊规则的输入,完成模糊推理,将 推力后得到的输出量加到执行器上。 MATLAB 的模糊逻辑工具箱提供了一
6、个应用模糊逻辑方法处理各种事情的 非常方便的工具。具体来说该工具箱有三种基本的应用方式,命令行函数、 图形交互式工具和仿真模块。第一类由函数组成,可以在命令行或者自己的应 用程序里调用它们。第二类通过图形用户界面把许多函数集中在一起,形成一 个GUI(图形用户界面)开发环境,提供模糊推理系统的设计、分析和应用工具。 第三类是一系列的模块,用于在Simulink 环境下进行模糊逻辑推理的仿真。 MATLAB 的模糊逻辑工具箱提供了五个GUI 工具,用来建立模糊逻辑推 理系统,他们分别是FIS(模糊逻辑推理系统)编辑器、隶属函数编辑器、模糊规 则编辑器、规则查看器(rule viewer)、表面图
7、像查看器(surface viewer)。这些图 形用户界面都动态的连接着改变其中一个窗口的设置参数,其他的窗口也会 自动的作出相应的改变。 模糊控制器设计步骤: 1、定义输入输出模糊集 对误差e、误差变化ec 及控制量u 的模糊集及其论域定义如下 e、ec 及u 的模糊集均为NB,NM,NS,ZO,PS,PM,PB e 和ec 的论域为-3,-2,-1,0,1,2,3 u 的论域为-4.5,-3,-1.5,0,1.5,3,4.5 2、 定义输入输出隶属函数 误差e、误差变化ec 及控制量u 的模糊集及其论域确定后,需对模糊变量确 定隶属函数,即对模糊变量赋值,确定论域内元素对模糊变量的隶属度
8、。 3、建立模糊控制规则 根据人的直觉思维推理,由系统输出的误差及误差变化趋势来设计消除系 统误差的模糊控制规则,如表8-1 所示,。表中共有49 条模糊规则,各个模糊语 句之间是“或”的关系。 由第一条语句所确定的控制规则可以计算出u1。同理,可以由其余各条语句分 别求出控制量u2,u49,则控制量为模糊集和U,可表示为6U= u1+ u2+u494、模糊推理 模糊推理是模糊控制的核心,它利用某种模糊推理算法和模糊规则进行推 理,得出最终的控制量。 5、反模糊化 通过模糊推理得到的结果是一个模糊集和。但在实际模糊控制中,必须要 有一个确定值才能控制或驱动执行机构。将模糊推理结果转化为精确值的
9、过程 称为反模糊化。 表8-1 模糊控制规则表三、实验内容三、实验内容 1、Simulink 基础实验:采用 Simulink 构造如下结构框图,并用示波器 (Scope)观测输出响应。图 8-1 系统结构图2、模糊控制系统 matlab 仿真实验控制对象为,位置跟踪信号取阶跃信号,基于 MATLAB 的220( )2G sss 模糊控制器仿真步骤如下: (1) 在MATLAB 的命令窗口输入fuzzy,然后按Enter 键,打开FIS 编辑窗口, 如图8-2所示。FIS 编辑器主要是处理模糊推理系统的一些基本问题,例如输入 输出变量名,推理函数的选择等。由于本例为二维模糊控制器,因此在菜单
10、Edit|Add Varible 设置两个输入变量,一个输出变量,如图8-3 所示。 (2) 选中FIS 窗口中的input1,在右下角编辑区域将这个输入变量的名字改为 e,用同样的方法把input2(输入变量2)的名字改为ec,把output(输出变量)的名字 改为u。这时FIS窗口的状态如图8-4 所示。 (3) 现在开始编辑隶属函数。双击e就可以打开输入变量隶属函数的编辑窗口, 每个变量默认的隶属函数缺省是三个。我们可通过Edit|Add MFs 来增加隶属函 数曲线的类型和数目。若要删除某个隶属函数,先选中这个隶属函数,然后按7下Delete 键即可。修改e的范围(range)改为(-
11、6 6),并且将其中的mfs全部 删除,并且点击Edit,ADD MFS添加七个mfs,分别对应NB(负大)、NM(负中)、 NS(负小)、ZO(零)、PS(正小)、PM(正中)、PB(正大)。其中 NM、NS、ZO、PS、PM 对应曲线类型设置为trimf 型,NB 对应曲线类型设 置为zmf 型,而PB 对应曲线类型设置为smf 型。设置好的窗口如图8-5所示。图 8-2 编辑器 图 8-3 添加变量图8-4 在FIS窗口中设置变量的名字图8-5 对输入变量e隶属函数的设置 图8-6 对输入变量ec隶属函数 的设置8(4) 用同样的方法打开另一个变量的隶属函数编辑窗口。设置七个隶属函数,
12、分别对,应NB、NM、NS、ZO、PS、PM、PB,对应曲线类型设置同上。如图 8-6所示。 (5) 输出变量隶属函数的编辑窗口。用同样的方法设置输出变量u的隶属函数。 设置七个隶属函数,设置好的输出变量隶属函数编辑窗口如图8-7所示。 (6) 模糊逻辑规则。在FIS 窗口中,从菜单Edit 里选择Rules,打开规则编辑器。 根据模糊控制规则表8-1 进行设置,如图8-8所示。图8-7 对输出变量u隶属函数的设置 图8-8 规则编辑器窗口 (7) 保存设计好的模糊逻辑系统。在主菜单中通过选项File|Export|To Disk 把设 计好的系统命名为.fis 保存到硬盘上。 (8) 在MA
13、TLAB 的命令窗口里输入a=readfis()可以看到输出信息,这 说明设计好的.fis文件读到工作区里了。查看规则及控制器的输出。 (9) 接下来就可以设计 Simulink 文件了。通过 MATLAB 命令窗口的工具栏或 直接在命令窗口中输入 Simulink,打开 Simulink 的功能模块库,新建一个 Simulink 编辑窗口。图 8-9 模糊控制位置跟踪的 Simulink 模型 (10) 搭建如图 8-9 的 Simulink 模型。 双击Fuzzy Logic Controller 功能模块,就可以打开一个对话框,如图8-10所示。 在FISmatrix 编辑区输入第8 步中定义的a,单击OK 按钮,确认、关闭对话框。9图8-10 仿真环境设置 (11) 现在就可以进行仿真了。通过菜单Simulation|Simulation Parameters 打开仿 真环境参数设置对话框,仿真的终止时间设为20s。得到运行结果。三、实验报告要求三、实验报告要求1、提交所有仿真结果; 2、查看“模糊控制系统 matlab 仿真实验”中(8)的规则及控制器的输出。 3、将“模糊控制系统matlab仿真实验”中的位置跟踪信号取正弦信号2sin(t), 重复实验过程,会得到什么结果?