摘要:本文将从及其自动化的角度,利用Socket接口和Sysmac Studio程序,配置从站的硬件结构,从而解决自动化控制器和工控机之间的通信不良问题。将C++语言应用在工控机之中,并且在遗传算法的基础上优化各部位的控制参数,使得控制器能够对水箱的水温以及电机的转速进行有效的PID控制。
关键词:机器自动化控制;PID控制;Socket通信;遗传算法
引言:
可编程逻辑控制器(Programmable Logic Controller,下文简称PLC)是一种新型的控制系统,其主要的优势可靠性较强,因此在工业生产领域使用比较普遍。机器自动化控制器是OMRON公司的最新控制系统,从硬件和软件两个方面都做出了新的架构设计,使得工业控制在其中获得了新的发展良机。本文将工控系统与自动化控制器相结合,研究如何对水箱水温和电机转速进行有效的控制。
一、自动化控制器的配置
本文研究的PLC的控制模块主要是NJ30-PA3001、S8JC-Z15024C,Devicenet网络主站的扩展模块是CJ1W-1D211,输入端口是CJ1W-ID211,输出端口是CJ1W-OD211和Profibus-DP。EtherCAT网络主站的扩展模块是NX-ECC201,输入元件NX-OD3153,T型分支接头DCM1-1C,输入端口是DRTS1T.彩色显示器为输入输出口;温控器的型号是e5ez-r3mt、温控器的通信模块是e53-az03、温度探头的型号是e52-p6dy 2m从而实现对温度的控制;变频器的型号是3g3mx2-ab002-z-ch、变频器是E-CAT,网络单元3g3ax-mx2-ect、高速计数模块cj1w-ct201和旋转编码器e6b2-cwz6c成转速控制[1]。该设备的配置从硬件上来看是一个工业现场,主要由NJ30-PA3001进行控制,然后EtherCAT的扩展模块可以对从站的运行进行全面的控制。
机器自动化控制器的工作原理就是通过温控器实现对水温的灵活控制,然后利用变频器控制电机,使得机器与网络单元之间实现通信。编码器在电机旋转的过程中,可以直接发出和转速相当的脉冲信号。高速计数模块的主要工作任务就是计算编码器产生的脉冲信号,然后通过网络单元传输给控制器,将编码器和计数模块结合在一起,然后确定出一个固定的清零时间,从而得出实际的转速。再将转速信号返回到控制器之中,形成闭环控制。
二、工控机与控制器之间的Socket通信
Sysmac Studio是一种比较成熟的编程软件,并且适用范围仅限于机器自动化控制,这种软件可以提供一个相对稳定的开发环境,可以在此对控制器和从站进行设置、编程和调试。本文将C++或者Matlab应用在工控机之中,从而实现对从站的控制:C++语言编程的主要功能就是与控制器之间达到通信,使得工控机和控制器之间实现Socket的通信,然后与客户端之间连接在一起[2]。Visual Studio可以帮助工控机端实现与服务器之间的监听请求连接。控制器在这个过程中承担着客户端的作用,主要的任务就是给IP端口发送连接请求,待连接成功之后开始无限传输数据。工控机和控制器之间的通信生效之后,就可以在SysmacStudio上进行编写梯形图程序。
Sysmac Studio编程有两种语言形式,分别是ST和梯形图,这两种语言可以在一个程序里面共存,二者性能的不同可以达到取长补短的效果,得出的程序也更加简单,易于操作。ST的功能覆盖面很广,主要有基本算术、逻辑运算、判断、数组和循环等等,仅仅用一条简单的语言就可以达到梯形图中任意一个模块具备的全部功能,也就是说梯形图里面的功能块可以被ST语言所替换。
三、系统建模及仿真
(一)水温控制模型
水温控制系统是控制器中的重要组成部分,由于水的热储存能力较强且惯性较大,并且在水箱的流动过程中会有一定的阻力,所以在控制水温的时候可以将其看作是一项具有纯滞后的一阶惯性环节,其函数表达如下所示:
(1)
在该式中,K,t,T都是常数,可以根据具体的情况做出调整。
水箱的额定电压一般都是24V,控制器发出温度调整信号之后,水箱加热时的电压会首先被调整,继而水箱内部的温度也会达到预定值[3]。
(二)电机控制模型
电机也是一个惯性环节,其函数表达如下:
(2)
其中,K,Tm都是常数,可以根据具体情况进行调整。
电机也是属于24V的直流电动机,当控制器发出控制信号的时候,供电电压会最先做出调整,继而影响到电机的转速。
(三)PID控制的数学模型
PID控制器的输入是系统的实际给定值,因此输出就是控制量。在理想情况下,PID的微分方程如下所示:
(3)
其中u(t)是控制器的实际输出量,e(t)是偏差,Kp是控制器的方法系数,Ti是积分常数,Td是微分时间常数。
PID算法的主要调整对象是Kp,Ti和Td这三种参数,将其调整到正常值之后可以使得系统运行更加稳定。
(四)仿真结果
经过实践得出,当Kp=0.16,Ti=1且Td=0.006的时候,水箱水温的控制效果达到最佳,并且超调量越小,T越小,控制效果越好。
(五)系统控制问题
PID控制在运行的过程中相当于是一种PD控制,灵活度较高,产生的控制量也较大,系统会随之出现跳变的现象。加速如果过快的话会使得电机的损耗加大,而且电压不断升高的结果就是假如起出现故障,为了解决系统这一缺陷,可以在控制器前端增设一个滤波器,使得系统不会再次出现跳变的结果[4]。条件允许的话,还可以在后端加入滤波器,可以起到对输出量进行滤波的效果。
四、PID参数遗传算法的实现
将采样时间设置为1ms,输入一阶跃信号,并且利用二进制编码来表达决策变量,结果显示,PID遗传算法的输出基本不含超调量。将时间设置为0.07s时,超调量约为20%。这种PID控制比常规的控制速度更快,且超调量几乎为零,稳定性和动态性都趋于完善,解决了PID控制器中参数调整困难的问题,并且实现了对PID参数的优化。
五、结束语
通过上文的研究发现,工控机利用Socket通信协议,将C++语言应用在Sysmac Studio中进行编程,并且在控制器中进行编程,使得工控机能够对控制器进行有效的控制,从而能够达到控制水箱水温的目的,并且还可以控制电机的转速,然后利用遗传算法将PID的参数进行了进一步优化,控制器对水温和转速的控制也会随之达到最优的水平。本文在研究过程中由于各种原因限制有所不足,文中必有一些纰漏和错误,还望各位读者在阅读过程中能够及时指正,共同促进本项研究的发展。
参考文献:
[1]张彦迪.基于机器自动化控制器的水箱水温和电机转速的PID控制[J].自动化与信息工程,2017(5):33-36.
[2]翟侠,王宏华.模糊自适应PID控制器在开关磁组电动机调速系统中的应用[J].机械制造与自动化,2006,35(1):80-82.
[3]徐俊艳,张培仁,程剑锋.基于Back stepping时变反馈和PID控制的移动机器人实时轨迹跟踪控制[J].电机与控制学报,2004,8(1):35-38.
[4]许红,李著信,李媛媛,等.基于模糊自适应PID控制器的差压式管道检测机器人速度控制系统设计[J].化工自动化及仪表,2014(9):1019-1022.
作者简介:
金志豪(1997-),男,河南省南阳市人,民族:汉 职称:无,学历:在读大学生。研究方向:自动化.
论文作者:金志豪,赵月腾,张奇奇,仝瑞宁
论文发表刊物:《电力设备》2018年第9期
论文发表时间:2018/7/2
标签:控制器论文; 水温论文; 转速论文; 水箱论文; 电机论文; 模块论文; 工控机论文; 《电力设备》2018年第9期论文;