行业报告 AI展会 数据标注 标注供求
数据标注数据集
主页 > 机器人 正文

点位在不同坐标系下转化的实现原理

 

  1. 假设现场有工件坐标系Workobject_1,已知ABB机器人在Workobject_1下的robtarget是p10,若希望计算该点在wobj0下的坐标,可以使用如下方法:

     

即先将Workobject_1下的p10转化为jointtarget类型jtmp,再将jtmp转化为wobj0下的p0

 jtmp:=CalcJointT(p10,tWeldGunWObj:=Workobject_1);

 p0:=CalcRobT(jtmp,tWeldGunWObj:=wobj0);

2. 假设wobj0到wobj1.uframe的坐标转化关系为

wobj1.uframe到wobj1.oframe的坐标转化关系为,

 

p10在wobj1.oframe下的位姿为p10,

其中可用形式的位姿矩阵

 

来表示,或者用[[px,py,pz],[q1,q2,q3,q4]]的Pose形式来表示。

3. 对于Pose的右乘,可以使用RAPID PoseMult函数,若计算p10在wobj0下的位置p0:

 

假设pose类型数据pose1等于p10的坐标,假设pose类型数据pose3为p0对应的坐标,

 

 pose1.trans:=p10.trans;

 pose1.rot:=p10.rot;

 pose3:=posemult(Workobject_1.uframe,Workobject_1.oframe);

 pose3:=PoseMult(pose3,pose1);

 

4. 若已知p0在wobj0下的位置,要计算对应p0在workobject_1下的位置p10,则满足(注意矩阵运算乘法不满足交换律!!!)

其中表示对的求逆

 

5. 对于位姿Pose的求逆,RAPID 可以使用PoseInv函数,

假设pose类型数据pose2等于p10的坐标,假设pose类型数据pose4为p0对应的坐标,  

 

pose2:=PoseMult(PoseInv(Workobject_1.oframe),PoseInv(Workobject_1.uframe));

 pose2:=posemult(pose2,pose4);

微信公众号

声明:本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。

网友评论:

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
SEM推广服务

Copyright©2005-2028 Sykv.com 可思数据 版权所有    京ICP备14056871号

关于我们   免责声明   广告合作   版权声明   联系我们   原创投稿   网站地图  

可思数据 数据标注

扫码入群
扫码关注

微信公众号

返回顶部