您好!欢迎光临工博士商城

ABB机器人销售商

产品:65    
联系我们
新闻分类
  • 暂无分类
联系方式
  • 联系人:运营
  • 电话:13601696230
  • 邮件:2925530387@qq.com
  • 手机:13601696230
  • 传真:021-39571236
站内搜索
 
友情链接
  • 暂无链接
首页 > 新闻中心 > ABB机器人|提前判断一个robtarget是否可达
新闻中心
ABB机器人|提前判断一个robtarget是否可达
发布时间:2023-11-13        浏览次数:31        返回列表
 1.ABB 机器人在运行MoveL p100,v1000,z50,tool0WObj:=wobj0;等语句时,若ABB机器人走不到该位置p100,会出现上述报错。
 
 
2. p100为robtarget类型数据,即记录的是xyz等数据。
 
 
3. 该数据若非示教,而是通过计算或者外部相机拍照发送得到,有时就会发生机器人不可达。
 
 
4. 此时只有机器人运行到该行代码时,机器人报警并停机。
 
 
5. 是否可以提早对p100进行运算,检测机器人是否可达?
 
 
6. 可以使用函数CalcJoint函数,该函数返回p100在tool0下对应的各轴数据
 
 
jpos10:=CalcJointT(p100,tool0ErrorNumber:=myerrnum);
 
 
7. 增加ErrorNumber可选参数,此时若计算出的位置机器人不可达,则会得到报警代码ERR_ROBLIMIT(单轴超限)或者ERR_OUTSIDE_REACH(机器人不可达),后续对该错误代码处理即可。此时机器人不会停机。
 
 
8. 代码如下:
 
 jpos10:=CalcJointT(Home20,tool0\ErrorNumber:=myerrnum);
       IF myerrnum=ERR_OUTSIDE_REACH THEN
           TPWrite "Joint jpos10 is outside reach.";
           TPWrite "jpos10.robax.rax_1: "+ValToStr(jpos10.robax.rax_1);
           TPWrite "jpos10.robax.rax_2: "+ValToStr(jpos10.robax.rax_2);
           TPWrite "jpos10.robax.rax_3: "+ValToStr(jpos10.robax.rax_3);
           TPWrite "jpos10.robax.rax_4: "+ValToStr(jpos10.robax.rax_4);
           TPWrite "jpos10.robax.rax_5: "+ValToStr(jpos10.robax.rax_5);
           TPWrite "jpos10.robax.rax_6: "+ValToStr(jpos10.robax.rax_6);
       ENDIF
 
9. 假设此时Home20位置的x为10000,机器人完全不可达,则输出结果如下:



 

联系热线:13601696230 联系人:运营 联系地址:上海市宝山区富联一路98弄6号

技术和报价服务:星期一至星期六8:00-22:00 ABB机器人销售商

返回
顶部