GrabBag/App/TireHolePose/Doc/轮胎定位TCP协议文档.md

78 lines
1.5 KiB
Markdown
Raw Normal View History

# 轮胎定位 TCP 协议
## 1. 概述
- 传输协议TCP/IP
- 数据编码UTF-8 文本
- 服务模式:视觉侧作为 TCP 服务端
- 默认端口:`7800`
- 报文结束符:`\r\n`
- 标定模式:**眼在手外Eye-to-Hand**,相机固定,无需机械臂位姿
## 2. 请求报文
格式:
```text
D1\r\n
```
示例:
```text
D1\r\n
D2\r\n
```
字段说明:
| 字段 | 说明 |
|---|---|
| `D` | 轮胎检测命令 |
| `1` | 相机索引1 或 2|
> 眼在手外模式下,相机固定在工作环境中,不需要机械臂当前位姿。
## 3. 返回报文
格式:
```text
PointNum_X1_Y1_Z1_A1_B1_C1_X2_Y2_Z2_A2_B2_C2_...\r\n
```
返回**全部检测结果**,每目标 6 个浮点XYZ + A/B/Cflat 排列。
示例(检测到 2 个轮胎):
```text
2_100.500_200.300_50.100_15.500_-2.300_45.000_150.200_180.100_48.500_10.200_-1.500_42.000\r\n
```
无检测结果:
```text
0\r\n
```
字段说明:
| 字段 | 说明 |
|---|---|
| `PointNum` | 检测到的目标数量 |
| `X/Y/Z` | 目标中心坐标(机械臂基坐标系),单位 mm保留 3 位小数 |
| `A/B/C` | 目标姿态角,单位 deg保留 3 位小数 |
## 4. 姿态输出顺序
返回报文中的 `A/B/C` 由配置项 `poseOutputOrder` 控制:
- `RX-RY-RZ` (0)
- `RX-RZ-RY` (1)
- `RY-RX-RZ` (2)
- `RY-RZ-RX` (3)
- `RZ-RX-RY` (4)
- `RZ-RY-RX` (5)
内部姿态计算使用 `eulerOrder` 控制,`poseOutputOrder` 仅决定报文排列顺序。