Representing Attitude Euler Angles Unit Quaternions, and Rotation

合集下载

大角度范围内欧拉角到四元数的变换

大角度范围内欧拉角到四元数的变换

大角度范围内欧拉角到四元数的变换朱程广;赵健康;刘英【期刊名称】《中国惯性技术学报》【年(卷),期】2018(026)001【摘要】由于非合作目标的不规则运动,航天器参考系与非合作目标坐标系之间往往存在大角度变换.针对这一问题,提出一种基于牛顿插值的算法实现四元数与欧拉角的变换.与其它文献中提出的算法相比,新的欧拉角表示方法将欧拉角的变换范围扩展至(-∞,+∞).为了验证该方法的有效性,也研究了非合作目标相对于航天器的相对姿态信息,并作为仿真实验的数据.实验结果显示,该方法能够有效实现欧拉角到四元数的变换,且转换精度能达到10-15.%Aiming at the large-angle transformation between spacecraft reference frame and non-cooperativetarget reference frame due to the irregular motion of the latter, a new algorithm for transforming attitudequaternion into Euler angle based on the Newton interpolation is proposed. Unlike previous literatures, the newEuler angle representation method extends the transformation range of Euler angle to (-∞,+∞) . In order todemonstrate the effectiveness of the proposed algorithm, the relative attitude quaternions between two kinds ofreference frames at different moments are simulated to obtain the corresponding Euler angles. The experimentalresults show that this algorithm can perfectly implement the transformation between Euler angles andquaternion, and the precision of transformation can reach 10-15.【总页数】8页(P115-121,126)【作者】朱程广;赵健康;刘英【作者单位】上海交通大学电子信息与电气工程学院,上海 200240;上海交通大学电子信息与电气工程学院,上海 200240;上海机电工程研究所,上海 201109【正文语种】中文【中图分类】U666.1【相关文献】1.大角度机动下火箭欧拉角姿态计算相关问题探讨 [J], 淡鹏;李志军;黄普2.四元数与欧拉角刚体动力学数值积分算法及其比较 [J], 徐小明;钟万勰3.Unity 3D中欧拉角与四元数关系的研究 [J], 苏超凡;郭仁春;4.单位四元数、罗德里格转换模型与欧拉角的映射关系 [J], 程烺; 俞家勇; 马龙称; 周茂伦; 曹岳飞5.关于大角度范围内四元数与欧拉角转换的思考 [J], 夏喜旺;杜涵;刘汉兵因版权原因,仅展示原文概要,查看原文内容请购买。

空间位姿描述

空间位姿描述

空间位姿描述空间位姿描述是机器人技术中的一个重要概念,用于描述机器人在三维空间中的位置和姿态。

这个描述通常使用欧拉角、四元数或旋转矩阵等方式表示。

空间位姿描述对于机器人的定位、导航、路径规划等任务至关重要。

本文将介绍空间位姿描述的基本概念和常见表示方法。

一、空间位姿描述的基本概念空间位姿描述是指机器人在三维空间中相对于某个参考坐标系的位置和姿态。

其中,位置包括三个坐标轴上的位移,姿态包括机器人相对于参考坐标系的旋转。

1. 欧拉角表示欧拉角是指机器人绕三个坐标轴的旋转角度。

常见的欧拉角表示方法有yaw、pitch和roll,分别代表绕Z轴、Y轴和X轴的旋转角度。

2. 四元数表示四元数是一种复数形式的数学表示方法,可以用来表示空间中的旋转。

四元数由实部和虚部组成,虚部是一个三维向量,实部是一个标量。

3. 旋转矩阵表示旋转矩阵是一个3x3的矩阵,用来表示机器人在三维空间中的旋转。

旋转矩阵可以通过欧拉角或四元数转换得到。

三、应用场景空间位姿描述在机器人技术中有广泛的应用,下面介绍几个典型的应用场景。

1. 机器人定位与导航机器人在未知环境中进行定位和导航是一个重要的问题。

通过空间位姿描述,机器人可以知道自己在三维空间中的位置和姿态,从而进行路径规划、避障等操作。

2. 机器人运动规划机器人在执行任务时,需要规划合适的运动轨迹。

通过空间位姿描述,可以确定机器人每个时间步的位置和姿态,从而实现精确的运动规划。

3. 虚拟现实与增强现实空间位姿描述在虚拟现实和增强现实技术中也起着重要的作用。

通过位姿描述,可以将虚拟物体与真实环境进行融合,实现逼真的交互体验。

四、总结空间位姿描述是机器人技术中的重要概念,用于描述机器人在三维空间中的位置和姿态。

常见的表示方法有欧拉角、四元数和旋转矩阵。

空间位姿描述在机器人定位、导航、运动规划以及虚拟现实等领域有广泛应用。

通过空间位姿描述,机器人可以更准确地感知和理解环境,从而实现更智能、更精准的操作和应用。

欧拉角四元数转换

欧拉角四元数转换

欧拉角四元数转换欧拉角和四元数都是用于描述物体在三维空间中的旋转状态的数学表示方法。

欧拉角是一个由三个角度组成的向量,而四元数是一个由四个实数组成的向量。

在计算机图形学和机器人学等领域中,这两种方法都被广泛使用。

欧拉角和四元数之间的转换可以帮助我们在不同的数学表示方法中进行转换,从而更方便地进行计算和应用。

下面是欧拉角和四元数之间的转换公式:欧拉角转四元数:给定欧拉角向量 [α, β, γ],我们可以通过以下公式将其转换为对应的四元数 [q0, q1, q2, q3]:q0 = cos(α/2)cos(β/2)cos(γ/2) + sin(α/2)sin(β/2)sin(γ/2)q1 = sin(α/2)cos(β/2)cos(γ/2) - cos(α/2)sin(β/2)sin(γ/2)q2 = cos(α/2)sin(β/2)cos(γ/2) + sin(α/2)cos(β/2)sin(γ/2)q3 = cos(α/2)cos(β/2)sin(γ/2) - sin(α/2)sin(β/2)cos(γ/2)四元数转欧拉角:给定四元数 [q0, q1, q2, q3],我们可以通过以下公式将其转换为对应的欧拉角向量 [α, β, γ]:α = atan2(2(q0q1 + q2q3), 1 - 2(q1^2 + q2^2))β = asin(2(q0q2 - q3q1))γ = atan2(2(q0q3 + q1q2), 1 - 2(q2^2 + q3^2))其中,atan2() 是一个带有两个参数的反正切函数,它可以根据两个参数的正负关系来确定结果的正负号。

通过以上公式,我们可以方便地在欧拉角和四元数之间进行转换,从而更加灵活地描述物体在三维空间中的旋转状态。

工业机器人末端姿态表示-欧拉角,俯仰滚动角

工业机器人末端姿态表示-欧拉角,俯仰滚动角

⼯业机器⼈末端姿态表⽰-欧拉⾓,俯仰滚动⾓机器⼈运动学研究时,通常采⽤矩阵运算形式,所以包括末端关节的各关节空间姿态是向量形式,因此⾄少需要6个参数表达(n,o,a中的两组),末端关节的姿态在运动学计算时会做为输⼊参数,表达末端空间姿态的除⽤向量组形式外还有欧拉⾓(Euler Angles)、俯仰滚动⾓(roll-pitch-yaw)(也称横摇⾓,纵摇⾓,偏转⾓)等,这样输⼊的参数会少些,我知道的⼴数GSB-RB8就是采⽤俯仰滚动⾓输⼊的,在实际操作中需要⼀个从向量组到⾓度的转换;欧拉⾓、俯仰滚动⾓(Tait–Bryan angles)分别参照:两者的区别在于旋转轴及次序,例欧拉⾓为z-x’-z’’,俯仰滚动⾓则为z-x’-y’’,欧拉⾓为x-y’-x’’,则俯仰滚动⾓则为:x-y’-z’’,这需要⼀定的空间想象。

向量组转为欧拉⾓:α=arg(r a hx,r a hy) ⼩于零时α=arg(r a hx,r a hy)+ πβ=arg(r a hx, r a hx Cosα + r a hy Sinα)γ=arg(-r o hx Sinα+ r o hy Cosα, -r n hx Sinα+ r n hy Cosα)向量组转为俯仰滚动⾓:ξ = arg(r n hx,r n hy) ⼩于零时α=arg(r n hx,r n hy)+ πØ= arg(r n hx Cosξ+ r n hy Sinξ,-r n hx,)Ψ= arg(-r o hx Sinξ+ r o hy Cosξ, r a hx Sinξ - r a hy Cosξ)arg(x,y)表⽰复数z=x+iy的幅⾓,即Atan2(y,x)。

///<summary>///姿态的向量形式转化为⾓度形式///</summary>///<param name="ev">向量[n,o,a] = {{nx,ox,ax},{ny,oy,ay},{nz,oz,az}}</param>///<param name="euler">true为欧拉⾓,否则为俯仰滚动⾓</param>///<returns>⾓度数组{α,β,ϒ}</returns>public static double[] TransToAng(double[,] ev, bool euler){double[] RA = new double[3];double nx = ev[0, 0];double ny = ev[1, 0];double nz = ev[2, 0];double ox = ev[0, 1];double oy = ev[1, 1];double oz = ev[2, 1];double ax = ev[0, 2];double ay = ev[1, 2];double az = ev[2, 2];doubleα, β, ϒ;if (euler){α = Math.Atan(ay / ax);α = α < 0 ? α + Math.PI : α;β = Math.Atan((ax * Math.Cos(α) + ay * Math.Sin(α)) / az);ϒ = Math.Atan((-nx * Math.Sin(α) + ny * Math.Cos(α)) / (-ox * Math.Sin(α) + oy * Math.Cos(α)));}else{α = Math.Atan(ny / nx);α = α < 0 ? α + Math.PI : α;β = Math.Atan((-nz) / (nx * Math.Cos(α) + ny * Math.Sin(α)));ϒ = Math.Atan((ax * Math.Sin(α) - ay * Math.Cos(α)) / (-ox * Math.Sin(α) + oy * Math.Cos(α)));ϒ = ϒ < 0 ? ϒ + Math.PI : ϒ;}RA = new double[] { α * 180.0 / Math.PI, β * 180.0 / Math.PI, ϒ * 180.0 / Math.PI };return RA;}。

Closed-form solution of absolute orientation using unit quaternions

Closed-form solution of absolute orientation using unit quaternions

1.
Hale Waihona Puke INTRODUCTIO N
Suppose that we are given the coordinates of a number o f points as measured in two different Cartesian coordinate systems (Fig . 1.) . The photogrammetric problem of recovering the transformation between the two systems from thes e .1 measurements is referred to as that of absolut eorinta It occurs in several contexts, foremost in relating a stere o model developed from pairs of aerial photographs to a geodetic coordinate system . It also is of importance in robotics , in which measurements in a camera coordinate system mus t be related to coordinates in a system attached to a mechani cal manipulator. Here one speaks of the determination o f the hand-eye transform . 2 A. Previous Wor k The problem of absolute orientation is usually treated in a n .31,4 empirical, graphical, or numerical iterativ efashion Thompson gives a solution to this problem when thre e points are measured . His method, as well as the simpler one of Schut,6 depends on selective neglect of the extra constraints available when all coordinates of three points ar e known . Schut uses unit quaternions and arrives at a set o f linear equations . I present a simpler solution to this specia l case in Subsection 2 .A that does not require solution of a system of linear equations. These methods all suffer fro m the defect that they cannot handle more than three points . Perhaps more importantly, they do not even use all th e information available from the three points . Oswal and Balasubramanian 7 developed a least-squares method that can handle more than three points, but thei r method does not enforce the orthonormality of the rotatio n matrix . An iterative method is then used to square up the result--bringing it closer to being orthonormal . The method for doing this is iterative, and the result is not the solutio n of the original least-squares problem .

quaternion

quaternion

cos(θ )
θ
sin(θ )
θ cos(θ )
Re
第二步的变换同样会将 −cosisn(θ(θ)) 缩放为 −∥∥zz∥∥csoisn((θθ)).这样等于是将整个坐标系 逆时针旋转了 θ ⻆,并缩放了 ∥z ∥ 倍.
所以,复数的相乘其实是旋转与缩放变换的复合.如果有一个复数 z = a + bi, 那么 z 与任意一个复数 c 相乘都会将 c 逆时针旋转 θ = atan2(b, a) 度,并将其缩放
第一步首先将 10 变换到了 csoins((θθ)) 的位置,也就是逆时针旋转了 θ 度,接下来: ∥z0∥ ∥z0∥ csoins((θθ)) = ∥∥zz∥∥ csoins((θθ))
缩放矩阵将 csoins((θθ)) 缩放了 ∥z ∥ 倍,变为 ∥∥zz∥∥ csoins((θθ)).总的来说,就是对 10 逆时 针旋转了 θ 度,并缩放了 ∥z ∥ 倍.
如果仔细观察你就能发现,复数相乘的结果其实也是一个矩阵与向量相乘的结果, 也就是说:
z1z2 = ac − bd+
(bc + ad)i = ba −ab dc
右侧的 dc 是用向量的形式来表示的 z2,而左侧的 ba
−b a
则是
z1
的矩阵形式.我
们可以发现,复数相乘这个运算,其实是与 ba −ab 这个矩阵所代表的变换是等价的
a2+b2
a2+b2
知道了这些,原矩阵就可以变形为:
ba
−ab
=
√ a2
+
b2
csoins((θθ))
−cosisn(θ(θ))
= ∥z ∥ csoins((θθ)) −cosisn(θ(θ))

四元数初始化python

四元数初始化python四元数是一种用于表示三维空间旋转的数学工具。

在Python中,可以使用Quaternions库来进行四元数的初始化。

一、什么是四元数?四元数是一种扩展了复数的概念,它由一个实部和三个虚部组成。

在三维空间中,每个虚部都代表一个坐标轴上的旋转分量。

四元数可以用来表示旋转、方向和姿态等概念。

二、为什么使用四元数?相比于其他表示旋转的方法,如欧拉角和旋转矩阵,四元数具有以下优点:1. 避免万向锁:欧拉角存在万向锁问题,在某些情况下会导致无法准确表示旋转。

而使用四元数可以避免这个问题。

2. 插值计算:四元数可以进行平滑插值计算,使得动画过渡更加自然。

3. 精度高:相比于欧拉角和旋转矩阵,四元数在计算机中存储和计算时精度更高。

三、如何初始化一个四元数?在Python中,可以使用Quaternions库来进行四元数的初始化。

下面是一个示例代码:```pythonfrom Quaternions import Quaternions# 初始化一个单位四元数quat = Quaternions()# 初始化一个具有旋转分量的四元数quat = Quaternions(x=0.5, y=0.5, z=0.5, w=0.5)# 初始化一个从欧拉角转换而来的四元数euler_angles = [45, 30, 60] # 欧拉角表示旋转的角度quat.from_euler(euler_angles)# 初始化一个从旋转矩阵转换而来的四元数rotation_matrix = [[1, 0, 0], [0, 1, 0], [0, 0, 1]] # 旋转矩阵表示旋转quat.from_matrix(rotation_matrix)```四、四元数初始化方法详解:1. 单位四元数初始化:可以通过不传入任何参数来创建一个单位四元数。

单位四元数的实部为1,虚部为零,表示无旋转状态。

2. 具有旋转分量的四元数初始化:可以通过传入具体的虚部和实部值来创建一个具有旋转分量的四元数。

四元数与欧拉角的转换

四元数和欧拉角都是机器人手指末端姿态角度表示法,日常应用广泛。

欧拉角是通过旋转轴和旋转角度,即欧拉旋转来实现物体空间姿态表
示的。

四元数是把物体的旋转表示为四个个实数,可以由欧拉角转换
而来,是一种普遍的旋转变换算法。

从原理来看,欧拉角的计算要比四元数麻烦得多,需要通过旋转轴和
旋转角度来实现物体空间姿态的转换,而且容易产生偏差及关节锁死
现象。

另一方面,四元数可以由欧拉角转换而来,不同的欧拉角对应
相同的四元数,实现容易,可以使机械臂快速响应物体空间姿态变化,克服欧拉角复杂换算,直接保存了手指末端的姿态,且操作便利,手
指末端的运动可通过它直接表示,使机器人的设计更精简便捷。

两者的区别在于,欧拉角中仅表示物体空间移动的欧拉旋转,四元数
不仅表示欧拉旋转,而且还包括了平移。

四元数可以表示一个从某一
位置到另一个位置的实际运动,而欧拉角只能表示从某一位置到另一
位置的朝向变化。

需要注意的是,由于欧拉角和四元数本身都有编码位数相限及旋转角
度限制,使得它们都容易发生奇异点现象,也就是机器手指末端发生
抖动。

两者之间相互转换时,也要尽量避免造成反转的现象,否则容
易影响到机械臂的控制速度及姿态精度。

因此在应用中,要根据实际需要选择合适的表示方式,以期达到节省
计算量、提高机器人控制效率及控制精度的目标。

同时,也要认真按
照四元数或欧拉角之间的转换规则,确保正确无误地将其转换为另一
种表示方式。

lecture_3

16.333:Lecture#3Frame RotationsEuler AnglesQuaternionsFall 2004 16.333 3–1 Euler Angles • For general applications in 3D, often need to perform 3 separate rotations to relate our “inertial frame” to our “body frame”– Especially true for aircraft problems• There are many ways to do this set of rotations ­with the variations be based on the order of the rotations– All would be acceptable– Some are more commonly used than others• Standard: start with the body frame (x,y,z ) aligned with the inertial (X,Y,Z ), and then perform 3 rotations to re­orient the body frame. ① Rotate by ψ about Z x �,y �,z �⇒② Rotate by θ about y � x ��,y ��,z ��⇒ ③ Rotate by φ about x �� ⇒ x,y,zEuler angles:– ψ ∼ Heading/yaw– θ ∼ Pitch– φ ∼ Roll•Can write these rotations in a convenient form:⎡⎤⎡ ⎤⎡⎤⎡⎤x� cψsψ0X X⎣y�⎦=⎣−sψcψ0⎦⎣Y⎦=T3(ψ)⎣Y⎦z�001Z Z⎡⎤⎡ ⎤⎡⎤⎡⎤x��cθ0−sθx�x�⎣y��⎦=⎣010⎦⎣y�⎦=T2(θ)⎣y�⎦z��sθ0cθz�z�⎡⎤⎡ ⎤⎡⎤⎡⎤x100x��x��⎣y⎦=⎣0cφsφ⎦⎣y��⎦=T1(φ)⎣y��⎦z0−sφcφz��z��which combines to give:⎡⎤ ⎡⎤x X⎣y⎦=T1(φ)T2(θ)T3(ψ)⎣Y⎦z Z⎡ ⎤⎡⎤cθcψ cθsψ−sθX⎦=⎣−cφsψ+sφsθcψcφcψ+sφsθsψsφcθ⎦⎣Ysφsψ+cφsθcψ−sφcψ+cφsθsψcφcθZ• Note that the order that these rotations are applied matters and will greatly change the answer–matrix multiplies of T i must be done consistently.• To get the angular velocity in this case,we have to include three terms:① ψ˙about Z② θ˙about y�③ φ˙about x��which we combine to get�ωWant to write�• ωin terms of its components infinal frame(body)–Use the rotation matrices•Example:rotateψ˙about Z≡z�⎡⎤0–In terms of X,Y,Z,frame rotation rate has components⎣0⎦,ψ˙which is the same as in frame x�,y�,z�–To transform a vector from x�,y�,z�to x,y,z,need to use T1(φ)T2(θ)⎡⎤⇒–Similar operation forθ˙about y�≡y��use T1(φ)on⎣φ˙⎦•Final result:⎡⎤ ⎡⎤⎡⎤⎡⎤ωx00φ˙ωb=⎣ωy⎦=T1(φ)T2(θ)⎣0⎦+T1(φ)⎣θ˙⎦+⎣0⎦ωzψ˙00ly rojec­,z �Visualization: Can write• �˙�˙ω = φ + �θ˙+ ψ �˙�˙�˙But φ,θ,ψ do not form a mutualorthogonal triadNeed to form the orthogonal ptions onto the body frame x, y⎡ ⎤ ⎡⎤ ⎡⎤⎡⎤ ωx 00 φ˙ωb = ⎣ ωy ⎦ = T 1(φ)T 2(θ) ⎣ 0 ⎦ + T 1(φ) ⎣ θ˙⎦ + ⎣ 0 ⎦ ωz ψ˙00Final form• ˙ωx = φ− ψ˙sin θ ˙ωy = θ˙cos φ + ψ cos θ sin φ ˙ωz = −θ˙sin φ + ψ cos θ cos φ With inverse:• φ˙= ωx +[ωy sin φ + ωz cos φ]tan θ θ˙= ωy cos φ − ωz sin φ ψ˙=[ωy sin φ + ωz cos φ]sec θ• Need to watch for singularities at θ= ±90◦|| If we limit• ψ ≤ 2π0 ≤ππ θ− 2 ≤≤ 2 φ< 2π0 ≤ then any possible orientation of the body can be obtained by per­forming the appropriate rotations in the order given.• These are a pretty standard set of Euler angles� � � � � � Fall 2004 16.333 3–6 Quaternions • Theorem by Euler states that any given sequence of rotations can be represented as a single rotation about a single fixed axis• Quaterions provide a convenient parameterization of this effective axis and the rotation angle ⎤ ⎡ ⎢⎢⎢⎣ b 1 b 2 b 3 ⎥⎥⎥⎦ E sin ζ/2 cos ζ/2 b = = b 4where E is a unit vector and ζ is a positive rotation about E Notes:• – �b � =1 and thus there are only 3 degrees of freedom in this formulation as well– If b represents the rotational transformation from the reference frame a to reference frame b , the frame a is aligned with frame b when frame a is rotated by ζ radians about E• In terms of the Euler Angles:sin θ −2(b 2b 4 + b 1b 3)= φ = arctan 2 1 + b 22(b 2b 3 − b 1b 4), 1 − 2(b 22) 2 + b 2ψ = arctan 2 2(b 1b 2 − b 3b 4), 1 − 2(b 23)Pros:• – Singularity free; Computationally efficient to do state propagation in time compared to Euler AnglesCons:• – Far less intuitive ­less appealing• Refs: Kuipers, Quaternions and rotation sequences , 1999 Princeton University Press.。

Motion control of robot manipulators


Figure 1: Puma Robot Manipulator Robot manipulators are basically multi{degree{of{freedom positioning devices. The robot, as the \plant to be controlled", is a multi{input/multi{output, highly coupled, nonlinear mechatronic system. The main challenges in the motion control problem are the complexity of the dynamics, and uncertainties, both parametric and dynamic. Parametric uncertainties arise from imprecise 1
Motion Control of Robot Manipulators
Mark W. Spong The Coordinated Science Laboratory, University of Illinois at Urbana{Champaign, 1308 W. Main St., Urbana, Ill. 61801 USA.
1.2 Kinematics
Kinematics refers to the geometric relationship between the motion of the robot in Joint Space and the motion of the end{e ector in Task Space without consideration of the forces that produce the motion. The Forward Kinematics Problem is to determine the mapping
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Abstract We present the three main mathematical constructs used to represent the attitude of a rigid body in threedimensional space. These are (1) the rotation matrix, (2) a triple of Euler angles, and (3) the unit quaternion. To these we add a fourth, the rotation vector, which has many of the benefits of both Euler angles and quaternions, but neither the singularities of the former, nor the quadratic constraint of the latter. There are several other subsidiary representations, such as Cayley-Klein parameters and the axis-angle representation, whose relations to the three main representations are also described. Our exposition is catered to those who seek a thorough and unified reference on the whole subject; detailed derivations of some results are not presented. Keywords–Euler angles, quaternion, Euler-Rodrigues parameters, Cayley-Klein parameters, rotation matrix, direction cosine matrix, transformation matrix, Cardan angles, Tait-Bryan angles, nautical angles, rotation vector, orientation, attitude, roll, pitch, yaw, bank, heading, spin, nutation, precession, Slerp
3 Kinematics 3.1 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2 Motion of a Fixed Point on a Rigid Body . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Motion of a Particle in a Moving Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Finite Difference Approximations 5 Euler Angles 5.1 Rotation Sequence . . . . . . . . . . . . . . . . . . 5.2 Euler Angle Rates and Angular Velocity . . . . . . 5.3 Linearization . . . . . . . . . . . . . . . . . . . . . 5.4 Valid Rotation Sequences . . . . . . . . . . . . . . 5.5 Euler Angle Sequence (3,1,3) . . . . . . . . . . . . 5.5.1 Usage . . . . . . . . . . . . . . . . . . . . . 5.5.2 Euler Angles ⇒ Rotation Matrix . . . . . . 5.5.3 Euler Angles ⇐ Rotation Matrix . . . . . . 5.5.4 Euler Angles ⇒ Euler Angle Rates Matrices 5.5.5 Euler Angles ⇒ Unit Quaternion . . . . . . 5.5.6 Singularities . . . . . . . . . . . . . . . . . . 5.6 Euler Angle Sequence (1,2,3) . . . . . . . . . . . . 5.6.1 Usage . . . . . . . . . . . . . . . . . . . . . 5.6.2 Euler Angles ⇒ Rotation Matrix . . . . . . 5.6.3 Euler Angles ⇐ Rotation Matrix . . . . . . 5.6.4 Euler Angles ⇒ Euler Angle Rates Matrices 5.6.5 Euler Angles ⇒ Unit Quaternion . . . . . . 5.6.6 Singularities . . . . . . . . . . . . . . . . . . 5.7 Derivatives of Selected Trigonometric Functions . . 5.8 Singularities . . . . . . . . . . . . . . . . . . . . . . 5.9 Intra-Euler-Angle Conversion . . . . . . . . . . . . 5.9.1 Sequence (3,1,3) ⇐ Sequence (1,2,3) . . . . 5.9.2 Sequence (1,2,3) ⇐ Sequence (3,1,3) . . . . 6 Quaternions 6.1 General Quaternions . . . . . . . . . . . . . . 6.2 Quaternion Multiplication . . . . . . . . . . . 6.3 Quaternion ⇒ Quaternion Matrices . . . . . 6.4 Unit Quaternion ⇒ Rotation Matrix . . . . . 6.5 Unit Quaternion ⇐ Rotation Matrix . . . . . 6.6 Quaternion Rates ⇒ Angular Velocity . . . . 6.7 Quaternion Rates ⇐ Angular Velocity . . . . 6.8 Quaternion Rates ⇒ Angular Acceleration . . 6.9 Quaternion Rates ⇐ Angular Acceleration . . 6.10 Unit Quaternion ⇐ Cayley-Klein Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1
Contents
1 Introduction 1.1 Overview of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Sources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Coordinate Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Rotation Matrix 2.1 Coordinate Transformations . . 2.2 Transformation Matrix . . . . . 2.3 Pose of a Rigid Body . . . . . . 2.4 Coordinate Rotations . . . . . 2.5 Direction Cosine Matrix . . . . 2.6 Basis Vectors . . . . . . . . . . 2.7 Rotation Matrix Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 4 4 4 5 5 5 5 5 6 6 6 6 7 7 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 7 9 9 9 10 10 10 10 10 11 11 11 11 11 12 12 12 13 13 13 13 13 13 14 14 14 14 15 15 16 16 16 16 16
相关文档
最新文档