面向 Task 1(超大号螺母抓取与放置)的端到端方案:视觉识别 → 手眼标定 → 6D 定位 → 安全运动规划 → 灵巧手抓取 → 精准放置。螺母与标记位随机,系统全自动完成感知—抓—放闭环, 并已 实机完整跑通。
RGB-D 相机感知 → YOLO 检测分割 → 像素+深度反投影到相机系 6D → 手眼外参变换到机器人肩心系
→ arm_mover 逆解与安全校验 → 抓取状态机驱动机械臂 + 灵巧手。各模块经 ROS 2 话题/服务解耦。
坐标系约定:机器人 肩心系(两肩连线中点为原点,X 前 / Y 左 / Z 上), 感知、规划、可视化全程统一到该系。
一条编排节点(grasp_task)以状态机串起全流程,每步都有安全校验闸;任一步校验失败即安全中止。
定义:基于 YOLOv8-seg 的实例分割模型,识别桌面上的螺母与黑框标记位。
功能:输出每个目标的掩膜与边界框;螺母取实体环中位深度避开中空孔、以桌面法向定接近方向,黑框由 ROI + 四角点定中心。验证集 mAP50 0.995。
定义:求相机相对机器人基座的固定外参 T_base_camera。
功能:ChArUco 板 + 实时反馈采集 + 自动剔离群帧 + 多算法交叉验证,残差 σ≈6.7 mm。把相机系 6D 位姿精确变换到机器人肩心系,是"看到哪→抓到哪"的桥梁。
定义:把检测结果(像素 + 深度)反投影到相机系,再经手眼外参变换到肩心系。
功能:输出目标在机器人统一坐标系下的位置与朝向,并做工作空间盒预检(越界提前判出),供运动模块直接使用。
定义:机械臂运动的安全封装层(逆解 + 校验 + 下发)。
功能:多 seed 逆解提高命中、避开别扭解支;逐关节限位 + 工作空间盒硬拦截,越界整段拒绝;非阻塞下发 + 轮询实测到位;笛卡尔直线/关节插值按需选择;多重急停。
定义:Linkerhand O6 六自由度灵巧手的控制封装。
功能:实机标定的命名手势(张开 / 预抓 / 抓取 / 释放),保守夹持力防伤指;常驻服务接口,上层只需发"抓 / 放"命令即可,与抓取编排解耦。
定义:把感知、运动、灵巧手串成"感知→抓→放"一条龙的状态机。
功能:每步带安全闸(到位校验 / 失败安全中止);从上方鲁棒抓取(忽略不可靠深度、高位悬停 + 竖直下落);放置高度自动回退适应不同框位。支持干跑校验与一键实走。
定义:双臂 + 灵巧手模型、相机点云、感知结果的实时三维显示。
功能:实时摆姿跟随真实关节;螺母 / 黑框以三维形状标记叠加(不可达高亮);带检测框与坐标的图像话题,便于现场监看与调试。
定义:现场一键启动 / 关闭整套系统的会话脚本与操作手册。
功能:一条命令分阶段拉起机械臂、相机、可视化、感知;配套手册含就绪标志、故障速查与安全须知,降低现场操作门槛。
| 层次 | 选型 |
|---|---|
| 本体 | 双臂机器人(每臂 7 个主动关节)+ 末端 Linkerhand O6 灵巧手,固定基座 |
| 传感 | Orbbec Gemini2 RGB-D 相机(eye-to-hand 固定安装) |
| 系统 | Ubuntu 24.04 / ROS 2 Jazzy |
| 感知 | YOLOv8-seg(实例分割)+ OpenCV 几何后处理 |
| 标定 | ChArUco + OpenCV calibrateHandEye(多算法交叉验证) |
| 运动 | 厂商逆解/正解服务 + 自研 arm_mover 安全封装(限位 / 盒 / 多 seed / 急停) |
| 编排 | 状态机 + 全程安全闸;一键干跑校验 / 实走 |