CN109743242A - Can总线报文控制系统及其控制方法 - Google Patents

Can总线报文控制系统及其控制方法 Download PDF

Info

Publication number
CN109743242A
CN109743242A CN201811619128.0A CN201811619128A CN109743242A CN 109743242 A CN109743242 A CN 109743242A CN 201811619128 A CN201811619128 A CN 201811619128A CN 109743242 A CN109743242 A CN 109743242A
Authority
CN
China
Prior art keywords
message
frame
timestamp
time
timeout
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
CN201811619128.0A
Other languages
English (en)
Other versions
CN109743242B (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.)
Shanghai Qingdu Automobile Technology Co Ltd
DIAS Automotive Electronic Systems Co Ltd
Lianchuang Automotive Electronics Co Ltd
Original Assignee
Shanghai Qingdu Automobile Technology Co Ltd
Lianchuang Automotive Electronics Co Ltd
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 Shanghai Qingdu Automobile Technology Co Ltd, Lianchuang Automotive Electronics Co Ltd filed Critical Shanghai Qingdu Automobile Technology Co Ltd
Priority to CN201811619128.0A priority Critical patent/CN109743242B/zh
Publication of CN109743242A publication Critical patent/CN109743242A/zh
Application granted granted Critical
Publication of CN109743242B publication Critical patent/CN109743242B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种CAN总线报文控制系统,包括时间戳模块,为每帧报文赋予时间戳;报文传输状态判断模块,判断当前传输状态是否处于报文超时状态;报文超时恢复模块,在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;报文时间间隔防溢出模块,采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。本发明还公开了一种CAN总线报文控制方法。本发明能实现精准监控报文超时、配置报文周期与周期偏差,能够进行报文超时判断以及报文超时恢复。

Description

CAN总线报文控制系统及其控制方法
技术领域
本发明涉及汽车领域,特别是涉及一种用于汽车CAN总线的报文控制系统。本发明还涉及一种用于汽车CAN总线的报文控制方法。
背景技术
CAN是Controller Area Network的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。在汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个LAN,进行大量数据的高速通信”的需要,1986年德国电气商博世公司开发出面向汽车的CAN通信协议。CAN的高性能和可靠性已被认同,并被广泛地应用于工业自动化、船舶、医疗设备、工业设备等方面。现场总线是当今自动化领域技术发展的热点之一,被誉为自动化领域的计算机局域网。它的出现为分布式控制系统实现各节点之间实时、可靠的数据通信提供了强有力的技术支持。
由于CAN为愈来愈多不同领域采用和推广,导致要求各种应用领域通信报文的标准化。随着汽车电动化与智能化趋势的不断发展,传统的汽车电子开发方式面临着不断的挑战。汽车整车电子采用分布式控制方式给控制器之间的通信机制也带了很多的挑战。基于CAN总线的汽车局域网络技术解决了控制器之间通信的问题,同时增加了通信故障监控的难度,控制器中对CAN总线报文的监控是软件功能安全的要求,也是对信号有效性和安全性的保障。
发明内容
本发明要解决的技术问题是提供一种能实现精准监控报文超时、配置报文周期与周期偏差,能够进行报文超时判断以及报文超时恢复的CAN总线报文控制系统。
本发明还提供了一种能实现精准监控报文超时、配置报文周期与周期偏差,能够进行报文超时判断以及报文超时恢复的CAN总线报文控制方法。
为解决上述技术问题,本发明提供的CAN总线报文控制系统,包括:时间戳模块、报文传输状态判断模块、报文超时判断模块、报文超时恢复模块和报文时间间隔防溢出模块;
时间戳模块,为每帧报文赋予时间戳;
报文传输状态判断模块,判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在预设时间段内如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;
报文超时恢复模块,在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;
报文时间间隔防溢出模块,采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
进一步改进所述的CAN总线报文控制系统,所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳。
进一步改进所述的CAN总线报文控制系统,所述预设时间段是10ms-1000ms,优选为100ms、250ms、500ms或750ms。
进一步改进所述的CAN总线报文控制系统,所述m的范围是
进一步改进所述的CAN总线报文控制系统,所述超时阈值范围是5-10。
进一步改进所述的CAN总线报文控制系统,所述n的范围是3-5。
本发明提供一种CAN总线报文控制方法,包括以下步骤:
为每帧报文赋予时间戳;
判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在预设时间段内如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;
在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;
采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
进一步改进所述的CAN总线报文控制方法,所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳。
进一步改进所述的CAN总线报文控制方法,所述预设时间段是10ms-1000ms,优选为100ms、250ms、500ms或750ms。
进一步改进所述的CAN总线报文控制方法,所述超时阈值范围是5-10。
进一步改进所述的CAN总线报文控制方法,所述n的范围是3-5。
本发明时间戳是指在报文接收的时刻时间计数器的数值,该计数器在控制器上电时刻开始计数,每经过0.01us计数器加1,在报文接收的时刻读取此计数器的值,然后将其存储下来,就能够记录报文接收的时间。
报文超时是指将报文连续多个周期未收到的情况,超时之后需要将超时故障记录下来。报文超时恢复是指在报文超时之后,如果又连续收到多帧报文,则报文超时的故障可以消除,表示报文已经恢复正常的发送。
报文时间间隔溢出是指报文的时间戳计数器是一个有限长度的无符号整形,以32位的长度为例,如果每过0.01us加1,则32位的计数器最大可记录的时间长度为42.9s(保留一位小数),则需要考虑时间超过最大可记录时间之后,时间戳的有效性。
本发明能实现精准时间监控的CAN报文超时与恢复,每一帧报文精准时间戳能够记录报文接收时刻的相对于控制器上电时刻的相对时间戳,该时间戳可精确到0.01us,可以用于后续的报文超时以及报文恢复功能的时间输入。本发明能够判断连续任意个周期没有收到被监控报文之后,能够汇报报文丢失故障,任意个周期的个数可以实现自由配置,满足控制器接收不同周期报文的需求。本发明能够在连续收到任意个周期的被监控报文之后,将报文超时的故障恢复,连续收到的报文之间的时间间隔必须满足报文的周期偏差需求,该周期偏差可以自由配置,以此提高功能的灵活性。本发明能够准确的判断报文的时间戳的有效性,能够检测报文的时间是否溢出,在溢出的情况下需要对报文的时间戳进行溢出处理。本发明能通过周期性判断时间戳是否比上次增大来判断时间戳是否溢出。
附图说明
下面结合附图与具体实施方式对本发明作进一步详细的说明:
图1是本发明的原理示意图。
图2是本发明的流程示意图。
具体实施方式
本发明提供的CAN总线报文控制系统,包括:时间戳模块、报文传输状态判断模块、报文超时判断模块、报文超时恢复模块和报文时间间隔防溢出模块;
时间戳模块,为每帧报文赋予时间戳;所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳;
报文传输状态判断模块,判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在10ms如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;所述超时阈值范围是5-10,优选为5、6、7、8或9。
报文超时恢复模块,在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;所述n的范围是3-5,优选为4。
报文时间间隔防溢出模块,采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
如图2所示,本发明提供一种CAN总线报文控制方法,包括以下步骤:
为每帧报文赋予时间戳,所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳,计数器在控制器上电时刻开始计数,每经过0.01us计数器加1,在报文接收的时刻读取此计数器的值,然后将其存储下来,就能够记录报文接收的时间。
判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在100ms内如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;所述超时阈值范围是5-10;
在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数,所述n的范围是3-5。连续收到n帧周期正确的报文之间的时间间隔必须满足报文的周期偏差需求,该周期偏差可以自由配置,以此提高功能的灵活性。
采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
以上通过具体实施方式和实施例对本发明进行了详细的说明,但这些并非构成对本发明的限制。在不脱离本发明原理的情况下,本领域的技术人员还可做出许多变形和改进,这些也应视为本发明的保护范围。

Claims (10)

1.一种CAN总线报文控制系统,其特征在于,包括:时间戳模块、报文传输状态判断模块、报文超时判断模块、报文超时恢复模块和报文时间间隔防溢出模块;
时间戳模块,为每帧报文赋予时间戳;
报文传输状态判断模块,判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在预设时间段内如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;
报文超时恢复模块,在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;
报文时间间隔防溢出模块,采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
2.如权利要求1所述的CAN总线报文控制系统,其特征在于:所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳。
3.如权利要求1所述的CAN总线报文控制系统,其特征在于:所述预设时间段是10ms-1000ms。
4.如权利要求1所述的CAN总线报文控制系统,其特征在于:所述超时阈值范围是5-10。
5.如权利要求1所述的CAN总线报文控制系统,其特征在于:所述n的范围是3-5。
6.一种CAN总线报文控制方法,其特征在于,包括以下步骤:
为每帧报文赋予时间戳;
判断当前传输状态是否处于报文超时状态;
如果当前处于报文超时状态,在预设时间段内如果收到新报文,则执行报文超时恢复模块;
如果当前处于非报文超时状态,若一个周期没有收到报文之后开始报文超时计数,在报文超时计数过程中如果收到一帧报文则重新开始报文超时计数,当报文超时计数大于超时阈值则进入报文超时状态;
在连续收到n帧周期正确的报文后,脱离报文超时状态;如果n帧中有一帧的周期不正确,则重新开始计算帧数;
采用固定周期将当前帧的时间戳与其后一帧的时间戳进行比较,如果当前帧的时间戳小于其后一帧的时间戳则报文未溢出,如果前帧的时间戳大于等于其后一帧的时间戳则报文溢出,对报文溢出状态进行计数。
7.如权利要求6所述的CAN总线报文控制方法,其特征在于:所述时间戳是报文接收时刻相对于控制器上电时刻的相对时间戳。
8.如权利要求6所述的CAN总线报文控制方法,其特征在于:所述预设时间段是10ms-1000ms。
9.如权利要求6所述的CAN总线报文控制方法,其特征在于:所述超时阈值范围是5-10。
10.如权利要求6所述的CAN总线报文控制方法,其特征在于:所述n的范围是3-5。
CN201811619128.0A 2018-12-28 2018-12-28 Can总线报文控制系统及其控制方法 Active CN109743242B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811619128.0A CN109743242B (zh) 2018-12-28 2018-12-28 Can总线报文控制系统及其控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811619128.0A CN109743242B (zh) 2018-12-28 2018-12-28 Can总线报文控制系统及其控制方法

Publications (2)

Publication Number Publication Date
CN109743242A true CN109743242A (zh) 2019-05-10
CN109743242B CN109743242B (zh) 2021-06-08

Family

ID=66361650

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811619128.0A Active CN109743242B (zh) 2018-12-28 2018-12-28 Can总线报文控制系统及其控制方法

Country Status (1)

Country Link
CN (1) CN109743242B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110531743A (zh) * 2019-09-25 2019-12-03 重庆长安汽车股份有限公司 发动机管理系统对总线相关控制模块的诊断方法
CN112367634A (zh) * 2020-11-10 2021-02-12 上海汽车集团股份有限公司 报文发送方法及装置
CN112398672A (zh) * 2019-08-16 2021-02-23 北京新能源汽车股份有限公司 一种报文检测方法及装置
CN112615883A (zh) * 2020-12-28 2021-04-06 北京威努特技术有限公司 一种攻击检测方法、装置、电子设备及存储介质
CN115695153A (zh) * 2023-01-03 2023-02-03 长沙莫之比智能科技有限公司 一种can通信监测和异常自动恢复方法

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035272B2 (en) * 2000-02-16 2006-04-25 Sony Corporation Method and apparatus for transferring data, and storage medium
CN101383818A (zh) * 2007-09-05 2009-03-11 华为技术有限公司 一种接入网络的处理方法及装置
CN101751020A (zh) * 2008-12-17 2010-06-23 中国科学院沈阳自动化研究所 一种高可用性功能块冗余方法
CN101917320A (zh) * 2010-07-12 2010-12-15 金龙联合汽车工业(苏州)有限公司 客车车身可配置控制模块的配置参数下载装置和下载方法
CN103428030A (zh) * 2013-08-01 2013-12-04 杭州华三通信技术有限公司 全连接网络的拓扑建立方法及节点
CN103546306A (zh) * 2012-07-13 2014-01-29 广州汽车集团股份有限公司 周期性can报文丢失故障的判定系统和方法
CN103795554A (zh) * 2012-10-29 2014-05-14 华为技术有限公司 一种管理终端状态的方法,装置和系统
CN104272664A (zh) * 2012-03-22 2015-01-07 宝马股份公司 用于车辆的网关、节点和方法
CN104917645A (zh) * 2015-04-17 2015-09-16 浪潮电子信息产业股份有限公司 一种在线检测报文传输超时的方法与装置
CN106444729A (zh) * 2016-12-16 2017-02-22 普华基础软件股份有限公司 一种基于实时系统的轨迹捕捉系统
CN106533639A (zh) * 2016-12-06 2017-03-22 迈锐数据(北京)有限公司 一种数据重传方法及装置
CN106788911A (zh) * 2015-11-25 2017-05-31 华为技术有限公司 一种报文重传的方法和装置
CN106941427A (zh) * 2017-02-15 2017-07-11 北京浩瀚深度信息技术股份有限公司 基于报文驱动的流记录溢出与超时上报方法系统

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035272B2 (en) * 2000-02-16 2006-04-25 Sony Corporation Method and apparatus for transferring data, and storage medium
CN101383818A (zh) * 2007-09-05 2009-03-11 华为技术有限公司 一种接入网络的处理方法及装置
CN101751020A (zh) * 2008-12-17 2010-06-23 中国科学院沈阳自动化研究所 一种高可用性功能块冗余方法
CN101917320A (zh) * 2010-07-12 2010-12-15 金龙联合汽车工业(苏州)有限公司 客车车身可配置控制模块的配置参数下载装置和下载方法
CN104272664A (zh) * 2012-03-22 2015-01-07 宝马股份公司 用于车辆的网关、节点和方法
CN103546306A (zh) * 2012-07-13 2014-01-29 广州汽车集团股份有限公司 周期性can报文丢失故障的判定系统和方法
CN103795554A (zh) * 2012-10-29 2014-05-14 华为技术有限公司 一种管理终端状态的方法,装置和系统
CN103428030A (zh) * 2013-08-01 2013-12-04 杭州华三通信技术有限公司 全连接网络的拓扑建立方法及节点
CN104917645A (zh) * 2015-04-17 2015-09-16 浪潮电子信息产业股份有限公司 一种在线检测报文传输超时的方法与装置
CN106788911A (zh) * 2015-11-25 2017-05-31 华为技术有限公司 一种报文重传的方法和装置
CN106533639A (zh) * 2016-12-06 2017-03-22 迈锐数据(北京)有限公司 一种数据重传方法及装置
CN106444729A (zh) * 2016-12-16 2017-02-22 普华基础软件股份有限公司 一种基于实时系统的轨迹捕捉系统
CN106941427A (zh) * 2017-02-15 2017-07-11 北京浩瀚深度信息技术股份有限公司 基于报文驱动的流记录溢出与超时上报方法系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112398672A (zh) * 2019-08-16 2021-02-23 北京新能源汽车股份有限公司 一种报文检测方法及装置
CN112398672B (zh) * 2019-08-16 2023-07-25 北京新能源汽车股份有限公司 一种报文检测方法及装置
CN110531743A (zh) * 2019-09-25 2019-12-03 重庆长安汽车股份有限公司 发动机管理系统对总线相关控制模块的诊断方法
CN112367634A (zh) * 2020-11-10 2021-02-12 上海汽车集团股份有限公司 报文发送方法及装置
CN112367634B (zh) * 2020-11-10 2022-12-13 上海汽车集团股份有限公司 报文发送方法及装置
CN112615883A (zh) * 2020-12-28 2021-04-06 北京威努特技术有限公司 一种攻击检测方法、装置、电子设备及存储介质
CN112615883B (zh) * 2020-12-28 2023-04-07 北京威努特技术有限公司 一种攻击检测方法、装置、电子设备及存储介质
CN115695153A (zh) * 2023-01-03 2023-02-03 长沙莫之比智能科技有限公司 一种can通信监测和异常自动恢复方法

Also Published As

Publication number Publication date
CN109743242B (zh) 2021-06-08

Similar Documents

Publication Publication Date Title
CN109743242A (zh) Can总线报文控制系统及其控制方法
CN100366029C (zh) 通信控制器、主机端控制器、通信设备、通信系统和方法
Ziermann et al. CAN+: A new backward-compatible Controller Area Network (CAN) protocol with up to 16× higher data rates.
CN103999410B (zh) 通信系统及通信方法
EP2079190A1 (en) Fault location device, communication device, and fault location method
CN102984059B (zh) 千兆以太网冗余网卡及其链路切换条件判定结果控制方法
CN101404556B (zh) 一线总线的通讯方法
JP2738106B2 (ja) 多重通信制御装置
CN111030909B (zh) 一种应用于can总线多主设备通讯间时间同步的方法
CN106411443B (zh) 报文传输的方法、车载网络系统及车辆
KR101519719B1 (ko) 게이트웨이의 메시지 처리 방법
Navet Controller area network [automotive applications]
JP2000196700A (ja) 調歩同期式データ伝送方法
CN101106438B (zh) 通信网络系统和错误验证方法
CN115668855A (zh) 无线bms主机时间同步机制
JP6410914B1 (ja) シリアル通信システム
CN101917322B (zh) 一种自适应多总线融合方法
CN114144996A (zh) 用于串行总线系统的用户站的装置和用于在串行总线系统中进行通信的方法
CN114128221B (zh) 用于串行总线系统的用户站和用于在串行总线系统中通信的方法
CN111342945B (zh) 主从通信方法和装置
US20050041765A1 (en) Synchronization of data-processing units
CN115362642A (zh) 用于在通信总线系统的单元之间执行时间同步的方法和系统
KR102313636B1 (ko) 차량 네트워크에서 시간 동기화를 위한 통신 노드의 동작 방법
EP2713537B1 (en) High speed data transmission methods and systems upon error detection
CN112583678B (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