车载CAN网络报文的功能管理的实现方法和存储介质

文档序号:34585859发布日期:2023-06-28 15:23阅读:64来源:国知局
车载CAN网络报文的功能管理的实现方法和存储介质

本发明属于汽车总线通信,尤其涉及车载can网络报文的功能管理的实现方法和存储介质。


背景技术:

1、汽车电子控制单元(electronic control unit,ecu)是具有计算、通信和控制能力的嵌入式计算设备,是实现汽车感知、决策和执行等各类功能的基本单元。而车内网承载着实现整车功能协作与控制的数据通信与交互,整车中所有ecu通过内部通信系统,即车内网络(in-vehicle network)相互连接,进行数据交互和通信,实现复杂功能和协作。当前为了满足不同的应用场景需要,车内网主要包含can(controller area network,控制器局域网),lin(local interconnect network,串行通信网络),flexray(flexray consortium,高速容错网络),以太网和most(media oriented systems transport,面向媒体的系统传输)等。

2、其中can:controller area network网络被广泛应用于汽车制动系统和车身控制领域,连接了大量与汽车运动行为相关的关键功能部件,是目前最成熟、市场占有率高、应用最广泛的协的协议,并作为国际化被要求在每一台量产汽车上实现。

3、与一般的通信总线相比,can总线的数据通信具有突出的低成本、可靠性、实时性和灵活性。所以,对于新一代智能网联汽车,can仍将在保障车辆行驶安全和动力总成的安全等关键车内网络上发挥核心作用。

4、传统的can网络中ecu根据各自的功能发送特定周期报文或事件触发型报文。但是,由于汽车技术与信息技术的高度融合,使得智能汽车系统复杂度不断增加,越来越多的电子功能和ecu数量导致了车内网络系统的复杂性增长以及通信数据的爆炸性增长。基于这种原因,汽车电子系统由分布式架构演变为域控制器架构,按照所承载的功能划分为不同的子系统,如动力总成子系统、底盘控制子系统、车身安全子系统、智能座舱子系统等,不同子系统通过一个ecu网关实现互联通信。此时的ecu,尤其是域控制器不再负责单一功能,而是集成多种功能于一身,这就使得ecu需要发送的周期性报文增多,导致特定网段内负载率过高,影响有效通信,并且,为车载电池带来大量的能源损耗。

5、一般情况下,为保证低优先级的报文传输延迟在可接受的时间范围内,can网络的负载率不应超过30%,当负载率大于38%~40%时,稳定性开始衰减,超过55%后存在影响驾驶性及安全性风险,大于65%时,稳定性衰减加剧,超过90%时,网络将不堪重负。

6、另外,总线高负载容易导致can id优先级高的节点一直发送数据,低优先级节点数据无法发出,造成拥堵。拥堵的直接危害是发生报文竞争,导致仲裁。在仲裁结束时,容易产生尖峰脉冲,位翻转的隐患增大,特别是在容抗较大场合,容易导致位错误,造成网络的不稳定。


技术实现思路

1、发明目的:本发明基于can(controller area network,控制器局域网)网络通信技术,提供一种车载can网络报文的功能管理的实现方法,以解决当前ecu子功能过多导致的某网段通信负载率过高的情况。另一方面,本发明可有效帮助利用整车的网络报文资源,防止出现不必要的电池能源损耗,节约用车成本,延长电池的使用寿命。

2、本发明包括如下步骤:

3、步骤1,对所有域控制器和所有汽车电子控制单元ecu进行基于can报文电压信号的设备指纹技术的身份认证,生成汽车电子控制单元ecu的设备指纹信息;

4、步骤2,将设备指纹信息用于汽车电子控制单元ecu与域控制器身份的互相认证;

5、步骤3,为通过验证的网关或域控制器设置工作状态,通过1个bit位实现工作状态的设置,该bit位记为状态位,状态位作为网关或域控制器的状态确认位,位于can报文数据字段第二个byte区的第0位;有0和1两个状态;状态位值为1表示网关或域控制器开启部分网络管理功能,发送的报文为fuc_pdu报文,为0表示未开启部分网络管理功能,发送的报文未为非fuc_pdu的其他报文;

6、步骤4,fuc_pdu报文发送前,初始化count计数器;count计数器占7个bit位,count计数器位于can报文数据字段的第二个byte区的1~7位;

7、步骤5,域控制器与汽车电子控制单元ecu根据设备指纹库的身份认证信息互认身份,认证成功后,同步count计数器,count计数器的数值从0~127跳动,超过127则跳转至0,循环滚动,实现域内网段信息的同步。

8、进一步的,步骤1中,通过网关或域控制器对汽车电子控制单元ecu发出的有效报文进行can报文的物理信号的采样、记录、特征提取、以及设备指纹信息的导出,具体包括如下步骤:

9、步骤1-1,为了防止电磁波干扰和向外辐射,车载can网络的通信由can-high(can-高位)和can-low(can-低位)两条双绞线传输差分电平以完成数据传输。通过测量不同汽车电子控制单元ecu的消息id报文的主导电压,即can-high和can-low总线上传输信息为0比特的电压值,获取汽车电子控制单元ecu的can报文电压的有效测量值;根据iso-11898协议,仅考虑can-high高于2.75v和can-low上低于2.25v的电压测量值,去除噪声值,对剩余数据进行ack应答间隙(acknowledge slot)的阈值学习;

10、步骤1-2,获知给定汽车电子控制单元ecu的消息id的ack阈值后,利用学习到的ack应答阈值,找出并移除非汽车电子控制单元ecu发射器发送的电压值,对于can-high,移除高于ack阈值的电压,对于can-low,移除低于ack应答阈值的电压;

11、步骤1-3,通过步骤1-2,可以实现噪声及非ecu发射器发送电压值的过滤,选择出仅由ecu发射器发出消息的电压特征值,持续收集主导电压,并从电压信号中提取统计特征,通过递归最小二乘法rls算法,导出汽车电子控制单元ecu的can报文的累计电压差作为电压指纹特征实例;

12、步骤1-4,将步骤1-3输出的电压指纹特征实例用于更新汽车电子控制单元ecu的id消息发射器的指纹信息分布,生成汽车电子控制单元ecu的设备指纹信息,作为汽车电子控制单元ecu的身份认证信息;将设备指纹的认证结果映射成一个8bit的身份码,填充至can报文数据字段的第一个byte区,完成后将认证结果同步更新至车载网络总线通信系统。

13、步骤2中,为通过设备指纹验证的网关或域控制器设置工作状态,状态设置的信息位占1个比特,位于can报文数据字段第二个byte区的第0位;所述第0位如果比特值为1表示域控制器发送的是fuc_pdu报文,如果比特值为0表示发送的非fuc_pdu报文;根据一个比特的状态位的设置能够实现fuc_pdu报文的区分。

14、步骤2中,所述fuc_pdu报文是功能管理数据单元,是通过域控制器发送的网络报文,能够动态实现特定的报文的发送,并且fuc_pdu报文保留着传统的can数据帧格式,能够根据不同的can协议做不同的定义,兼容性强大。

15、步骤3~步骤5中,域控制器与汽车电子控制单元ecu根据设备指纹库的身份认证信息,初始化count计数器,实现同步,设置阈值为127,count计数器的数值从0~127,超过阈值127则跳转至0,循环滚动、实现域内网段信息的同步。

16、在步骤4中,加入车载can网络报文的发送机制实现方法,具体包括以下步骤:

17、步骤4-1-1,域控制器在发送fuc_pdu报文前发送前导消息,用于确认通信状态,发送前导消息时,在数据域的第一个byte携带基于设备指纹信息的身份认证码;

18、步骤4-1-2,汽车电子控制单元ecu判断来自域控制器的身份认证码是否可信,如果可信,则判定域控制器发送的报文为安全帧,进行接收,否则将报文判定为非法帧,丢弃;

19、步骤4-1-3,域控制器根据具体的功能需求发出不同的fuc_pdu报文;如果消息被目标汽车电子控制单元ecu接收成功,域控制器和目标汽车电子控制单元ecu的count计数器同时加1,count计数器超过阈值127则从0继续累加;除了目标汽车电子控制单元ecu外的其他的汽车电子控制单元ecu按域控制器发出的fuc_pdu报文需求继续发送或不发送can帧;在本步骤中,阈值可以根据不同的can网段的报文负载量灵活设置,本方法设置的参考阈值为127;

20、步骤4-1-4,对于消息的发送方,域控制器同步检验目标汽车电子控制单元ecu是否完成相应功能的网络报文的发送,如果是则维持同步更新,否则进行超时重发;对于消息的接收方,如果域控制器发出的fuc_pdu报文未被接收,则目标ecu的count计数器无变化,同步失败,域内的ecu以原先规定的频率和周期发送报文,不做任何改变;

21、步骤4-1-5,车载网络总线通信系统保持fuc_pdu报文所规定的网络报文的发送,直到新事件触发或终止本轮通信。

22、步骤4-1-1中,所述前导消息表示在fuc_pdu报文发送前域控制器与域内ecu通信所发送的消息,在预先定义的周期内(如30ms),在数据域的第一个byte携带基于设备指纹信息的身份码作为身份认证码(8bit),身份认证码的具体生成方式见步骤1的叙述,并且,身份认证码根据车载网络总线通信系统的要求维持更新,实现通信状态的确认。

23、步骤4-1-2中,对来自域控制器的报文的认证码是否可信进行判断,如果认证码通过,确认报文可信,则判定域控制器发送的为安全帧,进行接收,并进行后续的步骤,否则判定为非法帧,丢弃,维持报文原先的通信周期与频率。

24、步骤4-1-5中,所述新事件包括:通信故障发生、更高优先级的报文需要发送,如果新事件触发,则终止本轮fuc_pdu报文以及后续报文的发送,恢复报文原先的通信周期与频率。

25、本发明还提供了一种存储介质,存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现所述的车载can网络报文的功能管理的实现方法。

26、有益效果:本发明方法能够实现车载网络中的网关、域控制器、ecu之间的安全性认证,并且被ecu认为安全的域控制器或网关可以实现fuc_pdu报文(功能管理数据单元)的发送。即当汽车部分功能使用时,仅实现相关报文的发送,避免无效报文发送,从而减轻总线负载,大大减轻ecu的负担,节省电源能耗,并且在报文发送的时间窗口内,可以实现消息的同步更新和认证,实现信息安全与功能安全的双重响应。本方案采用分布式的方式直接对网段内的报文进行管理,灵活性高,无需改变can协议本身,对硬件依赖小,可兼容多种车载网络,通信效率高,易于推广和部署。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1