时间:2024-06-19
苏清源
(黑龙江工程学院 汽车与交通工程学院,哈尔滨 150050)
推力器作为一种先进的推进装置,属于离子推力器,具有结构简单、高比冲、高效率等优点,在航天器推进、船舶推力等系统中均具有重要作用,其能够对航天器的位姿进行推进控制[1]。推力器在应用过程中,推力受限或者发生控制指令冗余等情况后,会影响推力器的应用和控制效果[2],例如燃料消耗、功率消耗、控制分配等方面。过驱动系统指的是控制输入数量超过输出数量的系统[3],该类系统普遍存在冗余控制特点,而航天器则属于典型的过驱动系统,其存在的冗余控制现象极大程度增加了控制器的控制难度[4]。推力器在过驱动系统中应用时,会结合实际的应用需求,采用分组的方式设定推力器使用的数量[5],因此,需采用合理的过驱动控制方法,该类方法主要是利用多组执行系统完成近似的控制效应,将期望控制量分配到冗余且推力受限的每一个推力器上,以此实现推力器的有效控制。常见的过驱动控制方法主要包含动态控制和静态控制两种,可结合控制需求[6],选择合理的控制方法。文献[7]为实现推力器的容错控制,以推力器的动态特点为依据,通过模型预测实现推力器容错分配控制,该方法在应用过程中对于推力力矩的控制偏差较大。文献[8]为实现推力器的有效控制,降低不确定因素对其造成的干扰,提出过驱动姿态动态控制方法,但是该方法在应用过程中对于推力的控制效果较差。
ALPSO算法也称为增强拉格朗日粒子群优化算法,该算法能够在保证基础粒子群优化算法的基础上提升算法的全局搜索能力[9],并增强算法的收敛性,获取全局最优解。因此,文中提出基于ALPSO算法的过驱动最小推力控制方法,该方法以推力器的动力学和运动学状态为基础,结合推力器的期望控制结果,构建期望控制效果和各个执行系统控制指令的实时映射,保证期望控制结果和实际控制输出结果之间最大程度吻合。其在控制过程中主要以控制分配的方式为主,可在执行冗余情况下完成期望控制结果的优化分配,保证控制效果。
为实现过驱动最小推力的精准控制,提出基于ALPSO算法的过驱动最小推力控制方法,该方法的整体框架如图1所示。
图1 基于ALPSO算法的过驱动最小推力控制方法框架
该方法整体分为两部分:一是控制目标确定;二是控制目标函数求解。其中,控制目标的确定是以推力器的动力学特性和运动特性为基础完成控制律设计,以此获取总控制指令;同时,充分考虑各个推力器控制执行的相关物理约束,向冗余的执行推力器中合理分配总控制指令,以此获取期望控制结果,在此基础上确定最小推力的控制目标函数。目标函数确定后,采用ALPSO算法求解目标函数,获取最优的控制结果[10]。通过该方法能够最大化利用推力器执行系统对过驱动推力进行控制,即使在推力器发生故障时,也无需重新进行控制律的设定,直接实现推力器执行系统的重构以及分配过程的优化,获取最佳的控制结果。
如果第i个推力器的推力用Fi表示,其最大值用Fimax表示,则在本体坐标系中,该推力器的作用力Ui表示为
(1)
作用力矩的计算公式为
(2)
如果所有推力器的推力列阵用F=[F1,F2,…,Fn]T表示,其作用力矩的计算公式为
(3)
作用力计算公式为
U=BF.
(4)
式中:推力器单位推力矢量的力效率矩阵用B表示,其表达式为
B=[b1,b2,…,bn].
(5)
综合式(3)~(5)即构成推力器的推力分配数学模型。
1.3.1 负载均衡控制分配
推力器的推力控制分配主要目的是将控制器给出的期望控制指令按照所需的优化指标,将其分配给冗余的推力器冗余执行系统,以此提升控制性能[12]。控制分配整体可划分为两个层次:一是控制误差最优;二是分配最优。
控制误差最优是以B为依据,获取向量P,且需满足推力器推力期望力矩误差函数ψ最小的条件,其公式为
ψ=‖BP-rd‖l.
(6)
式中:rd表示控制器给出的控制指令;l表示向量范数。
分配最优是以B为基础,获取满足式(7)的向量Pg。
ψ=‖P‖l,
(7)
以此保证BP=BPg。
结合上述两个层次的内容,确定过驱动系统的推力器推力期望力矩误差函数ψ最小作为优化控制分配的目标函数,同时为保证分配给各个推力器的推力相等[13],引入负载均衡理念,优化控制分配的目标函数公式为
(8)
式中:选择向量范数l保证误差的最优;控制最优则选择无穷范数∞,以此保证负载均衡。
该目标函数无法直接进行求解,因此,需进行转换,文中结合控制需求[14],引入参变量P′,使其满足P′=‖P‖∞,与此同时定义一个标量函数ξ,其表达式为
(9)
在上述函数的基础上,设定松弛变量δ,其表达式为
δP=P′I-P.
(10)
式中:I表示推力器比冲矩阵。
除引入上述δ后,还引入误差松弛变量ε+和ε-,两者的表达式为
(11)
依据式(11)即可获取总体的误差松弛变量ε结果,其计算公式为
ε=ε+-ε-.
(12)
如果推力器最大推力值的集合用Fmax=[F1max,…,Fnmax]T表示,则
(13)
对于ε而言,
εmax=s(rd)+s(-rd).
(14)
(15)
基于上述内容即可获取转换后的分配控制线性目标函数,其公式为
(16)
式中:xmax=[εmax,εmax,Fmax,Fmax,Fmax]T;x表示状态量;c表示控制系数。
1.3.2 目标函数求解
通过上述确定过驱动推力器分配控制目标函数后,采用ALPSO算法求解目标函数,获取推力器推力期望力矩误差函数ψ的求解结果。该算法在求解过程中每个粒子均对应一个可行解,通过获取全局最优粒子确定目标函数的最优解。
ALPSO算法在求解过程中以拉格朗日为基础,引入一个和目标函数约束条件相关的二次罚函数项η,以此保证约束的可行性,η的计算公式为
在个体寻优过程中,λj和φj维持不变,当个体寻优结束后,则依据最优个体结果完成两个参数的更新,更新公式为
(18)
(19)
基于ALPSO算法求解流程如下:
1)参数初始化处理。使λj和φj的值分别为0和r0;对所有粒子个体进行划分,形成3个维度,分别用λu,λe和λi表示,通过随机方式在可行域范围内完成所有粒子位置和速度的更新。
(20)
式中:w表示惯性权重;ρk表示随机方向参数;m1表示随机数。
当迭代达到最大迭代次数时,输出个体最优结果。
4)依据3)的最优个体结果完成增广拉格朗日函数更新,并生成新的目标函数。
5)如果不满足迭代终止条件,转至2);如果满足则输出求解结果。
为验证文中方法对过驱动系统推力器的控制效果,以航天推进系统为例,展开相关测试,该推进系统中使用的推力器推力为3 MN,应用效率为24.5%。比冲为4 660 s,功率为115 W。ALPSO算法相关参数如表1所示。
表1 ALPSO算法相关参数
(21)
(22)
(23)
式中:Lcmd(t)表示没有偏差的执行指令;Ldelta(t)表示存在偏差的执行指令;Δ表示常值偏差向量;N表示采样时间点数量。
表2 控制性能测试结果
为验证方法的控制效果,获取推力器在运行过程中发生控制故障时,应用文中方法后推力器的推力和力矩的变化情况,测试结果如图2所示。
图2 控制效果测试结果
对图2测试结果进行分析后得出:推力器发生控制故障时,其推力结果发生显著地波动变化;采用该方法对其进行控制后,推力结果快速恢复平稳,并极大程度接近期望推力结果,且控制前力矩结果也发生明显上升趋势,应用文中方法后,力矩结果快速调整,并向理想力矩结果靠近。因此,该方法具有较好的应用效果,能够快速完成推力器的控制,保证推力器在理想状态下运行。
为直观验证文中方法对于推力器的控制效果,获取对推力器控制后推力器的运行轨道情况,并将其和设定的理想轨道进行对比,测试结果如图3所示。
图3 推力器的运行轨道情况测试结果
对图3测试结果进行分析后得出:采用文中方法对推力器进行控制后,推力器能够按照设定的理想轨道运行,并且运行结果和设定轨道结果几乎完全一致,没有发生较大偏差。因此,文中方法具有较好的应用性能,能够极大程度保证推力器的分配控制效果。
为深入验证方法的控制应用性能,获取不同程度的不确定性时,对推力器进行控制后,x,y,z轴分配控制最大力矩的偏差结果如表3所示。
表3 分配控制最大力矩的偏差结果
对表3测试结果进行分析后得出:随着不确定性程度的逐渐增加,文中方法在对推力器进行控制时,推力器在x,y,z轴上的分配控制力矩偏差均低于0.020 0,其中,3个轴上的最大偏差结果分别为0.017 6、0.016 8、0.017 2。因此,该方法在应用过程中具有较好的抗干扰能力,能够在不确定性的情况实现推力器的有效控制。
推力器的控制效果直接影响过驱动系统的整体控制性能,因此,为保证推力器的控制效果,提出基于ALPSO算法的过驱动最小推力控制方法。该方法主要针对过驱动控制系统的控制特点,设定控制目标函数,并完成目标函数求解,获取最优控制结果。对该方法的应用性能进行相关测试验证后得出:文中所提方法具有较好的应用性能,抗干扰性能较高,能够快速完成控制指令的分配和响应,并且控制后可保证推力器的推力结果和理想结果吻合,且保证极小的控制误差;采取的研究方法为理论研究结合实验验证。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!