目录
1.为什么需要整车网络管理
在描述AUTOSAR网络管理细节前,大家可以思考几个问题:
1.网络管理为整车系统提供了什么样的服务?
2.整车网络视角看,每个ECU的上下电是依据什么状态进行定义?
3.ECU对整车的网络管理需要做什么软硬件适配?
为了更深刻理解上述问题,我们从一个小场景开始。
当前智能网联汽车发展迅猛,无钥匙进入及启动系统(Kessy系统)几乎成为了智能汽车的标配;
当车主携带钥匙靠近车辆时,车门会自动开锁,甚至有些电动车自动就上高压了;
这不奇怪了吗?明明车辆处于锁车状态(想象成电脑关机状态),为什么可以感应到车钥匙并自动解锁呢?
这就意味着锁车状态下的整车ECU不是全部掉电,还有个别ECU作为哨兵时刻关注着车内外环境(至于为什么是个别ECU而不是全部ECU处于上电?毫无疑问是为了尽可能减小整车功耗);
当发现有目标事件时,该ECU就可以将整车各个节点ECU唤醒,为汽车的启动做准备:例如开门亮仪表中控,迎宾灯氛围灯就位等等。
这个唤醒动作一般通过什么来实现?毫无疑问,通过整车内部的CAN、FlexRay等总线报文。
从上面一个简单实际例子,基本就可以回答第一个问题:网络管理主要是针对整车通信网络的管理,携带着管理整车各区域ECU的休眠和唤醒。
具体而言,当汽车处于驻车状态时,大多数车内ECU会根据整车网络状态进行深度休眠,这种情况下一般设计为ECU中的主控芯片会直接拉闸,Transceiver依旧供电;极少数ECU即使在驻车状态下仍然供电,例如Kessy系统、BCM等ECU。
2.本地唤醒和网络唤醒
不过值得注意的是,休眠的ECU可以通过整车网络进行唤醒,但还有ECU还需要结合一些本地事件进行唤醒,例如常见的KL15 I\O唤醒事件。
我们依然使用无钥匙进入系统作为例子,来看整车ECU唤醒时序。
当车主携带车钥匙靠近车辆时,Kessy系统作为常电ECU时刻感应着钥匙信号;突然它发现了该信号并通过验证,因此开始准备通知整车其他兄弟ECU要做准备了,于是有了下图:
此时常电ECU通过整车网络总线发送唤醒报文(以CAN为例),试图唤醒整车节点,如下图:
可以看到,KL30供电的所有ECU全部被唤醒,这就是网络唤醒。
那么下面两个灰色的ECU怎么唤醒呢?当然是通过KL15信号进行唤醒,这就是本地唤醒,如下:
所以,整车唤醒流程可以简单概况如下:常电ECU接受到唤醒事件后(如功耗过高,该ECU也需要休眠),向整车网络发送网络管理报文,各域ECU根据需求进行总线唤醒;对于KL15供电的ECU,则需要本地事件唤醒。
我们进一步深挖,ECU的网络唤醒具体是通过什么硬件电路实现的?
这就不得不提到汽车很关键的CAN\LIN\FlexRay Transceiver或者更高端一点的SBC(System Basic Chip)
一般情况,在sleep模式ECU中的Transceiver处于上电,MCU掉电;结构示意如下:
当Transceiver探测到唤醒事件后,可以直接给μC供电,使得整个ECU进行启动。当然如果Transceiver不带唤醒功能,就需要μC用ICU去实现唤醒。
3.小结
本文主要从整车层面介绍了汽车网络管理的概念,以及为支持休眠唤醒需要ECU做哪些事情,下一节将继续深入AUTOSAR的网络管理系统