在前面的文章中,我们已经详细地介绍了Modbus网关的几种主要类型,今天,就让我们来介绍一下其中简单协议转换的处理过程。
简单协议转换是最常规、最普遍的Modbus网关功能,也是数据处理效率最高Modbus网关模式,它只是提取数据中的关键字段,再以另一种协议对提取数据进行编码(Modbus RTUßàModbus TCP)发送。
演示请求与数据分析
为了正确且直观展示Modbus数据帧,使用标准Modbus调试工具测试,Modbus Poll与Modbus Slave并非免费软件,但可免费使用30天,若有长时间使用的需求请购买正版。
设备采用NS1-TB串口服务器,并配置为下图所示参数:
打开Modbus Poll软件,点击Connection连接串口服务器并配置通讯协议,如下图所示:
关闭自动读取,方便分析数据帧,先配置主机请求会导致设备请求超时不用在意,等从机仿真完成就不会出现响应超时。
打开Modbus Slave,点击Connection连接串口服务器并配置通讯协议,主机使用已经使用网络连接,从机需要使用串口连接,如下图所示:
打开数据监视串口,Poll与Slave方法相同如图所示:
点击读取一次寄存器,10个寄存器在调试窗口无法直接显示,减少读取寄存器数量;
配置读取数量:
从下图可以看出串口服务器的“简单协议转换”将收到的TCP数据帧的报文标识“00 0D”缓存,对01 03 00 00 00 02添加Modbus CRC检验,再从串口输出数据帧,从机接收到指令返回Modbus RTU响应数据帧,串服务器收到数据后计算帧长度,再将缓存报文标识与帧长编码进数据帧并通过网口发送。
“简单协议转换”虽然处理效率高但无法处理多主机请求,因此就有“多主机模式和存储型网关”。多主机模式和存储型网关工作模式,我们下次再做详细介绍。