板球系统实验指导书(MATLAB)

更新时间:2024-04-25 09:17:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

深圳市元创兴科技有限公司 实验指导书

Reinovo

自动控制类使用

板球系统的定位控制和轨迹跟踪

实 验 指 导 书

第一部分

深圳市元创兴科技有限公司

2010年12月22日

深圳市元创兴科技有限公司 实验指导书

第一章 实验使用仪器及其连接方式 .....................................................................................1 第二章 系统控制原理简介 .....................................................................................................2 第三章 实验 .............................................................................................................................3

实验一 运动控制基础实验 .................................................................................................... 3 实验二 板球系统调平板水平实验 .......................................................................................... 8 实验三 板球系统建模、仿真及实验 .................................................................................... 10 实验四 状态空间极点配置控制实验 .................................................................................... 19 实验五 线性二次最优控制LQR控制实验 ............................................................................. 33 实验六 模糊控制实验 ......................................................................................................... 40 实验七 变论域模糊控制实验 ............................................................................................... 47

深圳市元创兴科技有限公司 实验指导书

第一章 实验使用仪器及其连接方式

一 PC机

硬件要求:

1、Pentium II、Pentium III、AMD Athlon或者更高; 2、内存至少256MB,推荐256MB 以上; 3、至少有两个USB接口; 4、支持RS-232 串口通信。 软件要求:

1、Microsoft Windows 98、Microsoft Windows 2000、Microsoft Windows XP; 2、Visual C++ 6.0; 3、Matlab 6.5。 二 试验系统

板球系统实验总体结构如图1.1所示

小球位移数据采集卡USB数据线电机数据采集卡伺服驱动器电机编码器输出电机1板球电机2计算机电源控制量图1.1 板球实验系统总体结构图

本实验系统的主体包括板球、伺服驱动器、数据采集卡、直流伺服电机等。主体、驱动器、直流伺服电机、电源和数据采集卡都置于实验箱内,实验箱通过两条USB数据线与上位机进行数据交换,另有一条线接220V交流电源。

1

深圳市元创兴科技有限公司 实验指导书

第二章 系统控制原理简介

本实验系统以自动控制中的现代控制理论和模糊控制为理论基础。

板球系统的实验原理是:小球位置采集卡采集到触摸屏上小球位置数据,电机数据采集卡采集到两个电机尾部编码器数据,电机与平板通过连杆连接,所以通过计算就可以得到平板的倾斜角位移以及小球的位移,角位移差分得角速度,位移差分可得速度,然后根据自动控制中的各种理论转化的算法计算出控制量。控制量由计算机通过USB数据线下发给伺服驱动器,由驱动器实现对电机控制,电机尾部编码器连接到驱动器形成闭环,从而可以实现平板上小球的定位以及轨迹跟踪。

其工作原理如图2.1所示

计算机两个伺服驱动器两个直流电机板球电机数据采集卡两个编码器小球位移数据采集卡 图2.1 板球系统工作原理图

倒立摆的控制目标有两个,一是定位,即控制小球运动到指定的位置;二是轨迹跟踪,即控制小球按照给定的轨迹进行运动,如圆形、矩形。整个过程是动态的,表现为平板上下运动也就是电机的正反转。板球系统的实时性较强,所以采样时间一般取30ms左右。

通过建立板球系统的数学模型,我们得到其模型是可控的,所以我们可以通过自动控制原理课堂所学建立相应的控制器来实现本系统的控制,使它达到稳定。以下介绍的就是为本系统和自动控制原理相结合而设计的实验。

2

深圳市元创兴科技有限公司 实验指导书

第三章 实验

实验一 运动控制基础实验

本实验的目的是让实验者熟悉旋转编码器和触摸屏的基本原理,掌握利用计算机和数据采集卡对编码器和触摸屏进行数据采集的方法,以及利用计算机对电机进行控制的基本原理和方法,了解机电一体化的两个重要内容:传感技术和运动控制技术。以便顺利完成倒立摆的各项试验。 一 编码器原理

旋转编码器是一种角度传感器,它分为光电式、接触式和电磁感应式三种。我们在闭环系统中常用光电式编码器来测角度。

旋转编码器有增量编码器和绝对编码器两种,如图3.1为光电式编码器原理示意图,它由发光元件、光电码盘、光敏元件和光电检测装置组成。光电式编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器,这是目前应用最多的传感器。光电码盘是在一定直径的圆板上等分地开通若干个长方形孔,圆板不透光,而长方孔透光。由于光电码盘与被测装置同轴,被测装置旋转时,光电码盘与之同速旋转,光源透过光电码盘的孔在光栏板上形成忽明忽暗的光信号,经光电检测装置检测到并转换为电信号,然后通过信号处理电路的整形、放大、分频、记数、译码后输出。

图3.1 光电式编码器原理示意图

增量式光电编码器直接利用光电转换原理输出三组方波脉冲A、B和Z相;A、B两组脉冲相位差?2,将输出信号送入鉴向电路,从而可方便地判断出旋转方向,而Z相为每转一个脉冲,用于基准点定位。

光电式增量编码器的测量精度取决于它所能分辨的最小角度? (分辨角、分辨率),而这与码盘圆周内所分狭缝的线数有关。

n—编码器线数。

由于光电式脉冲编码盘每转过一个分辨角就发出一个脉冲信号,因此,根据脉冲数目可得出工作轴的回转角度,由传动比换算出直线位移距离;根据脉冲频率可得工作轴的转速;根据A、B两相信号的相位先后,可判断光电码盘的正、反转,以得到待测装置转向。

由于光电编码器输出的检测信号是数字信号,因此可以直接进入计算机进行处理,

??360no

3

深圳市元创兴科技有限公司 实验指导书

不需放大和转换等过程,使用非常方便,因此应用越来越广泛。 二 触摸屏

所谓触摸屏,从市场概念来讲,就是一种人人都会使用的计算机输入设备,或者说是人人都会使用的与计算机沟通的设备。它的本质是传感器,它由触摸检测部件和触摸屏控制器组成,主要用于检测对象触摸位置,接受后送触摸屏控制器。从技术原理角度来讲,触摸屏大体有三个特征:其一它必须保证是透明的,因此它必须通过材料科技来解决透明问题,像数字化仪、写字板、电梯开关,它们都不是触摸屏;其次它是绝对坐标,手指摸哪就是哪,不需要第二个动作,不像鼠标,是相对定位的一套系统,第三就是能检测手指的触摸动作并且判断手指位置,各类触摸屏技术就是围绕“检测手指触摸”而八仙过海各显神通的。目前,根据传感器的类型,触摸屏大致被分为红外线式、电阻式、表面声波式和电容式触摸屏四种。

表3.1 各种触摸屏的优缺点对照表 Tab.3.1 The Contrast table of Touch screens 性能 名称 价格 防爆性 稳定性 透明度 安装形式 触摸物 输出分辨率 抗强光干扰性 响应速度 跟踪速度 传感器损伤影响 污物影响 漂移 适用显示器 防水性 防电磁干扰 适用范围 四线电阻屏 低 一般 高 好 内置或外挂 任何物体 4096×4096 好 <10ms 好 较小 没有 没有 纯平 好 好 室内或室外 五线电阻屏 中 一般 高 好 内置或外挂 任何物体 4096×4096 好 <15ms 好 较小 没有 没有 纯平 好 好 室内或室外 声波屏 红外屏 电容屏 中 高 较高 好 好 好 较高 一般 一般 很好 很好 一般 内置或外挂 外挂 内置 手指、软胶 截面 手指 4096×4096 977×737 4096×4096 好 差 差 <10ms <20ms <15ms 一般 好 好 很大 较小 较小 较大 较大 较大 较小 较大 较大 纯平 纯平 均可 一般 一般 好 一般 好 一般 室内或室外 室内 室内或室外

综合表3.1各种触摸屏的优缺点对照表,并且考虑到实际应用环境,本系统选用AccuTouch五线电阻触摸屏。

电阻触摸屏的主要部分是一块与显示器表面非常配合的电阻薄膜屏,在强化玻璃表面分别涂上两层OTI透明氧化金属导电层。利用压力感应进行控制。当手指触摸屏幕时,两层导电层在触摸点位置就有了接触,电阻发生变化。在X和Y两个方向上产生信号,然后传送到触摸屏控制器。控制器侦测到这一接触并计算出(X,Y)的位置,再根据模拟鼠标的方式运作。电阻屏根据引出线数多少,分为四线、五线等多线电阻触摸屏。

4

深圳市元创兴科技有限公司 实验指导书

五线电阻技术触摸屏的基层把两个方向的电压场通过精密电阻网络都加在玻璃的导电工作面上,我们可以简单的理解为两个方向的电压场分时工作加在同一工作面上,而外层镍金导电层只用来当作纯导体,有触摸后分时检测内层ITO接触点X轴和Y轴电压值的方法测得触摸点的位置。五线电阻触摸屏内层ITO需四条引线,外层只作导体仅仅一条,触摸屏得引出线共有5条。首先五线电阻触摸屏的A面是导电玻璃而不是导电涂覆层,导电玻璃的工艺使得A面的寿命得到极大的提高,并且可以提高透光率。其次五线电阻触摸屏把工作面的任务都交给寿命长的A面,而B面作为导体,并且采用了延展性好、电阻率低的镍金透明导电层,因此,B面的寿命也极大的提高。

五线电阻触摸屏的另一个专有技术是通过精密的电阻网络来校正A面的线性问题:由于工艺工程不可避免的有可能厚薄不均而造成电压场不均匀分布,精密电阻网络在工作时流过绝大部分电流,因此可以补偿工作面有可能的线性失真。

五线电阻触摸屏是目前最好的电阻技术触摸屏,最适合于军事、医疗、工业控制领域使用。

图3.2 五线电阻式触摸屏结构

Fig.3.2 Structure chart of five line resistive touch screen

三 编码器和触摸屏的使用实验

本实验对象为板球系统上的电机尾部编码器和平板上的触摸屏,在充分理解以上实验原理的基础上进行下列实验。

把两条USB数据线与计算机连接(RUN指示灯亮表示数据采集卡已连接),将电源插头插入插座(此时实验箱电源开关应是断开的),连接完毕后,打开实验箱电源(SON指示灯亮表示电源接通)。双击打开快捷方式“元创兴板球系统实物控制”图),会看到以下界面

(要修改

5

深圳市元创兴科技有限公司 实验指导书

1、触摸屏实验 双击Select Experiment模块,选择试验编号1,然后双击右侧的“实验1 运动控制基础实验”子模块,打开如下界面

6

深圳市元创兴科技有限公司 实验指导书

首先保证小球与触摸屏接触,然后左击“”按钮,运行仿真,观察小球在触摸屏上的X、Y坐标值,再将小球滚动到触摸屏任意位置(小球要与触摸屏保持接触),观察在各个位置上小球的X、Y坐标值。停止仿真“”。

通过观察可以发现小球的坐标是以平板中心为原点的直角坐标系。 2、编码器实验

由于我们选用的旋转编码器分辨率为1000线,减速比10:1,载经过数据采集卡四倍频后为40000线,也就是说电机旋转一周,编码器计数40000个脉冲,那么计数对应角度公式如下:

??2?40000?n弧度

?—电机旋转角度;n—编码器读数。

首先保证小球与触摸屏接触(用手稳住小球,防止小球在平板上滚动),然后左击“”按钮,运行仿真,在X轴方向上摇动平板,观察X轴方向上读取的编码器值,同样在Y轴方向上摇动平板,观察Y轴方向上读取的编码器值。停止仿真“”。

通过观察可以发现:在X轴上,当连杆向上运动时,读取的编码器值为负,反之为正;在Y轴上,当连杆向上运动时,读取的编码器值为正,反之为负。

7

深圳市元创兴科技有限公司 实验指导书

实验二 板球系统调平板水平实验

把两条USB数据线与计算机连接(RUN指示灯亮表示数据采集卡已连接),将电源插头插入插座(此时实验箱电源开关应是断开的),连接完毕后,打开实验箱电源(SON指示灯亮表示电源接通)。双击打开快捷方式“元创兴板球系统实物控制”图),会看到以下界面

(要修改

双击SelectExperiment模块,选择试验编号2,然后双击右侧的“实验2 平板水平设置”子模块,打开如下界面

8

深圳市元创兴科技有限公司 实验指导书

1、双击设置模块,打开如下的窗口。

该窗口参数设置包括:轴选择(空轴,x轴,y轴)、调板(粗调/微调)、电机转动方向(正转/反转,其中X轴正转平板向下,Y轴正转平板向上)、清零/不清零、上伺服/下伺服。

9

深圳市元创兴科技有限公司 实验指导书

注意:只有轴选择为空轴时,才能进行清零、上伺服和下伺服操作。 对该窗口进行参数设置(如X轴,粗调,正转),然后单击OK。然后左击“”按钮,运行仿真。

2、当平板倾斜时,小球就会在平板上滚动,因此重复步骤1,使小球放在平板上任意位置不会发生滚动,就认为平板已经水平。当平板倾斜角比较大时,可以先进行下伺服,然后手动调平,再上伺服进行步骤1设置。

实验三 板球系统建模、仿真及实验

在控制系统的分析和设计中,首先要建立系统的数学模型。控制系统的数学模型是描述系统内部物理量(或变量)之间关系的数学表达式。建立控制系统数学模型的方法有分析法和实验法两种。分析法是对系统各部分的运动机理进行分析,根据它们所依据的物理规律或化学规律分别写出相应的运动方程。

如图3.1是板球系统结构简图,它的本体主要有以下几部分组成:小球、触摸屏、连杆、支架、伺服电机、减速机、电源等组成。对这样一个系统进行动力学建模,若是采用牛顿力学的方法将会涉及到对众多受力点进行受力平衡的分析,十分困难,而拉格朗日方程在机器人建模中的成功应用,说明它适合于解决这种具有强耦合关系的机械系统。下面本文会介绍拉格朗日方程的理论基础以及应用它对板球系统进行建模的详细过程,最后对模型的可控性进行简要分析。

图3.3 板球系统结构简图

10

深圳市元创兴科技有限公司 实验指导书

一 板球系统的物理建模和可控性分析 拉格朗日方程的一般形式:

d?idt?q(?L)??L?qi?Qi,i?1,2,3,?,n (3.1)

其中Qi为系统沿广义坐标qi方向上的外力、qi为系统的广义坐标、L是系统的以广义坐标?1,q?2,q?3,??q1,q2,q3,?,qn?和广义速度?q?n?表示的拉格朗日量,是动能T与势能V的差,即,q?L?qiL?T?V。其物理意义为,广义动量对时间的变化率等于系统广义力和拉格朗日力之和;称为

拉格朗日力,表示惯性力的投影;广义力Qi的物理意义主要取决于广义坐标的量纲。例如,当qi表示转角时,则Qi表示力矩;当qi表示长度时,则Qi表示作用力;当qi表示面积时,则Qi表示表面张力;qi表示体积时,则Qi表示应力。

当系统为保守系统时,作用于系统的主动力为保守力,于是可将式(3.1)写为:

d?idt?q(?L)??L?qi?0,i?1,2,3,?,n (3.2)

以实物模型为参考,取板的支撑点为坐标原点,建立如图3.2所示的坐标系.

图3.4 板球坐标系图

Fig.3.2 Coordinate of Ball&Plate System

从图中就可知此系统有4个自由度:球的位置坐标(x,y)和平板的倾斜角度(?,?). 由于两组变量相互关联,使得它们当中只有一组是独立的. 现作如下假设: — 忽略所有摩擦力;

— 任何情况下,球和平板都接触; — 不考虑板的面积和旋转角度限制; — 球在板上没有滑动和绕其竖直中心轴的转动; — 板在x轴和y轴方向上关于其支撑点对称.

下面用拉格朗日力学方法建立系统的数学模型. 在建模的过程中,用到的各参数意义如表2.1.

11

深圳市元创兴科技有限公司 实验指导书

表3.1参数意义

Tab.3.1 The meaning of the parameters

参数 意义 单位 m 小球质量 kg rb 小球半径 m x,y 小球x,y方向位移 m ?,? 平板x,y方向倾角 rad r 小球位置 m ?x,?y 小球x,y方向旋转角速度 rad/s ? 平板转动角速度 rad/s Ib 小球转动惯量 kg?m2 Ip 平板转动惯量 kg?m2 ?,? 平板x,y方向转矩 ?m2/s2xykg

1、小球的动能包括其自身的转动动能和在平板上的平移动能

Tm?x2b?12??y?2??12I22b??x??y? (3.3)

由于小球在运动过程中没有滑动,从而

x??rb?x,y??rb?y (3.4) 将(3.4)式带入(3.3)式,有

T1?2?m?Ib?b??2?2?r2??x?y? (3.5) b?2、平板的动能包括其自身的转动动能和小球绕平板支撑点的转动动能

Tp?1??22Ip??2????12?I?m|??r|2b????2???2? (3.6)

又|??r|2??x???y???2??2???2,代入得

12

深圳市元创兴科技有限公司 实验指导书

Tp?12?Ib?Ip???2?1mx???2????y??2???2 (3.7)

3、选择坐标原点为零势能点,则平板势能为零,小球势能为:

Vb?mg(xsin??ysin?) (3.8)

4、广义力由伺服系统产生的扭矩提供:

Qx??x,Qy??y (3.9)

结合式3.6、3.7、3.8可得拉格朗日函数为:

L?Tb?Tp?Vb ?Ib?21?122?2 (3.10) ???m?x?y?I?I?????????bp22?rb?2?? ?12???y?mx???2?mg(xsin??ysin?)对拉格朗日方程取如下4个变量:

q1?x,q2?y,q3??,q4??Q1?Q2?0,Q3?Qx,Q4?Qyd??L??L?Qi????i??qidt??q

并将(3.7)式和(3.8)式带入(i?1,2,3,4),得系统的方程组为

?I?2??mgsin??0 (a)?????x:?m?bx?mx??y??2rb?????I??2?x???mgsin??0 (b)????y:?m?by?my?2?rb???? (3.11)

?:?Ib?Ip?mx?:?Ib?Ip?my2???xy??xy??2xx???m?xy????mgxcos????????????mxy???mgycos???xy??2xx????????????xy???x (c)??y (d)2其中(a)、(b)两个方程描述了小球在板上的运动情况,体现小球的加速度与板的倾斜角度和角速度的关系;(c)、(d)两个方程则说明板倾斜的动力学如何受外部驱动力和小球位置与速度的影响.

5、板球系统的简化模型

实际上系统的输入不是力矩?x和?y,而直接是角度?和?,这是因为负载力矩不会影响电机的位置,基于这种假定,方程(3.11)中式(c),(d)就可以忽略.

在稳定状态下,平板应该在水平位置,这时两个角度都等于0,因为板的转动角度

13

深圳市元创兴科技有限公司 实验指导书

范围不大(±6°),正弦函数可以用其自变量代替,即sin???,sin???. 从而对稳定状态附近微分方程(3.11)中式(a),(b)进行线性化如式3.12(a),( b)。

?I???x:?m?bx?mg??0 3.12(a)2?rb???I???y:?m?by?mg??0 3.12 (b)2?rb??

?为系统的状态,平板的角加速度为控制量。 ?,?,a?,y,y?,?,?取x,x?则 ?,x5?y,x6?y?,x3??,x4???,x7??,x8??令x1?x,x2?x?1?x??x?2????x3?x??4??x?5??6?x??x?7??8??x?x2???x???x4?????x6???y???x8????mg(m?Ibrb)2mg(m?Ibr)2b?

?T?]T,y?x,u?[???]T则系统的状态空?,y,y?,?,??,?,???,?令x?[x1,x2,x3,x4,x5,x6,x7,x8]?[x,x间描述方程为

??Ax+Bu?x??y?x (3.13)

其中,

?0?0??0?0A???0??0?0???0 1 0 0 0 0 0 0 00??g00 0 0000 0 0 0 0??0 0 0 0 0?1 0 0 0 0??0 0 0 0 0?0 0 1 0 0??0 0 0 ??g 0?0 0 0 0 1??0 0 0 0 0???0?0??0?1B???0??0?0???00??0?0??0?0??0?0??1?? , , ??m(m?Ibr)2b

14

深圳市元创兴科技有限公司 实验指导书

取g=9.81m/s2,小球的转动惯量Ib??0?0??0?0A???0??0?0???0 1 0 0 0 0 0 0 0025mrb2,带入?中,有

0 0 0 0 0???7.0070 0 0 0 0?01 0 0 0 0??00 0 0 0 0? ? 0 0 0 1 0 0?0 0 0 0 ?7.007 0?00 0 0 0 1??00 0 0 0 0??当设xx?[x1,x2,x3,x4]T,xy?[x5,x6,x7,x8]T,可得

?1??x???2x?x????Axxx?bxuxx?x?3????4??x?0?0?Ax??0??010000?7.007000??0????00?,b??? x?0?1????0??1?

yx?[1,0,0x,x0],

?5?0?x?01?0??0???????x600?7.00700??,b??? ?y????Ayxy?byu xy?[1,0,0,0]x , A?yyyyy?x?7??00?1??00???????x0000?8?????1即板球系统在水平位置线性化后,x,y方向是解耦的且结构一致,因此只要对x方向进行

定性分析即可。

6、板球系统模型的定性分析

根据线性定常连续系统完全可控性判据S?[B,AB,A2B,?,AnB] 得

23rank(bx,Abx,Abx,Abx)?4

由此可知,系统可控。 判断可控的MATLAB程序 clear;

A=[ 0 1 0 0;

0 0 -7.007 0; 0 0 0 1; 0 0 0 0]; b=[ 0 0 0 1]';

cona=[ b A* b A^2* b A^3* b]; rank(cona)

二 板球系统仿真模型搭建

Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综

15

深圳市元创兴科技有限公司 实验指导书

合分析的集成环境。在这个环境中可以构建出复杂的仿真模型,方便在此基础之上进行各种算法的仿真实验。

下面我们以下面的模型为例详述Simulink环境下仿真平台的建立。 由物理建模我们得到板球系统的微分方程组3.12(a),( b)。

取g=9.81m/s2, Ib?x:??x?y:??y??x??755225mrb2,带入3.12(a),( b)中得

??7.007sin??0 ???y??

?y??72??7.007sin??0 ???x??1、 鼠标双击Matlab图标

Matlab工具栏中的图标

启动Matlab,在指令区键入指令Simulink或双击(Simulink)均可启动Simulink模块库浏览器;

然后单击浏览器的工具栏中图标(create a new model)新建一个Simulink

模型窗口。

2、从Simulink模块库浏览器的菜单Simulink的子菜单Ports & Subsystems下

选中子系统Subsystem,并用鼠标点击拖动,将其拖到新建的模型窗口。左击子系统框图下的字符串“Subsystem”,删除后输入新的字符串“系数输入子系统”,结果如下图所示。

3、双击子系统进入其的编辑窗口如下图左所示,从Library

Browser\\Simulink\\User-Defined Functions中拖出函数模块Fcn到子系统编辑窗口如下右图所示,双击函数模块Fcn并将Parameters下表达式“Expression”中的内容修改为5/7*(u(1)*u(4)^2+u(5)*u(4)*u(8))-9.81*sin(u(2)),点击按钮ok即可。连线方式为将鼠标移动到输出端会有十字出现,按住鼠标拖动到输入接口就形成连线,若是在线中间引线则按住Ctrl后拖动鼠标连接到输入点。

16

深圳市元创兴科技有限公司 实验指导书

4、重复步骤3(也可以复制Fcn模块再粘贴),可以建立其他几个模块,将其他

模块的Expression分别改为u(9)、5/7*(u(5)*u(8)^2+u(1)*u(4)*u(8))-9.81*sin(u(6))、u(10)(因为函数模块Fcn只接受符号u或u(1),u(2)等表示的输入变量).在Signal Routing中拖出Mux两个,在Ports & Subsystems拖出Out,进行连线如下图所示(注:Fcn上下顺序不能改变)。这样系数输出子系统就完成了。左击工具栏中的存储按钮Save ,将整个Simulink模型命名为Ball_Simulink.

5、关闭子系统编辑窗口,回到主编辑窗口。这样我们得到的还不是板球系统仿真

??的四个表达式。 ??,??x,?y,?模型,只是它的一部分,即??

6、在Continuous中拖出4个Integrator,在Ports & Subsystems拖出In和Out,

在Signal Routing中拖出Mux两个,双击其中一个Mux后将Parameters下输入个数Number of inputs 个数改为4,另一个改为3连接如下图,就建立了板球系统的仿真模型

17

深圳市元创兴科技有限公司 实验指导书

注:我们这里所讲的只是搭建模型一种方法,而方法并不仅仅有这一种,也可有简单的搭建方法,只要是能够实现数学建模的微分方程就是合理的。这也是为了让板球系统实验者熟悉Matlab中的Simulink工具箱和板球系统模型而做的简单的实验设计。

当然我们可以把上面建立的仿真模型进行封装,封装几个变量,让板球的仿真模型模块化,方便以后的使用。全部选中,点击菜单项中Edit下拉选项中的Create Subsystem会出现一个Subsystem,右击选择Edit Mask进行封装,Parameters选项可以设置变量等,封装完成后,双击则提示输入封装变量的赋值。具体方法可参考Matlab课本。 三 系统的阶跃响应分析

上面已经得到系统的状态方程(3.13)式,对其进行阶跃响应分析,在MATLAB 指令区中

键入以下命令: clear;

A=[ 0 1 0 0;

0 0 -7.007 0; 0 0 0 1; 0 0 0 0]; b=[ 0 0 0 1]'; C=[ 1 0 0 0;

0 0 1 0]; D=[ 0 0 ]';

step(A, b ,C ,D)

得到如下图所示结果:

18

深圳市元创兴科技有限公司 实验指导书

图3.5 小球的x坐标和x轴平板的倾斜角度阶跃响应曲线

可以看出,在单位阶跃响应作用下,小球位置和平板的倾斜角度都是发散的。即系统是不稳定的。

实验四 状态空间极点配置控制实验

经典控制理论的研究对象主要是单输入单输出的系统,控制器设计时一般需要有关被控对象的较精确模型,现代控制理论主要是依据现代数学工具,将经典控制理论的概念扩展到多输入多输出系统。极点配置法通过设计状态反馈控制器将多变量系统的闭环系统极点配置在期望的位置上,从而使系统满足瞬态和稳态性能指标。前面我们已经得到了板球系统的比较精确的动力学模型。下面我们针对板球系统,应用极点配置法设计控制器。

一 状态空间分析

对于控制系统

??AX?Bu X式中

X—状态向量(n维); u—控制向量;

A—n?n常数矩阵; B—n?1常数矩阵; 选择控制信号为:

u??KX

求解上式,得到

19

深圳市元创兴科技有限公司 实验指导书

?(t)?(A?BK)x(t) x方程的解为

x(t)?e(A?BK)tx(0)

图3.6 状态反馈闭环控制原理图

可以看出,如果系统状态完全可控,K选择适当,对于任意的初始状态,当t 趋于无穷时,都可以使x(t)趋于0。

极点配置设计步骤:

1、检验系统的可控性条件;

2、从矩阵A的特征多项式sI?A?sn?a1sn?1??an?1s?an来确定a1,a2,?an的值;

3、确定使状态方程变为可控标准型的变换矩阵T: T?MW

其中M为可控性矩阵,

n?1 M??B?AB?AB????an?1?a?n?2W?????a1??1an?2an?3?10?1???a10?001??0??? ?0?0??4、利用所期望的特征值,写出期望的多项式:

?s??1??s??2???s??n??sn??1sn?1???n?1s??n

并确定?1,?2,?,?n的值。

5、需要的状态反馈增益矩阵K由以下方程确定:

?1K???n?an??n?1?an?1????2?a2??1?a1?T

二 极点配置及仿真

前面我们已经得到了板球系统的状态空间模型,以平板的倾斜角加速度作为输 入的系统状态方程为:

20

深圳市元创兴科技有限公司 实验指导书

?1??x???2x???Ax?bu?xx?xxxx?x?3????4??x

yx?[1,0,0x,x0],

?0?0Ax???0??0100010?7.0070000??0????00?,b??? x?0?1????0??1??5??x?0????x60??y????Ayxy?byu xy?[1,0,0,0]x , A?yyyy?x?7??0????x?8??0?0??0???0?7.00700?,b??? y?1??000???000???1?x5??x1?????0?00?0x60?y??1?x??1000?x2??????u ???yx?????uy?? , ???y????????????x00100001y?3???0x7??0?x??????????x4??x8?即板球系统在水平位置线性化后,x,y方向是解耦的且结构一致,因此x方向和y方向的

控制器可以进行独立设置。在这里令X方向和Y方向的控制器一样。

?0?0即A???0??010000?7.007000??0?; 1??0??0???0B???;

?0????1??100C???001?0?D????0?0??; 0?.

板球系统的极点配置转化为:

对于如上所述的系统,设计控制器,要求系统具有较短的调整时间(约4秒),平板的倾斜角小于6度,在低速运行下控制量较小。 下面采用四种不同的方法计算反馈矩阵。 方法一:按极点配置的步骤进行计算

1、检验系统可控性,由系统可控性分析可以得到,系统的状态完全可控性矩阵的秩等于系统的状态维数4,系统的输出完全可控性矩阵的秩等于系统输出向量的维数2,所以系统可控。

2、计算特征值

21

深圳市元创兴科技有限公司 实验指导书

根据要求,并留有一定的裕量(设调整时间为4秒),我们选取期望的闭环极点s??i(i?1,2,3,4),其中:?1??3,?2??5,?3??2?j3,?4??2?j3 因此期望的特征方程为:

?s??1??s??2??s??3??s??4???s?3??s?5??s?2?j3??s?2?j3??s4?12s3?54s2?116s?105因此可以得到

?1?12,?2?54,?3?116,?4?105

由系统的特征方程:

?s?100??sI?A??0s7.0070???00s?1??s4 ??000s??因此有a1?0,a2?0,a3?0,a4?0

系统的反馈增益矩阵为:

K???n?an??n?1?an?1????2?a2??1?a1?T?1

3、确定使状态方程变为可控标准型的变换矩阵T:T?MW 其中

M???B?AB?A2B?A3B???000?7.007????00?7.0070?? ?0100???1000???aa1??000?32a11?W??a2a10??1?0???a10???00110?0100? ??1000????1000????7.007000??所以T?MW??0?7.00700???0010? ??0001????0.14270?T?1??0?0.1427?00??002、于是有状态反馈增益矩阵K为:

22

00?00??10? 01?? 深圳市元创兴科技有限公司 实验指导书

K???4?a4??3?a3??2?a2??1?a1?T??0.1427?012???0?0?5412??10?0.1427000010??105116540??0?0??1?

??-14.9850-16.5549得到控制量

??54??12?? u??KX?14.9850x?16.5549x以上计算可以采用 MATLAB 编程计算

clear;

A=[ 0 1 0 0; 0 0 -7.007 0; 0 0 0 1; 0 0 0 0]; B=[ 0 0 0 1]'; C=[ 1 0 0 0; 0 0 1 0]; D=[ 0 0 ]';

J=[ -3 0 0 0; 0 -5 0 0; 0 0 -2-1*sqrt(3)*i 0; 0 0 0 -2+1*sqrt(3)*i]; pa=poly(A); pj=poly(J);

M=[B A*B A^2*B A^3*B];

W=[ pa(4) pa(3) pa(2) 1; pa(3) pa(2) 1 0; pa(2) 1 0 0; 1 0 0 0]; T=M*W;

K=[pj(5)-pa(5) pj(4)-pa(4) pj(3)-pa(3) pj(2)-pa(2)]*inv(T) 方法二、用户还可以采用以下方法

矩阵A?BK的特征值是方程sI?A?BK?0的根 设K??k1k2k3k4?

选取期望闭环极点

?1??3,?1??5,?1??2?j3,?1??2?j3 令sI?A?BK?(s??1)(s??2)(s??3)(s??4) 根据系数一一对应可得

23

深圳市元创兴科技有限公司 实验指导书

K??-14.9850-16.55495412?

??54??12?? 则u??KX?14.9850x?16.5549x方法三、利用艾克曼公式

艾克曼方程所确定的反馈增益矩阵为 K??00?01???B?AB???An?1B???1?(A)

其中?(A)?A3??1A2??2A??3I

利用Matlab程序可以方便的计算 clear;

A=[ 0 1 0 0; 0 0 -7.007 0; 0 0 0 1; 0 0 0 0]; B=[ 0 0 0 1]';

M=[B A*B A^2*B A^3*B]; J=[ -3 0 0 0; 0 -5 0 0;

0 0 -2-1*sqrt(3)*i 0; 0 0 0 -2+1*sqrt(3)*i]; phi=polyvalm(poly(J),A); K=[ 0 0 0 1]*inv(M)*phi

方法四、可以直接利用 MATLAB 的极点配置函数 clear;

A=[ 0 1 0 0; 0 0 -7.007 0; 0 0 0 1; 0 0 0 0]; B=[ 0 0 0 1]';

P=[-3-0.0001*j,-5+0.0001*j,-2-1*sqrt(3)*j,-2+1*sqrt(3)*j]; K=place(A,B,P)

为匹配 place() 函数,把-3,-5 两个极点改成了-3 - 0.0001j, -5 + 0.0001j ,因为增加的虚部很小,可以忽略不记,运行得到如下结果: K??-14.9850-16.55495412?

可见,以上四种方法得到的结果是一致的。 三 仿真模型搭建

我们在前面试验中已经熟悉了Matlab Simulink工具箱的使用,下面介绍极点配置板球系统模型的建立步骤。

1、打开Matlab程序,在指令区键入Simulink,敲回车键进入仿真环境。点击(create

a new model)新建一个模型,点击保存,并命名如Pole_Control,选择想保存的目标文件夹;

2、从Simulink模块库浏览器的菜单Simulink的子菜单Ports & Subsystems下选中子

系统Subsystem,并用鼠标点击拖动,将其拖到新建的模型窗口。在模型窗口中复制

24

深圳市元创兴科技有限公司 实验指导书

子系统Subsystem,单击子系统框图下的字符串“Subsystem”,删除后输入新的字符串“板球”,另一个输入“X轴控制”结果如下图所示。

3、双击子系统“板球”,打开

C:\\matlab6p5\\toolbox\\Reinovo\\BallPlate_Control\\Simulink\\Ball_Simulink.mdl 将Ball_Simulink.mdl中的板球模型复制到子系统“板球”中。 4、双击子系统“X轴控制”,从“Math Operations”中选择Gain并按住鼠标拖到子系

统“X轴控制”中。双击Gain打开参数设置窗口如下图,按照图示的数据输入,然后点击OK按钮完成输入。

25

深圳市元创兴科技有限公司 实验指导书

5、关闭窗口子系统“X轴控制”,右击子系统“X轴控制”,选择Mask subsystem,弹出窗口如下图,按照图示的数据输入,然后点击OK按钮完成输入

双击子系统“X轴控制”,弹出窗口如下图,按照图示的数据输入,然后点击OK按

26

深圳市元创兴科技有限公司 实验指导书

钮完成输入。这样X轴极点控制器就形成了,用同样的方法建立Y轴极点控制器。

6、从“Math Operations”中选择Gain和Sum分别拖2个到Pole_Control窗口中。双击Gain将Parameters中的Gain设置为-1,双击Sum改为如下图所示(把其中的“++”改为“+-”);

7、Simulink 模型库“ Sourses ” 中拖2个“Step” 信号模块到编辑窗口中,并双击模块设置阶跃信号参数;

27

深圳市元创兴科技有限公司 实验指导书

8、从 Simulink 模型库“Signal Routing” 中拖 2个Mux和1个Demux到编辑窗口中。双击

Mux将Parameters中的Number of inputs设置为4, 双击Demux将Parameters中的Number of outputs设置为8。

9、把各个模块连接起来如下图,若要改变某个模块的方向,则选中该模块,单击工具栏

Format,选择Rotate block,连续操作两次就可以改变模块的方向。

28

深圳市元创兴科技有限公司 实验指导书

10、点击“Simulation”菜单,在下拉菜单中选择“Simulation Parameters”,

打开如下窗口:

在上面窗口中设置“Simulation time”以及“Solver options”等选项。设置仿真步长为0.03秒。

11、点击运行仿真,双击“Scope”模块观察仿真结果:

29

深圳市元创兴科技有限公司 实验指导书

图 3.7 板球系统X轴方向极点配置仿真结果

如果曲线超出界面范围,可以点击“”观察全图。

12、可以看出,系统能较好的响应阶跃信号,修改控制器的配置极点,可以得到不同的控制效果,请在多次改变参数后,选取仿真结果最好的参数。具体的设计方法请参阅相关教材。

双击打开快捷方式“元创兴板球系统仿真控制”

(要修改图),会看到以下界面

30

深圳市元创兴科技有限公司 实验指导书

然后双击“Pole_Control”模块,就可以打开极点配置控制实验进行仿真。 四 极点配置控制实验

把两条USB数据线与计算机连接(RUN指示灯亮表示数据采集卡已连接),将电源插头插入插座(此时实验箱电源开关应是断开的),连接完毕后,打开实验箱电源(SON指示灯亮表示电源接通)。双击打开快捷方式“元创兴板球系统实物控制”图),会看到以下界面

(要修改

双击Select Experiment模块,选择试验编号3,然后双击右侧的“实验3 板球系统极点配置实时控制”子模块,打开如下界面

31

深圳市元创兴科技有限公司 实验指导书

1、当平板倾斜时,要先调水平(具体操作参考实验2)。 2、当平板水平时,小球放在平板上某个位置(如原点),双击“轨迹选择”模块,选择小球的运动轨迹(如定点),如下图。然后左击OK。当选择定点时,可以进行设置小球的X、Y坐标(X要小于150,有要小于120),使之运动到设定的位置。在默认的情况下,设置的位置为原点。

32

深圳市元创兴科技有限公司 实验指导书

3、左击“”按钮,然后双击“手动开关”模块,使之选择开始,如下图,运行仿真。在运行时,可以双击“轨迹选择”模块,进行轨迹选择(如圆形)。

4、停止仿真时,先双击“手动开关”模块,使之选择停止,然后单击“”停止仿真。

注意:不要直接单击“”停止仿真,要先将“手动开关”模块使之选择为停止模式。

实验五 线性二次最优控制LQR控制实验

最优控制是现代控制理论的核心。最优控制属于最优化的范畴,人们在从事某项工作时,总是想着应用最合理的方案来使工作得到最好的解决,以期达到最好的效果,这里方案的选择就包含最优化的问题。

一 线性二次最优控制LQR基本原理及分析

最优控制研究的主要问题是:根据已建立的被控对象的数学模型,选择一个容许控制律,使得被控对象按照预定的要求运行,并使给定的某一性能指标达到极小值(极大值)。从数学的观点来看,最优控制研究的问题是求解一类带有约束条件的泛函极值问题,属于变分学的范畴。然而,经典的变分理论只能解决控制无约束,即容许控制属于开集的一类最优控制问题,而工程实践中遇的多为控制有约束,即容许控制属于闭集的一类最优控制问题。为了满足工程实践的需求,20世纪50年代中期,出现了现代变分理论,其中最常用的方法是动态规划和极小值原理。

注:在最优控制系统中,由于受控对象是一个动态系统,每个变量都是时间的函数,所以是动态的最优化问题。在动态最优化问题中,目标函数不再是普通函数,而是时间函数的函数,称为泛函数,简称泛函。

如果系统是线性的,性能泛函是状态变量(或/和)控制变量的二次型函数的积分,则这样的最优控制问题称为线性二次型最优控制问题,简称线性二次型。这种最优控制的解最简单,应用十分广泛,是现代控制理论中最核心的成果之一。线性二次型问题解出的控制规律是状态变量的线性函数,因而通过状态反馈便可实现闭环控制,这在工程

33

深圳市元创兴科技有限公司 实验指导书

上具有重要的意义。

先理解二次型性能指标(泛函)。

二次型性能指标一般形式如下:

J?1tf?2t01?xT(t)Q(t)x(t)?uT(t)R(t)u(t)??xT(tf)Fx(tf)??2

其中,Q?n?n维半正定状态加权矩阵;

R?r?r维正定控制加权矩阵; F?n?n维半正定终端加权矩阵;

在工程实际中,Q和R是对称矩阵,常取对角阵。 下面对性能指标的物理意义做解析: 被积项Lx?12xQ(t)x,若x表示误差矢量,则Lx表示误差平方。因为Q(t)T半正定,

所以只要出现误差,Lx总是非负的。若x增大,则Lx也增大。由此可见,Lx是用以衡量

Lx?误差x大小的代价函数,则支付的代价越大。在x是标量函数的情况下,x越大,

12x2,

那么

1?2tf0xdt2表示误差平方的积分。Q(t)通常是对角线常阵。对角线上的元素q1i分别表

示对应误差分量xi的重视程度,越加被重视的误差分量,希望它越小,相应地,其加权

系数q1i就相应的取得越大。(如果误差对在对动态过程中不同阶段有不同相应的强调时,那么,相应的加权系数就应该取成时变的)

被积项Lu?1212uR(t)uT,表示动态过程中对控制的约束或要求。因为R(t)正定,所以

只要存在控制,Lu总是正定的。如果把u看作电压或电流函数的话,那么Lu与功率成正比,而

?tf0uR(t)udtT则表示在[0,tf]区间内消耗的能量。因此,Lu是用来衡量控制功率

大小的代价函数。

式中的第二项xT(tf)Fx(tf)突出对终端误差的要求,叫做终端代价函数。

21最优控制的目标就是使J?min,则其实质在于,用不大的控制来保持较小的误差,从而达到能量和误差综合最优的目的。 二 LQR控制参数调节及仿真

一般情况下:R增加时,控制力减小,角度变化减小,跟随速度变慢。矩阵Q中某元素相对增加,其对应的状态变量的响应速度增加,其他变量的响应速度相对减慢,如:若Q对应于角度的元素增加,使得角度变化速度减小,而位移的响应速度减慢;若Q对应于位移的元素增加,使得位移的跟踪速度变快,而角度的变化幅度增大。 LQR算法MATLAB程序如下: A=[ 0 1 0 0; 0 0 -7.007 0; 0 0 0 1; 0 0 0 0];

34

深圳市元创兴科技有限公司 实验指导书

B=[ 0 0 0 1]';

Q=diag([300,4 , 1000,10]); R=2;

k=lqr(A,B,Q,R)

K=sqrt(k(1)^2+k(2)^2+k(3)^2+k(4)^2) 得到控制量

??45.5128??9.7993?? u??KX?12.2474x?12.6925 x其中Q阵中对应权重分别为小球位移,小球速度,平板倾斜角度和角速度。更改它们,

键入到MATLAB命令窗口可得到不同的LQR参数。这里X轴和Y轴的控制器设置为一样。 仿真实验

双击打开快捷方式“元创兴板球系统仿真控制”

(要修改图),会看到以下界面

然后双击“LQR_Control”模块, 会看到以下界面。

35

深圳市元创兴科技有限公司 实验指导书

双击LQR控制器的“X轴控制”和“Y轴控制”模块,设置参数如下图

LQR控制器模块封装图

36

深圳市元创兴科技有限公司 实验指导书

左击“”按钮,运行仿真,双击“Scope”模块观察仿真结果:

图 3.8 板球系统X轴方向LQR仿真结果

如果曲线超出界面范围,可以点击“

”观察全图。

我们可以更改Q阵和R阵的数值,计算出不同的K值,进行仿真,直到仿真曲线满意为止。

三 板球系统LQR实时控制实验

把两条USB数据线与计算机连接(RUN指示灯亮表示数据采集卡已连接),将电源插头插入插座(此时实验箱电源开关应是断开的),连接完毕后,打开实验箱电源(SON指示灯亮表示电源接通)。双击打开快捷方式“元创兴板球系统实物控制”图),会看到以下界面

(要修改

37

深圳市元创兴科技有限公司 实验指导书

双击Select Experiment模块,选择试验编号4,然后双击右侧的“实验4 板球系统LQR实时控制”子模块,打开如下界面

38

深圳市元创兴科技有限公司 实验指导书

1、当平板倾斜时,要先调水平(具体操作参考实验2)。 2、当平板水平时,小球放在平板上某个位置(如原点),双击“轨迹选择”模块,选择小球的运动轨迹(如定点),如下图。然后左击OK。当选择定点时,可以进行设置小球的X、Y坐标(X要小于150,有要小于120),使之运动到设定的位置。在默认的情况下,设置的位置为原点。

3、左击“

”按钮,然后双击“手动开关”模块,使之选择开始,如下图,运行仿真。

39

深圳市元创兴科技有限公司 实验指导书

在运行时,可以双击“轨迹选择”模块,进行轨迹选择(如圆形)。

4、停止仿真时,先双击“手动开关”模块,使之选择停止,然后单击“”停止仿真。

注意:不要直接单击“”停止仿真,要先将“手动开关”模块使之选择为停止模式。

实验六 模糊控制实验

一 模糊控制器

在生产实践中,存在着大量的模糊现象,但是采用经典控制或者现代控制理论的算法都很难实现对那些无法获得数学模型或模型复杂的、非线性的、时变的或者耦合严重的系统进行有效地控制。一个控制领域专家或者熟练的技术人员,凭借自己的经验,依据大脑的思维判断给出控制量,可以用手动操作,达到了较好的控制效果,也就是通常所说的控制拟人化,也可以称为智能控制。把人的操作经验归纳成一系列的规则,存放于控制器中,利用模糊集理论将它量化,使控制器模仿人的操作策略,这就是模糊控制器,由模糊控制器组成的系统称之为模糊控制系统。一个模糊系统性能的优劣,主要取决于模糊控制器的结构,所采用的模糊规则、合成推理算法以及模糊决策的方法等因素,下面简要介绍模糊控制器的组成以及设计步骤。 1、模糊控制器的组成

模糊控制器的结构如图3.9所示。模糊控制器由模糊化接口、知识库、推理机、解模糊接口4个基本部分组成。

图3.9 模糊控制器结构图

40

深圳市元创兴科技有限公司 实验指导书

①模糊化接口(fuzzy interface)

模糊控制器的输入必须经过模糊化才能用于模糊控制输出的求解,所以它是模糊控制器的输入接口。它实质上是将输入的清晰量转换成一个模糊向量,即将输入数据转换成合适的语言值,一般的,?PB,PM,PS ,ZO,N,SNM,?N表B示?\正大\,正\中,\ \正小\, \负小\,负\中\,负\大\?. \零\,②知识库

知识库包括数据库和规则库。其中数据库用于存放所有输入输出变量的全部模糊子集的隶属度向量值(经过论域等级的离散化以后对应值的集合),若论域为连续域,则为隶属度函数。模糊控制器的规则是控制领域专家或手动操作熟练人员利用他们长期积累的经验,按照直觉推理得到的一种语言表示形式。因此可以说,知识库由数据和模糊语言控制规则组成如:

ifEisA1andECisB1thenUisC1 ③推理机

推理机是用来进行模糊推理的,实质上是根据输入模糊量,依据模糊控制规则来完成模糊关系方程的求解,并获得输出的模糊控制量。模糊推理方法有很多种,其中最常用的是Mamdani的max-min的合成法,具体方法这里不再做详细介绍。 ④解模糊接口

将模糊推理得到的控制量(模糊量)变换为实际用于控制的清晰量。或理解为将输出空间上的一个模糊集合映射为一个确定的点,以达到实际运用的目的。解模糊的方法有重心法、最大隶属度法、中位数方法等。其中重心法因为有效性得到最多应用,也即控制量可由输出Ui的隶属度函数加权平均得到,计算公式为:

N??(Uu?i?1Ni?1i)?Ui (3.14)

i??(U)2、模糊控制器设计步骤

实现模糊控制一般设计步骤如下:

(1)确定系统的被控量和控制量,就是确定模糊控制器的输入变量和输出变量; (2)根据经验设计合理的模糊控制器的控制规则;

(3)根据实际情况,选择模糊控制器的输入变量及输出变量的论域,并根据论域选择计算模糊控制器的参数(如量化因子、比例因子);

(4)输入变量模糊化,规则表计算以及解模糊输出控制量,实际上就是模糊控制器的执行阶段;

(5)进行模糊控制器的仿真以及控制程序编写。 二 板球系统的模糊控制器设计 1、在LQR控制实验得到控制量为

??45.5128??9.7993?? u??KX?12.2474x?12.6925 x其中K?[?12.2474 ?12.6925 45.5128 9.7993] , ||K||2?49.785

??9.7993??)/||K||2分别为输入量E取er?(?12.2474x?45.5128?)/||K||2 ,ec=(?12.6925 x 41

深圳市元创兴科技有限公司 实验指导书

和EC,论域都为[?1,1],输出量u的论域为[?1,1]。量化因子为?1/||K||2 ,比例因子为||K||2。

2、控制规则表如下所示

表3.2 基于综合误差E和综合误差变化率EC的模糊控制规则表

E EC

A1 A2 A3 A4 A5 A6 A7

B1 -0.8333 -0.8333 -0.6333 -0.5 -0.3333 -0.1667 0 B2 -0.8333 -0.6333 -0.5 -0.3333 -0.1667 0 0.1667 B3 -0.6333 -0.5 -0.3333 -0.1667 0 0.1667 0.3333 B4 -0.5 -0.3333 -0.1667 0 0.1667 0.3333 0.5 B5 -0.3333 -0.1667 0 0.1667 0.3333 0.5 0.6333 B6 -0.1667 0 0.1667 0.3333 0.5 0.6333 0.8333 B7 0 0.1667 0.3333 0.5 0.6333 0.8333 0.8333 3、在Matlab中生成模糊控制器

鼠标双击Matlab图标启动Matlab,在指令区键入指令fuzzy,在弹出的窗口中选择File/ Export/To Disk,在弹出的对话框打开fuzzy3,这就是已生成的双输入单个输出模糊控制器。模糊控制器的生成过程请参考相应的Matlab资料。 三 LQR_模糊控制仿真实验

双击打开快捷方式“元创兴板球系统仿真控制”

(要修改图),会看到以下界面

然后双击“LQR_Fuzzy”模块, 会看到以下界面。

42

深圳市元创兴科技有限公司 实验指导书

双击LQR控制器的“X轴控制”和“Y轴控制”模块,设置参数如下图

LQR控制器模块封装图

43

深圳市元创兴科技有限公司 实验指导书

双击模糊控制器模块其封装图

左击“”按钮,运行仿真,双击“Scope”模块观察仿真结果:

图 3.9 板球系统X轴方向LQR_模糊控制仿真结果

如果曲线超出界面范围,可以点击“”观察全图。 四 板球系统LQR_模糊实时控制实验

把两条USB数据线与计算机连接(RUN指示灯亮表示数据采集卡已连接),将电源插头插入插座(此时实验箱电源开关应是断开的),连接完毕后,打开实验箱电源(SON指示灯亮表示电源接通)。双击打开快捷方式“元创兴板球系统实物控制”图),会看到以下界面

(要修改

44

深圳市元创兴科技有限公司 实验指导书

双击Select Experiment模块,选择试验编号5,然后双击右侧的“实验5板球系统LQR_Fuzzy实时控制”子模块,打开如下界面

45

深圳市元创兴科技有限公司 实验指导书

1、当平板倾斜时,要先调水平(具体操作参考实验2)。 2、当平板水平时,小球放在平板上某个位置(如原点),双击“轨迹选择”模块,选择小球的运动轨迹(如定点),如下图。然后左击OK。当选择定点时,可以进行设置小球的X、Y坐标(X要小于150,有要小于120),使之运动到设定的位置。在默认的情况下,设置的位置为原点。

46

深圳市元创兴科技有限公司 实验指导书

3、左击“”按钮,然后双击“手动开关”模块,使之选择开始,如下图,运行仿真。在运行时,可以双击“轨迹选择”模块,进行轨迹选择(如圆形)。

4、停止仿真时,先双击“手动开关”模块,使之选择停止,然后单击“”停止仿真。

注意:不要直接单击“”停止仿真,要先将“手动开关”模块使之选择为停止模式。

实验七 变论域模糊控制实验

一 变论域自适应模糊控制器

变论域自适应模糊控制具有了通常所说的模型自适应、规则自组织与自调整、隶属函数自生成等优点,这样使得模糊控制器规则的建立相对简单了,也就是说是基于专家知识或手动操作熟练人员长期积累的经验变得不是那么重要了,这样就大大简化了控制器的分析和设计。另外,这种控制器的精度很高,无震荡,几乎无超调,而且它的调整时间与常规模糊控制器或经典控制器相比短得多。可以说,变论域自适应模糊控制是处理非线性系统的有效工具之一,它的提出也是模糊控制应用的一次革新。 变论域的伸缩因子

1、单输入单输出自适应模糊控制器的伸缩因子

给定模糊控制器,其输入论域和输出论域分别记为X?[?E,E]和Y?[?U,U],这里规定E与U都为正实数,相对可变论域来说,这里称X与Y为初始论域。 定义1 [19] 如果?:X?[0,1],x??(x)满足如下的五个条件

1) 对偶性:(?x?X) (?(x)??(?x)),

2) 保零性:?(0)?0,

3) 单调性:?在[0,E]上严格单调递增, 4) 协调性:(?x?X) x??(x)E, 5) 正规性:?(?E)?1。

则称?为论域X上的一个伸缩因子。

47

深圳市元创兴科技有限公司 实验指导书

对任意的x?X,X(x)?[??(x)E,?(x)E],则称X(x)为X上的变论域。同理可规定Y的伸缩因子以及Y上的变论域。本文已经在绪论中的变论域思想部分对初始论域划分、伸缩因子以及变论域的直观意义做了详细介绍。

文献[20]给出如下两个实用的单输入单输出模糊控制器的论域伸缩因子,也是在对倒立摆的变论域自适应控制中得到实现的。

?(x)??xE?, ?>0

?kx2? (3.15)

?(x)?1??e k>0,??(0,1). (3.16)

对两个论域伸缩因子的证明,这里不作详细描述。 2、双输入单输出控制器的伸缩因子

设X?[?E,E],Y?[?D,D]分别为输入变量x和y的论域,Z?[?U,U]为输出变量z论域。当X与Y相互独立时,可以按式3.15或者3.16式分别得到X,Y,Z的伸缩因子?(x),?(y),?(z)。一般情况下,Y与X是相关的,例如如果X表示误差论域,那么Y则常常用来表示误差变化率论域,这时令D?EC,即Y?[?EC,EC],并且?定义在X?Y上,即???(x,y),此时论域伸缩因子,可以取下面的式子中的一个:

?x??y??(x,y)??????E??EC??1?2 (3.17)

?(x,y)?1??e?kx12?k2y2 k1,k2>0,??(0,1) (3.18)

其中0??1,?2?1,分析式3.17和式3.18,很容易得到两者都能够保证变化后的论域小于或者等于初始论域,即满足论域的有界性,这样才能切实符合变论域的思想 二 板球系统变论域自适应模糊控制器设计

在模糊控制实验(实验六)的基础上设计变论域自适应模糊控制器,取论域伸缩因子为?(er)?1?0.8e?er ,?(ec)?1?0.78e?0.8er加权因子为?(er)?1?0.7e?er222?ec2

22 ,?(ec)?1?0.7e1?0.8er?ec,

1则变论域模糊控制器的输出量U??21?0.7e?er2? u+?21?0.7e?0.8er?ec22?u,其中u为模糊

控制器的输出量。

三 LQR_变论域模糊控制仿真实验

双击打开快捷方式“元创兴板球系统仿真控制”面

(要修改图),会看到以下界

48

本文来源:https://www.bwwdw.com/article/ok7p.html

Top