讨论

ABB IRB1200做码垛,IO信号触发动作老是慢半拍咋整

龙哥
龙哥
2026/03/28 12:45

项目里用的ABB IRB1200配IRC5紧凑型控制器,码垛程序走的是Rapid里那种标准的MoveJ+MoveL套路,动作触发用的是数字输入di1来起一个中断,理论上信号来了就该立马走下一个点位,但现场跑起来信号触发到机器人实际启动中间大概有80-120ms的延迟,客户那边节拍卡得死死的,要求单次码垛循环控制在2.8秒以内,现在光这个延迟就吃掉一大截了。

我试过把中断优先级调到最高,也把那个运动任务里的ZoneData改成fine,延迟还是有,不知道是不是我哪里设置不对,ABB这机器人动作配置里还有啥隐藏的优化点没?有没有搞过类似项目的兄弟给指点指点,最好说具体点,比如改哪个参数能压到多少ms以内那种。

16 3

全部回复 (3)

杨庆国
杨庆国#1

另外你ZoneData改fine其实是大忌,码垛本来点位密集,fine一设每段都要精停,速度直接掉一档,延迟当然下不来。正常用z10到z50之间根据实际节拍挑,配合运动任务里把TriggSpeed调一下,比你动ZoneData管用得多。

2026/03/29 11:35
999
999#2

你说中断里挂的MoveJ/MoveL?我记得ABB的IRC5里中断程序里调运动指令是有限制的,有些指令在中断上下文里会延迟执行,需要用TriggInt或者把动作放到后台任务里用信号同步,你这写法本身可能就是问题根源,换个实现思路试试。

2026/03/29 13:33
薄利多销
薄利多销#3

码垛2.8秒一个循环本来就很紧,IRB1200这机型臂展短加速度大,机械响应本身就占一部分时间。客户这个节拍要求有没有留余量?真卡到这么死的情况下,不如直接上IRB1660ID或者并联机器人,硬件层面先撑住,软件再怎么优化上限也就那样,别在软件参数上死磕了。

2026/03/31 10:37