国产黄色在线观看网站_国产午夜免费_日本一区二区久久免费黑人精品_aaaa欧美_老色鬼视频77777av_欧美激情一区二区三级高清视频

400-821-6015
行業資訊
您當前的位置:首頁 ? 行業資訊 ? 行業資訊
內部資訊行業資訊

CP AUTOSAR 中的FOTA 技術棧

發布日期:2025-01-07
作者:不可說
出品:汽車電子與軟件

#01 CP與FOTA   

      FOTA(Firmware Over-The-Air)是一種通過無線網絡遠程更新車輛中的軟件的技術。

      隨著安全要求的不斷提升以及分布式、互聯功能帶來的軟件復雜性日益增加,車輛系統需要頻繁保持最新狀態。為了減少因軟件更新而帶來的耗時和重復前往維修廠的麻煩,應通過FOTA技術向車輛推送軟件更新。

      CP AUTOSAR對FOTA的支持主要體現在以下幾個方面:

       - 軟件包管理:CP AUTOSAR提供了一套豐富的軟件包管理功能,以支持FOTA。這些功能包括軟件包的下載、驗證、存儲和安裝。車輛可以通過無線網絡接收到新的軟件包,并使用CP AUTOSAR提供的安全機制進行驗證,以確保軟件包的完整性和可靠性。驗證通過后,軟件包可以被存儲在車輛的存儲器中,準備進行更新。

       - 更新過程執行:CP AUTOSAR定義了FOTA更新過程的執行流程。這包括檢測新的軟件包、下載軟件包、安裝軟件包以及更新后的驗證等步驟。在更新過程中,CP AUTOSAR提供了數據完整性和安全性的保障,以確保軟件包的正確性和可靠性。

      不過,CP AUTOSAR自身是不直接支持OTA的。這意味著要更新在CP AUTOSAR上運行的應用程序,就必須更新整個ECU的代碼。通過其他控制器對運行CP AUTOSAR的控制器進行更新,并不被視為CP AUTOSAR自身的OTA功能。             


#02 FOTA簡介  

      FOTA引入了一種通用機制,允許在車輛運行時更新ECU(電子控制單元)軟件。當當前ECU軟件正在執行且功能完全正常時,新的ECU軟件應在后臺進行打包準備。在安裝過程中,必須驗證新軟件的真實性和完整性。一旦驗證通過,ECU應能啟用新的軟件版本。不過,軟件的啟用需要ECU進入一種特殊模式,因此在車輛行駛過程中不得啟動或執行新軟件的啟用操作。啟用新軟件應在確保車輛安全的狀態下進行,比如車輛靜止、發動機熄火且已施加駐車制動時。

      如果在啟用新軟件的過程中或之后發現異?;蝈e誤,ECU應具備內部回滾功能,即能夠恢復到之前的軟件版本。這意味著之前的軟件會保留在ECU上,并可以隨時重新啟用。          

      不同的無線技術(UMTS、LTE、藍牙、WiFi、5G)可用于將車輛連接到后端/云系統,以提供將軟件下載到車輛的能力。通過CAN、CAN-FD、Flexray或汽車以太網等車輛總線,將新軟件分發到需要更新的目標ECU。          

      如今,大多數ECU都具備更新升級功能。通常,這種軟件更新的實現接口采用閃存引導加載程序的形式,并且支持通過OTA技術更新主ECU??梢酝ㄟ^將軟件更新任務從外部診斷儀發送到已連接的車載ECU(作為OTA-Master)上,來實現無線的軟件更新。從目標ECU的角度來看,無論是通過傳統的診斷儀還是通過OTA-Master進行更新,整個過程都十分便捷。          

      這種方法涉及幾個重要方面,需要在實施過程中仔細考慮(以下針對單分區升級方案):

      首先,從功能角度來看,在整個軟件更新過程中,目標ECU將無法正常運行,這通常意味著整個車輛在軟件更新期間會處于不可用狀態。   
      其次,在分布式電子電氣架構中,由于多個ECU需要在一次更新活動中同步更新,與單獨更新一個ECU相比,車輛的不可用時間可能會更長。
      再者,如果在安裝新軟件的過程中或之后出現問題,雖然可以通過OTA主控端啟動并重新安裝之前的軟件來進行修復,但這一操作會進一步延長車輛的不可用時間,并有可能導致ECU功能完全失效。
      此外,如果需要進行軟件回滾,那么與更新相關的所有依賴ECU也必須同步進行回滾操作。
      最后,采用這種方法時,我們還需要特別注意電池的剩余容量,以確保更新過程的順利進行。


#03 FOTA流程  

      FOTA的整體更新過程可分為幾個階段,可以參考如下圖示:

圖片
FOTA升級過程圖示

      1. Update  

      術語“(FOTA)update”用于表示 ECU 的整個更新過程(如果是其他依賴 ECU 更新,則表示多個 ECU)。它包含下面描述的所有任務,例如download, installation, verification, activation等。如有必要,可以將回滾功能視為更新過程的一部分。

      2. Download  

      下載鏡像是指將FOTA目標ECU的完整更新所需的ECU軟件、數據和配置從后端服務器傳輸到FOTA主節點,即FOTA的Master ECU。   

      3. Installation  

      Installation是指將待更新的ECU軟件從FOTA主節點ECU轉移到FOTA目標ECU。由于一次將整個ECU軟件完全傳輸到FOTA目標ECU并不方便,因此該過程是使用數據塊實現的。當沒有更多塊要傳輸到FOTA目標ECU并且所有塊都已成功寫入內存堆棧時,安裝過程就完成了。
      此外,安裝過程還包括FOTA目標ECU內的flash驅動程序將軟件實際寫入非活動目標分區。

      4. Verification  

      Verification驗證過程是要確保更新的ECU軟件的正確性。這只會影響相應FOTA目標ECU中的普通ECU軟件(例如鏡像或者差異化更新)。

      5. Activation  

      Activation激活過程是ECU引導分區的實際啟動操作。對于采用不可切換內存架構的ECU,比如那些使用外部閃存或固定多分區內存的ECU,這個過程還涉及到從臨時存儲(例如外部閃存)到內部閃存的復制。一旦確認了前一個ECU軟件版本的備份,激活過程即告完成。新安裝的軟件必須在車輛處于安全狀態時才能最終激活,開發者有責任確保車輛在這種安全狀態下進行操作。

      6. Rollback  

      在回滾過程中,必須恢復之前運行軟件的所有ECU和用戶數據。回滾完成后,ECU軟件和用戶數據必須與整個更新過程開始之前沒有差異。   


#04 FOTA技術架構

 圖片

FOTA 流程中所有相關組件和模塊的架構概述

      整體 FOTA 架構設計如上圖所示,包括:

      - FOTA Target ECU

      它接收從 FOTA Master刷寫的 ECU 軟件,并將軟件寫入到內存堆棧(實際的 ECU 軟件燒錄過程);

      - FOTA Master ECU

      緩存所有新的 ECU 軟件工件,以發送到 FOTA 目標 ECU;

      - 后端服務器

      為 FOTA Master ECU 提供要安裝到 FOTA Target ECU 的鏡像;


      1. FOTA Target ECU  

      由于FOTA處理程序規范目前仍在發展階段,尚未涵蓋和明確定義所有功能,因此現階段將其視為CDD。如果未來FOTA的功能集增長到足夠復雜,足以構成一個獨立的BSW模塊時,AUTOSAR可能會考慮定義FOTA BSW模塊。   由于 AUTOSAR Dcm 模塊實現了UDS診斷協議,因此直接提供了許多有用的功能以實現FOTA功能。對于FOTA程序,可以有如下的功能實現:

      - 會話處理

      - 安全訪問

      - 身份驗證

      - 服務處理(用戶工作),例如:

        0x22/0x2E Read/WriteDataByIdentifier

        0x31 路由控制

        0x34 RD/0x36 TD/0x37 TE(請求下載/傳輸數據/傳輸退出)

        錯誤處理

        檢查更新升級條件

        重置/重啟 ECU

      Nv Data
      在AUTOSAR中,NvM模塊主要負責管理數據閃存,包括用戶數據、標定數據、錯誤記錄、快照以及ECU軟件的其他運行時數據。這些數據會被組織成所謂的NvDataBlock。NvM模塊提供了功能接口,允許讀取、寫入或刪除這些數據塊。
      為了遷移或修改NvData,應當使用NvM模塊提供的功能,而不是直接操作數據閃存。這是因為FOTA(固件空中升級)的Master和Target端都不應直接與數據閃存交互,以防止數據受到干擾、阻塞或損壞。
      如果數據發生變化,例如影響到NvData或用戶數據的遷移,這些變化需要由實施者進行處理。
      然而,為了安全地存儲與FOTA進程相關的信息(如當前FOTA進程狀態、FOTA處理程序上次成功寫入的內存地址等),并確保這些信息在中斷期間能夠持續存在,應使用NvM模塊來處理這些(FOTA特定的)用戶數據。             

      2. FOTA Master (UCM-Master)  

      FOTA Target ECU 需要與相應的主節點通信,以便接收 FOTA 鏡像數據。此 Master 實例必須存儲車輛網絡中所有相關 ECU 的鏡像數據,數據量突然不會少。
      通常,Classic Platform所針對的嵌入式ECU在內存、存儲及計算能力上資源較為有限。因此,一種可行的方案是將FOTA Master實例的職責轉移到資源更豐富的AP平臺上的ECU中。
      與 FOTA Target ECU 通信的實現目前由更新和配置管理模塊(UCM,Update And Configuration Management)完成。這將產生以下邏輯體系結構:
圖片

      3. Backend  

      后臺FOTA服務器Backend 實例表示要更新的車輛的初始鏡像程序和通知接口。有關可用新軟件的通知可以從后端實例觸發到車輛,或者車輛自行決定何時詢問是否有新軟件可用(輪詢方法)。但是,如果車輛網絡中一個或多個 ECU 的新軟件可用,則啟動鏡像拉取過程并將鏡像存儲在車輛內的適當位置(例如 FOTA Master)。后臺服務器還必須提供有關與其他軟件包的依賴關系的信息。車輛可以與后臺服務器共享有關 FOTA 流程的狀態和更新進度信息,以便進行分析和診斷。       



#05 FOTA內部狀態   

      FOTA Handler 模塊需要在處理 FOTA 鏡像期間處理并指示所有不同的狀態。這還包括恢復中斷(例如由于駕駛周期更改)或暫停(例如通過更高優先級的診斷請求)。為了將此信息提供給啟動和觸發 FOTA 程序的 FOTA Master,應實現診斷服務,從 FOTA Target 的角度提供和更新安裝程序的當前狀態。這些不同的狀態應通過以下狀態來反映:

       - IDLE  ECU啟動程序后FOTA Handler的初始狀態

       - INIT  FOTA處理程序已初始化,Dcm已設置為正確狀態(在Dcm FOTA會話中,已授予安全訪問權限)。

       - READY  所有FOTA數據塊均已完成安裝,可以觸發激活程序。

       - PROCESSING  FOTA Handler由Dcm調用觸發,因為新塊已被接收并正在處理。

       - WAIT  FOTA處理程序已成功處理最后一個接收到的數據塊,返回了Dcm函數返回值,并正在等待下一個數據塊。

       - VERIFY  自行設定如何驗證數據包,CP對這方面沒有具體的約定。

       - ACTIVATE  FOTA安裝已完成,并從FOTA Master收到相應的工作指令,該指令指示下一次啟動過程中的分區切換。   

       - ERROR  可以反饋Target的錯誤狀態,根據實際情況自已進行定義,CP對這方面沒有具體的約定。          

      上述所有狀態應有助于保持FOTA Target狀態,從而保持整個FOTA更新過程的確定性、可靠性和可恢復性。這將導致一個狀態機來處理FOTA更新,如圖所示:


圖片


FOTA狀態機



#06 小  結     

      AUTOSAR CP中的FOTA流程是一種在運行時更新ECU軟件的機制,它通過無線技術將新軟件下載到車輛上,并在后臺進行安裝和驗證,以減少車輛停機時間并提高軟件更新效率。FOTA技術架構包括FOTA目標ECU、FOTA主機和后端等組件,通過一系列步驟實現軟件的下載、安裝、激活和回滾等功能。內部狀態機則管理FOTA過程中的各種狀態轉換,確保軟件更新的可靠性和安全性。

上海創程車聯網絡科技有限公司版權所有 滬ICP備11045498號-1   技術支持:網站建設
主站蜘蛛池模板: 镇江市| 松潘县| 乌拉特后旗| 秭归县| 喀什市| 平和县| 东乡族自治县| 酉阳| 托克逊县| 寿宁县| 昭觉县| 营口市| 台州市| 杭锦旗| 中方县| 江西省| 济南市| 乌兰县| 常熟市| 河间市| 屯留县| 阿合奇县| 镇赉县| 镇沅| 香河县| 江安县| 湖南省| 涿鹿县| 兰州市| 静安区| 旺苍县| 松滋市| 余干县| 汉寿县| 恩施市| 肥西县| 英德市| 南郑县| 东辽县| 淮滨县| 台东市|