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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(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é)點(diǎn)在整個(gè)網(wǎng)絡(luò)中的活動(dòng)的,根據(jù)NM Message控制整個(gè)網(wǎng)絡(luò)對(duì)Normal模式和Sleep模式的切換。

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

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

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

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

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

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

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

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

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

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

2.jpg

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

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

2.jpg

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

NM PDU

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

2.jpg

其中Control Bit Vector的定義如下

2.jpg

Bit0: Repeat Message Request 表明Repeat Msg是否被請(qǐng)求。

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

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

Bit6: Partial Network Information Bit (PNI)。

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

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

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

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

Partial Network Cluster

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

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

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

對(duì)于濾波機(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

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

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

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

對(duì)于PNC在AutoSAR中的實(shí)現(xiàn)將從CAN相關(guān)的PNC做闡述,因?yàn)楝F(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。整個(gè)PNC的相關(guān)狀態(tài)切換如下圖所示。

2.jpg

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

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

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

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

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

5.對(duì)于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)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • CAN通信
    +關(guān)注

    關(guān)注

    5

    文章

    93

    瀏覽量

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

    關(guān)注

    4

    文章

    397

    瀏覽量

    50121
  • AUTOSAR
    +關(guān)注

    關(guān)注

    10

    文章

    339

    瀏覽量

    21357
  • OSEK
    +關(guān)注

    關(guān)注

    2

    文章

    19

    瀏覽量

    13000
收藏 人收藏

    評(píng)論

    相關(guān)推薦

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

    目前通信網(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 ?1588次閱讀
    基于SNMP的<b class='flag-5'>通信網(wǎng)絡(luò)</b>性能<b class='flag-5'>管理</b>模塊設(shè)計(jì)

    矢量網(wǎng)絡(luò)分析儀及其在移動(dòng)通信網(wǎng)建設(shè)和維護(hù)的應(yīng)用介紹

    1、概述隨著移動(dòng)通信的發(fā)展,2G、3G、4G通信網(wǎng)并存,使通信網(wǎng)絡(luò)的復(fù)雜度越來越高,尤其是室內(nèi)分布系統(tǒng),往往由成百上千個(gè)射頻器件組成,射頻器件的質(zhì)量好壞直接關(guān)系到
    發(fā)表于 07-18 06:18

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

    汽車在往智能化方向發(fā)展,節(jié)點(diǎn)間通信的安全性變得越來越重要。當(dāng)下是在報(bào)文中添加驗(yàn)證信息實(shí)現(xiàn)通信安全,這樣不僅浪費(fèi)寶貴的通信資源,還增加軟件復(fù)雜度。本文將介紹一種通過硬件實(shí)現(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é)點(diǎn)都按照狀態(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é)議

    我們首先要了解的信息有以下五點(diǎn):1、充電機(jī)和BMS之間通信網(wǎng)絡(luò)采用CAN2.0B通訊協(xié)議。2、在充電過程,充電機(jī)和BMS監(jiān)測電壓、電流和溫度等參數(shù),同時(shí)BMS管理整個(gè)充電過程。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

    CAN通信網(wǎng)在汽車的應(yīng)用研究

    CAN通信網(wǎng)在汽車的應(yīng)用研究   控制局域網(wǎng)CAN(ControllerAreaNetwork)是德國Bosch公司為解決現(xiàn)代汽車
    發(fā)表于 12-19 10:47 ?727次閱讀

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

    ,移動(dòng)通信網(wǎng)絡(luò)的維護(hù)管理問題應(yīng)該引起相關(guān)單位的重視,必須要采取積極有效的維護(hù)管理策略,提高網(wǎng)絡(luò)管理水平,為滿足人民群眾對(duì)信息的需求發(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èi)下載。
    發(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èi)下載。
    發(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ò)管理是一個(gè)獨(dú)立于硬件的協(xié)議,只能在 CAN 上使用。它的主要目的是協(xié)調(diào)網(wǎng)絡(luò)
    的頭像 發(fā)表于 09-09 10:32 ?5036次閱讀
    一文解析<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èi)下載
    發(fā)表于 11-18 14:54 ?0次下載
    ZigBee無線<b class='flag-5'>通信網(wǎng)絡(luò)</b>標(biāo)準(zhǔn)<b class='flag-5'>概述</b>