【基于组态王的过程控制仿真系统设计】 过程控制组态王课程设计
摘要:利用组态王可视化界面功能与MATLAB计算能力强大的特点,结合DDE技术,开发了集课程的理论和实验教学为一体的过程控制仿真系统;该系统以真实的实验对象为原型,具有良好的开放性,易于扩展,界面简洁,功能全面的特点,可用于实验教学和理论课进行过程控制系统分析。
关键词:仿真实验;组态王;MATALB;动态数据交换;过程控制系统
中图分类号:TP273 文献标识码:A 文章编号:1007-9599 (2012) 16-0000-02
《过程控制工程》、《自动控制原理》等课程都涉及到过程控制方面的知识,都是自动化专业的应用性和实践性很强的专业必修课,许多重要的概念和方法只有通过实验才能更好地理解和掌握,实验就是这些课程的一个必不可少的重要环节。但是目前由于各种自动化仪表和过程控制系统实验装置价格昂贵,学校不可能购置大量先进的设备来满足实验教学的要求。开发仿真教学软件不仅能弥补实验设备数量和质量上的不足,还可以节约大量资金,节省宝贵的实验时间且危险性小。本文利用组态王良好的界面系统和MATLAB的强大数据运算能力进行设计,以真实的被控对象为原型,用逼真的画面再现被控对象,展现整个控制过程,给学生提供一个多角度、多层次观察仿真过程的可视化人机交互环境,学生可以直接在组态王界面上选择需要的控制策略并修改各个仿真参数,系统可以形象地显示出仿真控制结果。开发软件采用组态王和MATLAB,开发出的仿真系统可用于上述课程的实验教学和课堂演示,也可作为研究各种控制系统和复杂控制算法的实验平台[1]。
1 仿真系统设计思想
组态王是一套基于Microdoft的各种32位Windows平台的全中文组态软件。借助于它的强大界面功能,可生成画面丰富而生动的多媒体画面,利用其可视化的画面制作技术,可实现各种满足要求的仿真界面。但组态软件在复杂的数值计算和分析方面显得力不从心,难以实现复杂的控制策略。MATLAB 语言以矩阵和向量为基本数据单位,提供了强大的科学运算、灵活的程序设计流程、便捷的与其他程序接口,高效率的复杂算法等[2]。同时,MATLAB语言还配备有各种各样的工具箱,解决许多特定的课题和数学建模问题,如数值计算、算法预设计与验证、模拟与数字通讯、数字信号处理、时间序列分析、动态系统仿真等。拥有大量稳定可靠的算法库,但编写界面的功能较差、没有提供与计算机硬件的接口、无法进行端口操作、不能实现实时监控等。工控组态软件和MATLAB各有优缺点,利用动态数据交DDE(Dynamic-Data-Exchange)通讯协议进行数据交换,则可将组态王良好的画面显示技术MATLAB的优秀计算功能结合起来,即用MATLAB中的Sinmulink进行模型计算和仿真,将仿真结果发送到由工控组态软件组态王生成的仿真界面上,动态地显示仿真结果。仿真系统的构成如图1所示。主要包括:
显示模块:主要是基于组态软件的图形设计,使系统的操作较为人性化,便于对系统的监控,主要以流量、压力、物位,温度四大工业参数的化工厂生产装置为控制对象。
数据处理模块:以MATLAB为后台的数据处理,依赖于MATLAB的强大数据处理能力,来实现控制对象,控制器的仿真,再能过DDE通信把结果数据输送到组态王界面显示。
输入输出模块:主要是能过显示界面来操作,系统的主页面提供仿真的一些控制系统的选择和参数的设定,这些数据输入会存放到组态软件的数据库里,等待系统调用,使用起来方便直观。
2 仿真系统设计
2.1 仿真系统内容
设计以PCT系列过程控制工程实验装置为原型,仿真的基本内容包括:(1)控制器仿真:P控制器、PI控制器、PID控制器;(2)被控对象:带延迟环节、非线性环节、离散线性;(3)控制算法:单回路控制、串级控制、前馈控制、比值控制;
仿真的内容可以根据课程的需要和实验项目进行扩展。仿真操作界面为中文Windows通用操作界面,包括仿真项目选择、PID控制参数设定、实时曲线、历史曲线、报表生成、自动和手动控制;选择仿真的“启动/停止”按钮可以控制仿真的开始和结束。仿真系统主界面如图2所示。
2.2 仿真模型的建立
数学模型指广义对象模型和控制器模型。广义对象包括:被控对象、执行器、变送器,是通过在PCT系列过程控制工程实验装置上进行多次实验,测取阶跃响应曲线,获取被控对象特性参数,来建立对象的模型。控制器模型在MATLAB下有PID控制器模块可以直接调用,各种控制算法的模型可以进入Simulink环境,调出需要的模块,再把各元器件连接起来即可。最后将广义对象模型、控制器模型处理成子系统并封装成模块。经过封装的各子系统名称如下:
(1)PID控制器:PID.mdl ;(2)单回路控制系统:PIDCS.mdl ;(3)串级控制系统:CJCS.mdl ;(4)前馈控制系统:QKCS.mdl ;(5)比值控制系统:BZCS.mdl ;(6)带延迟环节系统:DELAY.mdl ;(7)非线性环节系统:FXXHJ.mdl ;(8)离散线性系统:LSXT.mdl 。
各子系统中低层模块的参数比如PID控制参数等用变量的形式来表示,将这些变量通过DDE通信方式与组态王实时数据库中的变量连接,通过仿真界面上的操作可以设定这些变量。
2.3 组态王与MATLAB的动态数据交换
整个仿真系统所需要的模块建立后,要编写连接程序,来实现组态王和MATLAB之间的通信,并在MATLAB下的模块调用。DDE通信的软件设计是在Matlab的Simulink中使用Matlab语言编写灵活的S函数来实现,以M文件形式存在,Simulink提供了一个M文件形式的S函数模板,包括定义一些必要函数的语句和一些注释[3]。
程序的框架如图3所示。
(1)MATLAB的DDE传输程序设计 在本次开发中,组态王编制的主控程序将数据送到MATLAB 程序进行仿真计算,计算后将结果返回主程序,在MATLAB中建立M文件[4],下面是MATLAB与组态王之间进行数据交换的程序:
%MATLAB与服务器建立连接
global channel;
channel=ddeinnt("view" ," tagname");%建立与服务器的对话,并返回通道号。
if channel==0
disp(‘DDE连接失败’);
Else
disp(‘DDE连接成功’);
%MATLAB下的模型从组态王接收数据
M_SELECT = ddereq(channel,"select"); %接收选择变量
M-SP = ddereq(channel,"SP"); % 接收给定值
M_KP = ddereq(channel,"KP"); % 接收比例增益
M_TI = ddereq(channel,"TI"); % 接收积分时间
M_TD = ddereq(channel,"TD"); % 接收微分时间
M_F1 = ddereq(channel,"F1"); %接收干扰值
M_F2 = ddereq(channel,"F2");
%MATLAB下的模块调用
t=[0:0.1:9.9]; %模块的时间输入给定
switch M_SELECT
case ‘0’
[t,x,y]=sim(‘PID’,30,[],M_SP);
case ‘1’
[t,x,y]=sim(‘DELAY’,30,[],M_SP);
case ‘2’
[t,x,y]=sim(‘FXXHJ’,30,[],M_SP);
case ‘3’
[t,x,y]=sim(‘LXXT’,30,[], M_SP);
case ‘4’
[t,x,y]=sim(‘PIDCS’,30,[], M_SP);
case ‘5’
[t,x,y]=sim(‘CJCS’,30,[], M_SP);
case ‘6’
[t,x,y]=sim(‘QKCS’,30,[], M_SP);
case ‘7’
[t,x,y]=sim(‘BZCS’,30,[], M_SP);
otherwise
break;
end
%MATLAB下的模型向组态王发送数据
for i=1:200
b=y(i);
ddepoke(channel,"r1c2",b);
end
保存为DDE.m文件
(2)仿真系统的运行
完成整个仿真系统的模型以后进行运行调试,首先运行组态王,点击VIEW运行组态王系统,等系统进入仿真界面后,选择要仿真的控制系统,设定参数,然后再打开MATLAB程序,在命令窗口下输入:DDE 按下回车键,就运行仿真系统,然后跟据仿真系统的显示效果来调整MATLAB下的发送频率,最后得到完美的显示曲线。
3 结束语
该仿真系统充分利用了组态软件KINGVIEW和MATLAB各自的优点,用组态王开发形象逼真的仿真画面,仿真模型由MATLAB完成,确保了仿真结果的正确、可靠。仿真实验系统不仅能用于仿真实验教学,还可以用于开展实物实验的前期准备工作,或者在实物实验后进行更深入的仿真研究。通过将仿真系统和实物系统进行对比,更利于学生熟悉和掌握各种过程控制系统的结构和特性,建立起更清晰的控制系统的概念。
参考文献:
[1]梁莉.过程控制仿真实验系统的开发[J].实验技术与管理,2005.4,81-83.
[2]樊剑锋,王新彦.基于DDE机理的组态王与MATLAB通信技术及应用[J].山西电子技术,2010.4,52-54.
[3]董新利,王景景.在控制系统中实现组态王与MATLAB的DDE通讯[J].微计算机信息,2005.4,3-5.
[4]王冰,王世明.组态王相关数据库研究[J].计算机工程与设计,2008.4,32-35.
[作者简介]康珏(1961-),女,云南个旧人,广东石油化工学院电信自动化系,硕士学位,副教授,主要研究方向过程控制、自动化仪表。
栏目最新:
- 2022公文如何写成美文:用好四知、四问...2022-11-21
- 2022年1.8万字爆款通讯“美文”,究竟“...2022-10-30
- 名家美文摘抄2022-10-02
- 2022年公文如何写成美文:用好四知、四...2022-08-18
- 钓鱼协会工作小结_2020-04-16
- ug8.0安装方法 来往下载安装方法2020-03-20
- 怎么注册来往账号 [阿里巴巴来往账号注...2020-03-20
- 易信的功能 [易信有哪些功能?] 2020-03-20
- 新浪微博塞班客户端如何更换预览模式?...2020-03-20
- 易信电话留言如何使用:易信电话显示什么...2020-03-20
相关文章:
- 2018年四川注册计量师报名费用及网上缴费时间:4月12日-5月12日_2018四川二级计量师
- 2018年福建出版专业资格考试时间:10月13日_2018出版专业资格考试时间
- 2018年黑龙江黑河中考政治真题:2018黑龙江黑河房价
- 幼升小一路走完:我最后悔的事情:优胜路小学幼升小报名
- 十大绝招使孩子主动积极_让前夫主动联系的绝招
- 【贵州2018年注册会计师考试合格分数线】2018年贵州二建分数线
- See,Look,Watch看看看!分不清楚很尴尬哦!:青春同学会尴尬
- 【生产安全月工作计划模板】公司生产安全组长工作计划安排
- 2018医学检验中级准考证查不了_2018山东医学检验职称准考证打印入口【已开通】
- 钱堆里的男孩读后感:钱堆里的男孩读后感300
- 孕早期流褐色血查出是孕酮低_孕产疾病:孕早期被查出孕酮低怎么办?