中国机器人网 App
手机扫码下载 · 或点击查看
做集成这几年一直稀里糊涂的,调试ABB和库卡的时候都碰到过报警,J6接近0度左右就报警不动了,现场老师傅就说"撞奇异点了,往反方向走两步"。但到底为啥会这样一直没整明白,百度上写的全是公式,看得头大。
最近有个喷涂项目,机械臂要斜着探进工件里避位,仿真里看着挺好的,一上电跑到某个位姿直接跪了,整改方案要避开这一片区域。有没有通俗点讲讲奇异点到底是个啥,为啥J4、J6轴容易出这事?
简单说就是两个轴的转动方向重合了,雅可比矩阵降秩,机构瞬时少了一个自由度,解算不出唯一位置。比如J4和J6共线的时候,本来要6个轴配合才能到的位姿,现在少了一个方向的运动能力,控制器当然报警。ABB手册里管这个叫"configuration singularity",分腕部奇异(j4 j6共线)、肘部奇异(j3伸展接近0或180)、肩部奇异(j1和j4轴对齐),你这喷涂探进去碰到的大概率是腕部奇异。要彻底避开只能改安装姿态或者加导轨让奇异点跑出工作区,纯靠路径规划绕不开所有点。
你说往反方向走两步就行,这其实就是最土的办法——加个小半径圆弧过渡,别让轨迹直接切进奇异点。仿真里我一般会把奇异容差设个±5度,关节速度异常飙到150%以上就报警,提前减速,喷涂这种连续轨迹的项目实测能避开80%的报警。
J6接近0报警不一定全是奇异点,KUKA的E6驱动那边编码器零位偏了也会报这个数,你把机械零位重新校一遍试试,别上来就赖奇异。