提示:以CAN總線為例
1、主動喚醒和被動喚醒
主動喚醒:上層(比如:ASWC,通俗講就是算法層)主動請求網(wǎng)絡(luò),主動喚醒會使得上層主動調(diào)用CanNm_NetworkRequest()接口喚醒網(wǎng)絡(luò)。常見的主動喚醒源有:KL15信號,定時器、傳感器等。
定時器:節(jié)點休眠前設(shè)定時間,比如:每2h節(jié)點主動醒來。
傳感器:比如:腳踢門功能。腳踢后備箱,后備箱對應(yīng)控制器主動喚醒網(wǎng)絡(luò),進而執(zhí)行后備箱開啟功能。
某些節(jié)點沒有KL15硬線連接,可以通過接收特定的信號(KL15信號等),主動請求網(wǎng)絡(luò)(調(diào)用CanNm_NetworkRequest()接口)進入NOS(Normal Operation State)狀態(tài)。
被動喚醒:由其他節(jié)點的特定行為觸發(fā)本節(jié)點的喚醒,比如:
收到其他節(jié)點的有效網(wǎng)絡(luò)管理報文
被動喚醒,調(diào)用CanNm_PassiveStartup()接口喚醒網(wǎng)絡(luò)。注意:不要和網(wǎng)絡(luò)被動模式混淆,
不管節(jié)點的網(wǎng)絡(luò)類型是被動的還是主動的,均可以被動喚醒。
被動網(wǎng)絡(luò)節(jié)點被動喚醒不會外發(fā)網(wǎng)絡(luò)管理報文,主動網(wǎng)絡(luò)節(jié)點被動喚醒會外發(fā)網(wǎng)絡(luò)管理報文。
2、網(wǎng)絡(luò)被動節(jié)點
網(wǎng)絡(luò)被動節(jié)點的網(wǎng)絡(luò)管理報文收/發(fā)行為及時間參數(shù)如下所示:
網(wǎng)絡(luò)被動節(jié)點不會進入NOS(Normal Operation State)狀態(tài)。
網(wǎng)絡(luò)管理報文的接收(Rx):在RMS(Repeat Message State)、RSS(Ready Sleep State)、PBM(Pre Bus-Sleep Mode)狀態(tài)下均可以接收網(wǎng)絡(luò)管理報文。BSM(Bus Sleep Mode)無法接收網(wǎng)絡(luò)管理報文。
網(wǎng)絡(luò)管理報文的發(fā)送(Tx):在任何狀態(tài)下均不會發(fā)送網(wǎng)絡(luò)管理報文。
應(yīng)用報文的發(fā)送:在RMS、RSS狀態(tài)下可以發(fā)送應(yīng)用報文,PBM下停發(fā)應(yīng)用報文(已放入底層硬件緩存區(qū)的報文可以發(fā)送)。如果不理解底層硬件緩存區(qū),可以參考前文Autosar通信棧:基礎(chǔ)問題知多少。
Repeat Message Timer:進入RMS狀態(tài)時,啟動該時間,比如:1500ms,當該時間走完,由RMS進入RSS狀態(tài)。
NM-Timeout Timer:進入RMS時,啟動該時間,比如:3000ms,在此期間接收到網(wǎng)絡(luò)管理報文或者超時,重置該時間。進入RSS狀態(tài),收到網(wǎng)絡(luò)管理報文,重置該時間,如果收不到網(wǎng)絡(luò)管理報文,超時后,進入PBM狀態(tài)。
Wait Bus Sleep Timer:在PBM狀態(tài),收不到網(wǎng)絡(luò)管理報文,該時間超時后進入BSM,比如:4000ms。PBM狀態(tài)下,如果收到網(wǎng)絡(luò)管理報文或者網(wǎng)絡(luò)請求,則重新進入RMS。
3、網(wǎng)絡(luò)主動節(jié)點
網(wǎng)絡(luò)主動節(jié)點的網(wǎng)絡(luò)管理報文收/發(fā)行為及時間參數(shù)如下所示:
網(wǎng)絡(luò)管理報文的接收(Rx):在RMS(Repeat Message State)、NOS(Normal Operation State)、RSS(Ready Sleep State)、PBM(Pre Bus-Sleep Mode)狀態(tài)下均可以接收網(wǎng)絡(luò)管理報文。BSM(Bus Sleep Mode)無法接收網(wǎng)絡(luò)管理報文。
網(wǎng)絡(luò)管理報文的發(fā)送(Tx):網(wǎng)絡(luò)主動節(jié)點的NM Msg發(fā)送行為有多種情況:
1.正常發(fā)送模式(沒有快速發(fā)送功能,網(wǎng)絡(luò)被動喚醒):在RMS以相同的周期發(fā)送網(wǎng)絡(luò)管理報文,eg:500ms,如下所示:
注意:由于網(wǎng)絡(luò)是被動喚醒(比如:接收到其他節(jié)點網(wǎng)絡(luò)管理報文喚醒),上層沒有主動請求網(wǎng)絡(luò),網(wǎng)絡(luò)狀態(tài)由RMS進入RSS。
2.正常發(fā)送模式(沒有快速發(fā)送功能,網(wǎng)絡(luò)主動喚醒):在RMS和NOS以相同的周期發(fā)送網(wǎng)絡(luò)管理報文,eg:500ms,如下所示:
3.有快速發(fā)送功能(網(wǎng)絡(luò)被動喚醒):在RMS狀態(tài)下,先以快發(fā)周期發(fā)送一定次數(shù)的網(wǎng)絡(luò)管理報文,eg:20ms發(fā)送10次,之后以正常周期發(fā)送網(wǎng)絡(luò)管理報文,eg:500ms。如下所示:
注意:由于網(wǎng)絡(luò)是被動喚醒(比如:接收到其他節(jié)點網(wǎng)絡(luò)管理報文喚醒),上層沒有主動請求網(wǎng)絡(luò),網(wǎng)絡(luò)狀態(tài)由RMS進入RSS。
4.有快速發(fā)送功能(網(wǎng)絡(luò)主動喚醒):在RMS狀態(tài)下,先以快發(fā)周期發(fā)送一定次數(shù)的網(wǎng)絡(luò)管理報文,eg:20ms發(fā)送10次,之后以正常周期發(fā)送網(wǎng)絡(luò)管理報文,eg:500ms。上層主動請求網(wǎng)絡(luò),進入NOS狀態(tài),以正常周期發(fā)送網(wǎng)絡(luò)管理報文,eg:500ms。如下所示:
注意:由于網(wǎng)絡(luò)主動喚醒,則由RMS進入NOS。
應(yīng)用報文的發(fā)送:在RMS、NOS、RSS狀態(tài)下可以發(fā)送應(yīng)用報文,PBM下停發(fā)應(yīng)用報文。
Repeat Message Timer:進入RMS狀態(tài)時,啟動該時間,比如:1500ms,當該時間走完,由RMS進入NOS/RSS狀態(tài)(取決于上層是否主動請求網(wǎng)絡(luò))。
NM-Timeout Timer:進入RMS時,啟動該時間,比如:3000ms,在此期間接收/發(fā)送網(wǎng)絡(luò)管理報文或者超時,重置該時間。進入RSS狀態(tài),接收/發(fā)送網(wǎng)絡(luò)管理報文,重置該時間,如果收不到網(wǎng)絡(luò)管理報文,超時后進入PBM狀態(tài)。進入NOS狀態(tài),接收/發(fā)送網(wǎng)絡(luò)管理報文或者超時,重置該時間。
Wait Bus Sleep Timer:在PBM狀態(tài),收不到網(wǎng)絡(luò)管理報文,且沒有網(wǎng)絡(luò)請求,該時間超時以后進入BSM;如果收到網(wǎng)絡(luò)管理報文或者網(wǎng)絡(luò)請求則重新進入RMS。
審核編輯:劉清
-
傳感器
+關(guān)注
關(guān)注
2542文章
50308瀏覽量
750320 -
CAN總線
+關(guān)注
關(guān)注
145文章
1908瀏覽量
130514 -
網(wǎng)絡(luò)管理
+關(guān)注
關(guān)注
0文章
116瀏覽量
27632 -
定時器
+關(guān)注
關(guān)注
23文章
3228瀏覽量
114192
發(fā)布評論請先 登錄
相關(guān)推薦
評論