一种基于三套1553B总线冗余的时间同步表决方法与流程

文档序号:20271626发布日期:2020-04-03 19:06阅读:417来源:国知局
一种基于三套1553B总线冗余的时间同步表决方法与流程

本发明涉及一种基于三套1553b总线冗余的时间同步表决方法,属于试验与测试技术领域。



背景技术:

内部时分制指令/响应式多路传输数据总线,简称1553b总线。为提高系统的可靠性,1553b总线采用三冗余方式进行通信。基于1553b总线三冗余的总线单机,分三套连接到通信总线上,每一套总线包含a、b两个通道。各总线单机均有本机的时钟,为统一运载火箭箭上总线终端各单机的时间,以箭载计算机总线控制器的发送的时间同步消息为作为统一基准。为解决各总线终端的时间同步问题,需对各单机时间基准进行约定处理,并对三套总线上的时间戳进行冗余表决处理,作为各终端最终使用的时间,避免时间错乱和时序混淆,同时保证通信的正确性、实时性。



技术实现要素:

本发明针对现有三冗余总线单机时间同步存在的技术问题,提供一种基于三套1553b总线冗余的时间同步表决方法,对三套总线上的总线时间进行表决处理,并具备适应一度故障能力。

本发明的技术解决方案是:一种基于三套1553b总线冗余的时间同步表决方法,包括如下步骤:

(1)控制各远程终端根据其接收的1553b总线心跳消息判断对应的1553b总线通信是否正常,得到各远程终端与对应1553b总线通信正常结果,其中,基于1553b总线三冗余的远程终端,分三套连接到1553b总线;

(2)控制各远程终端接收各1553b总线发送的时间同步消息,然后对接收的时间同步消息进行校验并记录接收时间,其中,时间同步消息、心跳消息均通过1553b总线的a通道、b通道分别发送,实现消息冗余;

(3)如果远程终端收到本机对应1553b总线发送的时间同步消息且远程终端与对应1553b总线通信正常,则控制本机根据直接执行对应1553b总线发送的时间同步消息进行时间同步,否则转入步骤(4);

(4)如果远程终端接收到其他两路校验通过的1553b总线发送的时间同步消息时,则取接收时间大的1553b总线发送的时间同步消息执行时间同步,否则转入步骤(5);

(5)如果远程终端只接收到一路校验通过的1553b总线发送的时间同步消息,且等待时间k1时间后其它两路1553b总线通信异常,则直接使用当前有效的时间同步消息执行时间同步,否则转入步骤(6);

(6)控制各远程终端等待下一周期继续进行表决和判断,直至时间同步表决结束。

所述的步骤(5)中执行时间同步的方法为:

执行时间同步后的cpu时间=同步时间+δt,其中,δt为时间同步消息接收时刻到产生表决时刻对应的cpu时间的时间差,同步时间为总线时间同步消息中的时间戳,cpu时间为修正后的用于更新的本机cpu时钟的时间。

所述的各远程终端k2时间内只响应一次时间同步,并将k2时间内接收到其他时间同步消息置为无效,其中,k2大于k1。

所述的远程总线终端通过1553b总线接收总线控制器周期性广播发送的心跳消息,其中,心跳消息包括校验码,用于判别心跳消息的正确性,若远程终端在设定时间内未收到对应1553b总线上的正确心跳消息,则判定对应1553b总线通信异常,若远程终端收到对应的1553b总线上的正确心跳消息,则判定对应的1553b总线通信正常。

所述的远程总线终端接收总线控制器周期性广播发送的时间同步消息,其中,时间同步中包含时间戳和校验码,远程终端根据校验码对时间同步消息的正确性进行校验,并获取时间戳,同时记录接收该时间同步消息的时刻点。

所述的k1典型值为60ms,k2为典型值100ms。

所述的心跳消息为

所述的时间同步消息为

所述的步骤(6)中远程终端在当前循环周期中直接使用本机的时钟进行计时处理,不使用1553b总线同步时间对本机的时间进行修正。

所述的时间同步消息、心跳消息,当a、b通道均判定异常时,时间同步消息、心跳消息异常。

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

(1)本发明方法与现有技术相比,1553b三冗余总线单机实现总线时间同步,时间误差毫秒级;

(2)本发明方法与现有技术相比,考虑正常工作模式优先处理策略,简化冗余表决流程,快速实用,实时性好;

(3)本发明方法与现有技术相比,时间同步消息冗余表决时,采用同步时间补偿措施,保证各总线单机同步时间更加精确;

(4)本发明方法采用多种校验措施,包括心跳校验和时间同步消息校验,保证数据的可靠性和可信度;

(5)本发明方法与现有技术相比,能够适应一度故障模式,尽量兼容较多的两度故障模式,同时考虑到单套总线测试工况,灵活方便。

附图说明

图1为本发明方法的流程框图。

具体实施方式

本发明针对现有三冗余总线单机时间同步存在的技术问题,提供一种基于三套1553b总线冗余的时间同步表决方法,按照时间同步消息冗余表决的先后步骤,将总线时间同步消息冗余表决处理的各种可能发生的情况进行归纳总结,提出流程化、自动化的处理步骤,实现时间同步,容忍一度故障,尽可能多的兼容两度故障。下面结合附图对本发明方法进行更详细的解释和说明,如图1所示是本发明一种基于三套1553b总线冗余的时间同步表决方法步骤示意图。

本发明一种基于三套1553b总线冗余的时间同步表决方法,包含以下步骤:

1、各远程终端根据1553b总线心跳消息判断总线通信是否正常

箭载计算机一般作为1553b总线控制器,是各远程终端的时间基准,周期性组织1553b心跳消息,典型周期为20毫秒。为了便于总线上各终端接收和降低总线负载率,心跳消息采用广播发送。1553b总线包含a、b两个通道,心跳消息一个周期内a总线发送一次,b总线发送一次,二者发送内容一致。心跳消息自带校验码,例如高8位和低8位的和等于0xff,高8位为心跳计算值对100取余,心跳计算值每个周期计数自增1,初值为0。各远程总线终端接收总线控制器周期性广播发送的心跳消息,各远程终端接收到心跳信号后,如果校验正常,则认为心跳信号正常,否则为异常,不进行处理。当远程终端连续未接收到本套总线心跳时间大于一定时间(例如40毫秒),则判定该终端本套总线通信异常;若该终端后续又收到本套总线上正常的心跳信号,则判定该终端总线通信恢复正常,如表1所示是本发明实施例的心跳消息示意图。

表1心跳消息示意

2、各远程终端对接收的时间同步消息进行校验并记录接收时间

箭载计算机作为1553b总线控制器,是各远程终端的时间基准,周期性组织时间同步消息,典型周期为1秒。为便于总线上各终端接收和降低总线负载率,时间同步消息采用广播发送,一个周期内a总线发送一次,b总线发送一次,二者发送内容一致。时间同步消息包含时间戳和校验码,其中时间戳是箭载计算机的时间,供各远程终端进行时间同步。各远程终端需要对时间同步消息的正确性进行校验,并获取时间同步消息时间戳,同时记录接收该时间同步消息的时刻点,如表2所示是本发明实施例的时间同步消息示意图。

表2时间同步消息示意

3、各远程终端如果收到本机的时间同步消息且总线通信正常,本机直接执行时间同步

各远程终端本机判别当前套总线同步时间正常,并且通过1553b心跳消息判断当前套总线通信正常的情况下,即可判定本机本套总线工作正常。该情况下,直接采用时间同步消息中的时间戳更新本机cpu时间,并在1毫秒内完成更新,使用该方法可显著缩短各远程终端的时间同步冗余表决等待时间,提高实时性。

4、各远程终端如果接收到其他两路有效的时间同步消息时,冗余表决取第二路收到的时间同步消息执行时间同步

各远程终端单机的3套总线上接收有效的时间同步消息存在时序上的差异性,本套总线的冗余表决措施,如果接收到其他两路有效的时间同步消息时,冗余表决取第二路收到的时间同步消息执行时间同步,选择第二路时间同步消息执行,时间同步更精确。该方法可容忍一度故障,一套总线通信异常的情况。

5、各远程终端如果只有一路有效的时间同步消息,并且等待延时时间k1毫秒后其它两路总线通信异常,则直接使用更新的时间同步消息

各远程终端该方法如果只有一路有效的时间同步信号,并且等待延时时间k1毫秒后其它两路总线通信异常,未收到第二路有效的时间同步消息,则各远程终端判定只有一套总线通信正常,直接使用更新的时间同步消息。k1的典型值取3个心跳周期,取值为60。该方法可兼容两度故障模式,适应只有一套总线正常工作的状态,便于单套总线独立测试;同时可规避等待时间过长的情况。

6、各远程终端一定时间k2毫秒内只响应一次时间同步,并将k2毫秒内接收到其他时间同步消息置为无效

各远程终端正常响应时间同步后,其他套总线上可能也会接收到同样的时间同步消息。为防止多套总线上时间同步消息重复更新,避免时间回退现象,同时简化时间同步和表决处理流程,可将k2毫秒内收到的其他同步消息设置为无效,不再响应,k2的典型值一般为100。

7、各远程终端采用同步时间处理方法修正表决时间的延时

各远程终端收到时间同步消息的时间戳和执行时的时间可能存在不一致的情况,考虑表决时间和接收时间可能有一定的延时,时间同步处理方法采用所述的公式进行修正:cpu时间=同步时间+δt。其中,δt为时间同步消息接收时刻到表决时刻的时间差;同步时间为总线时间同步消息中的时间戳;cpu时间为修正后的用于更新的本机cpu时钟的时间。经过修正后的同步时间更加准确,保证时间的精准性。

8、各远程终端其他情况等待下一周期再继续进行表决和判断

远程终端在当前循环周期中可能存在无法准确判断出异常情况的状态,需要进入下一个周期进行判断和表决。若存在三度故障情况下,则直接使用本机的时钟进行计时处理,不使用总线同步时间对本机的时间进行修正。

步骤1、步骤2中时间同步消息和心跳消息均通过总线的a/b通道分别发送一次,实现消息冗余。a/b通道的心跳消息、时间同步消息均判定异常,则认为该消息异常。

步骤3中本机判别当前套总线时间正常且总线通信无异常的情况下,直接执行时间同步消息更新cpu时间可显著缩短表决等待时间,提高实时性。

步骤6可防止多套总线上时间同步消息重复更新,避免时间回退现象,同时简化时间同步和表决处理流程;k2的典型值一般为100。

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

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