siemens x
技術(shù)

車輛快速開發(fā)系統(tǒng)閉環(huán)模擬方法

2025China.cn   2009年02月27日

來源:

1 概述

 

計算機技術(shù)的發(fā)展,車輛上的控制系統(tǒng)變得越來越復雜,因而控制算法變得也非常復雜,所以控制系統(tǒng)開發(fā)的主要工作是內(nèi)部的控制算法的開發(fā)。我們知道近幾年國外先進的開發(fā)過程是呈V 字形,它分為下面幾個階段[1]

 

(1) 系統(tǒng)設(shè)計建模與離線模擬

 

在這一階段主要驗證控制算法與概念,驗證系統(tǒng)的可行性,使用MATLAB/Simulink 軟件可以很容易實現(xiàn)控制算法并進行系統(tǒng)建模,這些模型可以同樣應(yīng)用于實時硬件模擬。

 

(2) 系統(tǒng)原型實施

 

這一階段仍是采用PC 計算機或功能較強的計算機,如DSP。將系統(tǒng)的硬件信號加入到模擬系統(tǒng)中,從而實現(xiàn)真實的物理系統(tǒng)。可以采用MATLAB 工具箱,例如RTW xPC 等。很容易在PC 計算機中實現(xiàn)實時硬件控制。例如可以直接用PC 計算機對車輛進行控制驗證。

 

(3) 目標代碼產(chǎn)生

 

目標代碼的產(chǎn)生是最困難的一步,可以采用專用的工具如Targetlink,它可以從Simulink 可視化算法直接轉(zhuǎn)化為C 代碼,MATLAB/Simulink 中的實時嵌入式代碼生成器工具箱也具有這類功能。但生成可用于大量生產(chǎn)的實用代碼還要作較多的修改,或許要嵌入較多的用戶手工代碼。

 

(4) 實時硬件模擬

 

這一步驟是驗證控制器硬件和軟件算法,它的環(huán)境與實車比較類似,其相似程度取決于模擬模型與實際車輛的差別。如果模型比較準確,則經(jīng)過這一系統(tǒng)驗證后再到實車試驗,其工作量就降低到最少,但一般情況下模型與實車都存在較大差距,所以仍需要較多的工作。

 

(5) 系統(tǒng)驗證與調(diào)試

 

這一過程是將控制系統(tǒng)在實車上進行驗證并進行系統(tǒng)的標定及參數(shù)修改等工作。如果前面的工作比較完善,則這一步的工作量就可以減少,并節(jié)省時間與費用。這一過程是一個一般的過程,但也存在下面幾個方面的不足。

 

1) 傳統(tǒng)的開發(fā)大多采用模擬的方法,純軟件模擬可以部分地驗證控制算法,但大部分的純模擬控制算法都是運行在PC 計算機上。利用通用的編程工具如VCVB、MATLAB/SIMULINK,它們都是采用浮點數(shù)運算,也不必顧及內(nèi)存空間的大小。這種模擬當?shù)玫嚼硐氲慕Y(jié)果后再向目標計算機上進行移植,這種目標計算機往往要進行產(chǎn)業(yè)化生產(chǎn),要求有較高的性能價格比,所以它的內(nèi)存空間較小,同時采用整形數(shù)。模擬驗征很好的代碼一旦移植到這種目標計算機。由于上述差距的存在就會使控制算法的性能大大降低,這往往需要用戶重新進行構(gòu)造控制算法,這樣就導致開發(fā)效率降低,那么最好是從一開始就使目標計算機參與到系統(tǒng)上來。

 

2) 實時硬件閉環(huán)模擬是一種非常好的工具,目前在開發(fā)過程被大量的使用。它可以有效地驗證控制器的軟硬件系統(tǒng),但這種系統(tǒng)在實際使用中事實上主要是驗證控制算法。硬件的驗證只要沒有故障,則在以后的工作中就不會再有什么作用。

 

3) 實時硬件模擬驗證只是在實驗室內(nèi)進行,如果拿到實車上就很不方便,特別是一些混合模擬由于設(shè)備龐大,很難拿到車輛上。在實際車輛上調(diào)試ECU 控制代碼時要進行很多算法修改及參數(shù)的調(diào)整,這種修改與調(diào)整有些可能對算法的影響是很大的,有些情況可能會使控制失效。這樣就需要再回到試驗室中用實時硬件模擬再去驗證算法,反反復復這樣調(diào)試就會耗費比較多的時間。

 

4) 好的開發(fā)環(huán)境應(yīng)該將這些過程集成到同一個環(huán)境下,如果系統(tǒng)要在不同的系統(tǒng)中切換,勢必造成移植的困難。

 

基于在控制器開發(fā)過程中這幾個比較困難的事情,本文提出了實時軟件模擬方法以有效地解決上述系統(tǒng)的缺陷。

 

2 系統(tǒng)硬件

 

1 系統(tǒng)硬件框圖

 

為了實現(xiàn)從模擬到最終樣機的一體化集成開發(fā),采用高性能奔騰P4 嵌入式PC 作為主機,主頻1GHz,嵌入式PC 可以帶有電子盤。采用嵌入式系統(tǒng)具有下面的優(yōu)點:

 

1)系統(tǒng)是單板式結(jié)構(gòu),所以系統(tǒng)可靠性高。

2)采用PC104 總線,具有抗振性,且體積也比較小。

3PC 計算機性能高,可以作為模擬用主機,即直接用MATLAB/SIMULINK 建模。

4)用PC 計算機可以利用它采用MATLAB 中的xPC 工具箱生成較小內(nèi)存的控制器代碼,然后內(nèi)置于主機板的電子盤中,形成可靠的基于PC 的控制系統(tǒng)。

5)采用嵌入式PC 體積較少,便于形成車載控制系統(tǒng)。

 

系統(tǒng)硬件包括下面幾個部分:

 

(1) PC 主板:嵌入式系統(tǒng),PⅢ或PIV 主機。

(2) 采集卡:PC104 總線,用于數(shù)據(jù)采集及系統(tǒng)控制。

(3) 仿真器:單片機仿真器主要用于控制器程序的調(diào)試,也可采用PC104 總線,這樣可以使開發(fā)系統(tǒng)一體化,并在一臺計算機上加以實現(xiàn)。

(4) 信號及驅(qū)動設(shè)備箱:這是一個專用信號調(diào)理箱,這種系統(tǒng)要根據(jù)車輛上應(yīng)用確定信號調(diào)整的類型及驅(qū)動類型,作為一個通用的系統(tǒng),采集驅(qū)動系統(tǒng)有如下功能:

 

1)A/D 采集 8 路:用于模擬量采集用調(diào)理箱,對信號進行放大,并規(guī)整變?yōu)?/SPAN>05V 電壓。

2)D/A 輸出 2 路:用于模擬量采集用調(diào)理箱,對信號進行放大,并規(guī)整變?yōu)?/SPAN>05V 電壓。

3)數(shù)字輸入:16 路,主要采集一些輸入信號,如開關(guān)量。

4)數(shù)字輸出:16 路,主要是一些驅(qū)動信號,如對電磁閥,通過調(diào)理箱對信號進行功率放大。

5)脈沖輸入采集,8 路,主要對一些速度信號進行采集,一般的采集卡很難準確進行采集,采用專用的采集卡,可以對脈沖進行準確的計算,信號調(diào)理箱則可以完成信號的整形放大等處理。

6)脈沖輸出,8 路,主要對一些速度信號進行模擬,一般的采集卡很難準確輸出脈沖,采用專用的采集卡,可以對脈沖進行準確的計算,信號調(diào)理箱則可以完成信號的方波轉(zhuǎn)換為正弦波等處理。

7) CAN 通信:共有15 個信息幀可以編程使用,CAN 標準為2.0B,CAN 通信參數(shù)可以定義。

 

另一種系統(tǒng)配置是采用筆記本電腦。PC 計算機固有的外設(shè)有串口、并口、USB 和網(wǎng)絡(luò)接口,串口由于通信速度慢,顯然不適于作采集數(shù)據(jù)。網(wǎng)絡(luò)接口由于與單片機的接口比較復雜,也不太適于作系統(tǒng)的數(shù)據(jù)交換與通信。USB和并口通信速度比較高,并且與單片機的接口也比較簡單,這樣可以外掛兩個獨立的外設(shè)。一般在我們的系統(tǒng)中一個作為單片機的仿真器用,一個作為采集卡構(gòu)成實時模擬系統(tǒng),這樣采用筆記本就增加了移動性,方便靈活。圖2 為這一系統(tǒng)的框圖。

 

2 筆記本PC 構(gòu)成的開發(fā)系統(tǒng)框圖

 

通過這一系統(tǒng)構(gòu)成一體化的開發(fā)測試系統(tǒng),即滿足下面幾項功能:

 

1)純模擬系統(tǒng):采用MATLAB 建模,進行控制系統(tǒng)的模擬。

 

2)集成單片機開發(fā)系統(tǒng):采用PC104 總線結(jié)構(gòu),控制算法直接生成C 代碼,并直接下載到單片機仿真器中運行,這樣可以實時修改控制算法,即可以在試驗室條件下進行,也可以在實車上進行調(diào)試。

 

3)集成測試系統(tǒng):利用PC104 采集卡可以對車輛非控制器參數(shù)進行采集,如壓力、速度等,用這些數(shù)據(jù)可以有效地對控制效果進行評估。

 

4)集成實時硬件模擬系統(tǒng):利用采集卡可以發(fā)出各種模擬的傳感器信號,如模擬量通過D/A 發(fā)出,脈沖信號通過PWM 信號發(fā)出。

 

5)集成的車載系統(tǒng):采用專用的計算機抗振機箱,整套系統(tǒng)可以直接放到車輛上進行ECU 的調(diào)試,調(diào)試過程中可以采集各種物理量,同時此系統(tǒng)可以進行各個階段的模擬。這種系統(tǒng)將軟件及硬件一體化,同時應(yīng)用于車輛控制系統(tǒng)各個開發(fā)階段,最有效地提高了設(shè)備的利用率,避免了開發(fā)環(huán)境的切換,從而可以縮短開發(fā)時間。圖3 為這一系統(tǒng)的外形圖。這一系統(tǒng)首先硬件實現(xiàn)了從模擬到系統(tǒng)的集成化,硬件是同一設(shè)備完成各個階段的開發(fā),下面要介紹的軟件也是一體化的。

 

3 開發(fā)系統(tǒng)外形圖

 

3 實時軟件模擬方法

 

系統(tǒng)軟件采用MATLAB 系統(tǒng)建立控制對象模型,即車輛模型?;旌峡刂破鞯哪P途涂梢孕纬杉兡M系統(tǒng),但這種純模擬系統(tǒng)可以采用統(tǒng)一的MATLAB 環(huán)境控制器模型,也采用SIMULINK 可視化模型,這是最初的模型。如果要使用MATLAB 中的工具箱,這類模型有一定的限制,如不能采用連續(xù)性模塊,采用嵌入式代碼生成器工具箱,可以將控制器子系統(tǒng)生成C 代碼,也可以采用專用的單片機代碼生成器生成C 代碼,如目前MATLAB 中已有Motorola MPC555、TI TMS320C6000、Infineon C167 系統(tǒng)單片機專用工具箱控制C 代碼的生成并可以控制C 代碼的編譯、連接,最后生成可執(zhí)行代碼。生成可執(zhí)行代碼后,可以將系統(tǒng)直接下載到目標單片機上,這時就可以用目標單片機直接對應(yīng)用對象即實際車輛進行控制了。但單片機代碼不能直接對模擬模型進行控制了,這樣就造成了開發(fā)過程的脫節(jié)。因為由SIMULINK生成代碼的過程,有可能改變了系統(tǒng)算法的特性。不同廠商的編譯器也會存在一些問題,所以直接用生成的單片機代碼對模擬對象進行控制是最便利的,當然這時可以利用實時硬件閉環(huán)系統(tǒng)進行模擬與驗證。但由于控制器硬件的過早介入要花費很大的精力去調(diào)整信號,而往往硬件連接會帶來很多麻煩,如信號連接等。再者在算法調(diào)整階段并不需要硬件的介入,在這種情況下,就需要有一種連接單片機與計算機之間的數(shù)據(jù)交換界面,從而形成一種快速實時交換數(shù)據(jù)方式,使車輛模型系統(tǒng)與控制系統(tǒng)能夠?qū)崿F(xiàn)快速通信,從而實現(xiàn)軟件實時模擬,基于此在本系統(tǒng)中采用兩種數(shù)據(jù)交換方式。

 

(1) CAN 通信方式

(2) 雙口RAM 通信方式

 

其結(jié)構(gòu)方式見圖4。

 

4 數(shù)據(jù)交換方式

 

雙口RAM 方式的原理是將仿真器的一部分內(nèi)存地址映射為PC 機外設(shè)設(shè)備的可訪問的空間。通過這部分的共享內(nèi)存進行數(shù)據(jù)交換,這種方式可以映射比較大的空間,交換的數(shù)據(jù)量也比較大,實時特性好,但這要求仿真器具有特殊的總線訪問地址。一般通用的仿真器不具有這類功能,必須用戶進行自己研制。本系統(tǒng)中也采用過這一方案,但它要求對仿真器系統(tǒng)作較多的研制與改進,所以難度較大,但這種方案是普通適用的,適合于任何類型的計算機。

 

采用CAN 總線通信比較方便,這是因為目前許多單片機已內(nèi)置了CAN 控制器,一般CAN 控制器具有15 個信息體,新出現(xiàn)的單片機則可以帶更多的CAN 控制器,每個信息體有8 個字節(jié),這樣就可以有120個字節(jié)用于實時數(shù)據(jù)交換,同時CAN 的最高通信速度為1MHz 波特率,足以滿足實時模擬的要求。在PC計算機方面一般沒有CAN 接口,但CAN 的接口卡是比較多的。本系統(tǒng)采用自制的CAN 采集卡,該采集卡可以采用USB接口轉(zhuǎn)換,也有并口、ISA、PCI 幾種接口,只用兩根CAN 通信線就可以將單片機與PC計算機進行通信連接。當然串口與單片機的連接也很方便,除非是一些低速簡單的控制系統(tǒng),但串口通信一是速度慢,二是它的數(shù)據(jù)傳遞不像CAN 是數(shù)據(jù)包的形式,所以容易產(chǎn)生錯誤。

 

CAN 通信只能傳送字節(jié)型數(shù)據(jù),對不同的數(shù)據(jù)類型要進行變換,例如要傳送浮點數(shù)據(jù),先把它變換為字節(jié)型變量,接收后要進行解碼,把它還原為浮點數(shù)據(jù)類型。系統(tǒng)的原理見圖5

 

5 CAN 數(shù)據(jù)交換原理

 

CAN 通信的基本設(shè)置可以通過MATLAB GUI 界面編制定義程序,將參數(shù)定義可以保存在采集卡的EEPROM 中,用戶可以通過這個界面進行參數(shù)的定義與修改,例如數(shù)據(jù)長度、波特率、屏蔽字。

 

4 實時軟件模擬的應(yīng)用

 

4.1 改進的開發(fā)過程

 

前面介紹的V 字形的開發(fā)過程由于存在各個階段的不銜接,導致開發(fā)效率的降低,通過實時軟件閉環(huán)模擬系統(tǒng)可以有效地改進開發(fā)效率,基于這一系統(tǒng)可以形成改進的開發(fā)系統(tǒng)。

 

(1) 系統(tǒng)建模與模擬:這一階段從一開始即開始進行實時模擬,不但應(yīng)對對象模型可以貫徹整個開發(fā)過程,而且控制器模型也始終貫徹整個開發(fā)過程。

 

(2) 單片機實時模擬:在這一階段通過嵌入式工具箱生成實時代碼,通過S 函數(shù)建立CAN 通信模塊實現(xiàn)數(shù)據(jù)的交換。在這一階段模擬過程是運行單片機的程序,所以控制算法得到真實的驗證。

 

(3) 實時硬件模擬:這一過程是在上階段的基礎(chǔ)上進行,主要是控制器硬件的驗證,所以只需比較短的時間。因為大量的算法驗證主要在第二階段,第三階段只是驗證硬件,這樣大大降低了開發(fā)難度。

 

(4) 系統(tǒng)驗證:這一階段主要用于道路試驗,將車輛模型用實際車輛代替。采用同一套開發(fā)系統(tǒng)直接放到車輛上進行控制,在調(diào)試過程當控制程序參數(shù)修改時,采用第二階段的純軟件實時模擬進行驗證,待算法沒有問題時就可以馬上進行道路試驗,這樣增加了程序的可靠性。

 

可以看出,通過這一過程可以有效地縮短開發(fā)過程,開始的模擬與最后的產(chǎn)品樣機幾乎是同一套模型,這樣實現(xiàn)了開發(fā)過程的每個階段有機銜接,無縫連接。圖6 為新的開發(fā)過程。

 

6 軟硬件集成化的開發(fā)過程

 

在開發(fā)過程中最大的工作量是第一階段,模擬建模這一系統(tǒng)一旦建立起來則對以后階段都有重要的作用。道路調(diào)試也有較多的工作,則主要是作為一個最終的產(chǎn)品要求有較高的可靠性。要在道路上進行比較細致的調(diào)整,各種工況的校驗,一般還要經(jīng)歷冬季和夏季試驗等。這一系統(tǒng)的重要定義在于在進行道路試驗的同時,可以同時交替地使用單片機純模擬,以驗證每一次修改的正確性。

 

4.2 系統(tǒng)實際工作過程的標定

 

車輛控制系統(tǒng)不同于一般的控制系統(tǒng),它要求高可靠性,而它的工況是各種各樣的,特別是傳感信號是至關(guān)重要的,由于有各種干擾的存在,控制器抗干擾要強,但在模擬情況下很難產(chǎn)生真實的帶有干擾的傳感信號,這樣模擬很好的控制系統(tǒng)往往在實際系統(tǒng)中得不到很好的控制效果,這要求把實際系統(tǒng)的信號進行采集,類似于采集”路譜”,然后在試驗系統(tǒng)中進行回放,這樣就可以測試控制器的響應(yīng)并修改相關(guān)的控制算法。采用本系統(tǒng)可以很容易實現(xiàn)這一功能,這對ECU 的改進具有重要的意義。這一工作包括兩個部分,一部分是信號的采集,利用CAN 通信將控制器采集的信號傳遞到上位PC 中,在MATLAB 環(huán)境中可以將它們存入數(shù)據(jù)工作空間中。

 

在試驗室條件下可以循環(huán)播放這一數(shù)據(jù),仔細驗證與修改控制參數(shù),研究濾波方案,這樣提供了一種非常真實的模擬環(huán)境。為節(jié)省時間可以參考這些實際數(shù)據(jù),人工產(chǎn)生各種噪聲信號(用軟件很容易產(chǎn)生各種信號,例如壓力的干擾信號用純模擬可以非常容易地合成,但用硬件的方法則很困難產(chǎn)生,并且費時費工)。采用純軟件單片機模擬可以避開硬件傳感系統(tǒng),直接將真實的傳感信號導入到單片機內(nèi)部,這是非常簡單的。

 

對于外部硬件驅(qū)動來說,在實時硬件模擬時需要功率系統(tǒng)一次次工作,有些設(shè)備耗電也比較大,危險性也大,采用軟件模擬則可以有效地避免這類問題。

 

4.3 模塊化的實時硬件系統(tǒng)

 

實時硬件系統(tǒng)實際上包含有輸入和輸出兩個部分,在許多情況下并不需要輸入、輸出都參與工作,有下面兩種工況,即輸入硬件和輸出硬件模擬。

 

全硬件模擬部分

7 不同模擬系統(tǒng)的配置

 

輸入硬件模擬是指單片機一方來說的,即單片機控制器的輸入。在輸入硬件系統(tǒng)中,其輸入的硬件是真實的信號連接,而輸出部分是采用CAN 接口連接構(gòu)成軟件的數(shù)據(jù)交換連接,同樣輸出硬件模擬則是以單片機輸出驅(qū)動和采集卡構(gòu)成硬件連接,而輸入部分是以CAN 進行數(shù)據(jù)連接。如果輸入輸出部分都以硬件進行連接,通過采集卡構(gòu)成數(shù)據(jù)的交換與傳遞,則這種系統(tǒng)就是全硬件模擬系統(tǒng),但實際系統(tǒng)中為方便和靈活,則采用不同的模擬系統(tǒng)??梢苑謩e調(diào)試輸入和輸出系統(tǒng),圖7 為不同模擬系統(tǒng)的配置。

 

5 結(jié)束語

 

本文介紹的快速開發(fā)系統(tǒng)已成功地應(yīng)用于不同的開發(fā)項目,并將本系統(tǒng)產(chǎn)品化,系統(tǒng)在使用中不斷的完善,并逐步被客戶所接受。本系統(tǒng)特點是軟、硬件系統(tǒng)一體化,并貫穿整個開發(fā)過程中,大大提高了開發(fā)效率,縮短了開發(fā)時間。系統(tǒng)是一種通用的開發(fā)平臺,幾乎可以應(yīng)用于任何車輛電子控制系統(tǒng),更重要的是,它是一個開放的開發(fā)平臺,所有資源對用戶都是開放的,用戶可以自行修改和建立特定的模擬開發(fā)模型。

(轉(zhuǎn)載)

標簽:車輛控制系統(tǒng) 軟件閉環(huán)模擬 我要反饋 
2024世界人工智能大會專題
即刻點擊并下載ABB資料,好禮贏不停~
優(yōu)傲機器人下載中心
西克
2024全景工博會
專題報道