一种推力器分配真值表生成方法及装置转让专利

申请号 : CN202010759154.4

文献号 : CN111878260B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 马玉海吴炜平袁春贵廉洁刘凯张霞张智境谷志丹杨毅强

申请人 : 北京中科宇航技术有限公司

摘要 :

本申请公开一种推力器分配真值表生成方法及装置。所述方法包括从通道力矩指令译码表中获取各通道控制力矩,并为各通道指令列表中的各通道控制指令设定对应的取值集合;对各通道指令列表进行遍历,根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,并计算索引键值;对推力器对列表进行遍历,若成对的推力器存在对消状态,则关闭这对推力器,存储当前通道指令组合+索引键值+开关状态组合,返回继续进行通道指令列表遍历,直至通道指令列表遍历完成,得到包括所有通道指令组合+索引键值+开关状态组合的推力器分配真值表。有效避免各通道推力器指令组合后可能相互抵消的问题,便于飞行控制软件快速查询组合结果。

权利要求 :

1.一种推力器分配真值表生成方法,其特征在于,包括如下步骤:从通道力矩指令译码表中获取各通道控制力矩,并为各通道指令列表中的各通道控制指令设定对应的取值集合;

根据各通道控制指令设定的取值集合,对各通道指令列表进行遍历,在遍历过程中根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,并计算索引键值;

对推力器对列表进行遍历,若成对的推力器存在对消状态,则关闭这一对推力器,存储当前通道指令组合+索引键值+开关状态组合,返回继续进行通道指令列表遍历,直至通道指令列表遍历完成,得到包括所有通道指令组合+索引键值+开关状态组合的推力器分配真值表。

2.如权利要求1所述的推力器分配真值表生成方法,其特征在于,各通道控制力矩MK包括‑MK,0,+MK三种状态,K=X,Y,Z;所述通道指令列表包括各通道控制力矩MK对应的滚动、偏航、俯仰RCS控制指令x,y,z,为每个控制指令设定对应的取值集合为{‑1,0,1}。

3.如权利要求1所述的推力器分配真值表生成方法,其特征在于,根据各通道控制指令设定的取值集合,对各通道指令列表进行遍历,具体包括如下子步骤:Step11:判断是否完成Z通道指令列表遍历,如果是,则输出所有行通道指令组合+索引键值+开关状态组合;否则执行步骤Step12;

Step12:判断是否完成Y通道指令列表遍历,如果是,则将当前Z通道指令z置为通道指令列表中下一指令,返回步骤Step11;否则执行步骤Step13;

Step13:判断是否完成X通道指令列表遍历,如果是,则将当前Y通道指令y置为通道指令列表中下一指令,返回步骤Step12,否则根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,并计算索引键值。

4.如权利要求1或3所述的推力器分配真值表生成方法,其特征在于,所述根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,并计算索引键值,具体包括如下子步骤:

根据当前X、Y、Z通道指令x,y,z查询通道力矩指令译码表,从通道力矩指令译码表中获取对应的推力器开关状态;

对查询到的推力器开关状态组合取并集;

根据当前X、Y、Z通道指令x,y,z的取值计算索引键值。

5.如权利要求4所述的推力器分配真值表生成方法,其特征在于,采用下式的3进制键值译码算法计算索引键值:key=(z+1)*9+(y+1)*3+(x+1)。

6.如权利要求3所述的推力器分配真值表生成方法,其特征在于,对推力器对列表进行遍历,具体包括如下子步骤:

Step21:初始化推力器对列表;

Step22:判断是否完成推力器列表遍历,如果是,则将当前X通道控制指令x置为列表中下一指令,返回执行步骤Step13,否则执行步骤Step23;

Step23:判断当前推力器对中开关状态是否存在对消状态,如果是,则关闭当前对推力器,存储当前通道指令组合+索引键值+开关状态组合,将当前推力器对置为列表中下一项,返回步骤Step22,否则直接存储当前通道指令组合+索引键值+开关状态组合,将当前推力器对置为列表中下一项,返回Step22。

7.如权利要求6所述的推力器分配真值表生成方法,其特征在于,当前推力器对中开关存在对消状态的判断方式为判断当前推力器对的开关状态,如果均为1则存在对消状态,如果不是全为1则不存在对消状态;若检查当前推力器对的开关状态均为1,则将当前推力器对中开关状态均置为0。

8.如权利要求1所述的推力器分配真值表生成方法,其特征在于,对通道力矩指令译码b

表的遍历总次数=a,其中a为控制指令取值集合元素数量,b为通道数量。

9.一种推力器分配真值表生成装置,其特征在于,包括:所述装置执行如权利要求1‑8任一项所述的推力器分配真值表生成方法。

说明书 :

一种推力器分配真值表生成方法及装置

技术领域

[0001] 本申请涉及运载火箭推力器领域,尤其涉及一种推力器分配真值表生成方法及装置。

背景技术

[0002] 为使得多级运载火箭将有效载荷送入预定轨道的轨迹最优,需要在各级之间加入惯性滑行阶段,即运载火箭的主发动机不工作,而在无动力状态下借助惯性自由运动至最
优点火点。由于运载火箭一般使用推力矢量控制装置,通过偏转主发动机的推力方向实现
姿态控制,因而在惯性滑行阶段,需要额外的反作用控制系统(Reaction Control System,
RCS)来进行姿态控制。
[0003] 典型的RCS配置如图1,从箭体尾部向头部看,沿圆周顺时针间隔90°均布的4条母线称为象限线,其中0°对应Ⅰ象限线,90°对应Ⅱ象限线,180°对应Ⅲ象限线,270°对应Ⅳ象
限线。
[0004] 箭体坐标系O‑XYZ定义:原点为箭体理论质心,OX沿箭体纵轴指向前,OY轴与OX垂直并在箭体纵向对称面内向上(从Ⅰ象限线指向Ⅲ象限线),OZ轴由右手定则确定(从Ⅱ象限
线指向Ⅳ象限线)。定义控制力矩的正方向+MK为绕各个坐标轴的右手方向,其中K=X,Y,Z,
分别称为滚动通道,偏航通道与俯仰通道。
[0005] 作为实例,典型的RCS中,共配置8台推力器,轴线安装在与箭体纵轴垂直的剖面内;各个推力器的喷流方向(即作用力的反方向)及编号如图1,推力方向如图2;其中各个推
力器的理论推力大小均相等,且推力器的控制电磁阀仅存在开(有推力,记为1)、关(无推
力,记为0)两种状态。

发明内容

[0006] 本申请提供了一种推力器分配真值表生成方法,包括如下步骤:
[0007] 从通道力矩指令译码表中获取各通道控制力矩,并为各通道指令列表中的各通道控制指令设定对应的取值集合;
[0008] 根据各通道控制指令设定的取值集合,对各通道指令列表进行遍历,在遍历过程中根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,
并计算索引键值;
[0009] 对推力器对列表进行遍历,若成对的推力器存在对消状态,则关闭这一对推力器,存储当前通道指令组合+索引键值+开关状态组合,返回继续进行通道指令列表遍历,直至
通道指令列表遍历完成,得到包括所有通道指令组合+索引键值+开关状态组合的推力器分
配真值表。
[0010] 如上所述的推力器分配真值表生成方法,其中,各通道控制力矩MK包括‑MK,0,+MK三种状态,K=X,Y,Z;所述通道指令列表包括各通道控制力矩MK对应的滚动、偏航、俯仰RCS
控制指令x,y,z,为每个控制指令设定对应的取值集合为{‑1,0,1}。
[0011] 如上所述的推力器分配真值表生成方法,其中,根据各通道控制指令设定的取值集合,对各通道指令列表进行遍历,具体包括如下子步骤:
[0012] Step11:判断是否完成Z通道指令列表遍历,如果是,则输出所有行通道指令组合+索引键值+开关状态组合;否则执行步骤Step12;
[0013] Step12:判断是否完成Y通道指令列表遍历,如果是,则将当前Z通道指令z置为列表中下一指令,返回步骤Step11;否则执行步骤Step13;
[0014] Step13:判断是否完成X通道指令列表遍历,如果是,则将当前Y通道指令y置为列表中下一指令,返回步骤Step12,否则根据当前通道指令查询通道力矩指令译码表,对查询
到的推力器开关状态组合取并集,并计算索引键值。
[0015] 如上所述的推力器分配真值表生成方法,其中,所述根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合取并集,并计算索引键值,具体包括如下
子步骤:
[0016] 根据当前X、Y、Z通道指令x,y,z查询通道力矩指令译码表,从通道力矩指令译码表中获取对应的推力器开关状态;
[0017] 对查询到的推力器开关状态组合取并集;
[0018] 根据当前X、Y、Z通道指令x,y,z的取值计算索引键值。
[0019] 如上所述的推力器分配真值表生成方法,其中,采用下式的3进制键值译码算法计算索引键值:key=(z+1)*9+(y+1)*3+(x+1)。
[0020] 如上所述的推力器分配真值表生成方法,其中,对推力器对列表进行遍历,具体包括如下子步骤:
[0021] Step21:初始化推力器对列表;
[0022] Step22:判断是否完成推力器列表遍历,如果是,则将当前X通道控制指令x置为列表中下一指令,返回执行步骤Step13,否则执行步骤Step23;
[0023] Step23:判断当前推力器对中开关状态是否存在对消状态,如果是,则关闭当前对推力器,存储当前通道指令组合+索引键值+开关状态组合,将当前推力器对置为列表中下
一项,返回步骤Step22,否则直接存储当前通道指令组合+索引键值+开关状态组合,将当前
推力器对置为列表中下一项,返回Step22。
[0024] 如上所述的推力器分配真值表生成方法,其中,当前推力器对中开关存在对消状态的判断方式为判断当前推力器对的开关状态,如果均为1则存在对消状态,如果不是全为
1则不存在对消状态;若检查当前推力器对的开关状态均为1,则将当前推力器对中开关状
态均置为0。
[0025] 如上所述的推力器分配真值表生成方法,其中,对通道力矩指令译码表的遍历总b
次数=a,其中a为控制指令取值集合元素数量,b为通道数量。
[0026] 本申请还提供一种推力器分配真值表生成装置,所述装置执行上述所述的推力器分配真值表生成方法。
[0027] 本申请实现的有益效果如下:采用本申请所提出的综合推力器分配真值表生成方法,能够避免各通道推力器指令组合后可能相互抵消的问题。且其中根据状态组合规律加
入了便于计算的索引项,索引具有一一映射的特点,便于飞行控制软件快速查询组合结果,
具有逻辑清晰,计算和存储需求量均较小的优点。

附图说明

[0028] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他
的附图。
[0029] 图1和图2是现有技术中典型的RCS配置图以及推力方向示意图;
[0030] 图3是本申请实施例一提供的一种综合推力器分配真值表生成方法流程图;
[0031] 图4是本申请实施例一提供的一种综合推力器分配真值表生成方法具体流程图。

具体实施方式

[0032] 下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明
中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都
属于本发明保护的范围。
[0033] 实施例一
[0034] 对于传统的推力器分配一般按照各个通道的控制力矩需求,独立给出如下表1所示的指令译码表,然后直接查表后取并集,获得输出给推力器控制电磁阀的指令;
[0035] 表1通道力矩指令译码表
[0036] 力矩指令 #1 #2 #3 #4 #5 #6 #7 #8+MX 1 0 1 0 1 0 1 0
‑MX 0 1 0 1 0 1 0 1
+MY 0 1 0 0 1 0 0 0
‑MY 1 0 0 0 0 1 0 0
+MZ 0 0 0 1 0 0 1 0
‑MZ 0 0 1 0 0 0 0 1
[0037] 然而,由于运载火箭一般采用三通道独立控制,当同时需要绕Y(或Z)与X的控制力矩时,会出现相互抵消的作用力,造成推进剂的浪费;
[0038] 以+MX与+MY同时出现的工况为例,需要开启的推力器组合如下表2所示,其中#1与#2推力器产生的推力大小相等,方向相反,实际上相互抵消了作用力和力矩。
[0039] 表2典型推力器组合
[0040]#1 #2 #3 #4 #5 #6 #7 #8
1 1 1 0 1 0 1 0
[0041] 针对各通道推力器指令组合后可能相互抵消的问题,本申请实施例一提出一种综合推力器分配真值表生成方法,如图3所示,包括如下步骤:
[0042] 步骤310:从通道力矩指令译码表中获取各通道控制力矩MK,并为各通道指令列表中的各通道控制指令设定对应的取值集合;
[0043] 通道力矩指令译码表是通过飞行控制软件根据当前飞行状态给出,如表1所示的通道力矩指令译码表;各通道控制力矩MK包括‑MK,0,+MK三种状态;其中,K为通道标识,K=
X,Y,Z,对应滚动、偏航、俯仰RCS控制指令x,y,z取值集合分别记为{‑1,0,1},即:
[0044] X通道控制指令 Y通道控制指令 Z通道控制指令
[0045] 步骤320:根据各通道控制指令设定的取值集合,对各通道指令列表进行遍历,在遍历过程中根据当前通道指令查询通道力矩指令译码表,对查询到的推力器开关状态组合
取并集,并计算索引键值;
[0046] 图4是生成推力器分配真值表的具体实现过程图,如图4所示,本步骤具体包括如下子步骤:
[0047] 步骤410:判断是否完成Z通道指令列表遍历,如果是,则输出所有行通道指令组合+索引键值+开关状态组合;否则执行步骤420;
[0048] 步骤420:判断是否完成Y通道指令列表遍历,如果是,则将当前Z通道指令z置为列表中下一指令,返回步骤410;否则执行步骤430;
[0049] 步骤430:判断是否完成X通道指令列表遍历,如果是,则将当前Y通道指令y置为列表中下一指令,返回步骤420,否则执行步骤440;
[0050] 步骤440:根据当前X、Y、Z通道指令x,y,z查询通道力矩指令译码表,从通道力矩指令译码表中获取对应的推力器开关状态;
[0051] 步骤450:对查询到的推力器开关状态组合取并集;
[0052] 步骤460:根据当前X、Y、Z通道指令x,y,z的取值计算索引键值;
[0053] 具体地,采用下式的3进制键值译码算法计算索引键值:
[0054] key=(z+1)*9+(y+1)*3+(x+1)
[0055] 本申请实施例中,对通道力矩指令译码表的遍历总次数=ab,其中a为控制指令取值集合元素数量,b为通道数量。本申请中通道包括X通道、Y通道和Z通道,每个通道分别对
应控制指令x、控制指令y和控制指令z,每个控制指令设置的取值集合为{‑1,0,1},因此,遍
3
历总次数为3=27次。
[0056] 另外,需要说明的是,图4是按控制指令z→控制指令y→控制指令x的判断顺序来遍历的,除此之外,可以将控制指令x、控制指令y和控制指令z按照任意判断顺序进行遍历,
在此不作限定。
[0057] 返回参见图3,步骤330:对推力器对列表进行遍历,若成对的推力器存在对消状态,则关闭这一对推力器,存储当前通道指令组合+索引键值+开关状态组合,返回继续进行
通道指令列表遍历,直至通道指令列表遍历完成,得到包括所有通道指令组合+索引键值+
开关状态组合的推力器分配真值表;
[0058] 如图4所示,本申请在执行完图4的步骤460之后,具体执行如下子步骤:
[0059] 步骤470:将推力器对列表初始化为1,2……n/2;
[0060] 一般在综合推力器中设置n个推力器,n为偶数表示推力器总数,即对应有n/2对推力器对,例如图2所示的四对推力器对(#1和#2为推力器对1、#3和#4为推力器对2、#5和#6为
推力器对3、#7和#8为推力器对4),预先在推力器对列表中将推力器对初始化为1,2……n/
2;
[0061] 步骤480:判断是否完成推力器列表遍历,如果是,则将当前X通道控制指令x置为列表中下一指令,返回执行步骤430,否则执行步骤490;
[0062] 步骤490:判断当前推力器对中开关状态是否存在对消状态,如果是,则关闭当前对推力器,存储当前通道指令组合+索引键值+开关状态组合,将当前推力器对置为列表中
下一项,返回步骤480,否则直接存储当前通道指令组合+索引键值+开关状态组合,将当前
推力器对置为列表中下一项,返回步骤480;
[0063] 其中,当前推力器对中开关存在对消状态的判断方式为判断当前推力器对的开关状态,如果均为1则存在对消状态,如果不是全为1则不存在对消状态;若检查当前推力器对
的开关状态均为1,则将当前推力器对中开关状态均置为0;
[0064] 下表3为最终得到的综合推力器分配真值表,查询得到的#1~#8推力器开关指令(0‑关闭;1‑开启):
[0065] 表3综合推力器分配真值表
[0066]
[0067]
[0068] 实施例二
[0069] 本申请实施例二提供一种推力器分配真值表生成装置,执行实施例一的推力器分配真值表生成方法,所述装置中将通道力矩指令译码表作为输入,输出包括所有通道指令
组合+索引键值+开关状态组合的综合推力器分配真值表。
[0070] 以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的
说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的
技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或
者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的
本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,
本申请的保护范围应所述以权利要求的保护范围为准。