Mcgs 与 Modbus RTU通讯
基础知识
HMI串口引脚定义

| 接口 | PIN | 引脚定义 |
| COM1(RS232) | 2 | RS232RXD |
| 3 | RS232TXD | |
| 5 | GND | |
| COM2(RS485) | 7 | RS485+ |
| 8 | RS485- | |
| COM3(RS485) | 4 | RS485+ |
| 9 | RS485- | |
| COM9(RS422) | 4 | TXD+ |
| 9 | TXD- | |
| 5 | GND | |
| 7 | RXD+ | |
| 8 | RXD- |
支持的寄存器及功能码说明如下
| 寄存器 | 读功能码 | 写功能码 | 功能码说明 |
|---|---|---|---|
| [1区]输入继电器 | 0x02 | – | 0x02: 读取输入状态 |
| [0区]输出继电器 | 0x01 | 0x05、0x0F | 0x01: 读取线圈状态0x05: 强制单个线圈0x0F: 强制多个线圈 |
| [3区]输入寄存器 | 0x04 | – | 0x04: 读输入寄存器 |
| [4区]输出寄存器 | 0x03 | 0x06、0x10 | 0x03: 读保持寄存器0x06: 预置单个寄存器0x10: 预置多个寄存器 |
[!ATTENTION] 添加寄存器通道时,起始地址均为1,这是遵从modbusrtu协议,即所谓的“协议地址”,对于部分寄存器起始地址为0的设备,通道添加时,地址应加1处理
PLC协议说明
离散量输出(线圈)和保持寄存器支持读请求和写请求。离散量输入(触点)和输入寄存器仅支持读请求。 参数地址 (Addr) 是起始 Modbus 地址。S7‑200 SMART 支持以下地址范围: 对于离散量输出(线圈),为 00001 至 09999 对于离散量输入(触点),为 10001 至 19999 对于输入寄存器,为 30001 至 39999 对于保持寄存器,为 40001 至 49999 和 400001 至 465535 Modbus 从站设备支持的地址决定了 Addr 的实际取值范围。 参数“计数”(Count) 用于分配要在该请求中读取或写入的数据元素数。 对于位数据类型,“Count”是位数,对于字数据类型,则表示字数。 对于地址 0xxxx,“计数”(Count) 是要读取或写入的位数 对于地址 1xxxx,“计数”(Count) 是要读取的位数 对于地址 3xxxx,“计数”(Count) 是要读取的输入寄存器字数 对于地址 4xxxx 或 4yyyyy,“计数”(Count) 是要读取或写入的保持寄存器字数 MBUS_MSG/MB_MSG2 指令最多读取或写入 120 个字或 1920 个位(240 个字节的数据)。 Count 的实际限值取决于 Modbus 从站设备的限制。 参数 DataPtr 是间接地址指针,指向 CPU 中与读/写请求相关的数据的 V 存储器。 对于读请求,将 DataPtr 设置为用于存储从 Modbus 从站读取的数据的第一个 CPU 存储单元。 对于写请求,将 DataPtr 设置为要发送到 Modbus 从站的数据的第一个 CPU 存储单元。 程序将 DataPtr 值以间接地址指针的形式传递到 MBUS_MSG/MB_MSG2。 例如,如果要写入到 Modbus 从站设备的数据始于 CPU 的地址 VW200,则 DataPtr 的值将为 &VB200(地址 VB200)。指针必须始终是 VB 类型,即使它们指向字数据。 保持寄存器(地址 4xxxx 或 4yyyyy)和输入寄存器(地址 3xxxx)是字值(2 个字节或 16 个位)。 CPU 字的格式与 Modbus 寄存器相同。编号较小的 V 存储器地址是寄存器的最高有效字节。编号较大的 V 存储器地址是寄存器的最低有效字节。下表显示了 CPU 字节和字寻址如何与 Modbus 寄存器格式相对应。
1.通讯参数设置 “通用串口父设备”通讯参数设置,选择串口端口号,波特率,校验方式等。 添加子设备,设置设备的从站地址。 2.添加设备通道
-
设备帮助文档