基于OPC的SIMATIC PCS7预测控制实验系统设计与实现

2017-04-25 03:47宝,
实验技术与管理 2017年4期
关键词:阶跃控制算法组态

刘 宝, 张 晨

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

基于OPC的SIMATIC PCS7预测控制实验系统设计与实现

刘 宝, 张 晨

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

为锻炼学生在实验教学中的创新能力,提出一种依托SIMATIC PCS7系统和SMPT-1000实验装置的预测控制实验系统。在介绍SIMATIC PCS7系统的基础上,以OPC通信协议为桥梁,实现了预测控制算法在SMPT-1000实验过程中的应用,提高了学生对高级过程控制算法的认知和理解,培养了学生的创新思维和创新能力,对高校实验教学的发展有着极其重要的推动作用。

预测控制; OPC; PCS7系统; SMPT-1000

SIMATIC PCS7系统是基于现场总线的模块化过程控制系统,它将PLC与DCS的优点和功能结合起来,具有更广泛的适用性[1]。SMPT-1000是北京化工大学和西门子公司联合开发的物理仿真实验设备,采用流程工业中通用的水汽热能系统,主要包括燃烧、换热、相变、浓缩等环节,在保留对象动态特性的基础上,使生产工艺易于理解,便于开展过程控制相关专业实验教学和技能训练[2]。目前许多高校购置了PCS7和SMPT-1000实验设备,但是利用该实验设备开发的高级控制算法实验系统较少,而高级控制算法实验系统对提高学生的工程实践能力大有裨益。

预测控制算法是一种基于过程模型的先进算法[3]。它首先建立控制对象的过程模型,利用模型进行运算与处理,得到被控对象在一定控制策略下的未来动态行为,再针对未来的系统动态调整控制信号以实现最优控制;系统运行中,被控对象的实时信息又反馈回来修正下一时刻预测的系统动态输出,从而实现滚动优化。

本文依托SMPT-1000实验设备,使用SIMATIC PCS7系统对控制对象进行传统方法控制,然后利用OPC通信技术,完成Matlab与PCS7系统的数据交互,最后实现预测控制算法对SMPT-1000控制对象的高级控制。在实验教学中,通过加入预测控制算法,适当增大了实验的难度和复杂程度,使学生(包括本科生和研究生)对过程控制和先进控制算法有了较深入的理解,提高了分析问题、解决问题的能力。

1 相关实验设备及预测控制原理

1.1 SIMATIC PCS7系统

SIMATIC PCS7系统集成在SIMATIC MANAGER管理器中,它打破了传统DCS与PLC原有的界限并进行无缝集成,使系统的应用更加广泛[4]。PCS7的结构是以PROFIBUS现场总线技术为基础,将现场控制设备I/O卡件全部集成于过程控制系统中,如图1所示。

图1 PCS7系统结构图

现场设备通过ET200分布式I/O连到PROFI-BUS总线上。I/O卡件与CPU可以通过PROFIBUS总线实现两者间通信,可以将主控器与操作装置放在控制室里,现场设备(如SMPT-1000)与分布式I/O安装在工艺现场。

1.2 SMPT-1000系统

SMPT-1000是把实物模拟装置与数字仿真技术相结合的实验装置。它集成了多种工业控制对象流程,可以模拟蒸发器、加热炉和锅炉等工艺对象。其中锅炉单元是本文所涉及的主要实验工艺系统,其工艺流程如图2所示。

软化水被分为两路:一路进入E1101减温器降低过热蒸汽温度;另一路流向E1102省煤器为锅炉给水预热。锅炉给水经烟气预热后被送进汽包V1102。给水流经水冷壁一侧,吸收炉膛热量成为汽水混合物,之后进入V1102进行汽水分离。经过汽水分离后的饱和蒸汽进入炉膛,气相成分继续升温变为过热蒸汽,并流进减温器对锅炉给水预热后输给下游生产环节[5]。燃油泵P1102输送燃料,空气被鼓风机K1101按照一定比例送向炉膛。燃料在炉膛中燃烧产生热量,锅炉水在热量作用下汽化。

在实际生产过程控制中,燃烧生成的烟气夹带大量余热,预热省煤器中的锅炉给水。在烟囱的抽力作用下,烟气被抽出排入大气。烟气含氧量反映了锅炉内的燃烧工况,通过控制烟气含氧量保证锅炉内充分燃烧,进而促进节能减排。由于烟气含氧量与锅炉的多个变量有着较强耦合和传输惯性,使得利用传统控制方法对该控制变量调节存在较大困难。

图2 SMPT-1000的锅炉生产工艺流程图

为了提高学生在高级过程控制方面实际动手能力,设计了PCS7预测控制实验系统,其实验目的是在掌握预测控制算法(MPC)基本原理的基础上,以SMPT-1000系统的锅炉单元为控制对象,首先在PCS7系统中组态实现基本控制回路,然后利用OPC通信技术实现Matlab的预测控制模块与PCS7系统内部的控制算法模块进行数据通信,最后实现对SMPT-1000实验工艺对象的预测控制,并对其控制性能指标进行分析。

2 PCS7预测控制实验系统设计与实现

2.1 预测控制实验系统整体架构

预测控制算法(MPC)是一种基于过程模型的先进控制算法,通常包含预测模型、滚动优化和反馈校正3部分[6]。

(1) 预测模型。根据工艺对象的历史信息和未来输入预测其未来输出,具有展示系统未来动态行为的功能。

(2) 滚动优化。通过某一性能指标的最优化来确定未来的控制作用,该优化是一种有限时段的滚动优化。

(3) 反馈校正。通过优化确定一系列未来的控制作用后,通常只输出当前控制周期的控制作用。到下一控制周期,则首先检测工艺对象的实际输出并对基于预测模型的输出进行修正,然后进行新的滚动优化[7]。

OPC是一种应用广泛的通信协议,它提供了一系列接口函数,能满足各种类型的现场设备要求;软件用户访问的方式被统一,方便软件开发者与其他系统的对接与软件使用者的使用[8]。本文基于OPC通信技术,设计实现PCS7系统和SMPT-1000的预测控制实验系统。利用OPC实现了PCS7和Matlab之间的数据传输[9],从而在PCS7系统中实现MPC预测控制算法(见图3)。

图3 PCS7预测控制实验系统整体架构图

2.2 PCS7中控制系统组态实现

关于SMPT-1000基本控制系统的实验设计,主要包括PCS7系统的操作员站、自动化站的系统组态和连续控制CFC、顺序控制SFC组态。

2.2.1 硬件组态

(1) AS组态。进入SIMATIC MANAGER画面,打开HW Config视图进行AS组态。首先在Properties的Parameters选项卡中,将MAC address改为PLC的MAC地址;然后挂载PM125模块。先将PM125挂载在DP线上,然后为PM125添加输入与输出,并给各输入、输出定义相应的标志。

(2) OS硬件组态。按照操作员站组态编辑器的硬件配置进行组态,与站组态编辑器保持一致。先在Component View中打开Configuration对象,并添加一个IE General网卡。双击IE General,将PC站的MAC地址写入MAC address栏中。然后将组态信息保存并编译,此时已将AS、OS组态完毕,应该连接AS与OS。在Component View中打开Connections对象,创建一个网络连接。硬件组态完成后,按照顺序分别下载OS组态、AS组态和网络连接。

2.2.2 CFC程序设计

CFC在工厂连续运转的工艺过程中,以功能块的形式实现自动控制功能。编辑CFC时,将预先设置的功能块放在CFC中连接线路、设置参数,实现控制功能。SMPT-1000的主要控制回路包括:

(1) 燃烧控制:需要控制燃料和空气的配比,以达到充分燃烧;

(2) 给水控制:需要与蒸汽产量匹配,以控制锅炉汽包内水的储量;

(3) 过热蒸汽出口压力控制:要求能够根据负荷的变化控制蒸汽压力;

(4) 过热蒸汽出口温度控制:需要根据工艺要求精确控制蒸汽温度。

本文选取燃烧控制中烟气含氧量单回路作为被控对象,控制系统原理如图4所示。

图4 烟气含氧量单回路控制系统原理图

2.2.3 SFC程序设计

SFC是西门子公司在PCS7中解决顺序控制的一个工具,运用SFC可以较为简单、方便地完成循环、判断、顺序等方式的控制,因此在SFC中编写程序实现SMPT-1000系统的开车过程(见图5)。按照图5所示开车过程,在SFC中搭建程序框图,在每个程序块中写入对应步骤的控制语句并加入判断条件,最终完成整个开车过程。

图5 SMPT-1000开车过程示意图

2.3 OPC通信部分的设计与实现

OPC Server是一套用于工业自动化的框架结构软件,它提供与硬件装置相连接的接口。客户可以用同样的代码重复使用OPC接口,更加容易地远程访问OPC Server或远程控制目标[10]。本文使用OPC技术实现PCS7与Matlab之间的连续数据通信。

2.3.1 PCS7中OPC-Sever实现

SIMATIC WinCC是西门子公司的人机界面组件,对于各工业领域有通用的解决方案且功能丰富。启动WinCC时,系统会自动启动PCS7内部的OPC Server,完成以OPC技术为通信桥梁的数据通信。

2.3.2 Matlab中OPC实现

Matlab可以通过程序与OPC Server建立连接、传输数据,步骤如下:

(1) OPC Server访问PCS7系统(系统编译后所有工艺变量均进入OPC Sever,删去不需要的变量即可),读取SMPT-1000系统状态参数;

(2) Matlab与OPC Server建立通信:

hostInfo=opcserverinfo(′localhost′); //主机通讯 da=opcda(′localhost′,′OPCServer.WinCC.1′); //句柄 connect(da); //建立连接 grp=addgroup(da,′group1′); //获取数据

(3) Matlab访问WinCC,将状态参数读入先进控制程序,如:

AI1101=additem(grp,′CFC(1)/AIC1101.PV_IN′); AI1101_KP= dditem(grp,′CFC(1)/AIC1101.GAIN′); AI1101_TI = additem(grp,′CFC(1)/AIC1101.TN′); AI1101_TD = additem(grp,′CFC(1)/AIC1101.TV′); AIC1101_SP= additem(grp,′CFC(1)/AIC1101.SP_OP′); AIC1101_MAN=additem(grp,′CFC(1)/AIC1101.MAN_OP′);

(4) 各种控制状态参数:Matlab的MPC控制算法运算得出控制输出信号,然后写入OPC Server;控制信号经由OPC Server写入WinCC,再传输到PCS7系统,PCS7系统将控制量写入SMPT-1000的控制器,实现对工艺实验装置对象的控制,如:Write(AIC1101_MAN,manual_out)。

通过上述程序就完成了OPC Server和Matlab的连接,SMPT-1000实验装置、PCS7系统、OPC通信、Matlab中的先进控制算法被有机的结合起来,从而实现了SMPT-1000工艺现场与第三方软件的通信和第三方软件对工艺流程的控制。

2.4 Matlab中预测控制算法的实现

2.4.1 预测模型的建立

为实现工艺实验对象的预测控制,需要建立预测模型。首先,通过在Matlab中设计算法,建立实验装置的数学模型。本文采用阶跃响应曲线法建模,即对被控对象施加一个阶跃信号,待工艺输出发生变化时测出被控对象的响应曲线,再根据响应曲线进行建模,得到控制过程的传递函数。根据系统的阶跃响应曲线,运用两点法求系统的近似传递函数模型:

(1) 系统输出合适的阶跃信号△u,采集并处理所有阶跃响应数据;

(2) 数据标准化:把y(t)转换成无量纲模式y*(t),即y*(t)=y(t)/y(),y()即阶跃响应的稳态值;

(3) 计算两个时间点:选定两个时刻t1和t2(t2>t1>τ),延迟时间从阶跃响应延迟确定,从测试结果中读出y*(t1)和y*(t2),一般选取y*(t1)= 0.4、y*(t2)= 0.8,并得到t1和t2。

(1)

式(1)中T1、T2为被控对象的时间常数。按照求解的结果,得出系统工艺对象的近似传递函数为

(2)

再根据阶跃响应曲线的结果建立矩阵,构建动态矩阵模型。根据阶跃响应建立动态矩阵,阶跃响应的采样值按照顺序对矩阵A进行赋值。

2.4.2 预测控制算法设计

在建立了实验装置的数学模型后,在Matlab中设计预测控制的算法。Matlab中预测控制算法主要分为3部分:

(1) 测定对象单位阶跃响应的采样值,根据采样值建立数学模型,对动态矩阵赋值,然后由动态矩阵计算控制向量;

(2) 当前和未来时刻控制作用发生变化时,未来控制输出ΔuM(k)点乘动态矩阵A之后,再与初始输出预测值yP0(k)叠加,得到未来P时刻的模型输出预测值yPM(k):

(3)

(3) 控制向量与模型向量相乘,按照公式(4)计算出其作用后的预测输出yN1(k),未来预测输出y1(k+1|k)与实际输出y(k+1)比较计算误差e(k+1),进行校正后将ycor(k+1)作为下一时刻的预测输出[11]。具体设计实现如图6所示。

(4)

预测控制设计流程如图6所示。

图6 预测控制设计流程图

设置DMC参数是预测控制算法中较为重要的一步,需要设置的参数主要包括采样时间T、截断步长N、预测步长P、控制步长M[12]。采样周期T的选择应该遵循一般采样控制的原则,结合香农采样定理、控制过程的物理特征和动态特性选取;截断步长N的选择通常使采样值a近似等于阶跃响应的稳态值,从而使模型尽可能准确地反映对象的动态特性;预测步长P的大小对控制的稳定性和快速性有着较大的影响,一般选择P使优化时域包含对象阶跃响应的主要动态部分;控制步长M表示所要确定的未来控制量改变的数目,一般来说要求M≤P[13]。

按照上述预测控制算法的设计思路编写MPC程序,Matlab的控制输出通过OPC通信协议传入PCS7中的控制系统,对SMPT-1000实验装置进行控制,从而实现先进控制算法在SMPT-1000实验平台中的应用。

3 实验及结果分析

该实验系统可以完成阶跃响应预测模型的建立、OPC Sever数据通信、预测控制算法仿真、SMPT-1000的预测控制算法设计及结果分析等实验项目,可分别满足本科生和研究生实验需要。

根据上述实验步骤,以烟气含氧量被控对象为例进行实验,其实验结果如下。

(1) 阶跃响应模型建立。对烟气含氧量控制回路进行阶跃响应,其响应曲线如图7所示。利用两点法求出的系统近似工艺模型为

图7 烟气含氧量回路阶跃响应曲线

(2) 预测控制实验效果。根据阶跃响应建立动态矩阵。根据上述操作流程,设定采样周期Ts=0.5 s,截断步长N=50,预测步长P=20,控制步长M=1。预测控制算法控制效果如图8所示的曲线。当设定值为10%时,测量值能够快速地趋近设定值且超调量小,控制效果良好,但仍有微量的余差存在。PID的控制效果如图9所示,其控制参数为:P=3.5、I=50、D=0。图9中曲线为被控变量设定值为30%时的测量值。PID控制可以使被控变量最终稳定在设定值,但是相比较MPC的控制效果,PID控制的调节时间要长于预测控制,而且有较大的超调量(见表1)。因此,在该实验中预测控制具有较好的控制效果。

表1 MPC与PID控制性能指标

图8 预测控制实时曲线

图9 PID控制方案实时曲线

4 结语

依托SMPT-1000实验装置和SIMATIC PCS7系统设计的基于OPC的预测控制实验平台,能够较好地控制锅炉运行过程,相对于传统PID控制,预测控制在面对多入多出、强耦合系统时有更好的控制效果。该预测控制实验平台自2014年起应用于实际教学中,在培养学生搭建OPC通信协议,锻炼Matlab编程能力、创新能力与创新思维等方面取得了较好的效果。本实验系统涉及的MPC控制原理、SIMATIC PCS7系统和SMPT-1000实验设备较为复杂,需要进一步改进设计,以扩大该实验系统的适用范围。

References)

[1] 纪超,王晶,于建梅.基于SMPT-1000实验平台的锅炉控制实验设计[J].实验技术与管理,2011,28(7):47-52.

[2] 张春晓.基于SMPT-1000的锅炉系统控制方案设计及其实现[D].北京:北京化工大学,2013.

[3] 董哲,谢龙,张倩.基于PCS7和SMPT-1000的锅炉控制系统设计[J].仪表技术与传感器,2016(1):107-110.

[4] 王德康,苏宏业,褚健.基于OPC技术的先进控制软件设计与研究[J].化工自动化及仪表,2000,27(4):27-30.

[5] 柴凯,侯立刚,姜军银.OPC技术在工业过程控制中的应用研究[J].工业仪表与自动化装置,2005(3):70-72.

[6] 徐璟.PID参数整定分析[J].广西电业,2010(4):83-85.

[7] 时维国,宋存利.基于脉冲响应的预测控制算法及仿真[J].大连铁道学院学报,2004,25(4):51-54.

[8] 李德伟,席裕庚,秦辉.预测控制等效集结优化策略的研究[J].自动化学报,2007,33(3):302-308.

[9] Richalet J. Industrial applications of model based predictive control[J].Automatica,1993,29(5):1251-1274.

[10] 席裕庚,耿晓军.非线性系统滚动时域控制的性质研究[M].控制理论与应用,1999,16(增刊):118-123.

[11] 史冬琳,门洪,李峰,等.基于PCS7的过程控制实验设计[J].自动化与仪表,2015(7):45-48.

[12] 姜建芳,王军旺,黄辉,等.基于西门子工业网络的过程控制实验系统[J].实验室研究与探索,2008,27(8):250-253.

[13] 亓英莲.基于西门子PLC的网络化控制实验装置设计[D].北京:北方工业大学,2011.

Design and realization on PCS7 model predictive control experimental system based on OPC

Liu Bao, Zhang Chen

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

In order to improve students’ innovative ability in the experimented teaching,a kind of experiment by using on SMPT-1000 device of model predictive control is put forward based on SIMATIC PCS7 system. The model predictive control in the process industry is realized via the OPC communication protocol. This experiment can help students understand the process control and advanced algorithms. It can also cultivate their innovative thinking and innovative ability. This experiment plays a very important role in the development of experimental teaching in colleges and universities.

predictive control; OPC; PCS7 system; SMPT-1000

10.16791/j.cnki.sjg.2017.04.033

2016-11-03

2015年山东省教学改革项目(2015M016);2016年全国工程专业学位研究生教改课题(2016-ZX-277);2015年山东省研究生教育创新计划项目(SDYC15037);2016年中国石油大学(华东)重点教学改革项目(JY-A201608);2014年中国石油大学(华东)研究生重点教学改革项目(YJ-A1407)

刘宝(1971—),男,山东淄博,博士,教授,主要研究方向为油气田智能检测与控制技术.

E-mail:15965425299@163.com

TP273

A

1002-4956(2017)4-0130-06

猜你喜欢
阶跃控制算法组态
基于PLC及组态技术的恒温控制系统开发探讨
探讨单位阶跃信号的教学
基于ARM+FPGA的模块化同步控制算法研究
基于PLC和组态的智能电动拧紧系统
PLC组态控制在水箱控制系统的应用
铸造行业三维组态软件的应用
一种优化的基于ARM Cortex-M3电池组均衡控制算法应用
一种非圆旋转工件支撑装置控制算法
DI材横向厚差自动控制算法及其应用
一种阶跃函数在矩形时间窗口频域特性的分析方法