基于Modbus的面粉通信系统改造方案

2014-08-03 01:05薛连杰兰学杰李建刚陈俊友周执伟谷万囤
化工自动化及仪表 2014年7期
关键词:主控室组态上位

薛连杰 兰学杰 李建刚 陈俊友 周执伟 王 源 谷万囤

(海洋石油工程股份有限公司,天津 300452)

在粮食加工业中,面粉加工是最早实现高度机械化和连续化生产的工艺之一,自20世纪80年代引进面粉自动生产线以来,面粉加工业从采用继电器发展到运用PLC设计自控系统的大规模改造[1]。一些面粉厂为了扩大规模并减少支出,就在车间增加设备或增加车间来扩大产量,以期利益最大化。随着自动化水平的不断提高,对技术和管理的需求也与日俱增[2],各类PLC间的数据通信和交换问题日益突显,对于多种设备并存的生产工艺,存在信息分散和独立,大量资源无法共享,进而影响企业整体的生产效率。某面粉厂车间自动化控制的模式很多,数据的传输通信和交换问题亟待解决,公司决定组织技术人员对其中一个分厂的通信系统进行改造,在原改造的基础上实现部分PLC之间以及与主控室上位机的通信。

1 改造方案①

1.1 原系统控制网络

某面粉厂某生产车间的原控制系统由3个PLC和一台工控机组成,共有433个输入开关信号、350个输出开关信号、129路模拟信号,系统已经运行10年且性能稳定,其硬件配置见表1。其中上位机监控软件为力控6.1组态软件,可以支持Modbus及Hostlink等多种通信协议,开发环境方便友好,面向对象的设计使组态工作量大为降低,用户可以打造自己的开发环境和操作风格,可以实时监控并控制生产流程。PLC软件编程都采用梯形图方式,简单易懂,容易操作。原系统间的数据没有共享,只是单独的PLC控制单独的一个系统,数据交换和共享非常不便,也增加了工人的工作量和管理难度。改造前控制系统的网络如图1所示。

表1 硬件配置

图1 改造前的控制系统网络

1.2 系统分析

要实现PLC之间以及上位机之间的通信,目前最流行的方法是现场总线技术,但是为了在最大程度上节约资金,不可能大批更换控制器和现场设备,所以技术人员就采用了折中的办法,即运用现场已有的串行数据接口,选取不同产品都支持的协议,通过串行通信方式完成上位机与不同PLC之间的通信[3]。

C200HS PLC的控制信号经过中间隔离放大后,对整个生产进行实时监测和控制;主控室的上位机与PLC之间通过Hostlink协议实现通信,上位机利用Hostlink协议与PLC实现通信,对整个生产过程控制系统(包括工作塔、清理、制粉和后处理)进行管理和监控;分布在配粉车间的S7-200 PLC独立完成配粉车间的控制功能,由于是后期改造增加的车间,所以与主控室的数据没有共享;同样定量包装控制系统也是由S7-200 PLC实现面粉的定量称重、数据采集和检测功能的,它与分布于现场的若干台电子秤构成了数据采集系统,即只是数据的显示和采集,对整个系统不能进行控制。可以看出,配粉控制系统和定量包装控制系统无法与主控室进行信息交互,形成了数据孤岛,不利于生产和管理。考虑到通信速度的问题[1],确定采用主从模式的通信方式。主从模式通信大量应用在工业控制系统中,尤其是PLC及FCS等工业现场设备中,主设备实时读取或写入从设备的内存量,监控并协调仪器设备协调运行[4]。

2 通信改造方案

2.1 通信协议

常用的主从通信应用层协议有Modbus、Memobus、PPI、FX及HostLink等[2],基于稳定性、工程实施的普遍性和PLC的通用性,最终选用Modbus协议[5~8],采用RS485总线实现串行通信。Modbus通信协议定义了一个控制器能识别并使用的消息结构,描述了主控制器访问从站设备的流程,规定从站怎样做出应答响应,以及检查并报告传输错误等。

2.2 传输模式

PLC能设置ASCII和RTU两种传输模式,在相同的波特率下,RTU可比ASCII方式传送更多的数据[9],所以此次改造选用RTU模式。Modbus协议下典型的RTU模式的命令格式见表2,起始位为T1-T2-T3-T4;RTU帧的地址域在开始部分,由一个字节即8个二进制码组成,一般在系统中仅使用1~247,剩下的地址保留,这里要强调的就是每个终端的地址必须保证唯一;功能码域代码代表了被寻址的终端应该执行何种功能,一般用到的是03(读取数据寄存器,即获得一个或多个寄存器的当前二进制值)和16(预置多个寄存器,即把二进制值设定到一系列寄存器中);数据域包含了终端执行特定功能所需的数据,也即查询时采集到的数据,这些数据可以是参考地址、数值和预先设置值;CRC为错误检验域,它允许主机和终端检查传输中的错误,此功能可以保证在数据传输过程中主机不去响应数据发生改变的数据,这就提高了系统的安全性和效率[10]。

表2 RTU模式命令格式

2.3 改造方案的确定

由前述可知,Modbus通信中只能有一个主站,此次改造的最终目的是要把所有车间的数据传送到主控室的上位机中,实现数据和信息的共享。原系统上位机串口和欧姆龙PLC通过Hostlink协议来实现部分过程控制,要实现整个系统由一种通信协议来串行连接,同时一个串口只能支持一种协议通信,技术人员通过公共协议把所有的PLC串行连接起来,实现串行通信。

经过分析和实验,最终设计了如图2所示的通信方案,主控室的上位机作为主站,3个车间的PLC作为从站,由于C200HS PLC已经与上位机实现了通信,出于工作量的考虑,不改变原协议;西门子PLC通过Modbus协议通信来实现对整个车间控制系统的全局监控和优化,使各控制系统的数据得以共享。

3 通信方案的实现

3.1 上位机主站设置

力控组态软件能够很好地支持Modbus协议,只需要设置特定的参数,直接运用力控软件已经开发的模式,就可以实现Modbus通信。现介绍力控中Modbus的设置参数方法。

首先进入力控开发界面,点击左上方的IO设备组态,选择Modbus协议及其通信模式,由于S7-200PLC指令库只支持RTU模式,所以选用Modbus RTU模式,如图3所示。

图2 改造后的通信方案

图3 组态运行协议设置界面一

点击Modbus(RTU串行口)弹出如图4所示的界面,设备名称按照PLC的型号填写,根据PLC或智能模块内部设置的地址填写“设备地址”,由前文所述可知,从站的地址分别为3、4,所以必须建立两个同样的Modbus从站并进行相应的设置,这样才能与设备地址一一对应。点击下一步,就可以进行通信串口的设置了,通信口的设置主要需考虑系统整体通信的速度和稳定性,此处波特率设为9 600kb/s。

通信参数设置完成以后,就能实现上位机和PLC之间的通信了。接下来读取从站PLC的数据,Modbus地址通常是包含数据类型和偏移量的5个或6个字符值,总是以00001、30004之类的形式出现。S7-200 PLC内部的数据存储区与Modbus的0、1、3、4共4类地址的对应关系——Modbus地址为40000+(T/2+1)(其中T为偶数),000001~000128是实际输出,对应于Q0.0~Q15.7;010001~010128是实际输入,对应于I0.0~I15.7;030001~030032是模拟输入寄存器,对应于AIW0~AIW2;040001~04XXXX是保持寄存器,对应于V区。

图4 组态运行协议设置界面二

确定了对应Modbus的地址后,在力控组态里建立变量,如要读取定量称重控制系统中的电磁阀的开关状态,控制电磁阀的开关量地址在PLC里为I0.0,查表发现对应的Modbus地址为010001,所以要建立对应于Modbus地址的组态变量。点击工程项目导航栏里的数据库组态依次可以得到如图5、6所示的界面,此处要注意内存区的选择,力控中的Modbus区域没有00,所以010001的地址应该向后错一个区域,即选择02号命令,偏置设为1,设置如图6所示,这样就完成了组态变量的建立,在监控界面上连接这个I/O点,就可以看到电磁阀的开关状态了。

3.2 S7-200 PLC从站读写程序

S7-200 PLC作为Modbus从站时,是通过在其强大的指令库中预先编好的程序功能块来实现的,在Modbus RTU协议应用于S7-200 PLC时,要注意:Modbus从站指令库只支持CPU上的通信0口,即port0;安装的编程软件必须是Step7-Micro/WIN32 V3.2以上版本的编程软件,还必须安装Step7 MicroWIN32 V3.2 Instruction Library指令库[11]。

图5 组态变量设置界面一

图6 组态变量设置界面二

安装指令库并打开Step7软件后,就会看到如图7所示的界面,S7-200 PLC是作为从站的,所以选择Modbus slaveport0,会出现两个指令块,只需作相应的设置就能实现通信了。要实现通信首先要在第一个循环周期中通过插入MBUS_INIT指令来实现从站的初始化,从站地址(即参数address)必须与主站所要求读入的从站地址吻合[11],主-从站的波特率与奇偶校验位也必须设置一致;当需要为Modbus的主设备发出请求服务时,就要用到MBUS_SLAVE指令,并且要求在每次扫描时执行,以便允许该指令能够同时检查和回答Modbus的请求,两个从站的地址不能互相冲突,否则会报通信错误或者无法通信[12]。编程实例如图8所示。

图7 Step7 Modbus指令库

图8 S7-200 PLC编程实例

4 上位机界面

前面已经实现相关设备的通信,最终目的就是使配粉车间和定量称重控制系统的工作状态和数据完整地显示在上位机界面上。图9为后处理车间(即配粉和定量称重)的生产状态,图中有流量显示、料位高/低、过程控制中闸门的状态等,这样在主控室就能掌握整个车间包括工作塔、清理、制粉、配粉及称重等工艺过程的生产状态,实现了数据共享的目的,解决了信息孤岛问题,实现了车间整体生产过程的实时、完整监控。

图9 后处理车间生产状态

经过改造,通信系统最终的网络结构如图10所示,定量包装控制系统和配料控制系统的数据能够直接与主控室的PLC通过Modbus协议来实现通信,实现了数据的共享。而主控室的PLC通过Hostlink协议和上位机通信,基于组态把数据实时显示在控制界面上。上层为Internet信息网,可与主控室和各科室相连,这样就实现了远程控制与数据共享。

图10 改造后的控制系统网络

5 结束语

某面粉生产线的通信系统经过改造后,实现了车间一体式的管理。原主控室、原配粉车间与定量称重车间一共需要8个人随时监控生产状况,并拿对讲机与主控保持联系并记录流量及包装数据等,系统改造后只需在各车间安排一人,就可以及时了解到操作效果、调整参数并稳定流量等,强化了自动监控和信息反馈手段,从而提高了工作效率并降低了生产成本,获得了一定的经济效益。本系统架构简单可靠,投资成本低,把工业控制最新通信技术与原有的硬件系统相结合,实现了利益最大化和投资最小化。改造后的系统设备层和管理层的网络互相独立、互不影响,是一套切实可行的系统监控解决方案,可以广泛适用于需要进行相关通信改造的各领域。

猜你喜欢
主控室组态上位
核电站主控室内漏率试验案例研究
某核电站主控室空调系统设计改进及应用
基于PLC及组态技术的恒温控制系统开发探讨
核电主控室热舒适性分析
特斯拉 风云之老阿姨上位
基于PLC和组态的智能电动拧紧系统
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
PLC组态控制在水箱控制系统的应用
铸造行业三维组态软件的应用