• 课题学习(四)----四元数解法


    一、四元数解法

      为了求解惯性导航的力学方程,姿态矩阵 R b b R^b_{b} Rbb可以有姿态微分方程得到。其中,四元数是常用的方法,如下图所示,假设刚体在原点旋转,根据欧拉定理,运动坐标系(b系列)相对于导航坐标系(n系列)的方向,相当于b系绕等效轴旋转一个角度Θ。
    在这里插入图片描述
      用四元数 Q = [ q 1 q 2 q 3 q 4 ] T Q=[q1q2q3q4]^T Q=[q1q2q3q4]T来描述b系统相对于n系统的旋转。定义如下:
    Q = [ q 1 q 2 q 3 q 4 ] = [ ( Θ x / Θ ) s i n ( Θ / 2 ) ( Θ y / Θ ) s i n ( Θ / 2 ) ( Θ z / Θ ) s i n ( Θ / 2 ) c o s ( Θ / 2 ) ] Q = [q1q2q3q4] = [(Θx/Θ)sin(Θ/2)(Θy/Θ)sin(Θ/2)(Θz/Θ)sin(Θ/2)cos(Θ/2)] Q= q1q2q3q4 = (Θx)sin(Θ/2)(Θy)sin(Θ/2)(Θz)sin(Θ/2)cos(Θ/2)
      其中, Θ = Θ x 2 + Θ y 2 + Θ z 2 Θ = \sqrt{Θ^2_{x}+Θ^2_{y}+Θ^2_{z}} Θ=Θx2+Θy2+Θz2 , Θ x / Θ , Θ y / Θ , Θ z / Θ Θ_{x}/Θ,Θ_{y}/Θ,Θ_{z}/Θ Θx,Θy,Θz是n坐标系中的方向余弦。
      从四元数的定义来看, q 1 2 + q 2 2 + q 3 2 + q 4 2 = 1 q^2_{1}+q^2_{2}+q^2_{3}+q^2_{4}=1 q12+q22+q32+q42=1,四元数的分量不是相互独立的,只需要三个独立的四元数分量来描述坐标轴的旋转。然而,通常存在计算误差,定义为 Δ = 1 − q 1 2 + q 2 2 + q 3 2 + q 4 2 Δ = 1-q^2_{1}+q^2_{2}+q^2_{3}+q^2_{4} Δ=1q12+q22+q32+q42。为了纠正这一错误,每次计算后都需要将向量形式的四元数Q更新为以下公式:
    在这里插入图片描述
      用一阶微分方程描述四元数的时域变化:在这里插入图片描述
    在这里插入图片描述
      其中, w x , w y , w z w_{x},w_{y},w_{z} wx,wy,wz是载体的角速度。
      求解一阶微分方程,根据tk时刻的Qk,求出tk + 1时刻的Qk + 1,如下所示:在这里插入图片描述
      当时刻tk,四元数确定时, R b n R^n_{b} Rbn可直接由下式确定:
    R b n = [ R 11 R 12 R 13 R 21 R 22 R 23 R 31 R 32 R 33 ] R^n_{b} = [R11R12R13R21R22R23R31R32R33] Rbn= R11R21R31R12R22R32R13R23R33
    = [ q 1 2 − q 2 2 − q 3 2 + q 4 2 2 ( q 1 q 2 − q 3 q 4 ) 2 ( q 1 q 2 + q 3 q 4 ) 2 ( q 1 q 2 + q 3 q 4 ) − q 1 2 + q 2 2 − q 3 2 + q 4 2 2 ( q 2 q 3 − q 1 q 4 ) 2 ( q 1 q 3 − q 2 q 4 ) 2 ( q 2 q 3 + q 1 q 4 ) − q 1 2 − q 2 2 + q 3 2 + q 4 2 ] =[q21q22q23+q242(q1q2q3q4)2(q1q2+q3q4)2(q1q2+q3q4)q21+q22q23+q242(q2q3q1q4)2(q1q3q2q4)2(q2q3+q1q4)q21q22+q23+q24] = q12q22q32+q422(q1q2+q3q4)2(q1q3q2q4)2(q1q2q3q4)q12+q22q32+q422(q2q3+q1q4)2(q1q2+q3q4)2(q2q3q1q4)q12q22+q32+q42
      得到四元数的更新方程为:
    在这里插入图片描述
      得到倾角θ,工具面φ和方位ψ如下
    θ = a r c t a n ( R 32 R 12 2 + R 22 2 ) θ=arctan(\frac{R_{32}}{\sqrt{R^2_{12}+R^2_{22}}}) θ=arctan(R122+R222 R32)
    ϕ = a r c t a n ( − R 31 R 33 ) \phi=arctan(\frac{-R_{31}}{R_{33}}) ϕ=arctan(R33R31)
    ψ = a r c t a n ( − R 12 R 22 ) \psi=arctan(\frac{-R_{12}}{R_{22}}) ψ=arctan(R22R12)
      进而可得到井斜角 I = 90 − θ I = 90-\theta I=90θ.
      在捷联导航系统中,由于GPS对准,在建立误差模型后,采用卡尔曼滤波方法可以获得准确的载体姿态和位置信息。但在随钻测量中,无法使用GPS信号校正,需要重新建立卡尔曼滤波模型。随钻陀螺测量系统的卡尔曼滤波模型,由于采用了惯性陀螺仪和加速度传感器,其误差模型与航空航天领域捷联导航的卡尔曼滤波误差模型一致。从可靠性的角度来看,目前在钻井测量领域,基于磁的测量系统比陀螺仪系统更具应用优势。然而,由于磁干扰等因素,磁基系统不可能完全完善。未来的发展方向必然是复合模式测量系统,即磁传感器与陀螺仪系统相结合的随钻测量系统。

      剧透一下,后续有时间更新一下LaTex公式吧,最好整理个表格,要不然一个个的公式太麻烦了。

    二、往期回顾

    课题学习(一)----静态测量
    课题学习(二)----倾角和方位角的动态测量方法(基于磁场的测量系统)
    课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)

  • 相关阅读:
    远程工作面试:特殊情况下的面试技巧
    【数据结构】--初始树型结构 二叉树的基本操作模拟实现
    hibernate跨数据库,columnDefinition不可移植性改造方案
    Java开发面试--RabbitMQ专区
    RN:Error: /xxx/android/gradlew exited with non-zero code: 1
    判断是否工作在docker环境
    LeetCode_位运算_递归_中等_779.第K个语法符号
    buildadmin+tp8表格操作(4) Table组件,baTable类和 elementplus中的属性关系
    DOM事件详解(一)
    说一下 ArrayDeque 和 LinkedList 的区别?
  • 原文地址:https://blog.csdn.net/weixin_44412311/article/details/133644152