李思远,叶 东,孙兆伟
(哈尔滨工业大学航天学院卫星技术研究所,哈尔滨 150001)
随着通信技术与小型化技术的快速发展,由多颗小卫星组成的卫星集群能够利用无线通信进行组网飞行,从而实现传统大卫星的复杂功能,并大幅度降低研制的成本和风险,显著增强卫星系统的灵活性和鲁棒性。不同于星座与编队飞行,卫星集群不需要保持精确的空间构型,只需要其成员卫星在任务期间内保持适当的通信距离即可。
卫星集群在空间中会受到多种摄动的影响,如摄动、大气阻力摄动、太阳光压摄动和第三体引力摄动等。因此,卫星在不采用主动控制的情况下会发生漂移,无法保证星群的稳定。因此,对多摄动条件下的星群的动力学模型的建立是必不可少的。为简化推导过程,获得精确的相对运动模型,文献[10]提出了一种基于参考卫星轨道要素的动力学建模方法,利用拉格朗日方程推导了考虑摄动的卫星相对运动模型。在此基础之上,文献[11]推导了摄动和大气阻力摄动条件下的卫星相对运动模型。
在某些空间任务中,可能需要卫星集群从当前位置快速运动到指定的目标点。并且在运动过程中既要保证星群的完整性,还要保证成员卫星之间不发生碰撞。针对上述空间任务,首先需要对星群的运动轨迹进行快速规划。形状曲线逼近法是一种简单的轨迹规划方法,能够快速地规划出有约束连续推力条件下卫星的转移轨迹。文献[14]以时间作为自变量,提出了一种基于解析形状曲线的逼近方法,并利用该方法规划了小推力航天器轨道转移和轨道交会的安全轨迹。为增强对运动轨迹的拟合能力,文献[15]采用傅里叶级数作为形状曲线,实现了航天器三维运动轨迹的快速设计。虽然形状曲线逼近法只能对卫星运动轨迹进行初步的规划,但由于星群不需要精确的空间构型,所以该方法适用于星群运动轨迹的快速规划。
蜂拥控制是一种基于仿生学的分布式控制策略,经常应用于群体运动控制中。文献[20]采用分散的蜂拥控制策略实现了二阶多智能体系统通信连通性的保持。考虑系统收敛的速度,文献[21]利用非光滑理论和固定时间稳定理论设计了蜂拥控制器,使系统在固定时间内形成稳定的集群运动。然而在实际中,通信延迟是不可避免的。针对此问题,文献[22-24]在考虑时变通信延迟的前提下设计了一种蜂拥控制器,并证明当通信延迟满足一定的约束时,系统依然能够到达稳定。
在传统的蜂拥控制中,通常认为集群中的成员能够与其通信范围内的所有邻居成员互相通信。但对于卫星集群,成员卫星的通信链路可能存在上限,即一个卫星只能与其通信范围内固定数量的卫星进行通信。针对这个问题,采用度约束生成树作为通信拓扑是一种合理的解决方法。然而,以生成树为通信拓扑虽然能减少每颗卫星的通信链路,但是对两颗不直接相连的卫星,通信延迟可能会随着通信跳数的增加而增加。因此,还需要对生成树的半径或直径进行约束。
综合前文所述,本文针对卫星集群的协同运动问题,首先利用Prim算法和广度优先算法设计了一种度、半径约束生成树的计算方法,并将优化后的结果作为星群的通信拓扑。另一方面,利用基于傅里叶级数的形状曲线逼近法对主星参考轨迹进行快速规划。基于得到的通信拓扑与参考轨迹,设计了改进的蜂拥控制器,并给出了相应的稳定性证明。
航天器相对运动方程用于描述轨道上两颗近距离飞行的航天器之间的相对运动。为描述问题方便,一般将其中一个航天器称作主星,另一个航天器称作从星。
建立卫星集群相对运动模型时,常采用地心惯性坐标系(ECI)与当地水平当地垂直坐标系(LVLH)。其中,地心惯性坐标系的坐标原点位于地心,轴位于赤道平面内,指向春分点,轴指向地球北极,轴位于赤道平面内,与轴垂直,且与,轴构成笛卡儿直角坐标系。对于LVLH坐标系,其原点位于主星的质心,轴方向由地球质心沿径向指向主星,轴垂直主星轨道面并指向轨道角动量方向,轴与另外两轴垂直并构成右手直角坐标系。ECI坐标系与LVLH坐标系如图1所示。
图1 ECI与LVLH坐标系Fig.1 ECI and LVLH coordinate systems
由于卫星的相对运动会受到各种空间扰动的影响,本文考虑项摄动,大气阻力和第三体引力摄动。首先,中心质点引力和项摄动的引力势函数表达式为:
(1)
式中:为引力常数;为二阶带谐项系数;为地球的平均半径;为卫星在ECI坐标系下位置矢量的模;为卫星所处的地理纬度。
大气阻力也是一种不可忽视的空间扰动,卫星受大气阻力而产生的加速度表达式如下:
(2)
式中:为大气阻力系数;为卫星有效迎风面积;为卫星质量;为大气密度;为卫星相对于大气的速度,可由下式求得:
(3)
式中:为卫星在地心惯性坐标系下的位置矢量,为地球自转角速度,方向是沿轴正方向,大小为7.29211515×10rad·s。
第三体引力摄动是指影响卫星的摄动来自第三个天体的牛顿引力,而对于地球卫星来说,第三体引力摄动来自于日、月引力。太阳和月球引力产生的加速度的计算公式如下:
(4)
式中:和分别是太阳和月球的引力常量;和分别为卫星指向太阳和月球的矢量,和为对应矢量的模;和分别是地球指向太阳和月球的矢量,和为对应矢量的模。
(5)
式中:=32;为卫星的径向速度。
(6)
式中:,和为卫星在LVLH坐标系下三个坐标轴方向上的推力,其他参数如下:
(7)
卫星集群的网络拓扑可以采用图论来描述,当星群中卫星能够双向通信时,采用无向图进行拓扑建模。因此,卫星集群通信拓扑可以看成是由个节点和条边构成的无向图=(V, E),其中节点集为V={,,…,},边集E={,,…,}表示卫星之间的通信链路。若是无向图中连接顶点,的边,则称和为的两个端点,称顶点,相互邻接,所有与顶点相关联的边数称为顶点的度,记为()。无向图的度矩阵可用一个对角阵表示,记为=diag((),(),…,())。用表示顶点与之间的连接关系,若顶点与之间存在边则=1,否则=0,=[]∈×定义为无向图的邻接矩阵。若无向图无环,则矩阵中第行(列)的元素之和等于顶点的度数。显然邻接矩阵是一个对称矩阵,同时也是一个非负矩阵。
本文的主要研究内容是考虑通信延迟的卫星集群的群体运动控制策略。考虑由式(6)描述的卫星集群,假设星群中只有一颗主星,星群在初始时刻的通信网络是连通的,并且星群中的卫星能够通过通信链路传递信息,则设计星群运动策略如下:
(1)在初始时刻,结合Prim算法和广度优先算法计算当前通信拓扑的度、半径约束最小生成树,并作为星群的通信拓扑。
(2)主星采用基于傅里叶级数的形状曲线逼近法快速生成满足任务需求的主星参考轨迹,并将参考轨迹的信息传给星群中的其他从星。
(3)基于规划出的参考轨迹设计改进的蜂拥控制器,实现主星对参考轨迹的快速跟踪,同时使从星能够根据通信连接关系保持合适的相对距离,并且在不发生碰撞的前提下维持通信拓扑的连通性。最终,所有卫星的速度最终与参考速度一致,即形成稳定的蜂拥运动。
考虑星群中的卫星装载简单的通信设备,单颗卫星上的通信链路存在上限。因此,即使在通信范围内还有其他卫星,任何卫星在同一时间也只能与固定数量的邻居卫星通信。对于卫星集群的通信拓扑,上述问题意味着每个通信节点的度有上界。另外,若任何两个节点之间都存在通信延迟,则通信延迟将会随着通信跳数的增加而增加。为保证拓扑连通性,并且能节省部分通信资源,本文采用度、半径约束最小生成树作为星群通信拓扑。
假设卫星集群卫星的初始通信拓扑为无向图=(V, E)。其中,在节点集合V中,定义为根节点。定义边权矩阵={|(,)∈E},其中,表示第个卫星与第个卫星之间的相对距离与期望距离的差值。对于节点,定义节点度约束()。设是无向图的一棵树,()是一条从根节点到的路径,而(())为这条路径上的边数。定义树的半径为()=max(()),为半径的约束值。定义()为生成树所有的边权值得总和,则无向图的度、半径约束最小生成树算法表示如下:
(8)
算法的核心思想是,根据任务要求选择一颗卫星作为根节点,再利用Prim算法和广度优先算法在度约束下不断扩展其他节点,直到得到最优生成树。算法的具体步骤如下:
1) 定义一个根节点集合={}和一个候选节点集合。选择一个根节点,定义剩余度标记为()=(),定义当前节点与根节点的跳数为()=0,定义生成树的边集。
2) 从边集E中筛选出与根节点相连接的边,并将这些边按权值从小到大排列放入集合中。
3) 从集合中的第一条边开始搜索连接的节点,满足()>0和()≤,其中()←()+1。然后,将(,)存入集合。
4) 将满足约束的节点加入到集合中,并更新与的剩余度标号,即()←()-1和()←()-1。
5) 判断集合中节点的剩余度标号,若()=0,则将节点从集合中删除。
6) 判断集合中的边数,若边数小于-1,则返回2)。若边数等于-1,则集合中的边即为无向图的度、半径约束最小生成树。
将计算得到的度、半径约束最小生成树作为卫星集群通信拓扑,能够在满足通信约束的条件下,用最少的通信链路保证通信拓扑的连通性,并实现边权值最优,能够为控制器提高收敛的速度,从而在一定程度上减少燃料消耗。
由于星群对具体空间构型的要求并不严格,且卫星之间只需要保持在通信范围内就可以正常工作。因此,相对于计算量大的精确轨迹规划,在任务初始阶段对主星进行简单快速的轨迹规划更适合星群的群体运动。
(9)
式中:表示主星运动的时间;,和为傅里叶级数的阶次;,,,2-1,2-1,2-1,2,2和2为傅里叶级数的系数。对式(9)关于时间求一阶导数可得
(10)
对式(9)关于时间求二阶导数可得
(11)
傅里叶级数中的系数确定以后,将式(9-11)代入式(6)能够计算出卫星三轴方向上的推力值。假设,卫星推进器能提供的最大推力值为,则推力约束方程为:
(12)
当主星初始状态(位置、速度)、末端状态和运动时间已知的情况下,能够确定12个约束方程。同时,为了保证拟合曲线的精度,傅里叶级数阶次的取值不能太小,但取值过大也会增加计算的复杂程度,并且对精度的提升不大,因此一般选取的阶次为大于等于3。这将使约束方程的个数少于未知系数,所以将未知系数分成两个部分,其中一部分由约束方程直接求得,具体表达式如下:
(13)
式中:,和为卫星的初始位置坐标;,和为卫星的末端位置坐标;另一部分系数由优化算法求得。本文以燃料消耗作为优化指标,具体形式为:
(14)
式中:()表示主星在时刻的状态;0和f为边界条件;表示三个坐标方向。本文采用序列二次规划(SQP)算法,根据待优化的性能指标求解满足约束条件的优化解,即为傅里叶级数的全部系数,进而得主星在推力约束下的优化轨迹,将该轨迹作为主星的参考轨迹,用于后续的控制器设计。
在前文得到的优化拓扑和参考轨迹的基础上设计改进蜂拥控制器,使主星跟踪参考轨迹,且存在直接通信的卫星之间保持一个特定的期望通信距离,而其他卫星仅需要保证不发生碰撞即可。尽管星群没有具体的空间构型,但依然能够在不发生碰撞的前提下维持星群的通信连通性。
假设,卫星集群由1颗虚拟参考卫星与颗质量均为的真实卫星构成。卫星之间能够通过无线通信实现信息的传递,不直接通信的卫星,也可以通过通信链路获取彼此的状态信息。然而通信延迟普遍存在于卫星网络中,针对此问题,本文考虑任意两颗直接通信的卫星之间的通信延迟相同,以()表示,不直接通信的卫星之间的通信延迟为最短通信链路上所有延迟的总和。
(15)
(16)
在1中,为星群通信拓扑邻接矩阵的元素;为正数;为蜂拥控制的势函数,其表达式为:
(17)
(18)
式中:∈(0, 1)。显然,1的作用只存在于直接通信的卫星,并且会使直接通信的卫星间距离趋向于期望距离。
由于不直接通信的卫星之间可能会发生碰撞,因此设计了2,若任意两颗卫星之间通过通信链路可以得知彼此的运动状态,则实现碰撞规避,2采用人工势场法,()表达式如下
(19)
式中:为增益系数;为安全距离;为人工势场的作用距离。
在3中,和为控制增益,定义为主星标号,若第颗卫星为主星时=1,否则=0。这意味着只有主星跟踪参考轨迹,而其他的卫星只跟踪参考速度使星群实现速度一致。最后在4中,为正数,实现对未建模扰动的补偿。
定义(),()和()分别是在控制器作用下第颗、第颗卫星和参考卫星在时刻的期望位置,则当→∞时有
(20)
因此,控制器可以表示为:
(--(-))-(-)-
(21)
令
(22)
(23)
并且,定义第颗卫星与第颗卫星之间的通信延迟为(),则控制器可以表示为
())]-(()-())-(()-
(24)
将卫星之间的通信延迟定义成一个集合(),其表达式如下
()∈{():,=1,2,…,},=1,2,…,
(25)
(26)
将星群控制器写成如下的矩阵形式:
(27)
式中:⊗表示克罗内克积;为阶方阵,且对角线上主星对应序号的元素为1,其余元素为0;为阶单位阵;×为包含×个元素的列向量,其中,=3,且每个元素均为1。根据式(15)和参考轨迹的差值,可得系统的误差模型如下:
(28)
(29)
式中:
(30)
假设对称矩阵可分解为:
(31)
定义函数:([-,0],)→,且满足如下微分方程
(32)
式中:()=(+), ∀∈[-,0],且(0)=0。定义连续非减函数(),()和(),当>0时,有()>0,()>0,()>0。并且,(0)=0,(0)=0,当→∞时,()→∞。若存在一个连续的函数(,):×→,一个连续非减的函数():→,当>0,()>,和一个常数,使得
(1)(==)≤(,)≤(==),∈,∈。
则微分方程(32)的零解是一致有界的,而当=0时,该零解是一致渐近稳定的。
考虑卫星集群包含颗卫星,其相对运动模型如式(15),若存在控制增益,使得
(33)
并且通信延迟=max(())满足
(34)
式中:(·)表示矩阵的最小特征值;>1;其他参数为
(35)
则,误差系统(29)是稳定的。
定义李雅普诺夫函数如下:
(36)
显然,
(37)
对李亚普法诺夫函数()求导可得
(38)
根据式(29)可得
(39)
式中:
(40)
将式(39)代入式(38)可得
(41)
(42)
另外,根据引理2,令()=,>1,可得
(43)
代入式(42)和(43),式(41)可化简为:
(44)
(45)
(46)
可得
(47)
根据引理2可知
(48)
因此,在改进蜂拥控制器的作用下,星群中的主星能够跟踪参考轨迹,所有卫星能够根据通信拓扑的连接关系维持期望的通信距离且不发生碰撞。最终,星群中卫星的速度将趋于参考速度,形成稳定的蜂拥运动。
本文以10颗卫星组成的卫星集群为例,虚拟的参考卫星轨道根数为=687814 km,=005,=π6, Ω=π3,=π6,=π4。下文中,集群卫星位置矢量的单位为m,速度矢量的单位为m·s,集群中主星的期望位置矢量为=[200 200200],期望速度矢量为=[000]。集群中卫星的初始位置矢量如下:
(49)
集群中卫星的初始速度矢量如下:
(50)
图2 优化后的通信拓扑Fig.2 Optimized communication topology
从图2中可以看出,每颗卫星均与不超过3颗卫星互相通信,每颗卫星与主星卫星的通信距离不超过3跳。此外,根据优化算法的原理,直接通信的卫星间距在优化之后更接近期望的通信距离,这可以在一定程度上减少控制距离和稳定时间,从而减少燃料消耗。
进而,利用基于傅里叶级数的形状曲线逼近法取===4,推力约束为1 N的条件下,根据主星的初始状态、期望状态以及运动时间对主星的运动轨迹进行规划,傅里叶级数的系数如下:
式中:=1,2,…,9。同时,在改进蜂拥控制器的作用下,主星将跟踪规划的参考轨迹,从星跟随主星运动,如图3所示。主星与参考轨迹之间的位置误差如图4所示。
图3 卫星集群运动轨迹Fig.3 Trajectories of the satellite cluster
图4 主星的位置误差Fig.4 Position errors of the leader satellite
在图3中可以看出,星群能够沿着参考轨迹实现稳定的群体运动,并且在运动过程中始终保持优化的通信拓扑。根据图4中的主星位置误差曲线,可以看出在控制器的作用下,主星跟踪参考轨迹的位置误差小于0.2 m,这说明主星能够精确地跟踪所设计的参考轨迹。
由控制器的形式可知,星群通信拓扑中存在直接通信的卫星之间将保持期望通信距离400 m,并且在整个运动过程中,任意两颗卫星将保持在安全距离以外,而星群中所有卫星的速度将会趋于一致,并收敛到期望的速度。星群中直接通信的卫星之间的相对距离如图5所示,所有卫星之间的相对距离如图6所示。
图5 直接通信卫星之间的相对距离Fig.5 Relative distance between satellites with direct communication
图6 集群卫星之间的相对距离Fig.6 Relative distance between satellites in a cluster
从图5中可以看出,直接通信的卫星之间的距离能够快速收敛,并在640 s时到达稳定,最终的跟踪误差小于0.4 m。而在图6中能够发现,星群中的卫星在整个的运动过程中,星间距离始终保持在安全距离之外。虽然在初始时刻存在卫星间距小于安全距离的情况,但是在控制器的作用下,卫星彼此快速分离,满足碰撞规避的要求。
另外,所有卫星的相对速度将在运动中趋于一致,并且最终收敛到参考轨迹的速度。星群卫星与参考轨迹的速度跟踪误差如图7所示。从图7中的误差曲线可以看出,当直接相连的卫星收敛于期望距离后,卫星的速度也开始收敛于参考速度,最后达到0.02 m/s的控制精度。值得注意的是,相对速度趋于一致是保证星群整体稳定运动的关键。
图7 星群中每颗卫星的速度误差Fig.7 Velocity errors of each satellite in a cluster
本文提出了一种改进的蜂拥卫星集群控制策略。为了得到满足通信约束的星群通信拓扑,利用基于Prim算法和广度优先算法计算出星群通信网络的度、半径约束生成树。进而,根据任务需求采用基于傅里叶级数的形状曲线逼近法对主星的参考运动轨迹进行了快速规划。最后,考虑卫星间通信时延、多扰动和推力约束,设计了结合传统蜂拥控制与人工势场法的改进蜂拥控制器,实现星群的无碰撞群体运动。数值仿真表明,本文设计的控制策略能够在满足各种约束的前提下,使星群以较高的控制精度快速安全地跟踪参考轨迹,从而保证空间任务的顺利实施。