技术频道

基于modbus协议的台达人机界面异构通讯

1 引言
随着信息技术的飞速发展,企业装备系统要求智能设备通信的开放性和控制性增强,利用开放性技术完成各个层次的信息集成和信息共享,摆脱信息孤岛的问题,实现企业的信息化。同时企业在自动化系统改造和信息集成的过程中,都存在着新的信息系统中集成各种现有的智能设备或控制系统的异构系统集成问题。
异构系统集成的基础是系统通讯。很多客户在使用台达人机界面的同时,还有很多其它品牌的仪表类控制器在设备当中同时应用,如果台达人机界面软件当中没有直接和该控制器进行通讯的现成协议那么该如何做到台达人机界面和其之间的通讯以及数据交换呢?如果控制器不支持标准Modbus协议,需要利用台达宏指令来编写通讯程序来实现台达人机界面和异构控制器的通讯,不在讨论范围,本文仅仅讨论台达人机界面作为主从站和其它支持标准Modbus协议的控制器做数据交换的实现过程。

2 台达人机界面通讯准备
2.1 通讯参数设定
所有支持标准Modbus通讯协议的异构控制器均可以与台达DOP系列人机界面直接进行通讯。系统集成架构中的台达人机界面既可以是从站也可以是主站。以设定为RTU从站的模式的系统通讯配置设计为例,通讯协议设定如图1图2所示。控制区的长度打开设定为1是为了验证上位机在数据写入时人机界面从站换画面的效果。
(1)模块参数设置如图1所示。
(2)通讯协议设置如图2所示。
设定为RTU主站的模式的系统通讯配置设计在本文第3章介绍。

图1 RTU从站模块参数设置

图2 RTU从站通讯协议设置

2.2 制作串口通讯线
RS232串口通讯线的制作如图3所示。

图3 制作RS232串口通讯线

3 台达人机界面通讯实现
3.1 人机界面从站通讯
利用做好的RS232串口通讯线将人机界面COM1口和具有串口的工程类笔记本电脑串口连接,利用笔记本串口调试器进行测试。打开串口调试软件,将串口调试软件设定与人机界面相匹配的通讯协议,笔记本作为上位机发送RTU资料到人机界面,使人机界面换画面到图5所示的2画面,操作如图4所示。提示:如果要换到第二个画面,就需要写入数据2到控制区第一个字,控制区第一个字即W40101,如果W40101=2就可以换到画面2,所以需要写入资料2到人机界面控制区第一个字的地址w40101即人机内部地址$100。在串口调试器当中写入资料串(如图4所示)01060064000249D4。其中01代表站号1;06代表单笔写入;0064代表写入地址。0002写入的资料;49D4为CRC校验码。

图4 建立笔记本通讯

数据串在串口调试器写入之后,人机界面会自动接收到发送来的数据。无论当前在第几个画面都会换到画面2。以下类同,换到其它画面只是数据和校验码不同。换到画面3需写入的字符串: 0106006400038814;换到画面四需写入的字符串: 010600640004C9D6。

在从站人机界面数值输入组件w40101当中写入数值,在串口调试器当中能读回人机当前内容值并以RTU数据串显示,如下所列:
人机界面当前内容值为6读回字符串如下:01 03 02 00 06 38 46
其中01代表站号;03代表读取;02代表读取字数;0006读取的数据;3846为CRC校验码;
人机界面当前内容值为9读回字符串如下:01 03 02 00 09 78 42

以上为人机接口做从站的通讯测试情况。

3.2 人机界面主站通讯
人机界面做主站的情况亦然,只是在通讯模块参数当中设定稍有差别,仅作简单介绍如图5、图6所示。

图5 RTU主站模块参数设置

图6 RTU主站通讯协议设置

图7 RTU主站通讯数值输入组件

人机做主站 写入数据从站接收报文数据串如下:
当人机界面数值输入组件(如图7所示)$99输入数据为3时,串口调试器接收回来的数据串为如图所示:01 06 00 63 00 03 39 D5
其中01为站号;06为单笔写入;0063为人机内部地址$99;0003为写入资料;39D5为校验码。

图8 RTU主站通讯串口调试器接收回来的数据
当人机设定为6时接收回来的数据为:01 06 00 63 00 06 F9 D6
当人机设定为99时接收回来的数据为:01 06 00 63 00 63 39 FD

4 结束语
通过基于modbus协议的台达人机界面异构通讯,充分证明了台达DOP系列人机界面与支持标准modbus 协议的异构上位机及下位机进行资料交换是完全可以实现的,而且实现起来简单易操作。

文章版权归西部工控xbgk所有,未经许可不得转载。