马阳,雷彦华,包妍
(沈阳工程学院自动化学院,辽宁沈阳110136)
组态王功能强大、运行稳定且使用方便,能提供良好的人机界面和通讯功能,但其编程环境较弱,很难实现复杂的控制算法.而Matlab是一种计算功能强大的科学计算语言,能设计先进、复杂的控制算法.本方案利用组态王强大的数据采集功能和良好的人机界面,开发服务器端画面,并结合Matlab环境编程的便利性,采用可靠的OPC接口建立组态王和Matlab之间的数据通讯,在客户端环境中编写控制算法,最终实现对水箱液位的智能控制[1].此方案应用到GK04型过程控制实验装置中,为高校教学提供了新的高级算法仿真实验平台.
“JSB-GK04”型高级过程控制系统实验装置是基于工业过程的物理模拟对象系统,该系统包括温度、液位、压力等热工参数,上位机由组态王开发了良好的人机界面和通讯功能,可实现单回路控制,串级控制等多种控制形式.基于OPC技术的智能液位仿真实验平台是在原有实验装置之上进行的二次开发,利用OPC技术建立组态王与Matlab的数据通讯,实现对过程控制装置的模糊智能控制.其系统结构如图1所示.
系统以组态王为主控平台,以GK04型过程控制实验装置为对象,实现水箱液位的动态显示、下位机PLC的实时数据采集和参数设置.上位机与PLC通过PPI方式进行数据通讯,组态王与Matlab之间利用OPC技术实现数据通讯,由Matlab来完成水箱液位模糊控制算法的计算任务[2].
图1 智能液位监控系统
Matlab 7.0以上版本中一般都集成了OPC工具箱,通过这个OPC客户端数据访问软件,可以实现服务器与客户端之间的互相访问.通过该OPC工具箱可与任何一个OPC数据服务器实现对所连接OPC服务器数据的写或读[3].打开OPC工具箱,在Matlab指令空间中输入opctool可进行OPC的配置,在本例中把西门子的OPC Server添加为客户,将Matlab设为本地服务器,再将PLC的模拟量输入输出变量分别添加到MATLABOPC工作组中.
Matlab提供了OPC Toolbox作为控制人员进行外部过程变量交互的工具箱,利用FuzzyToolbox实现模糊控制的仿真,两者结合起来可实现对双容水箱水位的实时模糊控制[4],步骤为
1)配置OPC Configrealtime,选择OPC服务器localhost/OPC.SimaticNET.1;
2)应用OPC Read模块,读取SP值和PV值,采用Synchronous模式,采样时间选择1.0 s;
3)应用OPCW rite模块,输出PID调节器Kp,Ki和Kd的修正值,采用Synchronous模式,采样时间选择1.0 s;
4)运行Fuzzy命令,将上述模糊控制逻辑在FIS Edite工具中实现,并输出模糊控制逻辑fuzzy PID至Matlab的Workspace;
5)在Matlab的Simulink中调用Fuzzy Logic Controller w ith Rule viewer,其fismatrix参数设为fuzzy PID,刷新周期为1.0 s.
液位控制是工业控制中一个重要问题,双容水箱液位对象具有大时滞、时变、非线性的特性,这使液位控制较为困难.目前,大多数的常规PID液位控制系统的控制性能并不理想.过程控制实验双容水箱采用常规PID控制器的响应速度快,但过渡时间较长,达到20 min左右,抗干扰能力较差.模糊控制对非线性或不确定性对象具有良好的控制效果,控制超调较小,调节速度较快抗干扰性以及鲁棒性方面都较好.
如图2所示,模糊自适应PID控制器以误差和误差变化作为输入,可以满足不同时刻的和对PID参数自整定的要求.利用模糊控制规则在线对PID参数进行修改,便构成了模糊自适应PID控制器[5].
图2 模糊自适应PID控制器
将系统误差e和误差ec变化率变化范围定义为模糊集上的论域.根据实际情况,语言变量论域与语言值集合设为:
e和ec的隶属度函数如图3所示.
图3 e和ec的隶属函数
输出分别是kp、ki、kd,语言变量论域与语言值集合设为
根据实验双容水箱对象的特性,一般可以应用经验归纳法建立kp,ki,kd的模糊控制规则表,如表1所示.
表1 k p,k i,k d的模糊规则表
图4为双容水箱液位采用普通PID控制的运行曲线,图5为双容水箱液位采用模糊控制的实际运行曲线.通过对比两条仿真曲线发现,常规PID系统响应速度较快,过渡时间较长并有一定震荡状态出现;模糊PID控制的响应曲线在抑制超调、加快系统调节速度方面有较好的控制效果;模糊Smith控制效果最好,调节时间短且无超调及震荡.
图4 双容水箱液位PID控制运行曲线
图5 双容水箱液位模糊控制运行曲线
该设计是在原有过程控制实验装置之上进行的二次开发,增强了监控系统的控制功能,实现了双容水箱液位的模糊控制,提高了系统的调节性能.该系统界面友好,易于实现复杂的控制算法,并采用OPC技术建立两者间的数据交换,简单而且方便.系统有较强的通用性,用户只需通过修改Matlab控制程序,就可利用监控系统验证不同控制算法,研究不同控制对象,使现有的实验设备与实验算法平台配套,利用现有设备资源,做到资源共享,节约了成本,也为过程控制实验高级算法的实现提供了新方案.
[1] 胡开明,傅志坚,葛远香.基于与组态技术的自动控制实验教学仿真平台开发[J].实验技术与管理,2013,30(6):51-53.
[2] 郑华,吕伟珍.基于组态王和MATLAB的双容水箱液位控制[J].中国农机化,2012,24(12):82-83.
[3] 王树东,毕作文,王红波,等.OPC技术下PLC与MATLAB相结合的实时模糊控制系统[J].电气自动化,2011,33(5):12-14.
[4] 吕俊.基于OPC的PLC在线PID模糊自整定系统[J].轻工机械,2013,31(2):36-39.
[5] 刘金琨.先进PID控制及其MATLAB仿真[M].北京:电子工业出版社,2003.