AutoSAR PNC和ComM

PNC和ComM

PNC 和 ComM层的Channel不是一个概念,ComM的Channel对应具体的物理总线数。

在ComM模块中,一个Channel可以对应一个PNC,也可以对应多个PNC。

PNC管理

PNC(Partial Network Cluster) 即“局部网络集群”, 通过一些规则(通常按照功能类) 将车辆网络进一步划分为不同的“局域网”, 通过 PNC 管理其各种状态。

如下图:OBC和BMS组成一个PNC1,而MCU和BMS又组成了一个PNC2。
在这里插入图片描述

NM PDU结构及PNC信息位置

PNC,是一种将网络通信进行分组和控制的方法,属于AUTOSAR COM层,是从Autosar 4.0.3开始增加的,主要目的是为了省电;PNC是PDU中的一部分;
在这里插入图片描述
NID:Source Node Identifier,即对应节点CAN报文的CanID,比如节点 NM Msg CanID 为 0x509,则 NID = 0X09(配置工具配置),5表示网络管理报文类型。

CBV:Control Bit Vector,控制位向量。

User Data:使能PN功能时,存储PNC信息。假设某网段内有48个PNC,User Data中的每一个Bit代表一个PNC,可以用PNC 0 ~ PNC 47标识这48个PNC。注意:节点具体需要处理多少个PNC,根据需求配置。
在这里插入图片描述

如何理解节点关联PNC

一个网段内有多个节点,多个节点之间可以形成多个PNC,也就意味着:具体到某个节点,并不是所有的PNC 都对该节点有效。
比如:ECU1有两个节点Node1和Node2,Node1收到的网络管理报文中,只关注PNC20、PNC22、PNC30是否置位( = 1),因为Node1只参与PNC 20、PNC22、PNC30三个网络簇,并不关心PNC16或者其他的PNC #n状态,如下所示:
在这里插入图片描述

PNC状态管理

PNC有两种模式,其中COMM_PNC_FULL_COMMUNICATION包含三种子状态:

  • COMM_PNC_FULL_COMMUNICATION
    • COMM_PNC_REQUESTED
    • COMM_PNC_READY_SLEEP
    • COMM_PNC_PREPARE_SLEEP
  • COMM_PNC_NO_COMMUNICATION
    在这里插入图片描述

系统上电后整个PNC的状态在COMM_PNC_NO_COMMUNICATION。在PNC状态切换过程中如果是主动唤醒节点直接请求FULL通信,或者是网关节点控制的节点在收到网关下的ERA(External Request Array,表示的是外部的唤醒状态设置相关的数组)数组的相关状态位,直接从COMM_PNC_NO_COMMUNICATION进入到COMM_PNC_REQUESTED阶段。

如果是被动唤醒的节点,则根据接收到唤醒报文中的PNC位状态切换到COMM_PNC_READY_SLEEP或者COMM_PNC_PREPARE_SLEEP其中PNC位设置一般在NM的报文中体现,而开发者只需根据相应的NM报文的UserData中对应的PNC位操作即可。

COMM_PNC_FULL_COMMUNICATION内部的三个子状态的切换也是根据该节点的是否能被动唤醒功能进行内部的状态切换,主要体现是主动唤醒下需要Request Full相关的操作以及NM报文中对应的UserData中相关的PNC位进行转换的。

ComM 通道状态管理

ComM 通道有三种模式,其中除 COMM_SILENT_COMMUNICATION 之外每种模式有两种子状态:

  • COMM_NO_COMMUNICATION(无通信模式,不接收也不发送。)
    • COMM_NO_COM_NO_PENDING_REQUEST(无网络请求状态。)
    • COMM_NO_COM_REQUEST_PENDING(有通信请求 ,但未使允许通信 标志ComMAllowed。)
  • COMM_FULL_COMMUNICATION(全通信模式, 既可接收也可发送。)
    • COMM_FULL_COM_NETWORK_REQUESTED(网络请求状态。)
    • COMM_FULL_COM_READY_SLEEP(准备睡眠状态。)
  • COMM_SILENT_COMMUNICATION(静默模式, 接收但不发送。)

在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值