讨论

ABB SpeedMove里v1000和v2000切换时怎么写更稳?

laojie
laojie
2026/03/16 11:05

项目上用了IRB1200配SpeedMove功能,v1000是工艺段主速度,v2000是收尾放慢那下。逻辑里用了一个数字输入DI切换,IO触发到机器人反应有大概几十毫秒延迟,碰上节拍快的时候尾巴就冲出去了。有没有人做过类似场景?一般是直接在程序里用SyncMoveTo/SpeedMoveTransition这类指令控制,还是干脆在外部PLC里预判节拍提前发信号更靠谱?

39 3

全部回复 (3)

老婆孩子热炕头
老婆孩子热炕头#1

用SpeedMove的话v1000到v2000过渡区设宽一点试试,我之前在1200上跑过类似工艺,TCP250mm/s以下的时候过10mm基本看不出来停顿。DI触发延迟那个没办法,IO刷新周期就那样,如果PLC走PN从站到机器人控制柜大概在20-40ms波动。你这个工艺段多长?如果单段就50-80mm,延迟影响很大,超过了还不如把v2000那段直接在示教里写死,逻辑里不切速度,靠位置判断自动降速。

2026/03/16 14:31
小唐
小唐#2

几十毫秒延迟一般是EtherNet/IP走软交换那块的问题,PN从站加IRT能压到1ms,但1200控制柜的PN口要看你选的是OmniCore还是IRC5,板卡型号不一样,延迟差很多。你说清楚下控制柜型号呗。

2026/03/17 14:03
鸿运当头
鸿运当头#3

我干这种场景都是让PLC发速度百分比信号过来,机器人程序里就一个v_actual=DI信号倍率*v1000,然后限幅在50-1500之间,速度过渡完全靠机器人内部的spline插补算,IO延迟问题就不存在了。1500是公开文档里能设的最大值,强行改RAPID里v_max=1500之后V2000以上速度会被夹掉。

2026/03/17 21:08