# arm_application 现场业务包。操作员用 `~/ros2/scripts/*.sh`,不要直接改这里的默认 yaml。 ## 节点(console_scripts) | 可执行文件 | 源文件 | 作用 | |------------|--------|------| | `realsense_color_pub` | `realsense_color_pub.py` | D405 发布 + 预览 | | `perception_node` | `perception_node.py` | YOLO + 平面中心 → 点 | | `servo_node` | `servo_node.py` | 100 Hz hover / 锁高 | | `handeye_teach` | `handeye_teach.py` | 拖拽记点 | | `handeye_calibrate` | `handeye_calibrate.py` | 走点 + 解 T | | `handeye_waypoints` | `handeye_waypoints.py` | 旧巡航记点(可选) | | `dh_pgea` / `dh_pgea_cli` | `dh_pgea_node.py` / `dh_pgea.py` | 左臂 PGEA | | `dual_gripper` / `dual_gripper_cli` | `dual_gripper_node.py` / `dual_gripper_cli.py` | PGEA+RGI | | `hole_detect` | `hole_detect_node.py` | 入孔检测 | | `tactile` / `tactile_cli` | `tactile_node.py` / `tactile_cli.py` | Orisys 视触觉 | | `goto_ee_plane` | `goto_ee_plane.py` | 可选:抬高再回 home(默认启动不再调用) | | `demo_named_poses` | `demo_named_poses.py` | mock/实机点位示例 | | `run_joint_trajectory` | `run_joint_trajectory.py` | 轨迹回放 | 库模块见包内 `__init__.py`。接口总表:[docs/INTERFACES.md](../../docs/INTERFACES.md)。 ## 配置 | 文件 | 角色 | |------|------| | `config/perception.yaml` `servo.yaml` | 默认值,被 `site.yaml` 覆盖 | | `config/hole_detect.yaml` | `two_stage` 缺省;被 `site.yaml hole_detect` 覆盖 | | `config/hole_insert.yaml` | `yolo`/`hough` 缺省 | | `config/orisys/dd03.json` | Orisys 厂家配置,路径写在 `site.yaml tactile.config_file` | | `config/handeye_result_89.yaml` / `_91.yaml` | 该臂手眼 T(标定写入;禁止混用) | | `config/handeye_poses_89.yaml` / `_91.yaml` | 该臂示教关节 | | `launch/visual_servo.launch.py` | 感知 + 伺服 + 手眼 TF | | `launch/dh_pgea.launch.py` | 左臂 PGEA | | `launch/dual_gripper.launch.py` | 双爪 | | `launch/hole_detect.launch.py` | 入孔检测 | | `launch/tactile.launch.py` | 视触觉 |