讨论

ABB IRB1200走MoveAbsJ回不了机械零,这啥情况?

小程
小程
2026/05/21 13:50

现场一台IRB1200,示教器里手动能慢慢摇到机械零位置,关节角度显示也对得上零点。可一执行MoveAbsJ jntPos:=[[0,0,0,0,0,0],[9E9,9E9,9E9,9E9,9E9,9E9]],v100,fine,tWrist:=10这种标准回零指令,机器人就直接报"50053 关节位置超出范围",根本不走。

零点数据确认没丢,转数计数器也更新过。轴1当前在+45度左右,是不是这个角度太大了?还是要先摇到某个安全位再回?有经验的给说说这坑咋填。

15 3

全部回复 (3)

唐彬
唐彬#1

jntPos那行的9E9不是这样写的吧?应该写9E+09,或者干脆写0表示默认。你这个50053基本就是运动规划时关节超限了,轴1从+45度直接joint运动回零,IRB1200这型号的轴1软限位是+165到-165,单从范围上看45度回去没问题。怀疑你9E9那段把目标点坐标搞飞了,控制器直接当非法值处理。改成[[0,0,0,0,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]]再试,要是还报就把第二组全删了只留目标点。

2026/05/22 03:13
zhao_lei
zhao_lei#2

手动能到零点不代表转数计数器就真对,IRB1200最容易出的问题就是轴5和轴6的零位偏差,你把示教器里"校准"菜单翻出来,看一下每个轴的calibration offset是不是都被动过。我这边出过类似情况,最后是单独把轴5重新校准了一遍才好。

2026/05/22 16:44
4140148828
4140148828#3

你这指令格式我看着别扭,v100、fine、tWrist的顺序对吗?ABB是v100, fine, tWrist没错,但前面那个jntPos的赋值确认一下。报错50053说白了就是目标点算不动,你从当前位置joint直线回零,中间路径上有没有碰到奇点或者轴限位?试一下用MoveAbsJ单轴一步步回,别一步到位。

2026/05/23 12:05