[发明专利]一种采用三阶近似毕卡四元数的四旋翼飞行器姿态获取方法有效

专利信息
申请号: 201510221435.3 申请日: 2015-05-04
公开(公告)号: CN104898681B 公开(公告)日: 2017-07-28
发明(设计)人: 张丹;叶孝璐;肖紫阳 申请(专利权)人: 浙江工业大学
主分类号: G05D1/08 分类号: G05D1/08;G01C21/20;G01C21/16
代理公司: 杭州天正专利事务所有限公司33201 代理人: 王兵,黄美娟
地址: 310014 浙*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 采用 近似 毕卡四元数 四旋翼 飞行器 姿态 获取 方法
【权利要求书】:

1.一种采用三阶近似毕卡四元数的四旋翼飞行器姿态获取方法,包括以下步骤:

步骤1)为了验证算法的可行性,首先建立一个四旋翼飞行器实验平台;将四旋翼飞行器实验平台的硬件系统以3个STM32F103VET6芯片为核心划分为三大部分;

第一部分是主控制器和惯性导航系统的电路设计;主控芯片釆用的是STM32F103VET6芯片,进行姿态获取和姿态控制;惯性导航系统是采集四旋翼飞行器机体的运动状态信息作为控制系统控制的重要信息依据;惯性导航平台的反馈精度直接影响到控制系统的控制精度;惯性导航系统由6轴运动处理组件MPU6050、电子罗盘HMC5883和气压计MS5611组成;

第二部分是由三个子模块组成,其中包括STM32F103VET6芯片,用OV7620数字摄像头做图像信息采集的模块和对四旋翼飞行器飞行数据进行处理的信息处理模块;第二部分的STM32F103VET6芯片与第一部分的STM32F103VET6芯片用USART接口进行通信,与第三部分用无线模块进行通信;

第三部分是用STM32芯片设计UC/OSII嵌入式系统下位机,使用蓝牙模块与四旋翼飞行器进行通信,用作人机交互以及图像数据传输的中间站,能够完成四旋翼飞行器各个状态之间的切换以及数据的接收显示;

步骤2)数据的预处理,具体如下:

在四旋翼飞行器的姿态控制中,姿态数据由传感器获取;在进行姿态估计之前,对传感器的原始数据进行预处理:加速度计校准及滤波、陀螺仪静态偏置的计算以及磁力计的偏心矫正及滤波;

(21)加速度计校准及滤波

在使用前对加速度计进行校准,使用时对其进行滤波;这里使用均值滤波及滑动平均滤波的方式对加速度计的测量信息进行处理;

(22)陀螺仪零偏计算

对陀螺仪零偏进行计算并在之后的计算中除去零偏;先将陀螺仪静置,连续读取200次陀螺仪的测量值进行均值滤波,并将其作为陀螺仪的零偏;

(23)磁力计偏心矫正及倾斜补偿

对磁力计测量值进行偏心校正;步骤为:

a.将磁力计水平旋转360度计算其X轴与Y轴最大值与最小值,由此计算修正增益XS与YS,修正偏置Xb与Yb

这里以X轴为基准,令XS=1;

<mrow><msub><mi>Y</mi><mi>s</mi></msub><mo>=</mo><mfrac><mrow><mo>(</mo><msub><mi>X</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>X</mi><mi>min</mi></msub><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>Y</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>Y</mi><mi>min</mi></msub><mo>)</mo></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow></mrow>

<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>X</mi><mi>b</mi></msub><mo>=</mo><msub><mi>X</mi><mi>s</mi></msub><mo>&lsqb;</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><msub><mi>X</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>X</mi><mi>min</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>X</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>&rsqb;</mo></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>Y</mi><mi>b</mi></msub><mo>=</mo><msub><mi>Y</mi><mi>s</mi></msub><mo>&lsqb;</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><msub><mi>Y</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>-</mo><msub><mi>Y</mi><mi>min</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>Y</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub><mo>&rsqb;</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>16</mn><mo>)</mo></mrow></mrow>

b.Xin、Yin和Zin为磁力计的测量输出值,通过修正增益与修正偏置计算磁力计的修正值Xout和Yout

<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>X</mi><mrow><mi>o</mi><mi>u</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>X</mi><mi>s</mi></msub><mo>&times;</mo><msub><mi>X</mi><mrow><mi>i</mi><mi>n</mi></mrow></msub><mo>+</mo><msub><mi>X</mi><mi>b</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>Y</mi><mrow><mi>o</mi><mi>u</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>Y</mi><mi>s</mi></msub><mo>&times;</mo><msub><mi>Y</mi><mrow><mi>i</mi><mi>n</mi></mrow></msub><mo>+</mo><msub><mi>Y</mi><mi>b</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>17</mn><mo>)</mo></mrow></mrow>

c.同样以X轴为基准,对Z轴进行矫正,最终得到三个轴的修正值Xout、Yout和Zout

<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>X</mi><mrow><mi>o</mi><mi>u</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>X</mi><mi>s</mi></msub><mo>&times;</mo><msub><mi>X</mi><mrow><mi>i</mi><mi>n</mi></mrow></msub><mo>+</mo><msub><mi>X</mi><mi>b</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>Y</mi><mrow><mi>o</mi><mi>u</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>Y</mi><mi>s</mi></msub><mo>&times;</mo><msub><mi>Y</mi><mrow><mi>i</mi><mi>n</mi></mrow></msub><mo>+</mo><msub><mi>Y</mi><mi>b</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>Z</mi><mrow><mi>o</mi><mi>u</mi><mi>t</mi></mrow></msub><mo>=</mo><msub><mi>Z</mi><mi>s</mi></msub><mo>&times;</mo><msub><mi>Z</mi><mrow><mi>i</mi><mi>n</mi></mrow></msub><mo>+</mo><msub><mi>Z</mi><mi>b</mi></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>18</mn><mo>)</mo></mrow></mrow>

步骤3)设计基于毕卡四元数的四旋翼飞行器姿态获取,过程包括:

设由四旋翼的机体轴确定的坐标系为b,地面坐标系为n,则由b系到n系的坐标矩阵称为四旋翼的姿态矩阵,θ、γ、分别为四旋翼飞行器的俯仰、横滚、偏航角,加速度计输出的原始值为速度的增量即abx、aby、abz,陀螺仪计输出的原始值为角增量即gbx、gby、gbz,磁力计的测量值mbx、mby、mbz

(31)欧拉角初始化

(32)毕卡四元数初始值的确定及规范化处理

四旋翼飞行器的毕卡四元数的初始值Q(0)由捷联系统的初值状态对准确定;设初始对准的姿态阵为将式(1)的计算结果代入式(3),得出式(2)的初始姿态角;

<mrow><msubsup><mi>C</mi><mrow><mi>b</mi><mn>0</mn></mrow><mi>n</mi></msubsup><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><msub><mi>c</mi><mn>11</mn></msub></mtd><mtd><msub><mi>c</mi><mn>12</mn></msub></mtd><mtd><msub><mi>c</mi><mn>13</mn></msub></mtd></mtr><mtr><mtd><msub><mi>c</mi><mn>21</mn></msub></mtd><mtd><msub><mi>c</mi><mn>22</mn></msub></mtd><mtd><msub><mi>c</mi><mn>23</mn></msub></mtd></mtr><mtr><mtd><msub><mi>c</mi><mn>31</mn></msub></mtd><mtd><msub><mi>c</mi><mn>32</mn></msub></mtd><mtd><msub><mi>c</mi><mn>33</mn></msub></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>

其中,c11、c12、c13、c21、c22、c23、c31、c32、c33分别为

则四旋翼飞行器的毕卡四元数的初始值为:

<mrow><mi>Q</mi><mrow><mo>(</mo><mn>0</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>q</mi><mn>0</mn></msub><mo>+</mo><msub><mi>q</mi><mn>1</mn></msub><mover><mi>i</mi><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>q</mi><mn>2</mn></msub><mover><mi>j</mi><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>q</mi><mn>3</mn></msub><mover><mi>k</mi><mo>&RightArrow;</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>

其中,q0、q1、q2、q3的数值和符号可按下式(5)和(6)确定;

<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mo>|</mo><msub><mi>q</mi><mn>1</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>+</mo><msub><mi>c</mi><mn>11</mn></msub><mo>-</mo><msub><mi>c</mi><mn>22</mn></msub><mo>-</mo><msub><mi>c</mi><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mi>q</mi><mn>2</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>-</mo><msub><mi>c</mi><mn>11</mn></msub><mo>+</mo><msub><mi>c</mi><mn>22</mn></msub><mo>-</mo><msub><mi>c</mi><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mi>q</mi><mn>3</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>-</mo><msub><mi>c</mi><mn>11</mn></msub><mo>-</mo><msub><mi>c</mi><mn>22</mn></msub><mo>-</mo><msub><mi>c</mi><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mi>q</mi><mn>0</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>+</mo><msub><mi>c</mi><mn>11</mn></msub><mo>+</mo><msub><mi>c</mi><mn>22</mn></msub><mo>+</mo><msub><mi>c</mi><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>

<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>=</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>&lsqb;</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>c</mi><mn>32</mn></msub><mo>-</mo><msub><mi>c</mi><mn>23</mn></msub><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>&lsqb;</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>c</mi><mn>13</mn></msub><mo>-</mo><msub><mi>c</mi><mn>31</mn></msub><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>3</mn></msub><mo>)</mo></mrow><mo>=</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>q</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>&lsqb;</mo><mi>s</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><msub><mi>c</mi><mn>21</mn></msub><mo>-</mo><msub><mi>c</mi><mn>12</mn></msub><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>

上式中,sign(q0)可任选,因为毕卡四元数表征刚体从初始位置到最终位置的一次性等效旋转,并不反应从初始位置到最终位置的中间过程;

(33)毕卡四元数和姿态角的换算

四旋翼飞行器的毕卡四元数矢量式为

<mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>q</mi><mn>0</mn></msub><mo>+</mo><msub><mi>q</mi><mn>1</mn></msub><mover><mi>i</mi><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>q</mi><mn>2</mn></msub><mover><mi>j</mi><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>q</mi><mn>3</mn></msub><mover><mi>k</mi><mo>&RightArrow;</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>

毕卡四元数可确定出由四旋翼的机体轴坐标b系到地面坐标n系的变换坐标矩阵

<mrow><msubsup><mi>C</mi><mi>b</mi><mi>n</mi></msubsup><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><mn>1</mn><mo>-</mo><mn>2</mn><mrow><mo>(</mo><msup><msub><mi>q</mi><mn>2</mn></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>q</mi><mn>3</mn></msub><mn>2</mn></msup><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>1</mn></msub><msub><mi>q</mi><mn>2</mn></msub><mo>-</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>1</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>+</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>1</mn></msub><msub><mi>q</mi><mn>2</mn></msub><mo>+</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>1</mn><mo>-</mo><mn>2</mn><mrow><mo>(</mo><msup><msub><mi>q</mi><mn>1</mn></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>q</mi><mn>3</mn></msub><mn>2</mn></msup><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>2</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>-</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>1</mn></msub><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>1</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>-</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>2</mn><mrow><mo>(</mo><msub><mi>q</mi><mn>2</mn></msub><msub><mi>q</mi><mn>3</mn></msub><mo>+</mo><msub><mi>q</mi><mn>0</mn></msub><msub><mi>q</mi><mn>1</mn></msub><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mn>1</mn><mo>-</mo><mn>2</mn><mrow><mo>(</mo><msup><msub><mi>q</mi><mn>1</mn></msub><mn>2</mn></msup><mo>+</mo><msup><msub><mi>q</mi><mn>2</mn></msub><mn>2</mn></msup><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>

由变换坐标矩阵可得四旋翼飞行器的姿态角为

(34)更新毕卡四元数

在捷联式惯性导航系统中,陀螺仪的输出值是等时间采样周期内的角增量,直接采用角增量来确定毕卡四元数;即毕卡四元数算法;

<mrow><mfrac><mrow><mi>d</mi><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow></mrow><mrow><mi>d</mi><mi>t</mi></mrow></mfrac><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>&CircleTimes;</mo><mi>&omega;</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mi>M</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><mi>&omega;</mi><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo><mo>)</mo></mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>10</mn><mo>)</mo></mrow></mrow>

其中,表示毕卡四元数乘法,其等效的换算矩阵为

<mrow><msup><mi>M</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><mi>&omega;</mi><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo><mo>)</mo></mrow><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mn>0</mn></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>x</mi></msub></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>y</mi></msub></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>z</mi></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>&omega;</mi><mi>x</mi></msub></mtd><mtd><mn>0</mn></mtd><mtd><msub><mi>&omega;</mi><mi>z</mi></msub></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>y</mi></msub></mrow></mtd></mtr><mtr><mtd><msub><mi>&omega;</mi><mi>y</mi></msub></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>z</mi></msub></mrow></mtd><mtd><mn>0</mn></mtd><mtd><msub><mi>&omega;</mi><mi>x</mi></msub></mtd></mtr><mtr><mtd><msub><mi>&omega;</mi><mi>z</mi></msub></mtd><mtd><msub><mi>&omega;</mi><mi>y</mi></msub></mtd><mtd><mrow><mo>-</mo><msub><mi>&omega;</mi><mi>x</mi></msub></mrow></mtd><mtd><mn>0</mn></mtd></mtr></mtable></mfenced></mrow>

求解式(10)的微分方程可得

<mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mo>=</mo><msup><mi>e</mi><mrow><mfrac><mn>1</mn><mn>2</mn></mfrac><msubsup><mo>&Integral;</mo><msub><mi>t</mi><mi>k</mi></msub><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub></msubsup><msup><mi>M</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><mi>&omega;</mi><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo><mo>)</mo></mrow><mi>d</mi><mi>t</mi></mrow></msup><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>11</mn><mo>)</mo></mrow></mrow>

进一步,

<mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mo>=</mo><msup><mi>e</mi><mrow><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>&Delta;</mi><mi>&Theta;</mi><mi>d</mi><mi>t</mi></mrow></msup><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>12</mn><mo>)</mo></mrow></mrow>

其中,

对式(12)进行泰勒级数展开可得

<mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><mi>I</mi><mo>+</mo><mfrac><mrow><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>&Delta;</mi><mi>&Theta;</mi></mrow><mrow><mn>1</mn><mo>!</mo></mrow></mfrac><mo>+</mo><mfrac><msup><mrow><mo>(</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mi>&Delta;</mi><mi>&Theta;</mi><mo>)</mo></mrow><mn>2</mn></msup><mrow><mn>2</mn><mo>!</mo></mrow></mfrac><mo>+</mo><mo>...</mo><mo>&rsqb;</mo><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>13</mn><mo>)</mo></mrow></mrow>

取三阶近似毕卡四元数算法,毕卡四元数求解如下:

<mrow><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>)</mo></mrow><mo>=</mo><mo>&lsqb;</mo><mi>I</mi><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mfrac><mrow><msup><mi>&Delta;&theta;</mi><mn>2</mn></msup></mrow><mn>8</mn></mfrac><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mo>-</mo><mfrac><mrow><msup><mi>&Delta;&theta;</mi><mn>2</mn></msup></mrow><mn>48</mn></mfrac><mo>)</mo></mrow><mi>&Delta;</mi><mi>&Theta;</mi><mo>&rsqb;</mo><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow></mrow>

其中,Δθ2=gbx2+gby2+gbz2

(4)卡尔曼滤波,根据步骤3)中的姿态获取结果,通过加速计和陀螺仪得到的姿态角信息,最后基于卡尔曼进行数据融合得到最终输出的姿态角。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江工业大学,未经浙江工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510221435.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top