发明名称 基于互补重构技术的多传感器姿态融合方法
摘要 基于互补重构技术的多传感器姿态融合方法,主要包括:四元素迭代更新及载体姿态计算,多传感器载体姿态观测及四元素观测值计算;互补重构参数估计;互补重构四元素值计算等四个步骤。其主要优点:利用四元素观测值修正上一时刻四元素计算值,从而获得互补重构的四元素值,并利用此值进行当前时刻的四元素迭代更新,从机理上消除了算法的累积误差;同时将四元素更新算法和重构算法合二为一,提高了算法的执行效率。
申请公布号 CN104101345B 申请公布日期 2017.02.01
申请号 CN201410247629.6 申请日期 2014.06.05
申请人 杭州师范大学 发明人 董利达;尹俊;迟天阳;管林波
分类号 G01C21/20(2006.01)I 主分类号 G01C21/20(2006.01)I
代理机构 杭州天正专利事务所有限公司 33201 代理人 黄美娟;王兵
主权项 基于互补重构技术的多传感器姿态融合方法,包括以下步骤:1)、利用陀螺仪传感器的数据,根据旋转矢量算法计算四元素更新矩阵M'[q(h)],并根据下式:Q(t<sub>k</sub>)=M'[q(h)]·Q'(t<sub>k‑1</sub>)更新四元素迭代值Q(t<sub>k</sub>),式中Q(t<sub>k</sub>)为当前时刻四元素迭代值,M'[q(h)]为四元素更新矩阵,Q'(t<sub>k‑1</sub>)为上一时刻四元素重构值;根据更新后的四元素迭代值Q(t<sub>k</sub>),计算得到载体姿态信息,分别是航向角<img file="FDA0001082738280000011.GIF" wi="66" he="46" />俯仰角θ以及横滚角γ;2)、利用观测传感器数据,计算载体姿态信息的观测值,分别是航向角<img file="FDA0001082738280000012.GIF" wi="59" he="60" />俯仰角<img file="FDA0001082738280000013.GIF" wi="35" he="62" />以及横滚角<img file="FDA0001082738280000014.GIF" wi="51" he="62" />并进一步计算姿态四元素的观测值<img file="FDA0001082738280000015.GIF" wi="136" he="71" />3)、利用不同传感器的数据,判断和估计载体的运动状态,计算数据融合的互补重构参数α=g(x<sub>1</sub>,x<sub>2</sub>,x<sub>3</sub>,...),其中x<sub>1</sub>,x<sub>2</sub>,x<sub>3</sub>,...为各个传感器的数据;4)、根据步骤3)中的数据融合的互补重构参数α,对步骤1)中得到的Q(t<sub>k</sub>)和步骤2)中得到的<img file="FDA0001082738280000016.GIF" wi="110" he="78" />进行数据融合,重构载体姿态四元素Q'(t<sub>k</sub>),其表达式为<img file="FDA0001082738280000017.GIF" wi="523" he="71" />并对其进行标准化处理后用于下一次迭代更新,并返回步骤1);在步骤1)计算载体的姿态信息时,使用了旋转矢量算法对载体姿态信息进行了迭代更新,步骤1)中的载体的姿态信息的计算包括以下步骤:(1.1)获取陀螺仪传感器的数据,并对其进行直流偏置修正处理;先预先采样若干次计算其均值作为三轴角速率的偏置值,再分别以三轴角速率的陀螺仪当前采样值减去该偏置值作为修正后的三轴角速率的输出值;(1.2)根据所述步骤(1.1)中获得的陀螺仪传感器的数据计算四元素更新矩阵M'[q(h)];<maths num="0001"><math><![CDATA[<mrow><msup><mi>M</mi><mo>&prime;</mo></msup><mo>&lsqb;</mo><mi>q</mi><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow><mo>&rsqb;</mo><mo>=</mo><mfenced open = "[" close = "]"><mtable><mtr><mtd><mrow><msub><mi>q</mi><mn>0</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>3</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>q</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>0</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>3</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>q</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>3</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>0</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>q</mi><mn>3</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><mo>-</mo><msub><mi>q</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>q</mi><mn>0</mn></msub><mrow><mo>(</mo><mi>h</mi><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0001082738280000018.GIF" wi="932" he="295" /></maths>其中<img file="FDA0001082738280000019.GIF" wi="1582" he="127" />Φ(h)为前一次采样时刻和当前采样时刻[t<sub>k</sub>,t<sub>k+1</sub>]时间段内的等效旋转矢量,Φ<sub>x</sub>(h),Φ<sub>y</sub>(h),Φ<sub>z</sub>(h)为旋转矢量三轴的分量;(1.3)根据步骤4)中互补重构后的四元素值Q'(t<sub>k‑1</sub>),按照下式更新四元素的值:Q(t<sub>k</sub>)=M'[q(h)]·Q'(t<sub>k‑1</sub>)其中,Q'(t<sub>0</sub>)为给定的四元素初始值;(1.4)根据更新后的四元素迭代值Q(t<sub>k</sub>),按照下式计算载体姿态信息,分别是航向角<img file="FDA0001082738280000026.GIF" wi="64" he="48" />俯仰角θ以及横滚角γ:<img file="FDA0001082738280000021.GIF" wi="678" he="366" />其中,q<sub>0</sub>,q<sub>1</sub>,q<sub>2</sub>,q<sub>3</sub>为四元素迭代值Q(t<sub>k</sub>)的分量;在所述步骤2)计算载体的姿态信息观测值时,使用观测传感器的信息进行载体姿态信息观测值的计算,并根据载体姿态信息观测值计算得到四元素的观测值<img file="FDA0001082738280000027.GIF" wi="138" he="74" />步骤2)中的载体的姿态信息观测值的计算包括以下步骤:(2.1)获取加速度传感器的数据a<sub>x_org</sub>,a<sub>y_org</sub>,a<sub>z_org</sub>,进行直流偏置修正;首先采样若干次计算其均值作为三轴加速度的偏置值,再分别以三轴加速度的当前采样值减去该偏置值作为修正后的三轴加速度输出值;(2.2)根据力学原理计算静态情况下的观测传感器包含的载体姿态信息,其中<img file="FDA0001082738280000022.GIF" wi="606" he="126" />对上述载体姿态信息进行滤波,获得加速度传感器包含的载体姿态信息<img file="FDA0001082738280000023.GIF" wi="106" he="71" />同时获取磁阻传感器数据,数据处理后得到载体航向角信息<img file="FDA0001082738280000024.GIF" wi="59" he="62" />(2.3)根据所述步骤(2.2)中载体姿态信息的观测值<img file="FDA0001082738280000025.GIF" wi="155" he="71" />计算载体姿态矩阵元素的观测值,具体计算公式如下:<img file="FDA0001082738280000031.GIF" wi="750" he="791" />(2.4)根据所述步骤(2.3)中载体姿态矩阵元素的观测值计算载体姿态四元素的观测值<img file="FDA0001082738280000032.GIF" wi="108" he="71" />的各个分量,具体计算公式如下:<maths num="0002"><math><![CDATA[<mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mo>|</mo><msub><mover><mi>q</mi><mo>^</mo></mover><mn>0</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>11</mn></msub><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>22</mn></msub><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mover><mi>q</mi><mo>^</mo></mover><mn>1</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>11</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>22</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mover><mi>q</mi><mo>^</mo></mover><mn>2</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>11</mn></msub><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>22</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><msub><mover><mi>q</mi><mo>^</mo></mover><mn>3</mn></msub><mo>|</mo><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msqrt><mrow><mn>1</mn><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>11</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>22</mn></msub><mo>+</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>33</mn></msub></mrow></msqrt></mrow></mtd></mtr><mtr><mtd><mrow><mn>4</mn><msub><mover><mi>q</mi><mo>^</mo></mover><mn>0</mn></msub><msub><mover><mi>q</mi><mo>^</mo></mover><mn>1</mn></msub><mo>=</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>32</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>23</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><mn>4</mn><msub><mover><mi>q</mi><mo>^</mo></mover><mn>0</mn></msub><msub><mover><mi>q</mi><mo>^</mo></mover><mn>2</mn></msub><mo>=</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>13</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>31</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><mn>4</mn><msub><mover><mi>q</mi><mo>^</mo></mover><mn>0</mn></msub><msub><mover><mi>q</mi><mo>^</mo></mover><mn>3</mn></msub><mo>=</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>21</mn></msub><mo>-</mo><msub><mover><mi>T</mi><mo>^</mo></mover><mn>12</mn></msub></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0001082738280000033.GIF" wi="542" he="790" /></maths>其中,<img file="FDA0001082738280000034.GIF" wi="181" he="63" />的符号由式<img file="FDA0001082738280000035.GIF" wi="707" he="260" />确定,<img file="FDA0001082738280000036.GIF" wi="46" he="62" />的符号可任取;步骤3)根据多传感器的数据,构造并计算得出表征载体运动状态信息的互补重构参数α,α的值表示载体的运动状态,α→1则表明载体的运动比较剧烈可认为载体处在高速运动状态,α→0则表明载体运动不剧烈,可以认为载体趋于静止状态;步骤3)中的计算表征载体运动状态的互补重构参数α包含以下步骤:(3.1)数据获取单元获得陀螺仪传感器的数据ω<sub>x</sub>,ω<sub>y</sub>,ω<sub>z</sub>,再获得加速度传感器的数据a<sub>x</sub>,a<sub>y</sub>,并进行数据处理,由于a<sub>z</sub>在重力方向有一个常值,因此a<sub>z</sub>的值不能作为判断载体运行状态的数据;(3.2)参数计算单元计算互补重构参数α=max/(max+1),x<sub>1</sub>,x<sub>2</sub>,x<sub>3</sub>,...为各传感器数据;其中,max是集合{K<sub>ω</sub>·|ω<sub>x</sub>|,K<sub>ω</sub>·|ω<sub>y</sub>|,K<sub>ω</sub>·|ω<sub>z</sub>|,K<sub>a</sub>·|a<sub>x</sub>|,K<sub>a</sub>·|a<sub>y</sub>|}的最大值,其中<img file="FDA0001082738280000041.GIF" wi="542" he="135" />ω<sub>S_max</sub>,a<sub>S_max</sub>分别为陀螺仪和加速度传感器静态测得的最大读数;步骤4)对载体的四元素迭代值Q(t<sub>k</sub>)和姿态四元素观测值<img file="FDA0001082738280000042.GIF" wi="111" he="71" />进行融合时,考虑了载体运动状态信息,利用互补重构参数α融合计算值和观测值得到新的载体姿态四元素,融合公式如下所示:<maths num="0003"><math><![CDATA[<mrow><msup><mi>Q</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>=</mo><mi>&alpha;</mi><mo>&CenterDot;</mo><mi>Q</mi><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow><mo>+</mo><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>&alpha;</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mover><mi>Q</mi><mo>^</mo></mover><mrow><mo>(</mo><msub><mi>t</mi><mi>k</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001082738280000043.GIF" wi="630" he="71" /></maths>并对融合后的载体姿态四元素进行标准归一化处理。
地址 310036 浙江省杭州市下沙高教园区学林街16号