Skip to content

末端Modbus RTU控制(123-128)

设置末端 Modbus 超时时间

寄存器:123 (0x7B)

//请求
00 01 00 02 00 03 7B 01 01

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 03 U16, 长度
//7B U8, 寄存器
//01 01 U16, 超时时间(单位:ms)

// 响应:
00 01 00 02 00 02 7B 00

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 02 U16, 长度
//7B U8, 寄存器
//00 U8, 状态

机械爪

使能/关闭机械爪

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 0B 7C 09 08 10 01 00 00 01 02 00 01

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0B U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 00 U16, 寄存器起始地址
//00 01 U16, 寄存器数量
//02 U8, 字节数
//00 01 U16, 寄存器(使能机械爪)

//响应
00 01 00 02 00 09 7C 00 09 08 10 01 00 00 01

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 09 U16, 长度
//7C U8, 寄存器
//00 U8, 状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 00 U16, 寄存器起始地址
//00 01 U16, 寄存器数量\

设置机械爪模式

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 0B 7C 09 08 10 01 01 00 01 02 00 00

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0B U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 01 U16, 寄存器起始地址
//00 01 U16, 寄存器数量
//02 U8, 字节数
//00 00 U16, 寄存器(位置模式)\

//响应
00 01 00 02 00 09 7C 00 09 08 10 01 00 00 01

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 09 U16, 长度
//7C U8, 寄存器
//00 U8, 状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 00 U16, 寄存器起始地址
//00 01 U16, 寄存器数量\

设置机械爪速度

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 0B 7C 09 08 10 03 03 00 01 02 05 DC

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0B U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//03 03 U16, 寄存器起始地址
//00 01 U16, 寄存器数量
//02 U8, 字节数
//05 DC U16, 寄存器(设置速度为 1500r/min)\

//响应
00 01 00 02 00 09 7C 00 09 08 10 03 03 00 01

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 09 U16, 长度
//7C U8, 寄存器
//00 U8, 状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//03 03 U16, 寄存器起始地址
//00 01 U16, 寄存器数量\

设置机械爪位置

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 0D 7C 09 08 10 07 00 00 02 04 00 00 01 90

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0D U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//07 00 U16, 寄存器起始地址
//00 02 U16, 寄存器数量
//04 U8, 字节数
//00 00 01 90 U32, 寄存器(机械爪位置:400)\

//响应
00 01 00 02 00 09 7C 00 09 08 10 07 00 00 02

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 09 U16, 长度
//7C U8, 寄存器
//00 U8,状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//07 00 U16, 寄存器起始地址
//00 02 U16, 寄存器数量\

获取机械爪位置

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 08 7C 09 08 03 07 02 00 02

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 08 U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//03 U8, 功能码
//07 02 U16, 寄存器起始地址
//00 02 U16, 寄存器数量\

// 响应:
00 01 00 02 00 0A 7C 00 09 08 03 04 00 00 00 01

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0A U16, 长度
//7C U8, 寄存器
//00 U8,状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//03 U8, 功能码
//04 U8, 字节数
//00 00 00 01 U32, 寄存器值(位置信息:1mm)\

获取机械爪错误

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 08 7C 09 08 03 00 0F 00 01

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 08 U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//03 U8, 功能码
//00 0F U16, 寄存器起始地址
//00 01 U16, 寄存器数量\

// 响应:
00 01 00 02 00 08 7C 00 09 08 03 02 00 00

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 08 U16, 长度
//7C U8, 寄存器
//00 U8,状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//03 U8, 功能码
//02 U8, 字节数
//00 00 U16, 寄存器值(无错误发生)\

清除机械爪错误

寄存器: 124 (0x7C)

//请求
00 01 00 02 00 0B 7C 09 08 10 01 09 00 01 02 00 01

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0B U16, 长度
//7C U8, 寄存器
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 09 U16, 寄存器起始地址
//00 01 U16, 寄存器数量
//02 U8, 字节数
//00 01 U16, 寄存器\

// 响应:
00 01 00 02 00 09 7C 00 09 08 10 01 09 00 01

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 09 U16, 长度
//7C U8, 寄存器
//00 U8,状态
//09 U8, 主机ID
//08 U8, 机械爪ID
//10 U8, 功能码
//01 09 U16, 寄存器起始地址
//00 01 U16, 寄存器数量\

获取末端连续线圈数据

寄存器: 126 (0x7E)

//请求
00 01 00 02 00 05 7E 09 0C 00 06

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 05 U16, 长度
//7E U8, 寄存器
//09 U8, 主机ID
//0C 00 U16, 地址
//06 U8, 寄存器数量(n)\

// 响应:
00 01 00 02 00 0E 7E 00 3D B3 00 00 BC AA 00 00 3F 51 00 00

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 0E U16, 长度(2n+2)
//7E U8, 寄存器
//00 U8, 状态
//3D B3 00 00 BC AA 00 00 3F 51 00 00 U16, 参数(n)\

设置末端RS485波特率

寄存器: 127 (0x7F)

//请求
00 01 00 02 00 08 7F 09 1A 0B 00 00 30 41

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 08 U16, 长度
//7F U8, 寄存器
//09 U8, 主机ID
//1A 0B U16,地址
//00 00 30 41 FP32, 参数1, 默认 11(2000000 bps).
0: 4800 bps;
1: 9600 bps;
2: 19200 bps;
3: 38400 bps;
4: 57600 bps;
5: 115200 bps
6: 230400 bps;
7: 460800 bps;
8: 921600 bps;
9: 1000000 bps;
10: 1500000 bps;
11: 2000000 bps;
12: 2500000 bps;

// 响应:
00 01 00 02 00 01 7F

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 01 U16, 长度
//7F U8, 寄存器

设置末端数字量输出

寄存器:127 (0x7F)

//请求
00 01 00 02 00 08 7F 09 0A 15 00 00 80 43

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 08(09) U16, 长度(无参数2时为8, 有参数2时为9)
//7F U8, 寄存器
//09 U8, 主机ID
//0A 15 U16, 寄存器起始地址
//00 00 80 43 FP32, 参数 1(打开 0)
数据 256.0:关闭 0;257.0:打开 0; 512.0:关闭 1;514:打开 1; Data:
256: 将机械臂数字输出 0 设置为低
257: 将机械臂数字输出 0 设置为高
512: 将机械臂数字输出 1 设置为低
514: 将机械臂数字输出 1 设置为高
//01 U8, 参数 2(可选),0: 立刻执行,1: 延迟执行\

// 响应:
00 01 00 02 00 02 7F 00

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 02 U16, 长度
//7F U8, 寄存器
//00 U8, 状态

获取末端数字量输入

寄存器:128 (0x80)

//请求
00 01 00 02 00 04 80 09 0A 14

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 04 U16, 长度
//80 U8, 寄存器
//09 U8, 主机ID
//0A 14 U16, 寄存器起始地址

// 响应:
00 01 00 02 00 06 80 00 00 00 00 00

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 06 U16, 长度
//80 U8, 寄存器
//00 U8, 状态
//00 00 00 00 U8,
最末端字节,表示输入状态。
第 0 位对应输入 0,第 1 位对应输 入 1。

获取末端模拟量输入

寄存器:128 (0x80)

//请求
00 01 00 02 00 04 80 09 0A 16

请求指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 04 U16, 长度
//80 U8, 寄存器
//09 U8, 主机ID
//0A 16 U16, 地址
地址 0A 16 :模拟输入 0
地址 0A 17 : 模拟输入 1

// 响应:
00 01 00 02 00 06 80 00 00 00 07 0D

响应指令说明
//00 01 U16, 事务标识
//00 02 U16, 协议
//00 06 U16, 长度
//80 U8, 寄存器
//00 U8, 状态
//00 00 07 0D U32, 模拟输入, 范围 0~4095, 对应 0~3.3V