【摘 要】
智能駕駛的整車(chē)控制部分需要采用AUTOSAR框架進(jìn)行開(kāi)發(fā),以滿(mǎn)足高實(shí)時(shí)性以及高級別的功能安全需求。在本文中,通過(guò)采用AUTOSAR框架中網(wǎng)絡(luò )管理的實(shí)現方式,對網(wǎng)絡(luò )管理報文的格式進(jìn)行定義,并描述CAN網(wǎng)絡(luò )休眠與喚醒的狀態(tài)轉換、網(wǎng)絡(luò )喚醒狀態(tài)中各個(gè)子狀態(tài)的切換、CAN Bus-off狀態(tài)下的處理策略以及非正常電壓模式下的處理策略等。在CANoe上對網(wǎng)絡(luò )管理功能的策略進(jìn)行驗證,測試結果表明能夠實(shí)現AUTOSAR網(wǎng)絡(luò )管理的各項功能。
1 引言
近些年來(lái),智能駕駛相關(guān)技術(shù)在世界范圍內獲得廣泛關(guān)注和蓬勃發(fā)展。智能網(wǎng)聯(lián)汽車(chē)是指搭載各傳感器、控制器、執行器等裝置,融合現代通信與網(wǎng)絡(luò )、人工智能等技術(shù),實(shí)現車(chē)與X(車(chē)、路、人、云等)智能信息交換、共享,具備復雜環(huán)境感知、智能決策、協(xié)同控制等功能,可實(shí)現 “安全、高效、舒適、節能”行駛,并最終可實(shí)現替代人來(lái)操作的新一代汽車(chē)[1-2]。美國高速公路管理局(NHTSA)發(fā)布了對自動(dòng)駕駛各個(gè)級別的定義:Level 0代表人工駕駛,Level 1代表輔助駕駛,Level 2代表部分自動(dòng)駕駛,Level 3代表條件自動(dòng)駕駛,Level 4代表完全的自動(dòng)駕駛。對于高級別自動(dòng)駕駛,對控制器硬件以及基礎軟件的要求相對要高。高度自動(dòng)駕駛級別的域控制器系統架構如圖1所示。
圖1 自動(dòng)駕駛域控制器系統架構
數據融合與處理部分既要求實(shí)時(shí)性和一定的功能安全級別,又要求基礎軟件能管理更大內存,需要有文件系統的支持,因此采用具有文件系統的實(shí)時(shí)操作系統框架進(jìn)行開(kāi)發(fā)。整車(chē)控制部分需要基礎軟件具有高實(shí)時(shí)性以及高級別的功能安全需求,因此采用車(chē)控基礎軟件AUTOSAR框架進(jìn)行開(kāi)發(fā)[3]。AUTOSAR是由各大汽車(chē)制造廠(chǎng)商、零部件供應商、汽車(chē)電子、半導體和軟件系統公司于2003年聯(lián)合推出的一個(gè)開(kāi)放的、標準化的軟件架構。該架構專(zhuān)門(mén)應用于汽車(chē)電子領(lǐng)域,嘗試通過(guò)增加軟件模塊的重用和互換,來(lái)降低系統軟件架構的復雜度,從而優(yōu)化整個(gè)軟件的開(kāi)發(fā)流程。滿(mǎn)足AUTOSAR框架的基礎軟件,具有可移植、可擴展、高實(shí)時(shí)、高可靠、滿(mǎn)足功能安全要求等特點(diǎn)[4]。本文采用基于A(yíng)UTOSAR架構的網(wǎng)絡(luò )管理,在汽車(chē)CAN系統中進(jìn)行實(shí)現,并在CANoe上對網(wǎng)絡(luò )管理的各功能進(jìn)行仿真驗證[5]。
2 AUTOSAR CAN網(wǎng)絡(luò )管理報文格式
在網(wǎng)絡(luò )管理中,網(wǎng)絡(luò )中的各個(gè)節點(diǎn)通過(guò)網(wǎng)絡(luò )管理報文進(jìn)行通信,AUTOSAR CAN網(wǎng)絡(luò )管理報文的數據場(chǎng)格式見(jiàn)表1。
表1 網(wǎng)絡(luò )管理報文的數據場(chǎng)格式
表1中,字節0為ECU Address,作為源節點(diǎn)標識符,用以告知其他節點(diǎn)該報文是由哪個(gè)節點(diǎn)發(fā)送的;處于CAN網(wǎng)絡(luò )中的每個(gè)節點(diǎn)都會(huì )分配一個(gè)唯一的標識符,本文中網(wǎng)絡(luò )管理報文的ECU Address=0x439。字節1為控制比特向量,字節2~7為用戶(hù)自定義的數據信息。本文中字節2User date 0用于將網(wǎng)絡(luò )喚醒原因顯示出來(lái),其他自定義數據作為擴展保留,用“0x00”填充。表2列出了控制比特向量各位的含義。其中Bit0為重復報文狀態(tài)請求位,置1代表需進(jìn)入重復報文發(fā)送狀態(tài),清零代表不再需要重復報文發(fā)送狀態(tài);Bit4位為激活喚醒位,置1代表主動(dòng)喚醒狀態(tài),清零代表被動(dòng)喚醒狀態(tài)。其他位為保留位,以0填充。
表2 控制比特向量格式
3 網(wǎng)絡(luò )管理的策略實(shí)現
3.1 網(wǎng)絡(luò )休眠與喚醒
AUTOSAR網(wǎng)絡(luò )管理包含3個(gè)主要狀態(tài):總線(xiàn)休眠狀態(tài)、預休眠狀態(tài)和喚醒狀態(tài)。當網(wǎng)絡(luò )節點(diǎn)滿(mǎn)足休眠條件,不需要進(jìn)行CAN通信時(shí),進(jìn)入總線(xiàn)休眠狀態(tài)。網(wǎng)絡(luò )處于總線(xiàn)休眠狀態(tài)可以降低車(chē)輛電量消耗。一般情況下,當節點(diǎn)上電之后默認進(jìn)入總線(xiàn)休眠狀態(tài),當在總線(xiàn)休眠狀態(tài)接收到應用程序喚醒需求或者網(wǎng)絡(luò )通信需求時(shí),節點(diǎn)從總線(xiàn)休眠狀態(tài)進(jìn)入喚醒狀態(tài)。當在喚醒狀態(tài)下再次滿(mǎn)足休眠條件時(shí),節點(diǎn)首先進(jìn)入預休眠狀態(tài),從預休眠狀態(tài)延時(shí)一段時(shí)間再進(jìn)入總線(xiàn)休眠狀態(tài)。在預休眠狀態(tài)下,節點(diǎn)停止網(wǎng)絡(luò )管理報文和應用報文的發(fā)送,但是可以進(jìn)行ACK的應答活動(dòng),用以監控總線(xiàn)網(wǎng)絡(luò )需求。當定時(shí)器到時(shí)進(jìn)入總線(xiàn)休眠狀態(tài)后,關(guān)閉總線(xiàn)活動(dòng)。3個(gè)主要網(wǎng)絡(luò )狀態(tài)的轉移過(guò)程如圖2所示。
圖2 網(wǎng)絡(luò )休眠與喚醒狀態(tài)處理策略
3.2 網(wǎng)絡(luò )喚醒狀態(tài)
當總線(xiàn)處于網(wǎng)絡(luò )喚醒狀態(tài)時(shí),包含3個(gè)子狀態(tài):重復報文狀態(tài)、正常模式狀態(tài)和休眠準備狀態(tài)。而重復報文狀態(tài)又包含報文快速發(fā)送狀態(tài)和正常發(fā)送狀態(tài)兩種。如上文提到,當在總線(xiàn)休眠狀態(tài)接收到應用程序喚醒需求或者網(wǎng)絡(luò )通信需求時(shí),節點(diǎn)從總線(xiàn)休眠狀態(tài)進(jìn)入喚醒狀態(tài)。當接收到應用程序喚醒需求時(shí),節點(diǎn)進(jìn)入重復報文狀態(tài)中的報文快速發(fā)送狀態(tài),當接收到網(wǎng)絡(luò )通信需求時(shí),節點(diǎn)進(jìn)入重復報文狀態(tài)中的報文正常發(fā)送狀態(tài)。當節點(diǎn)進(jìn)入報文快速發(fā)送狀態(tài)時(shí),會(huì )開(kāi)啟定時(shí)器,當定時(shí)器到時(shí)后,節點(diǎn)從報文快速發(fā)送狀態(tài)進(jìn)入報文正常發(fā)送狀態(tài)。節點(diǎn)進(jìn)入重復報文狀態(tài)后會(huì )開(kāi)啟另一定時(shí)器,定時(shí)器到時(shí)后,節點(diǎn)從重復報文狀態(tài)退出。當網(wǎng)絡(luò )需要繼續進(jìn)行CAN通信,節點(diǎn)從重復報文狀態(tài)進(jìn)入正常模式狀態(tài)。當網(wǎng)絡(luò )不再需要進(jìn)行CAN通信,節點(diǎn)從重復報文狀態(tài)進(jìn)入休眠準備狀態(tài)。在正常模式狀態(tài)下,若需要與網(wǎng)絡(luò )上的其他節點(diǎn)繼續通信時(shí),需要保持在正常模式,若不再需要網(wǎng)絡(luò )通信,節點(diǎn)從正常模式狀態(tài)進(jìn)入休眠準備狀態(tài)。進(jìn)入休眠準備狀態(tài)后需要停止網(wǎng)絡(luò )管理報文和應用報文的發(fā)送。網(wǎng)絡(luò )喚醒狀態(tài)的轉移過(guò)程如圖3所示。
圖3 網(wǎng)絡(luò )喚醒狀態(tài)處理策略
3.3 CAN Bus-off狀態(tài)
CAN網(wǎng)絡(luò )管理需要考慮Bus-off狀態(tài)下的處理策略。當檢測到總線(xiàn)處于Bus-off狀態(tài)時(shí),停止網(wǎng)絡(luò )報文和應用報文的發(fā)送,并開(kāi)啟定時(shí)器BusOffRecoveryCounter。定時(shí)器大小由Bus-off具體的快慢恢復策略決定。當定時(shí)器到時(shí)后,網(wǎng)絡(luò )進(jìn)入喚醒狀態(tài)。若Bus-off狀態(tài)進(jìn)入之前網(wǎng)絡(luò )已經(jīng)處于喚醒狀態(tài),則退出Bus-off狀態(tài)后,具體進(jìn)入喚醒狀態(tài)的哪個(gè)子狀態(tài)由之前的歷史狀態(tài)確定。
3.4 電壓狀態(tài)
網(wǎng)絡(luò )管理需要在正常電壓模式下進(jìn)行工作。當總線(xiàn)處于總線(xiàn)休眠狀態(tài)或者預休眠狀態(tài)時(shí),檢測到應用程序的喚醒需求或者網(wǎng)絡(luò )通信需求時(shí),需要確認當前電壓處于正常電壓狀態(tài)才會(huì )退出當前狀態(tài),進(jìn)入網(wǎng)絡(luò )喚醒狀態(tài)。當總線(xiàn)處于網(wǎng)絡(luò )喚醒狀態(tài)時(shí),檢測到電壓處于過(guò)低或過(guò)高電壓狀態(tài),則退出網(wǎng)絡(luò )喚醒狀態(tài)進(jìn)入預休眠狀態(tài)。
3.5 網(wǎng)絡(luò )管理的策略實(shí)現
在上述策略中詳細描述了網(wǎng)絡(luò )管理的狀態(tài)轉移過(guò)程,本文通過(guò)Stateflow的狀態(tài)機進(jìn)行實(shí)現,程序中的具體策略如圖4所示。
圖4 AUTOSAR網(wǎng)絡(luò )管理處理策略
4 測試
網(wǎng)絡(luò )管理策略實(shí)現之后,在CANoe上對其功能進(jìn)行驗證測試。接收到本地喚醒需求時(shí)的測試結果如圖5所示,待測試節點(diǎn)ID為0x439。當接收到本地喚醒事件后,節點(diǎn)0x439從總線(xiàn)休眠狀態(tài)進(jìn)入網(wǎng)絡(luò )喚醒狀態(tài)中的報文快速發(fā)送狀態(tài),以20ms的發(fā)送周期快速發(fā)送網(wǎng)絡(luò )管理報文,發(fā)送完成10幀網(wǎng)絡(luò )管理報文后,報文快速發(fā)送狀態(tài)定時(shí)器到時(shí),進(jìn)入到正常發(fā)送狀態(tài),按照500ms的發(fā)送周期發(fā)送網(wǎng)絡(luò )管理報文。
圖5 本地喚醒策略測試結果
接收到網(wǎng)絡(luò )通信需求時(shí)的測試結果如圖6所示,待測試節點(diǎn)ID為0x439。當被網(wǎng)絡(luò )中的0x43A節點(diǎn)喚醒后,節點(diǎn)0x439從總線(xiàn)休眠狀態(tài)進(jìn)入網(wǎng)絡(luò )喚醒狀態(tài)中的正常發(fā)送狀態(tài),并發(fā)出第1幀網(wǎng)絡(luò )管理報文,之后按照500ms的發(fā)送周期發(fā)送網(wǎng)絡(luò )管理報文。發(fā)送完成3幀網(wǎng)絡(luò )管理報文后,正常發(fā)送狀態(tài)定時(shí)器到時(shí),進(jìn)入到正常模式狀態(tài),正常模式狀態(tài)與重復報文狀態(tài)中的正常發(fā)送狀態(tài)報文周期相同,同樣按照500ms的發(fā)送周期發(fā)送網(wǎng)絡(luò )管理報文。
圖6 網(wǎng)絡(luò )喚醒策略測試結果
5 結論
在本文中,介紹了基于A(yíng)UTOSAR標準的域控制器進(jìn)行網(wǎng)絡(luò )管理的實(shí)現過(guò)程,包括AUTOSAR CAN網(wǎng)絡(luò )管理報文格式,網(wǎng)絡(luò )休眠與喚醒的狀態(tài)轉換、網(wǎng)絡(luò )喚醒狀態(tài)中的各個(gè)子狀態(tài)的切換、CAN Bus-off狀態(tài)下的處理策略以及非正常電壓模式下的處理策略等,通過(guò)Stateflow的狀態(tài)機進(jìn)行實(shí)現,并在CANoe上進(jìn)行了驗證。測試結果表明所述策略能夠實(shí)現網(wǎng)絡(luò )管理的各項功能。
參考文獻:
[1]節能與新能源汽車(chē)技術(shù)路線(xiàn)圖戰略咨詢(xún)委員會(huì ),中國汽車(chē)工程學(xué)會(huì ).節能與新能源汽車(chē)技術(shù)路線(xiàn)圖(智能網(wǎng)聯(lián)汽車(chē)技術(shù)路線(xiàn)圖專(zhuān)題)[M].北京:機械工業(yè)出版社,2020.
[2]中國智能網(wǎng)聯(lián)汽車(chē)產(chǎn)業(yè)創(chuàng )新聯(lián)盟,華為技術(shù)有限公司,中國汽車(chē)技術(shù)研究中心有限公司,等.智能網(wǎng)聯(lián)汽車(chē)產(chǎn)品測試評價(jià)白皮書(shū)(2020年)[C]//CICV 2020,10:5.
[3]張曉謙,李巖,孫忠剛,等.智能汽車(chē)綜合控制系統基礎軟件架構分析[J].汽車(chē)零部件,2016(12):74-76
[4]PELZ G,OEHLER P,FOURGEAU E,et al.Automotive System Design and Autosar[J].Springer US,2004:293-305.
[5]戎輝,王曉靜,汪春華,等.基于OSEK標準的直接網(wǎng)絡(luò )管理功能的策略實(shí)現[J].電子測量技術(shù),2017,40(2):162-165.
轉自智能汽車(chē)設計