目录
3.3 预睡眠模式(Prepare Bus-Sleep Mode)
1. NM网络管理介绍
汽车上挂载ECU节点有很多,不可能一启动所有ECU都同时正常工作。而是当用户请求相关功能时,参与该功能的相关ECU节点才需要启动起来,否则带来的只是过多对电池的无用消耗。为了更好的去利用整车的能源,防止出现不必要的电池浪费,网络管理(Network Management,以下简称NM)便可以很好的解决此类问题,实现车上的ECU能够协同睡眠以及唤醒,最大可能的高效利用整车电池能源,节约用车成本,延长电池使用寿命。
2. 网络管理基本概念
3. 网络管理模式
3.1 网络管理参数说明

网络管理包含如下三种模式: 睡眠模式(Bus-Sleep Mode) 、预睡眠模式Prepare Bus-Sleep Mode) 、网络模式(Network Mode)。
下表描述了在不同的网络模式下报文的发送情况:

3.2 睡眠模式(Bus-Sleep Mode)
3.3 预睡眠模式(Prepare Bus-Sleep Mode)
3.4 网络模式(Network Mode)
(1) 重复报文状态 (Repeat Message State)
节点的网络管理状态将保持在重复报文状态直到T_REPEAT_MESSAGE时间截 止,一旦该时间超时,网络管理状态应该离开重复报文状态。在该状态下,节点的网络管理报文和应用报文必须能够正常发送。在 重 复 报 文 状 态 下 , 节 点 一 旦 接 收 或 发 送 一 条 网 络 管 理 报 文 , 或 者 T_NM_TIMEOUT 超时,则 T_NM_TIMEOUT 立即重置。
NM快速发送子状态(NM Immediate Transmit State):节点在进入 NM 快速发送子状态时,为了快速唤醒网络,节点必须以快速周期T_NM_ImmediateCycleTime 发送网络管理报文。发送的快速网络管理报文数量由 参数 N_ImmediateNM_TIMES 决定,节点每次成功发送一条快速周期网络管理报文 时,该数值应递减 1。
NM正常发送子状态(NM Normal Transmit State):进入NM正常发送子状态后,节点必须以正常周期T_NM_MessageCycle发送网 络管理报文。若节点因被动唤醒请求进入NM PDU正常发送子状态,必须开启 NMTimeout Timer,并尽可能快速(NmAsrCanMsgCycleOffSet,不做定量限制)的 以正常周期发送网络管理报文,同时所有的应用报文必须从节点检测到唤醒请求后延 迟T_STARTx_AppFrame才能发送。
4. 网络管理报文
4.1 网络管理报文格式

4.2 源节点标识符
NM 网络管理报文的字节 0 用于发送源节点标识符,每一个 ECU 都会被分配一个唯一的 标识符,来告知接收节点该 NM 网络管理报文是由哪个节点发送的。
4.3 控制比特向量

4.4 数据域
网络管理报文的字节 2 到字节 7 用于发送用户自定义的数据信息。
5. NM网络管理状态机
5.1 状态转换及条件说明

NM_01 : 网络管理节点的 KL30 上电后( Battery Power on ),节点进行网络管理模块初 始化,初始化完成后进入睡眠模式,具备被本地唤醒事件或者远程唤醒请求的能力。NM_02 : 当网络管理节点处于睡眠模式时,如果收到有效的远程唤醒请求,那么节点必须 离开睡眠模式并进入重复报文状态的 NM 正常发送子状态。 进入 NM 正常发送子状态后,在定时器 T_REPEAT_MESSAGE 超时前,节点必 须以 T_NM_MessageCycle 为周期发送网络管理报文。NM_03 : 如果节点在睡眠模式下检测到本地唤醒请求,那么节点必须主动唤醒网络,进入 NM 快速发送子状态,并将主动唤醒位设置为 1 。 节点进入 NM 快速发送子状态后,需以 T_NM_ImmediateCycleTime 为周期, 发送数量为 N_ImmediateNM_TIMES 的网络管理报文。NM_04 : 处于 NM 快速发送子状态的节点,在计数器 N_ImmediateNM_TIMES 为零 时,将进入 NM 正常发送子状态。NM_05 : 处于重复发送状态下的节点,如果 T_NM_TIMEOUT 超时,节点的网络管理状态 不应改变,但 T_NM_TIMEOUT 必须重置。NM_06 : 处于 NM 正常发送子状态的节点,当 T_REPEAT_MESSAGE 超时,但节点仍需要维 持网络通信,则进入常规操作状态。节点继续保持以正常周期 T_NM_MessageCycle 发送网络管理报文和相关的应用报文。NM_07 : 处于常规操作状态的节点,如果节点自身有重复报文请求,节点将网络管理状态 切换到重复报文状态的 NM 快速发送子状态;如果节点收到其他节点重复报文请求位 置 1 的 NM 报文,节点将网络管理状态切换到重复报文状态的 NM 正常发送子状态。NM_08 : 处于常规操作状态下的节点,如果 T_NM_TIMEOUT 超时,节点的网络管理状态 不应改变,但 T_NM_TIMEOUT 必须重置。NM_09 : 处于常规操作状态下的节点,如果满足睡眠条件,节点将网络管理状态切换到准 备睡眠状态,同时停止发送网络管理报文。 注意,对于需要协调多个 AUTOSAR 网络管理子网的网关,其处于常规操作状态 下,如果检测到自身满足睡眠条件,并在满足准备睡眠条件后 2s 内未收到其他节点的 网络管理报文,则将网络管理状态切换到准备睡眠状态,同时停止发送网络管理报 文。NM_10 : 处于准备睡眠状态的节点,如果检测到本地唤醒请求,则将网络管理状态切换到 常规操作状态。NM_11 : 处于准备睡眠状态的节点,如果节点自身有重复报文请求,节点将网络管理状态 切换到重复报文状态的 NM 快速发送子状态;如果节点收到其他节点重复报文请求位 置 1 的 NM 报文,节点将网络管理状态切换到重复报文状态的 NM 正常发送子状态。NM_12 : 处于 NM 正常发送子状态下的节点,当 T_REPEAT_MESSAGE 超时,且节点满 足睡眠条件,节点将进入准备睡眠状态。NM_13 : 处 于 准 备 睡 眠 状 态 的 节 点 , 如 果 不 再 收 到 本 地 或 远 程 唤 醒 请 求 , 在 T_NM_TIMEOUT 超时后,节点将进入预睡眠模式。NM_14 : 处于网络模式的节点,在成功接收或者发送一帧网络管理报文后,节点的网络管 理状态不应改变,但 T_NM_TIMEOUT 必须重置。NM_15 : 处于预睡眠模式的节点,如果收到远程唤醒请求,将进入重复报文状态的 NM 正 常发送子状态。NM_16 : 处于预睡眠模式的节点,如果收到本地唤醒请求,将进入重复报文状态的 NM 快 速发送子状态。NM_17 : 处 于 预 睡 眠 模 式 的 节 点 , 如 果 不 再 收 到 本 地 或 远 程 唤 醒 请 求 , 在 T_WAIT_BUS_SLEEP 超时后,节点将进入睡眠模式。