做产线自动化改造这些年,输送带同步是我被问得最多的需求之一。一听“YRC1000 输送带同步”,很多工程师第一反应是“让机器人跟着带子跑”,但真到现场调试就会发现,问题远不是“跑”这么简单:带速波动、编码器打滑、坐标系乱掉、机器人抖动,随便一个都能让项目卡住。这篇文章把我自己在 YASKAWA 机器人 + YRC1000 控制器的输送带同步项目里踩过的坑、总结出的方法、以及能直接抄的配置步骤整理出来,给准备做不停线抓取、在线搬运、随线装配的同行一个参考。
这套内容适合正在做产线改造的机械工程师、机器人调试工程师,也适合做方案报价的朋友——看完你至少能判断:项目该不该上跟踪、硬件怎么接、参数怎么标、报警怎么排查。我尽量用大白话讲清楚原理,再给实操步骤,不搞教科书那套。
1. 输送带同步到底在同步什么:YRC1000跟踪方案的核心逻辑
1.1 为什么不能靠机器人“追着带子跑”
很多人第一次接触输送带同步,第一反应是:让机器人以输送带同样的速度,在带子上方边走边抓,这总行吧?听起来合理,实际一跑就露馅。输送带速度从来不是恒定值,电机转速有波动、负载变化有波动、辊子打滑也会造成瞬时速度变化。就算带速标称 120mm/s,现场实测可能上下浮动 5%。这意味着什么?机器人按“目标速度”去追,目标物实际位置每秒漂移 6mm 以上,追得越快漂得越离谱,最后机器人到达抓取点时,工件早就跑偏了。
还有更隐蔽的问题:机器人从“静止等待”加速到“跟随带速”,中间必然有加减速过程。加速到带速需要时间,这期间目标物又走了一段距离。用速度匹配的思路永远慢半拍。所以业内做输送带同步,从来不是靠“追速度”,而是靠“对位置”——直接告诉机器人:你现在应该把抓取坐标放在输送带的哪个物理位置上。
1.2 YRC1000解决思路:把坐标本身搬到输送带上
YRC1000 的跟踪功能,核心逻辑就是建立一个随输送带移动的动态坐标系。它不是让机器人被动地计算“我该以多大速度走”,而是在每个控制周期里,通过编码器实时读取输送带走过的位移,将这个位移叠加到机器人当前的目标坐标系上。用大白话说:机器人写的程序仍然是“去某坐标抓取”,但这个“某坐标”的零点会跟着输送带移动而移动,机器人只要对着这个移动的坐标系做动作,就能保证TCP始终对准工件。
这里要强调一个容易误解的点:编码器读到的不是速度,是位移增量。速度是位移对时间的微分,控制器真正需要的是“带了走了多少毫米”。这个量直接加到坐标偏移上,才形成闭环。如果控制器只采速度而不用位移累计,机器人没办法知道工件现在到底在哪——这正是很多半吊子方案失败的原因。YRC1000 跟踪方案里,编码器信号是核心位置基准,视觉、光电、接近开关都只是辅助确认信号,主位置永远靠编码器。
2. 一次成功的输送带跟踪,硬件和信号链路怎么搭
2.1 编码器装在哪个辊上:驱动辊还是从动辊
这是最容易被低估的一个选择,也是我最想先说的。编码器如果装在驱动辊上,接线方便、位置好找,但驱动辊与输送带之间存在打滑风险。电机带动辊子转了 200mm 对应的圈数,输送带实际只走了 190mm,编码器却按 200mm 上报,机器人就按照错误的位置去抓,工件越来越偏。
我自己的经验是:优先装在从动辊上。从动辊是被输送带带着转的,只要辊子和带面压紧,它转过的圈数就如实反映带面走过的长度。代价是必须在从动辊旁边加压紧机构,防止带面与辊子之间打滑。如果现场条件允许,还可以考虑在皮带内侧装一个专门的测长轮,靠弹簧压紧在带上,这种测长轮精度最高,但磨损后需要定期更换。同步带传动结构的线体则更适合在带轮的齿面侧安装编码器,齿啮合关系是固定的,基本不滑。
选好安装位置只是第一步,安装时的同心度也重要。编码器轴与辊子轴如果不同心,每转一圈读数就会有周期性偏差,机械上调不回来的话,后面参数标得再准也是白搭。
2.2 YRC1000信号接入:并行编码器与总线两种方式
YRC1000 支持两种主流的编码器信号接入方式。第一种是并行 A/B 相编码器直接接入控制柜的跟踪信号板卡,这种方式响应快、实时性最好,适合高速输送线。第二种是编码器信号进 PLC,再通过 EtherNet/IP、PROFINET 这类总线把脉冲计数发给机器人,适合已经有成熟 PLC 系统的产线,但总线的刷新周期会引入一点点延迟,极高速场景要评估节拍余量。
接线这块我踩过一个印象深刻的坑:编码器线缆和变频器主回路走了同一个线槽,刚开始测试一切正常,生产一开起来,编码器偶尔跳几百个脉冲,导致抓取点忽偏忽正。最后排查下来是变频器干扰,把编码器线单独走屏蔽线槽、外壳单端接地后,脉冲信号才稳定下来。
2.3 要不要加视觉
纯编码器跟踪有一个天生弱点:它只知道输送带走了多远,不知道工件在带上有没有滑动、有没有放歪。对于工件由定位治具固定、皮带不打滑的情况,纯编码器完全够用。但如果是工件直接放在皮带上、偶尔被碰歪,或者来料位置本身就有偏差,就需要加视觉。
我的方案判断标准很简单:工件与输送带之间相对位置稳定,就用纯跟踪,便宜可靠;工件在带上姿态不确定,就用“编码器跟踪 + 视觉测偏”。让编码器负责纵向位置,视觉只负责检查横向偏移和角度偏差,后台算出一个补偿量叠加到抓取点。这样视觉的检测节拍压力会小很多,而且视觉结果稍微慢一点也不会影响跟踪连续性。
3. YRC1000关键参数与跟踪程序写法
3.1 第一步:确认功能选项与跟踪坐标定义
在动程序之前,先到 YRC1000 的系统信息页面确认跟踪功能选项已经启用。有些设备出厂时默认没打开,后面配了半天参数才发现功能根本没激活,这个事我身边不止一个同事遇到过。
接下来是定义跟踪坐标。跟踪坐标的本质是把原来的用户坐标系“绑定”到输送带运动方向上。我一般建议在机器人工作范围的中间区域、机械原点附近定义这个坐标系,并且确保 X 轴(或根据现场习惯,也可以是任意轴)正方向与输送带运动方向一致。为什么要定义这个坐标?因为机器人只知道“我站在哪”,不知道“带往哪个方向走”。如果不把输送带运动方向告诉控制器,编码器读到的位移就算出来了,也不知道该往哪个轴上叠。
这里注意一个小细节:跟踪坐标定义错了方向,最直接的现象是机器人越抓越偏,而且是朝固定方向越偏越大。如果调试时发现抓取点在几圈之内连续偏移,第一个怀疑对象就是坐标方向定义反了。
3.2 第二步:编码器比例系数标定
编码器比例系数是整套系统里最核心的参数,它表示“编码器每计一个脉冲,输送带实际走了多少毫米”。这个值不能靠铭牌算出来就完事,必须现场实测标定。
我的标定流程是这样的:
- 在输送带上做一个清晰标记点,把机器人 TCP 手动移到标记点正上方,记录当前编码器累计值 P1。
- 手动点动输送带,让标记点走一段距离,最好超过 500mm,走得越长,标定结果越准。
- 再次移动机器人 TCP 对准标记点,记录编码器累计值 P2。
- 用卷尺或激光测距仪量出两次 TCP 之间的实际距离 L。
比例系数 K = L / (P2 - P1),单位是 mm/脉冲。
这个动作重复至少三次,如果三次算出来的 K 值偏差超过 2%,说明编码器安装有打滑或者测量手段粗糙,先处理机械问题再标定。如果三次一致性很好,取平均值写进参数。
3.3 第三步:程序怎么写
安川机器人用的是 INFORM 语言,跟踪相关的指令和系统变量不同版本有差异,我这里只讲逻辑骨架,具体指令名请以你手上的手册为准,但框架可以直接抄。
跟踪程序的基本结构是这样的:
' 机器人先到安全等待点 ' 打开跟踪使能,此时跟踪坐标开始随编码器累积值移动 ' 等待工件的编码器位置进入跟踪窗口 ' 一旦进入窗口,执行抓取动作(相对跟踪坐标系的点位) ' 抓取完成后,把机器人退出跟踪区域 ' 关闭跟踪使能 ' 搬运到放料点有几个写程序时容易翻车的点:
- 跟踪使能打开期间,不要切换用户坐标系。跟踪坐标会自动叠加位移,你再切坐标系,等于在动态坐标上叠一套静态坐标,位置直接乱。
- 关闭跟踪前,一定要让机器人先回到安全位置。如果还在跟踪窗口内就关掉跟踪,机器人会瞬间丢掉当前的动态偏移,下一句移动指令会带着错误的绝对坐标跑,轻则抓偏,重则撞机。
- 跟踪窗口范围一定要限死。窗口就是“允许机器人执行抓取动作的编码器区间”。窗口设大了,工件还没到位机器人就伸手,容易抓空;窗口设小了,机器人来不及完成动作,频繁报警。窗口大小取决于机器人从等待点到抓取点的运动时间乘以当前带速,再留 20% 余量。
3.4 参数速查表
我把现场最常用的几个关键参数整理成了一张速查表,方便调试时对照。
| 参数项 | 含义 | 设置要点 |
|---|---|---|
| 编码器分辨率 | 每圈脉冲数(含倍频) | 根据编码器型号设置,A/B相四倍频后要乘4 |
| 比例系数 K | 每脉冲对应输送带移动量(mm) | 现场三次标定取平均,不要直接用理论值 |
| 跟踪方向 | 编码器计数方向与带向关系 | 反向时抓取点会随圈数逐渐偏出窗口 |
| 跟踪坐标系 | 输送带运动方向的参考系 | 在机械原点附近定义,X轴对齐带向 |
| 跟踪窗口 | 允许动作执行的编码器区间 | 按完成动作所需位移 + 带速算出,留 20% 余量 |
| 跟踪使能信号 | 开启/关闭跟踪的外部信号 | 与安全逻辑互锁,工作区异常立即断开 |
4. 实操实录:一套电池PACK线不停线抓取改造
4.1 原始工况与瓶颈分析
去年我们接手一套电池模组 PACK 线的改造,现场工况很有代表性:输送带把半成品电芯模组送到机器人抓取工位,原方案是输送带到位后先停止,机器人抓起来放到治具上,完成后再启动输送带。这个流程用了两台变频器频繁启停,整线节拍被卡在 15 秒一件,客户希望提到 8 秒以内。
我们评估后认定:瓶颈不在机器人动作时间,而在输送带启停等待。只要把“到位停止”改成“不停线跟踪抓取”,节拍就能直接砍掉一大截。输送带标称速度 120mm/s,属于中低速场景,YRC1000 的跟踪功能完全带得动。
改造目标定得很明确:带速 120mm/s 波动 ±5% 的条件下,机器人稳定跟踪抓取,抓取点位置偏差控制在 ±1mm 以内,连续运行 1000 次不允许有一次漏抓或偏抓。
4.2 现场安装与接线
编码器选择了增量式旋转编码器,分辨率 1000P/R,四倍频后等效 4000 脉冲/圈。安装位置定在输送带从动辊轴端,同时在从动辊上加装了一套弹簧压紧机构,保证带面与辊子始终贴合。编码器线缆单独走屏蔽线槽,与控制柜内变频器动力线拉开距离,避免重演之前那种干扰跳脉冲的问题。
信号接入走的是并行编码器通道,A/B 相直接进 YRC1000 控制柜的跟踪板卡。控制柜侧我们额外加了一个信号断线检测:编码器线意外断开时,脉冲计数会突变,系统立刻报错,机器人急停。这个功能处理起来很简单,但关键时刻能防一次撞机事故。
4.3 标定与验证过程
标定过程严格按照前面说的三次法。第一次标定 K 值算出来是 0.0126mm/脉冲,第二次 0.0124,第三次 0.0125,偏差在 2% 以内,说明从动辊压紧效果不错,没有打滑。最终比例系数取 0.0125mm/脉冲写入系统。
参数写好后先做静态验证:机器人不动,手动启动输送带,盯着 HMI 上的编码器累积值,确认持续稳定增长、无跳变。然后是低速空跑,让输送带以 1/3 速度运行,机器人不开跟踪动作,只让 TCP 保持在输送带上方观察动态坐标是否正确跟随。确认无误后,才开全速、开跟踪、做真正的抓取测试。
全速连续抓取跑完 1000 次,结果:位置偏差大多数在 ±0.6mm 以内,最大一次偏差 0.9mm,满足 ±1mm 要求,全程没有漏抓。改造后节拍从 15 秒压到 8.2 秒,客户很满意。
4.4 三个容易被忽略的程序细节
这套项目做完,我复盘时发现最影响稳定性的其实是三个小细节,全部和程序逻辑有关。
第一个是超时保护。跟踪窗口等待如果超过设定时间,说明来料异常或者编码器丢了信号,程序必须能自动退出跟踪并报警,而不是傻等。我们在等待指令外层加了一个计时器,超时就跳到安全复位流程。
第二个是安全距离逻辑。机器人在跟踪模式下完成抓取后,必须先抬升到安全高度,再退出跟踪。这个抬升动作是在跟踪坐标系里执行的,保证工件相对机器人不动,退出跟踪后再切回正常坐标系搬运。顺序一旦反了,机器人容易带着错误偏移去放料。
第三个是跟踪起点判定。我们用电眼确认工件进入跟踪区域,但这个信号只做“进入判定”,不做位置基准。位置基准永远由编码器计算。一开始现场有人提议“光电一触发就抓”,被我们否了——光电触发时刻工件位置其实有随机偏差,拿它当基准等于自找麻烦。
5. 常见问题与排查技巧实录
这部分我直接整理成表格,方便大家现场对照排查,后面再逐个说排查思路。
| 故障现象 | 最常见原因 | 排查顺序 |
|---|---|---|
| 抓取点越跑越偏 | 编码器打滑 / 比例系数不准 / 跟踪坐标方向反 | 1.看方向 2.检查压紧 3.重标定 |
| 机器人跟踪时抖动明显 | 编码器信号干扰 / 输送带机械波动 | 1.查线缆 2.看波形 3.机械查辊 |
| 跟踪丢失或超窗报警频繁 | 窗口设置过小 / 来料节拍波动 | 1.查节拍 2.查窗口 |
| 抓取点存在固定偏移 | 跟踪坐标原点与机械基准不重合 | 1.重对TCP 2.复核坐标 |
| 跟踪使能后机器人不动 | 使能条件不满足 / 未进入窗口 | 1.查信号 2.查窗口 |
| 编码器读数跳变 | 干扰或接线接触不良 | 1.检查接线 2.检查屏蔽 3.查电源 |
先说“越跑越偏”。这个现象的特点是机器人刚开始抓到后面就慢慢偏,最后直接抓空。排查时先确认跟踪方向是否反了——反了的话偏差方向会在切换批次后改变。方向没问题就检查从动辊压紧机构,看是不是弹簧松了导致皮带偶尔打滑。如果机械没问题,就重新标定比例系数,重点观察三次标定的一致性。很多时候“越跑越偏”其实是三者的混合问题,建议按表格顺序一层层排除。
再说“跟踪抖动”。机器人动作本身不抖,但开了跟踪就抖,大多数是编码器信号有周期性干扰。我遇到过输送带电机启停瞬间引起电压跌落,编码器电源跟着波动,脉冲丢失导致坐标跳变。解决办法是给编码器用独立的 24V 开关电源,不要和变频器控制端子共电。另一个抖动来源是输送带拼接接头,皮带接头厚一点,带面经过从动辊时会产生周期性的微小速度波动,编码器读数会跟着波动。这种情况靠“增大跟踪滤波”能缓解,但要根治得处理皮带接头。
“固定偏移”是我觉得最阴间的故障。现象是每次抓取都很稳,也不报警,但就是稳定地偏 2mm。排查了几轮才意识到是跟踪坐标定义时用了旧的基准点,而那个基准点与机器人 TCP 校准时用的尖端差了 2mm。所以跟踪坐标定义的基准点一定要和现场校核用的基准一致。
最后说一个“窗口设置”的心得。窗口大小不要按理论计算完就死锁,最好在试生产时动态观察。先用理论值跑起来,如果偶尔报警超窗,不要急着加大窗口——先确认是不是来料节拍波动,再决定加多少。窗口无脑调大会带来新的危险:工件位置不够精准时机器人容易抓空撞到夹具。我一般把窗口做成 HMI 上的可调参数,方便现场微调。
6. 从同步到智能:跟踪加视觉补偿的高级玩法
6.1 为什么纯跟踪不够
纯编码器跟踪在输送带不打滑、工件不滑动的前提下非常可靠,但很多产线没这么理想。比如纸箱、料筐这类软包装工件,在皮带上急停或变向时容易滑动,滑动量还不固定。又比如工件需要带角度抓取,工件在带上轻微旋转了 1°,编码器完全感知不到。这种场景就必须融合视觉。
我经手的一条日化品包装线就是这种情况:瓶子在输送带上有轻微姿态偏移,纯跟踪抓取偶尔会把瓶子碰倒。后来加入视觉补偿后,问题基本绝迹。
6.2 拍照时刻锁存与补偿计算
视觉补偿的逻辑不复杂,坑却在“时间对齐”上。相机拍照那一瞬间,编码器有一个对应的累计值A;PLC和机器人拿到视觉处理结果时,时间已经过去了几十甚至上百毫秒,此时编码器累计值已经变成了B。如果你直接用视觉给的偏移量叠加上去,而机器人以为这是A时刻的位置,肯定偏。
正确的做法是:把视觉结果和拍照瞬间的编码器值 A 打包发给机器人,机器人用当前编码器值 B 减 A,算出这期间的位移增量,再叠加到视觉偏移上。也就是说,眼睛看到的是“过去的偏差”,脚必须追上“现在的带子”。
6.3 视觉与跟踪融合的常见坑
第一坑是相机安装位置离抓取点太远。视觉检测到偏差后,工件还要在带上走很久才到机器人,这段时间里工件可能再次滑动,视觉检测的结果已经过时。我建议相机尽量靠近抓取工位,留出足够处理时间,但不要留太长。第二坑是视觉给的角度补偿必须换算到机器人基座标系,不能直接叠加到跟踪坐标系里。跟踪坐标系是随带子移动的,角度补偿要在跟踪坐标里拆成 X/Y 方向分量再加,不能直接旋转一个角度。第三坑是节拍规划要给视觉留出至少两帧余量。如果视觉检测有偶发超时,程序必须有容错分支,否则整线被视觉拖着停。
融合方案调通后,效果是显著的:抓取成功率从 97% 提到 99.8% 以上,而且对来料姿态波动的容忍度大幅提升。当然,代价是多了相机标定和通信联调的时间,不是每个项目都需要上这套配置。如果现场工件定位本身就准,把编码器跟踪做扎实就够用了。
拿我自己这几年的经验做总结:所有跟踪项目里,真正决定成败的往往不是控制器参数,而是编码器的机械安装质量。编码器装得稳、方向对、压紧不滑,参数标定一次就能过;反之,参数和程序再怎么调也是隔靴搔痒。另外强烈建议所有人在调试跟踪功能之前,先把机器人本体的 TCP 校准做扎实——跟踪出问题时的排查工作,很多时候绕一圈又绕回原点校准。希望这篇文章能帮准备做输送带同步项目的同行少走点弯路。