0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

AutoSAR中CAN通信網(wǎng)絡(luò)管理的概述

冬至子 ? 來源:Vehicle軟件開發(fā) ? 作者:Vehicle軟件開發(fā) ? 2023-01-18 10:21 ? 次閱讀

概述

AutoSAR中CAN通信網(wǎng)絡(luò)管理主要是根據(jù)CANNode接收和發(fā)送的NMMessage進(jìn)行該節(jié)點在整個網(wǎng)絡(luò)中的活動的,根據(jù)NM Message控制整個網(wǎng)絡(luò)對Normal模式和Sleep模式的切換。

同時可以根據(jù)CAN NM PDU來檢測網(wǎng)絡(luò)上的其他節(jié)點的狀態(tài),進(jìn)行同步休眠等。主要包含以下內(nèi)容:

1.周期性的NMMessage在發(fā)送節(jié)點廣播式的發(fā)送,節(jié)點可以周期接收到NM PDU。

2.對于接收節(jié)點而言,接收到NMPDU表明相應(yīng)的節(jié)點想要保持網(wǎng)絡(luò)正常工作。

3.節(jié)點想要進(jìn)入Sleep模式,那么停止發(fā)送NM PDU準(zhǔn)備進(jìn)入Sleep,如果此時網(wǎng)絡(luò)還有別的節(jié)點在發(fā)送NMPDU,則延遲進(jìn)入Sleep。

4.在所有節(jié)點停止發(fā)送NMPDU并且設(shè)置的超時時間到,這時候整個網(wǎng)絡(luò)上的節(jié)點同步進(jìn)入Sleep模式。

5.節(jié)點想要從Sleep進(jìn)入到Normal模式,則請求發(fā)送NMPDU。

NM****狀態(tài)切換

在NM中狀態(tài)切換主要有兩個方面的考慮,其中一個是整個CAN NM的網(wǎng)絡(luò)切換關(guān)系,主要由三個主要的狀態(tài),分別是Network Mode、Pre-Bus Sleep Mode和Bus Sleep Mode,對于其內(nèi)部的轉(zhuǎn)換關(guān)系如下圖所示。

系統(tǒng)上電后,首先在Bus Sleep模式,如果有NM的通信請求就進(jìn)入正常的通信模式也就是下中的Network Mode。

在Network Mode主要處理整個系統(tǒng)的網(wǎng)絡(luò)管理的正常運行,如果NM上的節(jié)點停止發(fā)送NM PDU,則在定義的TimeOut后進(jìn)入到Pre-Bus Sleep模式,等待整個通信上的網(wǎng)絡(luò)達(dá)到Bus TimeOut后徹底進(jìn)入Bus Sleep模式,如果在Pre-Bus Sleep模式下,收到了其它節(jié)點的NM請求,則進(jìn)入正常的Network模式。

2.jpg

在NM的狀態(tài)切換中還有一個比較重要的就是Network Mode的內(nèi)部狀態(tài)切換。無論是Bus Sleep還是Pre-Bus Sleep狀態(tài)下進(jìn)入到Network模式都會直接進(jìn)入Repeat Message State發(fā)送NM PDU,處于RepeatMessage State下的節(jié)點對于整個網(wǎng)絡(luò)上的節(jié)點來說是有效的節(jié)點,并確保其它節(jié)點在該狀態(tài)上保持激活狀態(tài)。Repaet模式下定義的TimeOut時間到同時接收到NM的請求進(jìn)入到Normal Operation State,在該模式下只有NN的請求就保持節(jié)點處于Awake狀態(tài)。

接收到RepeatMsg的請求或者對應(yīng)的RepeatMsg對應(yīng)的控制Bit接收,則進(jìn)入Repeat模式,如果接收到NMReleased請求則進(jìn)入ReadySleep States,ReadySleep States狀態(tài)下等待其它節(jié)點進(jìn)入到Sleep狀態(tài),如果NM TimeOut時間達(dá)到進(jìn)入到Pre-Bus Sleep等待總線Sleep。具體的狀態(tài)轉(zhuǎn)換如下所示。

2.jpg

網(wǎng)絡(luò)管理的狀態(tài)切換中一般主要是由TimeOut和Requested/Released進(jìn)行切換的,同時包含了對外部NMReq的處理,在使用的時候注意幾個TimeOut的時間,尤其是在做整個網(wǎng)絡(luò)上的Sleep機(jī)制的時候要充分考慮不同節(jié)點產(chǎn)生的jitters,該部分的考慮主要從內(nèi)部時鐘、NM相關(guān)模塊函數(shù)的循環(huán)時間和發(fā)送方式進(jìn)行考慮,由于該部分還有連調(diào)連試過,所有先不詳細(xì)介紹,等后期如果進(jìn)行相關(guān)的工作再補(bǔ)充更新。

NM PDU

AutoSAR中NM的PDU主要包括三大部分,分別是節(jié)點的ID、控制位以及用戶數(shù)據(jù)。在標(biāo)準(zhǔn)的CANFrame的具體定義如下:

2.jpg

其中Control Bit Vector的定義如下

2.jpg

Bit0: Repeat Message Request 表明Repeat Msg是否被請求。

Bit3: NM Coordinator Sleep Bit 表明是否開始同步的ShutDown。

Bit4:Active Wakeup Bit 表明是否喚醒通信網(wǎng)絡(luò)

Bit6: Partial Network Information Bit (PNI)。

Bit1/2/5/7用于后期擴(kuò)展。

對于Byte0和Byte1兩個Byte,AutoSAR定義的是通用的設(shè)置Byte,尤其是Byte0是Source的ID,只取其中的低八位,一般OEM都會定義特定的NM報文,而對于在NM PDU機(jī)制中的實現(xiàn)和定義主要寫入低八位的ID就可以。

對于UserData不同的OEM會有不同的定義,這個取決于自己的設(shè)置,之前參與Daimler的一個項目的時候,他們會把UserData0作為WakeUp Reason使用。

如果使用Partial Network Cluster(PNC),一般會在特定的UserData中包含PNC上節(jié)點所在的位置。對于NMPDU的使用根據(jù)具體的OEM要求設(shè)置即可。

Partial Network Cluster

PartialNetwork Cluster(PNC)的使用主要是關(guān)掉某些網(wǎng)絡(luò)上的不需要通信的節(jié)點,而一些必須的節(jié)點可以正常通信,從而更好的節(jié)約能量,減少消耗。

只有在該節(jié)點的PNC功能使能,同時接收的NM PDU中PNI位為1的時候才進(jìn)行正常的PNC處理。同樣作為PNC的一個節(jié)點在發(fā)送NM PDU的時候PNI位也必須設(shè)置為1。

PNC在實現(xiàn)的時候在CANNM模塊提供了一種濾波機(jī)制,用來忽略無效的NMPDU。在使用PNC功能的時候,對于NMPDU 不用的OEM會在UserData中相應(yīng)的Bit表示一個PNC的網(wǎng)絡(luò)節(jié)點,每一個Bit表示了一個PN節(jié)點。

對于濾波機(jī)制的使用一般從UserData數(shù)據(jù)開始,指定需要比較的Byte長度,然后設(shè)置需要的比較信息(定義需要接收的Byte Value和Mask Value),進(jìn)行比較即可,只有滿足比較條件才認(rèn)為接收到的NM PDU是一條有效的NMPDU,否則忽略。

在PNC中提供了兩種NM的管理機(jī)制,分別為Internal and External Requested(EIR)PN和ExternalRequested(ER)PN。

2.jpg

對于EIR PN而言,主要是用于在接收到NM后,ECU根據(jù)接收到的NM PDU通知COMM模塊和BSWM去控制相關(guān)的NM通道中的I-PDU的使能和禁用,同時可以將接收和發(fā)送的數(shù)據(jù)通過COM模塊與APP層進(jìn)行交互。

ER PN而言主要是作為NM的Gateway收集外部的PN PDU使用,用于路由NM相關(guān)的PNC到指定的通信Bus通道,進(jìn)行PN控制。

PNCAutoSAR****中的實現(xiàn)

對于PNC在AutoSAR中的實現(xiàn)將從CAN相關(guān)的PNC做闡述,因為現(xiàn)在CAN的PNC網(wǎng)絡(luò)管理也是用的最多的。

CAN的PNC在AutoSAR架構(gòu)中主要包括了支持CAN PNC的硬件、CAN、CanTrcv(SPI通信)、CanIf、CanNm、CanSM、NmIf、ComM、BSWM以及應(yīng)用層的SWC。整個PNC的相關(guān)狀態(tài)切換如下圖所示。

2.jpg

根據(jù)上面的圖片簡單介紹幾個主要作用:

1.喚醒:MCU被喚醒后,對于帶有喚醒功能的TJA1145而言會在CANTrcv中將喚醒通知到CANIF,然后在EcuM中調(diào)用相關(guān)的函數(shù)對喚醒的有效性進(jìn)行判斷,從而將當(dāng)前喚醒的狀態(tài)通知給BswM進(jìn)行狀態(tài)處理。

2.PNC通信:在CANIf收到相關(guān)的NMPDU后,通知CANNM做PNC的有效性校驗,在PNC校驗有效后通過PDUR和COM兩個模塊將有效PNC信息告知COMM中特定的PNC通道,然后COMM將PNC的狀態(tài)發(fā)送給BSWM,BSWM根據(jù)PNC的狀態(tài)和特定的Rules反饋給COMM進(jìn)行PNC通信請求,同時通過CANSM模塊經(jīng)CANIf去控制CNATrcv進(jìn)行通信模式切換。

3.在應(yīng)用層的SWC可以直接建立與BSWM的Mode Req CS接口或者SWC建立與COMM的用于請求通信的CS接口,實現(xiàn)SWC對通信的請求。

4.對于NM PDU的發(fā)送一般需要NM模塊進(jìn)行請求或者釋放,其控制指令也是在COMM受到BSWM或者SWC請求后發(fā)出控制指令。

5.對于PNC的NM PDU Group的使能和禁用開關(guān)需要BSWM結(jié)合具體的Rules進(jìn)行控制,從而StartNM PDU 和StopNM PDU。

6.TJA1145這款芯片的模式操作和喚醒幀定義需要通過SPI通信進(jìn)行控制。

審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • CAN通信
    +關(guān)注

    關(guān)注

    5

    文章

    93

    瀏覽量

    17871
  • OEM
    OEM
    +關(guān)注

    關(guān)注

    4

    文章

    402

    瀏覽量

    50372
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    362

    瀏覽量

    21607
  • OSEK
    +關(guān)注

    關(guān)注

    2

    文章

    19

    瀏覽量

    13038
收藏 人收藏

    評論

    相關(guān)推薦

    基于SNMP的通信網(wǎng)絡(luò)性能管理模塊設(shè)計

    目前通信網(wǎng)絡(luò)結(jié)構(gòu)越來越復(fù)雜,通信網(wǎng)絡(luò)使用的設(shè)備也越來越復(fù)雜,隨著網(wǎng)絡(luò)的大型化與復(fù)雜化,如何有效地進(jìn)行網(wǎng)絡(luò)管理日益成為人們普遍關(guān)注的問題。IS
    發(fā)表于 09-30 13:48 ?1626次閱讀
    基于SNMP的<b class='flag-5'>通信網(wǎng)絡(luò)</b>性能<b class='flag-5'>管理</b>模塊設(shè)計

    如何通過硬件實現(xiàn)安全CAN通信網(wǎng)絡(luò)的方式

    汽車在往智能化方向發(fā)展,節(jié)點間通信的安全性變得越來越重要。當(dāng)下是在報文中添加驗證信息實現(xiàn)通信安全,這樣不僅浪費寶貴的通信資源,還增加軟件復(fù)雜度。本文將介紹一種通過硬件實現(xiàn)安全CAN
    發(fā)表于 02-26 06:06

    怎樣有效管理數(shù)據(jù)通信網(wǎng)絡(luò)?

    怎樣有效管理數(shù)據(jù)通信網(wǎng)絡(luò)?
    發(fā)表于 05-27 06:37

    AUTOSAR CAN網(wǎng)絡(luò)管理

    一、背景: 在AUTOSAR CAN網(wǎng)絡(luò)管理框架下,如果所有的節(jié)點都按照狀態(tài)機(jī)要求,在ReadSleep狀態(tài)下停發(fā)NM幀,在Prepare Bus-Sleep模式下停發(fā)App幀,所有節(jié)
    發(fā)表于 07-26 06:47

    充電機(jī)和BMS之間通信網(wǎng)絡(luò)采用CAN2.0B通訊協(xié)議

    我們首先要了解的信息有以下五點:1、充電機(jī)和BMS之間通信網(wǎng)絡(luò)采用CAN2.0B通訊協(xié)議。2、在充電過程,充電機(jī)和BMS監(jiān)測電壓、電流和溫度等參數(shù),同時BMS管理整個充電過程。3、充
    發(fā)表于 09-14 06:07

    AUTOSAR CAN網(wǎng)絡(luò)管理狀態(tài)機(jī)介紹

    AUTOSAR CAN網(wǎng)絡(luò)管理狀態(tài)機(jī)為什么停發(fā)應(yīng)用幀?有什么解決辦法嗎?
    發(fā)表于 09-24 07:47

    基于移動通信網(wǎng)絡(luò)維護(hù)管理

    ,移動通信網(wǎng)絡(luò)的維護(hù)管理問題應(yīng)該引起相關(guān)單位的重視,必須要采取積極有效的維護(hù)管理策略,提高網(wǎng)絡(luò)管理水平,為滿足人民群眾對信息的需求發(fā)揮自身的
    發(fā)表于 01-18 14:25 ?1次下載

    AUTOSAR_SWS_CAN網(wǎng)絡(luò)管理規(guī)范標(biāo)準(zhǔn)4.3.1

    AUTOSAR_SWS_CAN網(wǎng)絡(luò)管理規(guī)范標(biāo)準(zhǔn)4.3.1
    發(fā)表于 03-28 17:02 ?13次下載

    CAN網(wǎng)絡(luò)管理規(guī)范 AUTOSAR CP中文版

    CAN網(wǎng)絡(luò)管理規(guī)范 AUTOSAR CP中文版免費下載。
    發(fā)表于 04-06 16:21 ?0次下載

    CAN網(wǎng)絡(luò)管理規(guī)范 AUTOSAR CP英文版

    AUTOSAR_SWS_CAN網(wǎng)絡(luò)管理規(guī)范標(biāo)準(zhǔn)4.3.0英文版免費下載。
    發(fā)表于 04-06 16:20 ?0次下載

    AUTOSAR CAN網(wǎng)絡(luò)管理協(xié)議

    AUTOSAR_SWS_CANNetworkManagement AUTOSAR CAN網(wǎng)絡(luò)管理協(xié)議,4.4.0版本
    發(fā)表于 08-01 11:09 ?16次下載

    一文解析AUTOSAR CAN網(wǎng)絡(luò)管理

    AUTOSAR CAN 網(wǎng)絡(luò)管理是一個獨立于硬件的協(xié)議,只能在 CAN 上使用。它的主要目的是協(xié)調(diào)網(wǎng)絡(luò)
    的頭像 發(fā)表于 09-09 10:32 ?5835次閱讀
    一文解析<b class='flag-5'>AUTOSAR</b> <b class='flag-5'>CAN</b><b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>管理</b>

    ZigBee無線通信網(wǎng)絡(luò)標(biāo)準(zhǔn)概述

    電子發(fā)燒友網(wǎng)站提供《ZigBee無線通信網(wǎng)絡(luò)標(biāo)準(zhǔn)概述.pdf》資料免費下載
    發(fā)表于 11-18 14:54 ?0次下載
    ZigBee無線<b class='flag-5'>通信網(wǎng)絡(luò)</b>標(biāo)準(zhǔn)<b class='flag-5'>概述</b>

    AUTOSAR通信CAN協(xié)議的關(guān)系

    的概念,允許應(yīng)用層組件(如軟件組件和ECU抽象層)通過定義良好的接口進(jìn)行通信。 1. 通信服務(wù): AUTOSAR提供了一系列通信服務(wù),包括復(fù)雜驅(qū)動
    的頭像 發(fā)表于 12-17 14:57 ?201次閱讀

    AUTOSAR通信網(wǎng)絡(luò)安全 AUTOSAR通信在車輛的應(yīng)用

    架構(gòu)合作伙伴計劃,旨在創(chuàng)建并建立一個開放的標(biāo)準(zhǔn)化軟件架構(gòu),以簡化汽車電子控制單元(ECU)的開發(fā)和生產(chǎn)。 1. AUTOSAR通信概述 AUTOSAR定義了一個分層的軟件架構(gòu),其中包括
    的頭像 發(fā)表于 12-17 15:06 ?264次閱讀