功能脚名称 | 类型 | 数据类型 | 说明 | 允许值,说明 |
InstructionActive | INPUT | BOOL | 真为激活指令,假为不激活指令 |
|
NewRequest | INPUT | BOOL | 读写请求位 | 每一个新的读写请求必须使用脉冲触发 |
Slave | INPUT | INT | 从站地址 | 1到247 |
ReadWrite | INPUT | INT | 0=读,1=写 | 1. 开关量输出和保持寄存器支持读和写功能
2. 开关量输入和模拟量输入只支持读功能 |
Addr | INPUT | DINT | 读写从站的数据地址 | 选择读写的数据类型
00001 至 0xxxx - 开关量输出
10001 至 1xxxx - 开关量输入
30001 至 3xxxx - 模拟量输入
40001 至 4xxxx - 保持寄存器
400001 至 465535 - 保持寄存器 |
Count | INPUT | INT | 数据个数 | 通讯的数据个数(位或字的个数)
Modbus主站可读/写的最大数据量为120个字(是指每一个 MBUS_MASTER_MSG 指令) |
MbusBufferDB | INPUT | BLOCK_DB | 缓冲区数据块 | 如:DB3000 |
MbusPointerDB | INPUT | BLOCK_DB | 用户数据块 | 如:DB2000 |
MbusPointerBYTE | INPUT | INT | 用户数据块字节地址 | 1. 如果是读指令,读回的数据放到数据区这个字节开始的区域中
2. 如果是写指令,要写出的数据从这个字节开始的数据区取出 |
Done | OUTPUT | BOOL | 完成位 | 此位为脉冲信号,需要保持信号,用户自行加起保停程序,完成位为启动,读写请求位为停止即可。 |
Error | OUTPUT | INT | 通信错误 | 0无错误
3接收超时
4输入参数错误
5 Modbus通信未激活
6忙,正在处理其它请求
7接收的数据CRC校验错误
8接收的数据长度与预长长度不符
9响应错误,响应不是请求的操作
10发送出错
11接收出错
14本指令未启用
101从站不支持请求的功能
102从站不支持数据地址
103从站不支持此种数据类型
104从站设备故障
105从站接收的信息,但响应被延迟
106从站忙,拒绝了该消息
107从站拒绝了消息
108从站存储器奇偶错误
|
MbusSendStatus | OUTPUT | WORD |
| 见发送指令规范 |
MbusRevStatus | OUTPUT | WORD |
| 发接收指令规范 |
MbusBufferDB