无消息间隔限制的1553B总线通信方法和系统技术方案

技术编号:26031053 阅读:25 留言:0更新日期:2020-10-23 21:08
本发明专利技术提供了一种无消息间隔限制的1553B总线通信方法和系统,应用在包含总线控制器BC和远程终端RT的通信系统中,其特征在于,所述方法包括:步骤1:设置BC向RT发送的RT子地址为循环缓冲模式和非中断方式接收模式;其中,BC向RT发送的数据的消息内容包括:数据有效标志和数据有效内容;步骤2:所述RT采用查询的方式接收所述BC发送的数据;步骤3:若所述BC发送的数据中包含数据有效标志,则所述RT读取所述数据有效内容。本发明专利技术中的方法可以不用再对总线消息间隔加以限制,不仅提升了1553B总线通信的可靠性,还简化了BC软件的设计逻辑,提升了软件性能和通信效率。

【技术实现步骤摘要】
无消息间隔限制的1553B总线通信方法和系统
本专利技术涉及通信
,具体地,涉及无消息间隔限制的1553B总线通信方法和系统。
技术介绍
航天器功能应用日趋多样化,相应的星务软件设计也越来越复杂。如何简化软件设计逻辑,提升软件性能和运行效率,成为了当前星务软件设计的挑战。航天器各模块之间的数据通信,是航天器在轨运行的主要信息流之一。数管计算机通过串行总线与各模块连接,通过数据采集和指令分发等与各模块之间进行数据交互。MIL-STD-1553B是一种数字式时分制串行数据总线,具有高可靠、抗干扰能力强、灵活、速率较高、扩充和维护简便等特点,因而被广泛应用于国内外航空和航天电子系统的通信网络的设计中。1553B总线的传输协议为命令/响应方式,数据传输的最小单位为“总线消息”,所有的消息传输均由BC(总线控制器)发出命令,RT(远程终端)响应。在实际型号应用中,通常将数管计算机设计为BC,各子系统单机作为RT,信息流由数管计算机星务软件统一协调管理。由于各模块之间的软硬件性能差异性,若数管计算机星务软件不对总线消息时序加以控制,则不可避免的会出现因消息间隔过短而导致丢消息的情况。数管计算机星务软件作为BC端,通常统一设计所有相邻消息的间隔;对与同一个RT设备的相同RT子地址的消息,控制一个或多个周期只发送一条,这些因素严重影响了总线通信的效率和星务软件的性能。因此,找到一种既不需要考虑相邻消息的间隔,又不需要考虑同一种数据的收发间隔的1553B总线通信软件设计方法,成为了现今航天通信网络设计亟需解决的问题。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种无消息间隔限制的1553B总线通信方法和系统。第一方面,本专利技术提供一种无消息间隔限制的1553B总线通信方法,应用在包含总线控制器BC和远程终端RT的通信系统中,所述方法包括:步骤1:设置BC向RT发送的RT子地址为循环缓冲模式和非中断方式接收模式;其中,BC向RT发送的数据的消息内容包括:数据有效标志和数据有效内容;步骤2:所述RT采用查询的方式接收所述BC发送的数据;步骤3:若所述BC发送的数据中包含数据有效标志,则所述RT读取所述数据有效内容。可选地,在步骤1之前,所述方法还包括:对1553B总线的高层通信协议进行修改,约定BC向RT发送的数据的数据类型、数据长度,以及消息内容格式;其中,所述消息内容格式包括:1个字节长度的数据有效标志+数据有效内容。可选地,在步骤2之前,所述方法还包括:通过RT软件中自动过滤所述RT子地址接收的非法的消息,以及对查找表指针进行复位维护。可选地,所述方法还包括:当RT通过RT子地址向BC发送数据时,设置RT向BC发送的RT子地址为消息结束中断模式;并在中断服务子程序中采用遍历消息堆栈的方式获取消息命令字。可选地,所述步骤2包括:RT根据循环缓冲中收到的数据有效标志,判断当前是否收到新的数据;在处理完每一条数据之后,将缓冲区中数据有效标志清除。第二方面,本专利技术提供一种无消息间隔限制的1553B总线通信系统,包括存储器和至少一个处理器,所述存储器中存储有计算机程序,当所述处理器调用所述存储器中存储的计算机程序时,所述处理器执行如第一方面中任一项所述的无消息间隔限制的1553B总线通信方法。与现有技术相比,本专利技术具有如下的有益效果:本专利技术提供的无消息间隔限制的1553B总线通信方法和系统,解决了当总线控制器BC发送消息间隔过短时,导致远程终端RT接收消息中断丢失或数据被覆盖,从而导致丢消息的异常问题。可以不用再对总线消息间隔加以限制,不仅提升了1553B总线通信的可靠性,还简化了BC软件的设计逻辑,提升了软件性能和通信效率。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显:图1为本专利技术实施例一提供的无消息间隔限制的1553B总线通信方法的流程图;图2为本专利技术实施例二提供的无消息间隔限制的1553B总线通信方法的流程图;图3为RT软件处理接收消息流程图;图4为RT软件中断服务子程序解析发送消息流程图。具体实施方式下面结合具体实施例对本专利技术进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本专利技术,但不以任何形式限制本专利技术。应当指出的是,对本领域的普通技术人员来说,在不脱离本专利技术构思的前提下,还可以做出若干变化和改进。这些都属于本专利技术的保护范围。图1为本专利技术实施例一提供的无消息间隔限制的1553B总线通信方法的流程图,其提供了在总线控制器BC软件发送或取数的消息间隔较短,而远程终端RT软件中断响应及数据处理存在延时,从而导致消息中断丢失或数据被覆盖的矛盾的解决方法。具体地,如图1所示,本实施例中的方法可以包括:步骤S101:设置BC向RT发送的RT子地址为循环缓冲模式和非中断方式接收模式;其中,BC向RT发送的数据的消息内容包括:数据有效标志和数据有效内容;步骤S102:RT采用查询的方式接收BC发送的数据;步骤S103:若BC发送的数据中包含数据有效标志,则RT读取数据有效内容。在步骤S102中,RT根据循环缓冲中收到的数据有效标志,判断当前是否收到新的数据;在处理完每一条数据之后,将缓冲区中数据有效标志清除。示例性的,在步骤S101之前,方法还包括:对1553B总线的高层通信协议进行修改,约定BC向RT发送的数据的数据类型、数据长度,以及消息内容格式;其中,消息内容格式包括:1个字节长度的数据有效标志+数据有效内容。示例性的,在步骤S102之前,方法还包括:通过RT软件中自动过滤RT子地址接收的非法的消息,以及对查找表指针进行复位维护。示例性的,方法还包括:当RT通过RT子地址向BC发送数据时,设置RT向BC发送的RT子地址为消息结束中断模式;并在中断服务子程序中采用遍历消息堆栈的方式获取消息命令字。本实施例解决了当总线控制器BC发送消息间隔过短时,导致远程终端RT接收消息中断丢失或数据被覆盖,从而导致丢消息的异常问题。可以不用再对总线消息间隔加以限制,不仅提升了1553B总线通信的可靠性,还简化了BC软件的设计逻辑,提升了软件性能和通信效率。图2为本专利技术实施例二提供的无消息间隔限制的1553B总线通信方法的流程图,如图2所示,本实施例中的方法可以包括:步骤S1:选定一种目前航天型号通用的1553B总线高层通信协议。具体地,通过高层通信协议,约定BC与各RT之间的数据传输协议。例如,约定BC与RT地址5设备的协议如下:RT子地址1用于BC往RT发送遥控指令;RT子地址2用于RT往BC传输遥测参数。步骤S2:针对BC往RT发送数据的某个RT子地址,约定其传输的数据类型及长度,约定消息内容格式为:数据有效标志(1个字)+数据有效内容。与原总线通信协本文档来自技高网
...

【技术保护点】
1.一种无消息间隔限制的1553B总线通信方法,应用在包含总线控制器BC和远程终端RT的通信系统中,其特征在于,所述方法包括:/n步骤1:设置BC向RT发送的RT子地址为循环缓冲模式和非中断方式接收模式;其中,BC向RT发送的数据的消息内容包括:数据有效标志和数据有效内容;/n步骤2:所述RT采用查询的方式接收所述BC发送的数据;/n步骤3:若所述BC发送的数据中包含数据有效标志,则所述RT读取所述数据有效内容。/n

【技术特征摘要】
20200615 CN 20201054569191.一种无消息间隔限制的1553B总线通信方法,应用在包含总线控制器BC和远程终端RT的通信系统中,其特征在于,所述方法包括:
步骤1:设置BC向RT发送的RT子地址为循环缓冲模式和非中断方式接收模式;其中,BC向RT发送的数据的消息内容包括:数据有效标志和数据有效内容;
步骤2:所述RT采用查询的方式接收所述BC发送的数据;
步骤3:若所述BC发送的数据中包含数据有效标志,则所述RT读取所述数据有效内容。


2.根据权利要求1所述的无消息间隔限制的1553B总线通信方法,其特征在于,在步骤1之前,所述方法还包括:
对1553B总线的高层通信协议进行修改,约定BC向RT发送的数据的数据类型、数据长度,以及消息内容格式;其中,所述消息内容格式包括:1个字节长度的数据有效标志+数据有效内容。


3.根据权利要求1所述的无消息间隔限制的1553B总线通信方法,其特...

【专利技术属性】
技术研发人员:朱剑辉朱浩文李森王佳王茂森胡浩余绍庭
申请(专利权)人:上海航天计算机技术研究所
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1