2.4 KiB
2.4 KiB
轮胎孔定位 ModbusTCP 协议
1. 概述
- 协议: Modbus TCP(保持寄存器)
- 端口:
502 - 模式: 眼在手外(相机固定,无需机械臂位姿)
2. 寄存器定义
| 地址 | 长度 | 访问 | 说明 |
|---|---|---|---|
0 |
1 | 写 | 触发检测,写入 1 |
1 |
1 | 读 | 工作状态 |
14 |
2 | 读 | 目标点 X(float32,单位 mm) |
16 |
2 | 读 | 目标点 Y(float32,单位 mm) |
18 |
2 | 读 | 目标点 Z(float32,单位 mm) |
20 |
2 | 读 | 目标点姿态分量 1(float32,单位 deg) |
22 |
2 | 读 | 目标点姿态分量 2(float32,单位 deg) |
24 |
2 | 读 | 目标点姿态分量 3(float32,单位 deg) |
26 |
2 | 读 | 孔半径 R(float32,单位 mm) |
- 每个
float32占 2 个保持寄存器(大端序,高 16 位在前) - 结果寄存器共 14 个(7 个 float32):地址 14~27
- 多个检测结果时仅输出第一个
- 位置 / 孔半径保留 3 位小数,姿态保留 3 位小数
3. 欧拉角顺序配置
3.1 输入顺序(eulerOrder)
机械臂法兰姿态分解为旋转矩阵时使用的欧拉角顺序(外旋约定),在网络配置页面设置:
| 值 | 顺序 |
|---|---|
10 |
RX-RY-RZ (外旋XYZ) |
11 |
RZ-RY-RX (外旋ZYX,默认) |
12 |
RZ-RX-RY (外旋ZXY) |
13 |
RY-RX-RZ (外旋YXZ) |
14 |
RY-RZ-RX (外旋YZX) |
15 |
RX-RZ-RY (外旋XZY) |
3.2 输出顺序(outputEulerOrder)
旋转矩阵合成为欧拉角时使用的顺序(外旋约定),选项同上,默认值 10(RX-RY-RZ 外旋XYZ)。
3.3 姿态输出顺序(poseOutputOrder)
寄存器 20~25 中三个姿态分量的含义由 poseOutputOrder 控制:
| poseOutputOrder | 顺序 |
|---|---|
0 |
RX, RY, RZ(默认) |
1 |
RX, RZ, RY |
2 |
RY, RX, RZ |
3 |
RY, RZ, RX |
4 |
RZ, RX, RY |
5 |
RZ, RY, RX |
以上三项均在"检测设置 → 网络配置"页面中配置。
4. 工作状态
| 状态值 | 含义 |
|---|---|
0 |
空闲 |
1 |
检测中 |
2 |
检测完成 |
3 |
异常 |
5. 触发流程
- 读寄存器
1,确认状态为0(空闲) - 写寄存器
0 = 1(触发检测) - 轮询寄存器
1 - 状态为
2时,读寄存器14~27获取目标点及孔半径 - 状态为
3时,本次检测失败