导读:
1 MBAP报文头(MBAP: Modbus Application Protocol,Modbus应用协议)
分四个域,共7个字节,见表1。
表1
域 长度 描述 客户端 服务器端
传输标志 2字节 标志某个Modbus
询问/应答的传输
由客户端生成 应答时复制该值
协议标志 2字节 0=Modbus协议
1=UNI-TE协议
由客户端生成 应答时复制该值
长度 2字节 后续字节计数 由客户端生成 应答时由服务器
端重新生成
单元标志 1字节 定义连接于目的
节点的其它设备
由客户端生成 应答时复制该值
2 Modbus 功能代码
共有三种类型分别为:
· 公共功能代码 已定义好的功能码,保证其唯一性,由Modbus.org认可。
· 用户自定义功能代码 有两组,分别为65~72和100~110,不需要认可,但不保证代码使用的唯一性,如想变为公共代码,需要RFC认可。
· 保留的功能代码 由某些公司使用在某些传统设备的代码,不可作为公共用途。
常用公共功能代码见表2。
表2 常用公共功能代码
常用公共功能代码 功能码
十进码 子码 十六进制
位
操
作
开关量输入 读输入点 02 02
内部位或开关量输出 读线圈 01 01 <
1 MBAP报文头(MBAP: Modbus Application Protocol,Modbus应用协议)
分四个域,共7个字节,见表1。
表1
域 长度 描述 客户端 服务器端
传输标志 2字节 标志某个Modbus
询问/应答的传输
由客户端生成 应答时复制该值
协议标志 2字节 0=Modbus协议
1=UNI-TE协议
由客户端生成 应答时复制该值
长度 2字节 后续字节计数 由客户端生成 应答时由服务器
端重新生成
单元标志 1字节 定义连接于目的
节点的其它设备
由客户端生成 应答时复制该值
2 Modbus 功能代码
共有三种类型分别为:
· 公共功能代码 已定义好的功能码,保证其唯一性,由Modbus.org认可。
· 用户自定义功能代码 有两组,分别为65~72和100~110,不需要认可,但不保证代码使用的唯一性,如想变为公共代码,需要RFC认可。
· 保留的功能代码 由某些公司使用在某些传统设备的代码,不可作为公共用途。
常用公共功能代码见表2。
表2 常用公共功能代码
常用公共功能代码 功能码
十进码 子码 十六进制
位
操
作
开关量输入 读输入点 02 02
内部位或开关量输出 读线圈 01 01 <