![ABB工业机器人进阶编程与应用](https://wfqqreader-1252317822.image.myqcloud.com/cover/794/44819794/b_44819794.jpg)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
1.1.1 空间位姿的定义
对于坐标系A空间中的一个点的位置,可以表示为AP(Px,Py,Pz),如图1-4所示。用矩阵形式可以如下表示:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_13_2.jpg?sign=1739214864-IgzoxgudUbWSriZuj8uvP5dVoW7c7d0T-0-b2caf86c2b11e57f6cdb3acb5eae8989)
对于空间同一个位置,其可以有不同的姿态(方向)。而对于姿态(方向)的表示,可以在该点处构建一个坐标系B(见图1-5)。新坐标系B的X轴方向使用该轴在原有坐标系A3个方向的投影表示。为了方便表示,选用单位向量。
新坐标系B的Y轴和Z轴同理表示。旋转姿态可由下述矩阵表示,且式(1-2)称为旋转矩阵:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_13_3.jpg?sign=1739214864-diTgCK5ZNTjY2K3491j8Tn9GKF5XqPZd-0-833d82109cfc20a4b717a7c6f5035b82)
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_13_4.jpg?sign=1739214864-0Pi90hpwyX4otn5h7tS55NBK2Qgu1bEQ-0-c0dd48fa4581556c46e5bd90566e06f5)
图1-4 空间点P的位置
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_13_5.jpg?sign=1739214864-d6jrHZjIG6YTtaFsdqIpfBYIR9wfv9p0-0-e884622210ede96ee307bd655ddd03cb)
图1-5 空间点P的姿态表示
将位置和姿态统称为位姿(位置和姿态)。空间中一个点的位姿可以用矩阵表示(为了矩阵齐次化,构建4×4的矩阵)。式(1-3)称为位姿矩阵或者齐次变换矩阵:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_14_1.jpg?sign=1739214864-ff4R6rjDp4IzmJbh3UUOvUAEf6eWaG8Q-0-b991fa250683c492743403e7dfd306b6)
对于空间姿态,也可通过欧拉角表示(旋转顺序为Z、Y、X),即坐标系先绕原有坐标系的Z轴旋转α度,再绕新的坐标系的Y轴旋转β度,最后绕新的坐标系的X轴旋转γ度,如图1-6所示。
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_14_2.jpg?sign=1739214864-oMlfpGyJmoUqmgb68jfcswkYiiMhrHn5-0-c8bf392456ce9c0e2f29a801b6756213)
图1-6 Z-Y-X欧拉角
注:空间的旋转不满足交换律,不同的旋转顺序会导致不同的结果。
根据式(1-2)所示旋转矩阵的定义,结合图1-6的解释,可以整理得到基于Z-Y-X欧拉角的旋转矩阵如下:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_14_3.jpg?sign=1739214864-mn2FbMA11rBzSgU5gcu2I8KviKwL7kY0-0-665891d736c4b132391f2d597df12e89)
式(1-4)中,cα=cosα,sα=sinα;cβ=cosβ,sβ=sinβ;cγ=cosγ,sγ=sinγ。整理式(1-4)后,可以得到旋转矩阵:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_14_4.jpg?sign=1739214864-3tFfMz4kd7pjoP1IIYTLpGZ7qPklHEoX-0-5642d72a2094069547d0ad484ae5ac4d)
对于式(1-2)所示的旋转矩阵,还可以采用更简单的表达形式。四元数是一种描述此旋转矩阵更为简洁的方式。根据旋转矩阵的各元素,计算四元数。
令,则:
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_14_6.jpg?sign=1739214864-uh3HEjdRnbcBYRG2XRrlOXZeA2VQttW2-0-c2ec8be762f440c27a62506969ee050a)
![](https://epubservercos.yuewen.com/315336/23950325101463306/epubprivate/OEBPS/Images/43597_15_1.jpg?sign=1739214864-Zd9X2LAEnoItlTc63Mrjlh8zU3Uw3rOG-0-edae8702070193ff7e196e83e526ae52)
四元数不可直接做加减运算,且四元数的平方和须为1。
ABB工业机器人的pose数据采用空间位置pos(x,y,z)和四元数orient(q1,q2,q3,q4)来表示一个点的位姿(位置与姿态)。