1、Modbus通讯协议 串口:8位数据位,1位停止位,无奇偶效验 波特率:1200,2400,4800,9600 RTU模式 当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。 代码系统 · 8位二进制,十六进制数0...9,A...F · 消息中的每个8位域都是一个两个十六进制字符组成 每个字节的位 · 1个起始位 · 8个数据位,最小的有效位先发送 · 1个奇偶校验位,无校验则无 · 1个停止位(有校验时),
2、2个Bit(无校验时) 错误检测域 · CRC(循环冗长检测) RTU帧 使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。在网络波特率下多样的字符时间,这是最容易实现的(如下图的T1-T2-T3-T4所示)。传输的第一个域是设备地址。可以使用的传输字符是十六进制的0...9,A...F。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束。一个新的消息可在此停顿后开始。 整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过1.5个
3、字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。这将导致一个错误,因为在最后的CRC域的值不可能是正确的。一典型的消息帧如下所示: 起始位 设备地址 功能代码 数据 CRC校验 结束符 T1-T2-T3-T4 8Bit 8Bit n个8Bit 16Bit T1-T2-T3-T4 RTU消息帧 以RTU方式读取PV参数数据的例子 例1.读PV值8路 主机请求 地址 功能码 开始高高位地址 开始低低位地址 寄存器
4、的数量的高位 寄存器的数量的底位 CRC校验 01 03 00 00 00 08 440C 从机应答 地址 功能码 字节数 数据高字节 数据低字节 CRC校验 01 03 10 16个字节数据区 XXXX 十六进制数03E8.0001表示的十进制整数为1000*10-1=100.0,CRC校验值要根据传输方式而定。 读出PV值数据为100.0 例2.读PV值16路 主机请求 地址 功能码 开始高高位地址 开始低低位地址 寄存器的数量的高位 寄存器的数量的底位 CRC校验 01 03 00 00 00 10 440
5、6 从机应答 地址 功能码 字节数 数据高字节 数据低字节 CRC校验 01 03 20 32个字节数据区 XXXX 十六进制数03E8.0001表示的十进制整数为1000*10-1=100.0,CRC校验值要根据传输方式而定。 例3.读PV值32路 主机请求 地址 功能码 开始高高位地址 开始低低位地址 寄存器的数量的高位 寄存器的数量的底位 CRC校验 01 03 00 00 00 20 4412 从机应答 地址 功能码 字节数 数据高字节 数据低字节 CRC校验 01 03 40 64个字节数据区
6、XXXX 十六进制数03E8.0001表示的十进制整数为1000*10-1=100.0,CRC校验值要根据传输方式而定。 WSAT/Modbus通讯协议与Modbus通信协议格式兼容,但数据场增加小数点单位。Modbus通信协议是一种主一从式协议.任何时刻只有一个设备能够在线路上进行发送.由主站管理信息交换,且只有它能发起.它会相继对从站进行轮询,否则任何从站都不能发送消息.从站之间不能进行直接通信。 巡检仪通迅地址 参数 读写 高位地址 低位地址 小数点单位 PV1 读 00 00 根据DOT PV2 读 00 01 根据DOT PV3 读 00
7、02 根据DOT PV4 读 00 03 根据DOT PV5 读 00 04 根据DOT PV6 读 00 05 根据DOT PV7 读 00 06 根据DOT PV8 读 00 07 根据DOT PV9 读 00 08 根据DOT PV10 读 00 09 根据DOT PV11 读 00 0A 根据DOT PV12 读 00 0B 根据DOT PV13 读 00 0C 根据DOT PV14 读 00 0D 根据DOT PV15 读 00 0E 根据DOT PV16 读
8、 00 0F 根据DOT PV17 读 00 10 根据DOT PV18 读 00 11 根据DOT PV19 读 00 12 根据DOT PV20 读 00 13 根据DOT PV21 读 00 14 根据DOT PV22 读 00 15 根据DOT PV23 读 00 16 根据DOT PV24 读 00 17 根据DOT PV25 读 00 18 根据DOT PV26 读 00 19 根据DOT PV27 读 00 1A 根据DOT PV28 读 00 1B 根据
9、DOT PV29 读 00 1C 根据DOT PV30 读 00 1D 根据DOT PV31 读 00 1E 根据DOT PV32 读 00 1F 根据DOT 组态王与仪表联机操作 莫迪康modbus(RTU)unpack协议 参数 读写 寄存器(命令+地址) 数据类型 PV1 读 41 SHORT PV2 读 42 SHORT PV3 读 43 SHORT PV4 读 44 SHORT PV5 读 45 SHORT PV6 读 46 SHORT
10、 PV7 读 47 SHORT PV8 读 48 SHORT
11、1. modbus驱动补丁安装 6.52版本或更低版本组态王,必须安装组态王modbus协议补丁,才能正常通讯。 运行将光盘“DriverSetup.exe”安装工具软件,安装新modbus协议驱动,再将“KVModbusRtuEx.ini”文件复制到“kingview\目录下”;将“KVD_ModbusRTU.dl”文件复制到“kingview\DRIVER\目录下”。 更新文件 KVD_ModbusRTU.dll 复制到 “kingview\DRIVER\目录下” KVModbusRtuEx.ini 复制到 “kingview\目录下” 2.仪表与组态王联机流程图 3.组态画面显示小数点与仪表小数点对应起来,需要特殊处理 按仪表实际显示小数点(PV除以10是由于仪表的小数点=1位) 按整型显示






