基于CAN总线的无主网络通信系统技术方案

技术编号:11079906 阅读:142 留言:0更新日期:2015-02-25 18:20
本发明专利技术提供了一种基于CAN总线的无主网络通信系统,包括:多通道数据管理模块,多通道超时管理模块,数据接收模块,平均优先权模块,多通道预发送模块,数据发送模块和应答模块,多通道数据管理模块分别与应用接口、多通道超时管理模块和平均优先权模块连接,数据接收模块分别与多通道超时管理模块,应用接口和应答模块连接,多通道预发送模块分别与多通道超时管理模块、平均优先权模块和数据发送模块连接,数据发送模块和应答模块均与平均优先权模块连接。本发明专利技术使CAN总线实现无主可靠的多点通信,具有降低系统延时,通信速度快的优点。

【技术实现步骤摘要】
基于CAN总线的无主网络通信系统
本专利技术涉及消防电子电路领域,具体地,涉及一种基于CAN总线的无主网络通信系统。
技术介绍
所谓总线,是两个或多个电子设备之间通信的载体,例如电话线,有线电视线等都是总线。电子设备在总线上的通信包括发送信息和接收信息两个部分。CAN总线是在工业控制领域应用非常广泛的一种差分总线,目前,CAN总线采用主从式通信,CAN总线有如下特点: CAN总线的硬件可以自动将要发送的数据包装成帧,发送出去,在一定时间内接收不到应答还会重发,在接收到数据帧时会校验接收的数据是否正确,如果不正确则不应答。如果总线上只有两个节点A和节点B,则节点A向节点B发送数据,节点A可以通过硬件就知道节点B是否已经正确收到此信息,但如果总线上不只两个节点,则节点A不能判断收到的应答是节点B发送的,即节点A无法判断节点B是否正确接收到节点A发送的数据。CAN总线的另一个特点是有总线仲裁机制,即当两个节点同时向总线上发送信息时,总线会自动判断两帧信息的优先级,优先级高的先发送,优先级低的会自动排在优先级高的数据帧之后发送。尽管CAN总线有硬件仲裁机制,但由于多点通信时,无法通过硬件准确判断出接收端是否正确接收到数据。另外由于总线仲裁机制的存在,各个数据有优先级的分别,如果处理不当,有可能导致低优先级的数据长时间发送不出去。因此,现有的CAN总线通信系统一般都采用主从式通信,没有充分发挥CAN总线的特点,通信速度慢。
技术实现思路
针对现有技术中的缺陷,本专利技术的目的是提供一种基于CAN总线的无主网络通信系统,本专利技术可以充分发挥CAN总线的硬件仲裁优点,使CAN总线实现无主可靠的多点通信,降低系统延时,提高通信速度。 根据本专利技术的一个方面,提供一种基于CAN总线的无主网络通信系统,包括:多通道数据管理模块,多通道超时管理模块,数据接收模块,平均优先权模块,多通道预发送模块,数据发送模块和应答模块,多通道数据管理模块分别与应用接口、多通道超时管理模块和平均优先权模块连接,数据接收模块分别与多通道超时管理模块,应用接口和应答模块连接,多通道预发送模块分别与多通道超时管理模块、平均优先权模块和数据发送模块连接,数据发送模块和应答模块均与平均优先权模块连接;其中: 多通道数据管理模块接收应用接口发送来的数据,将其按发送目的地址分通道存储在各个通道的数据队列中;且多通道数据管理模块接收多通道超时管理模块发送来的某通道的应答的信息,从此通道的数据队列中取出一帧要发送的数据,连同通道号,一同发送给平均优先权模块; 平均优先权模块接收多通道数据管理模块发送来的数据和通道号,将数据做平均优先权处理之后,连同通道号一同发送给多通道预发送模块;且平均优先权模块接收应答模块发送来的应答信息,将其做平均优先权处理之后,发送给数据发送模块; 多通道预发送模块接收平均优先权模块发送来的数据和通道号,将通道号发送给多通道超时管理模块,将要发送数据的通道的存储寄存器清空,存储本次要发送的数据,并将要发送的数据发送给数据发送模块;且多通道预发送模块接收多通道超时管理模块发送来的某通道超时信息,将超时的通道存储的数据重新发送给数据发送模块; 数据发送模块接收多通道预发送模块发送来的数据,将其通过CAN总线发送出去;且数据发送模块接收平均优先权模块发送来的应答数据,将其通过CAN总线发送出去; 多通道超时管理模块接收多通道预发送模块发送来的通道信息,开启对应通道的超时定时器,如果超时定时器超时,则向多通道预发送模块发送此通道超时的信息;且多通道超时管理模块接收数据接收模块发送来的应答信息,停止并复位应答信息对应的通道的超时定时器,并将此应答信息发送给多通道数据管理模块; 数据接收模块与CAN总线连接,从CAN总线上接收到数据之后,如果接收到的信息为应答信息,则将其发送给多通道超时管理模块,如果为非应答信息,则将其发送给应用接口和应答模块; 应答模块接收数据接收模块发送来的非应答信息,根据此信息的源地址,发送对应的应答信息给平均优先权模块。 优选地,平均优先权模块用以使总线上的各个通信节点的通信帧优先权平均相等,防止因优先权高的数据一直在发送,而使优先权低的数据长时间得不到总线使用权,具体采用以下方式:将每个CAN节点分别设置高、低两个ID,这两个ID在优先级上互补,即高ID在所有ID中的优先级为N,则低ID在所有ID中的优先级为倒数N,而且每个通信节点在每通信完一帧之后,就将自己的高低ID互换,即上一帧用自己的高ID发送数据,下一帧就要使用自己的低ID发送数据,这样,因为优先级低而处于等待状态的数据帧由于优先级高的数据帧发送完毕而变成了当前最高优先级的数据帧而得到总线控制权,从而,使总线上所有的通信节点的通信延时都在可控制范围之内。 优选地,通道表示两个通信节点之间的通信关系,当两个节点A,B,节点A向节点B发送数据,则节点A和节点B之间建立了一个节点A向节点B的通道,节点A在向节点B发送一帧信息之后,节点A向节点B的通道将暂时处于阻塞状态,此时节点A不能继续向节点B发送数据,直到节点A接收到节点B发送的应答信息,或等待超过了预定时间,在此等待期间,不影响节点A向其他节点以及节点B向节点A发送信息,节点A向其他节点以及节点B向节点A发送信息都是不同的通道,且不同于节点A向节点B的通道。 本专利技术通过多通道控制和发送应答机制使CAN总线实现了无主可靠的多点通信,与现有技术相比,本专利技术具有如下的有益效果:本专利技术可以充分发挥CAN总线的硬件仲裁优点,使各个通信节点在有事件要发送时,无需等待主节点的巡检信息,可以即时发送,通信延时更小。因此,与现有技术相比,本专利技术使CAN总线实现无主可靠的多点通信,具有降低系统延时,通信速度快的优点。 【附图说明】 通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术的其它特征、目的和优点将会变得更明显: 图1为本专利技术基于CAN总线的无主网络通信系统的结构原理图。 图中:I为多通道数据管理模块,2为多通道超时管理模块,3为数据接收模块,4为平均优先权模块,5为多通道预发送模块,6为数据发送模块和7为应答模块。 【具体实施方式】 下面结合具体实施例对本专利技术进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本专利技术,但不以任何形式限制本专利技术。应当指出的是,对本领域的普通技术人员来说,在不脱离本专利技术构思的前提下,还可以做出若干变形和改进。这些都属于本专利技术的保护范围。 请参阅图1,一种基于CAN总线的无主网络通信系统,包括:多通道数据管理模块,多通道超时管理模块,数据接收模块,平均优先权模块,多通道预发送模块,数据发送模块和应答模块,多通道数据管理模块分别与应用接口、多通道超时管理模块和平均优先权模块连接,数据接收模块分别与多通道超时管理模块,应用接口和应答模块连接,多通道预发送模块分别与多通道超时管理模块、平均优先权模块和数据发送模块连接,数据发送模块和应答模块均与平均优先权模块连接。 多通道数据管理模块接收应用接口发送来的数据,将其按发送目的地址分通道存储在各个通道的数据队列中;且多通道数据管理模块接收多通道超时管理模块发送来的某通道本文档来自技高网...
基于CAN总线的无主网络通信系统

【技术保护点】
一种基于CAN总线的无主网络通信系统,其特征在于,包括:多通道数据管理模块,多通道超时管理模块,数据接收模块,平均优先权模块,多通道预发送模块,数据发送模块和应答模块,所述多通道数据管理模块分别与应用接口、多通道超时管理模块和平均优先权模块连接,所述数据接收模块分别与所述多通道超时管理模块,应用接口和应答模块连接,所述多通道预发送模块分别与所述多通道超时管理模块、平均优先权模块和数据发送模块连接,所述数据发送模块和应答模块均与所述平均优先权模块连接;其中:所述多通道数据管理模块接收应用接口发送来的数据,将其按发送目的地址分通道存储在各个通道的数据队列中;且所述多通道数据管理模块接收多通道超时管理模块发送来的某通道的应答的信息,从此通道的数据队列中取出一帧要发送的数据,连同通道号,一同发送给平均优先权模块;所述平均优先权模块接收多通道数据管理模块发送来的数据和通道号,将数据做平均优先权处理之后,连同通道号一同发送给多通道预发送模块;且所述平均优先权模块接收应答模块发送来的应答信息,将其做平均优先权处理之后,发送给数据发送模块;所述多通道预发送模块接收平均优先权模块发送来的数据和通道号,将通道号发送给多通道超时管理模块,将要发送数据的通道的存储寄存器清空,存储本次要发送的数据,并将要发送的数据发送给数据发送模块;且所述多通道预发送模块接收多通道超时管理模块发送来的某通道超时信息,将超时的通道存储的数据重新发送给数据发送模块;所述数据发送模块接收多通道预发送模块发送来的数据,将其通过CAN总线发送出去;且所述数据发送模块接收平均优先权模块发送来的应答数据,将其通过CAN总线发送出去;所述多通道超时管理模块接收多通道预发送模块发送来的通道信息,开启对应通道的超时定时器,如果超时定时器超时,则向多通道预发送模块发送此通道超时的信息;且所述多通道超时管理模块接收数据接收模块发送来的应答信息,停止并复位应答信息对应的通道的超时定时器,并将此应答信息发送给多通道数据管理模块;所述数据接收模块与CAN总线连接,从CAN总线上接收到数据之后,如果接收到的信息为应答信息,则将其发送给多通道超时管理模块,如果为非应答信息,则将其发送给应用接口和应答模块;所述应答模块接收数据接收模块发送来的非应答信息,根据此信息的源地址,发送对应的应答信息给平均优先权模块。...

【技术特征摘要】
1.一种基于CAN总线的无主网络通信系统,其特征在于,包括:多通道数据管理模块,多通道超时管理模块,数据接收模块,平均优先权模块,多通道预发送模块,数据发送模块和应答模块,所述多通道数据管理模块分别与应用接口、多通道超时管理模块和平均优先权模块连接,所述数据接收模块分别与所述多通道超时管理模块,应用接口和应答模块连接,所述多通道预发送模块分别与所述多通道超时管理模块、平均优先权模块和数据发送模块连接,所述数据发送模块和应答模块均与所述平均优先权模块连接;其中: 所述多通道数据管理模块接收应用接口发送来的数据,将其按发送目的地址分通道存储在各个通道的数据队列中;且所述多通道数据管理模块接收多通道超时管理模块发送来的某通道的应答的信息,从此通道的数据队列中取出一帧要发送的数据,连同通道号,一同发送给平均优先权模块; 所述平均优先权模块接收多通道数据管理模块发送来的数据和通道号,将数据做平均优先权处理之后,连同通道号一同发送给多通道预发送模块;且所述平均优先权模块接收应答模块发送来的应答信息,将其做平均优先权处理之后,发送给数据发送模块; 所述多通道预发送模块接收平均优先权模块发送来的数据和通道号,将通道号发送给多通道超时管理模块,将要发送数据的通道的存储寄存器清空,存储本次要发送的数据,并将要发送的数据发送给数据发送模块;且所述多通道预发送模块接收多通道超时管理模块发送来的某通道超时信息,将超时的通道存储的数据重新发送给数据发送模块; 所述数据发送模块接收多通道预发送模块发送来的数据,将其通过CAN总线发送出去;且所述数据发送模块接收平均优先权模块发送来的应答数据,将其通过CAN总线发送出去; 所述多通道超时管理模块接收多通道预发送模块发送来的通道信息,开启对应通道的超时定时器,如果超时定时器超时,则向多通道预发送模块发送此通道超时的信息;且所述多通道超时管理模块接...

【专利技术属性】
技术研发人员:姜洪宇杜啸晓郑珊珊张永刚
申请(专利权)人:中国船舶重工集团公司第七二六研究所
类型:发明
国别省市:上海;31

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

1