CN109379264B - 一种基于can2.0的多板卡通信设备、方法及系统 - Google Patents
一种基于can2.0的多板卡通信设备、方法及系统 Download PDFInfo
- Publication number
- CN109379264B CN109379264B CN201811199942.1A CN201811199942A CN109379264B CN 109379264 B CN109379264 B CN 109379264B CN 201811199942 A CN201811199942 A CN 201811199942A CN 109379264 B CN109379264 B CN 109379264B
- Authority
- CN
- China
- Prior art keywords
- communication
- data
- message
- frame
- sender
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1829—Arrangements specially adapted for the receiver end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
- H04L43/106—Active monitoring, e.g. heartbeat, ping or trace-route using time related information in packets, e.g. by adding timestamps
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种基于CAN2.0的多板卡通信设备、方法及系统。所述通信方法包括:通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及传输字节数;根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾;根据通信格式判断传输的当前数据包是否正确,若是,建立通信链接;按照所述通信链接进行通信。采用本发明所提供的通信设备、方法及系统能够提高通信信息安全性,发送大数据包。
Description
技术领域
本发明涉及车载设备通信领域,特别是涉及一种基于CAN2.0的多板卡通信设备、方法及系统。
背景技术
现有轨道车上的人机交互单元采用通用的CAN通信协议,由于未采用安全通信技术,数据通信缺乏建链、断链机制和通信应答机制,如果通信链路出现故障,则无法对通信链路故障进行检查,从而造成通信数据在故障的通信链路上一直传输,导致信息的安全性无法保证;而且,现有的CAN通信协议在通信传递过程中发送的数据包较小,无法满足大数据包传输要求。
GYK设备现采用的CAN通信协议,数据包最大的长度为一个CAN帧,即数据包最大长度为8个字节,发送的数据包较小,缺乏大包数据发送的机制,因此在设备升级需要传输大数据的场合时,现有的通信机制难以满足。
发明内容
本发明的目的是提供一种基于CAN2.0的多板卡通信设备、方法及系统,以解决通信信息安全性低,发送的数据包小无法满足大数据包传输要求的问题。
为实现上述目的,本发明提供了如下方案:
一种基于CAN2.0的多板卡通信设备,包括主机和人机交互装置;
所述主机包括电源板A、电源板B、主控板A、主控板B、机车信号板A、机车信号板B、通信记录板以及语音记录板;
所述人机交互装置包括I端板卡和II端板卡;所述主机以及所述人机交互装置连接在CAN总线上,基于CAN总线相互通信。
一种基于CAN2.0的多板卡通信方法,包括:
通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及传输字节数;
根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾;
根据通信格式判断传输的当前数据包是否正确,得到第一判断结果;
若所述第一判断结果表示为传输的当前数据包正确,建立通信链接;
按照所述通信链接进行通信。
可选的,所述通过CAN ID标识技术标识通信数据之前,还包括:
采用双向应答机制传输所述通信数据。
可选的,所述通过CAN ID标识技术标识通信数据之后,还包括:
获取发送的通信数据的发送源地址以及发送目的地址;
获取接收的通信数据的接收目的地址;
判断所述发送目的地址与所述接收目的地址是否相同,得到第二判断结果;
若所述第二判断结果表示为所述发送目的地址与所述接收目的地址相同,确定接收所述通信数据。
可选的,所述确定接收所述通信数据之后,还包括:
获取所述通信数据的任务号;
根据所述任务号,按照通信协议命令号分配规则,确定所述通信数据的用途指令。
可选的,所述根据所述任务号,按照通信协议命令号分配规则,确定所述通信数据的用途指令之后,还包括:
获取所述通信数据的报文帧序号;
根据所述报文帧序号顺序标识数据包内的每一帧,确定数据帧序列;
按照所述数据帧序列发送所述数据包。
可选的,所述建立通信链接,具体包括:
发送方周期性发送建链请求帧,建链请求帧的报文帧序号为0;
接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到所述应答帧,建立通信链接。
可选的,在所述接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到所述应答帧,建立通信链接之后,还包括:
在通信链接情况下,所述发送方在时间段阈值范围内未收到正确的应答帧,所述发送方重发上组报文,重发时报文序号继续累加;
连续5次发送方接收不到应答帧,则确定通信链接断链。
一种基于CAN2.0的多板卡通信系统,包括:
通信数据标识模块,用于通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及传输字节数;
通信格式确定模块,用于根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾;
第一判断模块,用于根据通信格式判断传输的当前数据包是否正确,得到第一判断结果;
通信链接建立模块,用于若所述第一判断结果表示为传输的当前数据包正确,建立通信链接;
通信模块,用于按照所述通信链接进行通信。
可选的,还包括:
传输模块,用于采用双向应答机制传输所述通信数据。
可选的,具体包括:
发送源地址以及发送目的地址获取模块,用于获取发送的通信数据的发送源地址以及发送目的地址;
接收目的地址获取模块,用于获取接收的通信数据的接收目的地址;
第二判断模块,用于判断所述发送目的地址以及接收目的地址是否相同,得到第二判断结果;
通信数据接收模块,用于若所述第二判断结果表示为所述发送目的地址以及接收目的地址相同,确定接收所述通信数据。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
通过CAN ID标识技术标识通信数据,根据通信数据内的任务号确定通信数据的用途指令,根据报文帧序号确定数据帧序列,按照数据帧序列发送数据包,实现大数据包的发送。
同时,本发明采用双向应答机制,如果无应答,则会单包数据进行重发,实现双向应答机制,保证了数据发送的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的GYK板卡通信结构示意图;
图2为本发明所提供的基于CAN2.0的多板卡通信方法流程图;
图3为本发明所提供的通信建链断链过程示意图;
图4为本发明所提供的数据正确时的通信流程示意图;
图5为本发明所提供的基于CAN2.0的多板卡通信系统结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于CAN2.0的多板卡通信设备、方法及系统,能够提高通信信息安全性,发送大数据包。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的GYK板卡通信结构示意图,如图1所示,一种基于CAN2.0的多板卡通信设备,该多板卡通信设备在实际应用中可以为轨道车运行控制设备GYK,包括主机和人机交互装置DMI;
所述主机包括电源板A、电源板B、主控板A、主控板B、机车信号板A、机车信号板B、通信记录板以及语音记录板;所述人机交互装置包括I端板卡和II端板卡;所述主机以及所述人机交互装置连接在CAN总线上,基于CAN总线相互通信。
采用CAN通信协议用于主机单元板之间的交互通信,主机和人机交互装置的交互通信,主机和BTM设备之间的交互通信,承担着安全控车信息、显示信息、司机操作信息这些重要信息的传输,在行车控制中起到至关重要的作用。
图2为本发明所提供的基于CAN2.0的多板卡通信方法流程图,如图2所示,一种基于CAN2.0的多板卡通信方法,所述通信方法应用于一种基于CAN2.0的多板卡通信设备,包括主机和人机交互装置DMI;
所述主机包括电源板A、电源板B、主控板A、主控板B、机车信号板A、机车信号板B、通信记录板以及语音记录板;所述人机交互装置包括I端板卡和II端板卡;所述主机以及所述人机交互装置连接在CAN总线上,基于CAN总线相互通信;所述通信方法包括:
步骤201:通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及传输字节数。
以电源板A将电源状态信息数据发送给主控板A为例。
在同一时刻,每个板卡均有可能向其他板卡发送数据,并且接收来自其他板卡的数据。如何区分信息的发送方和接收方是本发明首先要解决的问题。因此,采用CAN ID标识技术判断信息的发送方和接收方。
表1为本发明所提供的CAN ID标识技术标识表,如表1所示,确立通信的双方,电源板A为信息发送方,主控板A位信息接收方。
表1
如表1所示,通信协议采用CAN2.0协议,扩展帧;29位ID分为4部分,ID28_ID21为命令号,ID20_ID16为源地址,ID15_ID11为目的地址,ID10_ID03为报文内帧序号,ID02_ID00为批号。
源地址:代表信息来源的板卡,标识着信息的发送方。
目的地址:代表信息将要到达的板卡,标识着信息的接收方。
表2为本发明所提供的各板卡通信地址表,各板卡的地址如表2所示。
表2
例如,电源板A的数据要发送给主控A,则电源板发送时CAN ID的源地址为0X03,目的地址为0X01;主控板接收到数据后,解析CAN ID目的地址,如果为0X01,明白这条消息是发送给主控板的,则接收此条消息,不是则舍弃;解析源地址,发现是0X03则知道是电源板A发送给来的数据。如此则有效的实现了多板卡之间的通信。
本发明采用常用的CRC计算方法,以CRC32为例介绍本协议CRC计算的校验顺序及方法。
CRC32生成多项式为1+x1+x2+x4+x5+x7+x8+x10+x11+x12+x16+x22+x23+x26+x32,余子式的初始值设为0xFFFFFFFF。
校验数组{0x01,0x02,0x03,0x04}结果为{0xCD,0xFB,0x3C,0xB6}。
CRC32M生成多项式为1+x6+x8+x9+x10+x11+x13+x14+x18+x19+x20+x22+x23+x25+x26+x27+x28+x32,余子式的初始值设为0xFFFFFFFF。
校验数组{0x01,0x02,0x03,0x04}结果为{0xF4,0x8C,0x30,0x29}。
其次要判断的是消息的用途,CAN ID的任务号,则是用作此用途的。它代表着哪种具体的消息。如电源板发送给主控心跳信息包,则命令号为0X33;发送建链请求信息,则命令号为0X34,表3为本发明所提供的通信协议命令号分配表,具体的命令号如表3所示。
表3
再次,报文帧序号,标识报文帧在一包数据内的序号。例如电源板向主控发送的建链信息,是一个数据包,不止一帧数据。则发送时,需要标识出每一帧在包中的顺序,这样主控接收到数据后,就会知道数据帧的先后次序。因为报文内帧序号占用了一字节,故一包数据最大可发送256个CAN帧,共2048字节,即2K数据。此处实现了大包数据的发送功能。
最后是批号,标识每发送一包数据,批号递增。
通过CAN ID标识技术,我们可以清晰的知道,数据的发送方和接收方,以及所发送数据的具体用途。达到了多板卡、大数据包发送的目的。另外板卡在发送数据的时候,采用双向应答机制,如果无应答,则会单包数据进行重发,双向应答机制,保证了数据发送的可靠性。
步骤202:根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾。
确立数据的通信格式,电源板A将电源状态信息按照数据包划分技术进行组包封装处理,电源板A将以这种数据格式将电源状态信息发送给主控板A。
如表3所示,数据包由报文头+用户数据包+报文尾三部分组成。
表3
1)报文头:
数据长度:表示本包数据有多少字节组成。
报文序号:0-65535循环,每发一包数据后递增。
扩展命令字:填0。
预留:填0。
2)用户数据包:
表示本包数据的具体用途,例如电源板发送给主控建链信息,则对应建链信息的具体内容,如果电源板发送给主控状态信息,则代表此时电源板的具体状态信息,状态信息如:电源板过欠压信息,电源板故障信息等。如果用户数据包实际字节数不足8的倍数,则不足处补0。
3)报文尾
时间戳,表示信息发送时的时刻。时间戳使用是在整机对时的前提下(以主系的主控板的主MCU为准),接收方时间戳与本时间戳的差值大于XXXms,认为本包数据无效,连续XX包数据超时,判断故障。如果出现故障,则接收方不接收此信息,从而保证接收数据的正确性。
当接收方一包数据接收完成时,进行CRC校验,CRC32校验范围为:第一帧的CANID(29位,补全到32位)+(上表中数据长度到时间戳的数据内容)。当校验正确时,存储并使用该包数据。不正确,则将错误的信息丢弃。这样保证使用的数据一定是正确安全的。从而保证了通信的安全性。
步骤203:根据通信格式判断传输的当前数据包是否正确;若是,执行步骤204,若否,执行步骤206。
步骤204:建立通信链接。
步骤205:按照所述通信链接进行通信。
步骤206:丢弃当前数据包。
电源板A和主控板A按照安全通信技术,首先建链起有效的通信链接;链接上之后,电源板A向主控板A发送电源状态信息,主控板A接收到正确的信息后进行应答,则完成通信操作;否则进行故障处理。
采用安全通信技术实现数据具体的收发流程。首先发送板卡和接收板卡,建立有效的通信链接,通信链接正确后才发送数据给对方,进行正常通信。当正常通信后,采取一系列的安全措施,如果出现设备故障,进行故障报警,终止数据的传输,不让无效、错误数据得到使用的机会。从而确保每次通信,系统所得到的数据都是正确安全的,从而保证通信的安全性。
1)、板卡的通信建立过程,图3为本发明所提供的通信建链断链过程示意图,如图3所示。
a)建链过程由信息发送方发起,周期性发送建链请求帧,建链请求帧的报文序号为0,接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到该应答帧,则建链成功。
b)通信链接情况下,发送方在规定时间内没有收到正确的应答帧,发送方重发上组报文,重发时报文序号继续累加。连续5次发送方接收不到应答帧,则判断为通信断链。报文序号检测方法:相邻两帧报文的报文序号差值范围在[1,5]范围内为正确。
c)断链后,发送方重新发起建链请求,如1分钟之内(暂定)无法完成建链过程,则认为设备故障,进行故障报警,终止无效数据传输,确保通信安全性。
2)板卡正常通信过程,图4为本发明所提供的数据正确时的通信流程示意图,如图4所示。
a)信息发起方每次发送的报文中都带有时间戳,接收方接收到报文时记录接收报文时的时间戳,两个时间戳相减计算出ΔT,如果计算得到的ΔT大于XXX(根据具体业务具体取值)时,则认为本条报文是延迟收到,做丢弃处理;
b)前一组报文没有收完整,接收到同一源地址的新的报文,丢弃前一组报文。
c)接收方在接收完数据到给出应答的时间不应超过XXXms。
d)主控板与其他板卡进行通信时,还需要增加心跳报文,心跳报文的发起方为非主控板的板卡,发起方在时间T内没有发送过数据给主控板,则发送一条心跳报文,主控板收到心跳报文后,给出相应的应答,当发送方连续5次收不到主控板的心跳应答后,则认为该CAN通道故障。进行故障报警,终止无效、错误数据的传输,不让无效、错误数据得到使用的机会。从而确保每次通信,系统所得到的数据都是正确安全的,保证通信的安全性。
3)举例说明
以电源板和主控板通信为例,讲述上面的板卡的通信建立过程和板卡正常通信过程。
a)板卡的通信建立过程:
GYK主机上电后,电源板发送报文序号为0的建链请求帧。主控板连续收到3帧电源板的请求帧,则发送序号为0的应答帧给电源板。电源板和主控板建链成功,可正常发送数据。正常发送数据时,电源板发送某一包数据发送给主控后,主控板应答不完整或者没有应答,则电源板重新发送此包数据,报文序号递增。如果连发5次,出现同样的情况,则发电源板和主控板的通信断开,重新开始建立链接。如果1分钟无法建立有效链接,则认为CAN通信线路有问题,进行故障报警,从而防止后续数据在故障的链路上进行传输,确保通信的安全性。
b)板卡正常通信过程
建链成功后,电源板和主控板进入到正常的通信过程。主控板发送电源板自检请求帧,电源板在收到自检请求后,回复自检应答帧,并开始自检,自检完成后发送自检状态帧给主控板;
主控板在规定时间内收到电源板自检状态帧后,发送正常工作信息帧;如果规定时间内没有收到回复,则重发自检请求帧,重发3次没有收到,则判断故障,不再发送,进行故障报警。
电源板在收到主控板正常工作信息帧后,周期发送电源板信息帧给主控板,周期为200ms,主控板连续3s没有收到电源板信息帧,则认为该路CAN通道故障;
主控板在收到电源板数据帧后,给出相应的应答帧,电源板连续5帧没有收到主控板的应答帧,则认为该路CAN故障,进行故障报警。
此外,表4为本发明所提供的针对本发明所使用英文的缩写和定义,如表4所示。
表4
缩略词 | 全称 | 中文名称 |
GYK | 无 | 轨道车运行控制设备 |
DMI | Direct Media Interface | 人机界面单元 |
BTM | Balise Transmission Module | 应答器传输模块 |
CRC | Cyclic Redundacy Check | 循环冗余校验 |
CAN | Controller Area Network | 区域网络总线控制器 |
MCU | Microcontroller Unit | 微控制单元 |
图5为本发明所提供的基于CAN2.0的多板卡通信系统结构图,如图5所示,一种基于CAN2.0的多板卡通信系统,包括:
通信数据标识模块501,用于通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及传输字节数。
通信格式确定模块502,用于根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾。
第一判断模块503,用于根据通信格式判断传输的当前数据包是否正确,得到第一判断结果。
通信链接建立模块504,用于若所述第一判断结果表示为传输的当前数据包正确,建立通信链接。
通信模块505,用于按照所述通信链接进行通信。
本发明采用了安全通信技术。通过应答机制检测CAN通信线路是否故障,如果出现故障,则进行故障报警,并终止CAN数据的传输,确保无效或者错误数据传给其他板卡;保证每次传输给对方的数据均为正确的,从而确保了通信数据的安全性。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (9)
1.一种基于CAN2.0的多板卡通信方法,其特征在于,包括:
通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及批号;29位ID分为4部分,ID28_ID21为命令号,ID20_ID16为源地址,ID15_ID11为目的地址,ID10_ID03为报文内帧序号,ID02_ID00为批号;发送时,需要标识出每一帧在包中的顺序,主控接收到数据后,就会知道数据帧的先后次序,因为报文内帧序号占用了一字节,故一包数据最大可发送256个CAN帧,共2048字节,即2K数据;
根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾;
根据所述通信格式判断传输的当前数据包是否正确,得到第一判断结果;
若所述第一判断结果表示为传输的当前数据包正确,建立通信链接;
按照所述通信链接进行通信;
1)、板卡的通信建立过程:
a)建链过程由信息发送方发起,周期性发送建链请求帧,建链请求帧的报文序号为0,接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到该应答帧,则建链成功;
b)通信链接情况下,发送方在规定时间内没有收到正确的应答帧,发送方重发上组报文,重发时报文序号继续累加;连续5次发送方接收不到应答帧,则判断为通信断链;报文序号检测方法:相邻两帧报文的报文序号差值范围在[1,5]范围内为正确;
c)断链后,发送方重新发起建链请求,如1分钟之内无法完成建链过程,则认为设备故障,进行故障报警,终止无效数据传输,确保通信安全性;
2)板卡正常通信过程:
a)信息发起方每次发送的报文中都带有时间戳,接收方接收到报文时记录接收报文时的时间戳,两个时间戳相减计算出ΔT,如果计算得到的ΔT大于时间差阈值时,则认为本条报文是延迟收到,做丢弃处理;
b)前一组报文没有收完整,接收到同一源地址的新的报文,丢弃前一组报文;
c)接收方在接收完数据到给出应答的时间不应超过预设时间;
d)主控板与其他板卡进行通信时,还需要增加心跳报文,心跳报文的发起方为非主控板的板卡,发起方在时间T内没有发送过数据给主控板,则发送一条心跳报文,主控板收到心跳报文后,给出相应的应答,当发送方连续5次收不到主控板的心跳应答后,则认为该CAN通道故障,进行故障报警,终止无效、错误数据的传输,不让无效、错误数据得到使用的机会,从而确保每次通信,系统所得到的数据都是正确安全的,保证通信的安全性。
2.根据权利要求1所述的多板卡通信方法,其特征在于,所述通过CAN ID标识技术标识通信数据之前,还包括:
采用双向应答机制传输所述通信数据。
3.根据权利要求1所述的多板卡通信方法,其特征在于,所述通过CAN ID标识技术标识通信数据之后,还包括:
获取发送的通信数据的发送源地址以及发送目的地址;
获取接收的通信数据的接收目的地址;
判断所述发送目的地址与所述接收目的地址是否相同,得到第二判断结果;
若所述第二判断结果表示为所述发送目的地址与所述接收目的地址相同,确定接收所述通信数据。
4.根据权利要求3所述的多板卡通信方法,其特征在于,所述确定接收所述通信数据之后,具体包括:
获取所述通信数据的任务号;
根据所述任务号,按照通信协议命令号分配规则,确定所述通信数据的用途指令。
5.根据权利要求4所述的多板卡通信方法,其特征在于,所述根据所述任务号,按照通信协议命令号分配规则,确定所述通信数据的用途指令之后,还包括:
获取所述通信数据的报文帧序号;
根据所述报文帧序号顺序标识数据包内的每一帧,确定数据帧序列;
按照所述数据帧序列发送所述数据包。
6.根据权利要求5所述的多板卡通信方法,其特征在于,所述建立通信链接,具体包括:
发送方周期性发送建链请求帧,建链请求帧的报文序号为0;
接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到所述应答帧,建立通信链接。
7.根据权利要求6所述的多板卡通信方法,其特征在于,在所述接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到所述应答帧,建立通信链接之后,还包括:
在通信链接情况下,所述发送方在时间段阈值范围内未收到正确的应答帧,所述发送方重发上组报文,重发时报文序号继续累加;
连续5次发送方接收不到应答帧,则确定通信链接断链。
8.一种基于CAN2.0的多板卡通信系统,其特征在于,包括:
通信数据标识模块,用于通过CAN ID标识技术标识通信数据;所述通信数据包括源地址、目的地址、任务号、报文帧序号以及批号;29位ID分为4部分,ID28_ID21为命令号,ID20_ID16为源地址,ID15_ID11为目的地址,ID10_ID03为报文内帧序号,ID02_ID00为批号;发送时,需要标识出每一帧在包中的顺序,主控接收到数据后,就会知道数据帧的先后次序,因为报文内帧序号占用了一字节,故一包数据最大可发送256个CAN帧,共2048字节,即2K数据;
通信格式确定模块,用于根据所述通信数据,通过数据包划分技术,确定通信格式;所述通信格式包括报文头、用户数据包以及报文尾;
第一判断模块,用于根据通信格式判断传输的当前数据包是否正确,得到第一判断结果;
通信链接建立模块,用于若所述第一判断结果表示为传输的当前数据包正确,建立通信链接;
通信模块,用于按照所述通信链接进行通信;
1)、板卡的通信建立过程:
a)建链过程由信息发送方发起,周期性发送建链请求帧,建链请求帧的报文序号为0,接收方收到连续3帧建链请求帧,发送序号为0的应答帧,发送方在规定的时间内收到该应答帧,则建链成功;
b)通信链接情况下,发送方在规定时间内没有收到正确的应答帧,发送方重发上组报文,重发时报文序号继续累加;连续5次发送方接收不到应答帧,则判断为通信断链;报文序号检测方法:相邻两帧报文的报文序号差值范围在[1,5]范围内为正确;
c)断链后,发送方重新发起建链请求,如1分钟之内无法完成建链过程,则认为设备故障,进行故障报警,终止无效数据传输,确保通信安全性;
2)板卡正常通信过程:
a)信息发起方每次发送的报文中都带有时间戳,接收方接收到报文时记录接收报文时的时间戳,两个时间戳相减计算出ΔT,如果计算得到的ΔT大于时间差阈值时,则认为本条报文是延迟收到,做丢弃处理;
b)前一组报文没有收完整,接收到同一源地址的新的报文,丢弃前一组报文;
c)接收方在接收完数据到给出应答的时间不应超过预设时间;
d)主控板与其他板卡进行通信时,还需要增加心跳报文,心跳报文的发起方为非主控板的板卡,发起方在时间T内没有发送过数据给主控板,则发送一条心跳报文,主控板收到心跳报文后,给出相应的应答,当发送方连续5次收不到主控板的心跳应答后,则认为该CAN通道故障,进行故障报警,终止无效、错误数据的传输,不让无效、错误数据得到使用的机会,从而确保每次通信,系统所得到的数据都是正确安全的,保证通信的安全性。
9.根据权利要求8所述的多板卡通信系统,其特征在于,还包括:
传输模块,用于采用双向应答机制传输所述通信数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811199942.1A CN109379264B (zh) | 2018-10-16 | 2018-10-16 | 一种基于can2.0的多板卡通信设备、方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811199942.1A CN109379264B (zh) | 2018-10-16 | 2018-10-16 | 一种基于can2.0的多板卡通信设备、方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109379264A CN109379264A (zh) | 2019-02-22 |
CN109379264B true CN109379264B (zh) | 2021-07-06 |
Family
ID=65400451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811199942.1A Active CN109379264B (zh) | 2018-10-16 | 2018-10-16 | 一种基于can2.0的多板卡通信设备、方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109379264B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110285633A (zh) * | 2019-06-20 | 2019-09-27 | 南京创维电器研究院有限公司 | 一种新型冰箱可视化控制方法 |
CN111010259A (zh) * | 2019-12-25 | 2020-04-14 | 香港大德昌龙生物科技有限公司 | 通信方法和装置、体外诊断设备、计算机可读存储介质 |
CN111459870A (zh) * | 2020-03-31 | 2020-07-28 | 中国电子科技集团公司第五十四研究所 | 一种嵌入式程序自适应加载方法 |
CN114220256B (zh) * | 2020-09-03 | 2023-06-27 | 上海市环境科学研究院 | 一种气体采样无线控制协议 |
CN112765083A (zh) * | 2021-01-29 | 2021-05-07 | 苏州易德龙科技股份有限公司 | 一种基于rs232的通讯协议 |
CN113132367B (zh) * | 2021-04-09 | 2024-02-23 | 国网电力科学研究院有限公司 | 面向工程监测物联网采集终端数据传输自适应方法和装置 |
CN115022225B (zh) * | 2022-05-31 | 2023-11-10 | 东风电驱动系统有限公司 | 报文转发方法、装置、设备及可读存储介质 |
CN116015544A (zh) * | 2022-12-13 | 2023-04-25 | 东信和平科技股份有限公司 | 基于ble4.0通道的数据通信方法、系统、控制器及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1560806A (zh) * | 2004-03-04 | 2005-01-05 | 深圳市泛海三江电子有限公司 | 基于can2.0b的火灾报警应用层数据传输方法 |
CN101764730A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种can总线数据传输方法 |
CN106125587A (zh) * | 2016-06-08 | 2016-11-16 | 杭州创联电子技术有限公司 | Gyk运行揭示自动复核系统及控制方法 |
CN107919947A (zh) * | 2017-11-28 | 2018-04-17 | 南瑞集团有限公司 | 一种can总线长报文传输的编码方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10397041B2 (en) * | 2016-09-09 | 2019-08-27 | Denso Corporation | Electronic control unit |
-
2018
- 2018-10-16 CN CN201811199942.1A patent/CN109379264B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1560806A (zh) * | 2004-03-04 | 2005-01-05 | 深圳市泛海三江电子有限公司 | 基于can2.0b的火灾报警应用层数据传输方法 |
CN101764730A (zh) * | 2009-12-18 | 2010-06-30 | 航天东方红卫星有限公司 | 一种can总线数据传输方法 |
CN106125587A (zh) * | 2016-06-08 | 2016-11-16 | 杭州创联电子技术有限公司 | Gyk运行揭示自动复核系统及控制方法 |
CN107919947A (zh) * | 2017-11-28 | 2018-04-17 | 南瑞集团有限公司 | 一种can总线长报文传输的编码方法 |
Non-Patent Citations (1)
Title |
---|
列车行车安全与信息可靠性的研究与开发;张伟益;《中国优秀硕士学位论文全文数据库工程科技Ⅱ辑》;20111215(第12期);第2-3章 * |
Also Published As
Publication number | Publication date |
---|---|
CN109379264A (zh) | 2019-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109379264B (zh) | 一种基于can2.0的多板卡通信设备、方法及系统 | |
US6880103B2 (en) | Method and apparatus for radio packet data transmission | |
CN104503350B (zh) | 双冗余can总线的实现方法和控制器 | |
CN102281121A (zh) | 一种数据文件传输和校验的方法、设备及系统 | |
CN102355278B (zh) | 高可靠的应答器信息接收装置及方法 | |
CN104320224B (zh) | 一种基于1553b总线的可靠性通信方法 | |
CN109649437B (zh) | 一种铁路车站计算机联锁信息传输方法和系统 | |
CN111726196A (zh) | 一种车载数据传输方法和系统 | |
CN113645600A (zh) | 数据传输方法、装置、终端及存储介质 | |
CN105183687A (zh) | 一种分时串口通信方法及系统 | |
CN103647619A (zh) | 一种电力终端变数据帧长的发送、接收方法及装置 | |
CN112600787B (zh) | 一种通信系统及通信方法 | |
CN112395237A (zh) | 一种至少两个控制器之间通信的方法及其系统 | |
CN106452679B (zh) | 一种机器人开发系统及其通信方法 | |
CN104714761A (zh) | 一种应用Android系统的设备的无线数据打印系统和方法 | |
CN112249088B (zh) | 双显示系统互诊断与数据同步的方法、双显示系统和列车 | |
JP3164402B2 (ja) | 多重伝送方式 | |
CN208076997U (zh) | 一种设备云端监控管理系统 | |
CN101425877A (zh) | 一种模块间通讯的方法 | |
CN113824539A (zh) | 联锁监测机与mss系统数据传输方法及装置 | |
CN113141289B (zh) | 一种用于轨旁安全平台的总线数据传输方法 | |
CN106888121A (zh) | 一种基于数据块传输的1553b总线协议仿真方法 | |
CN112821991B (zh) | 一种数据传输方法及装置 | |
CN103780346A (zh) | 车体轴温检测系统及其通信方法、接收设备 | |
CN107528758A (zh) | 一种高速can总线数据转换装置及其转换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 22203, building 3, No.80, Gaoxin Road, high tech Zone, Xi'an, Shaanxi 710000 Patentee after: NORTHWEST RAILWAY ELECTRONICS CO.,LTD. Patentee after: Gaoxing Chuanglian Technology Co.,Ltd. Address before: Room 22203, building 3, No.80, Gaoxin Road, high tech Zone, Xi'an, Shaanxi 710000 Patentee before: NORTHWEST RAILWAY ELECTRONICS CO.,LTD. Patentee before: GOSUNCN CHUANGLIAN TECHNOLOGY Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |