亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LabVIEW的燃?xì)獍l(fā)動(dòng)機(jī)排放數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

        2012-09-10 03:18:46馬凡華齊政亮趙建彪何義團(tuán)韓曉東
        汽車(chē)科技 2012年6期
        關(guān)鍵詞:狀態(tài)機(jī)隊(duì)列發(fā)動(dòng)機(jī)

        馬凡華,齊政亮,趙建彪,何義團(tuán),韓曉東

        (清華大學(xué)汽車(chē)安全與節(jié)能?chē)?guó)家重點(diǎn)實(shí)驗(yàn)室,北京,100084)

        隨著汽車(chē)保有量的不斷增加,空氣質(zhì)量問(wèn)題越來(lái)越引起人們的重視,同時(shí)排放法規(guī)日益嚴(yán)格,這些都要求汽車(chē)發(fā)動(dòng)機(jī)在運(yùn)行過(guò)程中具有良好的排放性能。因此,在發(fā)動(dòng)機(jī)標(biāo)定過(guò)程中,實(shí)時(shí)獲得不同轉(zhuǎn)速、負(fù)荷下的各項(xiàng)排放數(shù)據(jù),將有助于發(fā)動(dòng)機(jī)排放性能的優(yōu)化。

        LabVIEW是一種工業(yè)標(biāo)準(zhǔn)圖形化編程工具,具有數(shù)據(jù)采集與分析、信號(hào)發(fā)生與處理、輸入輸出控制等功能[1]。在LabVIEW中開(kāi)發(fā)的程序被稱(chēng)為VI(虛擬儀器),包含前面板、程序框圖以及圖標(biāo)三部分。其中,前面板是圖形化用戶(hù)界面,該界面上有交互式的輸入和輸出兩類(lèi)控件,用于數(shù)據(jù)輸入和觀察量輸出的設(shè)置;程序框圖是實(shí)現(xiàn)VI邏輯功能的圖形化源代碼;圖標(biāo)/連線端口用于將程序定義為子程序,以利于在其他程序中調(diào)用[2]。

        本文以LabVIEW作為編程工具,設(shè)計(jì)開(kāi)發(fā)燃?xì)獍l(fā)動(dòng)機(jī)排放數(shù)據(jù)采集系統(tǒng)。

        1 試驗(yàn)硬件系統(tǒng)

        試驗(yàn)用燃?xì)獍l(fā)動(dòng)機(jī)為東風(fēng)汽車(chē)有限公司生產(chǎn)的EQD210N-20單點(diǎn)電控天然氣噴射發(fā)動(dòng)機(jī)。

        電控系統(tǒng)采用實(shí)驗(yàn)室自己設(shè)計(jì)的ECU,具有傳感器信號(hào)處理、工況判斷、運(yùn)算處理、執(zhí)行器控制信號(hào)輸出等功能,完全滿足發(fā)動(dòng)機(jī)運(yùn)行需求。

        排放測(cè)量采用的是HORIBA公司生產(chǎn)的排氣分析儀 MEXA-7100FX, 可以測(cè)量 CO、CO2、THC、CH4、NOx等。其測(cè)量精度較高,可選擇量程范圍廣,響應(yīng)快速穩(wěn)定[3]。

        數(shù)據(jù)采集采用NI公司的USB-6009多功能數(shù)據(jù)采集卡。其有8路模擬輸入通道(14位分辨率,48 KS/s),2路模擬輸出通道 (12位分辨率,150 KS/s),12條數(shù)字I/O線,32位分辨率計(jì)數(shù)器。可采集排放儀輸出的模擬信號(hào),通過(guò)USB口傳輸?shù)缴衔粰C(jī),供LabVIEW程序進(jìn)行處理。試驗(yàn)硬件系統(tǒng)構(gòu)成如圖1。

        2 程序設(shè)計(jì)模式

        在LabVIEW程序設(shè)計(jì)中,常用的程序設(shè)計(jì)模式有: 狀態(tài)機(jī) (State Machine)、主/從結(jié)構(gòu)(Master/Slave)、生產(chǎn)者/消費(fèi)者結(jié)構(gòu)(Producer/Consumer)、隊(duì)列消息結(jié)構(gòu) (Queued Message Handler)、啟動(dòng)界面(Launcher)等[2]。 本文將以 Anthony Lukindo 改進(jìn)的隊(duì)列狀態(tài)機(jī)[4]為架構(gòu),進(jìn)行系統(tǒng)軟件的開(kāi)發(fā)設(shè)計(jì)。

        2.1 狀態(tài)機(jī)

        狀態(tài)機(jī)是LabVIEW程序設(shè)計(jì)中最常使用的設(shè)計(jì)模式之一,可以清晰地實(shí)現(xiàn)任何狀態(tài)圖之間的轉(zhuǎn)移,常用在“決策”算法中,例如監(jiān)測(cè)、控制和診斷等。狀態(tài)機(jī)包含三要素:狀態(tài)、事件和動(dòng)作。

        狀態(tài)機(jī)程序框圖,主要有一個(gè)主循環(huán)和一個(gè)Case結(jié)構(gòu)組成,并利用移位寄存器來(lái)實(shí)現(xiàn)狀態(tài)間的轉(zhuǎn)移[2]。其中,主循環(huán)為While循環(huán),用于維持狀態(tài)機(jī)的運(yùn)行,主循環(huán)里面包含一個(gè)條件結(jié)構(gòu),用于對(duì)各個(gè)不同狀態(tài)進(jìn)行判斷,實(shí)現(xiàn)狀態(tài)間的轉(zhuǎn)移[5]。

        2.2 生產(chǎn)者/消費(fèi)者結(jié)構(gòu)

        生產(chǎn)者/消費(fèi)者結(jié)構(gòu)主要用于數(shù)據(jù)的處理,循環(huán)之間通過(guò)隊(duì)列來(lái)傳遞數(shù)據(jù)。

        數(shù)據(jù)采集系統(tǒng),一般包括數(shù)據(jù)采集、數(shù)據(jù)分析和結(jié)果顯示三個(gè)步驟。若通過(guò)數(shù)據(jù)流直接將這三個(gè)步驟連接起來(lái),即每進(jìn)行一次采集數(shù)據(jù)都要經(jīng)過(guò)數(shù)據(jù)分析及顯示后才能開(kāi)啟第二輪采集,則數(shù)據(jù)分析引起的時(shí)間延遲有可能增大數(shù)據(jù)采集的周期,更有甚者造成數(shù)據(jù)的丟失或重復(fù)利用等問(wèn)題。采用生產(chǎn)者/消費(fèi)者結(jié)構(gòu)的數(shù)據(jù)采集系統(tǒng),通過(guò)并行的方式實(shí)現(xiàn)多個(gè)循環(huán)。其中一個(gè)循環(huán)不斷地采集數(shù)據(jù)(生產(chǎn)者),另一個(gè)循環(huán)不斷地處理數(shù)據(jù)(消費(fèi)者),這兩個(gè)循環(huán)通過(guò)消息隊(duì)列進(jìn)行通信,彼此之間不產(chǎn)生干涉,從而可以很好地解決這些問(wèn)題[5]。

        2.3 隊(duì)列狀態(tài)機(jī)

        隊(duì)列狀態(tài)機(jī)是把所有要執(zhí)行的狀態(tài)存在隊(duì)列中,并將狀態(tài)名與狀態(tài)機(jī)的每個(gè)狀態(tài)進(jìn)行一一對(duì)應(yīng),以達(dá)到控制狀態(tài)轉(zhuǎn)換順序的目的。當(dāng)某一狀態(tài)執(zhí)行完成,其狀態(tài)名稱(chēng)將會(huì)從隊(duì)列中刪除,同時(shí)依據(jù)運(yùn)行時(shí)狀態(tài)的動(dòng)作或觸發(fā)的事件,新的狀態(tài)名將會(huì)被添加到隊(duì)列中[6]。本文采用Anthony Lukindo改進(jìn)的隊(duì)列狀態(tài)機(jī)[4],其結(jié)構(gòu)示意圖如圖2所示。

        從圖中可以看出,該隊(duì)列狀態(tài)機(jī)由事件結(jié)構(gòu)2、狀態(tài)結(jié)構(gòu)3和并行運(yùn)行的子程序4.1-4.3組成,并通過(guò)隊(duì)列引用1相互連接。具體的實(shí)現(xiàn)步驟:1.1獲得子程序4.1-4.3的狀態(tài)引用;1.2為通過(guò) “元素出隊(duì)列”VI獲取隊(duì)列中的第一個(gè)元素,并將該元素從隊(duì)列中刪除;1.3為通過(guò) “按名稱(chēng)解除捆綁”VI獲得狀態(tài)名和數(shù)據(jù);1.4為將獲得的狀態(tài)名與 “EXIT”的比較,相同時(shí)則停止循環(huán);1.5為隊(duì)列管理子VI;2.1為前面板動(dòng)作產(chǎn)生的指令,將所需跳轉(zhuǎn)至的狀態(tài)名稱(chēng)添加到隊(duì)列中;3.4為條件case結(jié)構(gòu);3.5為程序代碼;3.6 為下一個(gè)狀態(tài)序列[6]。

        3 軟件設(shè)計(jì)

        軟件部分具有數(shù)據(jù)采集、實(shí)時(shí)顯示、數(shù)據(jù)保存等功能,并采用模塊化的編程思想,利于程序的拓展。

        3.1 數(shù)據(jù)采集

        為了能夠測(cè)量不同轉(zhuǎn)速和負(fù)荷下的發(fā)動(dòng)機(jī)排放數(shù)據(jù),需要分別設(shè)計(jì)轉(zhuǎn)速、進(jìn)氣歧管絕對(duì)壓力、排放數(shù)據(jù)三部分的測(cè)量方案。

        3.1.1 轉(zhuǎn)速測(cè)量

        為了能夠測(cè)量發(fā)動(dòng)機(jī)的轉(zhuǎn)速,一般都在曲軸上安裝一個(gè)齒盤(pán)和一個(gè)曲軸轉(zhuǎn)角傳感器。本實(shí)驗(yàn)使用的天然氣發(fā)動(dòng)機(jī)采用的是22個(gè)7°的齒,齒與齒之間的間隔有21個(gè)為8°,剩下一個(gè)為38°。

        本文采用可變磁阻式曲軸轉(zhuǎn)角傳感器,主要參數(shù)輸出電壓幅值/轉(zhuǎn)速為400 mV/60r/min。經(jīng)過(guò)實(shí)驗(yàn)室自己設(shè)計(jì)ECU的信號(hào)處理,可將轉(zhuǎn)速信號(hào)處理為0~5V的方波。用USB6009測(cè)量時(shí),使用其32位計(jì)數(shù)器功能,下降沿觸發(fā),就可對(duì)方波個(gè)數(shù)進(jìn)行計(jì)算。通過(guò)計(jì)算單位時(shí)間內(nèi)收到的方波個(gè)數(shù)就可以計(jì)算出發(fā)動(dòng)機(jī)當(dāng)前轉(zhuǎn)速。測(cè)量方案如圖3所示。

        采用LabVIEW進(jìn)行編程,轉(zhuǎn)速采集程序如圖4所示,因共有22個(gè)齒,故采用移位寄存器的方法實(shí)現(xiàn)第1齒和第22齒的時(shí)間記錄,每當(dāng)前后齒數(shù)相差等于22時(shí),進(jìn)入轉(zhuǎn)速計(jì)算結(jié)構(gòu)中,容易得到轉(zhuǎn)速n=(r/min)

        3.1.2 進(jìn)氣歧管絕對(duì)壓力測(cè)量

        采用進(jìn)氣歧管絕對(duì)壓力傳感器來(lái)測(cè)量進(jìn)氣歧管的壓力,ECU根據(jù)此信號(hào)判斷進(jìn)入發(fā)動(dòng)機(jī)的空氣量和發(fā)動(dòng)機(jī)的負(fù)荷,本實(shí)驗(yàn)采用的傳感器可測(cè)量的壓力范圍為20~200 kPa,壓力傳感器的輸出范圍在0~5 V范圍內(nèi),經(jīng)濾波后可以直接被USB6009的AD轉(zhuǎn)換口接收,從而計(jì)算出發(fā)動(dòng)機(jī)負(fù)荷狀態(tài)。

        3.1.3 排放數(shù)據(jù)測(cè)量

        MEXA-7100FX排氣分析儀在對(duì)發(fā)動(dòng)機(jī)尾氣分析過(guò)程中,會(huì)輸出相應(yīng)的電壓信號(hào) (0~5 V),使用USB6009進(jìn)行AD采集,即可完成對(duì)排放數(shù)據(jù)的采集。

        3.2 程序功能實(shí)現(xiàn)

        由于轉(zhuǎn)速、進(jìn)氣歧管絕對(duì)壓力、排放均能由USB-6009完成采集,因此將其封裝成子VI,采用基于隊(duì)列狀態(tài)機(jī)進(jìn)行編程。如圖5所示,主程序接受數(shù)據(jù)采集子VI傳遞來(lái)的數(shù)據(jù),并實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)顯示、數(shù)據(jù)保存功能,而數(shù)據(jù)(轉(zhuǎn)速、壓力、排放)采集封裝在子VI中。

        在數(shù)據(jù)采集子VI中,如圖6,將DAQ采集到的數(shù)據(jù)和狀態(tài)一起捆綁成簇,當(dāng)保存按鈕為假時(shí),只以隊(duì)列的形式將數(shù)據(jù)和“Get the Data”狀態(tài)傳送至主程序,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)顯示;當(dāng)保存按鈕為真時(shí),采用順序結(jié)構(gòu),依次將 “Get the Datas”和 “Save the Datas”狀態(tài)傳送至主程序,從而實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)顯示和保存功能。前面板如圖7。

        3.3 數(shù)據(jù)的保存

        由于實(shí)驗(yàn)中需要實(shí)時(shí)保存轉(zhuǎn)速、進(jìn)氣歧管壓力、排放(HC、CO、NOx)等數(shù)據(jù),通道多,數(shù)據(jù)量較大,為方便數(shù)據(jù)保存和管理,采用TDMS(Technical Data Management Streaming)文件格式保存數(shù)據(jù)。TDMS文件,采用二進(jìn)制數(shù)據(jù)格式,具有占用磁盤(pán)空間小以及支持?jǐn)?shù)據(jù)流高速寫(xiě)盤(pán)的特點(diǎn),是NI公司近年來(lái)重點(diǎn)開(kāi)發(fā)的測(cè)試測(cè)量數(shù)據(jù)存儲(chǔ)格式[7]。其有三層結(jié)構(gòu):文件、組和通道,每個(gè)文件下可以設(shè)置多個(gè)組,每個(gè)組可以設(shè)置多個(gè)通道。在文件、組和通道上,都可以定義相應(yīng)屬性以及添加若干附加信息,利于數(shù)據(jù)查詢(xún)和管理[6]。

        在本系統(tǒng)數(shù)據(jù)存儲(chǔ)中,每次只有一個(gè)文件,以采集的次數(shù)為組名,以轉(zhuǎn)速、壓力以及HC、CO、NOx分別為通道名;數(shù)據(jù)讀取時(shí),以組名依次讀取每個(gè)通道的數(shù)據(jù)。

        3.4 數(shù)據(jù)處理

        在數(shù)據(jù)處理過(guò)程中,采用基于動(dòng)態(tài)鏈接庫(kù)DLL的TDMS文件的Matlab處理方法。為了更好地推廣TDMS文件,NI公司提供可供Matlab調(diào)用并處理TDMS文件的DLL動(dòng)態(tài)鏈接庫(kù)。首先通過(guò)Matlab中l(wèi)oadlibrary函數(shù)載入動(dòng)態(tài)鏈接庫(kù)nilibddc.dll和頭文件 nilibddc_m.h[8],接著通過(guò) uigetfile 函數(shù)選取需要讀入Matlab的TDMS文件,然后通過(guò)calllib函數(shù)調(diào)用DDC_GetDataValues函數(shù)可以得到TDMS文件中的原始采集數(shù)據(jù),并可將其讀入到Matlab環(huán)境中,最后就可以運(yùn)用Matlab強(qiáng)大的數(shù)據(jù)分析功能進(jìn)行相關(guān)數(shù)據(jù)分析[7]。TDMS文件導(dǎo)入Matlab的NOx排放分析圖,如圖8所示。

        4 結(jié)語(yǔ)

        本文以LabVIEW隊(duì)列狀態(tài)機(jī)為主體結(jié)構(gòu),設(shè)計(jì)開(kāi)發(fā)了發(fā)動(dòng)機(jī)排放數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)能夠?qū)崟r(shí)采集發(fā)動(dòng)機(jī)轉(zhuǎn)速、負(fù)荷及排放數(shù)據(jù),并具有數(shù)據(jù)顯示、保存的功能,響應(yīng)速度快,且可以避免采集數(shù)據(jù)的丟失,為發(fā)動(dòng)機(jī)標(biāo)定提供完整的數(shù)據(jù)。在后續(xù)數(shù)據(jù)處理過(guò)程中,采用基于DLL文件的Matlab讀取TDMS文件的方法,不僅發(fā)揮了TDMS文件的優(yōu)勢(shì),而且便于利用Matlab進(jìn)行數(shù)據(jù)處理。

        [1]杜娟,邱曉暉,趙陽(yáng)等.基于LabVIEW的數(shù)據(jù)采集與信號(hào)處理系統(tǒng)的設(shè)計(jì)[J].南京師范大學(xué)學(xué)報(bào),2010,10(3):7-10.

        [2]陳錫輝,張銀鴻.LabVIEW8.20程序設(shè)計(jì)從入門(mén)到精通[M].北京:清華大學(xué)出版社,2007.

        [3]陳仁哲.燃?xì)獍l(fā)動(dòng)機(jī)電控系統(tǒng)的軟硬件開(kāi)發(fā)[D].北京:清華大學(xué),2011.

        [4]Anthony Lukindo.LabVIEW Queued State Machine Architeture[J],2007.

        [5]果實(shí),薛磊,朱朝旭.基于LabVIEW隊(duì)列狀態(tài)機(jī)的鐵路信號(hào)電纜故障檢測(cè)系統(tǒng) [J].電腦知識(shí)與技術(shù),2011(29):7228-7229.

        [6]葉楓樺,周新聰,白秀琴等.基于LabVIEW隊(duì)列狀態(tài)機(jī)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì) [J]. 現(xiàn)代電子技術(shù),2010,4(315):204-207.

        [7]陳宏希.TDMS文件及其 Matlab讀取方法[J].蘭州石化職業(yè)技術(shù)學(xué)院學(xué)報(bào),2010,10(4):28-30.

        [8]Reading TDM/TDMS Files with The MathWorks[J],2010.

        猜你喜歡
        狀態(tài)機(jī)隊(duì)列發(fā)動(dòng)機(jī)
        隊(duì)列里的小秘密
        基于多隊(duì)列切換的SDN擁塞控制*
        軟件(2020年3期)2020-04-20 00:58:44
        基于有限狀態(tài)機(jī)的交會(huì)對(duì)接飛行任務(wù)規(guī)劃方法
        發(fā)動(dòng)機(jī)空中起動(dòng)包線擴(kuò)展試飛組織與實(shí)施
        在隊(duì)列里
        豐田加速駛?cè)胱詣?dòng)駕駛隊(duì)列
        新一代MTU2000發(fā)動(dòng)機(jī)系列
        新型1.5L-Eco-Boost發(fā)動(dòng)機(jī)
        FPGA設(shè)計(jì)中狀態(tài)機(jī)安全性研究
        基于反熔絲FPGA的有限狀態(tài)機(jī)加固設(shè)計(jì)
        中文字幕亚洲精品码专区| 久久精品熟女亚洲av麻| 极品粉嫩小仙女高潮喷水网站 | 区一区二区三免费观看视频| 视频在线观看国产自拍| 久久青青草原国产毛片| 亚洲sm另类一区二区三区 | 国产精品成人99一区无码| 在线综合网| 亚洲av色在线观看网站| 99久久精品人妻一区二区三区| 蜜桃视频在线观看网址| 男女啪动最猛动态图| 国产亚洲精品aaaaaaa片| 国产精品亚洲一区二区无码 | 日本最新免费二区三区| 最近最新中文字幕| 亚洲综合偷自成人网第页色| 国产三级精品三级在专区中文| 护士人妻hd中文字幕| 欧美牲交a欧美牲交aⅴ免费下载| 韩国三级中文字幕hd| 亚洲va在线∨a天堂va欧美va| 激情中文丁香激情综合| 久久午夜av一区二区| 午夜精品久久久久久久久| 日日猛噜噜狠狠扒开双腿小说| 国产日韩亚洲欧洲一区二区三区| 吃下面吃胸在线看无码| 粗一硬一长一进一爽一a视频| 丰满少妇被爽的高潮喷水呻吟| 久久综合亚洲色一区二区三区| 成人片黄网站色大片免费观看app| 国产视频在线一区二区三区四区| 中文字幕国内一区二区| 午夜免费观看日韩一级片| 国产无遮挡又爽又刺激的视频老师| 久久久久久人妻一区二区三区 | 亚洲熟妇av日韩熟妇av| 国产精品人成在线观看不卡| 一本色道久久88—综合亚洲精品|