末端相机的核心作用可以总结为:在作业之前,解决在哪和去哪的全局感知问题;并在任务完成之后,回答效果怎么样。
作用1:引导机械臂趋近目标区域
- 原因:底盘激光雷达完成了全局粗定位,将机械臂送到了前方,但要精确地把清洁模组送到内壁或座圈上方,仅靠先验模型或底盘的“盲走”是不可靠的,此时,相机约30-80cm,处于有效视距内。
- 方案:
- 视觉伺服或目标点锁定:通过识别固定特征(如座圈轮廓、冲水按钮轮廓、排水口边缘),实时解算清洁模组与目标区域的相对位姿。
- 引导大俯仰和SCARA:将位姿偏差作为反馈,驱动机械臂快速、安全地将清洁模组送到触觉自定位的起点附近(比如内壁上空10cm处)。
- 原理:避免了先验模型不准,硬碰硬探测的风险,尤其在强调先验信息不可靠的情况下,视觉是最高效的初始引导手段。
作用2:为导纳控制提供曲面前馈信息
- 原因:当清洁模组距离釉面仅剩几厘米,即将进入低速柔性逼近阶段时,仅靠接触后力反馈是被动的,如果曲面有剧变(比如从平缓内壁突然到排污口边缘),导纳可能来不及响应。
- 方案:
- 预判曲面法向:在接触前,对目标区域(约10x10cm)投射结构光或做双目立体匹配,生成局部点云,估算局部曲面法向量。
- 预对准姿态:将计算出的法向发送给J5(大俯仰),让它提前调整工具姿态,确保接触瞬间,工具面与釉面大致平行,能极大减少首次接触时的侧向力冲击和贴合调整时间。
- 原理:这是一种视觉-力觉融合策略。视觉提供预报,力觉提供精报,相机离模组20cm,这个偏移让它能够越过模组,提前看到即将清洁的曲面。
作用3:视觉重定位与区域分割
- 原因:有座圈、内壁、排污口等多个面,它们在空间上不连续,清洁完内壁后,要转去清洁座圈,仅靠底盘里程计会产生误差。
- 方案:
- 每次转场后,重新识别座圈或边缘等显著特征,进行局部重定位,修正累积误差。
- 自动识别盖是开还是关、座圈是放下的还是掀起的,这个状态判断直接决定机器人该执行哪一套清洁程序(是该清洁座圈还是内壁?),至关重要。
作用4:自动化洁净度评估(带水环境下的特殊挑战)
- 原因:这是实现全自动清洁闭环的关键,无法依赖人去检查有没有洗干净。
- 方案:
- 在清洁完一个区域后,机械臂回退5-10cm,用相机拍摄釉面。
- 通过图像分析(比对清洁前后的纹理、颜色特征,或用机器学习模型识别污渍)来判断区域是否干净。
- 注意水膜干扰:刚清洁完的釉面有水膜,会反光,算法需要对此有鲁棒性,或者可以稍等数秒让水膜流下再拍照。
作用5:作业空间障碍物检测
- 原因:清洁空间狭小,除了釉面,还有盖铰链、刷架等意外障碍。
- 方案:在清洁路径规划时,处理点云识别非釉面的障碍物,在运动规划中将其设为碰撞禁区,保护机械臂和工具。
双目相机是“眼”,力传感器是“皮肤”。
- 皮肤(力觉):负责最终接触时的绝对安全与恒力保持,是不可或缺的核心。
- 眼睛(视觉):负责为力觉指引方向、提供预判、检查结果,让机器人从一只灵敏的盲手,升级为一个眼明手快的智能体。
在机械臂清洁场景中,相机的有效距离完美匹配接近前观察和清洁后检查两个关键步骤,如果没有它,仍然可以靠触觉完成清洁,但整个过程会变得非常缓慢和笨拙。有了它,能实现快速、平滑、自适应的智能清洁。