AutoSar網路管理

2021-10-23 00:26:05 字數 2540 閱讀 1691

最近學習can匯流排autosar網路管理,最近做一些總結。本文基於派森君的內容。

autosar和osek都是汽車電子軟體的標準。osek/vdx是基於ecu開發的作業系統,autosar是基於整體汽車電子開發的功能標準。autosar中規定的作業系統標準就是基於osek,通訊和網路管理雖然和osek有區別,但是有繼承性。

osek 是德國的汽車電子類開放系統和對應介面標準(open systems and the corresponding inte***ces for automotive electronics)

vdx 是汽車分布式執行標準(vehicle distributed executive)

2.1 共同點2.2 不同點2.2.1 喚醒幀型別不一樣網路喚醒後,osek要求節點發出的第一幀必須是alive型別,不能是ring, limphome等。autosar只要求是網路管理幀就行,條件寬鬆。

2.2.2 休眠的同步演算法不一樣

osek網路管理使用令牌環機制,令牌從網路位址低的節點傳到網路位址高的節點,如果沒有更高的節點,就傳給最低位址節點。令牌環根據ecu的網路位址建立。每個ecu都會接受網路管理訊息,只有和目的位址相同的乙個節點才會得到令牌。

3.1 喚醒後建立邏輯環過程

3.2 同步休眠過程

autosar基於分布式策略,每個節點根據通訊系統中傳送或者接收到的nm訊息來執行自給自足的網路活動。nm訊息通過廣播傳送,所有網路中的所有節點都可以接收到。接收到nm訊息表示傳送這個nm訊息的節點傾向保持網路工作模式(network mode)。如果有節點準備好進入匯流排睡眠模式 (bus sleep mode),它就停止傳送nm訊息,但是只要它還能夠接收到從其他節點發來的nm訊息,它就延遲到匯流排睡眠模式的變遷。最終,在一定的時限內,由於不再接收到nm訊息,每個節點都啟動到匯流排睡眠模式的變遷。如果網路中的任何節點需要匯流排通訊,它可以通過傳送nm訊息使網路從來匯流排睡眠模式中喚醒。概括如下:

osek同步休眠時刻是所有節點都傳送ring請求休眠幀,且收到其它節點的ring確認休眠幀。而autosar的同步休眠時刻是所有節點都停發nm幀,且不能收到其它節點的nm幀。比較而言,autosar要簡單一些。

osek令牌環中有乙個節點異常,其它節點就要重新建立環才能維持正常網路狀態,策略比較複雜。而autosar網路管理中,乙個節點異常時不影響其它節點的網路狀態。比較而言,autosar要簡單一些。

5.1 網路管理報文

首先要明確一點,nm報文就是can報文。nm報文符合can報文的格式,由幀起始、仲裁場、控制場、資料場、crc場、應答場、幀結尾組成。

一般廠家在設計的時候會規定好nm報文的id範圍。

舉個例子:規定識別符號在0x500到0x5ff範圍為nm報文。當在canoe中抓取到此id範圍內的報文,那就是nm報文。

nm報文的重點在於資料場8位元組裡的內容:

這裡填的是ecu的位址,或者叫ecu的id;

此報文的id=乙個基礎值+ecu的id,例如廠家規定基礎值為0x500,那麼此報文的id=0x500+0x8=0x508;

這裡要注意區分報文的id和ecu id的概念,很容易混淆;

這裡關注下bit0和bit4:

bit0:當此位置1時強制進入rms(下面會講到);

bit4:告訴其他節點自身是怎麼被喚醒的。

置0:被動喚醒、遠端喚醒,比如被其他節點傳送的nm報文喚醒;

置1:主動喚醒、本地喚醒,比如給ecu上電;

byte2-byte7裡的user data資料由使用者自行定義。

5.2 can nm狀態介紹

autosar網路管理有三種狀態:

網路模式(network mode):

bsm-睡眠模式

nm-網路模式

pbm-預睡眠模式

rms-重複報文模式

nos-正常操作狀態

rss-準備睡眠模式

tips:

dut在rss狀態的時候,如果收到本地喚醒(如kl15),會走nm11進入rms狀態;那如果收到遠端喚醒報文呢?

autosar網路管理 AUTOSAR網路管理

做汽車ecu的,可能永遠也繞不過autosar網路管理,今天就來簡單的總結一下autosar網路管理機制。對於汽車ecu是否要在點火鑰匙點火後工作,對於各大主機廠ecus可分為兩個類別,那麼什麼是網路管理 nm 呢?目的是使網路中的ecu節點有序的睡眠和喚醒。在沒有通訊需求的時候睡眠,在需要通訊的時...

AutoSar和OSEK網路管理比較

共同點 1.都屬於直接網路管理。2.網路管理的目的都是協調各節點同步進入休眠及喚醒 主要是休眠 3.都依靠特定的網路管理can報文,每個節點的網路管理id都不一樣。4.喚醒方法相同,第乙個喚醒的節點傳送網路管理幀即同時喚醒其它節點。不同點 1.喚醒幀型別不一樣 網路喚醒後,osek要求節點發出的第一...

osek和autosar網路管理的區別和共同點

共同點 1.都屬於直接網路管理 以下都是以直接網路管理為例,autosar可以不是直接網路管理 2.網路管理的目的都是協調各節點同步進入休眠及喚醒 主要是休眠 3.都依靠特定的網路管理can報文,每個節點的網路管理id都不一樣。4.喚醒方法相同,第乙個喚醒的節點傳送網路管理幀即同時喚醒其它節點。不同...