圖5.2 程序前面板截圖1
圖5.3 程序前面板截圖2 5.3 控制按鈕功能的實(shí)現(xiàn)方案 5.3.1 按鈕基本功能的實(shí)現(xiàn)方案 控制按鈕需要在被單擊后,程序即開(kāi)始執(zhí)行與之對(duì)應(yīng)的部分,同時(shí)又不應(yīng)對(duì)主程序的執(zhí)行產(chǎn)生影響。為達(dá)到這一目的,可以使用“功能按鈕+條件結(jié)構(gòu)”形式。即將每一個(gè)功能按鈕所對(duì)應(yīng)功能的程序部分,分別封裝在一個(gè)個(gè)條件結(jié)構(gòu)框中,同時(shí)分別建立布爾(是非邏輯)傳遞的程序連接線,將按鈕的布爾狀態(tài)傳遞給條件結(jié)構(gòu)的“分支選擇器”端口。當(dāng)按鈕未被點(diǎn)擊時(shí),連接線所傳遞的布爾信號(hào)一直為否,此時(shí)條件結(jié)構(gòu)中的程序?yàn)榭眨划?dāng)按鈕受到點(diǎn)擊,“分支選擇器”將條件結(jié)構(gòu)的邏輯切換至“真”,并開(kāi)始執(zhí)行條件結(jié)構(gòu)框中的程序部分。
圖5.4 “控制按鈕-條件結(jié)構(gòu)”示意圖 在條件結(jié)構(gòu)框中程序部分執(zhí)行結(jié)束過(guò)后,該功能按鈕可以再次待命,接受觸發(fā)。同時(shí)在一個(gè)條件結(jié)構(gòu)程序執(zhí)行的過(guò)程中,其他功能按鈕也可以觸發(fā)其對(duì)應(yīng)的條件結(jié)構(gòu)。由此實(shí)現(xiàn)了功能按鈕之間的相互獨(dú)立性。 此外,為保證各功能按鈕之間不受操作順序影響,并可以重復(fù)操作,必須是主程序具有循環(huán)特性。因此選擇LabVIEW函數(shù)面板-結(jié)構(gòu)選框中的“While循環(huán)”作為主程序的總體結(jié)構(gòu),將所有的功能按鈕和其條件結(jié)構(gòu)包含在其中。這樣便實(shí)現(xiàn)了各功能按鈕可以重復(fù)性,同時(shí)各功能按鈕之間為并列關(guān)系,其邏輯順序不受操作順序的影響。
圖5.5 While結(jié)構(gòu)示意圖 5.3.2 功能鈕的相互邏輯控制 有的控制按鈕在彼此之間具有獨(dú)特的邏輯關(guān)系,如“打開(kāi)”和“關(guān)閉”按鈕,二者不能同時(shí)起作用,否則將造成程序卡死或崩潰。又如,在“開(kāi)始試驗(yàn)按鈕”被點(diǎn)擊之前,若“保存結(jié)果”按鈕被點(diǎn)擊,則會(huì)得到空的結(jié)果。因此,在控制按鈕的相互邏輯上,需要依靠程序形成一定的邏輯保護(hù),以避免意料之外的操作和結(jié)果出現(xiàn)。 對(duì)于程序中可能出現(xiàn)的邏輯沖突,可以使用“隱藏-顯示”的方法從根源上避免誤操作。即在不需要其發(fā)揮作用時(shí),將對(duì)象的“顯示”屬性設(shè)置為“假”,當(dāng)需要時(shí),再將其“顯示”屬性設(shè)置為“真”。 在此程序中,“有效燃油消耗率”圖表、“保存圖形”功能按鈕和“關(guān)閉”按鈕必須在試驗(yàn)過(guò)程執(zhí)行過(guò)后才可以點(diǎn)擊。因此對(duì)這三個(gè)對(duì)象使用“隱藏-顯示”的方法,在點(diǎn)擊“顯示有效燃油消耗”按鈕后將他們的顯示屬性修改為“真”,在點(diǎn)擊“關(guān)閉”按鈕后,將他們的顯示屬性修改為“假”。
圖5.6 按鈕功能邏輯控制模塊圖
5.4 程序初始化和圖表清空功能的實(shí)現(xiàn) 5.4.1 程序的初始化模塊 在程序開(kāi)始運(yùn)行時(shí),可能程序中保存有上一次執(zhí)行的殘留數(shù)據(jù),圖形或運(yùn)行狀態(tài),因此必須對(duì)程序進(jìn)行初始化。 在邏輯上,初始化程序模塊必須先于主程序被執(zhí)行,以保證其初始化的有效性。因此,可采用LabVIEW函數(shù)面板-結(jié)構(gòu)選框中的“平鋪式順序結(jié)構(gòu)”來(lái)實(shí)現(xiàn)。將初始化程序部分置于平鋪式順序結(jié)構(gòu)框中的“第0幀”中,再將主程序部分分別依次置于順序結(jié)構(gòu)框的“第1幀”“第2幀”…中。程序在執(zhí)行時(shí),將按照順序結(jié)構(gòu)所確定的次序依次執(zhí)行。
圖5.7 平鋪式順序結(jié)構(gòu)示意圖
5.4.2 圖表清空功能實(shí)現(xiàn) 在試驗(yàn)過(guò)程中,有可能對(duì)一次試驗(yàn)效果不滿意,或者需要反復(fù)試驗(yàn),此時(shí)則需要對(duì)顯示控件中的圖表進(jìn)行清空,以避免出現(xiàn)圖形重疊或超出記錄范圍的情況。 試驗(yàn)系統(tǒng)中的圖形顯示控件分為兩種,波形圖表和xy圖。二者具有不同的特點(diǎn),需要使用不同的方法進(jìn)行初始化操作。 波形圖表是現(xiàn)實(shí)一條或多條曲線的特殊數(shù)值顯示控件,一般用于顯示以恒定速率采集到的數(shù)據(jù)。波形圖表一般一次接受一個(gè)點(diǎn)的數(shù)據(jù)。波形圖表使用于實(shí)時(shí)測(cè)量中的參數(shù)監(jiān)控。 對(duì)于波形圖表的初始化,可以采用將空白數(shù)組以賦值的方式傳遞給波形圖表的“歷史數(shù)據(jù)”屬性文件,便可達(dá)到清空波形圖表的功能。 XY圖是通用的笛卡爾繪圖對(duì)象,用于繪制多值函數(shù),可顯示任何均均勻采用或非均勻采樣的點(diǎn)的集合。與波形圖表不同,XY圖一次性完成波形顯示刷新的。XY的輸入數(shù)據(jù)類型是由兩組數(shù)據(jù)打包構(gòu)成的簇,簇的每一對(duì)數(shù)據(jù)都對(duì)應(yīng)一個(gè)顯示數(shù)據(jù)點(diǎn)的X、Y坐標(biāo)。 對(duì)于XY圖的初始化,比波形圖表相對(duì)復(fù)雜。可先形成兩個(gè)個(gè)由0構(gòu)成的數(shù)組,再將兩個(gè)數(shù)組打包成簇,最后再將此簇以賦值的方式傳遞給XY圖的“值”屬性文件。這樣便達(dá)到了清空XY圖圖形的目的。
圖5.8 清楚曲線功能模塊圖 5.5 仿真運(yùn)行功能模塊 由于在制作和測(cè)試程序的過(guò)程中,不一定有可用的試驗(yàn)臺(tái)架、數(shù)據(jù)采集卡等設(shè)備和條件,故程序應(yīng)該具有能夠獨(dú)立在電腦上運(yùn)行的模擬仿真模塊。模擬仿真模塊應(yīng)該能夠根據(jù)實(shí)際試驗(yàn)中取得的經(jīng)驗(yàn)數(shù)據(jù),進(jìn)行一定的偏差和擾動(dòng)處理,生成具有一定隨機(jī)性同時(shí)又具有能反映真實(shí)情況的代表性的模擬初始數(shù)據(jù),作為實(shí)驗(yàn)系統(tǒng)的輸入信號(hào)使用。 在此實(shí)驗(yàn)中,由測(cè)功儀產(chǎn)生的有效功率信號(hào)Pe、由轉(zhuǎn)速傳感器產(chǎn)生的轉(zhuǎn)速信號(hào)n以及由油耗儀產(chǎn)生的每小時(shí)燃油消耗量信號(hào)B都是重要的初始信號(hào),主考慮對(duì)這三者進(jìn)行仿真。[17]其他傳感器信號(hào),如排氣溫度,冷卻水溫度等在這三個(gè)信號(hào)的基礎(chǔ)上再通過(guò)傳遞函數(shù)子程序模擬產(chǎn)生。 對(duì)于最重要的每小時(shí)燃油消耗量信號(hào)B,使用曲線擬合的方法,即根據(jù)實(shí)際試驗(yàn)中所得到的“每小時(shí)燃油消耗量-有效功率”曲線,進(jìn)行取點(diǎn)擬合的方法,得到擬合曲線。[18]
圖5.9 擬合取點(diǎn)參數(shù)圖
圖5.10 擬合曲線圖 首頁(yè) 上一頁(yè) 2 3 4 5 6 下一頁(yè) 尾頁(yè) 5/6/6 相關(guān)論文
首頁(yè) 上一頁(yè) 2 3 4 5 6 下一頁(yè) 尾頁(yè) 5/6/6
本站部分文章來(lái)自網(wǎng)絡(luò),如發(fā)現(xiàn)侵犯了您的權(quán)益,請(qǐng)聯(lián)系指出,本站及時(shí)確認(rèn)刪除 E-mail:349991040@qq.com
論文格式網(wǎng)(m.donglienglish.cn--論文格式網(wǎng)拼音首字母組合)提供其他論文畢業(yè)論文格式,論文格式范文,畢業(yè)論文范文