报送举报网站建设情况,电商平台制作公司,网站的大图标怎么做,桃城区网站制作公司文章目录 PNC和ComMPNC管理NM PDU结构及PNC信息位置如何理解节点关联PNCPNC状态管理 ComM 通道状态管理 PNC和ComM
PNC 和 ComM层的Channel不是一个概念#xff0c;ComM的Channel对应具体的物理总线数。
在ComM模块中#xff0c;一个Channel可以对应一个PNC#xff0c;也可… 文章目录 PNC和ComMPNC管理NM PDU结构及PNC信息位置如何理解节点关联PNCPNC状态管理 ComM 通道状态管理 PNC和ComM
PNC 和 ComM层的Channel不是一个概念ComM的Channel对应具体的物理总线数。
在ComM模块中一个Channel可以对应一个PNC也可以对应多个PNC。
PNC管理
PNCPartial Network Cluster 即“局部网络集群” 通过一些规则通常按照功能类 将车辆网络进一步划分为不同的“局域网” 通过 PNC 管理其各种状态。
如下图OBC和BMS组成一个PNC1,而MCU和BMS又组成了一个PNC2。
NM PDU结构及PNC信息位置
PNC,是一种将网络通信进行分组和控制的方法属于AUTOSAR COM层是从Autosar 4.0.3开始增加的主要目的是为了省电PNC是PDU中的一部分 NIDSource Node Identifier即对应节点CAN报文的CanID比如节点 NM Msg CanID 为 0x509则 NID 0X09(配置工具配置)5表示网络管理报文类型。
CBVControl Bit Vector控制位向量。
User Data使能PN功能时存储PNC信息。假设某网段内有48个PNCUser Data中的每一个Bit代表一个PNC可以用PNC 0 ~ PNC 47标识这48个PNC。注意节点具体需要处理多少个PNC根据需求配置。
如何理解节点关联PNC
一个网段内有多个节点多个节点之间可以形成多个PNC也就意味着具体到某个节点并不是所有的PNC 都对该节点有效。 比如ECU1有两个节点Node1和Node2Node1收到的网络管理报文中只关注PNC20、PNC22、PNC30是否置位 1因为Node1只参与PNC 20、PNC22、PNC30三个网络簇并不关心PNC16或者其他的PNC #n状态如下所示
PNC状态管理
PNC有两种模式其中COMM_PNC_FULL_COMMUNICATION包含三种子状态
COMM_PNC_FULL_COMMUNICATION COMM_PNC_REQUESTEDCOMM_PNC_READY_SLEEPCOMM_PNC_PREPARE_SLEEP COMM_PNC_NO_COMMUNICATION
系统上电后整个PNC的状态在COMM_PNC_NO_COMMUNICATION。在PNC状态切换过程中如果是主动唤醒节点直接请求FULL通信或者是网关节点控制的节点在收到网关下的ERAExternal 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静默模式 接收但不发送。