HMI与数据采集模块的Modbus_RTU通讯
Modbus是由Modicon(现为施耐德电气公司的一个品牌)在1979年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。其系统结构既包括硬件、亦包括软件。它可应用于各种数据采集和过程监控。
ModBus网络只有一个主机,所有通信都由他发出。网络可支持247个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。采用这个系统,各PC可以和中心主机交换信息而不影响各PC执行本身的控制任务。
以上摘自百度百科……
Modbus具有协议标准化,开放化;兼容多种电气接口;帧格式简单、紧凑,通俗易懂,用户使用容易,厂商开发简单诸多优点,被广泛应用作为工业现场总线。在一些现场环境恶劣,无条件安放工控主机的情况下,客户还需要读取并记录现场数据,那么只能通过HMI设备的脚本,做数据转换和换算了。现以一台HMI设备为Slave与一台温度模块为Master通讯为例,,做Modbus_RTU通讯以及脚本运算。
一. 项目背景
在一些现场条件不允许安放工控机的情况下,客户又需要读取和记录历史数据,只能通过HMI自身内部换算了,比如简单的SCALE换算。考虑到除了SCALE换算,还会涉及到一些数据类型转换、数模转换等。如果HMI的数值原件直接读取地址,那该多方便。那么就需要将各种转换、换算技成,最终传送给HMI寄存器,这就需要用到脚本语言了。
二. 设备选型
1. 威纶通MT8102Ie触摸屏一块
2. 威纶通编程软件EasybuilderPro
3. 研华铂电阻模块ADAM-4015
4. RS-48通讯线一条
5. USB转RS-485通讯线一条
三. 电气连接
为HMI和ADAM-4015模块供电DC24v。用USB转RS-485通讯线和RS-485通讯线连接ADAM-4015模块设置模块为Modbus模式。站地址为11;再用RS-485线将HMI于ADAM-4015模块及连接。
四. HMI程序组态
打开EasybuilderPro软件
添加一台Modbus设备
设置通讯端口和通讯参数
打开软件10号窗口添加数值元件,现以Q=c*m*(t1-t2)这个公式为例,添加五个数值元件,其中c和m启用输入功能,其它为只读数值元件。
接下来就要做脚本指令转换,如下图,不做过多解释
然后将新建的数值元件与其地址相关联,下载到触摸屏运行,c和m输入对应值,改变t1和t2温度,屏幕很快做出反应,显示出Q值。
五. 总结
应用脚本语言(宏指令)整合各种计算与换算过程,最终界面元件只需关联地址即可。最主要的是在数据读取速到要求不是很高的情况下,这样省去了工控机、数据采集软件,满足了现场施工条件,也为客户节省了部分投资成本。
威纶通触摸屏不仅支持Modbus_RTU模式,同样也可以用Modbus_TCP方式实现这一过程(我没被充值,不是打广告)。
至此触摸屏与模块智捷通讯实验成功,不足之处请指教,谢谢!
作者简介
崔晗:工控爱好者,自学实战型工控男。河北承德人。机电一体化专业,现主要从事商用制冷检测工作。
对CAD、EPLAN电气原理图设计,西门子的PLC、HMI、变频器、WinCC、SCADA系统,以及市场主流的一些国产工控产品,如组态王,威纶通等都有着丰富的应用经验。对于现场总线,传感器,流量计,现场智能仪表的应用也有相应的应用经验。
热爱工控!!! 爱好就是最好的动力!