当前位置: 首页 > news >正文

AUTOSAR网络管理

汽车行业的网络管理一般有两种,一种是AutoSar另一种是OSEK,为啥汽车要网络管理,其实是为了降低车辆电池消耗,当车辆不工作时所有总线上的ECU通讯模块或整个ECU处于低功耗状态。网络管理一般用在电池供电的ECU,比如车上CAN上的ECU。为了避免通讯错误,需要网络管理来协调网络上所有ECU同时进入低功耗模式。OSEK和AUTOSAR网络管理本质上一样,只是实现算法不一样,后者比前者算法跟简单。下一篇再写OSEK。补充下汽车上的can网络一般有三种报文,网络管理报文的id是4开头的,就是用来协调各个ecu进入休眠和唤醒用的。诊断报文的id是7开头的,比如按照UDS协议读取某个ecu现在存的故障码之类的。应用报文是携带一些比如车门车窗状态车速油耗等等车辆信息供各个零部件知道车的一个状态。

  AutoSar网络管理总结下来就两点:

1) 每个网络节点如果想保持总线通信,就会一直发送周期性的NM(网络管理)消息;如果它不再需要保持总线通信,它就不再发送NM消息。

2) 如果总线通信已经被释放,并且在配置的一段时间内没有发送或者接收到NM消息,则执行到Bus-Sleep模式的状态转移。

  AutoSar网络管理总共包含下面5种状态。

 1、Bus Sleep Mode :  睡眠模式,该模式下禁止报文的收发。除了网络管理报文可以接收到。ecu一上电就处于该模式。如果ECU接收到NM报文或本地唤醒事件(如车辆上电),则NM状态由Bus Sleep Mode迁移到Repeat Message State;

2、Repeat Message State:唤醒过渡模式,该模式连接了休眠唤醒两种状态,保证了网络最小活动时间,同时提供网络快恢复功能。在该模式下一般ECU是周期比较快比如20毫秒的发10帧网络管理报文后,如果持续接收到了别的ecu发来的网络管理报文或者有本地唤醒源比如车辆上电,则切到Normal Operation State。如果没有则切到Ready Sleep State。

3、Normal Operation State:正常工作模式,该模式下网络处于稳定收发报文状态,能正常收发所有报文。该模式下一般网络管理报文是500ms发一次,如果没收到其他ecu发网络管理报文了或者没有本地唤醒源了比如车辆上电,则切到Ready Sleep State。

4、Ready Sleep State:  网络预睡眠状态,待整车协商完成后,进入睡眠模式。该状态下,ecu不发送网络管理报文了但可以接收到所有类型的报文。可随时恢复到正常工作模式。在该状态下当接收到本地唤醒事件后,NM迁移到Normal Operation State。如果不再接收到网络管理报文且此时没有诊断在执行就会切到Prepare Bus Sleep Mode。

5、Prepare Bus Sleep Mode: 准备睡眠模式,该模式下禁止报文的收发,只接收网络管理报文,具有快速恢复报文收发的能力。如果接收到本地唤醒事件或者接收到NM报文,则NM迁移到Repeat Message State。如果未接收到本地唤醒事件,且未接收到NM报文,则NM会在TIMER_WAIT_BUS_SLEEP超时后进入Bus Sleep Mode

备注: Normal Operation State中或者在Ready Sleep State中,当接收到Repeat Message的请求报文后,网络管理的状态会迁移到Repeat Message State;一般是为了快速唤醒别的ECU才会有节点发这种报文。

 

http://www.hskmm.com/?act=detail&tid=8605

相关文章:

  • 写用例注意点
  • 12 路低延迟推流!米尔 RK3576 赋能智能安防 360 环视
  • A公司一面:类加载的过程是怎么样的? 双亲委派的优点和缺点? 产生fullGC的情况有哪些? spring的动态代理有哪些?区别是什么? 如何排查CPU使用率过高?
  • Alternating Subsequence
  • 白鲸开源“创客北京2025”再摘殊荣,聚焦Agentic AI时代数据基础设施建设
  • python基础-公共操作
  • 天翼云第九代弹性云主机:让每一次计算快人一步
  • 若依(RuoYi)框架漏洞总结
  • 第一次个人项目作业_论文查重
  • 2025年版《中科院期刊分区表》与2023年版对比表,附名单可直接查阅
  • 对马岛之魂
  • 2019年双因素认证最佳实践指南
  • Account Kit(华为账号服务)再进化,开发者接入效率飙升!
  • Codeforces Round 1051 (Div. 2) D题启发(DP
  • Ubuntu 22 下 DolphinScheduler 3.x 伪集群部署实录
  • 关于proxmox 制作虚拟机模板的动态dhcp问题
  • Oracle清理:如何安全删除trace, alert和archivelog文件?
  • 软件工程个人项目
  • 学习道路道阻且长 希望自己坚持下去
  • 2025/9/18 总结
  • P2216 [HAOI2007] 理想的正方形
  • PuTTY下载和安装
  • 数据通路-单总线结构(最头晕的一集)
  • python基础篇-集合
  • #egsg:在同一程序中比较-计算圆的面积
  • 282 项多模态胃肠病学数据集:适配 VLM 与 MLLM 微调,融合医学图像与临床文本的医疗 AI 训练数据
  • 2-sat板子
  • centos 7中安装jenkins
  • pythonjs逆向 破解滑动验证码 - hello-*
  • 解决 pandas.to_csv 乱码、丢失行和自动换行问题 时间转换