Files
ros_contorl/docs/SITE_CONFIG.md
T
arm_dev 6edb8d39ab chore: 框架科学优化前的完整基线
在开始'设备契约层 + 目录重构 + 通止规装配'改造之前,先钉住当前可运行状态,
使后续任何删除/重构都可回退。

本基线包含:
- 现有 ROS 2 工作区全部源码(arm_application / arm_control / arm_bringup 等)
- 官方 flexiv_ros2 栈(含 flexiv_hardware / flexiv_controllers 等符号链接)
- 设备契约层 src/arm_interfaces(新增,46 项单测通过)
- devices/ 设备选型与品牌清单(新增)
- scripts/gen_site_example.py 与由它生成的 config/site.example.yaml

按 .gitignore 排除:build/ / install/ / log/ / config/site.yaml / 模型权重二进制。
2026-09-23 10:53:06 +08:00

75 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# site.yaml
路径:`~/ros2/config/site.yaml`(从 `config/site.example.yaml` 复制,**不进 git**)。
目录总表:[WORKSPACE.md](WORKSPACE.md)。查看解析:`bash ~/ros2/scripts/show_site_config.sh`
改完后重启对应进程才会进节点(夹爪 CLI 每次重读)。
## 三台相机
| 相机 | 序列号 | 位置 | 脚本 |
|------|--------|------|------|
| 左腕 D405 | `352122274408` | 89 平行夹爪 | `run_camera_d405.sh --arm 89` |
| 右腕 D405 | `260522274442` | 91 旋转夹爪(新,易过曝) | `run_camera_d405.sh --arm 91` |
| 中间 D435 | `262522073161` | 双臂之间手外 | `run_camera_d435.sh --preview` |
列出:`bash ~/ros2/scripts/list_realsense.sh`
右腕过曝:`robots[]` 里 `ae_limit_us: 1500` 且关投射器。仍亮则把该臂 `auto_exposure: false` 并设 `exposure_us: 800`。
## 双臂(89 / 91)
89 和 91 **各有一份** 手眼、腕部相机序列号、夹爪串口、named poses。
`robot.robots[]` 里写该臂覆盖项;`run_*.sh --arm 89|91` 会合并进去。
| 臂 | SN | IP | 手眼 | 夹爪 |
|----|----|----|------|------|
| 左 89 | Rizon4-063989 | 192.168.2.101 | `handeye_result_89.yaml` | PGEA `/dev/ttyUSB0` |
| 右 91 | Rizon4-063991 | 192.168.2.100 | `handeye_result_91.yaml` | RGI `/dev/ttyUSB1` |
```bash
bash ~/ros2/scripts/run_real.sh --arm 89
bash ~/ros2/scripts/run_camera_d405.sh --arm 89 --preview
bash ~/ros2/scripts/run_visual_servo_rt.sh --arm 89 --control
bash ~/ros2/scripts/run_handeye.sh --arm 91 teach # 91 必须单独标定
```
每个终端都要带同一 `--arm`,或改 `robot.sn`。不要把 89 的 `T_4x4` 拷到 91。
棋盘尺寸仍是全局 `handeye.board_*`(两臂共用同一块板)。
## 谁读哪些段
| 段 | 读者 |
|----|------|
| `robot` `network` | `run_real.sh`、RDK 工具切换 |
| `camera` | `run_camera_d405.sh`;`overlay_hold_sec` 运行中会跟文件 |
| `paths` `yolo` `servo` | `visual_servo.launch.py` |
| `handeye` `paths.handeye_*` | `run_handeye.sh` |
| `gripper` | `run_gripper.sh` / `dh_pgea` / `dual_gripper` |
| `hole_detect` | `run_hole_detect.sh`(算法参数也在这一段) |
| `tactile` | `run_tactile.sh` |
| `go_home` | `go_home.sh` |
## 常改项
| 键 | 含义 |
|----|------|
| `robot.sn` / `--arm` | 当前臂。可被 `run_real.sh --arm 91` 覆盖 |
| `robot.robots[].camera.serial` | 该臂腕部 D405。91 必须单独填写 |
| `robot.robots[].paths.handeye_file` | 该臂手眼结果,禁止混用 |
| `paths.yolo_weights` | `.onnx` 或 `.pt`;`backend: tensorrt` 时必须有同名 `.engine` |
| `yolo.imgsz` | 必须等于模型输入边长 |
| `yolo.backend` | `tensorrt` / `onnx` / `auto` |
| `camera.serial` `width` `height` `fps` | D405 流。改分辨率要重启相机 |
| `servo.ee_z_m` | 法兰锁高 [m];**写在 `robots[].servo`,89/91 分开** |
| `servo.xy_track` | `hover`(法兰/爪心正对工件)或 `lookat` |
| `camera.name` | `d405_left` / `d405_right`,话题与预览按臂分开 |
| `servo.v_max_xy` `kp_xy` `a_max` | 跟踪快慢 |
| `gripper.force_pct` `open_position` `close_position` | 左臂 PGEA 力与开度 |
| `robots[].gripper.port` `model` | 该臂串口与型号(91 为 RGI) |
| `hole_detect.backend` `hough_*` `conf` | 入孔检测 |
| `tactile.left_video` `right_video` `config` | Orisys 左右指设备与 dd03 |
路径写成**绝对路径**。换机器改 `USER` 和 SN,不要改 Python。