细胞化卫星分布式角动量平衡力矩分配算法

2023-02-28 09:46刘伟星耿云海吴宝林
宇航学报 2023年1期
关键词:角动量飞轮力矩

刘伟星,耿云海,吴宝林

(哈尔滨工业大学航天学院,哈尔滨 150001)

0 引 言

传统的卫星设计根据具体的任务而进行个性化设计,每个任务需要单独设计卫星系统和单独测试。因此传统的卫星研制具有研制周期长、成本高等缺点。为了满足日益多样化的航天器任务需求,细胞化卫星[1]作为一种具有发展潜力的新概念航天器而受到关注。细胞化卫星根据结构上或者功能上的特点将传统卫星进行拆分,并模块化、标准化成卫星部件,称为卫星的细胞,将整个大的卫星称为细胞化卫星。目前,国外研究细胞化卫星的项目有美国的凤凰计划[2](Phoenix Project)和德国的iBOSS[3](Intelligent building-blocks for on-orbit satellite servi-cing)计划等。在国内,有研究将细胞机器人用于失效航天器的接管控制[4],以延长卫星的寿命。黄攀峰等在文献[5]中对细胞化卫星的关键技术进行了详细的阐述。

一般而言,细胞化卫星是由一定数量的特定细胞构成。其中,细胞化卫星的姿态控制系统由敏感器细胞,控制器细胞和执行机构细胞组成,它们由通信网络联结在一起,构成网络化控制系统。当细胞化卫星质量较大时,由于单个执行机构细胞所能提供的控制力矩较小,姿态控制系统需要较多的执行机构细胞。这些执行机构细胞的空间分布会随着后期维修等因素而变化,具有一定的随机性和分散性。执行机构细胞的空间分布特性以及控制器细胞的接口有限等因素,使得控制器细胞可能无法同时连接所有的执行机构细胞。此时,以控制器细胞为中心的力矩分配任务将无法完成。另外,即使控制器细胞能够同时连接所有的执行机构细胞,当存在相当数量的执行机构时,力矩分配任务也会造成控制器细胞的通信压力。因此,需要考虑将力矩分配的工作从控制器细胞的任务中剥离出来,交由执行机构细胞来完成,以便实现分配任务或降低控制器细胞的通信压力。

航天器控制力矩分配方法得到了广泛研究[6-8],常见的有伪逆法[9]、直接法和数学规划方法[10]等。但是上述分配方法都是集中式的,这里所说的集中式,是指需要一个中心节点将各个节点的需求统一计算,然后再将指令分发给各个节点。这样的分配方式将无法胜任本文所描述的细胞化姿态控制系统中的力矩分配任务。针对该问题,Chang等[11]提出了分布式分配算法,该算法不需要控制器细胞参与分配过程,只需要将期望力矩传递给飞轮细胞网络。Lang等[12]在文献[11]的基础上改进了算法,加快了算法的收敛速度。文献[11-12]中所提的分配方法以平衡飞轮角动量为优化目标,为了简化分配问题,该方法要求每个飞轮细胞的输出力矩与期望力矩方向相同,这个要求使得该方法无法照顾到每个飞轮的状态,不利于快速平衡飞轮角动量。

本文在文献[11]的基础上,进一步研究细胞化卫星姿态控制系统中的力矩分配问题。先将力矩分配问题转化成一个带有耦合等式约束的凸优化问题,然后根据一致性分布式算法的思想,通过使每个飞轮细胞节点关联的拉格朗日乘子向量收敛到最优值,从而实现分布式力矩分配的目标。与文献[11]相比,本文所提算法考虑到了每个飞轮细胞上的所有飞轮的角动量状态,具有更快的角动量交换速度,从而可以更快地平衡飞轮系统的角动量。通过采用该角动量平衡力矩分配算法,只需要对部分飞轮细胞进行动量卸载即可实现对所有飞轮细胞的动量卸载。

1 细胞化卫星姿态系统描述

1.1 细胞化卫星概念描述

细胞化卫星的概念来源于模块化卫星的概念,其与模块化卫星的概念一样,都是将传统卫星进行模块化,便于大规模生产,降低生产成本和提高生产效率。与生物的生长变化通过细胞的新陈代谢类似,细胞化卫星通过在轨更换、升级相应模块来实现整星的更新与进化。随着在轨技术的发展,细胞化卫星也得到了越来越多的关注。

根据相关文献[11]的研究,在细胞化的方案中,可以将细胞化卫星的姿态控制系统分为执行机构细胞、控制器细胞、敏感器细胞。图1为细胞化卫星的示意图,细胞化卫星由标准化的细胞模块组成,根据不同的任务需求,可以选用不同数量、不同种类的细胞模块来组装成一个功能完整的卫星。本文假设细胞化航天器的姿态控制系统由n个执行机构细胞、一个控制器细胞和若干敏感器细胞组成。每个细胞模块都有一个与之固联的坐标系,记第i个执行机构细胞的固联坐标系为Fi,细胞化卫星的本体坐标系记为Fb,Fi到Fb的方向余弦矩阵为Ri。与文献[11]相同,假设每个执行机构细胞安装一组三正交的飞轮,飞轮相对于坐标系Fi的安装矩阵为单位阵,即飞轮安装在固联坐标系Fi的三轴上,同时假设所有的飞轮细胞都是同构的,且每个飞轮细胞上的飞轮都是同构的。根据上面的描述,记第i个飞轮细胞上飞轮组的输出向量为ui,则在本体系下,该飞轮细胞输出的力矩为τi=Riui,进而可得所有飞轮细胞输出的总力矩τ为

图1 细胞化卫星示意图Fig.1 Illustration of a cellularized satellite

(1)

1.2 细胞化卫星姿态动力学

本文假设所有细胞模块通过刚性方式连接,组成的细胞化卫星为一个刚体,因此,采用刚体航天器姿态动力学模型来描述细胞化卫星的姿态动力学,并用四元数表示运动学,如下式所示

(2)

(3)

式中:q0和q分别为单位四元数Q=[q0,qT]T的标部和矢部;J为细胞化卫星的转动惯量矩阵;ω为航天器的角速度;hw为飞轮系统的角动量;τ为控制力矩;d为卫星所受的外界干扰力矩;q×和ω×为相应向量的叉乘矩阵;I3为单位矩阵。

(4)

则误差四元数Qe可以由姿态四元数Q和期望姿态四元数Qd按下式计算得到:

qe0=q0qd0+qTqd;qe=-q0qd+qd0q+q×qd

(5)

将角速度误差ωe定义为ωe=ω-Reωd,其中,Re为期望坐标系到体坐标系的方向余弦矩阵,表示这两个坐标系的相对姿态关系,其与误差四元数Qe的关系为

(6)

对误差四元数和角速度误差求导,可以得到姿态误差运动学和动力学系统为

(7)

(8)

细胞化卫星的姿态控制系统的工作过程示意图如图2所示,由敏感器细胞组成的测量系统测得卫星的相关姿态信息,并将信息发送给控制器细胞;控制器细胞计算期望的控制力矩τc,将其发送给由飞轮细胞组成的执行机构系统;各个飞轮细胞根据预设的分配方法计算并输出各自的需求力矩完成姿态控制目标。

图2 细胞化卫星姿态控制系统示意图Fig.2 The cellularized satellite attitude control system

控制器细胞计算期望力矩τc的过程为:先给定特定的参考轨迹,然后再根据参考轨迹的期望姿态和期望角速度信息计算期望力矩。当给定参考轨迹之后,期望力矩由下式给出

(9)

1.3 耦合控制力矩分配问题

对给定的期望控制力矩τc,力矩分配的主要目标是使飞轮系统输出的总力矩与期望力矩相等,即

(10)

在控制力矩分配问题中,最终目标是确定各个飞轮细胞的输出ui。

飞轮的工作模式有一个特点,当转速达到饱和时,即角动量饱和时,飞轮就无法继续输出饱和方向上的控制力矩。当飞轮饱和之后,飞轮需进行动量卸载方可重新工作。而对于本文所描述的飞轮控制系统,存在数量众多的飞轮,期望所有的飞轮都处于一个比较平衡的角动量状态,即,不希望部分飞轮处于饱和,而部分飞轮处于较低的角动量水平。

为了平衡各个飞轮的角动量,一个最直观的想法是,保证输出总力矩和期望力矩相等的情况下,接近饱和的飞轮输出较小的力矩,远离饱和的飞轮输出较大的力矩。为了实现这个想法,引入能力因子ε,其定义如下

(11)

(12)

式中:Wi=diag(wix,wiy,wiz)为权值对角阵,W=blockdiag(W1,…,Wn)为分块对角阵。权值wil,l=x,y,z,为第i个飞轮细胞上l轴上飞轮的角动量平衡权值,定义如下

(13)

Rc=cosθI3+(1-cosθ)eeT-sinθe×

(14)

(15)

(16)

(17)

(18)

(19)

在力矩分配的过程中,要求分配后的力矩τ与期望力矩τc相等,因此可得

(20)

结合式(19)和(20),可以将以平衡角动量为目标的力矩分配问题转化为如下凸优化问题

(21)

文献[11]中建立的优化问题由于约束了飞轮细胞的输出力矩方向,因此每次分配只能考虑到细胞中最接近角动量饱和的飞轮,而优化问题(21)没有约束飞轮细胞的力矩输出方向,可以同时考虑飞轮细胞上的所有飞轮,因此具有更快角动量交换能力。但是,由于优化问题(21)中的等式约束是相互耦合的,且节点关联的变量为向量,因此比文献[11]中的分配问题更复杂,为分布式算法设计带来难题,使分配方法变得复杂。

2 力矩分配算法设计

针对优化问题(21),可以构造如下Lagrange函数

(22)

式中:λ为拉格朗日乘子,对上式求偏导,偏导数为零的点即为最优解,即

(23)

求解上式,可得最优拉格朗日乘子λ*和最优解μ*如下式所示

(24)

为了获得最优解(24),设计下面的分布式迭代算法

(25)

(26)

证.将算法(25)中的第一式代入第二式中,并求和可得

(27)

定理1.假设细胞星的通信拓扑结构是无向连通的,且λi(0)和μi(0)满足初始条件(26),则算法(25)将使得λi(k)和μi(k)收敛于最优解(24),即

(28)

ξ(k+1)=ξ(k)-cB(L⊗I3)ξ(k)

(29)

(30)

(31)

(32)

又因

cwmax·2dmax≤2γ<2

(33)

因此,有ρ(P)=1。记α1=1n⊗I3,容易验证,有Pα1=α1,即1为P的特征值,且α1为该特征值关联的三个线性无关的特征向量。对于实数阵P,存在可逆阵U,使得P=UΛU-1,其中,Λ为Jordon标准型矩阵,且有Λ=blockdiag(Λ1,…,Λm),Λi为不同特征值对应的Jordan块,且令Λ1为特征ρ(P)=1对应的Jordan块,由于ρ(P)=1的代数重数和几何重数相同,因此有Λ1=I3,进而可得

(34)

令可逆矩阵U=[α1,…,αm],及U-1=[a1,…,am]T,因此有

(35)

进一步可得

(36)

(37)

即,所有的拉格朗日乘子向量λi会收敛到λ*,μi会收敛到

(38)

(39)

进而可得

(40)

定理1证毕。

3 仿真校验

本部分给出两个数值仿真算例:角动量平衡能力校验仿真算例和飞轮系统角动量卸载仿真算例。前者用于校验算法的角动量平衡能力,后者用于校验该算法在飞轮系统角动量卸载管理方面的作用。

3.1 角动量平衡能力校验仿真算例

为了校验所提力矩分配方法对平衡角动量的能力,做了以下数值仿真。仿真过程为让细胞化卫星进行Bang-off-Bang姿态机动。跟文献[11]一样,细胞化卫星的转动惯量矩阵设为

(41)

本仿真中,设置了10个飞轮细胞,它们之间的通信拓扑结构如图3所示。其中CC为控制器细胞,AC为飞轮细胞。注意到,本文所提算法和文献[11]一样,都属于分布式算法,主要减轻的是中央控制器的通信量,如图3所示,中央控制细胞C只需要将信号传递给AC1至AC3共3个细胞,而伪逆法需要将信号分别传输给AC1至AC10共10个细胞,因此可以降低中央控制器细胞C的通信压力与信道占比时间,可以为其执行其他的任务留下更多的时间。

图3 细胞通信拓扑结构Fig.3 Communication topology among cells

每个飞轮细胞的固联坐标系Fi与本体系Fb之间的方位关系用欧拉角来表示,所有飞轮细胞的安装矩阵Θ如下式所示

(42)

其中,安装矩阵Θ中的元素是由随机函数在[-π,π]之间随机生成的。该矩阵中的第i列代表的是第i个细胞固联坐标系Fi与本体坐标系Fb之间的欧拉角,Fi按照ZYX的旋转次序到Fb系。

飞轮细胞上的飞轮的初始角动量设置如下

(43)

其中,飞轮系角动量矩阵H(0)中的第i列代表的是第i个细胞中三个飞轮的初始角动量状态,该初值满足飞轮系统总角动量为零。仿真中分配算法和控制律等其他参数见表1。

表1 分配算法和控制律等参数Table 1 Parameters of the allocation algorithm and control law

仿真结果如图4~8所示。图4为控制力矩τ曲线,前30 s为Bang-off-Bang机动的加速段,30~60 s为滑行段,60~90 s为减速段。图5为角速度响应曲线,在完成姿态机动之后,即90 s之后,姿态保持稳定,因此所需力矩不大,且角速度也保持了稳定。

图4 控制力矩Fig.4 Control torque

图5 角速度响应曲线Fig.5 Response of angular velocity

图6和图7分别为姿态误差四元素的矢部和角速度误差曲线。从图中可以看出,在机动的过程中,误差四元素矢部的量级为10-3量级,而稳定之后可以达到10-5量级,而角速度误差在机动过程中也较大,为0.05 (°)/s以内,而稳定之后可达10-4(°)/s以内。

图6 姿态误差四元数响应曲线Fig.6 Response of error quaternion

图7 角速度误差曲线Fig.7 Angular velocity errors

(44)

图8 归一化角动量标准差Fig.8 Standard deviation of normalized momentum

3.2 飞轮系统角动量卸载仿真算例

对于以飞轮为执行机构的卫星系统,当存在常值干扰时,经过长期积累,飞轮的角动量将逐渐偏离标称值而趋向饱和。而在细胞化卫星中,由于飞轮细胞分散地安装在各处,因此无法统一卸载,如果对每个细胞单独卸载,则需要每个飞轮细胞都配备单独的卸载装置。上面3.1节的仿真表明,本文所提分布式角动量平衡力矩分配算法可以按照各个飞轮细胞的角动量水平进行力矩分配,最终使得各个细胞上飞轮的角动量水平趋向一致。因此,只需要某些飞轮细胞与卸载装置(或可称为卸载细胞)相连,使得这些飞轮细胞可以卸载,而其他飞轮细胞则通过角动量平衡分配算法将自身的偏差角动量转移到与卸载细胞相连的飞轮细胞上,从而实现整体卸载。

假设式(3)中的干扰力矩d=[dx,dy,dz]T取如下只考虑零次项和一次项的傅里叶展开形式:

(45)

仿真中,取ai0=2×10-4N·m,ai1=bi1=5×10-3N·m,i=x,y,z,ω0=1.2×10-3rad/s。该干扰力矩中的常值项将使得飞轮系统偏离标称状态,如果不采取卸载措施,飞轮系统将趋向饱和。为了给飞轮系统卸载,本节在3.1节的基础上,增加两个磁力矩卸载细胞,它们各自与一个飞轮细胞相连,磁力矩卸载细胞通过叉乘卸载法[13]对与其相连的飞轮细胞进行角动量卸载。

在力矩分配的过程中,如果不考虑飞轮可能面临的饱和特性,则只需将优化问题(21)中的权值矩阵Wi取为与其他特性相关的权值即可。当取Wi=I3时,优化问题(21)可以被看作以能量优化为目标的优化问题,下文称基于该优化问题的分配方法为能量优化力矩分配算法,简称能量优化算法。能量优化算法由于无法根据各个细胞的角动量水平调节各个细胞的输出力矩水平,因此无法达到角动量平衡的目的。在只有两个飞轮细胞可以卸载的情况下,若采用能量优化算法,则其他飞轮细胞将会趋向饱和。

假设飞轮系统在干扰式(45)的长期作用下,飞轮偏离了标称值,达到了以下状态

(46)

此时,需要磁力矩卸载细胞对飞轮细胞进行卸载,卸载过程中保持姿态稳定。仿真中,在其他条件不变的情况下,分别采用本文算法、对比算法[11]和能量优化分配算法做了三组仿真,仿真时长为5个轨道周期,仿真结果见图9~13。

图9 本体系下飞轮系统角动量Fig.9 Momentum of whole flywheel system in body frame

图9为飞轮系统总角动量在本体系下的三轴分量随时间变化的曲线。在卸载初始时刻,三轴的角动量都在35 N·m·s左右,黑色实线,红色虚线和蓝色点划线分别为本文算法、对比算法[11]和能量优化算法的仿真结果。可以看到,经过5个轨道周期,本文所提算法可以使得总角动量卸载到15 N·m·s左右,而对比算法则卸载到了22 N·m·s左右,本文所提算法比对比算法卸载速度更快,原因是本文算法使飞轮细胞可以更快地交换角动量。而能量优化算法理论上不存在全局卸载能力,但是在仿真结束时总角动量则是到了32 N·m·s,比初始时的35 N·m·s还小,原因是在第一个轨道周期时,与磁力矩卸载细胞相连的两个飞轮细胞的角动量得到了卸载,从图中可以看到,从第二个轨道周期开始,总角动量在常值干扰作用下逐渐上升,而黑色实线和红色虚线由于具备全局卸载能力,总角动量持续降低。

图10~12分别为三种分配算法下各飞轮角动量的响应曲线。在本文所提算法的作用下,经过5个轨道周期,所有飞轮的角动量都降到了绝对值2 N·m·s以内,而对比算法中的飞轮角动量则降到了绝对值4 N·m·s左右。而能量优化算法中,与卸载细胞相连的飞轮的角动量保持在低水平,其他飞轮的角动量则逐渐趋向饱和,如果无其他措施,随着时间的推移,其他飞轮都将达到角动量饱和状态。

图10 本文算法下各飞轮角动量Fig.10 Momentum of each flywheel by the proposed method

图11 对比算法下各飞轮角动量Fig.11 Momentum of each flywheel by the compared method

图12 能量优化算法下各飞轮角动量Fig.12 Momentum of each flywheel by the energy-optimal method

4 结 论

针对细胞化卫星的姿态控制系统中的力矩分配问题,本文将其转化为带耦合等式约束的凸优化问题,然后采用分布式优化算法求解该凸优化问题,实现了分布式控制力矩分配的目的。在该分布式分配算法中,在满足力矩等于期望力矩的条件下,实现了平衡飞轮系统角动量的优化目标,且可以通过卸载部分飞轮细胞的角动量达到卸载飞轮系统整体角动量的目的。仿真实例表明,该分配算法能保证分配后的力矩输出与期望力矩相等,且与文献[11]中的算法对比,本文所提算法具有更强的平衡飞轮角动量的能力,进而在卸载过程中具有更快的卸载速度。

猜你喜欢
角动量飞轮力矩
对经典力学中的轨道角动量和自转角动量的探讨
基于角动量模型的流场涡旋提取方法
飞轮座注射模设计
柔性发动机用飞轮转动工装的设计及应用
用角动量的方法解决并推广一个功能关系问题
夏季角动量输送变化与中国东部降水的关系
轮峰推出两款飞轮新产品
发动机阻力矩计算和起动机介绍
小型力矩电机波动力矩的测量
弹性负载力矩下舵偏转角度的测量方法