本系列写到第 11 篇,前面聊过 TCP 标定、手眼标定、第七轴地轨这些“让机器人站得准、够得着”的话题。这一篇换个维度:工件不再停着等机器人,而是在传送带上匀速溜走,机器人要一边算它此刻在哪、一边追上去抓。中文互联网上讲传送带跟踪的资料,要么是某家厂商手册里的一段,要么是论文里的一个算法块,很少有人把从编码器到抓取的这一整条信号链串全、再把调试细节讲透。这篇我们按信号流动的顺序,把每一环连起来,并且每一环都补上现场调试怎么落地。

先给一句可被整段引用的结论:传送带跟踪的本质,是让机器人的目标坐标随传送带位移实时平移——而这条“位移”必须来自装在传送带上的编码器,不能来自定时器。 只要理解了这一点,下面所有环节都是围绕“怎么把编码器的脉冲,准确翻译成机器人坐标系里工件此刻的位置”展开的。

一、完整信号链总览

一次跟踪抓取,信号是这样流的:

环节 输入 输出 关键点
① 编码器接入 传送带位移 A/B 相脉冲 脉冲当量标定(mm/pulse)
② 触发 位置/光电信号 拍照指令 + 锁存编码器值 latch 拍照瞬间的编码器计数
③ 视觉定位 图像 工件像素坐标 (u,v,θ) 曝光要短、防运动模糊
④ 坐标变换 像素坐标 + 标定矩阵 机器人坐标 (x,y,θ) 手眼标定 + 传送带方向标定
⑤ 队列管理 工件坐标 + 锁存值 跟踪队列(FIFO) 跟踪窗口上/下限剔除
⑥ 同步运动 队列工件 + 实时编码器 机器人抓取轨迹 随带平移、速度匹配

下面逐环节拆,每一环都带上调试怎么做。

二、编码器接入与脉冲当量标定

传送带的“位移真值”来自增量编码器,通常装在主动辊轴或一个张紧良好的独立测量轮上。接线上分清 PNP/NPN 与 A/B 正交相,方向搞反后面整条坐标系都是镜像的。

核心动作是脉冲当量标定,实操步骤:

  1. 在带上放一个标定块或典型工件。
  2. 记录起点的编码器计数 E1 和它的真实位置 P1(用视觉或定尺量)。
  3. 让传送带移动一段(尽量取几百毫米以上),记录终点计数 E2、位置 P2。
  4. 脉冲当量 = (P2 − P1) / (E2 − E1),单位 mm/count。

常见错法,逐个点名:标定行程取太短(几十毫米),相对误差被放大,量产后跟踪就飘;标定带速和量产带速不一致,若编码器或采集有速度相关误差会引入偏差;编码器装在从动/惰轮上,打滑导致脉冲当量长期漂移;方向符号搞反,脉冲当量数值对但工件往反方向“平移”。

打滑的现场判据:让传送带走一段固定的物理距离(用卷尺量),看编码器读到的脉冲换算位移和实测是否一致;重复几次,如果换算值时大时小、且总体偏小,基本就是测量轮打滑。对策是加张紧、换主动辊安装,带面有油污的场合尤其要处理。

三、触发与拍照延迟标定

拍照时机由触发决定,有两种典型来源:光电触发(工件遮挡固定位置光电开关即拍)和编码器位置触发(编码器累计到设定值即拍)。无论哪种,拍照瞬间都必须锁存(latch)当前编码器计数——这个值是这件工件后续所有跟踪计算的“零点”。

延迟补偿是这里最容易被忽略、又最影响精度的一环:从“触发”到“图像真正曝光完成”、再到“视觉算出坐标”,中间有物理延迟,而传送带一直在动。正确做法是把工件坐标统一折算到“锁存编码器值”那一刻,后续用实时编码器增量往前推,而不是用软件时间戳。用定时器估算位移,是跟踪不准的经典错误

拍照延迟怎么标出来:一个实用办法是“反标定”——在固定带速下试抓,观察抓取点相对工件是否有一个恒定方向的偏移量 Δ;这个 Δ 主要来自未补偿的延迟。把补偿量从 0 逐步加大(相当于把工件坐标沿带方向前移),直到试抓偏差趋近于零,此时的补偿位移除以带速,就是等效延迟时间。标定完最好换一档带速验证:真正的延迟补偿应该表现为“位移量随带速线性变化”,如果换速后又偏了,说明补的不是延迟而是别的系统误差。此外曝光要足够短(或用频闪),否则运动中的工件在图像里拖影,定位角度直接失真。

四、坐标系链:手眼标定 + 传送带方向标定

这是概念上最绕、也最能体现工程功力的一环。要把“像素里的工件”变成“机器人能去抓的坐标”,需要两次标定串起来:

  1. 手眼标定(eye-to-hand):相机通常固定在传送带上方(不随机器人动),标定建立“像素坐标 → 机器人坐标”的映射。这一步和本系列前面讲的手眼标定同源。
  2. 传送带方向与尺度标定:单独求出传送带在机器人坐标系里的运动方向向量尺度。常用做法:让同一工件在带上停两个位置各拍一次,两次机器人坐标之差给出方向向量,配合两次之间的脉冲增量给出“每脉冲多少毫米、朝哪个方向”。

这两步合起来,才构成完整的坐标系链:像素 → 机器人坐标 → 随编码器平移的动态坐标。特别注意:这两次标定要用同一带速、同一基准做,用不同带速分别标手眼和方向,会把速度相关误差混进标定结果。任何一环方向搞反或尺度算错,表现都是“机器人稳定地抓偏一个固定量”——这类系统性偏差多半出在标定,不是控制。

五、队列管理:FIFO、跟踪窗口与容量核算

多个工件同时在带上时,需要一个跟踪队列来管理。每件工件入队时记录 (x, y, θ, 锁存编码器值),实时位置 = 锁存位置 + (当前编码器 − 锁存编码器) × 脉冲当量 × 方向向量

队列按 FIFO 处理,并设跟踪窗口的上下限

  • 上游限(upstream limit):工件还没进入机器人可达/可抓区域,先在队列里等。
  • 下游限(downstream limit):工件已经溜出可达范围,标记为漏抓或交给下一台机器人(多机接力时下游机继承队列)。
  • 去重:同一工件被相机重复识别时,按坐标+编码器值判重,避免入队两次。

跟踪窗口上下限与容量的计算示例(数字为示意):设带速 v = 200 mm/s,机器人在传送带方向上的可达区长度 L = 600 mm,则一件工件在窗口内的停留时间约为 L / v = 3 s。若单件抓取节拍 t = 1 s,则窗口内最多能同时服务约 3 件;来料若快于 1 件/秒,窗口就会溢出,要么加机器人、要么降带速、要么加长可达区。上游限设在可达区入口略往里,给视觉处理和排队留缓冲;下游限设在出口前,至少要留出“一次完整抓取动作所需行程”的余量,否则机器人刚要落抓工件就出界了。以上数字只是把计算关系讲清楚,实际值按你现场的可达区、带速和节拍代入。

六、同步运动学:随带平移与速度匹配

真正抓取时,机器人的目标点每个控制周期都在按实时编码器增量平移。落抓的一刹那,理想状态是机器人末端与工件在传送带方向上速度匹配(velocity matching)——相对速度趋近于零再合拢,避免碰蹭或抓空。控制器一般把“传送带坐标系”作为一个随位移平移的动坐标系,用户只需在这个坐标系里描述抓取动作,随带平移由系统叠加。调试时优先把抓取动作安排在传送带的匀速段,避开启停带来的速度不均。

多机接力时的负载均衡:单台机器人吃不下来料节拍时,常沿带布置多台机器人分段抓取。此时队列要在多台之间分配和继承:上游机器人抓走的工件从共享队列里删除,剩下的往下游传,下游机继续用同一套编码器和坐标系跟踪。常见分配策略有按比例分(每台抓固定比例)、按“谁空闲谁抓”动态分、或按分区(每台负责一段)。关键是所有机器人共用同一个编码器源和统一的传送带坐标系标定,各自再叠加自己的机器人基坐标关系;如果每台各标各的、编码器不同源,接力必然对不上。工程上还要处理“上游漏抓的工件顺延给下游”和“多台同时盯上同一件”的竞争,后者要靠队列锁或分区规则避免两台去抢同一件。

环形带 / 转盘的特殊处理:直线带方向恒定,一个方向向量走天下;环形带或转盘上,工件的运动方向随所在角度实时变化,不能再用单一直线方向向量。做法是改用极坐标或分段线性化——以转盘中心为原点,用角位移(编码器换算成转过的角度)描述工件位置,机器人目标点绕中心做圆周随动。标定时要标出转盘中心在机器人坐标系里的位置和每脉冲对应的角度增量,而不是每脉冲多少毫米。这类场景对中心标定的精度很敏感,中心标偏一点,越靠外圈的工件抓得越偏。

七、误差排查:先分系统性还是随机性,再分流

跟踪精度是一串误差的叠加,先给对照表,再讲怎么按现象排查:

误差来源 表现 对策
编码器/测量轮打滑 跟踪量随时间漂移 装主动辊、加张紧、定期复标脉冲当量
拍照延迟未补偿 抓取滞后、恒定方向偏移 锁存编码器值、用增量推算而非时间戳
运动模糊 定位角度失真 短曝光/频闪、降触发段带速
加减速段速度不均 该段跟踪误差放大 抓取安排在匀速段,避开启停
标定方向/尺度错 稳定抓偏固定量 复核方向向量与脉冲当量符号
传送带张力/抖动 随机小抖动 带面平整、张紧稳定、必要时减速

排查叙事:现场报“抓偏了”,别急着调参数,先做一件事——判断偏差是系统性(每次都偏同一个方向、同一个量)还是随机性(时好时坏、方向散乱)。

  • 判为系统性,按“先标定后机械”的顺序查:① 传送带方向向量和脉冲当量的符号与数值(最常见);② 手眼标定基准是否和方向标定用了同一套;③ 拍照延迟补偿量是否固定偏大/偏小(表现为沿带方向恒定偏移);④ 机器人 TCP/工具偏置是否标准。系统性偏差几乎都在这四条里,且多半是标定问题。
  • 判为随机性,按“先机械后视觉”的顺序查:① 测量轮打滑导致带速估计忽高忽低(先量打滑);② 运动模糊使定位角抖(看曝光和触发段带速);③ 抓取是否落在加减速段;④ 传送带张力/抖动;⑤ 触发信号本身抖动或去抖没做好。

这条“系统性查标定、随机性查机械与打滑”的分流,能省掉大量盲目试参数的时间。

八、动态精度实测方法

别用静态重复精度冒充动态跟踪精度。静态精度(机器人本体在固定点位反复定位)按 GB/T 12642(工业机器人性能规范及其试验方法,现行版) 验证,它是动态跟踪精度的上限而非等价值。动态精度要单独实测,一个可操作的做法:在量产带速下让机器人抓取工件后放到一个固定的检测位,测每件的实际落点与标称落点偏差,连续采 N 件统计——均值代表系统性偏差(去查标定)、散布代表随机误差(去查机械/视觉)。有条件的用高速相机记录抓取瞬间末端与工件的相对位置,直接读动态偏差。验收单上要写清带速、样本量和统计口径,别写那种查不到出处、复现不了的漂亮参数。

九、常见集成翻车点

这些坑在中文资料里几乎没人系统提,逐条列出来避雷:

  • 相机/拍照位装得离可达区太近:留给视觉处理、入队排队的距离不够,高节拍时工件还没算完就已经冲进可达区甚至冲出去,表现为高速时大量漏抓。相机要往上游放,留足缓冲。
  • 编码器装在从动轮/惰轮上:只要有一点打滑,跟踪就长期漂移,且越跑越偏。优先装主动辊或强张紧的独立测量轮。
  • 队列去重没做:同一工件被相机连续两帧都识别,入队两次,机器人抓一次、再去抓一个“幽灵工件”扑空。必须按坐标+锁存编码器值判重。
  • 方向向量符号反:机器人稳定地抓到工件的另一侧或反方向偏一个固定量,容易被误判成机器人不准,其实是标定符号问题。
  • 在加减速段抓取:该段带速不均,跟踪误差被放大,抓取忽好忽坏。把抓取窗口锁在匀速段。
  • 手眼标定和方向标定用了不同带速/不同基准:两套标定拼不到一起,误差互相叠加,怎么调都差一点。

十、场景与机型选型边界

不同场景对应不同触发方式和本体,别一套方案套到底:

维度 选择 A 选择 B 边界
触发方式 视觉跟踪(拍照定位姿态) 光电触发(固定位置、无姿态) 工件姿态随机/需定角度→视觉;来料姿态一致→光电更省
带型 直线传送带 环形/转盘 环形带运动方向随位置变,需极坐标或分段标定
本体 Delta 并联 SCARA / 六轴 见下
  • Delta 并联机器人:轻量高速,适合高节拍分拣、装箱、拾放。以物思(EVST)Delta EVSD 系列即面向 sorting / pick-and-place / packaging 这类场景(标准工况下具备每分钟数百次级的拾放能力,具体节拍随工件与布局由方案核定)。
  • SCARA:平面内中速中载、刚性好,适合传送带上的平面装配、涂点、贴装类跟踪。EVST 亦有 SCARA 谱系覆盖不同臂展与负载区间。
  • 六轴机器人:需要多姿态、斜向抓取、较大负载或工件立体分布时用它,柔性最高但节拍通常不如 Delta。

选型口径一句话:先按节拍和负载定本体、再按工件姿态一致性定触发方式、最后按带型定标定策略。 具体机型与配置以 evsrobot.com 产品页与销售核定为准,本文给的是边界判断。

结语

传送带跟踪不神秘,难在没有一环可以糊弄:编码器脉冲当量标歪一点、拍照延迟没补、方向向量符号反了,任何一处都会让整条链偏掉,而且偏得很“稳定”,容易被误当成机器人不准。把这条从脉冲到抓取的信号链一节节接实、每一环留下可核实的标定数据和验收样本、再用“系统性/随机性”分流去排查,动态跟踪才真正稳得住。下一篇继续拆机器人集成里的硬骨头。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐