基础指令:旋转(Gener:Rotations)

2018-02-23  本文已影响0人  善良小明

本节介绍了旋转运动的表示方法——旋转矩阵,以及如何创建较为复杂的旋转矩阵。


In the field of robotics there are many possible ways of representing orientations of which the most common are:

- orthonormal rotation matrices (3x3),

- three angles (1x3), and

- quaternions.


在机器人学领域,有许多不同的方法来表示方位。最常见的有:

-标准正交旋转矩阵

-三个方向角

-四元数


A rotation of pi/2 about the x-axis can be represented as an orthonormal rotation matrix

>> R = rotx(pi/2)

R =

    1.0000        0        0

        0    0.9996  -0.0274

        0    0.0274    0.9996

which we can see is a 3x3 matrix.


例如:绕x轴旋转pi/2的旋转运动,可以用方向旋转矩阵表示为:

>> R = rotx(pi/2)

R =

    1.0000        0        0

        0    0.9996  -0.0274

        0    0.0274    0.9996

可以看出,这是一个3x3的矩阵。


Such a matrix has the property that it's columns (and rows) are sets of orthogonal unit vectors.  The determinant of such a matrix is always 1

>> det(R)

ans =

    1.0000


这种矩阵有一个特点:它的行和列都是单位正交向量。这样的矩阵,其行列式的值恒为1。

>> det(R)

ans =

    1.0000


Let's create a more complex rotation

>> R = rotx(30, 'deg') * roty(50, 'deg') * rotz(10, 'deg')


创建一个更为复杂的旋转矩阵的示例如下:

>> R = rotx(30, 'deg') * roty(50, 'deg') * rotz(10, 'deg')

(本节完)

上一篇 下一篇

猜你喜欢

热点阅读