摘要:本文采用MATLAB開發汽車智能啟動系統,通過Matlab statflow對智能啟動系統的所有邏輯進行建模,將啟動邏輯分為無鑰匙進入,無鑰匙啟動,鑰匙定位和認證三部分,用圖形化的編程方式實現邏輯。在進行實車測試前,先在MATLAB的仿真環境下進行仿真測試,確認邏輯全部實現后通過MATLAB生成嵌入式代碼,最后進行實車驗證,通過這種開發方法能夠大大減小測試時間,提高開發效率和代碼質量,減少代碼維護成本。
關鍵詞:智能啟動;PEPS;MATLAB;Auto code
1.引言
針對PEPS控制器的復雜功能和安全設計要求,本文提出一種基于模型開發PEPS的系統方案設計,通過MATLAB STATEFLOW對PEPS控制器的所有功能邏輯進行建模,將復雜的功能分割成不同的功能模塊,再對各個子功能模塊建立模型,并且在MATLAB的環境下對設計的各個子功能模型進行仿真驗證,確保所有的模型設計都滿足設計方案,之后再在實車上對功能進行驗證,通過這種開發方法能夠大大減小測試時間,提高開發效率和代碼質量,減少代碼維護成本,同時提高產品的安全性能。
2.系統功能
PEPS系統允許用戶在不直接操作智能鑰匙的前提下,實現靠近車輛時對車門進行解鎖,閉鎖,進入車輛后進行一鍵式啟動,在用戶離開車輛時車門自動上鎖等功能。
(1)智能進入(Passive Enter)功能描述
解鎖:用戶攜帶智能鑰匙,將手探入車門的門拉手內,門拉手將解鎖命令發送給PEPS,PEPS根據用戶操作的區域驅動天線對鑰匙進行定位,確認鑰匙合法并且鑰匙在車外,PEPS控制器發送解鎖命令給車身控制器BCM,BCM驅動電機進行解鎖操作
閉鎖:用戶攜帶智能鑰匙,接觸車門上的閉鎖觸摸開關,門拉手將閉鎖命令發送給PEPS,PEPS根據用戶操作的區域驅動天線對鑰匙進行定位,確認鑰匙合法并且鑰匙在車外,在四門,兩蓋(引擎蓋、后備箱蓋)都關閉的情況下,PEPS控制器發送閉鎖命令給車身控制器BCM,BCM驅動電機進行閉鎖操作
(2)智能啟動(Passive start)功能描述
本地啟動:用戶攜帶自能鑰匙進入車內,在發動機處于熄火狀態,當前車輛檔位處于P或N檔時踩下制動踏板并按下一鍵啟動開關,PEPS控制器會驅動低頻天線發送喚醒智能鑰匙信號(125KHz),當智能鑰匙收到喚醒信號時,會將自身的場強強度通過高頻信號傳回PEPS控制器,PEPS控制器根據鑰匙傳回的場強值與標定數據進行比對,確認鑰匙是否在車內,當確認鑰匙在車內后,PEPS控制器與ESCL進行加密認證,認證通過后,PEPS控制器發送啟動請求給發動機控制器(EMS)進行啟動。
遠程啟動:用戶可以通過手機APP對車輛進行啟動操作,用戶操作手機APP發送啟動請求,通過無線網絡,手機將啟動請求發送到T-Box模塊,T-Box模塊接收到手機發送的啟動請求后,會與PEPS進行加密的認證,當加密認證通過后,PEPS會把這個啟動請求發送給發動機控制器(EMS),發動機控制器(EMS)將發動機啟動。
3.模型的設計與仿真測試
3.1 模型的設計
(1)智能進入(Passive Enter)模型設計
我們首先將智能進入的模型分為4部分,第一部分用來對底層或CAN網絡輸入的信號進行處理,提取有效信息。第二部分用來觸發對鑰匙的認證請求,根據第一部分提出出來的有效信息,如果檢測到用戶在對門把手進行操作,此時需要對用戶攜帶的鑰匙進行認證,已確認鑰匙的合法性。第三部分用來觸發對鑰匙的定位,在進行解閉鎖的操作前需要確認鑰匙是否在車外。第四部分為睡眠模塊,當沒有人去對汽車進行智能進入操作時,車輛需要進入睡眠狀態,來減少電量的消耗。
(2)遠程啟動(Remote Start)模型設計
我們將遠程啟動的模型分為3個部分,第一部分用于接收T-Box通過CAN網絡傳遞給PEPS的加密認證數據,第二部分用于提取PEPS存放在EEPROM中的SK碼,第三部分實現認證算法。
在進行模型設計時通過將功能劃分成不同的模塊,去實現單個的簡單功能,再將多個模塊組合起來實現一個完整功能,這樣可以減少模型的復雜度,同時在進行模型設計過程中,由于單個模塊的功能較為簡單,減少了代碼出現Bug的可能。
3.2模型的仿真測試
在MATALB開發環境中,能夠對已建好的模型進行仿真測試,已確認是否滿足預期需求。首先建立測試模型,在原有的模型基礎上加入SCOPE 和SIGNAL BUILDER兩個組件,SIGNAL BUILDER組件可以用來模擬輸入信號,以及預期的輸出信號,SCOPE可以用來觀測實際輸出信號是否與預期輸出信號相同。然后編寫測試用例,測試用例需要盡可能的覆蓋到模型的每個判斷條件和執行路徑。在運行仿真測試后,MATLAB會輸出一個測試覆蓋度報告,里面會將測試用例沒有覆蓋到的條件和路徑都列舉出來,之后可以依據覆蓋度報告更新測試用例。同時MATLAB提供了每個信號的監控接口,可以通過M腳本的方式,將每條測試用例的執行結果通過腳本保存到文檔當中,可以提高仿真效率,不用每條用例都自己比對結果。
4.結論
針對智能啟動系統的復雜功能和安全設計要求,本文提出的基于MATLAB開發汽車智能啟動系統的設計方案,
能夠很好的實現啟動系統的各個功能,并且基于圖形化的設計方法,提高了代碼的質量和可維護性。由于能夠在開發的過程中就對每個子功能進行仿真測試,提高了產品的安全和可靠性。
參考文獻:
[1]威廉.快速成長的中國汽車電子產業[J].電子與電腦,2006年04期
[2]李伯成.嵌入式系統可靠性設計[M].北京:電子工業出版社,2006.1
個人簡介:李偉民,男,1991-,漢,籍貫江西,就職單位:LEAR,無職稱,本科學歷,主要研究:汽車零部件軟件開發。