APP下载

面向现代控制理论实验教学的倒立摆虚拟仿真系统

2017-06-19邓晓刚杨明辉

实验室研究与探索 2017年5期
关键词:编程变量实验教学

邓晓刚, 杨明辉

(中国石油大学(华东) 信息与控制工程学院 山东, 青岛 266580)

面向现代控制理论实验教学的倒立摆虚拟仿真系统

邓晓刚, 杨明辉

(中国石油大学(华东) 信息与控制工程学院 山东, 青岛 266580)

针对现代控制理论实验资源紧张问题,提出一种基于倒立摆机理模型的开放式虚拟仿真系统开发方法。首先,根据装置机理建立倒立摆系统的状态空间模型;然后应用LabVIEW软件绘制倒立摆装置操作界面,并编制后台程序实现其模型仿真;最后利用OPC技术实现虚拟仿真系统变量数据的共享,以方便学生测试控制算法。该仿真系统不但具有良好的人机交互界面,能够较好地模拟真实实验装置,而且具有很好的开放性,为学生自主编程留下了充足空间,有助于其创新能力培养。

现代控制理论; 倒立摆; 仿真软件; LabVIEW

0 引 言

现代控制理论在高校自动化类专业教学中占有重要地位。该课程是自动控制原理的后续课程,同时也是过程控制工程、计算机控制、控制系统仿真等本科专业课的先修课程,更是线性系统理论、最优控制等若干研究生课程的学习基础。现代控制理论主要讨论基于状态空间法的多输入多输出系统分析与设计问题,涉及到状态空间建模、能控能观性分析、状态反馈控制等大量的理论知识,数学推导繁多,概念复杂抽象,学生普遍认为学习难度大。针对此问题,现代控制理论教学中一般都配置一定学时的课程实验,以帮助学生深入理解控制原理和算法,从而提高课程教学效果[1-2]。然而,由于设备资源紧张、场地安排密集、及实验学时有限等因素,学生往往难以在实验装置上开展实验,虚拟仿真实验就成为现代控制理论实验教学中的一个主要形式。如何更有效地开展虚拟仿真实验,已经成为相关教学研究人员日益关注的问题。

虚拟仿真资源建设在近些年来得到国家和各级高校的普遍重视,高校教学研究人员进行了虚拟资源开发与实验模式方面的深入探索[3-4]。对现代控制理论课程而言,其仿真实验往往采用基于MATLAB软件的理论验证模式[5-7],针对给定数学模型,学生编写相关程序验证所学的控制理论。该实验模式简单易行,能够很好锻炼学生编程能力,在现代控制理论实验教学中发挥了重要作用。但是由于MATLAB界面编程能力弱,无法直观图示实际工程背景,难以进一步提升学生的学习兴趣。近年来,LabVIEW软件逐渐引入并应用于高校教学中,为虚拟仿真实验教学提供了新的手段[8]。该软件具有较好的工艺界面设计能力,能够有效提高虚拟仿真实验的直观性。然而如果直接使用LabVIEW软件开发封装的仿真系统,仅仅让学生改变参数观察结果,又不利于学生编程能力的锻炼。因此,如何将LabVIEW和MATLAB软件结合起来开发直观开放的虚拟仿真系统,补充和提升现有的实验模式,是值得深入研究的问题。

针对上述问题,本文以倒立摆实验装置为例,提出一种面向现代控制理论实验的开放式虚拟仿真系统设计方法。该方法利用LabVIEW软件开发友好的操作界面,直观地反映设备运行过程,提高学生学习兴趣;同时,该方法通过OPC通信技术将将仿真变量发布为共享变量,学生可以在MATLAB软件中自主编程实现对虚拟实验装置的控制,锻炼学生的编程能力。基于策略开发的虚拟仿真系统,有效结合LabVIEW和MATLAB两类软件的优势,有助于实验教学效果提升。

1 倒立摆实验装置的机理建模

倒立摆装置是一个多变量非线性不稳定系统,其控制方法在机器人、航天、军事等领域有着广泛应用,是现代控制理论的理想研究对象[9-10]。我校自动化专业实验室购置了6套固高GLIP2002型直线倒立摆实验装置,以满足现代控制理论、运动控制、综合实验和毕业设计等相关课程的实验实践教学需要。但是由于实验装置数量有限,难以充分满足学生的使用需求。本文针对真实倒立摆实验装置,开发相应的虚拟仿真系统,为现代控制理论实验提供辅助平台。

实验装置抽象图示如图1。倒立摆质心到转动轴心的距离为L,质量记为m,倒立摆运载小车质量记为M,该小车由电动机拖动,其水平控制力记为F,小车的相对位移记为s,摆杆与垂直向上方向的夹角为θ。如果仅仅施加一个初始作用力,摆杆会倒向一侧,因此该系统是不稳定系统。倒立摆系统反馈控制的目的是不断改变控制力F的变化,使小车达到设定的位置时摆杆仍然保持在垂直位置上。

图1 倒立摆抽象图示

下面分析倒立摆的运动机理,建立其数学模型。对于小车而言,其运动方程包括位移方程和速度方程,具体公式如下所示:

(1)

(2)

对于摆杆来说,其角度和角速度运动方程用如下公式描述:

(3)

(4)

进一步整理以上方程,可以得到倒立摆装置的系统状态方程为:

(5)

式中:

本文模拟的倒立摆装置其物理参数数据为:M=1.2 kg,m=0.1 kg,b=0.1 N/(m·s),L=0.5 m,I=0.025 kg·m2,g=9.8 m/s2。

2 基于LabVIEW的虚拟仿真实验系统开发

2.1 总体系统框架

本文使用LabVIEW软件开发倒立摆虚拟仿真系统。LabVIEW软件是美国国家仪器公司研发的一种图形化编程软件,目前已经逐渐在高校科研和工业自动化生产中得到广泛应用。与其他编程软件编写大量源代码不同,该软件采用流程图式的G语言,系统中提供了丰富的封装模块,能够直接完成数据采集、虚拟仪表、数学运算、实时曲线等多种功能,为开发虚拟仿真系统提供了强有力的技术支撑[11-13]。

依托LabVIEW软件,倒立摆实验装置虚拟仿真系统总体框架如图2所示,包括设备操作界面设计和后台仿真程序开发。前台操作界面用于直观的演示控制

图2 虚拟仿真系统结构框图

系统和交互设置控制参数,后台仿真程序则完成对倒立摆装置机理系统的模拟。同时操作界面和仿真程序中的数据可以通过OPC通信技术进行发布,供外部程序调用。

2.2 具体开发流程

要实现上述虚拟仿真系统的开发,主要涉及3个步骤:① 前台操作界面开发;② 后台仿真程序编制;③ 系统共享数据发布。本文将对上述步骤依次进行分析。

(1) 首先分析操作界面的开发过程。操作界面为虚拟仿真系统提供直观的图形显示和数据指示,并提供给定值的输入接口,具体包括装置图示、实时曲线、过程参数、仿真设置等模块。装置图示用于演示倒立摆的运动过程,主要使用“二维图片”控件完成。插入“二维图片”空间后,采用修饰性控件或者插入图片的方式绘制倒立摆的本体设备图。实时曲线图用于记录小车位移和角度的变化曲线,采用Waveform Chart控件完成。过程参数包括“装置物理参数”“状态变量”“控制参数”,均基于数值输入和数值显示控件。仿真设置包括“仿真步长”“仿真速度”两个参数,前者决定仿真精度,后者调节仿真系统的运行速度,此外,本系统特别设置了控制模式选择开关,包括“状态反馈控制演示”和“外部程序控制”两种模式。选择前者时,系统启用预先设置的状态反馈控制器,学生可以通过调节参数直接观察控制效果,选择后者时,学生可以通过MATLAB编程自行实现各种复杂控制算法。设计完成后的操作界面如图3所示。

图3 倒立摆虚拟仿真系统界面图

(2) 继续分析后台程序编制过程。LabVIEW采用流程图式的编程语言,形象直观,编程方便。编程过程中,首先添加while循环结构,作为整个系统的运行条件。然后在while循环中增加相应的数学运算、公式节点、图形绘制模块,以实现对倒立摆机理模型的仿真。整个程序的核心是公式节点的编制,公式节点如图4所示。本文采用欧拉算法在“公式节点”模块完成机理仿真,也可采用更为复杂的龙格库塔算法。同时,采用图片函数库中的“绘制点”“绘制线”“绘制矩形”等实现倒立摆摆杆的动画演示。

图4 公式节点图

在上述工作完成后,就形成了一个初步的仿真系统。该系统是封闭的,只具有演示功能,其他软件无法访问仿真装置的数据。为了增强系统的开放性,本文应用LabVIEW共享变量引擎将倒立摆仿真系统部分数据发布到OPC Server中,供外部程序编程访问。

OPC(OLE for Process Control)技术是一种基于微软公司COM/DCOM技术的标准数据通信架构。利用该技术,可以实现Windows系统中不同计算机程序之间的数据交换,无需针对不同设备和不同软件开发特定性程序。如果已经构建好OPC Server,编程人员就可在不同软件平台下使用OPC通信协议来实现对公共数据的读取和修改。

LabVIEW软件的共享变量引擎(shared variable engine,SVE),是将虚拟仿真数据方便的发布到OPC Server的有效方法。共享变量(Shared Variable)是LabVIEW 8.0版本后引入的一种新的变量类型,需要在项目文件中才能创建。使用共享变量时,在项目浏览窗口中右键单击一个项目库,在快捷菜单中选择“新建”、“变量”来打开共享变量属性对话框,按照要求配置各个选项即可。建立所有共享变量后,右键单击项目库并选择“部署”菜单,系统会将共享变量发布到指定的OPC Server:National Instruments.Variable Engine.1中。完成该工作后,可在LabVIEW程序框图引用变量,也可将共享变量与已有的控件进行绑定。

3 在现代控制理论实验中的应用

倒立摆虚拟仿真软件系统建立完成后,可以通过MATLAB程序实现对倒立摆的控制,本节分析具体的编程思路和验证结果。

3.1 基于MATLAB软件的控制算法编程

MATLAB软件提供了OPC Toolbox,用户可以用MATLAB命令行方式直接运行所有的OPC Toolbox函数,创建和配置OPC对象,实现对OPC服务器数据读写。本文在此简要分析MATLAB软件M语言编程访问倒立摆虚拟仿真系统的过程,主要涉及的命令包括OPC服务器的创建、链接、配置以及OPC项的读写。

OPC对象的创建命令为opcda,其用法如下:

da = opcda('localhost', 'National Instruments.Variable Engine.1');

在上式中,da为自定义的opc对象名称,创建后可以采用connect命令链接OPC对象。

进一步应用addgroup,additem命令可以配置OPC变量组和OPC变量项,使用read和write命令可以实现对OPC数据的读写,结合timer函数,在MATLAB中可以实现对OPC数据的定时操作:

t= timer(‘TimerFcn’,原位复合UserFunction,‘Period’,Ts,‘ExecutionMode’,‘fixedRate’);

其中,t为自定义的timer对象名称,可以start和stop命令来启动和停止,Ts为采样周期,UserFunction是需要用户自行编写的程序,用于实现控制算法及实时记录仿真数据。

3.2 实验测试结果

本文通过状态反馈控制器和状态观测器的实验应用来说明软件的可行性。状态反馈控制器和状态观测器设计是对现代控制系统理论知识的综合运用[14-15],能够很好地反映学生对控制理论的理解程度。在状态反馈控制器实验中,学生根据给定性能要求,自行设计闭环系统极点,然后计算状态反馈控制器参数。本文将闭环系统的主导极点配置在-1.5+1.5j和-1.5-1.5j,然后实时状态反馈控制,其控制效果如图5所示。从图5可以看出,当给定值发生变化时,倒立摆的位移曲线具有良好的动态性能。以全维状态观测器的设计为例,全维状态观测器可以实现对4个系统状态的观测。篇幅限制,本文仅给出位移状态的观测结果。为考察观测器性能,观测系统的位移状态初始值设为0.05,而真实的位移初始值为0。观测结果如图6所示。从图中看出,尽管初始时刻存在0.05的偏差,但是状态观测器能够迅速跟踪上真实的状态,从而说明观测器具有较好的观测性能。

图6 状态观测器结果示意图

4 结 语

针对现代控制理论仿真实验教学问题,构建了基于倒立摆机理模型的虚拟仿真系统。该系统提出的方法具有直观性和开放性两方面的优点。① 基于真实倒立摆装置的机理模型和物理参数,利用LabVIEW开发系统虚拟仿真系统,具有较高的工艺逼真度和操作可视性,有助于提升学生的学习兴趣;② 本文所设计的系统基于OPC通信技术实现仿真数据的开放性操作,为学生留下充足的自由发挥空间,学生可以通过MATLAB编程实现对仿真数据的访问,自主测试新算法,有利于学生动手能力和创新能力的提高。目前在现代控制理论教学中的初步应用结果表明,上述系统引起学生极大的动手编程兴趣,提高了学生对现代控制理论知识的深入理解。

[1] 李 武, 荣 军, 丁跃浇. 现代控制理论课程实验的对比教学法[J]. 实验技术与管理, 2015,32(6): 204-207.

[2] 王卫红, 袁少强, 吴云洁, 等. 现代控制理论研究型自主性综合实验教学方法[J].实验室研究与探索, 2006, 25(6): 673-674.

[3] 李 平, 毛昌杰, 徐 进. 开展国家级虚拟仿真实验教学中心建设提高高校实验教学信息化水平[J].实验室研究与探索, 2013,32(11):5-8.

[4] 邓晓刚. 过程控制实验装置的机理建模与虚拟仿真软件开发[J].实验室研究与探索, 2015,34(10): 99-103.

[5] 周 兰, 周少武. MATLAB数字仿真在现代控制理论教学中的应用[J].当代教育理论与实践, 2014,6(5): 104-106.

[6] 叶彪明. 基于MATLAB的《现代控制理论》课程的实验设计[J].实验室研究与探索, 2004,23(1): 28-30.

[7] 伍 星, 郝惠娣, 翟惠荣, 等. 浅谈“现代控制系统“课程中的MATLAB教学[J].高等理科教育, 2003,51(5): 43-47.

[8] 吴震宇, 方 敏, 丁 康. 基于LabVIEW的二级倒立摆控制系统三维仿真[J].合肥工业大学学报(自然科学版), 2011,34(10):1480-1484.

[9] 袁少强, 程 鹏. 现代控制理论系列实验的设计与实践[J].实验技术与管理, 2005,22(3):98-99.

[10] 李雪冰, 马 莉, 丁世宏. 一类新的二阶滑模控制方法及其在倒立摆控制中的应用[J].自动化学报, 2015,41(1):193-202.

[11] 袁 浩, 朱 畅, 陈志敏. 基于LabVIEW的自动控制仿真系统设计[J].实验室研究与探索, 2006, 25(4):457-459.

[12] 邓晓刚, 于作军. 连续搅拌反应釜机理建模与开放式虚拟仿真系统开发[J].实验技术与管理, 2016,33(1):114-117.

[13] 张兰勇. LabVIEW程序设计基础与提高[M].北京:机械工业出版社, 2013.

[14] 袁少强, 郭艳玲, 张 平, 等. 基于工程项目教学法的控制实验平台建设[J].实验室研究与探索, 2013,32(11): 425-428.

[15] 刘 豹, 唐万生. 现代控制理论[M]. 3版. 北京:机械工业出版社, 2011.

国运兴衰,系于教育;教育振兴,全民有责,在党和国家工作全局中,必须始终坚持把教育摆在优先发展的位置。按照面向现代化、面向世界、面向未来的要求,适应全面建设小康社会、建设创新型国家的需要,坚持以育人为根本,以改革创新为动力,以促进公平为重点,以提高质量为核心,全面实施素质教育,推动教育事业在新的历史起点上科学发展,加快从教育大国向教育强国、从人力资源大国向人力资源强国迈进,为中华民族伟大复兴和人类文明进步作出更大贡献。

——摘自《国家中长期教育改革和发展规划纲要(2010—2020年)》

Inverted Pendulum Virtual Simulation System Development for Modern Control Theory Experiment Teaching

DENGXiaogang,YANGMinghui

(College of Information and Control Engineering, China University of Petroleum (East China), Qingdao 266580, Shandong, China)

In order to solve the problem of shortage of modern control theory experiment resource, this paper proposes an open virtual simulation system development method based on the inverted pendulum mechanism model. First, the state space model of the inverted pendulum is constructed based on the device mechanism. Then LabVIEW software is applied to draw the inverted pendulum device operation interface and the background programs are designed to achieve its model simulation. Finally, the OPC technology is used to share the data of virtual simulation system, which helps students to test the control algorithms. The constructed simulation system has not only a good interface to simulate the real experimental device, but also the excellent openness, it also leaves enough space for students to perform independent programming, and contributes to cultivate their innovative ability.

modern control theory; inverted pendulum; simulation software; LabVIEW

2016-09-15

国家自然科学基金(61403418); 山东省自然科学基金(ZR2014FL016); 中国石油大学青年教改项目(2013-28); 中国石油大学校级实验教改重点项目(SY-A201407)

邓晓刚(1981-),男,山东东营人,博士,副教授,主要从事工业过程建模、先进控制与故障诊断等方向的教学与科研工作。

Tel.:0532-86983472; E-mail:dengxiaogang@upc.edu.cn

TP 391.9

A

1006-7167(2017)05-0079-05

猜你喜欢

编程变量实验教学
抓住不变量解题
编程,是一种态度
元征X-431实测:奔驰发动机编程
小议初中化学演示实验教学
也谈分离变量
编程小能手
电容器的实验教学
对初中化学实验教学的认识和体会
纺织机上诞生的编程
几何体在高中数学实验教学中的应用