CAN通信助開發(fā)LabVIEW和CompactRIO轉(zhuǎn)向仿真

2013-09-30 16:23 來源:電子信息網(wǎng) 作者:蒲公英

開發(fā)一個(gè)轉(zhuǎn)向反作用力仿真系統(tǒng),可以從不同傳感器采集數(shù)據(jù),進(jìn)行計(jì)算、信息匹配、并產(chǎn)生輸出,并能夠可靠地執(zhí)行一系列需要快速響應(yīng)的實(shí)時(shí)任務(wù)。使用NI CompactRIO硬件和NI LabVIEW軟件在短短兩個(gè)月內(nèi)開發(fā)一個(gè)基于復(fù)雜算法的轉(zhuǎn)向反作用力仿真系統(tǒng)。對駕駛過程中轉(zhuǎn)向反作用力的仿真一直是動(dòng)態(tài)變化的,因?yàn)樗Q于車速、轉(zhuǎn)向角度以及道路狀況。另外,此仿真系統(tǒng)還必須具備快速響應(yīng)時(shí)間,以便通過部件產(chǎn)生反作用力。在車速、轉(zhuǎn)向角度、轉(zhuǎn)向角加速度數(shù)據(jù)的基礎(chǔ)上我們得到了轉(zhuǎn)向力矩?cái)?shù)據(jù)圖,并根據(jù)此圖計(jì)算出最終的反作用力。然后,我們把這些值傳給一個(gè)液壓系統(tǒng)來仿真實(shí)現(xiàn)最終的反作用力。我們設(shè)計(jì)系統(tǒng)邏輯,從不同傳感器獲得數(shù)據(jù)、計(jì)算數(shù)據(jù)、匹配地圖數(shù)據(jù),產(chǎn)生輸出,并可靠、快速地執(zhí)行一系列實(shí)時(shí)任務(wù)。

系統(tǒng)概述

我們選擇LabVIEW和CompactRIO來創(chuàng)建我們的系統(tǒng)。我們選擇了可擴(kuò)展的8槽NI cRIO-9116機(jī)箱。它有一個(gè)Xilinx Virtex-5現(xiàn)場可編程門陣列(FPGA),以幫助實(shí)現(xiàn)控制邏輯,并保證快速響應(yīng)時(shí)間。我們還選擇了 NI的一款配備了實(shí)時(shí)操作系統(tǒng)(VxWorks)的cRIO-9024實(shí)時(shí)控制器。cRIO-9024控制器具有4GB的存儲空間,512MB DRAM和800 MHz的CPU,這將有助于快速采集、記錄和處理大量數(shù)據(jù)。此外,借助兩個(gè)以太網(wǎng)端口和一個(gè)RS232接口,系統(tǒng)很容易便可與外部設(shè)備相連。USB端口可以很容易地用于擴(kuò)展外部存儲器介質(zhì)。

我們使用兩個(gè)4通道NI9215模擬輸入模塊處理8路模擬傳感器信號。使用一個(gè)2端口NI9853控制器區(qū)域網(wǎng)絡(luò)(CAN)模塊來與正在開發(fā)的電子穩(wěn)定程序(ESP)電子控制單元(ECU)進(jìn)行CAN通信。

我們使用NI9474模塊產(chǎn)生8路數(shù)字輸出作為脈沖寬度調(diào)制(PWM)信號,仿真車輛速度。然后將此PWM信號發(fā)送到EPS ECU來虛擬一個(gè)車輛。這個(gè)信號會使用通道間相互隔離的NI9269模塊來進(jìn)行模擬信號輸出,從而消除了信號之間的干擾,以確保用于液壓系統(tǒng)的模擬輸出足夠精確。除了精確控制數(shù)字和模擬輸出,CompactRIO的配置還可以仿真車輛中動(dòng)態(tài)變化的傳感器信號和CAN信號(一種車輛通信信號)。我們利用FPGA和實(shí)時(shí)操作系統(tǒng)創(chuàng)建了一個(gè)快速并且高度可靠的車輛仿真系統(tǒng)。

我們?yōu)槭裁催x擇NI產(chǎn)品

考慮到該系統(tǒng)對于處理時(shí)間的精確性要求嚴(yán)格,我們需要通過FPGA實(shí)現(xiàn)高速數(shù)據(jù)采集、處理,并保證精確的數(shù)字和模擬控制信號輸出。我們還需要實(shí)時(shí)、動(dòng)態(tài)控制,以真實(shí)地仿真車輛行駛工況,快速計(jì)算出整車轉(zhuǎn)向反作用力矩的數(shù)據(jù),并構(gòu)建出一個(gè)不受PC限制的嵌入式系統(tǒng)。LabVIEW減少了我們的軟件開發(fā)時(shí)間,并提供了一個(gè)強(qiáng)大的函數(shù)庫幫助我們開發(fā)算法。

系統(tǒng)配置

圖1: 系統(tǒng)配置

如圖1所示,8路傳感器信號(NI9215)和CAN通信數(shù)據(jù)(NI9853)各自從它們的輸入對象接收信號。FPGA以100μs的采樣周期從EPS ECU采集信號,并使用PWM波(0km/h~250 km/h: 1.41 Hz~353 Hz, 占空比50%)提供車速信號(NI9269),并最終傳輸給EPS ECU。

通過先入先出(FIFO)的模式,所收集的數(shù)據(jù)將通過實(shí)時(shí)處理器(cRIO-9024)進(jìn)行分析和邏輯處理,并轉(zhuǎn)化為有效值。然后,在實(shí)時(shí)處理器中,系統(tǒng)使用一種快速映射算法(對應(yīng)于標(biāo)準(zhǔn)地圖數(shù)據(jù)存儲的反作用力值)由參考數(shù)據(jù)計(jì)算出最后的控制量,并將它通過一個(gè)FPGA算法產(chǎn)生模擬輸出量。NI 9269模塊則提供±10V的范圍內(nèi)的控制信號至液壓執(zhí)行器。

輸入的傳感器信號和最終的液壓系統(tǒng)控制值控制了液壓系統(tǒng)。他們同時(shí)還保存在隊(duì)列中,然后通過TCP/IP通信發(fā)送到PC主機(jī)。這種配置使得PC主機(jī)可以監(jiān)控反作用力仿真器的性能和狀態(tài)。此外,該系統(tǒng)在保證動(dòng)態(tài)控制的同時(shí)還提供給用戶多個(gè)信號的控制權(quán)利。

1 2 3 > 
CAN 仿真

相關(guān)閱讀

暫無數(shù)據(jù)

一周熱門