0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AUTOSAR CAN网络管理

智能汽车电子与软件 来源:美男子玩编程 2023-03-25 16:46 次阅读

AUTOSAR CAN网络通信中有三种模式和三种状态,如下图所示:

c8a7f2cc-cae8-11ed-bfe3-dac502259ad0.png

3种运行模式:

睡眠模式(Bus-Sleep Mode);

预睡眠模式(Prepare Bus-Sleep Mode);

网络模式(Network Mode)。

睡眠模式(Bus-Sleep Mode)

当CAN网络中没有远程唤醒或者本地唤醒请求时,ECU应处于睡眠模式(Bus-Sleep Mode),将功耗降低至最低水平,这种模式是ECU启动时的起始状态或者是ECU睡眠时的最终状态。

在该模式下,网络管理报文和应用报文都禁止发送,但是可以被网络上的报文唤醒。

CAN收发器应当支持设定唤醒帧(如果有CAN收发器的情况下),ECU只会接受到特定的NM报文才会正常唤醒,否则就会一直处于休眠状态,能够不受网络上应用报文的干扰。

睡眠模式(Prepare Bus-Sleep Mode)

ECU进入预睡眠模式(Prepare Bus-Sleep Mode)后禁止网络管理报文的发送,允许接收网络管理报文。应用报文已经在buffer中的一般允许继续发送,进入到预睡眠模式(Prepare Bus-Sleep Mode)计时器CanNmWaitBusSleepTime就会启动,一旦计时器CanNmWaitBusSleepTime超时,就会进入到睡眠模式(Bus-Sleep Mode)。

c8bc37be-cae8-11ed-bfe3-dac502259ad0.png

本项目AUTOSAR配置中设定计时器CanNmWaitBusSleepTime为2秒。

网络模式(Network Mode)

当CAN网络处于开启或者工作情况下会进入网络模式,ECU进入网络模式(Network Mode)后计时器CanNmTimeoutTime就会启动,只要成功接收到来自CAN总线上的网络管理报文或者成功发送至CAN总线网络管理报文,都会将计时器CanNmTimeoutTime重置。

c8e4aa8c-cae8-11ed-bfe3-dac502259ad0.png

本项目AUTOSAR配置中设定计时器CanNmTimeoutTime为2秒,所以0X505网络管理报文的发送周期要在2秒内,超时会进入预睡眠模式(Prepare Bus-Sleep Mode)。

c9027b7a-cae8-11ed-bfe3-dac502259ad0.png

网络模式(Network Mode)包含3种状态:

报文重复状态(Repeat Message State);

常规运行状态(Normal Operation State);

准备睡眠状态(Ready Sleep State)。

报文重复状态(Repeat Message State)

当ECU从其他模式进入网络模式(Network Mode)时,默认进入报文重复状态(Repeat Message State)。该阶段是CAN网络正式开始工作前的准备阶段,用来等待CAN网络中所有相关节点进行网络通信的准备时间。

该模式下计时器CanNmRepeatMessageTime规定了重复发送网关管理报文的时间,CanNmImmediateNmTransmissions规定了发送网络管理报文的次数。

在报文重复状态(Repeat Message State)ECU使用计时器CanNmMsgCycleTime周期时间发送网络管理报文。

c9110ad2-cae8-11ed-bfe3-dac502259ad0.png

c91e8af4-cae8-11ed-bfe3-dac502259ad0.png

本项目AUTOSAR配置中发送网络管理报文的周期是640毫秒,重复次数为5,总时常3.2秒。

c94afd82-cae8-11ed-bfe3-dac502259ad0.png

常规运行状态(Normal Operation State)

ECU进行正常CAN通信时会处于常规运行状态(Normal Operation State),该阶段中,节点要按照计时器CanNmMsgCycleTime时间周期发送网络管理报文。每次成功发送或者接收CAN网络报文计时器CanNmTimeoutTime就会重置。

在常规运行状态(Normal Operation State)下的网络管理报文和应用报文都应该正常收、发通信。

准备睡眠状态(Ready Sleep State

在准备睡眠状态(Ready Sleep State)ECU应当停止发送网络管理报文,每次成功接受到来自CAN网络上的网络管理报文,计时器CanNmTimeoutTime就会重置,一旦CanNmTimeoutTime超时,就会进入预睡眠模式(Prepare Bus-Sleep Mode)。

在AUTOSAR中规定了各种模式和状态下计时器的默认时间:

c95c6fa4-cae8-11ed-bfe3-dac502259ad0.png

配置参数在AUTOSAR代码中体现如下所示:

c9817038-cae8-11ed-bfe3-dac502259ad0.png

下图梳理了所有网络管理的模式转换情况,通常控制器的状态转换如蓝色箭头所示:

c9bb9e84-cae8-11ed-bfe3-dac502259ad0.png







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CAN总线
    +关注

    关注

    145

    文章

    1812

    浏览量

    129592
  • AUTOSAR
    +关注

    关注

    9

    文章

    329

    浏览量

    21130
  • ecu
    ecu
    +关注

    关注

    14

    文章

    821

    浏览量

    53883
  • CAN收发器
    +关注

    关注

    2

    文章

    149

    浏览量

    25332

原文标题:详解AUTOSAR:AUTOSAR CAN网络管理/CAN NM

文章出处:【微信号:智能汽车电子与软件,微信公众号:智能汽车电子与软件】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Autosar软件开发技术概述

    系统的编码与诊断),到系统定制(如个性化定制功能,可设定特殊条件的服务定制功能)。现在,应用于全新7系的BMW Standard Core软件系统通过AUTOSAR架构实现对车载网络、系统内存管理以及
    发表于 12-26 10:34

    AUTOSAR CAN网络管理

    一、背景: 在AUTOSAR CAN网络管理框架下,如果所有的节点都按照状态机要求,在ReadSleep状态下停发NM帧,在Prepare Bus-Sleep模式下停发App帧,所有节
    发表于 07-26 06:47

    AUTOSAR CAN网络管理状态机介绍

    AUTOSAR CAN网络管理状态机为什么停发应用帧?有什么解决办法吗?
    发表于 09-24 07:47

    AUTOSAR CAN时钟同步问题

    请问有没有AUTOSAR CAN时钟同步的能运行的代码,或者有没有能做这一块的大佬,主要是CanTsyn和STBM这两个模块的。有偿,价格都好商量,急需。
    发表于 11-09 00:00

    AUTOSAR_SWS_CAN网络管理规范标准4.3.1

    AUTOSAR_SWS_CAN网络管理规范标准4.3.1
    发表于 03-28 17:02 12次下载

    CAN网络管理规范 AUTOSAR CP中文版

    CAN网络管理规范 AUTOSAR CP中文版免费下载。
    发表于 04-06 16:21 0次下载

    CAN网络管理规范 AUTOSAR CP英文版

    AUTOSAR_SWS_CAN网络管理规范标准4.3.0英文版免费下载。
    发表于 04-06 16:20 0次下载

    AUTOSAR CAN网络管理协议

    AUTOSAR_SWS_CANNetworkManagement AUTOSAR CAN网络管理协议,4.4.0版本
    发表于 08-01 11:09 14次下载

    OSEK与AUTOSAR标准分别是怎么实现网络管理功能的

    AUTOSAR(Automotive Open System Architecture,即汽车开放系统架构),另一个是OSEK。 AUTOSAR与OSEK的网络管理方式虽然有区别,但是
    的头像 发表于 11-11 14:11 957次阅读

    AUTOSAR CAN网络管理报文的数据场格式

    表1中,字节0为ECU Address,作为源节点标识符,用 以告知其他节点该报文是由哪个节点发送的;处于CAN网 络中的每个节点都会分配一个唯一的标识符,本文中网络 管理报文的ECU
    的头像 发表于 11-17 11:05 2871次阅读

    AutoSARCAN通信网络管理的概述

    AutoSARCAN通信的网络管理主要是根据CANNode接收和发送的NMMessage进行该节点在整个网络中的活动的,根据NM Mess
    的头像 发表于 01-18 10:21 4365次阅读
    <b class='flag-5'>AutoSAR</b>中<b class='flag-5'>CAN</b>通信<b class='flag-5'>网络</b><b class='flag-5'>管理</b>的概述

    详解AUTOSAR CAN网络管理协议

    CAN网络中没有远程唤醒或者本地唤醒请求时,ECU应处于睡眠模式(Bus-Sleep Mode),将功耗降低至最低水平,这种模式是ECU启动时的起始状态或者是ECU睡眠时的最终状态。
    的头像 发表于 03-24 18:06 2556次阅读

    科普系列:AUTOSAR与OSEK网络管理比较(上)

    AUTOSAR(Automotive Open System Architecture,即汽车开放系统架构),另一个是OSEK。AUTOSAR与OSEK的网络管理方式的区
    的头像 发表于 10-26 09:28 671次阅读
    科普系列:<b class='flag-5'>AUTOSAR</b>与OSEK<b class='flag-5'>网络</b><b class='flag-5'>管理</b>比较(上)

    科普系列:AUTOSAR与OSEK网络管理比较(下)

    作者:You小编:吃不饱在上篇中我们分别在状态机和报文格式方面对OSEK和AUTOSAR网络管理进行了简单介绍,感兴趣的小伙伴请移步至文章《科普系列:AUTOSAR与OSEK
    的头像 发表于 11-22 10:17 780次阅读
    科普系列:<b class='flag-5'>AUTOSAR</b>与OSEK<b class='flag-5'>网络</b><b class='flag-5'>管理</b>比较(下)

    一文解析AUTOSAR CAN网络管理

    AUTOSAR CAN 网络管理是一个独立于硬件的协议,只能在 CAN 上使用。它的主要目的是协调网络
    的头像 发表于 09-09 10:32 2629次阅读
    一文解析<b class='flag-5'>AUTOSAR</b> <b class='flag-5'>CAN</b><b class='flag-5'>网络</b><b class='flag-5'>管理</b>