ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

AUTOSAR网络管理专题

AUTOSAR网络管理专题 一、AUTOSAR网络管理本质上就是省电操作二、具体网络管理的三种模式ECU一上电就进入总线睡眠模式重复报文状态快速唤醒网络中的所有节点并对外宣告“我醒了我要通信”不断重复发网络管理报文一般就是几秒钟如果是主动唤醒就到常规操作状态什么是常规操作状态周期性的发送网络管理报文常规操作状态保持网络处于唤醒状态确保节点可以随时进行应用数据的收发就绪睡眠状态停止主动维持网络等待网络整体静默后进入睡眠。就绪睡眠状态条件如果是被被动唤醒模式或者是常规操作完成到一定程度的时候ECU主动释放网络就会进入到就绪睡眠状态这个时候我们的ECU是不发送网络管理报文但是它可以发送接受应用报文也可以接受网络管理报文就是不发在网络模式下我们的ECU是可以发收应用管理报文我们的总线ECU都有可能慢慢释放网络不准备发网络管理报文了都会进入到就绪睡眠状态一旦所有的ECU都进入到就绪睡眠状态达到一个超时比如说两秒钟以后那这个时候ECU就会从就绪睡眠状态进入准备总线睡眠模式第三种模式到达准备总线睡眠模式后达到一个超时此时会真正的进入总线睡眠模式如何从总线睡眠模式到重复报文状态从总线睡眠模式到重复报文状态通常由节点主动请求网络或接收到网络管理报文触发——————————————————————————————————————————重复发送”是谁在重复发送具体来说是ECU 内部的 CanNm 模块在重复发送 NM 报文网络管理报文为什么要重复发因为总线上其他 ECU 可能正处于睡眠状态如果只发一帧其他 ECU 的收发器可能来不及唤醒或识别。连续快速发送通常周期很短比如 20ms 一次可以确保网络上所有节点都能迅速感知到“有人上线了网络要活跃起来了”“总线”指的是什么总线总线指的就是 CAN 总线或者 CAN FD、LIN、FlexRay 等但在 AUTOSAR CanNm 语境下特指 CAN 总线三、准备总线睡眠模式不会有应用报文的收发也不会有网络报文的发送不同模式下的报文收发情况汇总四、在哪个前提下发送网络管理报文以及网络报文长什么样五、CAN报文标准帧最多不超过8个字节这里的11 对应的是Byte0依次类推最后四个字节为局部网络控制位数量不一定是4个受byte1控制六、AUTOSAR网络管理报文的CBV控制位向量字节详解bit01 一旦总线上的所有节点收到这这网络管理报文以后就必须快速进入到重复报文状态然后开始周期性的发送网络管理报文直接规定的几秒钟以后。离开重复报文状态这里的51 这里的1他现在希望总线上的所有节点全部进入到重复报文状态。节点Abit4 1 证明节点A是主动唤醒的节点Bbit4 0,它是被动唤醒的bit6 1支持部分网络功能局部网路的信息 00 00 002 00七、网络管理的PN功能理念同醒同睡可能不是最好的选择。例如节点C并没有实际的工作量浪费电。主动唤醒的bit6 1,节点是支持部分网络含有部分网络信息 紫色是部分网络的结群信息 PN1的值1节点A发出来这帧网络管理报文它只想激活PN1网络中的所有ECU,具体可以看下方的相关节点信息节点B都是11 即属于1 2非0的节点代表这个B节点要被唤醒属于当前请求节点A发出这样的网络管理报文能够被唤醒的其实只有节点B。八、按照国际标准进行相关说明K15一直使能 CanNm_NetworkRequest()所以不会从常规操作状态到就绪睡眠状态一直稳定在常规操作状态现在K15下电释放网络到就绪睡眠状态———————————————————————————————————————————图中CanNm_NetworkRequest() || CanNm_PassiveStartUp()这个条件无论哪种唤醒都会使状态从 Bus Sleep Mode 进入Network Mode下的Repeat Message State。区别在于主动唤醒会置位 NM 报文的“主动唤醒位”被动唤醒则不置位———————————————————————————————————————————如果是被动唤醒NM帧进入的通常不会调用CanNm_NetworkRequest()那么它会在 Repeat Message Time 超时后走另一条路径图中右侧箭头进入Ready Sleep State———————————————————————————————————————————2Normal Operation State正常运行状态这是主动唤醒节点的常态。图中下方标注了CanNm_NetworkRelease()指向 Ready Sleep State说明当主动节点不再需要网络通信时调用CanNm_NetworkRelease()释放网络请求进入 Ready Sleep State图中还有CanNm_NetworkRequest()从 Ready Sleep State 指回 Normal Operation State表示如果再次需要通信可以重新请求回到 Normal Operation State。3Ready Sleep State就绪睡眠状态图中右下角红圈标注了CanNmTimeoutTime超时它指向Prepare Bus Sleep Mode。这意味着如果长时间没有网络活动超时节点会进入准备睡眠模式最终回到 Bus Sleep Mode
返回列表