logo资料库

自抗扰控制器的simulink加墨仿真.pdf

第1页 / 共5页
第2页 / 共5页
第3页 / 共5页
第4页 / 共5页
第5页 / 共5页
资料共5页,全文预览结束
控制理论与应用 Control Theory and Applications 《自动化技术与应用》2010 年第 29 卷第 2 期 自抗扰控制器的 simulink 建模与仿真 * 姜 萍 , 郝 靖 宇 , 宗 晓 萍 , 王 培 光 (河北大学 电子信息工程学院 控制理论与控制工程,河北 保定 071002) 摘 要:通过对自抗扰控制器的基本原理及结构的研究,具体讨论了自抗扰控制器用 simulink 建模的方法、子系统封装过程和创建 用户自定义库的方法。采用 simulink 模块建立的系统模型,不仅可以随时改变系统参数并可以观察参数变化后的仿真结果或 将结果存储于空间中,使得仿真过程变得简单而有效,而且不需要花费较多的时间编程。最后通过仿真实例,证明了该方法的 实用性和有效性。 关键词:自抗扰控制器;simulink;子系统封装;自定义库 中图分类号:TP391 文献标识码:A 文章编号:1003-7241(2010)02-0001-05 Modeling and Simulation of Active Disturbances Rejection Controller Based on Simulink JIANG Ping, HAO Jing-yu, ZONG Xiao-ping, WANG Pei-guang ( Dept of Control Theory and Control Engineering, College of Electronic and Informational Engineering, Hebei University, Baoding 071002 China ) Abstract: The way of modeling and simulation of Active Disturbances Rejection Controller based on Simulink the process of masking subsystem and building user custom library is discussed through studying the basic principle and structure of Active Disturbances Rejection Controller( ADRC ). Masking ADRC based on Simulink and building user custom library can reduce the programming workload, and simplify complex blocks group. The simulation example proves that the way is practical and validity. Key words: Active Disturbances Rejection Controller; simulink; masking subsystem; user custom library 1 引言 PID 控制器在工业过程控制中占有主导地位,是应 用最广泛的工业控制器。然而,科学技术的发展对控制 精度和速度的要求,以及对环境变化的适应能力的要求 越来越高 , 经典 PID 慢慢显露出其缺点。韩京清研究 员由自抗扰控制技术所构建的自抗扰控制器[1 -3 ], 对经 典 PID 控制器的缺陷进行了改进,具有算法简单、系统 响应快、适应范围广等特点, 现已应用于航天、航空、 电力、化工等领域。 使用 simulink 基本可以对任何物理系统进行建模, 但随着系统越来越复杂,用基本操作创建的 simulink 模 * 基金项目: 河北省教育厅科研计划项目( 编号 Z 2 0 0 8 4 1 4 ) 收稿日期:2009-10-16 型变得越来越庞大而不易读懂。在 simulink 环境下用 其固有模块建立的自抗扰控制器模型十分复杂, 因此, 使用创建子系统的方法并采用子系统封装技术[4]把自抗 扰控制器的模型分割成跟踪微分器、扩张状态观测器 和非线性状态误差反馈律三个小的模型,再根据参数之 间的关系组合成自抗扰控制器,这样以使得整个模型更 加简捷,可读性更高。用户还可以在 simulink 模块库中 建立自己的库, 把常用的子系统模块加入到该库中, 这 些子系统可以反复调用, 节省了建模时间。 2 自抗扰控制器的基本原理 2.1 自抗扰控制器的结构及原理 自抗扰控制器是从 P I D 控制器演变过来, 采取了 Techniques of Automation & Applications | 1
《自动化技术与应用》2010 年第 29 卷第 2 期 控制理论与应用 Control Theory and Applications PID 误差反馈控制的核心理念。自抗扰控制器由跟踪微 分器[5]、扩张状态观测器[6]和非线性状态误差反馈律[7]三 部分组成。各个组成部分的作用分别为: 跟踪微分器是 为系统输入安排过渡过程,得到光滑的输入信号以及输 入信号的微分信号; 扩张状态观测器是实时跟踪系统状 态,不仅能得到系统的状态信息,还能获得对象模型中内 扰和外扰的实时作用量。将这个实时作用量补偿到控制 器中去, 可以使原来的非线性系统变成线性的积分器串 联型控制系统。这个动态估计补偿总和扰动的技术是整 个自抗扰控制技术中最关键、最核心的技术; 非线性状 态误差反馈律是把跟踪微分器产生的跟踪信号和微分信 号与扩张状态观测器得到的系统的状态估计通过非线性 函数进行适当组合, 作为被控对象的控制量。 以二阶系统为例, 下图为典型自抗扰控制器的结构 图, 其中点线所框的部分为自抗扰控制器。 图 1 二阶系统自抗扰控制器的基本结构 2.2 自抗扰控制器的算法 自抗扰控制器算法中非线性函数的形式有多种,因 此自抗绕控制器算法并不唯一。典型的二阶自抗扰控 制器算法如下: 的定义分别为: fal x ,( a , d ) = 和 1 a , x d dx / a x sign ( x ), x > d (2) 2 0 2 , y a = + x 1 = + = rh hx a d , 2 0 = a dd y ( )8 1 + = sign ay a a d ()( 2) 0 1 + = s sign dy dy sign ( ( ) ( y -+ = + a say a a ) ( 2 0 2 = + s sign da sign ( ( ) a -= fhan dar sign ( ( da ( sa )) y a 2)) (3) 2)) rsign a )( 1 , , , , , 01 02 03 b b b r 0 , bhrc , 0 这里的 是 控 制 器 的 参 数,其中 0r 是根据过渡过程快慢的需要和系统所能承受 的能力决定的, 只影响系统的跟踪精度和过渡过程时 间, 对系统的输出没有影响, 因此调整好之后就可以固 定下来; 参 是由系统所用采样步长来决定 的; 这样, 系统中真正需要调整的参数为控制量增益 r , 阻尼系数 c ,精度因子 1h 和补偿因子 0b 四个。 bb , b 03 02 01 3 自抗扰控制器的 simulink 建模 根据自抗扰控制器的算法, 在 si m ul i n k 环境下建 立其仿真模型。Simulink 中的 Edit Mask 命令提供了 封装子系统时编辑模块的所有操作设置值, 它可以对 任何子系统进行封装。封装后的子系统可以用一个简 单的参数框替换子系统的参数框及内容, 还可以把封 装的子系统放置在库中, 从而创建一个用户自定义库 [8], 并显示在库浏览器中。 3.1 子系统封装过程 封装就是把具有一定功能的子系统封装成一个模 块,而且该模块与 simulink 中的固有模块一样有自己的 图标和参数对话框,当用户双击这个模块时可以打开对 话框, 并设置参数值。 以典型二阶系统自抗扰控制器中扩张状态观测器 这一部分为例,详细介绍一下子系统的封装过程。以下 是扩张状态观测器部分的算法: = e fe fe z z z z = = 1 = z 1 = z = z 1 fal fal + + + y ,5.0,( h e ) ,25.0,( h e b ( zh 01 2 b ( zh 02 fe ( h 3 b ) 1 2 2 3 03 1 3 e ) fe ) (4) + ub 0 ) 2 0 , , = ), hrvv 0 = ( fhan v fh 1 += v hv v 2 1 1 + = v v hfh 2 2 -= , ,5.0,( e z fey fal e 1 += b e zh z z ) ( 2 1 1 01 + = b z z fe zh ( 2 2 02 3 -+ = b fe z h z ) ( 3 1 03 3 = -= v v ez z e , 2 1 2 2 1 1 -= u e ce hr fhan ,( ,, 0 1 2 1 = z b u u ) ( 3 0 0 + ) ub ) 0 ), h fe 1 = fal ),25.0,( h e (1) 其中两个非线性函数 2 | Techniques of Automation & Applications fal a 和 ), d ,( x fhanx (,, , ) xr h 1 2 - - - - - £ - - - - - - - - - - - -
控制理论与应用 Control Theory and Applications 《自动化技术与应用》2010 年第 29 卷第 2 期 根据扩张状态观测器算法用 simulink 中的基本模 块对其进行建模,模型如图 2(a)所示。建模过程中,需要 将算法中的非线性函数 fal a 编写成 M 文件,再 通过 MATLAB FUNCTION[9-10]模块调用该 M 文件来完 成对模型的建立。然后选择所有模块创建子系统。 ), d ,( x 对创建的子系统模块, 如果要进行命名该子系统模 块、对子系统模块进行描述和说明、设定输入数据窗口 等操作,则需要对其进行封装处理。扩张状态观测器子 系统封装步骤如下: (1) 创建封装对话框提示 为了创建这个子系统的封装, 选择子系统模块, 并 从 E di t 菜单中选择 E di t Ma sk 命令, 主要使用 Ma sk editot 对话框中的 Parameter 选项页创建被封装子系统 的对话框。 在 Parameter 选项页增加扩张状态观测器的五个参 数 h,bt01,bt02,bt03 和 b0,每个参数都定义为 edit 控制, 这样用户就可以在对话框的编辑区域内输入数值,这些 数值会存储在封装工作区的变量中,被封装模块只能够 在封装工作区内访问变量。设置完成后,再双击该子系 统模块时打开的是最新构建的对话框,可直接在对话框 内为扩张状态观测器的参数赋值。 (2) 创建模块说明和帮助文本 封装类型、模块说明和帮助文本被定义在 Doc u- mentation 选项页内,可通过 Mask type,Mask discription 和 Mask help 编辑框完成对模块封装类型、描述信息 和帮助文本的设置。 (3) 创建模块图标 通过上面两步已经为扩张状态观测器子系统创建 了一个自定义对话框,但是子系统模块仍然显示的是通 常的 simulink 子系统图标,很不直观。Simulink 提供了 一组可以显示文本、传递函数、一条曲线或多条曲线的 绘制命令,用户可以在 Icon 选项页 Drawing commands 编辑框中输入 MATLAB 语法风格的绘制命令来绘制自 定义的模块图标。例如在 Drawing commands 编辑框中 输入 disp(‘ESO’),则封装子系统的图标将显示为 ESO (Extended State Observer)。 以上设置完成后, 子系统封装完成。封装后的子系 统如图 2(b)所示。输入变量 u 和 e 分别为系统的控制输 入量和误差信号,输出变量 z1、z2 和 z3 分别为系统状 态的估计值及被扩张状态的实时作用量的估计值。 双击子系统模块, 弹出如图 2 ( c ) 所示的参数设置 窗口,在这个窗口中可直接改变系统的参数值, 操作简 单方便。 图 2 ( a ) 扩张状态观测器子系统仿真模型 图 2 ( b ) 封装后的模块 图 2 ( c ) 参数设置窗口 自抗扰控制器的跟踪微分器和非线性状态误差反 馈律这两部分用同样的方法建模,分别封装成子系统后 再根据各部分参数之间的关系组合成自抗扰控制器。 3.2 用子系统来自定义库 在 matlab 开发环境中,simulink 仿真平台可以建立 用户自定义的库文件,并将它们显示在 Library Browser (库浏览器) 窗口下, 方便用户进行模块的操作。用户可 以将一些平时使用比较频繁,或者自己建立的一些封装 子系统模块集中在一起, 方便使用。 要建立 simulink 库文件,首先启动 simulink 工作窗 口, 打开一个新的 Li bra r y 窗口界面, 此时, 用户可以将 自己需要添加的一些模块加入到新的窗口中。然后保 存为所需要定义的库文件名称。这样,就建立了一个自 定义的库文件。 Techniques of Automation & Applications | 3
《自动化技术与应用》2010 年第 29 卷第 2 期 控制理论与应用 Control Theory and Applications 如果用户想要把创建的用户库显示在 simulink 的 Library Browser 中,那么必须建立一个 slblocks.m 文 件,在文件中描述所要添加的用户库的目录。最简单的 建立该文件的方法就是用已存在的 slblocks.m 文件作 为模板, 将文件拷贝到用户库的目录中, 并重新编辑文 件。Simulink 的库浏览器需要知道在用户模块库中需 要显示的是哪一个模块, 以及模块名称, 因此用户必须 提供这些信息,定义一个 Browser 结构和 BlocksetStruct 结构,然后把用户模块库的目录添加到 matl ab 路径中, 这样当下一次打开库浏览器时,用户的模块库就会显示 在 simulink 浏览器中。用此方法可以建立一个 ADRC 库,把常用的一阶、二阶自抗扰控制器的子系统模块加 入到该库中, 当对其他自抗扰控制器进行建模时, 可直 接调用这些模块, 提高建模的效率。 库浏览器如图 3 所示,其中 ADRC Library 为用户 自定义的库。 图 3 自抗扰控制自定义模型库 4 仿真实例 用上面给出的自抗扰控制器算法对如下对象进行 simulink 建模和仿真研究。对象形式为: x 2 twtxxf ( )( ), + , 1 2 = & x 1 = & x 2 = y x 1 + bu 其中参数 b 假定已知 b= 1 . 0, w (,,)cos()cos()( ) f x xttxtx = ts i gn ()0 .5( s i n() ) =+ 2 1211122 t w + , gwgw t w = g g 1 2 。 = 0.1 =w 2 =w 1 , , = b 01 = ,0.2 6.0 假 定 系 统 参 数 7.0 , w= 1 . 0; 设定值 v0 = 1 , 即为单位阶跃信号; 控制器参数 r 。 0 根据前面介绍的建模方法和具体操作步骤, 对上述 对象设计自抗扰控制器并进行建模, 模型如图 4 所示。 系统的仿真结果可以通过示波器查看。仿真结果 03.0 , 1000 ,3.0 ,300 ,100 h 1 ,5 = = = = = b 03 b 02 c r 如图 5 和图 6 所示: 4 | Techniques of Automation & Applications 图 4 自抗扰控制系统仿真模型 图 5 系统输出响应曲线 图 6 系统总和扰动量曲线 图 5 显示的是系统的单位阶跃响应曲线, 从曲线可 以看出系统响应速度快而且无超调;图 6 为系统的总和 扰动量和扩张状态观测器中对系统总和扰动量的估计 值 z3 的曲线。由仿真结果可以看出扩张状态观测器能 够 很 好 地 估 计 出 系 统 的 总 和 扰 动 量 的 实 时 作 用 量 ( twtxxf ( ,这样就能通过对扰动量的补偿把原系 统补偿成线性积分器串联型,再用一般的误差反馈办法 进行设计, 使闭环具有满意的性能, 实现了自抗扰控制 器的“自抗扰”功能。 )) , , 2 1 5 结束语 本文通过对自抗扰控制器结构及原理的分析, 根据 其具体算法建立了 simulink 仿真二阶系统的自抗扰控 制器的基本模型,讨论了 simulink 建模过程中子系统的 封装过程和用子系统来自定义库的方法,并通过仿真实 例验证了仿真结果的正确性。 (下转第 8 页)
《自动化技术与应用》2010 年第 29 卷第 2 期 控制理论与应用 Control Theory and Applications 根据 Mat l ab 提供了一个专门针对预测控制建模、 仿真的工具箱 MPC Toolbox 进行 MPC 控制器设计[6], 在 Simulink 仿真环境中搭建的整体系统结构如图 2 所 示。其中 AC_Parameter 来自递推最小二乘法辨识的模 型,AC_Plan t 是空调房间模型, 来自简化后得 PMV 函 数,AC MPC Controller 是本系统的预测控制器。 对其进行仿真处理, 仿真曲线如图 3 所示, 曲线表 示受控量,上面一条直线表示按照智能建筑设计标准规 定的幅值上限, 下面一条直线表示幅值下限。 下降缓慢, 人体热舒适度 PMV 值的下降还是比较快速 的, 系统的稳定性较好, 波动也较小。 5 结束语 本文提出了一种基于 PMV 指标的双闭环前馈解耦 式广义预测控制策略。该控制策略的核心思想是前馈 解耦式广义预测控制内环和 PMV 指标最小二乘优化外 环。通过参考空气调节模型并进行仿真,结果显示出这 种控制方式的跟踪性能良好, 控制平稳, 基本上达到了 预期目标。 参考文献: [1] 孙宁,江亿,李吉生等.变风量系统耦合特性研究第一部 分:相对增益分析方法[C].全国暖通空调制冷 1998 年学术文集 (武夷山),1998:387-391. [2] 申欢迎.基于 PMV 指标的舒适空调模糊控制系统仿真 研究(D).硕士论文,西南交通大学,2 0 0 4:7 -9 . [3] 曹俊周,周永凯.Fanger 热舒适方程及其应用[J].北京服 装学院学报,1989,10(2):96-101. [4] 许景峰.浅谈 PMV 方程的适用范围[J].重庆建筑大学学 报,2005,27(3):15. 图 3 系统启动后的仿真曲线图 [5] 贾衡.人与建筑环境[M].北京:北京工业大学出版社, 从四幅图中可以看出, 初始室内温度很高, 相对湿 度也较大, 室内没有流动的气体。系统开始运行后, 送 风口送出的冷气流的速度迅速提高,在 2 分钟内即已达 到近 0 . 4 m / s ; 由于设定值为 0 . 3 m / s, 所以风速开始下 降,在约 3 分钟内达到设定值并基本稳定;从对人体受风 情况的分析来看, 并没有采取大风速劲吹以迅速降温, 因此室内温度的下降比较缓慢,约 10 分钟后从初始温度 到达设定值 26 ℃; 在系统启动的同时除湿器开始运行, 所以相对湿度的下降使得人体的闷热感缓和,尽管温度 (上接第 4 页) 参考文献: [1] 韩京清.从 PID 技术到“自抗扰控制技术[J].控制工程, 2002,9(3):17-18. [2] 韩京清.自抗扰控制器及其应用[J].控制与决策,1998, 13 (1):19-2 3. [3] 马幼捷,刘增高,周雪松等.自抗绕控制器的原理解析[J]. 天津理工大学学报,2008,24(4):27-30. [4] 周建新,付传秀,刘爱平.二阶电路的 SIMULINK 仿真及 封装[J].佳木斯大学学报:自然科学版,2007,25(6):733-734. [5] 韩京清,袁露临.跟踪 - 微分器的离散形式[J].系统科学 与数学,1997,19(3):268-273. 8 | Techniques of Automation & Applications 2001. [6] 瞿亮.基于 MATLAB 的控制系统计算机仿真[M].北京: 清华大学出版社,2006. [7] 薛殿华.空气调节[M].北京:清华大学出版社,1991. [8] 魏润柏,徐文华.热环境[M].上海:同济大学出版社,1994. [9] 郭富军,杨昌智.热舒适指标在空调系统控制中的应用 研究[J].湖南大学学报,2000(9):57-60. [10] 中华人民共和国国家标准.智能建筑设计标准 GB/T 50314-2000[S].北京:中国人民共和国建设部,2000(10). 作者简介: 贺培春( 1 9 8 4 - ) , 男, 硕士研究生, 研究方向: 智能 家居, 工 业 自 动 化 。 [6] 张荣,韩京清.串联型扩张状态观测器构成的自抗扰控 制器[J].控制与决策,2000,15(1):122-124。 [7] 韩京清.一种新型控制器 _NLPID[J].控制与决策,1994, 9(6):401-406. [8] 李颖,朱伯立,张威.SIMULINK 动态系统建模与仿真基 础[M].西安:西安电子科技大学出版社,2004:224-228. [9] 胡琳静,孙政顺.SIMULINK 中自定义模块的创建与封 装[J].系统仿真学报,2004,16(3):488-491. [10] 张永林,李彦,李众.在 SIMULINK 中创建用户定义模 块[J].华东船舶工业学院学报(自然科学版),2001,15(3):29-33. 作者简介: 姜萍( 1 9 7 1 - ) , 女, 讲师,博士研究生, 研究方向: 自 抗 扰 控 制 技 术 的 应 用 、 系 统 仿 真 与 建 模 。
分享到:
收藏