空间交会中多圈Lambert问题的算法改进与实现
2014-05-06李新洪
卫 强,李新洪,王 刚
(装备学院,北京101416)
0 引言
推进剂质量是制约航天器全寿命的主要因素之一.推进剂消耗一般以轨道控制最多.空间交会需要追踪航天器向目标航天器轨道进行远距离轨道转移,能耗问题更加突出.在满足各类约束条件下,寻找能耗最少的转移轨道很有必要.在时间较长的共面圆轨道双冲量交会中,当对交会点没有要求时,一般多采用霍曼转移,而霍曼转移是Lambert转移的一种特殊形式.追踪航天器在转移轨道上运行不足一圈为单圈Lambert转移,一圈及一圈以上为多圈Lambert转移.
目前国内外对多圈Lambert问题已有一些较为深入的研究,文献[1]和[2]分别给出了一种算法,但效率都不高.文献[3]利用普适变量与转移时间的函数关系,提出了另一种鲁棒性很强的算法.文献[4]简要阐述了一种类似于文献[3]的算法.文献[5]与[6]提出了一种基于双纵坐标的工程图解法,可以直观地找到转移轨道最优解,还提出了交会始末位置不固定的多圈转移设想.文献[7]为将多圈Lambert问题算法置于遗传算法的内层进行优化,利用文献[5]与[6]提出的工程图解法进行了最优解集分析,然而其对最优解集的划定并不完全,在某些情况下可能会遗漏最优解.文献[8]针对大椭圆轨道的交会,结合一种辅助转移问题,给出了一种与文献[2]方法相似的算法,只比较两个解便可求出最优解,提高了计算效率,可是算法流程较为复杂,还需结合图示.以上多圈问题算法流程虽然看似简单,有的图解法还可以直观地在图上找出最优解,但是其只能进行定性判断,具体精确值还需要针对性地编程,进行数值迭代计算.这些算法难以像解决单圈问题那样将函数编程封装,用时直接调用,也就难以将多圈转移进一步拓展,如两动点间的空间交会问题,以及“一对多”甚至“多对多”的在轨服务任务.本文设计了改进算法,简化了流程,减少了计算量,并依此编写了Matlab程序.
1 问题阐述
共面圆轨道间两固定点多圈Lambert转移是研究两动点间及多动点间 Lambert问题的基础,见图1.F是地球质心,为过P1和P2两点的转移轨道椭圆的实焦点,F*为虚焦点,其他参数意义参见文献[5].当F*在弦P1P2上时,为最小能量转移轨道;当F*位于弧P1P2与弦P1P2构成的弧三角形外,为第一类转移轨道;当F*位于弧P1P2与弦P1P2构成的弧三角形内,为第二类转移轨道.
图1 多圈Lambert转移轨道示意图Fig.1 Sketch map of loopy Lambert transfer orbits
tf为追踪航天器在椭圆轨道上的转移时间,Δv为两次变轨的速度增量之和,a为转移轨道的长半轴,am为其最小值.当要求的tf较短时,可能只能完成单圈转移;当较长时,就可能通过进行多圈转移减小Δv.tf为定值时,两固定点之间的单圈转移轨道只有一条,而多圈转移有多条,可以找出最优解.多圈转移需要分多种情况进行讨论,可利用Lagrange转移时间方程等公式[5],将解析法、数值解法和图示法结合起来,求出多个解进行逐个比对.
[2]中,P1和P2两点的真近点角f1和f2是直接求反余弦函数得出,笔者认为不妥.真近点角的范围是[0,2π),而反余弦函数求得的结果范围是[0,π],故应该分情况进行讨论.经过计算,两者结果有偏差,分情况讨论得出的结果是正确的.
2 算法设计
为便于编写Matlab程序,使算法更加结构化,以下利用两类轨道的tf、Δv与a三者之间的函数关系,以及Lagrange参数在不同情况下的判定结果,分析和总结了解集的分布特点,对多圈算法进行了不再依赖图示的纯程序运算改进.
分3种情况进行分析:
1)当θ0<π时,第一类轨道Δv随a的增大先单调递减,后单调递增,而第二类轨道则单调递增,故多圈转移时得到的2Nmax+1个a的解只需要比较第一类轨道a的所有解和第二类轨道a的最小解即可.
2)当θ0=π时,两类轨道Δv随a的增大先单调递减,后单调递增,故多圈转移时得到的2Nmax+1个a的解只需要比较第一类轨道或第二类轨道a的最小解即可.也可将此情况并入θ0<π或θ0>π的计算中.
3)当θ0>π时,第二类轨道 Δv随a的增大先单调递减,后单调递增,而第一类轨道则单调递增,故多圈转移时得到的2Nmax+1个a的解只需要比较第二类轨道a的所有解和第一类轨道a的最小解即可.
定义tfN为N圈转移(N≥0)时am对应的tf的值,tfminN为N圈(N≥1)转移时tf的最小值,aminN为tfminN对应的a值,为N圈转移(N≥0)时第一类轨道a,为N圈转移(N≥0)时第二类轨道a,为N圈转移(N≥0)时第一类轨道Δv,为N圈转移(N≥0)时第二类轨道Δv.
r1、r2、tf和 θ0为已知条件.由 Lagrange 转移时间方程的求导式计算aminN(N≥1),以及其对应的tfminN.若tfminN>tf,则N-1 为Nmax.若Nmax=0,则为单圈转移;若Nmax>0,则为多圈转移.分多种情况进行讨论,设计算法流程,见图2.
可以看出,照上述算法编写的Matlab程序可将解集中解的数量由2Nmax+1个减少为Nmax+1或Nmax+2个,提高了计算效率.
图2 算法流程设计Fig.2 Algorithm flowchart
3 问题拓展
可将从共面圆轨道上两固定点间的转移推广到两动点空间交会.
若追踪航天器和目标航天器分别以平均角速度n1和n2在半径为r1和r2的圆轨道上同向运行,且r1≤r2.给定完成交会任务的总时间为T,但不限定追踪航天器进行变轨的时机.在初始时刻t0,两者的分离角为.要求在终点时刻te完成交会任务,即终点时分离角=0.可将交会过程划分为3个阶段,见图3.
图3 两动点空间交会示意图Fig.3 Sketch map of two moved points in space rendezvous
1)追踪航天器在初始轨道的等待阶段,时间为Δt1,Δt1=t1-t0,t1为追踪航天器第一次变轨的时刻.Δv1为第一次变轨的速度改变量,Δ为第一次变轨的最大速度改变量.随着两航天器在各自轨道上的运行,两者的分离角由θ*0逐渐变化,至t1时分离角为为整数,使得的范围为[0,2π).
2)追踪航天器在转移轨道的转移阶段,时间为tf,tf=t2-t1,t2为追踪航天器第二次变轨的时刻.Δv2为第二次变轨的速度改变量,为第二次变轨的最大速度改变量.随着两航天器在各自轨道上的运行,两者的分离角由逐渐变化,至t2时分离角为n2tf-2kπ,k为整数,使得的范围为[0,2π).
3)两航天器在终端轨道的再等待阶段,时间为Δt2,Δt2=te-t2.随着追踪航天器在t2时变轨,脱离转移轨道进入终端轨道,与目标航天器交会,两航天器在终端轨道继续运行,分离角保持为0不变,直至te时任务完成.
在规定的时间内完成交会,以推进剂消耗量最小为优,忽略姿态控制所需的推进剂消耗量和摄动力对轨道精度的影响,只对二体问题建模如下:
可利用遗传算法等多种智能算法对式(1)进行最优化求解.单圈或者多圈问题函数作为内层优化的适应度函数,根据之前设计的算法编写的Matlab程序可以直接调用.易知在T足够大时,两航天器会调相至满足霍曼轨道转移的条件,而当T不能满足时,两航天器也可以找到一条最优或者较优的多圈或者单圈转移轨道.
4 算例验证
算例1.选取文献[5]中的多圈转移算例,算例中为便于分析,将距离和时间归一,分别计算了θ0<π、θ0=π、θ0>π 3种情况下的单圈和多圈转移问题.计算机CPU为英特尔酷睿i5-4200M,计算耗时分别为 0.112 2 s,0.134 8 s,0.126 4 s,得到的结果与文献中图解法得到的一致,验证了设计算法和编写程序的正确性及高效性,见表1.结果显示,在给定时间T允许的情况下,采用多圈Lambert转移可能比单圈速度增量小得多.
算例2.霍曼转移轨道是一条特殊的单圈转移轨道,而单圈可以看作广义多圈转移轨道(N≥0)的子集,因此,针对多圈转移设计的一般算法对两者都是适用的.选取文献[9]中的两固定点间和两动点间空间交会霍曼转移例题.利用编写的程序直接计算两固定点间空间交会问题,霍曼转移为原题结果,Lambert转移为程序运行结果,结果一致,误差在允许范围之内,见表2.
表1 算例1转移轨道对比Tab.1 Contrast of transfer orbits in case 1
表2 算例2转移轨道比较Tab.2 Contrast of transfer orbits in case 2
两动点空间交会问题中,不限定完成交会任务的总时间.利用遗传算法工具箱和编写的程序,采用遗传算法接力进化,即将本次进化结束后输出的最终种群作为下一次输入的初始种群,进化代数设定为120.由于工具箱封装的特殊性,不便于直接计算大数目,故首先对算例中的轨道半径和周期做归一化处理:r1=0.155 8,r2=1,T1=0.061 5,T2=1.最终适应度随进化代数变化,呈收敛趋势,见图4.得出的结果 Δt1=0.014 3,tf=0.217 4,Δv=8.040 8,经过换算后,与文献[9]中用霍曼转移算法得出的一致,误差在允许范围之内,见表2.结果表明,在给定完成任务的总时间足够大的情况下,Lambert转移轨道可调相至满足霍曼转移,以达到最优化;两动点空间交会模型是正确的,设计的算法是有效的.
图4 适应度变化趋势Fig.4 Range of fitness
5 结论
本文对多圈Lambert问题算法进行了改进,并利用改进后的结构化算法编写了可以直接调用进行计算的Matlab程序.应用算例的运行结果与文献中霍曼转移和图解法所得结果对比一致,验证了程序运行的正确性和有效性.在两固定点转移的基础上,还探讨了空间交会时两动点间的多圈转移问题,建立了数学模型,并设计遗传算法进行了计算,验证了模型的正确性.Matlab程序的实现还可为进一步设计基于多圈转移的自主任务规划软件提供必要的条件.下一步可将摄动力影响和转移时航天器碰撞的可能性引入算法设计中,完善模型,提高计算精度.
参考文献
[1]PRUSSING J E.A class optimal two-impulse rendezvous using multiple-revolution Lambert solutions[J].Journal of the Astronautical Sciences,2000,48(2):17-39.
[2]SHEN H J,PANAGIOTIS T.Optimal two-impulse rendezvous using multiple-revolution Lambert solutions[J].Journal of Guidance,Control,and Dynamics,2003,26(1):50-61.
[3]韩潮,谢华伟.空间交会中多圈Lambert变轨算法研究[J].中国空间科学技术,2004,24(5):9-14.HAN C,XIE H W.Research on algorithm loopy Lambert transfer in space rendezvous[J].Chinese Space Science and Technology,2004,24(5):9-14.
[4]唐国金,罗亚中,张进.空间交会对接任务规划[M].北京:科学出版社,2008:141-145.
[5]朱仁璋,蒙薇,胡锡婷.航天器交会中的Lambert问题[J].中国空间科学技术,2006,26(6):49-55.ZHUR Z,MENG W,HU X T.Lambert's problem in spacecraft rendezvous[J].Chinese Space Science and Technology,2006,26(6):49-55.
[6]朱仁璋,蒙薇.航天器交会两点边界值问题[J].宇航学报,2006,27(6):1182-1186.ZHU R Z,MENG W.Two point boundary value problem in space rendezvous[J].Journal of Astronautics,2006,27(6):1182-1186.
[7]欧阳琦,赵勇,陈小前.共面轨道航天器在轨服务任务规划[J].中国空间科学技术,2010,30(1):34-40.OUYANG Q,ZHAO Y,CHEN X Q.Programming of onorbit service mission for multiple object spacecraft in coplanar circular orbits[J].Chinese Space Science and Technology,2010,30(1):34-40.
[8]谭丽芬,闫野,周英,等.航天器交会中的Lambert问题研究[J].国防科技大学学报,2010,32(5):12-16.TAN L F,YAN Y,ZHOU Y,et al.Research on multiplerevolution Lambert problem in spacecraft rendezvous[J].Journal of National University of Defense Technology,2010,32(5):12-16.
[9]SELLERSJ J,ASTORE W J,GIFFEN R B,et al.理解航天:航天学入门[M].张海云,李俊峰,译.北京:清华大学出版社,2007:209-212.