一、前言
汽車網(wǎng)絡(luò)管理從根本上來說是為了省電的,基本的實(shí)現(xiàn)方式就是汽車在沒有使用的情況下一些ECU會(huì)通過網(wǎng)絡(luò)管理協(xié)調(diào)進(jìn)入低功耗模式或者睡眠模式,從而達(dá)到省電的目的。目前主流的網(wǎng)絡(luò)管理標(biāo)準(zhǔn)有兩個(gè),一個(gè)是AUTOSAR(Automotive Open System Architecture,即汽車開放系統(tǒng)架構(gòu)),另一個(gè)是OSEK。AUTOSAR與OSEK的網(wǎng)絡(luò)管理方式雖然有區(qū)別,但是可以認(rèn)為AUTOSAR是基于OSEK/VDS發(fā)展出來的。
那么這兩種標(biāo)準(zhǔn)分別是怎么實(shí)現(xiàn)網(wǎng)絡(luò)管理功能的,有什么差異?有什么相同呢?
二、OSEK與AUTOSAR網(wǎng)絡(luò)管理實(shí)現(xiàn)原理
OSEK網(wǎng)絡(luò)管理
1、狀態(tài)機(jī)
OSEK網(wǎng)絡(luò)管理狀態(tài)機(jī)的狀態(tài)跳轉(zhuǎn)是有多層的,具有三個(gè)主要狀態(tài):

圖一OSEK網(wǎng)絡(luò)管理主狀態(tài)示意圖
NMOff:網(wǎng)絡(luò)管理關(guān)閉
NMOn:網(wǎng)絡(luò)管理正在運(yùn)行
NMShutDown:關(guān)閉網(wǎng)絡(luò)管理的操作,此過程會(huì)清理一些在運(yùn)行過程中產(chǎn)生的數(shù)據(jù)
NMOn狀態(tài)下有兩組并行的子狀態(tài),互不影響:

圖二NMOn狀態(tài)下的子狀態(tài)示意圖
NMInit:主要是硬件初始化,此狀態(tài)很短暫(初始)
NMAwake:一般情況下節(jié)點(diǎn)長期保持的狀態(tài),正常進(jìn)行網(wǎng)絡(luò)管理
NMBusSleep:睡眠狀態(tài),網(wǎng)絡(luò)管理通信停止
NMActive:參與網(wǎng)絡(luò)管理(初始)
NMPassive:節(jié)點(diǎn)不參與網(wǎng)絡(luò)管理,但仍監(jiān)視網(wǎng)絡(luò)活動(dòng)
NMAwake狀態(tài)下也有三個(gè)子狀態(tài):

圖三NMAwake狀態(tài)下的子狀態(tài)示意圖
NMReset:軟件初始化,發(fā)送alive報(bào)文
NMNormal:周期性發(fā)送或接受Ring報(bào)文,檢測節(jié)點(diǎn)狀態(tài)和網(wǎng)絡(luò)配置的變化
NMLimpHome:節(jié)點(diǎn)非正常狀態(tài),不能正常發(fā)送和接收網(wǎng)絡(luò)管理報(bào)文,嘗試周期性發(fā)送跛行報(bào)文
一個(gè)節(jié)點(diǎn)從休眠到喚醒,再到休眠狀態(tài)的跳轉(zhuǎn)示意圖如下:

圖四 OSEK網(wǎng)絡(luò)管理狀態(tài)跳轉(zhuǎn)示意圖
2、NM報(bào)文格式
網(wǎng)絡(luò)管理直接關(guān)聯(lián)的報(bào)文為網(wǎng)絡(luò)管理報(bào)文,網(wǎng)絡(luò)管理報(bào)文根據(jù)攜帶數(shù)據(jù)中byte1字節(jié)的不同bit置位可以分為Alive報(bào)文、Ring報(bào)文和LimpHome報(bào)文。網(wǎng)絡(luò)管理報(bào)文byte1字節(jié)中還攜帶有每個(gè)節(jié)點(diǎn)是否滿足休眠的信息,分別叫SleepInd信息、SleepACK信息。
Alive報(bào)文(byte1中bit0置位):每個(gè)節(jié)點(diǎn)需要加入邏輯環(huán)中時(shí)發(fā)送的聲明。
例:

Ring報(bào)文(byte1中bit1置位):“令牌”在邏輯環(huán)中傳遞的網(wǎng)絡(luò)管理報(bào)文。
例:

LimpHome報(bào)文(byte1中bit2置位):節(jié)點(diǎn)處于非正常狀態(tài)不能收發(fā)網(wǎng)絡(luò)管理報(bào)文時(shí)發(fā)出的特殊報(bào)文。
例:

SleepInd信息(byte1中bit4置位):網(wǎng)絡(luò)管理報(bào)文操作碼中攜帶的數(shù)據(jù),表明發(fā)出此信息的節(jié)點(diǎn)不再主動(dòng)請(qǐng)求網(wǎng)絡(luò)通信。
例:

SleepACK信息(byte1中bit4和bit5置位):表明網(wǎng)絡(luò)中所有節(jié)點(diǎn)都不再需要網(wǎng)絡(luò)通信,所有節(jié)點(diǎn)收到此信息的報(bào)文后就停止通信,進(jìn)入休眠。
例:

3、邏輯環(huán)
邏輯環(huán):網(wǎng)絡(luò)管理報(bào)文傳遞的邏輯,正常通信的網(wǎng)絡(luò)中一個(gè)節(jié)點(diǎn)只有收到其他節(jié)點(diǎn)發(fā)出指向自身的網(wǎng)絡(luò)管理報(bào)文,也就是“令牌”,才能發(fā)出自身網(wǎng)絡(luò)管理報(bào)文,因此網(wǎng)絡(luò)中同一時(shí)間只有一個(gè)節(jié)點(diǎn)能發(fā)出網(wǎng)絡(luò)管理報(bào)文,每個(gè)節(jié)點(diǎn)按順序發(fā)送網(wǎng)絡(luò)管理報(bào)文,這個(gè)順序就叫做邏輯環(huán)。示意圖如下:

圖五 邏輯環(huán)示意圖

“Token”在NodeB,NodeB發(fā)出指向NodeC的網(wǎng)絡(luò)管理報(bào)文。

NodeB的發(fā)出指向NodeC的網(wǎng)絡(luò)管理報(bào)文,“Token”轉(zhuǎn)移到NodeC。

“Token”在NodeC,NodeC發(fā)出指向NodeA的網(wǎng)絡(luò)管理報(bào)文。

NodeC的發(fā)出指向NodeA的網(wǎng)絡(luò)管理報(bào)文,“Token”轉(zhuǎn)移到NodeA。

“Token”在NodeA,NodeA發(fā)出指向NodeB的網(wǎng)絡(luò)管理報(bào)文。

NodeA的發(fā)出指向NodeB的網(wǎng)絡(luò)管理報(bào)文,“Token”轉(zhuǎn)移到NodeB。
AUTOSAR網(wǎng)絡(luò)管理
1、狀態(tài)機(jī)
AUTOSAR網(wǎng)絡(luò)管理只有三個(gè)模式:

圖六AUTOSAR網(wǎng)絡(luò)管理模式示意圖
BusSleepMode:總線睡眠模式,當(dāng)具備AUTOSAR網(wǎng)絡(luò)管理功能的控制器正常休眠時(shí)的狀態(tài)。
PrepareBusSleepMode:總線預(yù)睡眠模式,此狀態(tài)為網(wǎng)絡(luò)中節(jié)點(diǎn)停止通信準(zhǔn)備進(jìn)入睡眠模式的一個(gè)過渡狀態(tài),不會(huì)長期處于此狀態(tài)
NetworkMode:網(wǎng)絡(luò)模式,網(wǎng)絡(luò)中有通信請(qǐng)求時(shí)的狀態(tài)。
NetworkMode下還有三個(gè)子狀態(tài),AUTOSAR網(wǎng)絡(luò)管理則是根據(jù)這三個(gè)子狀態(tài)來判斷節(jié)點(diǎn)是否需要通信:

圖七Network Mode模式下子狀態(tài)示意圖
RepeatMessage State:重復(fù)消息狀態(tài),此狀態(tài)不是一個(gè)長時(shí)間的狀態(tài),當(dāng)從睡眠模式或者準(zhǔn)備睡眠模式進(jìn)入網(wǎng)絡(luò)模式時(shí)進(jìn)入此狀態(tài),發(fā)出自身的網(wǎng)絡(luò)管理報(bào)文,讓網(wǎng)絡(luò)中的其他節(jié)點(diǎn)可以檢測到,也可以用來檢測當(dāng)前在線的節(jié)點(diǎn)。
NormalOperationState:正常操作狀態(tài),某個(gè)節(jié)點(diǎn)需要網(wǎng)絡(luò)通信時(shí)處于的狀態(tài),周期性的發(fā)出自身的網(wǎng)絡(luò)管理報(bào)文。
ReadySleep State:就緒睡眠狀態(tài),某個(gè)節(jié)點(diǎn)不再需要網(wǎng)絡(luò)通信時(shí)處于的狀態(tài),不再發(fā)出自身的網(wǎng)絡(luò)管理報(bào)文,但正常發(fā)送自身的應(yīng)用報(bào)文。
一個(gè)正常通信網(wǎng)絡(luò)中的所有節(jié)點(diǎn)都會(huì)維持在兩個(gè)狀態(tài),一個(gè)是NormalOperationState,另一個(gè)是ReadySleep State,這兩個(gè)狀態(tài)的差別就是網(wǎng)絡(luò)管理報(bào)文的發(fā)送與否。
一個(gè)節(jié)點(diǎn)從休眠到喚醒,再到休眠狀態(tài)的跳轉(zhuǎn)如下所示:

圖八AUTOSAR網(wǎng)絡(luò)管理狀態(tài)跳轉(zhuǎn)示意圖
2、NM報(bào)文格式
AUTOSAR網(wǎng)絡(luò)管理報(bào)文由于是廣播發(fā)送的且不需要指定任何節(jié)點(diǎn),所以報(bào)文只包含自身的ID,和少量的控制信息,叫做控制位向量,以及用戶數(shù)據(jù)。

圖九AUTOSAR網(wǎng)絡(luò)管理報(bào)文格式
至此,本文分別在狀態(tài)機(jī),網(wǎng)絡(luò)管理報(bào)文格式對(duì)OSEK和AUTOSAR網(wǎng)絡(luò)管理進(jìn)行了簡單介紹。
本文重點(diǎn)在兩種網(wǎng)絡(luò)管理特點(diǎn)的比較,因文章篇幅限制,還請(qǐng)各位看官移步至文章《科普系列:AUTOSAR與OSEK網(wǎng)絡(luò)管理比較(下)》。
未完待續(xù)。
北匯信息專注于汽車電子測試,與國內(nèi)外眾多OEM和Tier1合作,在車載通信、診斷刷寫、OTA、車內(nèi)網(wǎng)絡(luò)安全、域控制器功能測試等領(lǐng)域積累了豐富的實(shí)踐經(jīng)驗(yàn),歡迎大家交流、探討。
注:文中部分圖片來源于AUTOSAR_SWS_CANNetworkManagement
-
網(wǎng)絡(luò)管理
+關(guān)注
關(guān)注
0文章
127瀏覽量
29347
發(fā)布評(píng)論請(qǐng)先 登錄
光庭信息榮獲AUTOSAR中國中心2025年度優(yōu)秀貢獻(xiàn)獎(jiǎng)
【科普系列】DTC深度剖析
RT-Thread睿賽德正式加入AUTOSAR 組織,成為開發(fā)合作伙伴!
知識(shí)分享 | 使用MXAM進(jìn)行AUTOSAR模型的靜態(tài)分析:Embedded Coder與TargetLink模型
管理型 vs 非管理型,工業(yè)網(wǎng)絡(luò)如何選擇以太網(wǎng)交換機(jī)?
從手寫代碼到AUTOSAR工具鏈:J1939Tp應(yīng)用篇
Linux網(wǎng)絡(luò)管理的關(guān)鍵技術(shù)和最佳實(shí)踐
詳解Linux網(wǎng)絡(luò)管理中的關(guān)鍵命令
揭秘RT-Thread上的AUTOSAR CP系統(tǒng)
基于Classic AUTOSAR的ECU平臺(tái)虛擬化技術(shù)分析
東軟睿馳亮相第16屆AUTOSAR開放大會(huì)
光庭信息亮相第16屆AUTOSAR開放大會(huì)
RT-Thread睿賽德正式成為AUTOSAR組織合作伙伴,攜手推動(dòng)智能汽車技術(shù)新發(fā)展| 新聞速遞
科普系列:AUTOSAR與OSEK網(wǎng)絡(luò)管理比較(上)
評(píng)論