介绍modbus协议介绍内容摘要:
PIMBUS300 12 19 通讯链路复位 N N N Y Y N 20 读通用参考值 N N Y N N Y 21 写通用参考值 N N Y N N Y 22 Mask Write 4X Register N N N N N (1) 23 Read/Write 4X Registers N N N N N (1) 24 Read FIFO 队列 N N N N N (1) ( 1)功能代码仅由 984785 控制器支持 01 读线圈状态 描述 读从机离散量输出口的 ON/OFF 状态,不支持广播。 附录 B 列出由不同控制器型号支持最大的参数清单。 查询 查询信息规定了要读的起始线圈和线圈量,线圈的起始地址为零, 116 个线圈的寻址地址分为 015。 例:请求从机设备 17 读 2056 线圈。 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 01 00 13 00 25 — 图 10: 读线圈状态-查询 响应 响应信息中的各线圈的状态与数据区的每一位的值相对应, 1=ON。 0=OFF。 第一个数据字节的 LSB 为查询中的寻址地址,其他的线圈按顺序在该字节中由低位向高位排列,直至8 个为止,下一个字节也是从低位向高位排例。 若返回的线圈数不是 8 的倍数,则在最后的数据字 节中的剩余位至字节的最高位全部填零,字节数区说明全部数据的字节数。 RESPONSE Field Name Slave Address Function Byte Count Data (Coils 2720) Data (Coils 3528) Data (Coils 4336) Data (Coils 5144) Data (Coils 5652) Error Check (LRC or CRC) Example (Hex) 11 01 05 CD 6B B2 0E 1B — 图 11: 读线圈状态-响应 线圈 2720 的状态用 CDH 表示,二进制值为 11001101,该字节的 MCB为线圈 27, LSB 为 20。 线圈从左 (27)向右 (20)状态分别为 ONONOFFOFFONONOFFON,因此第一个字节中的线圈从左到右应是 2720。 下一个字节的线圈应为 35至 28。 位数据串行转输从低位到高位,即 20„ 27, 28„ 35。 最后一个数据字节中, 5652 线圈的状态为 1BH(或二进制 00011011),线圈 56是左数第 4 位,线圈 52是该字节的最低位,所线圈 56 至 52 的状态分别为 ONONOFFONON 注意 3 个剩余位 (至最高位的数 )全部填 0。 PIMBUS300 Modbus Protocol 13 02 读输入位状态 说明 读从机离散量输入信号的 ON/OFF 状态。 不支持广播。 附录 B 列出各种型号控制器所支持的最大参数量。 查询 查询信息规定了要读的输入起始地址,以及输入信号的数量。 输入起始地址为 0, 116 个输入口的地址分别为 015。 例:请求读从机设备 17 的 1019710218 的输入位状态。 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 02 00 C4 00 16 — 图 12: 读输入位状态-查询。 响应 响应信息中的各输入口的状态,分别对应于数据区中的每一位值, 1 = ON。 0 = OFF,第一个数据字节的 LSB 为查询中的寻址地址,其他输入口按顺序在该字节中由低位向高位排列,直至 8 个位为止。 下一个字节中的 8 个输入位也是从低位到高位排列。 若 返回的输入位数不是 8 的倍数,则在最后的数据字节中的剩余位直至字节的最高位全部填零。 字节的最高位,字节数区。 说明了全部数据的字节数。 例:对查询作出响应 (参见上页 )。 RESPONSE Field Name Slave Address Function Byte Count Data (Inputs 1020410197) Data (Inputs 1021210205) Data (Inputs 1021810213) Error Check (LRC or CRC) Example (Hex) 11 02 03 AC DB 35 — 图 13:读输入位状态-响应。 输入位 1020410197 的状态用 35H (或二进制 00110101) 表示。 输入位 10218 为左数第 3位, 10213输入位为 LSB,输入位 1021810213 的状态分别为 ONONOFFONOFFON,注意最位还有 2 个剩余位需填零。 Modbus Protocol PIMBUS300 14 03 读保持寄存器 说明 读从机保持寄存器的二进制数据不支持广播,附录 B 列出了由各种型号控制器所支持的最大的参数量 查询 查询信息规定了要读的寄存器起始地址及寄存器的数量,寄存器 寻址起始地址为 0000,寄存器 116 所对应的地址分别为 015 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 03 00 6B 00 03 — 图 14:读保持寄存器 查询 响应 响应信息中的寄存器数据为二进制数据,每个寄存器分别 对应 2 个字节,第一个字节为高位值数据,第二个字节为低位数据。 对 984X8X 型控制器 (如 984685 等 ),扫描数据的速率为每次 125 个寄存器。 对其它控制器型号的扫描速率为每次 32个寄存器,全部数据完成组合后返回响应信息。 例按查询要求返回响应。 RESPONSE Field Name Slave Address Function Byte Count Data Hi (Register 40108) Data Lo(Register 40108) Data Hi(Register 40109) Data Lo(Register 40109) Data Hi(Register 40110) Data Lo(Register 40110) Error Check (LRC or CRC) Example (Hex) 11 03 06 02 2B 00 00 00 64 — 图 15:读寄存器 响应 寄存器 40108 的数据用 022BH 2 个字节 (或用十进制 555)表示,寄存器 4010940110中的数据为 0000 和 0064H, (十进制时为 0 和 100) 04 读输入寄存器 说明 读从机输入寄存器 (3X 类型 )中的二进制数据,不支持广播 附录 B 列出了由各种型号控制器所支持的最大的参数量 查询 查询信息规定了要读的寄存器的起始地址及寄存器的数量,寻止起始地址为 0,寄存器 116 所对应的地址分别为 015。 例:请求读从机设备 17 中的 30009 寄存器。 PIMBUS300 Modbus Protocol 15 QUERY Field Name Slave Address Function Starting Address Hi Starting Address Lo No. of Points Hi No. of Roints Lo Error Check (LRC or CRC) Example (Hex) 11 04 00 08 00 01 — 图 16:读输入寄存器 查询 响应 响应信息中的寄存器数据为每个寄存器分别对应 2 个字节,第一个字节为高位数据,第二个字节为低位数据。 对 984X8X 型控制器 (如 984685等 ),扫描数据的速率为每次 125 个寄存器,对其它型号的控制器为每次 32 个寄存器。 数据完成组合后,返回响应信息。 例按查询要求返回响应 RESPONSE Field Name Slave Address Function Byte Count Data Hi(Register 30009) Data Lo(Register 30009) Error Check (LRC or CRC) Example (Hex) 11 04 02 00 0A — 图 17:读寄存器 响应 寄存器 30009 中的数据用 000AH 2 个字节 (或用十进制 10)表示 Modbus Protocol PIMBUS300 16 05 强制单个线圈 说明 强制单个线圈 (0X类型 )为 ON 或 OFF 状态。 广播时,该功能可强制所有从机中同一类型的线圈均为 ON 或 OFF状态。 注意: 该功能可越过控制器内存的保护状态和线 圈的禁止状态。 线圈强制状态一直保持有效直至下一个控制逻辑作用于线圈为止。 控制逻辑中无线圈程序时,则线圈处于强制状态。 附录 B 中列出了由各种型号控制器所支持的最大的参数量。 查询 查询信息规定了需要强制线圈的类型,线圈起始地址为 0,线圈 1 的寻址地址为 0 由查询数据区中的一个常量。 规定被请求线圈的 ON/OFF状态, FF00H 值请求线圈处于 ON状态, 0000H值请求线圈处于 OFF 状态,其它值对线圈无效,不起作用。 例:强制从机设备 17 中的 173 线圈为 ON 状态 QUERY Field Name Slave Address Function Coil Address Hi Coil Address Lo Force Data Hi Force Data Lo Error Check (LRC or CRC) Example (Hex) 11 05 00 AC FF 00 — 图 18:强制单个线圈 查询 响应 线圈为强制状态后即返回正常响应 例:按查询要求返回响应 RESPONSE Field Name Slave Address Function Coil Address Hi Coil Address Lo Force Data Hi Force Data Lo Error Check (LRC or CRC) Example (Hex) 11 05 00 AC FF 00 — 图 19:强制单个线圈 PIMBUS300 Modbus Protocol 17 06 预置单个寄存器 说明 把一个值预置到一个 4X 类型保持寄存器中。 广播时,该功能把值预置到所有从机的相同类型的寄存器中。 注意: 该功能可越过控制器的内存保护。 使寄存器中的预置值保持有效。 只能由控制器的下一个逻辑信号来处理该预置值。 若控制逻辑中无寄存器程序时,则寄存器中的值保持不变。 附录 B 中列出了各种型号控制器所支持的最大的参数量 查询 查询信息规定了要预置寄存器的类型,寄存器寻址起始地址为 0,寄存器 1 所对应的地址为 0。 请求的预置值在查询数据区, M84 或 484 控制器使用一个 10 位二进制值,其中高 6 位设定为 0,而其它类型的控制器使用 16 位值。 例:请求把从机设备 17 中的 40002 寄存器预置为 0003H 值。 QUERY Field Name。介绍modbus协议介绍
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。
用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。