CN112583683A - 一种主从式can fd总线应用层通信方法及系统、电子设备 - Google Patents

一种主从式can fd总线应用层通信方法及系统、电子设备 Download PDF

Info

Publication number
CN112583683A
CN112583683A CN202011595362.1A CN202011595362A CN112583683A CN 112583683 A CN112583683 A CN 112583683A CN 202011595362 A CN202011595362 A CN 202011595362A CN 112583683 A CN112583683 A CN 112583683A
Authority
CN
China
Prior art keywords
data
frame
node
slave
instruction
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.)
Granted
Application number
CN202011595362.1A
Other languages
English (en)
Other versions
CN112583683B (zh
Inventor
刘大鹏
马晓川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Acoustics CAS
Original Assignee
Institute of Acoustics CAS
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Institute of Acoustics CAS filed Critical Institute of Acoustics CAS
Priority to CN202011595362.1A priority Critical patent/CN112583683B/zh
Publication of CN112583683A publication Critical patent/CN112583683A/zh
Application granted granted Critical
Publication of CN112583683B publication Critical patent/CN112583683B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40026Details regarding a bus guardian
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/03Protocol definition or specification 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/06Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN

Abstract

本申请公开了一种主从式CAN FD总线应用层通信方法及系统、电子设备,方法包括:接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID结构和数据域中的数据段数据结构;根据所述数据帧的仲裁域帧ID,确定所述数据帧的类型;根据数据帧类型,获取并解析数据帧帧结构数据域中相关数据,并执行与相关数据相关的功能。本申请可根据系统规模灵活选择通过标准帧或扩展帧实现。根据对中小型CAN FD总线系统在实际应用中的需求出发,设计了一种主从式的CAN FD总线应用层通信方法,简单易用,便于推广。

Description

一种主从式CAN FD总线应用层通信方法及系统、电子设备
技术领域
本发明涉及具有灵活数据速率的控制器局域网(Controller Area Network withFlexible Data rate,CAN FD)领域。尤其涉及一种主从式CAN FD总线应用层通信方法及系统、电子设备。
背景技术
控制器局域网(Controller Area Network,CAN)总线自诞生以来,已在汽车、工业控制等领域得到广泛的应用。但随着汽车电子、工业自动化技术的高速发展,设备间通信的数据量大大增加,传统CAN总线最大1Mbps通信速率、数据域最大8字节有效数据的技术特点已经逐渐不能满足高速、大数据量通信要求。CAN FD对传统CAN总线技术进行了升级,其仲裁域最大通信速率依然为1Mbps,但数据域通信速率可达到仲裁域的8倍,并且数据域的有效数据最大可达到64字节,有效避免了数据拆分的发生。
然而,CAN FD总线中依然未定义应用层通信方法,具体项目应用中,必须设计适合的应用层协议。传统的CAN总线应用层协议或是复杂的通用型协议,或是特定领域的专用协议,不利于中小型系统的设计实现,而且通常也无法有效发挥CAN FD总线的技术优势。
发明内容
由于现有方法存在上述问题,本申请提出一种主从式CAN FD总线应用层通信方法及系统、电子设备。
第一方面,本申请提出一种主从式CAN FD总线应用层通信方法,包括:
接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
在一种可能的实现中,所述周期指令帧和周期应答帧帧结构的仲裁域帧ID设置有地址位段和指令类型/数据类型位段中的一种或多种信息;
所述地址位段表示数据帧发送者;主节点的地址值为1,监控节点的地址值为0,从节点的地址分配根据从节点在系统中的重要性,从小到大分配;当地址位段指示数据来源为主节点或监控节点时,则指令类型/数据类型位段表示指令类型;当地址位段指示数据来源为从节点时,则指令类型/数据类型位段表示数据类型。
在一种可能的实现中,所述第一数据为主节点运行时间戳、主节点和从节点的自检状态、指令字节、从节点连接状态以及第一CRC32校验字节;
所述周期指令帧帧结构中的数据域中的数据段数据结构中,第一预设值字节为主节点运行时间戳,紧跟第一预设值字节的第二预设值字节为主节点和从节点的自检状态,紧跟第二预设值字节的第三预设值字节为指令字节,紧跟第三预设值字节的第四预设值字节为从节点连接状态,紧跟第四预设值字节的第五预设值字节为第一CRC32校验字节;
其中,所述第二预设值字节中的其中一位对应主节点的自检状态,其余位的每一位对应一个从节点的自检状态,如果对应位的值为1表示节点自检正常,为0表示节点自检异常;
在一种可能的实现中,不同位置的指令字节表示发送给不同的从节点。
在一种可能的实现中,所述第二数据为控制参数;
所述特定指令帧帧结构中的数据域中的数据段数据结构为控制参数。
在一种可能的实现中,所述第三数据为从节点记录的主节点的当前时间戳、从节点的自检状态、从节点的工作状态、从节点的功能数据以及第二CRC32校验字节;
所述周期应答帧帧结构的数据域中的数据段数据结构中,第一设置值字节为从节点记录的主节点的当前时间戳,紧跟第一设置值字节的第二设置值字节为从节点的自检状态,紧跟第二设置值字节的第三设置值字节为从节点的工作状态,紧跟第三设置值字节的第四设置值字节为从节点的功能数据,紧跟第四设置值字节的第五设置值字节为第二CRC32校验字节。
在一种可能的实现中,所述方法还包括:
若所述主节点发生异常,则所述监控节点接管所述主节点的工作。
在一种可能的实现中,所述监控节点通过所述主节点发送的周期指令帧中的从节点的自检状态字节监控从节点的自检状态。
第二方面,本申请还提出一种主从式CAN FD总线应用层通信系统,包括:
接收模块,用于接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
处理模块,用于根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
第三方面,本申请还提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,如第一方面及各种可能的实现中的各个步骤被执行。
本申请实施例的有益效果在于,可根据系统规模灵活选择通过标准帧或扩展帧实现。根据对中小型CAN FD总线系统在实际应用中的需求出发,设计了一种主从式的CAN FD总线应用层通信方法,简单易用,便于推广。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。
图1为本申请实施例提供的一种主从式CAN FD总线应用层通信方法的流程示意图;
图2为本申请实施例提供的主节点向从节点发送周期指令帧的通信示意图;
图3为本申请实施例提供的主节点向特定的从节点发送特定指令帧的通信示意图;
图4为本申请实施例提供的从节点向主节点发送周期应答帧的通信示意图;
图5为本申请实施例提供的从节点向主节点和监控节点发送异常状态帧的通信示意图;
图6为本申请实施例提供的监控节点管理从节点的通信示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
需要说明的是,本申请实施例的说明书和权利要求书中的术语“第一”、“第二”、“第三”、“第四”和“第五”等是用于区别不同的对象。例如,第一预设值字节、第二预设值字节、第三预设值字节、第四预设值字节和第五预设值字节等是用于区别不同的目标对象。在本申请实施例中,“示例性的”、“举例来说”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”、“举例来说”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”、“举例来说”或者“例如”等词旨在以具体方式呈现相关概念。
CAN FD总线虽然对CAN总线进行了升级,但是依然未定义应用层通信方法,因此,本申请实施例提供一种主从式CAN FD总线应用层通信方法实现CAN FD总线系统中应用层通信的各个步骤。上述CAN FD总线系统中包含一个主节点、一个监控节点和M个从节点,总的节点数目N=M+2。主节点处于主控模式,从节点处于受控模式,监控节点可以看作是一种特殊的从节点,其作用是监控主节点的运行状态,并在主节点发生故障时管理CAN FD总线系统。从节点只在发生功能故障时可以向主节点通报自身故障信息。
实施例1:
图1示出了一种主从式CAN FD总线应用层通信方法的流程示意图,该示意图包括:S101-S105。
在本申请实施例中,S101,主节点、从节点和监控节点都会接收到数据帧,上述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构。S102,根据数据帧帧结构的仲裁域帧ID,可以确定数据帧的类型为周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧。S103,若数据帧的类型为周期指令帧,则确定周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与第一数据相关的功能。第一数据可以为主节点运行时间戳、主节点和从节点的自检状态、指令字节、从节点连接状态以及第一CRC32校验字节。与第一数据相关的功能可以为从节点,如中央空调执行开启热风功能;S104,若数据帧的类型为特定指令帧,则确定特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与第二数据相关的功能。第二数据可以为控制参数。与第二数据相关的功能可以为特定的从节点,如第九个中央空调执行开启热风到27摄氏度;S105,若数据帧的类型为周期应答帧,则确定周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据。第三数据可以为从节点记录的主节点的当前时间戳、从节点的自检状态、从节点的工作状态、从节点的功能数据以及第二CRC32校验字节。异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧。异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
需要说明的是,周期指令帧和周期应答帧帧结构的仲裁域帧ID设置有地址位段和指令类型/数据类型位段中的一种或多种信息;地址位段表示数据帧发送者;主节点的地址值为1,监控节点的地址值为0,从节点的地址分配根据从节点在系统中的重要性,从小到大分配;当地址位段指示数据来源为主节点或监控节点时,则指令类型/数据类型位段表示指令类型;当地址位段指示数据来源为从节点时,则指令类型/数据类型位段表示数据类型。
还需要说明的是,周期指令帧帧结构中的数据域中的数据段数据结构中,第一预设值字节为主节点运行时间戳,紧跟第一预设值字节的第二预设值字节为主节点和从节点的自检状态,紧跟第二预设值字节的第三预设值字节为指令字节,紧跟第三预设值字节的第四预设值字节为从节点连接状态,紧跟第四预设值字节的第五预设值字节为第一CRC32校验字节;其中,所述第二预设值字节中的其中一位对应主节点的自检状态,其余位的每一位对应一个从节点的自检状态,如果对应位的值为1表示节点自检正常,为0表示节点自检异常。
特定指令帧帧结构中的数据域中的数据段数据结构为控制参数。
周期应答帧帧结构的数据域中的数据段数据结构中,第一设置值字节为从节点记录的主节点的当前时间戳,紧跟第一设置值字节的第二设置值字节为从节点的自检状态,紧跟第二设置值字节的第三设置值字节为从节点的工作状态,紧跟第三设置值字节的第四设置值字节为从节点的功能数据,紧跟第四设置值字节的第五设置值字节为第二CRC32校验字节。
实施例2:
在本申请实施例中,采用问答式通信,主节点作为一次交互通信的发起者,向从节点发送周期指令帧,以获取从节点同一时刻的自检状态、工作状态、功能数据,同时,要求从节点执行周期指令帧中要求的周期指令动作,主节点向从节点发送周期指令帧的通信示意图如图2所示。需要说明的是,若CAN FD总线系统中存在监控节点,主节点也会向监控节点发送周期指令帧,但监控节点不会进行应答。主节点可以向特定的从节点发送特定指令帧,以对特定的从节点进行单独控制,主节点向特定的从节点发送特定指令帧的通信示意图如图3所示。从节点接收到主节点发送的周期指令帧后,应答自身的自检状态、工作状态、功能数据,并且执行周期指令帧中要求的周期指令动作。从节点向主节点发送周期应答帧。从节点向主节点发送周期应答帧的通信示意图如图4所示。需要说明的是,即使从节点接收到主节点发送的特定指令帧,也不单独回应,而是在周期应答帧的工作状态中进行回应。从节点只有在发生功能故障时,才会主动向主节点发送异常状态帧,通报自身故障信息,该信息同时被监控节点接收。从节点向主节点和监控节点发送异常状态帧的通信示意图如图5所示。主节点接收从节点发送的周期应答帧。
需要说明的是,上述周期指令帧和周期应答帧通过设计帧结构中的仲裁域帧ID以及数据域中的数据段数据结构实现。
上述周期指令帧和周期应答帧的仲裁域帧ID的设计如表1所示。
表1帧ID结构
Bit 地址位段 指令类型/数据类型位段
描述 若干位 若干位
其中,CAN FD总线系统中总的节点数目的多少决定了地址位段的位数,则地址位段的位数至少应为log2N+1,log计算结果采用舍去小数部分的方法取整。
其中,地址位段的含义表示数据帧发送者。主节点的地址值为1,监控节点的地址值为0,从节点的地址分配根据从节点在系统中的重要性,从小到大分配;当地址位段指示数据来源为主节点或监控节点时,则指令类型/数据类型位段表示指令类型;当地址位段指示数据来源为从节点时,则指令类型/数据类型位段表示数据类型。指令类型/数据类型位段的长度可根据具体应用灵活确定。默认情况下,地址位段位数确定后,剩余的位均可划分为指令类型/数据类型位段。
上述周期指令帧数据域中的数据段数据结构设计如下。
主节点向从节点或监控节点发送周期指令帧,发送周期根据系统控制周期确定,帧数据长度为默认64字节有效数据。
有效数据中,前4字节为主节点运行时间戳,分辨率为1毫秒,该时间戳的步进值等于主节点的发送周期,从而也实际上代表了系统的工作周期。
有效数据中,时间戳后面紧跟若干字节,指示节点的自检状态,这些字节至少应有log2N位,log2N/8字节(向上取整)。节点的自检状态被主节点收集后,在这些字节中给出,这些字节的每一位对应一个从节点的自检状态,如果对应位的值为1表示节点自检正常,为0表示节点自检异常,主节点也在其中占有一位。需要说明的是,主节点发送周期指令帧后,从节点即开始应答自检状态,主节点在接收到从节点的应答数据后,监测从节点应答的时间戳能够与自身发出的时间戳匹配,并且从节点应答自检正常才认为从节点自检正常,否则认为从节点自检异常。
有效数据中,从节点的自检状态字节后面为指令字节。由于这些指令是在周期指令帧中,因此是周期发送的,可以可靠地被从节点接收,并且数据结构设计中不同位置的指令字节表示发送给不同的从节点。
有效数据中,指令字节后面为从节点连接状态字节,该字节的每一位代表一个从节点的连接状态,0表示断开连接状态,1表示处于连接状态。若从节点连续三个周期没有向主节点发送周期应答帧,则判断从节点已经断开连接。
有效数据中,最后4个字节为可选的第一CRC32校验字节,对以上所有有效数据进行CRC校验,可提供更强的检错能力。
根据具体的系统设计,如果需要的字节不足64字节,可以作为保留字节用于系统扩展。数据段的数据结构如表2所示。
主节点还可根据需要向特定的从节点发送特定指令帧单独控制该节点,用于发送控制参数较多的特定指令帧,特定指令帧的数据域中的数据段数据结构为控制参数,特定指令帧是非周期发送的。
表2数据段的数据结构
Figure BDA0002867877130000061
需要说明的是,系统节点数目及功能确定后,序号3所示的每条指令在数据结构中的位置也即确定,每条指令都可对应一个节点,周期指令帧中的指令为短指令,需要较多参数的指令帧需要在非周期的特定指令帧中实现。
上述周期应答帧数据域中的数据段数据结构设计如下。
从节点在接收到主节点发送的周期指令帧后,记录主节点的当前时间戳,应答自身的自检状态、工作状态、功能数据。应答的周期应答帧帧结构中,前4个字节为主节点的当前时间戳,随后的4个字节为从节点的当前自检状态,随后4个字节为工作状态,随后的字节为从节点的功能数据,典型的如温度传感器则为当前感应的温度值、压力传感器则为当前感应的压力值、开关控制器则为当前开关状态,最后4个字节为可选的第二CRC32校验字节,可以没有保留字节。
从节点对非周期指令的响应结果应该放在工作状态中,周期的向主节点汇报。
需要说明的是,监控节点接入CAN FD总线,但并不与总线中的节点通信,只有在监测到主节点周期指令帧发送异常时,包括周期指令帧发送超时或时间戳异常,监控节点向总线上各节点发送相应的异常处理指令帧;同时,监控节点还可以通过主节点发送的周期指令帧中的从节点的自检状态字节监控从节点的自检状态,监控节点管理从节点的通信示意图如图6所示。
还需要说明的是,主节点发生异常时,监控节点接管主节点的工作。
具体地,下面提供一种基于标准帧的CAN FD总线应用层通信方法的设计:
采用标准帧,11位帧ID,其中,地址位段为7位,指令类型/数据类型为4位。该实例中CAN FD总线系统最多可区分128个节点,主节点最多支持16种指令类型,从节点最多支持16种数据类型。
假定CAN FD总线系统中共有3种传感器,温度传感器节点地址分配为0x2,湿度传感器节点地址分配为0x3,开关控制器节点地址分配为0x4;
主节点有1种周期指令0x1;主节点有一种发送给开关控制器的特定指令帧0x2;从节点有2种数据类型,0x1为常规数据类型,包含自检状态、工作状态、功能数据等数据;0x2为异常数据类型。
则,主节点可以通过帧ID为0x11的周期指令帧,查询所有从节点的数据,从节点分别通过0x21、0x31、0x41应答自己的数据。
则,主节点可以通过帧ID为0x12的特定指令帧改变开关控制器的开关状态,帧数据域中含有1个指令参数,0xAA指示闭合开关,0x55指示断开开关。
则,温度传感器发生故障时,可以通过帧ID为0x22的异常状态帧通知主节点和监控节点发生节点故障,并且,可以在任何时刻发送该帧。
设计中,监控节点检测到主节点异常时,可以通过帧ID为0x0A停车指令,通知系统停车。
本申请实施例提供的一种主从式CAN FD总线应用层通信方法,周期指令帧、特定指令帧、周期应答帧、异常状态帧、异常处理指令帧具有各自的显著特征,而且地址位段含义明确,便于各节点进行CAN FD控制器组接收滤波设计,避免进行单点滤波设计,简化软件设计,节省处理器资源。
本申请实施例的有益效果在于,可根据系统规模灵活选择通过标准帧或扩展帧实现。根据对中小型CAN FD总线系统在实际应用中的需求出发,设计了一种主从式的CAN FD总线应用层通信方法,简单易用,便于推广。
本申请实施例提供一种主从式CAN FD总线应用层通信系统,包括:
接收模块,用于接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
处理模块,用于根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
本申请实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如下步骤:
接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (10)

1.一种主从式CAN FD总线应用层通信方法,其特征在于,包括:
接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
2.根据权利要求1所述的方法,其特征在于,所述周期指令帧和周期应答帧帧结构的仲裁域帧ID设置有地址位段和指令类型/数据类型位段中的一种或多种信息;
所述地址位段表示数据帧发送者;主节点的地址值为1,监控节点的地址值为0,从节点的地址分配根据从节点在系统中的重要性,从小到大分配;当地址位段指示数据来源为主节点或监控节点时,则指令类型/数据类型位段表示指令类型;当地址位段指示数据来源为从节点时,则指令类型/数据类型位段表示数据类型。
3.根据权利要求1所述的方法,其特征在于,所述第一数据为主节点运行时间戳、主节点和从节点的自检状态、指令字节、从节点连接状态以及第一CRC32校验字节;
所述周期指令帧帧结构中的数据域中的数据段数据结构中,第一预设值字节为主节点运行时间戳,紧跟第一预设值字节的第二预设值字节为主节点和从节点的自检状态,紧跟第二预设值字节的第三预设值字节为指令字节,紧跟第三预设值字节的第四预设值字节为从节点连接状态,紧跟第四预设值字节的第五预设值字节为第一CRC32校验字节;
其中,所述第二预设值字节中的其中一位对应主节点的自检状态,其余位的每一位对应一个从节点的自检状态,如果对应位的值为1表示节点自检正常,为0表示节点自检异常。
4.根据权利要求3所述的方法,其特征在于,不同位置的指令字节表示发送给不同的从节点。
5.根据权利要求1所述的方法,其特征在于,所述第二数据为控制参数;
所述特定指令帧帧结构中的数据域中的数据段数据结构为控制参数。
6.根据权利要求1所述的方法,其特征在于,所述第三数据为从节点记录的主节点的当前时间戳、从节点的自检状态、从节点的工作状态、从节点的功能数据以及第二CRC32校验字节;
所述周期应答帧帧结构的数据域中的数据段数据结构中,第一设置值字节为从节点记录的主节点的当前时间戳,紧跟第一设置值字节的第二设置值字节为从节点的自检状态,紧跟第二设置值字节的第三设置值字节为从节点的工作状态,紧跟第三设置值字节的第四设置值字节为从节点的功能数据,紧跟第四设置值字节的第五设置值字节为第二CRC32校验字节。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述主节点发生异常,则所述监控节点接管所述主节点的工作。
8.根据权利要求3所述的方法,其特征在于,所述监控节点通过所述主节点发送的周期指令帧中的从节点的自检状态字节监控从节点的自检状态。
9.一种主从式CAN FD总线应用层通信系统,其特征在于,包括:
接收模块,用于接收数据帧;其中,所述数据帧的帧结构中包括仲裁域帧ID和数据域中的数据段数据结构;
处理模块,用于根据所述数据帧帧结构的仲裁域帧ID,确定所述数据帧的类型;其中,所述数据帧的类型包括周期指令帧、特定指令帧、周期应答帧、异常状态帧或异常处理指令帧;
若所述数据帧的类型为周期指令帧,则确定所述周期指令帧为从节点或监控节点接收的来自主节点的数据帧,从节点或监控节点获取其帧结构的数据域中的数据段数据结构中的第一数据,并执行与所述第一数据相关的功能;
若所述数据帧的类型为特定指令帧,则确定所述特定指令帧为从节点接收的来自主节点的数据帧,从节点获取其帧结构的数据域中的数据段数据结构中的第二数据,并执行与所述第二数据相关的功能;
若所述数据帧的类型为周期应答帧,则确定所述周期应答帧为主节点接收的来自从节点的数据帧,主节点获取其帧结构的数据域中的数据段数据结构中的第三数据;
其中,所述异常状态帧为主节点接收的从节点发生功能故障时发送的数据帧;
所述异常处理指令帧为主节点或从节点接收的监控节点监测到主节点发生异常时发送的数据帧。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一所述的方法。
CN202011595362.1A 2020-12-29 2020-12-29 一种主从式can fd总线应用层通信方法及系统、电子设备 Active CN112583683B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011595362.1A CN112583683B (zh) 2020-12-29 2020-12-29 一种主从式can fd总线应用层通信方法及系统、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011595362.1A CN112583683B (zh) 2020-12-29 2020-12-29 一种主从式can fd总线应用层通信方法及系统、电子设备

Publications (2)

Publication Number Publication Date
CN112583683A true CN112583683A (zh) 2021-03-30
CN112583683B CN112583683B (zh) 2021-10-15

Family

ID=75144058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011595362.1A Active CN112583683B (zh) 2020-12-29 2020-12-29 一种主从式can fd总线应用层通信方法及系统、电子设备

Country Status (1)

Country Link
CN (1) CN112583683B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242575A (zh) * 2021-04-22 2022-10-25 广州汽车集团股份有限公司 基于canfd网络的报文处理方法、装置、设备及存储介质
WO2023025299A1 (zh) * 2021-08-27 2023-03-02 北京希姆计算科技有限公司 数据帧格式、芯片通信方法及芯片
CN115964333A (zh) * 2023-03-17 2023-04-14 之江实验室 一种基于fpga主控的多芯片神经网络算法的通信方法

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758070A (en) * 1995-10-06 1998-05-26 Canon Kabushiki Kaisha System for dynamically determining a network media type of a LAN using frame type identifying value from a configuration table
US20070047588A1 (en) * 2005-08-31 2007-03-01 Omron Corporation Communication system and slave and repeater units therefor
CN101626333A (zh) * 2009-08-07 2010-01-13 北京和利时电机技术有限公司 一种can总线系统及其中的应用层通讯方法
CN102932224A (zh) * 2012-11-23 2013-02-13 哈尔滨工业大学 基于can网络的数据通讯系统及基于该系统的数据通讯方法
CN103576665A (zh) * 2013-11-26 2014-02-12 中国科学院声学研究所 Can总线控制系统
EP2712123A1 (en) * 2012-09-20 2014-03-26 Robert Bosch Gmbh Standard CAN implementation tolerating CAN FD frames
CN104092675A (zh) * 2014-06-30 2014-10-08 飞天诚信科技股份有限公司 一种基于主从通信结构的处理冲正的方法和终端
CN104780086A (zh) * 2015-05-08 2015-07-15 中国电子科技集团公司第四十七研究所 用于监测环境的can总线通信的方法及系统
CN105069059A (zh) * 2015-07-28 2015-11-18 小米科技有限责任公司 数据库同步方法及装置
CN106533622A (zh) * 2016-11-17 2017-03-22 安徽江淮汽车集团股份有限公司 基于canfd总线的数据帧的数据场校验方法及装置
US20170142137A1 (en) * 2015-11-13 2017-05-18 Kabushiki Kaisha Toshiba Communication system, receiving apparatus, receiving method, and computer program product
CN107147478A (zh) * 2017-07-07 2017-09-08 河南辉煌科技股份有限公司 基于can2.0长报文数据标准帧的组织算法
US20170317812A1 (en) * 2016-04-28 2017-11-02 Hamilton Sundstrand Corporation Controller area network synchronization
CN108401491A (zh) * 2016-12-06 2018-08-14 松下电器(美国)知识产权公司 信息处理方法、信息处理系统以及程序
CN108810102A (zh) * 2018-05-23 2018-11-13 邓晓燕 一种使用两个can标识符划分的应用层分配方法
US20190141072A1 (en) * 2016-12-06 2019-05-09 Panasonic Intellectual Property Corporation Of America Information processing device and information processing method
CN110505131A (zh) * 2018-05-18 2019-11-26 中国科学院声学研究所 一种主从式can总线应用层通信方法
CN111200844A (zh) * 2019-12-31 2020-05-26 苏州卓彩智能科技有限公司 一种多从机双向通讯方法
CN211230431U (zh) * 2019-12-16 2020-08-11 北京港震科技股份有限公司 一种分布式井下数据采集系统

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758070A (en) * 1995-10-06 1998-05-26 Canon Kabushiki Kaisha System for dynamically determining a network media type of a LAN using frame type identifying value from a configuration table
US20070047588A1 (en) * 2005-08-31 2007-03-01 Omron Corporation Communication system and slave and repeater units therefor
CN101626333A (zh) * 2009-08-07 2010-01-13 北京和利时电机技术有限公司 一种can总线系统及其中的应用层通讯方法
EP2712123A1 (en) * 2012-09-20 2014-03-26 Robert Bosch Gmbh Standard CAN implementation tolerating CAN FD frames
CN102932224A (zh) * 2012-11-23 2013-02-13 哈尔滨工业大学 基于can网络的数据通讯系统及基于该系统的数据通讯方法
CN103576665A (zh) * 2013-11-26 2014-02-12 中国科学院声学研究所 Can总线控制系统
CN104092675A (zh) * 2014-06-30 2014-10-08 飞天诚信科技股份有限公司 一种基于主从通信结构的处理冲正的方法和终端
CN104780086A (zh) * 2015-05-08 2015-07-15 中国电子科技集团公司第四十七研究所 用于监测环境的can总线通信的方法及系统
CN105069059A (zh) * 2015-07-28 2015-11-18 小米科技有限责任公司 数据库同步方法及装置
US20170142137A1 (en) * 2015-11-13 2017-05-18 Kabushiki Kaisha Toshiba Communication system, receiving apparatus, receiving method, and computer program product
US20170317812A1 (en) * 2016-04-28 2017-11-02 Hamilton Sundstrand Corporation Controller area network synchronization
CN106533622A (zh) * 2016-11-17 2017-03-22 安徽江淮汽车集团股份有限公司 基于canfd总线的数据帧的数据场校验方法及装置
CN108401491A (zh) * 2016-12-06 2018-08-14 松下电器(美国)知识产权公司 信息处理方法、信息处理系统以及程序
US20190141072A1 (en) * 2016-12-06 2019-05-09 Panasonic Intellectual Property Corporation Of America Information processing device and information processing method
CN107147478A (zh) * 2017-07-07 2017-09-08 河南辉煌科技股份有限公司 基于can2.0长报文数据标准帧的组织算法
CN110505131A (zh) * 2018-05-18 2019-11-26 中国科学院声学研究所 一种主从式can总线应用层通信方法
CN108810102A (zh) * 2018-05-23 2018-11-13 邓晓燕 一种使用两个can标识符划分的应用层分配方法
CN211230431U (zh) * 2019-12-16 2020-08-11 北京港震科技股份有限公司 一种分布式井下数据采集系统
CN111200844A (zh) * 2019-12-31 2020-05-26 苏州卓彩智能科技有限公司 一种多从机双向通讯方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
EEBLACKSMITH: "CAN-FD协议浅析", 《HTTPS://BLOG.CSDN.NET/JACKJONES_008/ARTICLE/DETAILS/53158556》 *
GIANLUCA CENA: "CAN With eXtensible In-Frame Reply", 《IEEE TRANSACTIONS ON INDUSTRIAL INFORMATICS ( VOLUME: 13, ISSUE: 5, OCT. 2017)》 *
商志刚等: "基于CAN总线智能传感器网络应用层协议设计", 《网络新媒体技术》 *
王邦继: "CAN总线应用层协议的研究与实现", 《计算机工程与应用》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242575A (zh) * 2021-04-22 2022-10-25 广州汽车集团股份有限公司 基于canfd网络的报文处理方法、装置、设备及存储介质
CN115242575B (zh) * 2021-04-22 2023-10-03 广州汽车集团股份有限公司 基于canfd网络的报文处理方法、装置、设备及存储介质
WO2023025299A1 (zh) * 2021-08-27 2023-03-02 北京希姆计算科技有限公司 数据帧格式、芯片通信方法及芯片
CN115964333A (zh) * 2023-03-17 2023-04-14 之江实验室 一种基于fpga主控的多芯片神经网络算法的通信方法
CN115964333B (zh) * 2023-03-17 2023-06-09 之江实验室 一种基于fpga主控的多芯片神经网络算法的通信方法

Also Published As

Publication number Publication date
CN112583683B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
CN112583683B (zh) 一种主从式can fd总线应用层通信方法及系统、电子设备
US7623460B2 (en) Cluster system, load distribution method, optimization client program, and arbitration server program
CN114328102B (zh) 设备状态监控方法、装置、设备及计算机可读存储介质
CN101512462B (zh) 用于限制处理器性能的系统及方法
CN100365994C (zh) 用于调试以太网的方法和装置
CN105119793A (zh) 一种传感器网络can总线帧格式的标识符分配方法
MX2008003299A (es) Depuracion de sistemas integrados.
CN110505131B (zh) 一种主从式can总线应用层通信方法
JP2017507432A (ja) 複数のセンサを有する測定システム
CN112235127B (zh) 节点故障上报方法、装置、终端设备及存储介质
CN105159851A (zh) 多控存储系统
CN103152221A (zh) 多设备自检方法及设备状态监控系统、设备群组
CN102487347B (zh) 航天智能总线接口系统和使用该接口系统的航天智能网络系统
CN110471816B (zh) 固态硬盘的数据管理方法及装置
KR20100020253A (ko) 차량 네트워크에서의 메시지 전송 상태 진단 장치
EP2398190B1 (en) Field communication system
Dulman et al. Operating system fundamentals for the EYES distributed sensor network
CN111884898B (zh) 基于软、硬件融合的列车网络控制系统及融合方法
CN102215376A (zh) 监视系统及数据传输装置和方法
CN117093465A (zh) 服务器日志收集方法、装置、通信设备及存储介质
CN114978871B (zh) 业务系统的节点切换方法及节点切换装置、电子设备
CN116074397A (zh) 一种数据共享系统
CN115705267A (zh) 监控采集设备、基于监控采集设备的主备切换方法及系统
CN115113611A (zh) 一种故障诊断方法、系统、设备和介质
CN112206453A (zh) 消防控制系统

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