摘要:本文结合多个落地的离散制造产线项目,分享产线多机联动作业协同设计中的常见坑点、架构选型和现场调试经验,适合有一定基础的机械自动化工程师参考。
别小看协同,这不是堆几台设备连起来就行
三年前帮东莞一家3C工厂改电池组装线,那事儿我现在还记得。甲方一开始图省钱,找了小厂商做,六台设备:上料机、包膜机、贴胶机、热压、检测、下料,每台单机都没问题,连起来跑就乱套。
有时候贴胶机走到工位了,移载机还没把电池放稳,差不到200毫秒,一片极片就废了。高峰的时候一天废一千多片,老板蹲在产线门口抽烟,脸都绿了。
问题出在哪?对方把所有联动逻辑直接写进了每台设备的PLC里,没有统一的协同调度,信号传输靠硬IO点对点,延迟忽高忽低,换个型号改参数要改五台设备的程序,改完这里错那里,根本没法调。

说实话,现在很多工厂上新产线都犯这个错。觉得不就是把几台机器连起来动起来?真跑起来才知道,多机联动的核心,是时间误差控制和状态一致性,差个几十毫秒,就是批量报废的代价。
尤其是高精密产线,汽车焊接、新能源电池装配、半导体封装,对同步误差的要求都是零点几毫米级,你没做协同架构,靠瞎堆设备,怎么可能达标。
分层协同架构:踩过N次坑才摸出来的规范
现在我们做项目,严格按ISO 15746自动化协同控制标准来,分三层,谁该干什么分的清清楚楚,不会乱。
第一层是设备层。每台设备只做自己的闭环控制,只对外输出两个东西:当前状态,以及接收协同指令。比如冲压机,自己管好锁模压力、出料位置,只给上层发“出料完成”“可接料”,绝对不把别的设备的逻辑写进来。这样坏了一台,拆下来换备用,别的设备照样跑,不影响整条线。
第二层是协同控制层。这一层专门管多机的动作同步和时序调度,所有状态判断都在这里处理。比如上料机出料完成发信号,协同层收到后,算好移载机的运动时间,提前100ms给移载机发启动指令,刚好到位刚好接料,误差不会超。用PROFINET总线的话,把循环周期设成1ms,大部分场景都够用了,成本还比运动控制卡低三分之一。

第三层是生产调度层。这个管换产、工单分配和异常处理。比如换个产品型号,只要在调度层改一下工位节拍和动作顺序,不用改下层每台设备的程序,半小时就能完成换产,比原来改一天强太多。
不过话说回来,不是所有产线都要搞这么复杂。如果是十来台设备的低节拍包装线,节拍要求一分钟不到十包,那简化一下,把协同层放主PLC里就够,没必要上专门的运动控制器。要是超过15台设备,精度要求±0.1mm以内,那必须上总线型运动控制,别省那点钱,后期改的成本够买三台了。对吧?
现场调试的核心诀窍:别盯着程序找bug

做了这么多项目,我最大的体会是,多机联动出问题,九成不是程序的锅,是机械和安装的问题。
前年调新能源电机的装配线,转子压装机和搬运机器人总是不同步,压出来的转子同轴度超差。我们三个工程师盯着程序改了三天,改了无数个时序,还是错。最后钳工师傅说,要不我再量量导轨水平?一量,第七轴导轨的水平差了0.2度,导致机器人到位后停稳要多花120毫秒,刚好差在压装的时间点上。
调完水平,一次就成了。你说气人不气人。
我现在调试,第一步永远是先测每台设备的实际动作时间,用秒表掐,用高速相机拍,把每一步的实际运行时间记下来,再去调协同时序,绝对不一开始就改程序。很多人喜欢按说明书给的理论节拍写时序,实际机械有惯性,有磨损,理论值永远和实际不一样,差个几十毫秒就是大问题。
还有个常见坑,就是加太多冗余同步点。很多设计师怕出问题,每个小动作都加同步锁,结果很容易出现死锁,A等B,B等A,整条线停在那,找bug找半天。其实只要在关键工序加同步就够了,比如焊接前对准、压装前到位,中间的传送周转,只要不堆料,允许有几十毫秒的误差,不用硬锁。
还有个小技巧,给协同时序留10%的调整余量,比如算出来需要200ms的间隙,你就留220ms,不要卡的太死,设备用久了磨损,间隙还能再调,不会一用就出问题。
最后说两句

产线多机联动作业协同,从来不是什么高深的黑科技,拼的是细节,是你有没有真的站在整条产线的角度想问题。很多人做设计,只盯着自己负责的那台设备,做完就扔,不管拼起来能不能跑,最后累死现场调试的,还害业主赔钱。
留好接口,留好调整余量,把分层逻辑理清楚,比堆多少高端元器件都有用。