本发明属于航天器姿态控制领域,涉及一种基于割线法确定终端时间的航天器姿态调整能量-时间混合最优控制方法。
背景技术:
太空中运行的航天器需要频繁地进行姿态调整,以完成对地或对其他航天器的信号传输。航天器姿态调整任务中,任务消耗的能量与完成任务的时间是评价任务效能的两个关键因素。现有研究中通常提前设置固定的任务时长,从而利用最优控制方法,实现能量最有意义下的姿态调整过程。然而,设置固定的任务时长通常不能充分发挥控制器的能力,无法实现姿态调整任务的快速完成。事实上,在能量-时间混合最优的框架下,可以进行姿态调整任务中能量消耗与任务时长两方面的均衡,是一种较为理想的求解策略。但是,能量-时间混合最优控制问题中,终端时间是不固定的。若直接将问题离散成非线性数学规划问题,则数值算法中配点的位置将是终端时间的线性函数,在进一步利用配点生成对应位置状态变量和控制变量相关信息时,将会产生极为复杂的非线性关系,使得导致的非线性规划问题的非线性程度极高,从而严重增加了对高质量初始猜测的依赖。这在很大程度上影响了求解效率,甚至会造成无法收敛的状况。
技术实现要素:
为了解决上述技术问题,本发明将航天器姿态调整对应的能量-时间混合最优控制问题,转化为一系列具有固定终端时间的能量最优控制问题,在提供两个合理的终端时间初始猜测的基础上,根据终端时间不定最优控制问题中终端时间相关的横截条件,利用割线法,实现终端时间的迭代确定。由于在每个迭代步中,求解的是一个具有明确终端时间的最优控制问题,配点位置是确定的,可以使用成熟的最优控制数值方法快速实现求解,从而保证了整个求解过程的效率与鲁棒性。
为了达到上述目的,本发明采用的技术方案为:
一种基于割线法确定终端时间的航天器姿态调整能量-时间混合最优控制方法,首先,根据航天器的转动惯量,建立航天器的受控姿态运动学方程。第二,确定姿态调整过程的初始状态与终端状态,并使用不等式描述航天器姿态调整过程中状态变量与控制变量受到的约束。第三,根据航天器的运动学方程、姿态调整过程的边界条件和约束,建立能量-时间混合最优控制问题。第四,将原始的能量-时间最优控制问题转化为一系列具有固定终端时间的最优控制问题,利用割线法迭代逼近真实的终端时间以实现原始问题的求解。本发明的计算流程图如图1所示,包括以下步骤:
步骤1:建立航天器的受控姿态运动学方程;
使用状态空间x描述航天器的姿态,并确定对应的控制变量u,根据航天器的转动惯量,建立如下的航天器受控姿态运动学方程:
其中,t为时间变量。
步骤2:确定航天器姿态调整过程中的初始与终端状态,并设定状态变量与控制变量的相关约束条件;
记姿态调整任务的开始时刻为ts,航天器对应的初始状态为xs。记姿态调整任务中期待的航天器终端状态为xf。
为完成特定的信息传出任务,姿态调整过程中航天器的姿态需要满足一定的条件;同时,为避免控制饱和,需要对控制变量时间相应的箱型约束。为此,将姿态调整任务中状态变量与控制变量对应的约束条件采用如下的不等式约束描述:
h(x,u,t)≤0(2)
步骤3:建立航天器姿态调整过程的能量-时间混合最优控制问题
根据航天器的受控姿态运动学方程,以及姿态调整任务的边界条件和存在的约束条件,建立如下的能量-时间混合最优控制问题:
其中,tf为姿态调整任务结束的时刻,ts为姿态调整任务开始的时刻,x(ts)为姿态调整任务的初始边界条件,x(tf)为姿态调整任务的终端边界条件,t=tf-ts表示姿态调整任务的执行时间,
当问题p收敛时,应满足如下的横截条件:
其中,λ为问题p对应的协态变量。
步骤4:利用割线法迭代逼近真实的终端时间以实现原始问题的求解
步骤4-1:设置两个合理的终端时间的初始猜测,并提供对应的状态变量与控制变量的初始猜测;
设置两个合理的终端时间的初始猜测为
步骤4-2:迭代过程初始化
设置收敛误差ε,令迭代指标k=2。所述收敛误差ε根据期望的数值解精度进行选取,一般不大于10-2。
步骤4-3:更新迭代指标k=k+1。
步骤4-4:利用割线法更新终端时间为:
将问题p中终端时间tf分别固定为
步骤4-5:流程判断
若|f(k)|≤ε,则迭代结束,即
本发明相对于现有技术,有益效果在于:在能量-时间混合最优控制框架下求解航天器姿态调整任务,能够方便的考虑任务中状态变量与控制变量的约束,将原始的终端时间不定最优控制问题转化为一系列终端时间固定问题,并利用割线法迭代确定终端时间,避免了传统直接转化为非线性数学规划问题求解过程中存在的强非线性问题,对于航天器姿态调整任务的高效、可靠求解具有重要意义。本发明中阐述的方法具有很强的可操作性和可行性,便于实际应用。
附图说明
图1为本发明的计算流程图。
图2为本发明利用割线法确定终端时间的原理图。
图3为本发明实施例中航天器的示意图。
图4为本发明实施例中状态变量的变化历程。
图5为本发明实施例中控制输入的变化历程。
图6为本发明实施例中终端时间的迭代历程。
具体实施方式
以下结合具体实施例对本发明做进一步说明。
图2为一航天器示意图,其绕轴1、轴2、轴3的转动惯量分别为i1=86.24,i2=85.07与i3=113.59(单位kg·m2)。绕轴1、轴2、轴3的角速度分别记为ωk(k=1,2,3)(单位rad/s)。由动量轮提供的转矩分别为uk(k=1,2,3)(单位n·m)。
一种基于割线法确定终端时间的航天器姿态调整能量-时间混合最优控制方法,包括以下步骤:
步骤1:建立航天器的受控姿态运动学方程
使用状态空间x=[ω1,ω2,ω3]t描述航天器的姿态,并选取控制变量u=[u1,u2,u3]t,建立如下的航天器受控姿态运动学方程
步骤2:确定航天器姿态调整过程中的初始与终端状态,并设定状态变量与控制变量的相关约束条件
记姿态调整任务的开始时刻为ts=0s,航天器对应的初始状态为xs=[0.01,0.005,0.001]t。记姿态调整任务中期待的航天器终端状态为xf=[0,0,0]t。
姿态调整过程中,要求角速度ω1(t)满足如下约束条件
ω1(t)-(5×10-6t2-5×10-4t+0.016)≤0(7)
控制变量满足如下约束
|uk|≤0.02,(k=1,2,3)(8)
将公式(7)~(8)中的约束条件使用如下的不等式约束描述
h(x,u,t)≤0(9)
步骤3:建立航天器姿态调整过程的能量-时间混合最优控制问题
根据航天器的受控姿态运动学方程(6),以及姿态调整任务的边界条件和存在的约束条件(9),建立如下的能量-时间混合最优控制问题:
其中,tf为姿态调整任务结束的时刻,t=tf表示姿态调整任务的执行时间,取能量-时间混合最优控制问题中执行时间的权重为α=1×10-4。当问题p收敛时,应满足如下的横截条件
其中λ为问题p对应的协态变量。
步骤4:利用割线法迭代逼近真实的终端时间以实现原始问题的求解
步骤4-1:设置两个合理的终端时间的初始猜测,并提供对应的状态变量与控制变量的初始猜测
设置两个合理的终端时间的初始猜测
步骤4-2:迭代过程初始化
设置收敛误差ε=1×10-10,令迭代指标k=2。
步骤4-3:更新迭代指标
更新迭代指标k=k+1。
步骤4-4:利用割线法更新终端时间
根据图2,利用割线法更新终端时间为
将问题p中终端时间tf分别固定为
步骤4-5:流程判断
若|f(k)|≤ε,则迭代结束,即
根据上述步骤,经过7次迭代收敛,终端时间为tf=66.99087s,性能指标j=0.01370051217。计算得到的航天的状态变量与控制输入的时间历程分别如图4~图5所示,终端时间的迭代历程如图6所示。
本发明将航天器姿态调整对应的能量-时间混合最优控制问题,转化为一系列具有固定终端时间的能量最优控制问题,在提供两个合理的终端时间初始猜测的基础上,根据终端时间不定最优控制问题中终端时间相关的横截条件,利用割线法,实现终端时间的迭代确定。由于在每个迭代步中,求解的是一个具有明确终端时间的最优控制问题,配点位置是确定的,可以使用成熟的最优控制数值方法快速实现求解,从而保证了整个求解过程的效率与鲁棒性。
以上所述实施例仅表达本发明的实施方式,但并不能因此而理解为对本发明专利的范围的限制,应当指出,对于本领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些均属于本发明的保护范围。