技术资料
当前位置: 主页 > 新闻中心 > 技术资料

ABB机器人原点姿态坐标系的计算方法

类别:技术资料日期:2021-06-07 16:09:41
我要分享
       工博士机器人技术有限公司作为智能工厂服务商,从智能制造解决方案的提供,到工业电气产品的一站式采购,从智能制造培训到专业维护保养,围绕设备的智能升级改造、生产加工、设备保障、技能培训等多个方面,实现生产的智能、高效、环保和安全。

       1.ABB机器人坐标系ABB机器人编程示教的原点可以通过上述三个点建立,其中X1到x2构成X方向,从Y1到x1x2的垂直线是Y方向,Z方向满足右手法则,即通过X方向乘以Y方向获得Z方向。

       2.如何从三点坐标x1x2和Y1计算原点o。

       3.通过x1x2和Y1计算坐标系原点o的方向。也可以使用ABB机器人函数orient ZY x将Euler角度转换为四元数Q1-Q4。

       计算方法如下

       1) 得到向量和x1x2的单位化

       2) 得到向量x1y1并对其进行单位运算

       3) 单位向量Oz等于单位向量x1x2叉积单位向量x1y1

       4) 单位向量yy1等于单位向量yy1与单位向量oz的交集abb变频器故障代码的乘积。

       5) 得到单位向量OX1,单位向量OX1,oy1,单位向量,单位向量盎司

       6) 将旋转矩阵OX1,oy1,OZT变换为欧拉角

       7) 用方向函数实现欧拉角到四元数的转换

       4创建程序calframe定向,输入参数pX1、pX2和py,输出到ABC(即ABB机器人RZ、ry和RZ对应的欧拉角ABC)

       代码如下:

       过程校准框架定向(位置pX1、pX2、位置pY、输入编号a、输入编号B、输入编号C)

       ! A:ABB机器人编程示教旋转z(),B:旋转y(),C:旋转x()

       VAR位置vpx;

       VAR位置vpxy;

       VAR位置vpy;

       VAR位置vpz;

       vpx:=px2-px1;

       ! 获取向量x1x2

       VpX:=vec_u2;nor(VpX);!单位向量VpX

       vpxyx/pyx/px1!得到向量x1y1

       vpxy:=vec_uu2;nor(vpxy);!矢量VpX单位

       Vpz:=VpXvpxy;!向量VpX叉积向量vpxy

       Vpzabb变频器故障代码vpx;!向量叉积向量

       ! 在数组NRTabb变频器故障代码中存储单位向量

       NRT:=vpx.x;

       nrT:=vpy.x

       1,3}:vpz.x;

       NRT:=VpX.Y;

       NRT:=vpy.y;

       nrT:=vpz.y

       NRT:=vpx.z;

       NRT:=Vpy.z;

       NRT:=vpz.z;

       矩阵NRT,a,B,C;

       ! 调用旋转矩阵的欧拉角函数

       结束程序

       procABB机器人编程示教矩阵形态(num NRT{,},InOut num NRA,InOut num NRB,InOut num NRC)

       ! 交通角变换矩阵A,B,C

       ! t=旋转Z(a)旋转y(b)旋转x(c)

       变异数nrSinA;

       nrCosA变量;

       变量nrSinB;

       Var num nrabscosb;变量数nrabscosb;

       变量nrSinC;

       无功补偿;

       NRA:=ATanabb变频器故障代码2(NRT,NRT);

       nrSinA:=SIN(NRA);

       NrCosA:=Cos(nrA);

       3,1} ;

       NRABSCOSB:=NRCOSANRTNRSNANRT;

       ! 值:-90

       nrB:=ATan2(nrSinB,nrAbsCosB)

       Nrsinc:nrsinanrt-nrcosanrt;

       NRCOSC:=-NRSNANRTABB机器人编程示教NRCOSANRT;

       NRC:abb变频器故障代码=ATAN2(nrSinC,nrCosC);

       结束程序

       功能位置向量(位置1)

       VAR pos位置2;

       posx:=posx/VectMagn(pos1)

       posy:=posy/VectMagn(pos1)

       pOSz:=posz/VecMagn(pOS 1);

       返回pos2;

       ENDFUNC公司

       ABB机器人


了解更多ABB机器人

 
 
      文章来源网络,如有侵权请联系删除
在线客服
服务热线

服务热线

19950166698

微信咨询
返回顶部