強(qiáng)大自己baumer編碼器GM401.B902602
強(qiáng)大自己baumer編碼器GM401.B902602
強(qiáng)大自己baumer編碼器GM401.B902602
惠言達(dá)寄語:
不管你經(jīng)歷多痛的事情,到后都會(huì)漸漸遺忘。因?yàn)?,沒有什么能敵得過時(shí)光??傆心敲匆粋€(gè)人,不管他以前如何對(duì)你,你總會(huì)找到原諒他的理由。
以下還有多種品牌型號(hào)產(chǎn)品可供選擇:
baumer 10159566 GK473.0073PD3 編碼器
baumer 11032019 GK473.0075PD3 編碼器
baumer 11032020 GK473.0078PD3 編碼器
baumer 11032021 GM400.0101102 編碼器
baumer 11032022 GM400.0102102 編碼器
baumer 11032023 GM400.010A002 編碼器
baumer 11032024 GM400.010A102 編碼器
baumer 11032026 GM400.010A204 編碼器
baumer 11032027 GM400.010A304 編碼器
baumer 11097948 GM400.010A307 編碼器
baumer 11083170 GM400.010A324 編碼器
baumer 11102054 GM400.010A326 編碼器
baumer 11032028 GM400.010R002000 編碼器
baumer 11124074 GM400.0114106 編碼器
baumer 11102704 GM400.011A102 編碼器
baumer 11032029 GM400.0121102 編碼器
baumer 11032030 GM400.0122102 編碼器
baumer 11032031 GM400.0122602 編碼器
baumer 11040890 GM400.012A002 編碼器
baumer 11032032 GM400.012A102 編碼器
baumer 11032033 GM400.012A204 編碼器
baumer 11032034 GM400.012R002000 編碼器
baumer 11032035 GM400.0201202 編碼器
baumer 11052372 GM400.0204106 編碼器
baumer 11043916 GM400.020A002 編碼器
baumer 11032036 GM400.020A102 編碼器
baumer 11032037 GM400.020A306 編碼器
baumer 11081963 GM400.020A307 編碼器
baumer 11051752 GM400.030A002 編碼器
baumer 11032038 GM400.030A102 編碼器
baumer 11032039 GM400.0402102 編碼器
baumer 11032040 GM400.040A002 編碼器
baumer 11032041 GM400.040A102 編碼器
baumer 11032042 GM400.0922102 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低。基于圖形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖。可對(duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11087510 GM400.0A04104 編碼器
baumer 11078123 GM400.0A0A102 編碼器
baumer 11100396 GM400.0B0A002 編碼器
baumer 11101635 GM400.0B0A102 編碼器
baumer 11092920 GM400.A101102 編碼器
baumer 11032044 GM400.A102102 編碼器
baumer 11086106 GM400.A104404 編碼器
baumer 11032045 GM400.A10A002 編碼器
baumer 11032046 GM400.A10A102 編碼器
baumer 11032048 GM400.A10A207 編碼器
baumer 11032049 GM400.A10A304 編碼器
baumer 11032050 GM400.A10A307 編碼器
baumer 11032052 GM400.A112102 編碼器
baumer 11032053 GM400.A11A102 編碼器
baumer 11090578 GM400.A11A227 編碼器
baumer 11032054 GM400.A122102 編碼器
baumer 11032056 GM400.A12A002 編碼器
baumer 11032057 GM400.A12A102 編碼器
baumer 11032058 GM400.A12AB02 編碼器
baumer 11032059 GM400.A201102 編碼器
baumer 11044894 GM400.A202102 編碼器
baumer 11032060 GM400.A20A002 編碼器
baumer 11032061 GM400.A20A102 編碼器
baumer 11032064 GM400.A301102 編碼器
baumer 11104388 GM400.A302402 編碼器
baumer 11032066 GM400.A302B02 編碼器
baumer 11032067 GM400.A30A102 編碼器
baumer 11032069 GM400.A402B02 編碼器
baumer 11032070 GM400.A40A002 編碼器
baumer 11032071 GM400.A40A102 編碼器
baumer 11106020 GM400.A90A102 編碼器
baumer 11116333 GM400.AA0A102 編碼器
baumer 11032072 GM400.B201102 編碼器
baumer 11032073 GM400.B20A102 編碼器
baumer 11032075 GM400.E15 編碼器
baumer 11032125 GM401.1101102 編碼器
baumer 11032126 GM401.1102102 編碼器
baumer 11032127 GM401.110A002 編碼器
baumer 11032128 GM401.110A102 編碼器
baumer 11054617 GM401.110A306 編碼器
baumer 11032130 GM401.1122102 編碼器
baumer 11042925 GM401.112A102 編碼器
baumer 11032131 GM401.1132102 編碼器
baumer 11053437 GM401.120A002 編碼器
baumer 11032132 GM401.120A102 編碼器
baumer 11032133 GM401.120A306 編碼器
baumer 11032134 GM401.1302102 編碼器
baumer 11032135 GM401.1402102 編碼器
baumer 11032136 GM401.140A102 編碼器
baumer 11032137 GM401.B101102 編碼器
baumer 11112404 GM401.B101202 編碼器
baumer 11032139 GM401.B102102 編碼器
baumer 11038479 GM401.B102B02 編碼器
baumer 11032142 GM401.B10A002 編碼器
baumer 11032143 GM401.B10A102 編碼器
baumer 11032145 GM401.B111102 編碼器
baumer 11032146 GM401.B112102 編碼器
baumer 11032147 GM401.B11A102 編碼器
baumer 11032148 GM401.B12A102 編碼器
baumer 11032149 GM401.B12A304 編碼器
baumer 11042927 GM401.B13A102 編碼器
baumer 11032150 GM401.B201102 編碼器
baumer 11075908 GM401.B201202 編碼器
baumer 11032151 GM401.B202102 編碼器
baumer 11032152 GM401.B20A002 編碼器
baumer 10158123 GM401.B20A102 編碼器
baumer 11032154 GM401.B20A304 編碼器
baumer 11039318 GM401.B23A102 編碼器
baumer 11032156 GM401.B23AB02 編碼器
baumer 11091229 GM401.B302102 編碼器
baumer 11084297 GM401.B30A002 編碼器
baumer 11004213 GM401.B30A102 編碼器
baumer 11082901 GM401.B30A306 編碼器
baumer 11032159 GM401.B40A002 編碼器
baumer 11032160 GM401.B40A102 編碼器
baumer 11098421 GM401.B902602 編碼器
baumer 11032162 GM401.E25 編碼器
baumer 11032163 GM401.E26 編碼器
baumer 11032164 GM401.E29 編碼器
baumer 11032166 GM401.E31 編碼器
baumer 10158130 GM401.E34 編碼器
baumer 11089465 GM401.E36 編碼器
baumer 11032173 GM401.E42 編碼器
baumer 11045957 GM401.E48 編碼器
baumer 11045976 GM401.E49 編碼器
baumer 11053101 GM401.E50 編碼器
baumer 11080430 GM401.E51 編碼器
baumer 11092086 GM401.E52 編碼器
baumer 11092087 GM401.E53 編碼器
baumer 11092088 GM401.E54 編碼器
baumer 11093675 GMP1,0 LT-1 B3 12X20 編碼器
baumer 11084932 GMP1,0 LT-1 B5 12X20/NORIS 編碼器
baumer 11075871 GMP1,0 LT-1 B5n 14X30 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]。科研試驗(yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)。總行數(shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11078550 GMP1,0 LT-1 B5S 55 14X30 編碼器
baumer 11081064 GMP1,0 LT-10 + FS90-1 B5S 14x30 編碼器
baumer 11082668 GMP1,0 LT-10 + FS90-2 B5n 14X30 編碼器
baumer 11089528 GMP1,0 LT-10 + OG9 D 25 B5n 14X30 FV 編碼器
baumer 11093481 GMP1,0 LT-10 B14 14x30 FV 編碼器
baumer 11083275 GMP1,0 LT-10 B3/B5/B14 12x20/10x15 編碼器
baumer 11055545 GMP1,0 LT-10 B5K 14x30 編碼器
baumer 11105728 GMP1,0 LT-10 B5k 14X30 SR 編碼器
baumer 11086071 GMP1,0 LT-10 B5k B14 14X30 / 10X15 編碼器
baumer 11077853 GMP1,0 LT-10 B5n 14X30 / 10X15 編碼器
baumer 11088571 GMP1,0 LT-10 B5n 14X30 FV 編碼器
baumer 11087361 GMP1,0 LT-10+POG9 DN 1000+FSL3 B5k 14x30 編碼器
baumer 11076790 GMP1,0 LT-14 B5 12X20 編碼器
baumer 11095641 GMP1,0 LT-3 B5 12X20 編碼器
baumer 11099162 GMP1,0 LT-4 + FS90-1 B5n 14X30 編碼器
baumer 11077412 GMP1,0 LT-4 + FS90-2 B5n 14X30 編碼器
baumer 11099952 GMP1,0 LT-4 + FS90-3 B5n 14X30 編碼器
baumer 11111431 GMP1,0 LT-4 + FS90-4 B3 12x20 編碼器
baumer 11087654 GMP1,0 LT-4 + FS90-4 B5 12X20 編碼器
baumer 11084801 GMP1,0 LT-4 + FS90-4 B5n 14X30 FV 編碼器
baumer 11084808 GMP1,0 LT-4 + FS90-5 B5n 14X30 FV 編碼器
baumer 11090504 GMP1,0 LT-4 + FS90-5 B5S 14x30 編碼器
baumer 11084770 GMP1,0 LT-4 + POG9 D 600 B5n 14X30 編碼器
baumer 11084431 GMP1,0 LT-4 B14 14x30 FV 編碼器
baumer 11055540 GMP1,0 LT-4 B3 12X20 編碼器
baumer 11077006 GMP1,0 LT-4 B3 12X20 FV 編碼器
baumer 11094278 GMP1,0 LT-4 B3 12x20/10x15 + Haube 編碼器
baumer 11084598 GMP1,0 LT-4 B3 12x20/10x15 FV 編碼器
baumer 11083651 GMP1,0 LT-4 B3/B5 12x20/10x15 FV + Haube 編碼器
baumer 11083637 GMP1,0 LT-4 B3/B5/B14 12x20/10x15 FV 編碼器
baumer 11066658 GMP1,0 LT-4 B5 12x20 編碼器
baumer 11075516 GMP1,0 LT-4 B5 12X20 FV 編碼器
baumer 11084368 GMP1,0 LT-4 B5 12x20/10x15 編碼器
baumer 11090951 GMP1,0 LT-4 B5 55 12X20/NORIS FV 編碼器
baumer 11084678 GMP1,0 LT-4 B5k 14X30 編碼器
baumer 11075534 GMP1,0 LT-4 B5k 14X30 FV 編碼器
baumer 11092657 GMP1,0 LT-4 B5k B14 14X30 / 10X15 編碼器
baumer 11055546 GMP1,0 LT-4 B5N 14x30 編碼器
baumer 11077410 GMP1,0 LT-4 B5n 14X30 / 10X15 編碼器
baumer 11055496 GMP1,0 LT-4 B5N 14x30 FV 編碼器
baumer 11084802 GMP1,0 LT-4 B5n 14X30/10X15 FV 編碼器
baumer 11085945 GMP1,0 LT-4 B5N/B14 55 14x30 / Noris FV 編碼器
baumer 11055543 GMP1,0 LT-4 B5S 14X30 編碼器
baumer 11075874 GMP1,0 LT-4 B5s 14X30 / 10X15 FV 編碼器
baumer 11077199 GMP1,0 LT-4 B5s 14X30 / NORIS FV 編碼器
baumer 11080781 GMP1,0 LT-4 B5S 55 14X30 FV 編碼器
baumer 11102467 GMP1,0 LT-5 B14 14x30 編碼器
baumer 11082025 GMP1,0 LT-5 B5 12X20 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖。可對(duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)。總行數(shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上。基于LabVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11097491 GMP1,0 LT-6 + FS90-2 B5n 14X30 FV 編碼器
baumer 11086171 GMP1,0 LT-6 + FS90-2 B5S 14x30 編碼器
baumer 11089540 GMP1,0 LT-6 B3 12X20 FV 編碼器
baumer 11093575 GMP1,0 LT-6 B3/B5/B14 12x20/10x15 AB-H 編碼器
baumer 11078777 GMP1,0 LT-7 + FS90-1 B14 14x30 編碼器
baumer 11080401 GMP1,0 LT-7 + FS90-3 B5kd 14X30 編碼器
baumer 11091906 GMP1,0 LT-7 B3 12X20 編碼器
baumer 11098672 GMP1,0 LT-7 B5 + POG9GDN100I / DN512TTL 編碼器
baumer 11099126 GMP1,0 LT-7 B5 12X20 編碼器
baumer 11092476 GMP1,0 LT-7 B5f 55 16k1:30 編碼器
baumer 11076042 GMP1,0 LT-7 B5k 14X30 編碼器
baumer 11080015 GMP1,0 LT-7 B5k B14 14X30 / 10X15 編碼器
baumer 11055547 GMP1,0 LT-7 B5N 14x30 編碼器
baumer 11055544 GMP1,0 LT-7 B5S 14X30 編碼器
baumer 11085251 GMP1,0 LT-7 B5S 55 14X30 FV 編碼器
baumer 11102007 GMP1,0 LT-8 B5s/B14 14X30 / 10X15 編碼器
baumer 11084427 GMP1,0/TDP13 AB-HAUBE V 2WE 67 編碼器
baumer 11111547 GMPZ1,0 LT-1 B3 12X20 / 10X15 編碼器
baumer 11089017 GMPZ1,0 LT-1 B5 12X20 編碼器
baumer 11078459 GMPZ1,0 LT-1 B5N 14X30 編碼器
baumer 11092540 GMPZ1,0 LT-10 B5K 14x30 / 10X15 編碼器
baumer 11113386 GMPZ1,0 LT-4 + POG9 DN 1000 I + FSL2 編碼器
baumer 11095827 GMPZ1,0 LT-4 + POG9 DN 112 B14/B14 編碼器
baumer 11102322 GMPZ1,0 LT-4 B3 12X20 編碼器
baumer 11089170 GMPZ1,0 LT-4 B3 12X20 / 10X15 編碼器
baumer 11088885 GMPZ1,0 LT-4 B5 12X20 編碼器
baumer 11101507 GMPZ1,0 LT-4 B5 12x20/10x15 編碼器
baumer 11091365 GMPZ1,0 LT-4 B5K 14x30 FV 編碼器
baumer 11083374 GMPZ1,0 LT-4 B5s 14X30 編碼器
baumer 11084433 GMPZ1,0 LT-4 B5S 14x30/10x15 編碼器
baumer 11113249 GMPZ1,0 LT-5 B3 12X20 編碼器
baumer 11075545 GMPZ1,0 LT-7 B3 12X20 / 10X15 編碼器
baumer 11079189 GMPZ1,0 LT-7 B5N 14X30 編碼器
baumer 11083183 GMPZ1,0 LT-7 B5s 14X30 編碼器
baumer 11032202 GNAMG.0153P32 編碼器
baumer 11107376 GNAMG.0153P33 編碼器
baumer 11032203 GNAMG.0153PA2 編碼器
baumer 11032204 GNAMG.0155P32 編碼器
baumer 10167424 GNAMG.0155PA2 編碼器
baumer 11002147 GNAMG.0213P32 編碼器
baumer 11002473 GNAMG.0213PA2 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11032208 GNAMG.0215P32 編碼器
baumer 11032209 GNAMG.0215PA2 編碼器
baumer 11032210 GNAMG.0223P32 編碼器
baumer 11032211 GNAMG.0223PA2 編碼器
baumer 11032212 GNAMG.0225P32 編碼器
baumer 11032213 GNAMG.0225PA2 編碼器
baumer 11032214 GNAMG.0233P32 編碼器
baumer 11002523 GNAMG.0235P32 編碼器
baumer 11032216 GNAMG.0235PA2 編碼器
baumer 11032222 GPI0W.0101215 編碼器
baumer 11054525 GPI0W.0101415 編碼器
baumer 11032223 GPI0W.0102215 編碼器
baumer 11032224 GPI0W.0102439 編碼器
baumer 11032225 GPI0W.1101215 編碼器
baumer 11053675 GPI0W.1101415 編碼器
baumer 10138849 GPI0W.1101439 編碼器
baumer 11032227 GPI0W.1101615 編碼器
baumer 11032228 GPI0W.1101639 編碼器
baumer 11032229 GPI0W.1102239 編碼器
baumer 11032230 GPI0W.1102415 編碼器
baumer 11045857 GPI0W.1102439 編碼器
baumer 11053868 GPI0W.1102615 編碼器
baumer 11032231 GPI0W.1102639 編碼器
baumer 11032232 GPI0W.3101439 編碼器
baumer 11032233 GPI0W.3102239 編碼器
baumer 11032234 GPI0W.5102239 編碼器
baumer 11086912 GT3.10 Kohlebürstensatz 2,5X3X6 H7 編碼器
baumer 11077984 GT3.10 L/405 4H7 編碼器
baumer 11055562 GT3.10L/405 6H7 編碼器
baumer 11055535 GT3.10L/405 6H7 編碼器
baumer 11095627 GT5.05 L /410 12M SP AB-H PG7 編碼器
baumer 11077408 GT5.05 L/402,5 10H7 Steckerdeckel 編碼器
baumer 11077564 GT5.05 L/402,5 11H7 編碼器
baumer 11076963 GT5.05 L/403 12H7 編碼器
baumer 11078073 GT5.05 L/405 8H7 編碼器
baumer 11042554 GT5.05 L/407 12H7 編碼器
baumer 11100107 GT5.05 L/407 12H7 Kü 編碼器
baumer 11042555 GT5.05 L/407 8H7 編碼器
baumer 11090956 GT5.05 L/407 8H7 Kü 編碼器
baumer 11078774 GT5.05 L/409 12,7H7 Kü 編碼器
baumer 11078252 GT5.05 L/410 11H7 編碼器
baumer 11042560 GT5.05 L/410 12H7 編碼器
baumer 11066624 GT5.05 L/410 8H7 編碼器
baumer 11076061 GT5.05 L/410 8H7 編碼器
baumer 11056794 GT5.05 MONTAGEKEGEL 編碼器
baumer 11081081 GT5.05L/402,5 10H7 Steckkontakte 編碼器
baumer 11086706 GT5.05L/407 12,7H7 編碼器
baumer 11066627 GT5.05L/409 12,7H7 編碼器
baumer 11071539 GT5.05L/410 10H7 Steckkontakte 編碼器
baumer 11042559 GT5.05L/410 12,7H7 編碼器
baumer 11067447 GT7.08 L/410 12H7 Kab 0,2 編碼器
baumer 11087862 GT7.08 L/410 14H7 編碼器
baumer 11087316 GT7.08 L/410 14H7 KAB 0,6 編碼器
baumer 11136596 GT7.08 L/410 16H7 編碼器
baumer 11081395 GT7.08 L/415 14H7 編碼器
baumer 11067464 GT7.08 L/415 9H7 編碼器
baumer 11067449 GT7.08 L/415 9H7 編碼器
baumer 11067427 GT7.08 L/420 10H7 編碼器
baumer 11067440 GT7.08 L/420 10H7 Kab 0,6 編碼器
baumer 11088147 GT7.08 L/420 12H7 編碼器
baumer 11067443 GT7.08 L/420 12H7 Kab 0,6 編碼器
baumer 11002434 GT7.08 L/420 14H7 編碼器
baumer 11075526 GT7.08 L/420 14H7 für Anbau FOG9 編碼器
baumer 11067451 GT7.08 L/420 14H7 KAB 0,6 編碼器
baumer 11067457 GT7.08 L/420 14H7 PF Kab 0,3 編碼器
baumer 11097338 GT7.08 L/420 15H7 Kab 0.6 編碼器
baumer 11097593 GT7.08 L/420 15H7 ST-RAD 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11002449 GT7.08 L/420 16H7 編碼器
baumer 11097922 GT7.08 L/420 16H7 KAB 0,3 編碼器
baumer 11077351 GT7.08 L/430 14H7 編碼器
baumer 11079659 GT7.08 L/430 15H7 ST-RAD 編碼器
baumer 11080071 GT7.08 L/430 16H7 編碼器
baumer 11098990 GT7.08 L/430 16H7 KAB 0,3 編碼器
baumer 11056827 GT7.08 MONTAGEKEGEL 編碼器
baumer 11100561 GT7.16 L/420 Z 16H7 Kab 0,6 編碼器
baumer 11083038 GT7.16 L/440 14H7 für Anbau FOG9 編碼器
baumer 11081742 GT7.16 L/440 14H7 Kab 0,6 編碼器
baumer 11091981 GT7.16 L/440 16H7 編碼器
baumer 11084664 GT7.16 L/460 12H7 Kab 0,6 編碼器
baumer 11083995 GT7.16 L/460 14H7 Kab 0,6 編碼器
baumer 11091723 GT7.16 L/460 15H7 編碼器
baumer 11076207 GT7.16 L/460 15H7 Kab 0,6 編碼器
baumer 11107602 GT7.16 L/460 16H7 編碼器
baumer 11077162 GT7.16 L/460 16H7 KAB0,6 編碼器
baumer 11071360 GT7.16L/460 14H7 編碼器
baumer 11076211 GT9.06 BüRSTE 6x4x10 H87 編碼器
baumer 11091433 GT9.06 L/406 6mA 16H7 IP44 編碼器
baumer 11067309 GT9.06 L/410 12H7 編碼器
baumer 11085830 GT9.06 L/410 12H7 IP44 編碼器
baumer 11089054 GT9.06 L/420 10H7 PF3x3 編碼器
baumer 11079717 GT9.06 L/420 12H7 編碼器
baumer 11042570 GT9.06 L/420 12H7 IP44 編碼器
baumer 11085323 GT9.06 L/420 14H7 00 SP 編碼器
baumer 11067293 GT9.06 L/420 14H7 IP44 編碼器
baumer 11042566 GT9.06 L/420 16H7 編碼器
baumer 11077143 GT9.06 L/420 16H7 IP44 編碼器
baumer 11067300 GT9.06 L/420 16H7 SP U PF 編碼器
baumer 11067317 GT9.06 L/420K 17K1:10 編碼器
baumer 11080145 GT9.06 L/420K 17K1:10 AB-HAUBE 編碼器
baumer 11056815 GT9.06 MONTAGEKEGEL 編碼器
baumer 11067295 GT9.06/420 00 16H7 M SP U PF 編碼器
baumer 11076162 GTB9 / GTR9 AB-Haube IP68 編碼器
baumer 11083270 GTB9.06 L/420K + Anbausatz OG6 編碼器
baumer 11067338 GTB9.06L/420 12H7 編碼器
baumer 11067336 GTB9.06L/420 16H7 編碼器
baumer 11067343 GTB9.06L/420 16H7 PF 編碼器
baumer 11067345 GTB9.06L/420 K 編碼器
baumer 11087796 GTB9.06L/420 K + OG9 D 500 編碼器
baumer 11075945 GTB9.16 L/460 16H7 編碼器
baumer 11075550 GTB9.16 L/460 22H7 60V 編碼器
baumer 11092905 GTB9.16 L/460K 17K 編碼器
baumer 11096487 GTF7.08 L/410 11x30 編碼器
baumer 11067474 GTF7.08 L/420 11x30 編碼器
baumer 11084515 GTF7.16 L/460 11X30 PF GU? LS 編碼器
baumer 11088765 GTF7.16L/440 GU? PF 編碼器
baumer 11066631 GTL5.05L/407 D12 編碼器
baumer 11094055 GTL5.05L/410 D12 編碼器
baumer 11101265 GTL7.08 L/420 14H7 編碼器
baumer 11068434 GTL7.16L/460 編碼器
baumer 11086990 GTL7.16L/460 17K 編碼器
baumer 11077831 GTR9.16 L/430 16H7 編碼器
baumer 11094220 GTR9.16 L/440 16H7 + OG 9 DN 1000 編碼器
baumer 11080322 GTR9.16 L/450 16H7 編碼器
baumer 11077383 GTR9.16 L/460 16H7 + FS90-3 編碼器
baumer 11077381 GTR9.16 L/460 16H7 für B10 編碼器
baumer 11042576 GTR9.16L/420 16H7 編碼器
baumer 11042578 GTR9.16L/440 16H7 編碼器
baumer 11055534 GTR9.16L/460 16H7 S7/H7 編碼器
baumer 11042579 GTR9.16L/460 16H7 編碼器
baumer 10324189 GUMMISCHUTZKAPPE (BLAU,NG 63) 編碼器
baumer 10324179 GUMMISCHUTZKAPPE (ROT,NG 63) 編碼器
baumer 11032238 GXA1W.010B002 編碼器
baumer 11032239 GXA1W.010B102 編碼器
baumer 11032240 GXA1W.01FB102 編碼器
baumer 11043906 GXA1W.110B102 編碼器
baumer 11032241 GXA1W.11FB102 編碼器
baumer 11032242 GXA1W.A10B101 編碼器
baumer 11032243 GXA1W.A10B102 編碼器
baumer 11032244 GXA1W.B10B102 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11032249 GXA2S.330A105 編碼器
baumer 11040132 GXA2S.490A105 編碼器
baumer 11032252 GXAMS.0200000 編碼器
baumer 11032253 GXAMS.0203P32 編碼器
baumer 11008247 GXAMS.0205P32 編碼器
baumer 11032255 GXAMS.0205PA2 編碼器
baumer 11032256 GXAMS.0208P22 編碼器
baumer 11032257 GXAMS.020EPA2 編碼器
baumer 11098228 GXAMS.020EPA6 編碼器
baumer 11032258 GXAMS.1203P32 編碼器
baumer 11112956 GXAMS.1205EA2 編碼器
baumer 11032259 GXAMS.4200000 編碼器
baumer 11092843 GXAMS.4202PA2 編碼器
baumer 11089153 GXAMS.4203P32 編碼器
baumer 11093333 GXAMS.4203PA2 編碼器
baumer 11080795 GXAMS.4203V32 編碼器
baumer 11082389 GXAMS.420EPA6 編碼器
baumer 11032260 GXAMS.5203P32 編碼器
baumer 11032261 GXAMW.0200000 編碼器
baumer 11032262 GXAMW.0203P32 編碼器
baumer 11032263 GXAMW.0203P33 編碼器
baumer 11051658 GXAMW.0203V32 編碼器
baumer 11032265 GXAMW.0205P32 編碼器
baumer 11032266 GXAMW.0208P23 編碼器
baumer 11032267 GXAMW.020EPA2 編碼器
baumer 11098965 GXAMW.020EPA6 編碼器
baumer 11080377 GXAMW.050EPA6 編碼器
baumer 11032268 GXAMW.1200000 編碼器
baumer 11032269 GXAMW.1203P32 編碼器
baumer 11032270 GXAMW.1203P33 編碼器
baumer 11093611 GXAMW.1203PA2 編碼器
baumer 11032271 GXAMW.1205P32 編碼器
baumer 11032272 GXAMW.1205P33 編碼器
baumer 11047017 GXAMW.120EPA2 編碼器
baumer 11032273 GXAMW.120EPA4 編碼器
baumer 11112373 GXAMW.120EPA6 編碼器
baumer 11054193 GXAMW.A200000 編碼器
baumer 11032274 GXAMW.A202PA2 編碼器
baumer 11050430 GXAMW.A203EA2 編碼器
baumer 11032275 GXAMW.A203P32 編碼器
baumer 11032276 GXAMW.A203P33 編碼器
baumer 11044665 GXAMW.A203PA2 編碼器
baumer 11100470 GXAMW.A205EA2 編碼器
baumer 11032278 GXAMW.A205P32 編碼器
baumer 11052712 GXAMW.A208EA2 編碼器
baumer 11032279 GXAMW.A208P23 編碼器
baumer 11032280 GXAMW.A208PA2 編碼器
baumer 11032281 GXAMW.A20EPA2 編碼器
baumer 11087012 GXAMW.A20EPA6 編碼器
baumer 11032286 GXAMW.A2T3N32 編碼器
baumer 11032287 GXAMW.B203N32 編碼器
baumer 11032288 GXAMW.B203P32 編碼器
baumer 11032289 GXAMW.B205P32 編碼器
baumer 11032291 GXAMW.B2AEPAD 編碼器
baumer 11100869 GXL2S.0204106 編碼器
baumer 11051649 GXL2S.024A102 編碼器
baumer 11089928 GXL2S.490A102 編碼器
baumer 11053395 GXL2W.0104107 編碼器
baumer 11076198 GXL2W.1114137 編碼器
baumer 11095529 GXL2W.112A002 編碼器
baumer 11096071 GXL2W.1204106 編碼器
baumer 11088134 GXL2W.1922102 編碼器
baumer 11080849 GXL2W.B114137 編碼器
baumer 11082842 GXLMS.0208EA2 編碼器
baumer 11048267 GXLMS.2205P32 編碼器
baumer 11053758 GXLMW.1203P33 編碼器
baumer 11080848 GXLMW.1203PA2 編碼器
baumer 11079083 GXLMW.A205P32 編碼器
baumer 11053216 GXLMW.A208EA2 編碼器
baumer 11080301 GXLMW.A20EPA2 編碼器
baumer 11032295 GXLMW.A20Z004 編碼器
baumer 11053397 GXLMW.B203EA2 編碼器
baumer 11053392 GXLMW.B20EPA2 編碼器
baumer 11032296 GXM1W.01041A9700 編碼器
baumer 11032297 GXM1W.01041C1 編碼器
baumer 11032298 GXM1W.01041C7700 編碼器
baumer 11032299 GXM1W.01A41A5700 編碼器
baumer 11032300 GXM1W.02031B6A00 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11032301 GXM1W.02031B9B00 編碼器
baumer 11032302 GXM1W.02031C1 編碼器
baumer 11032303 GXM1W.02041A2400 編碼器
baumer 11032304 GXM1W.02041A3700 編碼器
baumer 11032305 GXM1W.02041A5300 編碼器
baumer 11032306 GXM1W.02041A5700 編碼器
baumer 11032307 GXM1W.02041A7700 編碼器
baumer 11032308 GXM1W.02041A7A00 編碼器
baumer 11032309 GXM1W.02041A8200 編碼器
baumer 11032310 GXM1W.02041A8500 編碼器
baumer 11032311 GXM1W.02041A8700 編碼器
baumer 11032312 GXM1W.02041A9700 編碼器
baumer 11091256 GXM1W.02041AA700 編碼器
baumer 11032313 GXM1W.02041AB700 編碼器
baumer 11032314 GXM1W.02041ABB00 編碼器
baumer 11032315 GXM1W.02041B8700 編碼器
baumer 11032316 GXM1W.02041B8B00 編碼器
baumer 11032317 GXM1W.02041B9B00 編碼器
baumer 11032318 GXM1W.02041C1 編碼器
baumer 11032319 GXM1W.02041CW700 編碼器
baumer 11032320 GXM1W.02041GAA00 編碼器
baumer 11032321 GXM1W.11041C1 編碼器
baumer 11032322 GXM1W.1104602 編碼器
baumer 11084665 GXM1W.1204106 編碼器
baumer 11084790 GXM1W.1204117 編碼器
baumer 11032323 GXM1W.12041A7700 編碼器
baumer 11032324 GXM1W.12041C1 編碼器
baumer 11032325 GXM1W.A1041A7700 編碼器
baumer 11032326 GXM1W.A1041ABB00 編碼器
baumer 11032327 GXM1W.A1A41A8700 編碼器
baumer 11032328 GXM1W.A1A41A8C00 編碼器
baumer 11032329 GXM1W.A1A41A9300 編碼器
baumer 11032330 GXM1W.A2041A2400 編碼器
baumer 11032331 GXM1W.A2041A7700 編碼器
baumer 11032332 GXM1W.A2041A8400 編碼器
baumer 11032333 GXM1W.A2041A8700 編碼器
baumer 11032334 GXM1W.A2041A9700 編碼器
baumer 11032335 GXM1W.A2041AB700 編碼器
baumer 11032336 GXM1W.A2041ABB00 編碼器
baumer 11032337 GXM1W.A2041B7700 編碼器
baumer 11032338 GXM1W.A2041B8700 編碼器
baumer 11032339 GXM1W.A2041BA100 編碼器
baumer 11078350 GXM1W.A2041C1 編碼器
baumer 11032340 GXM1W.A2041CW700 編碼器
baumer 11032341 GXM1W.A204219 編碼器
baumer 11032342 GXM1W.B104C11 編碼器
baumer 11032343 GXM1W.B2041A9900 編碼器
baumer 11079982 GXM1W.B2041AB100 編碼器
baumer 11032344 GXM1W.B2041ABB00 編碼器
baumer 11032345 GXM1W.B2041B7700 編碼器
baumer 11032346 GXM1W.B2041B8900 編碼器
baumer 11104171 GXM2S.0102102 編碼器
baumer 11032358 GXM2S.010A102 編碼器
baumer 11032359 GXM2S.0112102 編碼器
baumer 11032360 GXM2S.012A102 編碼器
baumer 11093332 GXM2S.013A327 編碼器
baumer 11032361 GXM2S.020A102 編碼器
baumer 11032362 GXM2S.020A304 編碼器
baumer 11032363 GXM2S.024A306 編碼器
baumer 11039405 GXM2S.090A102 編碼器
baumer 11032364 GXM2S.1102102 編碼器
baumer 11032365 GXM2S.110A102 編碼器
baumer 11032366 GXM2S.112A102 編碼器
baumer 11032367 GXM2S.120A102 編碼器
baumer 11032368 GXM2S.124A102 編碼器
baumer 11086551 GXM2S.124A304 編碼器
baumer 11032369 GXM2S.210A102 編碼器
baumer 11032370 GXM2S.410A102 編碼器
baumer 11052669 GXM2S.420A102 編碼器
baumer 11040124 GXM2S.490A102 編碼器
baumer 11032371 GXM2S.5102102 編碼器
baumer 11032372 GXM2S.510A102 編碼器
baumer 11032373 GXM2S.512A102 編碼器
baumer 11032374 GXM2S.520A102 編碼器
baumer 11032375 GXM2S.8102102 編碼器
baumer 11100171 GXM2S.B20A327 編碼器
baumer 11032376 GXM2S.E01 編碼器
baumer 11032377 GXM2S.E02 編碼器
baumer 11032378 GXM2S.E03 編碼器
baumer 11032379 GXM2S.E05 編碼器
baumer 11083855 GXM2S.E11 編碼器
baumer 11089209 GXM2S.E12 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11097666 GXM2S.F20A306 編碼器
baumer 11032399 GXM6W.A10A105 編碼器
baumer 11090431 GXM7S.010A101 編碼器
baumer 11032401 GXM7S.110A101 編碼器
baumer 11044910 GXM7S.410A101 編碼器
baumer 11102080 GXM7S.B102101 編碼器
baumer 11032404 GXM7S.E04 編碼器
baumer 11032405 GXM7S.E05 編碼器
baumer 11051821 GXM7S.F10A101 編碼器
baumer 11032411 GXM7W.0102403 編碼器
baumer 11032412 GXM7W.0104103 編碼器
baumer 11032413 GXM7W.010A001 編碼器
baumer 11032414 GXM7W.010A101 編碼器
baumer 11032415 GXM7W.010A104 編碼器
baumer 11032416 GXM7W.1101102 編碼器
baumer 11044150 GXM7W.1102101 編碼器
baumer 11032417 GXM7W.110A101 編碼器
baumer 11090156 GXM7W.A101101 編碼器
baumer 11032418 GXM7W.A102101 編碼器
baumer 11032419 GXM7W.A102104 編碼器
baumer 11032420 GXM7W.A102402 編碼器
baumer 11032421 GXM7W.A10A001 編碼器
baumer 11032422 GXM7W.A10A101 編碼器
baumer 11032423 GXM7W.A10A102 編碼器
baumer 11032424 GXM7W.A10A104 編碼器
baumer 11032425 GXM7W.B102102 編碼器
baumer 11032426 GXM7W.B102103 編碼器
baumer 11032427 GXM7W.B104103 編碼器
baumer 11032428 GXM7W.B10A101 編碼器
baumer 11032429 GXM7W.B10A103 編碼器
baumer 11032430 GXM7W.E07 編碼器
baumer 11077522 GXM7W.E09 編碼器
baumer 11032432 GXM7W.E10 編碼器
baumer 11032433 GXM7W.E11 編碼器
baumer 11032445 GXMLW.0102001 編碼器
baumer 11032446 GXMLW.1102001 編碼器
baumer 11032450 GXMMS.0200000 編碼器
baumer 11032451 GXMMS.0202PA2 編碼器
baumer 11082737 GXMMS.0203EA2 編碼器
baumer 11032452 GXMMS.0203P32 編碼器
baumer 11032453 GXMMS.0203P33 編碼器
baumer 11032454 GXMMS.0203PA2 編碼器
baumer 11040284 GXMMS.0203V32 編碼器
baumer 11084419 GXMMS.0203VA2 編碼器
baumer 11032455 GXMMS.0205P32 編碼器
baumer 11032456 GXMMS.0205P33 編碼器
baumer 11032457 GXMMS.0205PA2 編碼器
baumer 11080800 GXMMS.0208EA2 編碼器
baumer 11032458 GXMMS.0208P22 編碼器
baumer 11032459 GXMMS.0208P23 編碼器
baumer 11032460 GXMMS.020EPA2 編碼器
baumer 11112371 GXMMS.020EPA6 編碼器
baumer 11079227 GXMMS.0F02PA2 編碼器
baumer 11032462 GXMMS.0F03P32 編碼器
baumer 11032463 GXMMS.0F05P32 編碼器
baumer 11032464 GXMMS.0F05PA2 編碼器
baumer 11032465 GXMMS.1200000 編碼器
baumer 11092190 GXMMS.1202PA2 編碼器
baumer 11092389 GXMMS.1203EA2 編碼器
baumer 11032466 GXMMS.1203P32 編碼器
baumer 11032467 GXMMS.1203P33 編碼器
baumer 11032468 GXMMS.1203V32 編碼器
baumer 11032469 GXMMS.1203VA2 編碼器
baumer 11032470 GXMMS.1205P32 編碼器
baumer 11032471 GXMMS.1205P33 編碼器
baumer 11045734 GXMMS.1208PA2 編碼器
baumer 11032472 GXMMS.120EPA2 編碼器
baumer 11099007 GXMMS.1F02PA2 編碼器
baumer 11095806 GXMMS.2200000 編碼器
baumer 11135184 GXMMS.2203EA2 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低。基于圖形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11032473 GXMMS.2205P32 編碼器
baumer 11111057 GXMMS.2208EA2 編碼器
baumer 11032474 GXMMS.3205P33 編碼器
baumer 11032475 GXMMS.3205PA2 編碼器
baumer 11032476 GXMMS.3208P23 編碼器
baumer 11032477 GXMMS.4200000 編碼器
baumer 11032478 GXMMS.4202PA2 編碼器
baumer 11098940 GXMMS.4203EA2 編碼器
baumer 11032479 GXMMS.4203P32 編碼器
baumer 11032480 GXMMS.4203PA2 編碼器
baumer 11032481 GXMMS.4203V32 編碼器
baumer 11102459 GXMMS.4208EA2 編碼器
baumer 11032482 GXMMS.4208P22 編碼器
baumer 11032483 GXMMS.420EPA2 編碼器
baumer 11032484 GXMMS.420EPA4 編碼器
baumer 11082723 GXMMS.420EPA6 編碼器
baumer 11089143 GXMMS.5202PA2 編碼器
baumer 11032485 GXMMS.5203P32 編碼器
baumer 11091972 GXMMS.5203PA2 編碼器
baumer 11032486 GXMMS.5203VA2 編碼器
baumer 11094262 GXMMS.5208EA2 編碼器
baumer 11032487 GXMMS.5208P23 編碼器
baumer 11032488 GXMMS.8203P32 編碼器
baumer 11032489 GXMMS.9203N32 編碼器
baumer 11111051 GXMMS.B208EA2 編碼器
baumer 11104691 GXMMS.B208P22 編碼器
baumer 11104698 GXMMS.B20EPA6 編碼器
baumer 11032490 GXMMS.E01 編碼器
baumer 11032492 GXMMS.E04 編碼器
baumer 11032494 GXMMS.E07 編碼器
baumer 11032495 GXMMS.E08 編碼器
baumer 11032496 GXMMS.E09 編碼器
baumer 11032497 GXMMS.E12 編碼器
baumer 11032498 GXMMS.E13 編碼器
baumer 11032501 GXMMS.E16 編碼器
baumer 11032503 GXMMS.E18 編碼器
baumer 11046402 GXMMS.E19 編碼器
baumer 11081196 GXMMS.E20 編碼器
baumer 11080877 GXMMS.E21 編碼器
baumer 11095720 GXMMS.E23 編碼器
baumer 11096669 GXMMS.E25 編碼器
baumer 11127657 GXMMS.E26 編碼器
baumer 11032504 GXMMS.T20EPA2 編碼器
baumer 11087186 GXMMS.U203P32 編碼器
baumer 11088409 GXMMS.V203P32 編碼器
baumer 11032515 GXMMW.0200000 編碼器
baumer 11032516 GXMMW.0202PA2 編碼器
baumer 11043978 GXMMW.0203EA2 編碼器
baumer 11032517 GXMMW.0203P32 編碼器
baumer 11032518 GXMMW.0203P33 編碼器
baumer 11032519 GXMMW.0203P34 編碼器
baumer 11032520 GXMMW.0203PA2 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低。基于圖形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]。科研試驗(yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。
baumer 11032521 GXMMW.0203V32 編碼器
baumer 11089372 GXMMW.0205EA2 編碼器
baumer 11032522 GXMMW.0205P32 編碼器
baumer 11032523 GXMMW.0205P33 編碼器
baumer 11032524 GXMMW.0205PA2 編碼器
baumer 11087555 GXMMW.0208EA2 編碼器
baumer 11032525 GXMMW.0208P22 編碼器
baumer 11032526 GXMMW.0208P23 編碼器
baumer 11032527 GXMMW.0208PA2 編碼器
baumer 11032528 GXMMW.020EPA2 編碼器
baumer 11032529 GXMMW.020EPA3 編碼器
baumer 11097318 GXMMW.020EPA6 編碼器
baumer 11077270 GXMMW.020EPA7 編碼器
baumer 11104170 GXMMW.0F05PA2 編碼器
baumer 11094127 GXMMW.0F08EA2 編碼器
baumer 11032533 GXMMW.1200000 編碼器
baumer 11032534 GXMMW.1202PA2 編碼器
baumer 11032535 GXMMW.1203P32 編碼器
baumer 11032536 GXMMW.1203P33 編碼器
baumer 11032537 GXMMW.1203PA2 編碼器
baumer 11048087 GXMMW.1203V32 編碼器
baumer 11032538 GXMMW.1205P32 編碼器
在航空發(fā)動(dòng)機(jī)的研制過程中,經(jīng)常需要對(duì)試驗(yàn)數(shù)據(jù)進(jìn)行分析。傳統(tǒng)的數(shù)據(jù)分析軟件如Origin、Matlab等都存在各自的一些缺點(diǎn),效率偏低?;趫D形化編程工具LabVIEW進(jìn)行數(shù)據(jù)分析平臺(tái)的設(shè)計(jì),其應(yīng)用表明,該數(shù)據(jù)分析平臺(tái)具有數(shù)據(jù)處理效率高、人機(jī)交互界面友好等優(yōu)點(diǎn),可以在各航空發(fā)動(dòng)機(jī)型號(hào)中推廣使用。
關(guān)鍵詞:LabVIEW軟件;航空發(fā)動(dòng)機(jī);數(shù)據(jù)分析
1概述
在型號(hào)研制過程中,為了完成考核試驗(yàn),需要制造一定數(shù)量的試驗(yàn)發(fā)動(dòng)機(jī),須經(jīng)過一定的運(yùn)轉(zhuǎn)時(shí)數(shù)以達(dá)到考核的目的。據(jù)統(tǒng)計(jì),型號(hào)研制一般需要20~30臺(tái)試驗(yàn)發(fā)動(dòng)機(jī)。發(fā)動(dòng)機(jī)臺(tái)架試車時(shí)數(shù)一般是5000~8000h,發(fā)動(dòng)機(jī)還遠(yuǎn)遠(yuǎn)超過這些數(shù)字[1]。長(zhǎng)期的試驗(yàn),伴隨大量的試驗(yàn)數(shù)據(jù),通過試驗(yàn)數(shù)據(jù)分析可以知道發(fā)動(dòng)機(jī)的性能好壞或者排查試驗(yàn)故障。在發(fā)動(dòng)機(jī)研制過程的工程研制階段,往往故障頻發(fā);而到了設(shè)計(jì)定型階段以后,簡(jiǎn)單常見的故障都已排除,這時(shí)候出現(xiàn)的故障往往偏系統(tǒng)性,定位也不太明確。發(fā)動(dòng)機(jī)這些故障的排除,離不開試驗(yàn)數(shù)據(jù)的采集與分析。美國(guó)國(guó)家儀器公司(NationalInstruments,簡(jiǎn)稱NI)的創(chuàng)新軟件產(chǎn)品LabVIEW(LaboratoryVirtualinstrumentEngineering),是一種圖形化的編程語言,它廣泛地被工業(yè)界、學(xué)術(shù)界和研究實(shí)驗(yàn)室所接受,視為一個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)采集和儀器控制軟件,它與VisualC++、Java等計(jì)算機(jī)編程語言相比,它拋棄了晦澀難懂的文本代碼,使得計(jì)算機(jī)編程不再是少數(shù)人的篆隸[2]。圖形化的程序語言,又稱為“G”語言。使用這種語言編程時(shí),基本上不用寫程序代碼,取而代之的是流程圖。它盡可能利用了技術(shù)人員、科學(xué)家、工程師所熟悉的術(shù)語、圖標(biāo)和概念,因此,LabVIEW是一個(gè)面向終用戶的工具。所有的LabVIEW應(yīng)用程序,即虛擬儀器(VI),由前面板和程序框圖組成。前面板是用來放置各種控件的,程序框圖是用來編寫代碼,不過LabVIEW的代碼是*圖形化的。LabVIEW提供了實(shí)現(xiàn)儀器編程和數(shù)據(jù)采集系統(tǒng)的便捷途徑。近年來,LabVIEW得到了業(yè)界的普遍認(rèn)可,越來越多的編程人員開始使用LabVIEW并把它作為編程語言的手選,通過使用LabVIEW功能強(qiáng)大的圖形化編程語言能夠成倍地提高編程效率。
2需求分析
在航空發(fā)動(dòng)機(jī)的試驗(yàn)與試飛過程中,往往會(huì)碰到各種各樣的故障,這個(gè)時(shí)候就需要查看試驗(yàn)試飛的數(shù)據(jù)(一般為txt或者csv格式),通過數(shù)據(jù)分析,發(fā)現(xiàn)問題所在。當(dāng)前流行的圖形可視化和數(shù)據(jù)分析軟件有Matlab、Mathmatica和Maple等。這些軟件功能強(qiáng)大,可以滿足科技工作中的許多需要,但使用這些軟件需要一定的計(jì)算機(jī)編程知識(shí)和矩陣知識(shí),并熟悉其中大量的函數(shù)和命令[3]??蒲性囼?yàn)中,也有大部分人使用Origin進(jìn)行數(shù)據(jù)分析,Origin為OriginLab公司出品的簡(jiǎn)單易學(xué)、操作靈活的繪圖軟件,且圖形界面漂亮,但是它也存在以下缺點(diǎn):(1)繪圖后需手動(dòng)改變圖例文字的大小、手動(dòng)更改坐標(biāo)范圍及定制柵格線。(2)沒有繪制數(shù)字量數(shù)據(jù)的選項(xiàng),因?yàn)閿?shù)字量數(shù)據(jù)不是0就是1,使用Origin繪圖,所有數(shù)字量數(shù)據(jù)線會(huì)相互重疊。而對(duì)數(shù)字量數(shù)據(jù)進(jìn)行四則運(yùn)算后再繪圖,無疑會(huì)增加工作量。(3)Origin繪制圖形后,在已繪制的圖形上增減另一參數(shù)的數(shù)據(jù)線時(shí),需要重新定制坐標(biāo)范圍與注釋文本,這在進(jìn)行故障分析時(shí),效率極為低下。因此,為了解決通用繪圖軟件存在的各種弊端,開發(fā)一款的數(shù)據(jù)分析軟件,同時(shí)適合txt和csv格式,是及其必要的。
3軟件設(shè)計(jì)
3.1主要設(shè)計(jì)思想
采用事件結(jié)構(gòu)(EventStructure)的方式,事件結(jié)構(gòu)可以用于編寫等待事件發(fā)生的高效代碼。事件結(jié)構(gòu)的優(yōu)點(diǎn)是可以減少CPU占用率,響應(yīng)及時(shí)。事件發(fā)生是由操作系統(tǒng)檢測(cè)的,并且在沒有事件發(fā)生時(shí),系統(tǒng)一直處于等待狀態(tài),避免了輪詢中的無意義查詢。事件結(jié)構(gòu)的每一個(gè)分支,可以注冊(cè)用來處理一個(gè)或多個(gè)事件。本數(shù)據(jù)分析軟件采用常用的While循環(huán)+事件結(jié)構(gòu)的方法,把“開始繪圖”、“數(shù)據(jù)輸出”等按鈕控件的值改變、“參數(shù)文件路徑”值改變、“波形圖”游標(biāo)移動(dòng)、標(biāo)尺范圍更改等注冊(cè)為事件結(jié)構(gòu)的一個(gè)分支,在每一個(gè)事件分支中進(jìn)行相應(yīng)的事件處理。
3.2總體框架路徑
輸入控件,用于打開需要繪圖的數(shù)據(jù)文件,波形圖控件用于顯示模擬量數(shù)據(jù)(如轉(zhuǎn)速、排氣溫度、燃油流量等),數(shù)字波形圖控件用于顯示數(shù)字量數(shù)據(jù)(開關(guān)量、故障字等),多列列表框用于實(shí)時(shí)顯示當(dāng)前的參數(shù)名與數(shù)值。波形圖與數(shù)字波形圖上下并排放在一起,兩者共用同一橫坐標(biāo)。
3.3軟件實(shí)現(xiàn)
3.3.1軟件工作流程軟件平臺(tái)工作流程如圖1所示。先通過參數(shù)配置VI生成繪圖參數(shù)文件,再打開主程序,加載配置文件,進(jìn)行繪圖??蓪?duì)圖形進(jìn)行縮放,拖動(dòng)游標(biāo)實(shí)時(shí)顯示游標(biāo)處的各參數(shù)值,后對(duì)圖形添加注釋并截圖保存。3.3.2得到參數(shù)配置文件進(jìn)行數(shù)據(jù)繪圖前,先要告訴軟件該列數(shù)據(jù)的參數(shù)名,是轉(zhuǎn)速、排氣溫度還是其他。然而由于不同數(shù)據(jù)文件中的參數(shù)名、參數(shù)個(gè)數(shù)和參數(shù)名的位置通常不一樣,這里使用以下方法進(jìn)行參數(shù)名的提取,如圖2所示。使用“讀取文本文件”函數(shù)(按行)讀取數(shù)據(jù)文件到字符串顯示控件,讀取到參數(shù)名時(shí)將其添加到列表框控件,后使用“寫入文本文件”函數(shù)把這些參數(shù)名保存到Excel格式參數(shù)配置文件中,如圖3所示。左邊一列為全部參數(shù)名,第二、三列分別為模擬量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名,第四、五列為數(shù)字量參數(shù)在全部參數(shù)中的序列號(hào)與它的參數(shù)名。繪圖時(shí)增減繪圖參數(shù),可直接在Excel參數(shù)配置文件中修改,再加載進(jìn)繪圖軟件中即可,大大提高工作效率。3.3.3提取數(shù)據(jù)到數(shù)組對(duì)于大數(shù)據(jù)文件(幾百M(fèi)B甚1GB以上),使用“讀取文本文件”函數(shù),會(huì)存在等待時(shí)間過長(zhǎng)或者提示“完成該操作所需內(nèi)存不足”的現(xiàn)象。在讀取數(shù)據(jù)文件時(shí),采用按行讀取的方式,見圖4,并加入計(jì)數(shù)循環(huán)次數(shù)限定,分別有起始行、總行數(shù)、大索引值,在碰到這些限制值時(shí)及時(shí)跳出循環(huán),減少循環(huán)次數(shù),避免因?yàn)閿?shù)據(jù)文件太大而導(dǎo)致計(jì)算機(jī)出現(xiàn)不響應(yīng)的現(xiàn)象。起始行———從數(shù)據(jù)文件的第幾行開始讀取數(shù)據(jù)??傂袛?shù)———讀取到數(shù)據(jù)文件的第幾行結(jié)束。大索引———參數(shù)配置文件中,所需繪圖參數(shù)的大索引值,代表每一行中要讀取的數(shù)據(jù)個(gè)數(shù)。有用數(shù)據(jù)———在進(jìn)行數(shù)據(jù)分離后得到的字符串?dāng)?shù)組。數(shù)據(jù)分離使用“匹配模式”函數(shù),其正則表達(dá)式設(shè)為“[0-9.:-]+”,可以有效分離數(shù)據(jù)文件中的正負(fù)數(shù)值、時(shí)間,存入字符串?dāng)?shù)組,以備繪圖時(shí)調(diào)用。3.3.4實(shí)時(shí)顯示坐標(biāo)值為了實(shí)時(shí)顯示當(dāng)前點(diǎn)的參數(shù)值,在波形圖與數(shù)字波形圖中以寫入游標(biāo)列表的形式創(chuàng)建動(dòng)態(tài)游標(biāo),如圖5所示通過檢測(cè)游標(biāo)移動(dòng)事件的方式,將各參數(shù)曲線在游標(biāo)處的值實(shí)時(shí)顯示到多列表控件中。3.3.5圖形縮放用圖形工具選板進(jìn)行圖形縮放時(shí),為了使波形圖和數(shù)字波形圖共用同一橫坐標(biāo),需要注冊(cè)“標(biāo)尺范圍改變”事件。在“標(biāo)尺范圍改變”事件中,波形圖與數(shù)字波形圖的橫坐標(biāo)范圍相互賦值。然后將橫坐標(biāo)范圍的平均值賦給游標(biāo)索引,使圖形縮放后,游標(biāo)顯示在圖形的中心。
4運(yùn)行結(jié)果
軟件讀取某發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)后繪圖如圖6,波形圖中顯示轉(zhuǎn)速(N)、排氣溫度(EGT)、測(cè)量的燃油流量(WF)等,數(shù)字波形圖中顯示起動(dòng)開關(guān)、起動(dòng)過程中等數(shù)字量。移動(dòng)黃顏色的游標(biāo)(圖6中虛線),右側(cè)列表框會(huì)實(shí)時(shí)顯示游標(biāo)處坐標(biāo)點(diǎn)的各參數(shù)值,文本框?qū)崟r(shí)顯示對(duì)應(yīng)的數(shù)據(jù)記錄時(shí)間;根據(jù)需求,還可以使用波形圖與數(shù)字波形圖的圖形工具選板對(duì)圖形進(jìn)行縮放;也可以右擊圖形界面,在菜單中選擇“創(chuàng)建注釋”,在合適的位置添加注釋文字,如圖6中分別在排氣溫度(EGT)和測(cè)量的燃油流量(WF)曲線上標(biāo)注“78.5”、“44.9”。5結(jié)語發(fā)動(dòng)機(jī)試驗(yàn)數(shù)據(jù)的分析是一項(xiàng)繁重、費(fèi)時(shí)的工作,使用通用的數(shù)據(jù)繪圖軟件,通常效率低下。據(jù)統(tǒng)計(jì),在熟練的情況下,使用通用繪圖軟件如Origin想把某一次的試驗(yàn)數(shù)據(jù)通過圖形表達(dá)清楚,往往需要耗時(shí)半天以上?;贚abVIEW友秀的編程環(huán)境,設(shè)計(jì)了友好的人機(jī)交互界面,通過該數(shù)據(jù)平臺(tái),1小時(shí)以內(nèi)就能完成一次數(shù)據(jù)分析;增刪繪圖曲線時(shí),通過修改參數(shù)配置文件,5分鐘以內(nèi)就可以完成圖形重繪。由于該數(shù)據(jù)處理平臺(tái)繪圖參數(shù)是從原數(shù)據(jù)文件直接讀取的,不局限于單一的發(fā)動(dòng)機(jī)型號(hào),它適用于一切txt和csv格式數(shù)據(jù)文件的分析,可以推廣到各發(fā)動(dòng)機(jī)型號(hào)中使用。