3.1.3 osek網路管理之邏輯環
今天介紹下osek網路管理最核心的部分,建立邏輯環,先看圖4-4,可以看出,正常建環的情況下,上一條nm報文的id就是下一條nm報文的第一位元組的資料,比如劃線的3條報文,第一條報文的id為0x19,資料的第一位元組為0xe8,第二條報文的id為0xe8,資料的第一位元組為0xee,第三條報文的id為0xee,資料的第一位元組為0x19,所有正常建環的報文的第二位元組,其bit2置1,表示發出了正常建環的ring報文,這就是所謂的邏輯環,其示意圖見圖4-5,所有網路管理報文資料的第一位元組就是邏輯環中的下乙個節點的id,每條ring報文的間隔時間為ttyp(一般是90-120ms)。
圖4-4 邏輯環報文
圖4-5 邏輯環
接下來講解一下正常建環過程,如圖4-6所示,所有參與建環的ecu在建環初期,發出報文資料的第一位元組都是自己的id,第二位元組都是0xc9,即協議裡講的發出指向自身的alive報文,每個ecu都發完alive報文之後,就建立起來邏輯環了,看圖4-6的後面幾幀報文,ecu 25指向了ecu 17,ecu17指向了ecu1d,ecu1d指向了ecu21,ecu21指向ecu22,ecu22指向ecu25,ecu25指向ecu17,形成乙個封閉的邏輯環,且第二位元組都是ring置1的ring報文。
圖4-6 正常建環過程
再看下ecu進入limphome狀態時的情況,如圖4-7所示,在網路上只有乙個nm節點的情況下,ecu上電後,先嘗試建立邏輯環,嘗試5次後,依舊無法建立邏輯環,則ecu進入limphome狀態,ecu按terror(一般是1000ms)的週期傳送limphome位置1的報文,從圖4-7可以看出,limphome報文的第一位元組指向自己,第二位元組為0x04。
圖4-7 limphome狀態報文傳送
3.1.4 osek網路管理之休眠喚醒
這一節看下osek網路管理的重要應用,指示ecu的休眠和喚醒,讓我們想像乙個場景,當你停車下電,下到off檔,車上的中控屏、儀表等電器件的螢幕都會熄滅,當你鎖好門落車後,在一段時間內沒有任何操作,你的車這個時候就安安靜靜的睡著了,整車消耗的蓄電池電量也相當微弱,一般能做到20ma一下,這樣子的話,你的車就算放上乙個月,等你要用它的時候,它也能正常啟動起來,這就是休眠策略帶來的好處;同理,當你下午下班的時候,按下遙控尋車,你的車也能響應你的操作,相當於你把車從休眠狀態下喚醒了。
我們結合圖4-8,看下oske網路管理的休眠過程,當我們下到off檔時,控制器滿足了休眠條件,就會發出睡眠指示位(sleep.ind)置1的ring報文,如圖中的第二位元組資料為0x12的報文,當所有節點都滿足休眠條件,發出0x12的報文後,最後乙個休眠節點的下乙個節點,就會發出睡眠應答位(sleep.ack)置1的ring報文,如圖中的第二位元組資料為0x32的報文,同一網段的控制器收到這個報文後,就會進入睡眠狀態,這個時候,會停止傳送任何報文到匯流排,等待ecu的內部任務完成後,就會進入低功耗模式,靜態電流會變得很小。
圖4-8 osek網路管理
osek網路管理 OSEK網路管理心得
osek網路管理總結 1 建環機制 網路管理報文id從小到大傳送,然後從最大節點到最小節點依次建成邏輯環。byte0 代表此幀網路管理報文傳送的目標位址。通俗說就是這幀網路管理報文是傳送給bcm還是給peps或者其他節點。byte1 代表傳送的網路管理報文的型別即是ring報文還是alive報文或者...
AutoSar和OSEK網路管理比較
共同點 1.都屬於直接網路管理。2.網路管理的目的都是協調各節點同步進入休眠及喚醒 主要是休眠 3.都依靠特定的網路管理can報文,每個節點的網路管理id都不一樣。4.喚醒方法相同,第乙個喚醒的節點傳送網路管理幀即同時喚醒其它節點。不同點 1.喚醒幀型別不一樣 網路喚醒後,osek要求節點發出的第一...
can網路管理(osek中的NM)
1 協調各 ecu 同時進入網路睡眠模式 2 檢測和監控網路的配置 3 提供系統狀態。所有參與直接網路管理的 ecu,根據 oseknm 中的演算法建立邏輯環的通訊機制 4 每個參與直接 nm 的 ecu 都有乙個特定的網路管理位址 5 每個 ecu 傳送特定的 nm 報文,nm 報文由優先順序較高...