发明名称 一种星敏感器六自由度像平面误差的在轨标定方法
摘要 一种星敏感器六自由度像平面误差的在轨标定方法,它涉及一种星敏感器六自由度像平面误差的在轨标定方法,本发明是要解决现有星敏感器由于像平面误差引起卫星姿态确定产生较大误差的问题。本发明方法通过如下步骤来实现:星敏感器对目标恒星成像;引入六自由度像平面误差模型中的误差系数及误差校正公式;将误差校正后的目标恒星的成像点坐标转化为目标恒星在星敏感器坐标系下的单位方向矢量;得到目标恒星在惯性系下的单位方向矢量;计算num颗目标恒星相互之间的星角距及其对星敏感器六自由度像平面误差系数的导数,得到中间计算矩阵;对估计误差方差矩阵进行迭代计算得到真实的星敏感器六自由度像平面误差系数。本发明用于卫星姿态确定技术领域。
申请公布号 CN103438907B 申请公布日期 2016.01.20
申请号 CN201310412842.3 申请日期 2013.09.11
申请人 哈尔滨工业大学 发明人 孙亚辉;耿云海;胡芳芳;方向;肖盈莹;李诚良
分类号 G01C25/00(2006.01)I;G01C21/02(2006.01)I 主分类号 G01C25/00(2006.01)I
代理机构 哈尔滨市松花江专利商标事务所 23109 代理人 杨立超
主权项 一种星敏感器六自由度像平面误差的在轨标定方法,其特征在于它是通过以下步骤实现的:步骤一、星敏感器对目标恒星成像得到星敏感器坐标系下的成像点坐标;步骤二、引入星敏感器六自由度像平面误差模型中的误差系数及误差校正公式;步骤三、将误差校正后的目标恒星的成像点坐标转化为目标恒星在星敏感器坐标系下的单位方向矢量W;步骤四、将成像所获得的星图与星载计算机存储的星图进行匹配识别目标恒星,得到目标恒星在惯性系下的单位方向矢量为V;步骤五、计算num颗目标恒星相互之间的星角距及其对星敏感器六自由度像平面误差系数的导数,得到中间计算矩阵H;步骤六、根据星敏感器的元器件性能及应用经验给出在轨标定过程的系统噪声方差阵Q<sup>w</sup>、测量噪声方差阵Q<sup>v</sup>、初始的估计误差方差矩阵P(0)及星敏感器六自由度像平面误差系数与估计的误差系数之间差值的初始值<img file="FDA0000752250340000011.GIF" wi="131" he="106" />通过对估计误差方差矩阵P进行迭代计算得到真实的星敏感器六自由度像平面误差系数;步骤一中的星敏感器对目标恒星成像得到星敏感器坐标系下的成像点坐标(x,y,f),其中x,y分别为成像点在x,y方向的坐标大小,f为星敏感器透镜的焦距;步骤二中引入星敏感器六自由度像平面误差模型中的误差系数及误差校正公式,其中星敏感器六自由度像平面误差系数为(a,α,ψ,x<sub>0</sub>,y<sub>0</sub>,f<sub>0</sub>),误差系数的原始大小通过地面实验获得;星敏感器六自由度像平面误差的校正公式为:<maths num="0001" id="cmaths0001"><math><![CDATA[<mfenced open='' close=''><mtable><mtr><mtd><mrow><msup><mi>x</mi><mo>&prime;</mo></msup><mo>=</mo><mfrac><mrow><mi>f</mi><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub></mrow><mrow><mi>f</mi><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub><mo>-</mo><mo>&lsqb;</mo><mo>-</mo><mi>b</mi><mi>sin</mi><mi>&alpha;</mi><mrow><mo>(</mo><mrow><mi>cos</mi><mi>&psi;</mi><mi>x</mi><mo>-</mo><mi>sin</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>+</mo><mi>a</mi><mi>sin</mi><mi>&alpha;</mi><mrow><mo>(</mo><mrow><mi>sin</mi><mi>&psi;</mi><mi>x</mi><mo>+</mo><mi>cos</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mfrac><mo>&times;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mo>{</mo><mo>&lsqb;</mo><mrow><mi>cos</mi><mi>&alpha;</mi><mo>+</mo><msup><mi>a</mi><mn>2</mn></msup><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>cos</mi><mi>&alpha;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo><mo>(</mo><mrow><mi>cos</mi><mi>&psi;</mi><mi>x</mi><mo>-</mo><mi>sin</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo><mo>+</mo><mi>a</mi><mi>b</mi><mrow><mo>(</mo><mn>1</mn><mo>-</mo><mi>cos</mi><mi>&alpha;</mi><mo>)</mo></mrow><mo>(</mo><mrow><mi>sin</mi><mi>&psi;</mi><mi>x</mi><mo>+</mo><mi>cos</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo><mo>}</mo><mo>+</mo><msub><mi>x</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000752250340000012.GIF" wi="1630" he="242" /></maths><maths num="0002" id="cmaths0002"><math><![CDATA[<mfenced open = '' close = ''><mtable><mtr><mtd><mrow><msup><mi>y</mi><mo>&prime;</mo></msup><mo>=</mo><mfrac><mrow><mi>f</mi><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub></mrow><mrow><mi>f</mi><mo>+</mo><msub><mi>f</mi><mn>0</mn></msub><mo>-</mo><mo>&lsqb;</mo><mo>-</mo><mi>b</mi><mi>sin</mi><mi>&alpha;</mi><mrow><mo>(</mo><mrow><mi>cos</mi><mi>&psi;</mi><mi>x</mi><mo>-</mo><mi>sin</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>+</mo><mi>a</mi><mi>sin</mi><mi>&alpha;</mi><mrow><mo>(</mo><mrow><mi>sin</mi><mi>&psi;</mi><mi>x</mi><mo>+</mo><mi>cos</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>&rsqb;</mo></mrow></mfrac><mo>&times;</mo></mrow></mtd></mtr><mtr><mtd><mrow><mo>{</mo><mi>a</mi><mi>b</mi><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>cos</mi><mi>&alpha;</mi></mrow><mo>)</mo></mrow><mrow><mo>(</mo><mrow><mi>cos</mi><mi>&psi;</mi><mi>x</mi><mo>-</mo><mi>sin</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>+</mo><mrow><mo>&lsqb;</mo><mrow><mi>cos</mi><mi>&alpha;</mi><mo>+</mo><msup><mi>b</mi><mn>2</mn></msup><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>cos</mi><mi>&alpha;</mi></mrow><mo>)</mo></mrow></mrow><mo>&rsqb;</mo></mrow><mrow><mo>(</mo><mrow><mi>sin</mi><mi>&psi;</mi><mi>x</mi><mo>+</mo><mi>cos</mi><mi>&psi;</mi><mi>y</mi></mrow><mo>)</mo></mrow><mo>}</mo><mo>+</mo><msub><mi>y</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000752250340000013.GIF" wi="1628" he="241" /></maths>式中(x',y')即为误差校正后的成像点坐标;a为像平面绕像平面坐标系的x‑y轴平面变形的方向矢量,α为像平面绕像平面坐标系的x‑y轴平面的变形角度,ψ为像平面绕像平面坐标系的z轴的变形角度,x<sub>0</sub>为像平面主点在像平面坐标系x方向的变形量,y<sub>0</sub>为像平面主点在像平面坐标系y方向的变形量,f<sub>0</sub>为像平面主点在像平面坐标系z方向的变形量;步骤三中将误差校正后的目标恒星的成像点坐标转化为目标恒星在星敏感器坐标系下的单位方向矢量W,具体表达式如下:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>W</mi><mo>=</mo><mfrac><mn>1</mn><msqrt><mrow><msup><mi>x</mi><msup><mo>&prime;</mo><mn>2</mn></msup></msup><mo>+</mo><msup><mi>y</mi><msup><mo>&prime;</mo><mn>2</mn></msup></msup><mo>+</mo><msup><mrow><mo>(</mo><mi>f</mi><mo>-</mo><msub><mi>f</mi><mn>0</mn></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt></mfrac><mfenced open = '[' close = ']'><mtable><mtr><mtd><mo>-</mo><msup><mi>x</mi><mo>&prime;</mo></msup></mtd></mtr><mtr><mtd><mo>-</mo><msup><mi>y</mi><mo>&prime;</mo></msup></mtd></mtr><mtr><mtd><mi>f</mi><mo>-</mo><msub><mi>f</mi><mn>0</mn></msub></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000752250340000021.GIF" wi="757" he="251" /></maths>步骤四中将成像所获得的星图与星载计算机存储的星图进行匹配识别目标恒星,得到目标恒星的赤经γ与赤纬δ,目标恒星在惯性系下的单位方向矢量为V,V由如下公式计算得到:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mi>V</mi><mo>=</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><mrow><mi>c</mi><mi>o</mi><mi>s</mi><mi>&gamma;</mi><mi>c</mi><mi>o</mi><mi>s</mi><mi>&delta;</mi></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mi>i</mi><mi>n</mi><mi>&gamma;</mi><mi>c</mi><mi>o</mi><mi>s</mi><mi>&delta;</mi></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mi>i</mi><mi>n</mi><mi>&delta;</mi></mrow></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000752250340000022.GIF" wi="383" he="251" /></maths>步骤五中计算num颗目标恒星相互之间的星角距及其对星敏感器六自由度像平面误差系数的导数,得到矩阵H如下所示:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mi>H</mi><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>)</mo></mrow><mo>=</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><mrow><mfrac><mo>&part;</mo><mrow><mo>&part;</mo><mi>a</mi></mrow></mfrac><msup><msub><mi>W</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>W</mi><mn>2</mn></msub></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><mfrac><mo>&part;</mo><mrow><mo>&part;</mo><msub><mi>f</mi><mn>0</mn></msub></mrow></mfrac><msup><msub><mi>W</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>W</mi><mn>2</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mrow></mrow></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mn>...</mn></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd><mtd><mrow></mrow></mtd><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><mfrac><mo>&part;</mo><mrow><mo>&part;</mo><mi>a</mi></mrow></mfrac><msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub></mrow></mtd><mtd><mn>...</mn></mtd><mtd><mrow><mfrac><mo>&part;</mo><mrow><mo>&part;</mo><msub><mi>f</mi><mn>0</mn></msub></mrow></mfrac><msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub></mrow></mtd></mtr></mtable></mfenced><mo>;</mo></mrow>]]></math><img file="FDA0000752250340000023.GIF" wi="1043" he="394" /></maths>其中,H为中间计算矩阵,无实际意义,k表示第k次迭代后的值,<img file="FDA0000752250340000024.GIF" wi="50" he="93" />为星敏感器六自由度像平面误差系数与估计的误差系数之间差值;步骤六中根据星敏感器的元器件性能及应用经验给出在轨标定过程的系统噪声方差阵Q<sup>w</sup>、测量噪声方差阵Q<sup>v</sup>、初始的估计误差方差矩阵P(0)及星敏感器六自由度像平面误差系数与估计的误差系数之间差值的初始值<img file="FDA0000752250340000025.GIF" wi="131" he="95" />根据如下公式对估计误差方差矩阵P进行迭代更新;<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>N</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><msup><mi>H</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><msup><mrow><mo>&lsqb;</mo><mi>H</mi><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><msup><mi>H</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><mo>+</mo><msup><mi>Q</mi><mi>v</mi></msup><mo>&rsqb;</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>;</mo></mrow>]]></math><img file="FDA0000752250340000026.GIF" wi="1413" he="111" /></maths><maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><msup><mi>Q</mi><mi>w</mi></msup><mo>-</mo><mi>N</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&lsqb;</mo><msup><mi>Q</mi><mi>v</mi></msup><mo>+</mo><mi>H</mi><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><msup><mi>H</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>,</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>)</mo></mrow><mo>&rsqb;</mo><msup><mi>N</mi><mi>T</mi></msup><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000752250340000027.GIF" wi="1388" he="84" /></maths>其中N、P为中间计算矩阵,无实际意义;k或k+1表示第k次或k+1次迭代后的值;ξ(k)为第k次迭代后真实的误差系数与估计的误差系数之间差值所组成的矩阵,其具体表示如下:ξ(k)=[Δa Δα Δψ Δx<sub>0</sub> Δy<sub>0</sub> Δf<sub>0</sub>]<sup>T</sup><maths num="0008" id="cmaths0008"><math><![CDATA[<mrow><mover><mi>&xi;</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><mover><mi>&xi;</mi><mo>^</mo></mover><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>+</mo><mi>N</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>&lsqb;</mo><mi>y</mi><mo>(</mo><mi>k</mi><mo>)</mo><mo>-</mo><mi>H</mi><mover><mi>&xi;</mi><mo>^</mo></mover><mo>(</mo><mi>k</mi><mo>)</mo><mo>&rsqb;</mo></mrow>]]></math><img file="FDA0000752250340000028.GIF" wi="765" he="96" /></maths><maths num="0009" id="cmaths0009"><math><![CDATA[<mrow><mi>y</mi><mrow><mo>(</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><mrow><msup><msub><mi>W</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>W</mi><mn>2</mn></msub><mo>-</mo><msup><msub><mi>V</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>V</mi><mn>2</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>W</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub><mo>-</mo><msup><msub><mi>V</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>V</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>W</mi><mn>2</mn></msub><mi>T</mi></msup><msub><mi>W</mi><mn>3</mn></msub><mo>-</mo><msup><msub><mi>V</mi><mn>1</mn></msub><mi>T</mi></msup><msub><mi>V</mi><mn>3</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mrow><msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><msub><mi>W</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub><mo>-</mo><msup><msub><mi>V</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi><mo>-</mo><mn>1</mn></mrow></msub><mi>T</mi></msup><msub><mi>V</mi><mrow><mi>n</mi><mi>u</mi><mi>m</mi></mrow></msub></mrow></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000752250340000031.GIF" wi="710" he="459" /></maths><maths num="0010" id="cmaths0010"><math><![CDATA[<mrow><mfenced open = '[' close = ']'><mtable><mtr><mtd><mi>a</mi></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><msub><mi>f</mi><mn>0</mn></msub></mtd></mtr></mtable></mfenced><mo>=</mo><mi>&xi;</mi><mrow><mo>(</mo><mi>k</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>+</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><mover><mi>a</mi><mo>^</mo></mover></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><mo>.</mo></mtd></mtr><mtr><mtd><msub><mover><mi>f</mi><mo>^</mo></mover><mn>0</mn></msub></mtd></mtr></mtable></mfenced></mrow>]]></math><img file="FDA0000752250340000032.GIF" wi="441" he="250" /></maths>从而得到真实的星敏感器六自由度像平面误差系数即意味着通过上述步骤完成了对星敏感器六自由度像平面误差的在轨标定。
地址 150001 黑龙江省哈尔滨市南岗区西大直街92号