龙空技术网

精简版坐标系转换算法,告别机器人坐标系只会用而不知其原理

自动化机器人砖家 1371

前言:

今天朋友们对“旋转屏幕算法”都比较珍视,兄弟们都需要知道一些“旋转屏幕算法”的相关内容。那么小编同时在网上汇集了一些有关“旋转屏幕算法””的相关资讯,希望看官们能喜欢,姐妹们一起来了解一下吧!

忙里偷闲看到神舟12号上天,心里甚是激动,想想手里调试的工业机器人,再看看太空的空间站,心里咯噔一下,甚是惭愧,啥时候才能攀上高科技呢,不用在这行尸走肉般的搬砖哦。

自此开始发奋图强,准备研究点深入的知识!诶!!你说巧不巧!今天研究的机器人知识点还真的能和宇宙飞船高科技挂钩!!!!

今天研究下工业机器人坐标系的计算算法,宇宙的飞船也需要坐标系,不然你不知道它在哪,原理估计和工业机器人差不多。好了!!开始正题!!!

天和空间站

机器人坐标系,分为世界坐标系,工件坐标系,基坐标系,工具坐标系。按照计算方法,分为两类。

1、 世界坐标系,工件坐标系,基坐标系。为什么把这些分为一类,因为这几个坐标系都是基于基坐标系通过位姿转换而来。基坐标系是基于机器人底座的机械原点点坐标系,也就是DH变换的起始点,永不改变。如图1和图2两个机器人图片,图一是实体机器人,图二是框架,看到机器人底座有基坐标系。通过这个基坐标系偏移旋转,可以新建世界坐标系,工件坐标系。

2、 工具坐标系,是基坐标系加上6个轴位置参数,DH变换(以后详解)而来,如图2。

图1

图2

今天先从简单地开始讲,如图3工件坐标系Pi是怎么通过基坐标系Pj计算得到的。

图3

第一步是旋转,就拿二维坐标系开始讲解,容易理解,三维坐标系同样的原理。

如图4,A点在坐标系O里绕原点旋转β度后,得到A’点,假定OA长度为1.

图4

得如下推理:

a=1*cosα =cosα 1

b=1sinα =sinα 2

a’=cos(α+β)

b’=sin(α+β)

a′=cosβcosα−sinβsinα 3

b′=sinβcosα+cosβsinα 4

解*1* *2* *3* *4*方程得:

a′=a*cosβ−b*sinβ

b′=a*sinβ+b*cosβ

写成矩阵的形式是:

可理解为坐标系O上一点A,在坐标系绕原点旋转度后得到A’。

例如我需要新建机器人工件坐标系,位置和坐标系原点重合,只是绕Z轴旋转角度,那么

旋转矩阵

就是旋转矩阵,坐标系的X和Y数值乘以这个旋转矩阵会得到新的坐标系。

更复杂的情况,机器人想新建个坐标系,不是和基坐标系是同一个位置,有位置偏移和旋转,如图3,这种情况怎么办呢。

分三步处理的:

1、 新坐标系和基坐标系重合

2、 做个旋转,用上面的旋转矩阵

3、 旋转变换后,进行位移,横平竖直的位移。

旋转矩阵有了,位移矩阵怎么计算出来的,如下图5,A平移到A’点:

图5

a’= a+ta ;

b’= b+tb ;

写成矩阵形式需要用到齐次变换(有),形式如下:

平移矩阵就是

平移矩阵

这个矩阵了。

按照刚才的逻辑,旋转矩阵有了,平移矩阵有了,想要得到一个有平移有旋转的坐标系,是先旋转,再平移,也就是基坐标系的X和Y值先乘以旋转矩阵

旋转矩阵

再乘以平移矩阵

大家可以看出,一个是二阶矩阵一个是三阶矩阵,怎么乘呢,好办,把旋转矩阵变成

变化后的旋转矩阵

那么坐标系旋转加平移地变换矩阵定义为M,则:

到此,机器人建立工件坐标系的算法就讲解完成,大家多多关注我,后面给大家继续详解DH变换原理!!

标签: #旋转屏幕算法