3. 机器人视觉系统需求分析
在 IGX 平台上集成机器人视觉系统之前,最关键的一步不是选相机、也不是写推理代码,而是把“视觉要干什么”翻译成一组可量化、可验证的工程需求。需求分析做得好,后续的相机选型、算力分配、接口设计和安全策略才有依据;需求分析做得含糊,往往会在联调阶段才发现帧率不够、精度不达标或环境光一变化就失效。本节围绕四个维度展开:视觉任务分类、实时性要求、精度指标与环境约束,并给出可直接用于项目评审的需求条目写法。
一、先分类:机器人视觉到底在解决哪几类问题
工业与协作机器人的视觉任务,按“输出什么、给谁用”可以分成五类,它们的算法链路和实时性压力差异很大。
- 定位与位姿估计(2D/3D Pose):输出目标在机器人坐标系下的位置与姿态,用于抓取、装配、拧螺丝。典型输入是单目/双目/RGB-D 图像或点云,输出是 (x, y, z, rx, ry, rz)。这是对精度最敏感的一类。
- 识别与分类:判断“这是什么”,如工件型号、缺陷类别、料箱编号。输出是类别标签与置信度,对绝对精度要求低,对准确率和召回率要求高。
- 检测与分割:给出目标边界框或像素级掩膜,用于计数、分拣、涂胶轨迹提取。输出是框或掩膜,精度以 IoU/mAP 衡量。
- 测量与检测(Metrology):测量尺寸、间隙、平面度、孔位偏差,输出是毫米级数值,通常需要标定后的像素当量换算。
- 引导与安全监控:为移动底盘或机械臂提供避障、人员接近检测、速度限制触发信号。输出是距离、区域占用状态或安全等级信号,强调确定性和低延迟。
分类的意义在于:同一台 IGX 上可能同时跑多类任务,但它们的优先级、算力预算和失败后果完全不同。例如定位失败会导致抓空,安全监控漏检则可能造成人身伤害,后者必须走独立、可验证的链路。
二、实时性:不是“越快越好”,而是“够用且可预测”
实时性需求要拆成三个可测量的量:端到端延迟、帧率和抖动。端到端延迟指从光子进入传感器到机器人收到位姿结果的时间;帧率决定单位时间内可处理的工件数;抖动决定控制环是否稳定。
以协作机器人抓取为例,假设传送带速度 200 mm/s,允许的抓取位置误差为 ±2 mm,则视觉系统的总延迟必须满足:延迟 ≤ 2 mm ÷ 200 mm/s = 10 ms。这 10 ms 要覆盖曝光、传输、预处理、推理、后处理和通信。若相机曝光 2 ms、传输 1 ms、推理 4 ms、后处理 1 ms、EtherCAT 通信 1 ms,合计 9 ms,才勉强满足。若把推理换成更大的模型导致 8 ms,则整体超标,必须降分辨率、换轻量模型或提高传送带定位补偿能力。
帧率方面,若节拍要求每小时 1200 件,则单件周期 3 s,视觉只需在 3 s 内完成一次采集与输出,30 fps 已绰绰有余;但若是动态抓取,则可能需要 60~120 fps 才能保证在两次采样间目标位移小于允许误差。抖动通常要求小于平均延迟的 20%,否则控制端需要额外缓冲,反而增加总延迟。
三、精度指标:把“看得准”变成可验收的数字
精度需求必须区分重复精度与绝对精度。重复精度指同一目标多次测量的离散程度,通常用标准差或极差表示;绝对精度指测量值与真值的偏差,依赖标定质量。机器人抓取通常更依赖重复精度,而测量任务更依赖绝对精度。
精度指标还要落到具体坐标系和具体位置。例如“在 500 mm 工作距离、视场中心 200 mm × 200 mm 区域内,XY 重复精度 ≤ 0.1 mm,Z 重复精度 ≤ 0.3 mm;视场边缘精度允许放宽 1.5 倍”。这样的写法才能指导相机分辨率选择:若视场 200 mm、要求 0.1 mm 精度,至少需要 200/0.1 = 2000 像素覆盖,考虑亚像素和边缘畸变,实际应选 500 万像素以上相机,并保证目标在视场中占比不低于 1/3。
对于 3D 任务,还要给出点云分辨率、深度噪声和平面度指标。例如“在 300~600 mm 工作距离内,深度噪声 σ ≤ 0.5 mm,平面拟合残差 ≤ 0.2 mm”。这些数字直接决定结构光或 ToF 方案的选择。
四、环境约束:视觉系统真正的“隐形需求”
环境约束常被忽略,却往往是现场失效的主因。需要逐项确认:
- 光照:环境光强度范围、是否有频闪、是否有阳光直射。工业现场常见 200~2000 lux 波动,需评估主动光源与滤光片。
- 温度与振动:相机与 IGX 的工作温度范围、机械臂运动带来的振动是否影响标定稳定性。
- 空间与安装:工作距离、安装角度、线缆走线、防护等级(IP54/IP67)。
- 电磁兼容:伺服驱动器、变频器带来的干扰,影响 GigE/USB 传输稳定性。
- 安全:视觉是否参与安全功能,若参与则需满足相应安全等级与冗余要求。
下面这张图把上述四类需求组织成一条从“任务”到“可验收指标”的映射链,便于在评审时逐项对照。
五、把需求写成可验收的条目
需求分析的最终交付物,是一份能被测试工程师直接执行的条目清单。每条至少包含:任务类型、工作条件、指标名称、数值、测量方法与判定规则。例如:
需求编号:VIS-03-01
任务类型:3D 位姿估计(抓取引导)
工作条件:工作距离 500 mm,环境光 200~2000 lux,目标为 80 mm × 60 mm 金属工件
指标:XY 重复精度 ≤ 0.1 mm,Z 重复精度 ≤ 0.3 mm,端到端延迟 ≤ 10 ms
测量方法:固定工件,连续采集 100 次,计算标准差;用示波器或时间戳记录延迟
判定规则:三项指标全部满足为通过;任一项超标需记录并触发方案调整
在 IGX 上落地时,还要把需求映射到具体资源:延迟预算分配到相机、传输、GPU 推理、后处理和通信各段;精度预算分配到标定、镜头畸变、算法和机械安装各环节;环境约束则转化为光源选型、防护设计和安全链路隔离方案。只有完成这层映射,后续的相机选型、模型选型和接口设计才不是拍脑袋决定。
总结来说,机器人视觉需求分析的核心动作是:先按输出用途把任务分类,再为每类任务定义延迟、帧率和抖动指标,然后把精度拆成重复精度与绝对精度并绑定坐标系和视场位置,最后逐项确认光照、温度、振动、电磁和安全约束。完成这四步,才能得到一份既能指导设计、又能用于验收的需求基线。