3. 视觉系统在XPlanar中的角色
XPlanar 是一套基于平面电机与悬浮动子的二维输送与定位系统,动子(Mover)在定子面板上方以非接触方式悬浮并做二维平移与旋转。视觉系统在其中的角色,不是“给动子拍张照”,而是把动子的实际位姿(X、Y、θ)实时反馈给控制器,使上层工艺(抓取、放置、贴合、装配)能够在动子持续运动的过程中完成对准。理解这一点,是相机选型、镜头与光源配置、以及动态抓取需求分析的共同出发点。
一、视觉系统在 XPlanar 中的定位
XPlanar 控制器本身通过定子线圈的电磁反馈可以获得动子的位置,但该位置是“电磁意义上的”,并不等于动子上工件的实际位姿。工件在动子上可能存在放置偏差、旋转偏差,动子本身也可能因负载变化产生微小姿态偏移。视觉系统的任务就是测量这些偏差,并把结果以位姿偏移量的形式交给 TwinCAT 中的工艺程序,由程序修正目标位置后再驱动动子。
因此视觉在 XPlanar 中承担三类角色:一是标定与坐标统一,把相机像素坐标映射到 XPlanar 的定子坐标系;二是位姿测量,输出动子或工件的 X、Y、θ;三是触发与同步,在动子到达指定区域时触发拍照,并把结果与动子 ID 绑定。三者缺一不可,任何一环缺失都会导致抓取失败或放置偏差。
二、相机选型:从精度反推分辨率
相机选型不应从“哪个型号便宜”开始,而应从“需要多高的测量精度”开始。XPlanar 动子的典型定位精度在 ±0.1 mm 量级,视觉测量精度通常要求优于该值的三分之一,即约 ±0.03 mm。假设视野 FOV 为 200 mm × 150 mm,则所需像素分辨率约为:
所需像素数 = FOV / 测量精度 = 200 mm / 0.03 mm ≈ 6667 px(长边)
考虑亚像素算法可放宽 2~4 倍,实际可选 2000~3000 px 长边
对应相机:500 万像素(2448 × 2048)或 1200 万像素(4096 × 3000)
除分辨率外,还需关注三项参数。第一是快门类型:动子在运动中拍照,必须使用全局快门(Global Shutter),卷帘快门会产生运动畸变,导致 θ 角测量错误。第二是帧率:若动子以 500 mm/s 运动,视觉节拍要求 20 ms 以内,则相机帧率至少 50 fps,且需支持外部触发。第三是接口与同步:GigE Vision 支持 PTP 与硬件触发,适合与 XPlanar 控制器做时间同步;USB3 Vision 成本低但线缆长度受限,适合相机与工控机同柜安装的场景。
三、镜头与光源配置
镜头选型由工作距离、视野和传感器尺寸共同决定。以 2/3 英寸传感器(8.8 mm × 6.6 mm)、FOV 200 mm × 150 mm 为例,放大倍率 β = 8.8 / 200 = 0.044。若工作距离 WD 设为 400 mm,则焦距 f ≈ WD × β / (1 + β) ≈ 400 × 0.044 / 1.044 ≈ 16.9 mm,可选 16 mm 定焦镜头。若需要更短工作距离,可选用 12 mm 或 8 mm 镜头,但需注意畸变会增大,必须做畸变校正。
光源配置的核心是“让特征与背景形成稳定对比”。XPlanar 动子表面通常为金属或深色工程塑料,直接环形光容易产生镜面反射。推荐方案是:低角度环形光用于凸显动子边缘轮廓,同轴光用于平整表面上的标记识别,背光用于测量动子外形尺寸。若动子表面有反光,可加装偏振片。光源必须与相机曝光同步,采用频闪模式,避免环境光干扰。
四、视觉引导定位与动态抓取需求
视觉引导定位的完整链路是:动子进入拍照区域 → 位置触发相机 → 图像采集 → 位姿解算 → 坐标转换 → 结果发送给 TwinCAT → 动子修正目标位置 → 抓取机构执行。其中“动态抓取”意味着抓取动作不必等动子完全停止,而是在动子运动过程中完成对准与抓取。
动态抓取对视觉提出三项硬性要求。第一是低延迟:从触发到输出位姿的总延迟必须小于动子运动一个抓取周期的时间。若动子速度 300 mm/s,抓取窗口 30 mm,则允许延迟约 100 ms。第二是预测补偿:由于延迟存在,视觉输出的位姿对应的是“拍照时刻”的位姿,控制器需根据动子速度外推至“抓取时刻”的位姿。第三是结果与动子绑定:多动子同时运行时,必须通过动子 ID 或触发序号把视觉结果与对应动子关联,避免错配。
| 需求项 | 典型指标 | 对视觉的影响 |
|---|---|---|
| 测量精度 | ±0.03 mm | 决定相机分辨率与镜头畸变校正要求 |
| 视觉节拍 | ≤ 20 ms | 决定相机帧率、曝光时间与处理算法复杂度 |
| 动子速度 | ≤ 500 mm/s | 决定是否必须全局快门与运动预测补偿 |
| 多动子并发 | ≥ 4 个 | 决定触发同步方式与结果绑定机制 |
五、实操示例:单相机引导单动子抓取
以下给出一个可参考的配置示例,参数为教学假设值,实际需根据现场标定调整。
相机:500 万像素全局快门,2448 × 2048,GigE
镜头:16 mm 定焦,工作距离 400 mm,FOV 约 200 × 150 mm
光源:低角度环形光,频闪模式,与相机曝光同步
标定:九点标定,像素坐标 → XPlanar 定子坐标系
触发:XPlanar 位置比较输出(Position Compare)触发相机
处理:模板匹配 + 亚像素边缘提取,输出 X, Y, θ
通信:TwinCAT ADS 或 GigE Vision 结果回传
补偿:根据动子速度外推 50 ms 延迟
调试时先做静态标定:把标定板放在定子面板上,采集九点图像,计算像素到毫米的映射矩阵。再做动态验证:让动子以 100 mm/s、300 mm/s、500 mm/s 三档速度运行,记录视觉输出位姿与动子实际停止位姿的偏差。若偏差随速度增大而增大,说明延迟补偿不足;若偏差随机波动,说明光源或触发不稳定。最终判断标准是:在最大速度下,视觉引导抓取的成功率 ≥ 99%,且放置偏差 ≤ ±0.1 mm。
总结来看,XPlanar 中的视觉系统是一个“测量—转换—同步—补偿”的闭环。相机选型决定测量上限,镜头与光源决定成像质量,标定决定坐标一致性,触发与同步决定动态可用性。只有四者匹配,视觉引导定位与动态抓取才能真正落地。