一种基于1553B总线冗余的姿控输出信号表决方法与流程

文档序号:20007091发布日期:2020-02-22 03:42阅读:133来源:国知局
一种基于1553B总线冗余的姿控输出信号表决方法与流程

本发明涉及运载火箭控制系统设计领域,具体涉及一种基于三套1553b总线冗余的姿控输出信号表决方法。



背景技术:

新一代运载火箭控制系统采用三套独立的1553b总线进行控制信息和遥测信息的传输;控制系统各单机采用三冗余设计,即每个单机均有三个总线接口和三个处理单元,通过1553b总线实现互联,每个处理器对应一套单独的1553b总线。

如图1所示为控制系统单机三冗余设计示意图,在三冗余控制系统中,箭载计算机作为1553b总线的总线控制终端(简称bc),周期性的从三套总线上分别采集惯组、速率陀螺等姿态、位置传感器信息,箭载计算机的3个cpu分别进行导航、姿控计算,并将计算得到的姿态控制指令信号通过总线发送给姿态控制执行机构,姿态控制执行机构作为远程终端(简称rt)。各单机内部cpu通过内部总线进行通信,实现单机内部各处理器的数据交互。

但是在姿控指令数据执行过程中可能存在以下故障情况,导致错误执行姿态控制指令信号:1)箭载计算机cpu控制指令数据发送错误;2)箭载计算机故障无法发送姿控指令数据;3)箭载计算机发送姿控指令不同步的情况;4)箭载计算机发送姿控指令不一致的情况;4)总线通路故障的情况;5)姿态控制执行机构cpu故障的情况;6)姿态控制执行机构内一个cpu内部通信故障,无法接收其它两个cpu信号。



技术实现要素:

本发明针对运载火箭三冗余控制系统指令执行过程中可能存在的故障情况,提出一种基于三套1553b总线冗余的姿控输出信号表决方法,实现正确执行姿态控制指令信号的目的。

本发明的技术解决方案是:一种基于1553b总线冗余的姿控输出信号表决方法,包括如下步骤:

(1)控制姿态控制执行机构内部的各个cpu通过内部总线分别向其它2个内部cpu周期性发送工作状态信息,其中,姿态控制执行机构内部设有3个cpu,3个cpu分别通过对应的1553b总线接收箭载计算机发送的姿控指令;

(2)判断姿态控制执行机构内部各个cpu的通信是否正常;

(3)判断姿态控制执行机构内部各个cpu接收到的姿控指令数据是否可靠,当cpu通信正常,且接收到的姿控指令数据可靠时,当前cpu接收的姿控指令数据有效;

(4)判断姿态控制执行机构内部每个cpu接收到的各自的三路姿控指令数据,当三路姿控指令数据均有效时,转入步骤(5),当两路姿控指令数据有效时,转入步骤(6),当一路的指令数据有效时,转入步骤(7);

(5)对姿控指令数据进行三取二表决,将中间值作为姿控输出信号;

(6)对姿控指令数据进行平均处理,将均值作为姿控输出信号;

(7)若延时k1毫秒其它两路均通信异常时,则直接执行接收到的姿控指令数据,否则进入下一处理周期,其中,k1为正数;

(8)在每个姿控输出信号周期内,每个cpu均执行一次步骤(1)~步骤(7),直至完成全部姿控输出信号表决。

所述步骤(1)中的工作状态信息包括与当前cpu对应的1553b总线通信是否正常、当前cpu工作是否正常,工作状态信息发送频率不小于姿控指令数据的发送频率。

所述步骤(2)中,如果姿态控制执行机构内部某个cpu连续k2时间未收到另1个cpu的工作状态信息,或者连续k2时间收到的另1个cpu的工作状态信息与正常值不符,则判断另1个cpu的通信路数通信异常,其中,k2不小于姿控指令发送周期。

所述步骤(3)中判断姿态控制执行机构内部各个cpu接收到的姿控指令数据是否可靠的方法为:

(31)判断cpu是否收到箭载计算机通过1553b总线发送的姿控指令数据;

(32)判断cpu是否收到箭载计算机通过1553b总线发送的心跳信号;

(33)若cpu收到姿控指令数据、心跳信号,转入步骤(34),否则转入步骤(35);

(34)计算接收的姿控指令数据的校验码,若计算得到的校验码与姿控指令数据自带校验码值不一致,则转入步骤(35),否则转入步骤(36);

(35)判定当前cpu未收到可靠的姿控指令数据,并转入步骤(37);

(36)判定当前cpu收到的姿控指令数据可靠,将姿控指令数据通过内部总线发送给其它2个cpu,转入步骤(37);

(37)判断当前cpu从其它cpu接收的姿控指令的校验码,若从其它cpu接收的姿控指令计算得到的校验码与从其它cpu接收的姿控指令数据自带的校验码值不一致,则判定其它cpu未收到可靠姿控指令,否则认为其他cpu的姿控指令数据可靠,进而完成接收到的各个cpu发送的指令数据是否可靠的判断。

所述步骤(4)中三取二表决的方法为:

(41)将三路有效指令数据分别记为dc1(nt)、dc2(nt)、dc3(nt),对dc1(nt)、dc2(nt)和dc3(nt)按大小进行排序,得到d1≥d2≥d3,其中,t表示控制周期,nt表示第n个周期;

(42)将中间值dc(nt)=d2作为姿控指令数据,完成表决处理。

所述的k1为60ms,k2为40ms。

本发明与现有技术相比的优点在于:

(1)本发明按照姿控输出信号表决方法的先后步骤,将姿态控制执行机构各种可能发生的情况归纳总结后,提出流程化,自动化的处理步骤,最终执行输出的姿态控制指令安全可靠,可信度高;

(2)本发明采用姿控指令数据转发措施,适应cpu通信正确下无法收到有效姿控数据的情况,能够适应故障模式的组合情况;

(3)本发明采用多重判断和校验措施,通信可靠性和数据可靠性判断,保证指令数据可信度;

(4)本发明方法考虑正常工作模式、一度故障模式,两度故障模式,灵活方便、容错性强。

附图说明

图1为现有控制系统单机三冗余设计示意图;

图2为本发明方法步骤示意图;

图3为本发明方法中指令数据可靠性流程示意图。

具体实施方式

本发明针对运载火箭三冗余控制系统指令执行过程中可能存在的故障情况,提出一种基于三套1553b总线冗余的姿控输出信号表决方法,实现正确执行姿态控制指令信号的目的。下面结合附图对本发明方法进行详细的解释和说明,如图2所示是本发明方法步骤示意图,如图3所示为本发明方法中指令数据可靠性流程示意图。

以cpu_a、cpu_b、cpu_c区分三个cpu,以1553b_a、1553b_b、1553b_c区分三套1553b总线。控制系统箭载计算机总线控制器发送姿态控制指令数据周期为20毫秒。以下以cpu_a处理流程为例。本发明提出的基于三套1553b总线冗余的姿控输出信号表决方法,具体实施步骤如下:

1、姿态控制执行机构各cpu通过内部总线向其它两个cpu周期性发送工作状态信息

工作状态信息包含本套1553b总线通信是否正常,以0xaa表示正常状态,0x55表示异常状态,其余数据表示无效状态。cpu工作是否正常的信息,以0xbb表示正常状态;0x44表示异常状态,其余数据表示无效状态。发送cpu工作状态信息用以表征本路cpu工作状态是否正常,同时也表征两两cpu之间内部通信是否正常;内部总线发送工作状态信息频率为1ms。对于判断而言,工作状态信息的内容不等于正常状态,则判定为通信异常。

2、姿态控制执行机构各cpu之间通信正常与否进行判断

姿态控制执行机构的cpu如果连续k2毫秒未收到其它cpu的工作状态信息,则认为对方cpu所处的通信路数通信异常,k2典型值为40。或者连续k2毫秒收到其它cpu的工作状态信息与正常值不符,则认为对方cpu所处的通信路数通信异常。

以cpu_a为例,cpu_a连续40毫秒未收到cpu_b的工作状态信息,或连续40毫秒收到cpu_b的工作状态信息为异常信息,cpu_a认为b套系统总线通信异常。cpu_a连续40毫秒未收到cpu_c的工作状态信息,或连续40毫秒收到cpu_c的工作状态信息为异常信息,cpu_a认为c套系统通信异常。

姿态控制执行机构各cpu通过综合分析其它2个cpu的工作状态信息,判别出与其它2个cpu通信是否正常;各个cpu之间通信默认值为正常工作状态;判断与某一路cpu通信异常后,若后续过程该cpu通信恢复正常,则判定该cpu所处的通信路数正常。

3、姿态控制执行机构各cpu对接收的指令数据可靠性进行判别处理

姿态控制执行机构姿控指令数据的周期为10ms。

步骤3.1:对指令周期内cpu是否收到姿控指令数据进行判断。

步骤3.2:对cpu是否收到1553b总线上总线控制器发送的心跳信号进行判断。

步骤3.3:同时满足步骤3.1,步骤3.2的情况下,对cpu从本套1553b总线接收的姿控指令数据的正确性进行校验判断,进入步骤3.4,否则进入步骤3.5。

步骤3.4:计算姿控指令数据的校验码,当计算得到的校验码值与1553b总线姿控指令数据中自带的校验码值不一致时,进入步骤3.5;当计算得到的校验码值与1553b总线姿控指令数据中自带的校验码值一致时,进入步骤3.6。

步骤3.5:判定该cpu所处的通信路数未收到可靠的姿控指令数据,进入步骤3.7;

步骤3.6:判定该cpu所处的通信路数收到的姿控指令数据可靠,将姿控指令数据通过姿态控制执行机构内部总线发送给其它2个cpu,进入步骤3.7;

步骤3.7:对本cpu从其它cpu接收的姿控指令数据的校验码进行判断,当计算得到的校验码值与姿控指令数据中自带的校验码值不一致时,则认为对方cpu处所的通信路数未收到可靠姿控指令;当计算得到的校验码值与姿控指令数据中自带的校验码值一致时,则认为对方cpu处所的通信路数的姿控指令数据可靠。

以cpu_a为例,在收到有效的姿控指令数据情况下,将姿控指令数据通过姿态控制执行机构内部总线发送给cpu_b、cpu_c。cpu_a对从cpu_b、cpu_c通过内部总线发给cpu_a的姿控指令可靠性进行判断。若从cpu_b发给cpu_a的姿控指令校验码值正确,则认为b套系统收到可靠的姿控指令,其它情况视为b套系统未收到可靠的姿控指令;若从cpu_c发给cpu_a的姿控指令校验码值正确,则认为c套系统收到可靠的姿控指令,其它情况判定c套系统未收到可靠的姿控指令。

4、姿态控制执行机构三路指令数据均有效的情况下对指令数据进行三取二表决处理

当前cpu同时满足cpu路数通信正常和姿控指令数据可靠的条件时,判定接收的指令数据有效;否则判定接收到指令数据无效。

三取二表决处理处理过程如下:

步骤4.1:三路有效指令数据分别为:dc1(nt)、dc2(nt)、dc3(nt),其中t表示控制周期,nt表示第n个周期,对dc1(nt)、dc2(nt)和dc3(nt)按大小进行排序,得到d1≥d2≥d3;

步骤4.2:表决处理得到最终执行输出的姿控指令数据dc(nt)=d2;

设定a套系统收到的姿控指令为2、b套系统收到姿控指令为4,c套系统收到姿控指令为5。则:

dc1(nt)=2、dc2(nt)=4、dc3(nt)=5

dc(nt)=d2=4。

最终执行输出的姿控指令数据为4。

5、姿态控制执行机构两路指令数据有效的情况下对指令数据进行平均处理。

姿态控制执行机构两路有效指令数据平均处理过程如下:设定两路有效指令数据分别为dc1(nt)、dc2(nt),最终执行输出的姿控指令数据dc(nt)计算如下:

dc(nt)=(dc1(nt)+dc2(nt))/2

设定a路收到的姿控指令数据为2,b路收到姿控指令数据为4,c路未收到有效指令。则

dc(nt)=(dc1(nt)+dc2(nt))/2=3

最终执行输出的姿控指令数据为3。

6、姿态控制执行机构在一路的指令数据有效情况下延时k1毫秒后且判断其它两路通信异常条件下,直接执行接收到的指令数据。

姿态控制执行机构延时k1毫秒取值必须大于指令发送周期,k1典型值为60;姿态控制执行机构在一路的指令数据有效条件下,如果延时未超过k1毫秒,或者当前处理周期无法判断出其它两路通信异常的情况,则进入下一处理周期再处理。

设定a套系统收到的姿控指令数据为2,在60毫秒内未收到cpu_b、cpu_c发给cpu_a的姿控指令,且其它两路通信异常,最终执行输出的姿控指令数据为2。若未超过60ms,则进入下一处理周期。若当前周期无法判断出其他两路均通信异常,则进入下一周期。

综上所述,本发明一种基于三套1553b总线冗余的姿控输出信号表决方法,按照姿控输出信号表决方法的先后步骤,将姿态控制执行机构各种可能发生的情况归纳总结后,提出流程化,自动化的处理步骤,实现输出准确可靠,尽可能多的故障模式,满足姿控指令数据控制可靠性和实时性的要求。

本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1