车载控制器局域网数据修复方法和系统与流程
- 国知局
- 2024-11-06 15:00:22
本发明涉及车载控制器局域网通信领域,更具体地,涉及一种车载控制器局域网数据修复方法和系统。
背景技术:
1、随着车载工业及工业自动化技术的飞速发展,车载内部及工业设备中的电子控制单元(ecu)数量不断增加,这些单元之间的数据通信变得愈发重要。can(controller areanetwork,控制器局域网)总线技术因其高可靠性、实时性和灵活性,成为了这些领域广泛应用的通信标准。
2、can总线最初由德国博世公司在20世纪80年代中期研发,主要用于车载内部ecu之间的通信。它采用差分信号传输方式,通过can_h(高电平线)和can_l(低电平线)之间的电压差来表示数据,有效抵抗了共模干扰,提高了通信的鲁棒性。can总线具有多主站结构、消息仲裁、错误检测和处理等特性,能够支持不同速率级别的通信,满足各种复杂环境下的数据传输需求。
3、在车载和工业自动化系统中,can总线承载着大量的控制指令和状态信息,其稳定性和可靠性直接关系到整个系统的运行状况。然而,由于系统复杂性的增加以及外部环境的干扰,can总线数据传输过程中难免会出现各种故障。这些故障如果得不到及时修复,可能会导致系统性能下降、设备损坏甚至安全事故。因此,开发高效、可靠的can总线数据修复技术,对于保障系统稳定运行具有重要意义。
4、现有技术中,车载控制器can网络通信,为了确保数据的准确,控制器在发送一帧can报文时,会对数据进行crc(循环冗余校验码)校验,并将crc置于报文的开始和末尾,和数据一起组成一帧数据发到总线上,其他控制器收到这帧报文时,会对数据再次进行crc计算,因为数据发生和数据接收使用的是同样的crc算法,所以当接收控制器对数据计算的crc和接收的crc一致,则表明接收数据是准确的,反之,当计算的crc与接收的crc不一致,则表明接收到的数据从发送节点发出后被篡改过,数据是不可信的。虽然使用可crc校验,确保了数据的准确性,但是当数据被任意篡改,即便是只有一个bit位被篡改,也会导致整个报文的数据无效,这使得can通信的鲁棒性不高,尤其是对于碰撞故障、高压绝缘故障,这类故障发生后极短时间会出现其他问题,总线数据如果因为干扰导致crc校验失败而丢弃这些报文,控制器收不到故障状态,将对车辆安全带来非常严重的后果。
5、现有技术公告号:cn114362882a,申请日:2021
6、年12月29日,公开了一种基于can总线的256byte数据纠错方法,通过传输前对传输数据进行crc计算,传输后对数据进行crc计算并对出现错误的数据通过将信号修改到定义范围内,并对新组成的报文再次crc计算,计算结果如果和收到的crc进行比对,直到一致的方法进行修复,但是对于车速、转速、电压、电流这类信号,其值覆盖范围大,如果使用上述方法,则需要特别多的尝试,会消耗cpu运行时间,降低can总线通信的鲁棒性。
7、因此,本发明提供一种具有数据修复功能能够提高车载can通信鲁棒性的,避免过度消耗cpu运行时间的可以预防因为通信干扰导致控制器丢失关键的信号的车载控制器局域网数据修复方法和系统。
技术实现思路
1、本发明提供了一种车载控制器局域网数据修复方法和系统,实现了数据修复功能可以快速修复,进一步提高车载can通信鲁棒性;可以预防因为通信干扰导致控制器丢失关键的信号,例如碰撞状态、油门踏板信号、制动信号等。
2、为达到上述目的,本发明采用如下技术方案:
3、第一方面,本发明提供了一种车载控制器局域网数据修复方法,该方法包括:
4、对接收报文的数据进行循环冗余校验码计算,得到接收校验值;
5、判断接收校验值与原始校验值是否相同;
6、若接收校验值与原始校验值不同,对接收报文进行数据修复,数据修复包括信号趋势分析;
7、信号趋势分析包括:
8、遍历接收报文中的数据,定位突变值;
9、更改突变值,将突变值更改为接近稳定值的值后,得到修复数据,稳定值为其他帧所述接收报文中与突变值信号类型相同的信号;
10、对修复数据进行循环冗余校验码计算,得到修复校验值,判断修复校验值与原始校验值是否相同;
11、重复更改突变值,直至修复校验值与原始校验值相同;
12、将当前的修复数据替换突变值所在接收报文中并储存,得到修复报文。
13、本发明提供的一种车载控制器局域网数据修复方法,包括:若接收校验值与原始校验值不同,对接收报文进行数据修复,数据修复包括信号趋势分析,信号趋势分析中快速定位突变值,即可能被篡改的数据,之后尝试更改突变值,将突变值更改为接近稳定值的值后,得到修复数据,对修复数据进行循环冗余校验码计算,进行校验直至修复校验值与原始校验值相同,完成数据修复,本发明提供的方法中信号趋势分析过程可以在数据修复过程中缩小数据尝试的范围,快速查找到可能正确的数据,加速重要信号的数据分析和修复,进一步提高车载can通信鲁棒性,可以预防因为通信干扰导致控制器丢失关键的信号。
14、在一种可能的实现方式中,数据修复还包括合理性分析,合理性分析包括:遍历接收报文中的信号;通过各信号的定义范围,定位可疑信号;更改可疑信号,将可疑信号更改为在定义范围内的新信号,得到修复信号;对修复信号进行循环冗余校验码计算,得到修复校验值,将修复校验值与原始校验值进行比对;重复更改可疑信号,直至修复校验值与原始校验值相同;将当前的修复信号替换可疑信号所在报文并储存,得到修复报文。
15、在一种可能的实现方式中,在对接收报文进行数据修复之后,还包括对修复报文添加修复标签。
16、在一种可能的实现方式中,在对接收报文的数据进行循环冗余校验码计算,得到接收校验值之前,还包括:对待发送报文进行循环冗余校验码计算,得到原始校验值;将原始校验码设置于待发送报文的开始,和\或末尾;发送控制器发送待发送报文,接收控制器与发送控制器通信连接。
17、在一种可能的实现方式中,一帧接收报文中包括n个信号,若每个信号都尝试m次,则重复更改突变值的重复次数为1-num次,其中,num=mn。
18、第二方面,本发明提供了一种车载控制器局域网数据修复系统,包括:发送控制器、接收控制器、判断模块和数据修复模块;
19、发送控制器,与接收控制器通信连接,用于对待发送报文进行循环冗余校验码计算、储存原始校验值和向接收控制器发送待发送报文;
20、接收控制器,接收发送控制器发送的待发送报文,对所述接收报文的数据进行循环冗余校验码计算,得到接收校验值;
21、判断模块,与发送控制器、接收控制器和数据修复模块连接,用于判断接收校验值和修复校验值与原始校验值是否相同;
22、数据修复模块,与接收控制器和判断模块连接,用于接收判断模块的判断结果以及对接收报文进行信号趋势分析。
23、在一种可能的实现方式中,还包括标记模块;
24、标记模块与接收控制器和数据修复模块通信连接,用于对修复报文添加修复标签。
25、第三方面,本发明提供了一种车载控制器局域网数据修复装置,其特征在于,包括:处理器和存储器,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器执行计算机指令时,车载控制器局域网数据修复装置执行如第一方面及其任一种可能的实现方式的车载控制器局域网数据修复方法。
26、第四方面,本发明提供了一种电子设备,包括:处理器、存储介质以及计算机程序,计算机程序存储于存储介质中,其特征在于,计算机程序被处理器执行时实现第一方面及其任一种可能的实现方式的车载控制器局域网数据修复方法。
27、第五方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,计算机程序被处理器执行时实现第一方面及其任一种可能的实现方式的车载控制器局域网数据修复方法。
28、本发明中第二方面到第五方面及其各种实现方式的具体描述,可以参考第一方面及其各种实现方式中的详细描述;并且,第二方面到第五方面及其各种实现方式的有益效果,可以参考第一方面及其各种实现方式中的有益效果分析,此处不再赘述。
本文地址:https://www.jishuxx.com/zhuanli/20241106/324879.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表