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