因?yàn)楝F(xiàn)場(chǎng)可編程門陣列(FPGA)技術(shù)具有自定義邏輯功能和高可靠性的特點(diǎn),,所以,,工程師已將FPGA技術(shù)融入測(cè)試系統(tǒng),解決汽車電子設(shè)計(jì)與測(cè)試的困難,,同時(shí)滿足低成本,、系統(tǒng)可擴(kuò)展性和復(fù)雜的測(cè)試環(huán)境要求,。本文將探討FPGA相關(guān)技術(shù)在汽車電子中的應(yīng)用。
FPGA技術(shù)的應(yīng)用領(lǐng)域
FPGA(Field Programmable Gate Array),,是PAL,、GAL、PLD等可編程器件進(jìn)一步發(fā)展的產(chǎn)物,,其邏輯功能由內(nèi)部規(guī)則排列的邏輯單元陣列完成,。邏輯單元陣列內(nèi)部包括可配置邏輯模塊、輸入輸出模塊和內(nèi)部連線(Interconnect)三個(gè)部分,。工程師可通過軟件編程實(shí)現(xiàn)FPGA內(nèi)部的邏輯模塊和I/O模塊的重新配置,,以實(shí)現(xiàn)自定義的邏輯。
FPGA技術(shù)有很多優(yōu)勢(shì),,包括自定義I/O硬件定時(shí)和同步,、高度可靠性、數(shù)字信號(hào)處理和分析等,。這些優(yōu)勢(shì)為快速增長(zhǎng)的汽車電子測(cè)試技術(shù)提供了靈活的低成本解決方案,。基于FPGA技術(shù)的汽車電子應(yīng)用主要包括車載數(shù)據(jù)采集和對(duì)電子控制單元(ECU)的硬件在環(huán)(HIL)仿真,。
1) 車載數(shù)據(jù)采集
車載數(shù)據(jù)采集系統(tǒng)(IVDAS)作為最常見的汽車電子測(cè)試應(yīng)用之一,,主要用于記錄和分析汽車內(nèi)的多種傳感器的信號(hào),,同時(shí)對(duì)測(cè)試系統(tǒng)的可靠性,、便攜性和開發(fā)性等具有較高的要求。車載應(yīng)用涉及的技術(shù)指標(biāo)包括采樣率,、信號(hào)調(diào)理,、處理和分析等。例如,,采樣率的范圍從GPS數(shù)據(jù)記錄的15Hz到碰撞試驗(yàn)的200kHz不等,,由于FPGA可以直接連接到數(shù)字和模擬I/O,并可對(duì)各通道定義不同的采樣率和觸發(fā),。所以,,基于FPGA技術(shù)的系統(tǒng)可以同時(shí)解決這些車載測(cè)試應(yīng)用,避免定制硬件或多個(gè)測(cè)試系統(tǒng)的需要,。即單個(gè)FPGA平臺(tái)既可用于低速,、高精度GPS或溫度記錄;又可通過快速編程實(shí)現(xiàn)用于有高采樣率要求的碰撞試驗(yàn),;也可將不同采樣率以并行方式共存于同一個(gè)測(cè)量應(yīng)用中,,比如,在配置FPGA實(shí)現(xiàn)10Hz溫度采集的同時(shí)進(jìn)行50kHz的振動(dòng)測(cè)試,;并可實(shí)現(xiàn)任何I/O之間的同步,,比如,,實(shí)現(xiàn)CAN總線數(shù)據(jù)和數(shù)字或模擬I/O信號(hào)間納秒級(jí)的同步測(cè)量。沒有FPGA技術(shù),,則很難實(shí)現(xiàn)單個(gè)系統(tǒng)同時(shí)滿足這些不同的車載數(shù)據(jù)采集的需求,。
應(yīng)用FPGA技術(shù),還可對(duì)任何傳感器信號(hào)進(jìn)行高級(jí)信號(hào)處理和分析,。在很多信號(hào)處理系統(tǒng)中,,底層的信號(hào)預(yù)處理算法要處理大量的數(shù)據(jù),對(duì)處理速度要求很高,,但算法相對(duì)簡(jiǎn)單,,便可用FPGA進(jìn)行編程實(shí)現(xiàn)。此外,,可很方便地在FPGA上實(shí)現(xiàn)對(duì)所采集的信號(hào)作數(shù)字濾波運(yùn)算,、快速傅立葉變換(FFT)、加窗等多種信號(hào)處理和分析,。傳感器級(jí)信號(hào)處理和分析功能將使FPGA技術(shù)更適合于車載數(shù)據(jù)采集的應(yīng)用,。
2) ECU的硬件在環(huán)仿真
硬件在環(huán)仿真作為設(shè)計(jì)流程中重要的組成部分,是對(duì)虛擬運(yùn)行環(huán)境中的設(shè)備進(jìn)行非常逼真的實(shí)際I/O的模擬,。其最顯著的優(yōu)點(diǎn)是可以對(duì)實(shí)際情況進(jìn)行模擬,,而不會(huì)產(chǎn)生實(shí)際危險(xiǎn)。您可以在真實(shí)世界中不能實(shí)現(xiàn)的極端條件下對(duì)控制裝置進(jìn)行測(cè)試-在理論上汽車可以達(dá)到的最高行駛速度下進(jìn)行測(cè)試,。功能強(qiáng)大的高逼真度硬件在環(huán)實(shí)時(shí)仿真不僅通過縮短開發(fā)周期加快了產(chǎn)品上市時(shí)間,,還由于測(cè)試期間無需使用實(shí)際硬件而降低了設(shè)備成本以及相關(guān)的維護(hù)成本。ECU是用于汽車發(fā)動(dòng)機(jī)和傳動(dòng)系控制的電子裝置,,它接收傳動(dòng)速度,、曲軸和凸輪軸速度以及油門位置等信號(hào),對(duì)此信息進(jìn)行處理后,,以產(chǎn)生用于控制發(fā)動(dòng)機(jī)的信號(hào)和傳動(dòng)系參數(shù),。作為汽車最核心的部件之一,ECU設(shè)計(jì)中任何一個(gè)微小的差錯(cuò)都會(huì)導(dǎo)致車毀人亡,。這使得硬件在環(huán)仿真成為了在最終運(yùn)用之前對(duì)ECU進(jìn)行測(cè)試的標(biāo)準(zhǔn)方法,。
一個(gè)典型的硬件在環(huán)系統(tǒng)(見圖1)包括用于引擎模型仿真的控制器,該控制器運(yùn)行在實(shí)時(shí)環(huán)境下并仿真引擎上的各種動(dòng)態(tài)特性,;I/O模塊用來接收ECU的輸出信號(hào)并將經(jīng)過引擎仿真后的信號(hào)反饋給ECU,,使用FPGA技術(shù)可以創(chuàng)建自定義的I/O來滿足仿真條件下對(duì)各種信號(hào)的需求,例如用于爆震,、火花,、發(fā)動(dòng)機(jī)位置傳感器,燃油噴射器以及歧管壓力的同步信號(hào),和開關(guān),、溫度,、腳踏板、油門和汽車行駛速度等異步信號(hào),;此外還包括測(cè)試數(shù)據(jù)的記錄和測(cè)試步驟等,。為了構(gòu)成一個(gè)完整的系統(tǒng),還需要一臺(tái)主機(jī)運(yùn)行操作界面,,并配合相應(yīng)的測(cè)試管理軟件和后續(xù)數(shù)據(jù)分析軟件,。
圖1 一個(gè)典型的硬件在環(huán)系統(tǒng)的構(gòu)成 |
由于硬件在環(huán)測(cè)試往往要求系統(tǒng)在極高的速度下運(yùn)行,多個(gè)輸入/輸出設(shè)備之間的精確定時(shí)和同步就顯得極為重要,。例如,,您可以通過FPGA的I/O向控制器輸出一個(gè)可變磁阻傳感器信號(hào),并確??刂破髟谶m當(dāng)?shù)臅r(shí)間和正確的電流下打開和關(guān)閉燃油噴射器,。與傳統(tǒng)的定制系統(tǒng)相比,基于FPGA技術(shù)的系統(tǒng)在實(shí)現(xiàn)精確且同步的波形生成和獲取方面具有明顯的優(yōu)點(diǎn),,它可以實(shí)現(xiàn)多個(gè)I/O在高速下進(jìn)行同步,,并快速完成信號(hào)數(shù)據(jù)與輸入/輸出信息間的轉(zhuǎn)換。
除了實(shí)現(xiàn)對(duì)ECU的硬件在環(huán)仿真,,F(xiàn)PGA還可應(yīng)用于對(duì)ECU的快速原型設(shè)計(jì)中,,從硬件層面驗(yàn)證控制算法和模型的效果,同時(shí)FPGA的并行性允許將多個(gè)快速控制循環(huán)集成在同一個(gè)系統(tǒng)中,。例如,,Drivven公司應(yīng)用FPGA的可重復(fù)配置性能,實(shí)現(xiàn)了對(duì)Yamaha YZF-R6發(fā)動(dòng)機(jī)控制系統(tǒng)的原型設(shè)計(jì),,而避免了在設(shè)計(jì)過程中購(gòu)買多個(gè)定制硬件的需要,,從而降低了成本。
圖形化FPGA編程
FPGA技術(shù)有很多優(yōu)點(diǎn),,比如可自定義邏輯、高可靠性等,,可廣泛應(yīng)用于車載測(cè)試和ECU的設(shè)計(jì)流程中,。但工程師在對(duì)FPGA進(jìn)行編程時(shí),往往需要掌握硬件設(shè)計(jì)語言如VHDL之類的知識(shí),。而圖形化開發(fā)工具,,比如National Instruments (NI)的高效圖形化開發(fā)環(huán)境LabVIEW,則是專為需要建立靈活的可擴(kuò)展性測(cè)試測(cè)量和控制應(yīng)用系統(tǒng)的工程師和科學(xué)家設(shè)計(jì)的,,以滿足他們以最小的成本,、最快的速度開發(fā)系統(tǒng)的需求。
LabVIEW直觀的圖形化開發(fā)特性,,可使工程師把更多的精力集中在功能開發(fā)上,,而不是代碼撰寫上,,進(jìn)而大幅縮短開發(fā)時(shí)間和成本。LabVIEW又是一個(gè)開放性的軟件平臺(tái),,對(duì)于一些特定的應(yīng)用,,提供多種工具包和模塊來提升和加速系統(tǒng)開發(fā)。比如,,LabVIEW FPGA模塊,,工程師就無須硬件描述語言和硬件設(shè)計(jì)相關(guān)專業(yè)知識(shí),便可在WINDOWS操作系統(tǒng)上,,通過圖形化開發(fā)自定義的FPGA邏輯代碼并下載到FPGA硬件目標(biāo),,來實(shí)現(xiàn)創(chuàng)建自定義硬件。如圖2所示,,使用LabVIEW FPGA實(shí)現(xiàn)CAN數(shù)據(jù)和數(shù)字或模擬信號(hào)間納秒級(jí)的同步測(cè)量,。當(dāng)測(cè)試要求改變時(shí),可通過下載新的代碼到FPGA,,而無需新的定制硬件,。同時(shí),提供VHDL語言接口,,為方便工程師直接使用現(xiàn)成的VHDL代碼,。LabVIEW Real-Time模塊則用于針對(duì)實(shí)時(shí)硬件目標(biāo)開發(fā)時(shí)間確定性的應(yīng)用程序。此外,,LabVIEW附加的仿真接口工具包實(shí)現(xiàn)了LabVIEW和MathWorks Simulink(r) 軟件(運(yùn)用該軟件您可以將您的算法模型從Simulink(r)導(dǎo)入LabVIEW中)之間的無縫連接,。總之,,圖形化開發(fā)軟件LabVIEW將極大地提高工程師的工作效率,。
圖2 用NI LabVIEW實(shí)現(xiàn)FPGA圖形化編程 |
使用LabVIEW FPGA軟件和可重復(fù)配置硬件技術(shù),可創(chuàng)建高性能的控制和采集系統(tǒng),。下面舉兩個(gè)例子,,有關(guān)基于FPGA技術(shù)的硬件平臺(tái)在汽車電子中的應(yīng)用。
用戶解決方案1:便攜式車載數(shù)據(jù)采集系統(tǒng)
車載數(shù)據(jù)采集的信號(hào)類型包括溫度信號(hào)(熱電偶,、RTD),、聲音和振動(dòng)信號(hào)(帶IEPE激勵(lì)的加速度傳感器或麥克風(fēng))、壓力和載荷信號(hào)(應(yīng)變計(jì)或稱重傳感器),、位置信號(hào)(LVDT或線性電位計(jì)),、速度信號(hào)(編碼器)、控制總線信號(hào)(CAN,J1350,ODBII),,以及視頻信號(hào)等,。這些信號(hào)都是用于汽車性能的評(píng)價(jià)。
德國(guó)Goepel Electronic公司在面臨上述信號(hào)類型、環(huán)境條件復(fù)雜,、有大量數(shù)據(jù)存儲(chǔ)要求,,用于車載測(cè)試分析和在線診斷的便攜式測(cè)試設(shè)備時(shí),選擇了NI CompactRIO嵌入式控制系統(tǒng),,LabVIEW FPGA模塊和LabVIEW Real-Time模塊,。在很短的時(shí)間內(nèi)開發(fā)了CARLOS (in-car logging system),加上CompactRIO平臺(tái)的低成本解決方案,,從而大大節(jié)省了預(yù)算,。
圖3 Goepel CARLOS車載數(shù)據(jù)采集系統(tǒng) |
CompactRIO硬件平臺(tái)(見圖3)是一個(gè)基于FPGA技術(shù)的嵌入式系統(tǒng)。FPGA芯片是CompactRIO體系結(jié)構(gòu)的核心,,直接和相應(yīng)的車載模塊相連,。車載模塊可直接和車用傳感器、執(zhí)行器和網(wǎng)絡(luò)相聯(lián),,并提供信號(hào)調(diào)理,、隔離和汽車總線。該平臺(tái)包含一個(gè)嵌入式實(shí)時(shí)處理器,,可用于獨(dú)立工作,、確定性控制、車載數(shù)據(jù)記錄和分析等,。CompactRIO具有小型,、堅(jiān)固的機(jī)械封裝、可承受50g沖擊和-40℃到70℃工作溫度范圍等特點(diǎn),,提供雙電壓輸入(9-35V),,可直接從車上電池取電。這些都使CARLOS適用于復(fù)雜的車載測(cè)試環(huán)境和有限的測(cè)試空間,。
該系統(tǒng)已成功用于實(shí)驗(yàn)室,、風(fēng)洞和試驗(yàn)場(chǎng)上的汽車測(cè)試,可長(zhǎng)時(shí)間記錄數(shù)據(jù),。另外,,可通過選擇相應(yīng)的車載模塊和內(nèi)置的應(yīng)用程序,實(shí)現(xiàn)不同測(cè)試的需求,。比如為了實(shí)現(xiàn)冬季或夏季試驗(yàn)中發(fā)動(dòng)機(jī)熱管理系統(tǒng)的評(píng)價(jià),,只需選擇溫度等信號(hào)對(duì)應(yīng)的車載模塊和已開發(fā)好的LabVIEW應(yīng)用程序即可;同時(shí),,該程序提供報(bào)警、用LabVIEW報(bào)告生成工具包實(shí)現(xiàn)數(shù)據(jù)寫入EXCEL表格,、或直接寫進(jìn)數(shù)據(jù)庫(kù),、歷史數(shù)據(jù)查看等功能。此外,基于FPGA的CompcatRIO開放試架構(gòu)允許用戶擴(kuò)展系統(tǒng)或進(jìn)一步開發(fā)自定義的測(cè)試系統(tǒng),。
用戶解決方案2:用于BMW V12汽油發(fā)動(dòng)機(jī)的硬件在環(huán)仿真
MicroNova公司在基于NI LabVIEW FPGA模塊和NI PXI-7831R可重復(fù)配置I/O模塊上,,開發(fā)了一種全新的、靈活的可編程引擎硬件在環(huán)仿真系統(tǒng)(見圖4),,該系統(tǒng)能夠直接對(duì)BMW 12缸概念車的汽油噴射器進(jìn)行仿真,,這是世界上第一種能夠?qū)@種情況進(jìn)行仿真的系統(tǒng)。
圖4 MicroNova V12汽油發(fā)動(dòng)機(jī)的硬件在環(huán)仿真系統(tǒng) |
該引擎硬件在環(huán)仿真系統(tǒng)可以與曲軸角度同步記錄所有的汽油噴射時(shí)間和點(diǎn)火角度,,并將這些數(shù)據(jù)提供給控制器作為仿真輸入,。同時(shí)通過模擬、數(shù)字以及脈寬調(diào)制器接口采集輸入信號(hào)并輸出相應(yīng)的變量數(shù)據(jù),。而碰撞信號(hào)的仿真則是通過多達(dá)六個(gè)獨(dú)立傳感器,,根據(jù)用戶定義的碰撞函數(shù),產(chǎn)生基于轉(zhuǎn)速的輸出信號(hào),。
NI的PXI平臺(tái)為該系統(tǒng)提供了完整的硬件模塊的選擇,,同時(shí)PXI高級(jí)的定時(shí)和觸發(fā)特性保證了汽車信號(hào)間同步采樣達(dá)到微秒級(jí)的觸發(fā)精度。而基于PXI平臺(tái)的可重復(fù)配置I/O模塊更是保證了高精度,、靈活的采集引擎高速傳感信號(hào),。因?yàn)槭褂昧薒abVIEW開發(fā)FPGA,可以很方便的改變相應(yīng)的組合邏輯,,并針對(duì)不同氣缸數(shù)目的各種引擎應(yīng)用不同的軟件配置,,大大節(jié)省了開發(fā)成本、提升了性能,。同時(shí),,使用了LabVIEW仿真接口工具包,可以很快速的將在MathWorks Simulink(r)下開發(fā)的仿真模型整合到LabVIEW的平臺(tái)中,,節(jié)省了大量的開發(fā)時(shí)間,。總之,,得益于PXI平臺(tái)和基于FPGA的可重復(fù)配置I/O組件的模塊化特性和靈活性,,MicroNova公司在很短的時(shí)間內(nèi)便開發(fā)出了高性能的ECU硬件在環(huán)仿真系統(tǒng),成功應(yīng)用于BMW 12缸的最新概念車型的驗(yàn)證,。
本文小結(jié)
FPGA技術(shù)帶來了汽車電子測(cè)試技術(shù)的創(chuàng)新,,憑借開發(fā)基于FPGA硬件的單個(gè)系統(tǒng)可以解決不同的汽車設(shè)計(jì)和測(cè)試應(yīng)用,而無需多個(gè)定制的測(cè)試設(shè)備,?;贚abVIEW的圖形化FPGA編程則進(jìn)一步縮短了開發(fā)時(shí)間。NI CompactRIO和基于PXI的可重復(fù)配置I/O模塊都是基于FPGA的硬件平臺(tái),,用戶不僅可以開發(fā)適用于涉及汽車總線,、不同信號(hào)類型的車載測(cè)試應(yīng)用,,還可用于汽車ECU設(shè)計(jì)流程中的快速原型驗(yàn)證和硬件在環(huán)仿真測(cè)試。