您好,欢迎访问三七文档
四元数齐朋冲四元数的引入•复数的加、乘运算可以表示平面向量的合成、伸缩和旋转变换,这些知识我们已经在中学课程中学过了。那么,很自然的问题就是,在三维,或更高维空间中是否也有复数的类似物?其中的元素还可以像复数域那样做加、减、乘、除运算,并满足通常复数的那些运算律,包括加法和乘法的交换律与结合律、乘法对加法的分配律等待?更进一步,我们是否可以期望用这样的数来表示三维或更高维空间中的伸缩和旋转,就像用复数表示平面向量的伸缩旋转那样方便?•历史上有很多数学家试图寻找过三维的复数,但后来证明这样的三维复数是不存在的。知道了复数不能推广到三维,我们把目光移向四维复数,即四元数。四元数是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的。复数推广到四元数,必须牺牲掉数域的某一条或几条性质,哈密尔顿抛弃了乘法交换律。四元数定义•四元数都是1、i、j和k的线性组合,一般可表示为d+ai+bj+ck,a、b、c、d是实数。•四元数的其它表示方法:1、q=[w,v]其中v=(x,y,z)是矢量,w是标量。2、q=(cosθ/2,(x,y,z)sinθ/2)3、q=[d,a,b,c]T四元数的运算•要把两个四元数相加只需将相类的系数加起来就可以,就像复数一样。至于乘法则可跟随以下的乘数表:1111111111111111wxyzxwzyyzwxzyxw2222zyxw•四元数乘法:q1=(w1,x1,y1,z1)q2=(w2,x2,y2,z2)•q1q2=四元数在姿态运算上的应用•一个单位化的四元数可以描述一个三维旋转的过程。例如:p0以原点为旋转中心,旋转的轴是(α,β,γ)(α^2+β^2+γ^2=1),转θ角的旋转,用四元数表示就是:p1=qp0q-1q=(cos(θ/2);αsin(θ/2),βsin(θ/2),γsin(θ/2))q-1=q*/||q||•四元数的乘法可以表示将多个旋转合并,例如:刚体沿着q1q2q3...qn依次旋转后有•p=qn−1...q3−1q2−1q2−1p′q1q2q3...qn•根据四元数结合律有•p=(qn−1...q3−1q2−1q2−1)p′(q1q2q3...qn)•故(q1q2q3...qn)可表示四元数一系列旋转操作,也可以表示一次四元数旋转操作,也可以表示刚体相对于大地的姿态姿态融合长期融合•长期融合的作用有两个:一、得到初始姿态;二、用直接测量的姿态,纠正陀螺仪积分得出的姿态。•长期融合用到的传感器是加速度计和电子罗盘•假设正确的姿态四元数为Q,那么可以利用四元数旋转将参考坐标系和体坐标系下的向量互相转换,将Eh和Eg转换到体坐标系下BEh=Q×Eh×Q*BEg=Q×Eg×Q*•理论上Bg=BEg,Bh=BEh•即{Q×Eh×Q*-Bh=0},{Q×Eg×Q*-Bg=0}•这两个方程成立,联立这两个方程就可以解得姿态四元数Q。但是,由于各种误差的存在,这个方程组只能找到最优解,找最优解的问题有许多方法可以采用,如[梯度下降][高斯牛顿]快速融合•快速融合主要用到的传感器是陀螺仪•Qdt=qxyz=qzqyqx=)2/sin()2/sin()2/cos()2/cos()2/cos()2/sin()2/sin()2/cos()2/sin()2/cos()2/sin()2/cos()2/sin()2/cos()2/cos()2/cos()2/sin()2/sin()2/sin()2/sin()2/sin()2/(cos)2/(coscos(yaw/2)rollpitchyawrollpitchyawrollpitchyawrollpitchyawrollpitchyawrollpitchyawrollpitchyawrollpitch•因为微分时间内yaw,pitch,roll都为非常小的角度,所以可以有这样的小角近似:sin△=△,cos△=1,上面作完近似后就出来了qdt=(1,roll/2,pitch/2,yaw/2)=(1,gxT/2,gyT/2,gzT/2)•把微分法证明完了以后你会发现,做完小角近似后三个角yaw,pitch,roll在里面地位是一样的,这也刚好对应的它们是同时旋转的,而且还发现了小角度情况下旋转是原来是可以合成的。姿态处理•λ为权值四元数转欧拉角•转换公式四元数作用过程长期融合快速融合起飞前起飞初始姿态姿态融合姿态传递谢谢!
本文标题:四元数简介
链接地址:https://www.777doc.com/doc-5380364 .html