劉新磊,程增木
(山東交通學院,山東濟南,250300)
?
基于MATLABSimulink的純電動汽車整車控制系統開發方法研究
劉新磊,程增木
(山東交通學院,山東濟南,250300)
摘要:介紹了一種基于MATLABSimulink環境下的純電動汽車整車控制系統的軟硬件設計方法。概述了基于Simulink開發平臺下建立純電動汽車控制模型及整車硬件控制系統,并利用Real Time Workshop Embedded Coder對飛思卡爾HCS12X系列單片機快速開發的方法,進行了實驗。結果表明:使用MATLAB會加快純電動汽車整車控制器的開發速度。本方法對純電動汽車的整車控制系統開發和設計具有參考意義。
關鍵詞:純電動汽車;整車控制;MATLAB/Simulink;飛思卡爾;單片機
在電動汽車行業發展的過程中,傳統的汽車嵌入式開發的過程需要整車開發人員不僅需要懂嵌入式軟件開發的應用層,還需要懂得芯片相關底層的開發,這無疑增加了開發人員的負擔,整車控制器開發的周期會加長[1]。MATLAB是美國MathWorks公司出品的商業數學軟件,其Simulink模塊廣泛應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。對于開發純電動汽車整車控制器,開發人員可以在Simulink環境下建立控制模型并進行仿真,當仿真結果符合開發人員要求時,使用Embedded Coder技術可以直接生成在產品級代碼。該工具可以在可視化動態交互平臺上直接應用。因此,使用Simulink的Real Time Workshop Embedded Coder工具可大大縮短開發周期,加快開發進程。
純電動汽車整車控制器是純電動汽車的核心組成成分,它決定著純電動汽車在行駛過程中的一系列策略,是純電動汽車的大腦[1]。其主要功能[1]如下:
(1)應答與處理:接收駕駛員的指令,對指令進行處理,向其他控制器發出控制指令,協調處理各個控制模塊的反饋信息。
(2)能源管理:在純電動汽車中,實時反饋蓄電池的工作狀態。保證汽車的正常行駛并同時反饋電量信息給駕駛員。
(3)機構驅動:純電動汽車整車控制器控制驅動電機、電子助力轉向等行駛機構,對其模擬狀態量進行連續采集并經A/D轉換為數字信號,供其他模塊處理與使用。
(4)狀態判斷:對純電動汽車出現的故障進行判斷與存儲,動態地采集與檢測狀態信息,并進行記錄。
(5)自動保護:對純電動汽車出現的故障進行分級,根據故障程度進行分級保護與自動處理,保證電動汽車的安全性。
Simulink模塊支持多種嵌入式單片機,其操作簡便,具有極好的移植性。在Simulink工作環境下,嵌入式系統開發[2,9]的流程如圖1所示。
2.1需求分析階段
本階段主要需要相關工程人員根據技術要求文檔建立相應的精準的Simulink數學模型[3]。開發人員可以依據動態數學模型進行參數的修訂、對動態系統進行初步的評估。本階段主要是為了確定系統算法的可行性,保證系統可以運行在在設計要求之內。

圖1 開發流程
2.2解析模型階段
2.2.1模型的構析
需求分析結束后,Simulink在構析階段掌握了整個程序模型的結構、各個模塊間的先后執行順序、各個模塊的參數配置和采樣時間等重要信息,技術人員需要對構析的數據庫進行分析。
2.2.2TCL文件
TCL[4]語言類似于c/c++的腳本語言,用RTW代碼生成體系支持不同的MCU,不同的MCU又有自己的相應的TCL文件。開發人員可以使用RTW自帶的模板,也可以自己創建自定義模塊,TCL文件可以自動優化代碼。專用算法和設備驅動程序同樣也可合并到模型代碼中。使用S-Function Builder模塊可以自動生成用于用戶自定義代碼的TCL文件。
2.3代碼生成及編譯連接
在完成相關TCL文件的配置之后,MATLAB/Simulink即可自動生成高級語言的代碼,同時會結合生成的MakeFile[4]文件(.mk)來控制編譯鏈接過程。運用于目標硬件相對應的編譯工具和鏈接工具即可在目標平臺上運行代碼。如果在程序模型中配置了用戶自定義的源代碼和用戶自定義的庫函數文件,在編譯鏈接階段這些源代碼和庫都將被編譯并且鏈接。在編譯過程中,Embedded Target產品會調用內部已有MCU庫,自動獨立生成與目標MCU相關的底層函數。
3.1控制器的選擇
MATLAB(2009b)版本支持Freescale HCS12X系列處理器,HCS12X[5]系列單片機是Freescale公司于2005年推出的HCS12系列增強型產品,基于S12 CPU內核的16位單片機,128KB程序Flash(P-lash)、8KB RAM、8KB數據Flash(D-lash),可以達到25MHz的HCS12的2-5倍性能。總線頻率最高可達40 MHz。HCS12X系列單片機可以工作從-40℃到125℃,完全可以滿足汽車的需求。此外,MATLABSimulink對HCS12X系列單片機有很好的驅動與底層支持,因此使用MATLAB Simulink可以很好的對HCS12X單片機進行開發。
3.2整車控制系統的抽象模型
HCS12X單片機主要功能模塊[5-6]包括:多個內部存儲器,內部PLL鎖相環回路,2個異步串口通訊SCI,1個串行外設接口SPI,雙通道MSCAN2.0模塊,1個8通道輸入/輸出比較定時器模塊TIM,周期中斷定時器模塊PIT,16通道A/D轉換模塊ADC,1個8通道脈沖寬度調制模塊PWM,多個輸入/輸出數字I/O口。
根據HCS12X系列單片機的這些特性,可以建立如圖2所示的純電動汽車整車控制模型[7]。
3.3整車控制系統的控制概述
在如圖2所示的控制模型中,純電動汽車由DC12/24 V電壓進行供電,由輸入電源模塊將DC12/24V電壓經穩壓、濾波轉換為DC12V、DC7.2V、DC5V、DC3.3V等多種電壓,為單片機和其他電器結構、驅動模塊、傳感器模塊供電。純電動汽車在行駛過程中,由多種傳感器將模擬信號采集回來,經AD轉換后反饋給HCS12X單片機,單片機根據相關數據進行處理并輸出,實現對汽車電機、汽車助力裝置[8]等模塊的控制。整車控制中,多機通訊[10]采用以CAN總線為主,LIN總線為輔的通信策略,保證數據的穩定性和可靠性。對于輸入與輸出電子電力問題,由HCS12X系列單片機控制電池管理系統,對電池進行合理管理可以保證電能的有效利用和電池的有效維護,保障純電動汽車的安全行駛。

圖2 整車控制系統的抽象模型
3.4純電動汽車前車燈控制系統的開發實例
在MATLABSimulink環境下搭建如圖所示的車燈控制系統[11],如圖3所示。

圖3 純電動汽車前車燈控制系統
圖3中In1、In2、In3、In4分別表示左轉向燈、右轉向燈、前近光大燈、前遠光大燈。Control logic為控制邏輯模塊,負責控制內部邏輯;sensor correction and Fault Redundancy1和sensor correction and Fault Redundancy2為傳感器校正和故障冗余模塊,負責傳感器的故障的檢查;Fuel Calculation為能源消耗計算模塊,負責對消耗的電能進行計算;XCP CANTransport Layer為CAN總線接收器,負責接收總線信號;Out為輸出模塊。對控制模型進行仿真,仿真無誤之后對模型進行構析,解析車燈在仿真時間內電能消耗等一系列參數。隨后進行TCL文件的配置與代碼的自動生成,點擊Generate Code即可生成本模型的代碼,并可直接移植至HCS12X系列單片機上使用。部分核心代碼塊如圖4所示。

圖4 本模型生成的部分核心代碼塊
代碼生成之后,利用Simulink中的scope觀察輸入與輸出模塊,汽車轉向燈輸入邏輯電平和輸出的邏輯電平分別如圖5、圖6所示。
對圖5、圖6分析可以得知:輸入頻率一定時,輸出模塊可以很好地響應輸入信號,MATLAB可以自動優化代碼進行軟件濾波,電平出現周期性跳變,產生相應頻率的輸出信號,證明由MATLAB生成的整車控制代碼可以穩定地運行。

圖5 汽車轉向燈輸入邏輯電平

圖6 汽車轉向燈輸出邏輯電平
本文介紹的這種基于MATLABSimulink的整車控制器開發方法可以有效的應用于汽車電子控制的開發上,讓開發人員擺脫不熟悉底層和硬件層開發的困境,加快開發人員的開發速度。同時,本文介紹的開發方法可以動態地將模型控制、數據仿真、算法控制、底層驅動完美的結合在一起,在今后汽車電子的開發過程中可以大大減小開發周期和開發成本。
參考文獻
[1]張翔.純電動汽車整車控制器進展[J].汽車電器,2011,(2):1.
[2]孫忠瀟.Simulink仿真及代碼生成技術從入門到精通[M].北京:北京航空航天大學出版社,2014:350-356.
[3]湯迎紅.MATALB基礎知識及工程應用[M].北京:國防工業出版社,2014:228-232.
[4]張戟,孫澤昌.基于PowerPC的32位微控制器原理[M].北京:電子工業出版社,2010:105-110.
[5]Freescale Semiconductor.MC9S12X Reference Datasheet.Freescale Reference,2007.
[6]魏學哲,戴海峰.汽車嵌入式系統原理、設計與實現[M].北京:電子工業出版社,2010:36-40.
[7]王貴明,王金懿.電動汽車及其性能優化[M].北京:機械工業出版社,2010:15-19.118-131.
[8]余志生.汽車理論[M].北京:機械工業出版社,2015:192-193.
[9]張祥,楊志剛,張彥生.MATLAB/Simulink模型到C/C ++代碼的自動實現[J].重慶工學院學報,2006,(20);112.
[10]王佳,蔡志標,楊建中.基于CAN總線純電動汽車整車控制器設計[M].北京:北京理工大學出版社,2007:59-81.
[11]王慧君.汽車電氣設備[M].北京:人民交通出版社,2014:120-132.
劉新磊(1981-),講師,工學博士。研究方向:新能源汽車與電驅動技術。
程增木(1996-),工學學士,研究方向:汽車MCU開發與汽車電機控制。
A Development of Pure Electric Vehicle Controller Based On MATLABSimulink
XinLei Liu,ZengMu Cheng
(ShanDong JiaoTong University,ShanDong,JiNan,250300,China)
Abstract:In this paper,a software and hardware design method of Pure Electric Vehicle Controller was introduced based on MATLABSimulink.A way of creating Pure Electric Vehicle Controller model and system of Vehicle hardware Controller was statemented.Meanwhile,using Real Time Workshop Embedded Code can quickly develop Freescale HCS12X family of microcontrollers.Finally,the outcome shows using MATLAB can accelerate the development of pure electric vehicle controller.This method of pure electric vehicle control system development and design has a reference value.
Key words:Pure Electric Vehicle;Vehicle Controller;MATLAB/Simulink;Freescale;Microcontroller
作者簡介:
DOI:工業技術創新 URL:http//www.china-iti.com10.14103/j.issn.2095-8412.2016.01.001
中圖分類號:U469.72
文獻標識碼:A
文章編號:2095-8412(2016)01-644-05