一种卫星自主姿态确定方法与流程

文档序号:26846353发布日期:2021-10-09 00:33阅读:404来源:国知局
一种卫星自主姿态确定方法与流程

1.本发明涉及航天技术领域。更具体地,涉及一种卫星自主姿态确定方法,计算机设备以及计算机可读存储介质。


背景技术:

2.随着航天事业的推进,航天任务呈现灵活多样性的发展势态,小型卫星具有功能密度大、研制和发射成本低、体积小重量轻、研制周期短、发射手段灵活和易于组网等特点,其空间应用需求日渐增加,市场化及小型化成为卫星未来发展的主流趋势。控制系统作为卫星可靠运行的核心部分,获得较为精准的姿态输入极为重要。
3.为确保卫星任务的可靠执行,卫星通常配备有多种测量敏感器,如星敏感器、太阳敏感器和红外地平仪等。目前,通常采用星敏感器作为姿态确定的主要敏感器,陀螺仪作为基础角速度测量器件,然而星敏不能提供连续的姿态信息,存在由于丢失星图而造成量测不稳定等问题;高精度陀螺则存在结构复杂且重量、体积较大的问题。受小型卫星自身成本、重量等条件的限制,其配备的敏感器均为低成本的中低精度器件。因此,借助中低精度敏感器通过设计实现高性能高可靠性的姿态确定目标,成为小型卫星快速发展的迫切需求。


技术实现要素:

4.本发明的目的在于提供一种卫星自主姿态确定方法。以解决现有技术存在的问题中的至少一个。
5.为达到上述目的,本发明采用下述技术方案:
6.第一方面,本发明提供了一种卫星自主姿态确定方法,包括:
7.s100、通过各敏感器测量信息进行敏感器姿态解算得到姿态信息,其中,各敏感器姿态解算包括陀螺递推姿态解算、双星敏姿态解算、单星敏姿态解算、太敏和地敏双矢量姿态解算、太敏和磁双矢量姿态解算以及地敏和磁双矢量解算;
8.s102、将步骤s100中经陀螺和其他敏感器姿态解算得到的姿态信息进行有效组合完成滤波姿态解算,进一步得到连续的姿态信息,其中,所述滤波姿态解算包括互补滤波姿态解算和扩展卡尔曼滤波姿态解算即ekf姿态解算;
9.s104、制定数据判断选用规则,考虑各敏感器及滤波定姿的精度,设计数据判断流程,在步骤s102的互补滤波姿态解算和ekf姿态解算的结果中选取最优化姿态信息。
10.在一个具体实施方式中,
11.在进行所述敏感器姿态解算时,除陀螺递推姿态解算外,依据优先级仅采用一种姿态解算方法,敏感器优先级依次为双星敏、单星敏、太敏和地敏、太敏和磁,或地敏和磁。
12.在一个具体实施方式中,
13.所述互补滤波算法的算式为:
14.q
err
=q
‑1×
q
t
[0015][0016]
q=q
×
q_tmp
[0017]
式中,q为陀螺递推解算得到的姿态四元数;q
t
为星敏、太敏和地敏、太敏和磁、或地敏和磁解算得到的姿态四元数;q
err
为两者姿态四元数的差值;k为互补滤波增益系数;q_tmp为q
err
的归一化值。
[0018]
在一个具体实施方式中,
[0019]
在进行所述ekf姿态解算时,分为四种ekf模式,包括:星敏+陀螺ekf、太敏和地敏+陀螺ekf、太敏和磁+陀螺ekf、地敏和磁+陀螺ekf,根据滤波有效性判断依据,选择最优滤波方案进行姿态解算到姿态信息。
[0020]
在一个具体实施方式中,所述进行ekf姿态解算的步骤包括:
[0021]
s 1020、确定各敏感器测量模型;
[0022]
s1021、确定各种ekf模式计算方法;
[0023]
s1022、进行ekf有效性判断,根据预定规则判断四种ekf模式的有效性,选取最优项。
[0024]
在一个具体实施方式中,
[0025]
所述预定规则为:判断敏感器失效时长是否超限;若敏感器失效时长未超限,判断ekf是否收敛,如果在一定时间内系统估计均方差阵的范数稳定且小于设定阈值则ekf收敛;若ekf已收敛且星敏感器定姿有效,将ekf结果与星敏感器定姿结果进行比较,误差不超限时认为ekf有效,优先使用滤波结果。
[0026]
在一个具体实施方式中,
[0027]
根据所述数据判断选用规则,经过综合计算得到双星敏定姿精度最优,其次为星敏ekf定姿,之后依次为太敏和地敏ekf定姿、单星敏定姿、太敏和地敏定姿、太敏和磁ekf定姿、地敏和磁ekf定姿、太敏和磁定姿或地敏和磁定姿。
[0028]
在一个具体实施方式中,
[0029]
若判定选用ekf定姿,则将ekf解算得到的角速度信息、姿态信息赋值到系统相应信息,若采用敏感器定姿,则无需使用ekf解算得到的数据;当敏感器定姿无效且ekf尚未收敛时,仍采用ekf解算的姿态信息。
[0030]
第二方面,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本技术第一方面提供的方法。
[0031]
第三方面,本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本技术第一方面提
供的方法。
[0032]
本发明的有益效果如下:
[0033]
本发明提供的一种卫星自主姿态确定方法,能有效避免因单一敏感器故障导致的姿态信息紊乱,保证姿态的稳定性和可靠性。本发明的一种卫星自主姿态确定方法,借助中低精度敏感器,通过数据融合处理解算得到高精度姿态信息,保证卫星业务运行的需求。
附图说明
[0034]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]
图1示出根据本发明一个实施例的一种卫星自主姿态确定方法流程图。
[0036]
图2示出根据本发明一个实施例的一种卫星自主姿态确定方法示意图。
[0037]
图3示出根据本发明一个实施例的卫星轨道系及本体系示意图。
[0038]
图4示出根据本发明一个实施例的互补滤波姿态解算示意图。
[0039]
图5示出根据本发明一个实施例的ekf姿态解算流程图。
[0040]
图6示出根据本发明一个实施例的ekf姿态解算原理图。
[0041]
图7示出根据本发明一个实施例的ekf有效性判断流程图。
[0042]
图8示出根据本发明一个实施例的星敏1姿态解算姿态角误差示意图。
[0043]
图9示出根据本发明一个实施例的陀螺+星敏1互补滤波姿态角误差示意图。
[0044]
图10示出根据本发明一个实施例的四种ekf形式的姿态角误差示意图
[0045]
图11示出根据本发明一个实施例的收敛后四种ekf形式的姿态角误差示意图。
[0046]
图12示出根据本发明一个实施例的姿态数据融合选用流程图。
[0047]
图13示出适于用来实现本技术实施例的计算机设备的结构示意图。
[0048]
图14示出根据本发明一个实施例的星敏ekf形式的姿态角误差示意图。
具体实施方式
[0049]
为使本发明的技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。附图中相似的部件以相同的附图标记进行表示。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本发明的保护范围。
[0050]
第一实施例
[0051]
如图1和图2所示,本发明的一个实施例公开了一种卫星自主姿态确定方法,包括:
[0052]
s100、通过各敏感器测量信息进行敏感器姿态解算得到姿态信息,其中,各敏感器姿态解算包括陀螺递推姿态解算、双星敏姿态解算、单星敏姿态解算、太敏和地敏双矢量姿态解算、太敏和磁双矢量姿态解算以及地敏和磁双矢量解算。
[0053]
具体的,卫星装备的测量敏感器包括1套三轴陀螺仪(以下简称陀螺)、2套星敏感器(以下简称星敏)、1套三轴太阳敏感器(以下简称太敏)、1套地球敏感器(以下简称地敏)和1套三轴磁强计(以下简称磁),各敏感器均属于中低精度等级。设定陀螺测量精度为0.5
°
/h,星敏1和星敏2测量精度分别为5角秒、10角秒,太敏和地敏测量精度分别为0.05
°

0.15
°
,磁测量精度为500nt。
[0054]
在本实施例中,定义姿态信息为本体系相对轨道系的姿态;惯性系为赤道惯性坐标系;轨道系o
cxoyozo
,取卫星质心为坐标系原点o
c
,o
czo
轴指向卫星地心矢径的反方向,o
cxo
轴过o
c
点,在与o
czo
轴垂直的平面内指向速度方向,o
cyo
轴与它们按照右手法则螺旋。本体系坐标原点o
c
,o
czb
轴指向与对地板外法向方向,o
cyb
过o
c
点,在与o
czb
垂直的平面内指向卫星标准飞行姿态下的轨道平面负法线方向,o
cxb
轴与它们按照右手法则螺旋;安装系由各敏感器在卫星本体的安装位置坐标决定。卫星轨道系及本体系示意图如图3所示。
[0055]
在本实施例中,首先对双矢量定姿原理进行说明。已知在参考坐标系中有两个互不平行的参考矢量v1,v2,它们在本体系中观测矢量为u1,u2。现求姿态转换矩阵a满足u1=av1,u2=av2,利用基准矢量的不平行性,分别在参考坐标系和本体系中建立新的正交坐标系r、s,各坐标轴的单位矢量是
[0056][0057][0058]
因此,3维矩阵m
r
=[r
1 r
2 r3],m
s
=[s
1 s
2 s3]是r和s在两个坐标系中的方向余弦阵。同时,r和s两个坐标系之间的转换矩阵也是a,因此即可得到姿态转换矩阵
[0059]
在本实施例中,对陀螺递推姿态解算进行说明,陀螺仪输出卫星相对惯性空间的角速度,通过上一时刻惯性系到本体系的四元数,一步递推得到当前时刻惯性系到本体系的四元数q
i
,结合卫星轨道信息可以得到惯性系到轨道系的四元数q
oi
,于是可以得到卫星本体在轨道系下的姿态四元数q,进而解算得到姿态信息。
[0060][0061]
在本实施例中,对双星敏姿态解算、单星敏姿态解算进行说明。
[0062]
星敏输出其安装坐标系相对惯性空间的姿态四元数,当两个星敏均有效工作时,采用双星敏姿态解算,否则采用单星敏姿态解算。
[0063]
在双星敏姿态解算方法中,根据星敏输出的姿态四元数可以得到星敏安装系相对惯性系的坐标转换矩阵,即
[0064][0065]
式中,和为两个星敏安装系下的三轴测量矢量,该矩阵同时可以由星敏安装系的坐标轴单位矢量表示。假设两星敏的光轴均为z轴,通过星
敏安装矩阵m
s
可以得到两星敏z轴在惯性系及本体系的坐标,构成双矢量,
[0066]
v1=f
si1
·
[0 0 1]
t
,v2=f
si2
·
[0 0 1]
t
[0067]
u1=m
s1
·
[0 0 1]
t
,u2=m
s2
·
[0 0 1]
t
[0068]
之后采用双矢量定姿原理可以得到惯性系到本体系的姿态转换矩阵,进而得到星敏在惯性系的姿态四元数,结合轨道数据最终解算得到姿态信息。
[0069]
在单星敏姿态解算方法中,借助星敏输出的惯性系的姿态四元数,结合轨道数据即可解算得到姿态信息。
[0070]
在本实施例中,对太敏和地敏双矢量、太敏和磁双矢量、地敏和磁双矢量姿态解算进行说明。
[0071]
太敏输出相对其安装坐标系下的太阳矢量sb;地敏输出相对其安装坐标系下的地心矢量eb,磁强计输出相对其安装坐标系下的地磁矢量bb。结合轨道数据中太阳矢量、地心矢量和磁矢量在轨道系下的分量so,eo,bo,
[0072]
u
11
=sb,v
12
=so
[0073]
u
21
=eb,v
22
=eo
[0074]
u
31
=bb,v
32
=bo
[0075]
采用双矢量定姿原理即可分别得到轨道系大盘本体系的姿态转换矩阵,进而得到相应姿态四元数,解算姿态信息。
[0076]
在一个具体实施例中,在进行所述敏感器姿态解算时,除陀螺递推姿态解算外,依据优先级仅采用一种姿态解算方法,敏感器优先级依次为双星敏、单星敏、太敏和地敏、太敏和磁,或地敏和磁。
[0077]
s102、将步骤s100中经陀螺和其他敏感器姿态解算得到的姿态信息进行有效组合完成滤波姿态解算,进一步得到高精度连续的姿态信息,其中,所述滤波姿态解算包括互补滤波姿态解算和扩展卡尔曼滤波姿态解算即ekf姿态解算;
[0078]
具体的,互补滤波是一种利用两种或两种以上的输入得到最优化输出的滤波器技术,在卫星各敏感器姿态解算中,陀螺仪动态响应特性良好,但会产生累积误差;星敏、太敏和地敏、太敏和磁、地敏和磁计算姿态没有累积误差,但动态响应特性相对较差。因此,两者在频域上特性互补,可以采用互补滤波算法将两者得到的姿态数据进行融合,提高解算姿态的精度和动态可靠性。
[0079]
在一个具体实施例中,如图4所示,进行互补滤波姿态解算,互补滤波是一种利用两种或两种以上的输入得到最优化输出的滤波器技术,其输入通常具有不同的频率特性,即频域上具有互补的关系。
[0080]
输入信号x(t),系统中包含两种频域上互补的观测量,其中一种在高频区域可信度较高,另一种在低频区域可信度高。互补滤波其通过对第一种观测量进行高通滤波,即1

g(t),另一种观测量进行低通滤波,即g(t),结合两种输入得到优于任意输入的输出值y(t),
[0081]
y(t)=[x(t)+δ(t)][1

g(t)]+[x(t)+η(t)]g(t)
[0082]
ꢀꢀꢀꢀ
=x(t)+δ(t)[1

g(t)]+η(t)g(t)
[0083]
式中,δ(t),η(t)为信号噪声。
[0084]
在卫星各敏感器姿态解算中,陀螺仪动态响应特性良好,但会产生累积误差;星
敏、太敏和地敏、太敏和磁,或地敏和磁计算姿态没有累积误差,但动态响应特性相对较差。因此,两者在频域上特性互补,可以采用互补滤波算法将两者得到的姿态数据进行融合,提高解算姿态的精度和动态可靠性。
[0085]
在本实施例中,所述互补滤波算法的算式为:
[0086]
q
err
=q
‑1×
q
t
[0087][0088]
q=q
×
q_tmp
[0089]
式中,q为陀螺递推解算得到的姿态四元数;q
t
为星敏、太敏和地敏、太敏和磁、或地敏和磁解算得到的姿态四元数;q
err
为两者姿态四元数的差值;k为互补滤波增益系数;q_tmp为q
err
的归一化值。
[0090]
具体的,ekf姿态解算是一种状态估计法,通过建立状态量变化的状态方程及观测方程,采用估计算法根据观测信息估计出状态量,并成为一定准则下的最优估计。考虑实际应用中的非线性因素,采用扩展卡尔曼滤波算法进行卫星姿态确定,该算法的核心是利用泰勒展开将非线性的状态方程和量测方程进行局部线性化,之后利用卡尔曼滤波原理进行计算。
[0091]
如图5所示,ekf算法大体上可以分为两个阶段,即预测阶段和校正阶段。其核心思想为先根据上一时刻系统状态,预测当前时刻系统状态,再结合当前时刻系统状态的观测值修正得到当前时刻“真实”状态。预估过程建立对当前状态的先验估计,校正过程负责反馈,利用当前测量变量校正估计状态,建立起对状态改进的后验估计。
[0092]
在一个具体实施例中,在ekf姿态解算中,考虑各敏感器使用特性,设计四种ekf模式,所述四种ekf模式包括:星敏+陀螺ekf、太敏和地敏+陀螺ekf、太敏和磁+陀螺ekf、地敏和磁+陀螺ekf,根据滤波有效性判断依据,选择最优滤波方案进行姿态解算到姿态信息。图6为ekf姿态解算原理图。
[0093]
在一个具体实施例中,所述进行ekf姿态解算的步骤包括:
[0094]
s1020、确定各敏感器测量模型;
[0095]
陀螺测量模型
[0096]
ω=ω
b
+b+v
g
[0097]
式中,ω为陀螺输出角速度;ω
b
为真实角速度;b为陀螺的常值漂移,设b满足v
g
为陀螺的测量噪声,设v
g
为白噪声,满足
[0098]
星敏测量模型
[0099]
星敏测量输出模型为
[0100]
q
bm
=q
b
+v
m
[0101]
式中,q
bm
为星敏测量值,q
b
为真实值,v
m
为星敏测量噪声。记星敏测量残差为星敏测量输出四元数与估计值之间的差值。
[0102]
δq
b
=h
m
δq+v
m
[0103]
h
m
=i3×3[0104]
式中,h
m
为星敏量测矩阵。
[0105]
太敏测量模型
[0106]
本体系下太阳矢量s
b
=[s
bx s
by s
bz
],太敏测量角η,ξ,设
[0107]
d
η
=tanη=

s
bx
/s
by
[0108]
d
ξ
=tanξ=s
bz
/s
by
[0109]
太敏测量输出模型为
[0110][0111]
式中,v
s
为太敏测量噪声,记太敏测量残差为太敏测量输出与估计值之间的差值,
[0112][0113]
将d
η
、d
ξ
在处按泰勒公式展开,取一阶近似,
[0114][0115][0116]
式中,太阳矢量估计残差δq为误差四元数δq
bo
的矢量部分。可得,
[0117][0118]
式中,h
s
为太敏量测矩阵。
[0119]
地敏测量模型
[0120][0121]
式中,γ
m
和θ
m
为地敏的测量值,γ和θ为卫星真实的滚转角和俯仰角,γ
bias
和θ
bias
为地敏测量偏差,v
e
为测量噪声,设为白噪声,满足
[0122]
考虑姿态角估计误差为小角度,将其表示δγ≈2δq1,δθ≈2δq2。设和为通过滤波得到的地敏测量偏差的估计值,则地敏的测量残差可定义为
[0123][0124]
式中,h
e
为地敏量测矩阵。
[0125]
磁测量模型
[0126]
为方便计算,简化磁测模型,
[0127]
b
bm
=b
b
+v
c
[0128]
式中,b
bm
为本体系下磁测量值,b
b
为真实磁矢量,v
c
为磁测量噪声。记磁测量残差为磁测量输出值与估计值之间的差值。
[0129]
δb
b
=2[b
bm
×
]δq+v
c
[0130]
ꢀꢀꢀꢀ
=h
c
δq+v
c
[0131][0132]
式中,h
c
为磁测量测矩阵。
[0133]
s1021、确定各种ekf模式计算方法;
[0134]
星敏+陀螺ekf
[0135]
在星敏+陀螺ekf姿态解算中,结合卫星姿态运动学模型,以星敏测量数据作为量测矢量,以姿态四元数作为系统状态量,并将陀螺测量数据引入系统状态方程,可建立对姿态的滤波观测。滤波输出值除姿态的最优估计外,还包括陀螺的常值漂移误差的最优估计。
[0136]
i.系统状态方程
[0137]
系统状态量选取为姿态误差四元数和陀螺漂移,即
[0138]
x
t
=[δq
1 δq
2 δq
3 δb
x δb
y δb
z
]
t
[0139]
根据四元数运动方程和陀螺的输出模型,可得误差四元数表示的方程,
[0140][0141]
δq0=0
[0142]
式中,δq为误差四元数δq
bo
的矢量部分,为星体相对赤惯系的角速度的估计值,δb为陀螺常值漂移的测量残差,满足
[0143]
系统状态方程为
[0144][0145][0146]
式中,f(t),g(t)分别为状态方差阵和系统噪声方差阵,w
k
为系统激励噪声序列。本文中后续定义均与此一致。
[0147]
将系统状态方程离散化
[0148]
x(k+1)=φ(k+1,k)
·
x(k)+γ(k+1,k)
·
w
[0149]
式中,φ(k)=i6+f(k)
·
δt,γ(k)=g(t)
·
δt,δt为采样步长,φ(k+1,k)为t
k
时刻至t
k+1
时刻的一步转移阵;γ(k+1,k)为系统噪声驱动阵。本文中后续定义均与此一致。
[0150]
ii.系统量测方程
[0151]
系统量测量采用四元数表示,星敏测量残差矢量部分为两个星敏测量的四元数与陀螺积分四元数的差值,记为[δq
1 δq2]
t

[0152]
系统量测方程为
[0153]
z(t)=h
·
x(t)+v
[0154]
式中,量测阵量测噪声为星敏的输出噪声,满足
[0155]
太敏和地敏+陀螺ekf
[0156]
在太敏和地敏+陀螺ekf姿态解算中,结合卫星姿态运动学模型,以太敏和地敏测量数据作为量测矢量,以姿态四元数作为系统状态量,并将陀螺和地敏测量数据引入系统状态方程,可建立对姿态的滤波观测。滤波输出值除姿态的最优估计外,还包括陀螺和地敏常值测量误差的最优估计。
[0157]
i.系统状态方程
[0158]
系统状态量选取为姿态误差四元数、陀螺漂移和地敏测量误差,即
[0159]
x
t
=[δq
1 δq
2 δq
3 δb
x δb
y δb
z δγ
bias δθ
bias
]
t
[0160]
系统滤波状态方程为
[0161]
[0162][0163]
将滤波状态方程离散化,
[0164]
x(k+1)=φ(k+1,k)
·
x(k)+γ(k+1,k)
·
w
[0165]
式中,φ(k)=i8+f(k)
·
δt,γ(k)=g(t)
·
δt,δt为采样步长。
[0166]
ii.系统量测方程
[0167]
若卫星处于光照区,太敏和地敏均正常输出,系统量测量采用地敏和太敏的测量残差,记为z
t
=[δd
η δd
ξ δγ δθ]
t

[0168]
系统量测方程为
[0169]
z(t)=h
·
x(t)+v
[0170]
式中,v
s
、v
e
分别为太敏和地敏的输出噪声。
[0171]
若卫星处于阴影区,太敏失效,系统量测量采用地敏的测量残差,记为z
t
=[0 0 δγ δθ]
t
,量测矩阵中h
s
=0,v
s
=0;若地敏失效,系统量测量采用太敏的测量残差,z
t
=[δd
η δd
ξ 0 0]
t
,量测矩阵中h
e
=0,v
e
=0。
[0172]
太敏和磁+陀螺ekf
[0173]
在太敏和磁+陀螺ekf姿态解算中,结合卫星姿态运动学模型,以太敏和磁测量数据作为量测矢量,以姿态四元数作为系统状态量,并将陀螺测量数据引入系统状态方程,可建立对姿态的滤波观测。滤波输出值除姿态的最优估计外,还包括陀螺常值测量误差的最优估计。
[0174]
i.系统状态方程
[0175]
系统状态量选取为姿态误差四元数和陀螺误差,即
[0176]
x
t
=[δq
1 δq
2 δq
3 δb
x δb
y δb
z
]
t
[0177]
系统滤波状态方程为
[0178][0179][0180]
将滤波状态方程离散化,
[0181]
x(k+1)=φ(k+1,k)
·
x(k)+γ(k+1,k)
·
w
[0182]
式中,φ(k)=i6+f(k)
·
δt,γ(k)=g(t)
·
δt,δt为采样步长。
[0183]
ii.系统量测方程
[0184]
若卫星处于光照区,太敏和磁均正常输出,系统量测量采用太敏和磁的测量残差,记为z
t
=[δd
η δd
ξ δb
bx δb
by δb
bz
]
t

[0185]
系统量测方程为z(t)=h
·
x(t)+v
[0186]
式中,v
s
、v
c
分别为太敏和磁的输出噪声。
[0187]
若卫星处于阴影区,太敏失效,系统量测量采用磁测量残差,记为z
t
=[0 0 δb
bx δb
by δb
bz
]
t
,量测矩阵中h
s
=0,v
s
=0;若磁失效,系统量测量采用太敏的测量残差,z
t
=[δd
η δd
ξ 0 0 0]
t
,量测矩阵中h
c
=0,v
c
=0。
[0188]
地敏和磁+陀螺ekf
[0189]
在地敏和磁+陀螺ekf姿态解算中,结合卫星姿态运动学模型,以地敏和磁测量数据作为量测矢量,以姿态四元数作为系统状态量,并将陀螺和地敏测量数据引入系统状态方程,可建立对姿态的滤波观测。滤波输出值除姿态的最优估计外,还包括陀螺和地敏常值测量误差的最优估计。
[0190]
i.系统状态方程
[0191]
系统状态量选取为姿态误差四元数、陀螺漂移和地敏测量误差,即
[0192]
x
t
=[δq
1 δq
2 δq
3 δb
x δb
y δb
z δγ
bias δθ
bias
]
t
[0193]
系统滤波状态方程为
[0194][0195][0196]
将滤波状态方程离散化,
[0197]
x(k+1)=φ(k+1,k)
·
x(k)+γ(k+1,k)
·
w
[0198]
式中,φ(k)=i8+f(k)
·
δt,γ(k)=g(t)
·
δt,δt为采样步长。
[0199]
ii.系统量测方程
[0200]
若地敏和磁均有效,系统量测量采用地敏和磁的测量残差,记为z
t
=[δγ δθ δb
bx δb
by δb
bz
]
t

[0201]
系统量测方程为z(t)=h
·
x(t)+v
[0202]
式中,v
e
、v
c
分别为地敏和磁的输出噪声。
[0203]
若地敏失效,系统量测量采用磁测量残差,记为z
t
=[0 0 δb
bx δb
by δb
bz
]
t
,量测矩阵中h
s
=0,v
s
=0;若磁失效,系统量测量采用地敏的测量残差,z
t
=[δγ δθ 0 0 0]
t
,量测矩阵中h
c
=0,v
c
=0。
[0204]
s1022、进行ekf有效性判断,根据预定规则判断四种ekf模式的有效性,选取最优项。
[0205]
在滤波姿态解算中,四种ekf模式均可以解算得到姿态信息,需要制定相应规则判断其有效性,选取最优项。在本实施例中,如图7所示,所述预定规则为:判断敏感器失效时长是否超限;若敏感器失效时长未超限,判断ekf是否收敛,如果在一定时间内系统估计均
方差阵的范数稳定且小于设定阈值则ekf收敛;若ekf已收敛且星敏感器定姿有效,将ekf结果与星敏感器定姿结果进行比较,误差不超限时认为ekf有效,优先使用滤波结果。
[0206]
s104、制定数据判断选用规则,考虑各敏感器及滤波定姿的精度,设计数据判断流程,在步骤s102的互补滤波姿态解算和ekf姿态解算的结果中选取最优化姿态信息。姿态数据融合选用流程图如图12所示。
[0207]
对于星敏而言,其光轴误差相对较大,敏感器双星敏定姿中采取了光轴误差补偿的措施;而为保证星敏滤波中数据最大化使用,滤波观测量为星敏原始数据,并未消除光轴误差,在一个具体实施例中,根据所述数据判断选用规则,经过综合计算得到双星敏定姿精度最优,其次为星敏ekf定姿,之后依次为太敏和地敏ekf定姿、单星敏定姿、太敏和地敏定姿、太敏和磁ekf定姿、地敏和磁ekf定姿、太敏和磁定姿或地敏和磁定姿。
[0208]
在一个具体实施例中,
[0209]
若判定选用ekf定姿,则将ekf解算得到的角速度信息、姿态信息赋值到系统相应信息,若采用敏感器定姿,则无需使用ekf解算得到的数据;当敏感器定姿无效且ekf尚未收敛时,仍采用ekf解算的姿态信息。
[0210]
下面将结合具体示例对本发明进行进一步说明。
[0211]
在本示例中,卫星处于倾斜圆轨道,轨道高度1125km、倾角86.5
°
、周期108.8min。卫星装备中低精度的1套陀螺、2套星敏、1套太敏、1套地敏和1套磁强计作为姿态测量敏感器。仿真时长为一个轨道周期6528s,计算周期0.25s。在三轴对地稳定状态下,设初始姿态角为[5
°
;5
°
;5
°
],角速度为0,除星敏2外各敏感器初始设置均为有效。
[0212]
s100、通过各敏感器测量信息进行敏感器姿态解算得到姿态信息。
[0213]
在本示例中,在敏感器姿态解算部分采用星敏1姿态解算。星敏1输出安装系相对惯性系的四元数,通过星敏1在本体系下的安装矩阵可以得到本体系相对惯性系的四元数,结合轨道数据即可解算得到姿态信息。
[0214]
从图8可以看出,星敏1姿态解算的误差在0.03
°
以内。
[0215]
s102、将步骤s100中经陀螺和其他敏感器姿态解算得到的姿态信息进行有效组合完成滤波姿态解算,进一步得到高精度连续的姿态信息,其中,所述滤波姿态解算包括互补滤波姿态解算和扩展卡尔曼滤波姿态解算即ekf姿态解算;
[0216]
具体的,在本示例中考虑敏感器姿态确定精度,在滤波姿态解算部分采用陀螺+星敏1互补滤波姿态解算及星敏ekf滤波姿态解算。
[0217]
进行互补滤波姿态解算,陀螺+星敏1互补滤波,陀螺递推解算得到的姿态四元数q,星敏1解算得到的姿态四元数q
t
,增益系数k设置为0.1,
[0218]
q
err
=q
‑1×
q
t
[0219][0220]
q=q
×
q_tmp
[0221]
式中,q为陀螺递推解算得到的姿态四元数;q
t
为星敏、太敏和地敏、太敏和磁、或地敏和磁解算得到的姿态四元数;q
err
为两者姿态四元数的差值;k为互补滤波增益系数;q_tmp为q
err
的归一化值。
[0222]
因此,如图9所示,可以得到互补滤波数据融合处理之后的姿态四元数,结合轨道数据最终解算得到姿态信息,误差在0.005
°
以内。
[0223]
分别进行四种ekf形式的姿态角解算,结果如图10所示。如图11所示,收敛后,星敏ekf姿态误差在0.001
°
范围内,其余三项滤波姿态误差在0.01
°
范围内。
[0224]
s104、制定数据判断选用规则,考虑各敏感器及滤波定姿的精度,设计数据判断流程,在步骤s102的互补滤波姿态解算和ekf姿态解算的结果中选取最优化姿态信息。
[0225]
在本示例中,根据图12所示的姿态数据融合选用流程图,最终选择星敏ekf作为姿态解算方式,得到高精度姿态角信息,星敏ekf形式的姿态角误差如图14所示。
[0226]
本发明提供的一种小型卫星多模冗余自主姿态确定方法,能有效避免因单一敏感器故障导致的姿态信息紊乱,保证姿态的稳定性和可靠性。本发明的一种小型卫星多模冗余自主姿态确定方法,借助中低精度敏感器,通过数据融合处理解算得到高精度姿态信息,保证卫星业务运行的需求。
[0227]
第二实施例
[0228]
图13示出了本技术的另一个实施例提供的一种计算机设备的结构示意图。图13显示的计算机设备50仅仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。如图13所示,计算机设备50以通用计算设备的形式表现。计算机设备50的组件可以包括但不限于:一个或者多个处理器或者处理单元500,系统存储器516,连接不同系统组件(包括系统存储器516和处理单元500)的总线501。
[0229]
总线501表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。
[0230]
计算机设50典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备50访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
[0231]
系统存储器516可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)504和/或高速缓存存储器506。计算机设备50可以进一步包括其它可移动/
不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统508可以用于读写不可移动的、非易失性磁介质(图13未显示,通常称为“硬盘驱动器”)。尽管图13中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd

rom,dvd

rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线501相连。存储器516可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行实施例一的功能。
[0232]
具有一组(至少一个)程序模块512的程序/实用工具510,可以存储在例如存储器516中,这样的程序模块512包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块512通常执行本技术所描述的实施例中的功能和/或方法。
[0233]
计算机设备50也可以与一个或多个外部设备70(例如键盘、指向设备、显示器60等)通信,还可与一个或者多个使得用户能与该计算机设备50交互的设备通信,和/或与使得该计算机设备50能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口502进行。并且,计算机设备50还可以通过网络适配器514与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图13所示,网络适配器514通过总线501与计算机设备50的其它模块通信。应当明白,尽管图13中未示出,可以结合计算机设备50使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
[0234]
处理器单元500通过运行存储在系统存储器516中的程序,从而执行各种功能应用以及数据处理,例如实现本技术实施例一所提供的一种卫星自主姿态确定方法。
[0235]
本技术针对目前现有的问题,制定一种适用于卫星自主姿态确定方法的计算机设备,有效避免因单一敏感器故障导致的姿态信息紊乱,保证姿态的稳定性和可靠性。
[0236]
第三实施例
[0237]
本技术的另一个实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述实施例一所提供的方法。在实际应用中,所述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。
[0238]
计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0239]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可
读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0240]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言或其组合来编写用于执行本技术操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言

诸如java、smalltalk、c++,还包括常规的过程式程序设计语言

诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)

连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0241]
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定,对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动,这里无法对所有的实施方式予以穷举,凡是属于本发明的技术方案所引伸出的显而易见的变化或变动仍处于本发明的保护范围之列。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1