當(dāng)前位置:首頁(yè) > 測(cè)試測(cè)量 > 測(cè)試測(cè)量
[導(dǎo)讀]摘要:針對(duì)某試飛課題,在NI LabVIEW 7.0平臺(tái)下進(jìn)行了某試飛科目實(shí)時(shí)監(jiān)控軟件系統(tǒng)開(kāi)發(fā)。飛行試驗(yàn)中,實(shí)驗(yàn)分析了影響該系統(tǒng)試飛參數(shù)時(shí)間歷程圖實(shí)時(shí)刷新的原因,提出了在飛行試驗(yàn)實(shí)時(shí)監(jiān)控中,采用優(yōu)化VI及對(duì)Chart控件

摘要:針對(duì)某試飛課題,在NI LabVIEW 7.0平臺(tái)下進(jìn)行了某試飛科目實(shí)時(shí)監(jiān)控軟件系統(tǒng)開(kāi)發(fā)。飛行試驗(yàn)中,實(shí)驗(yàn)分析了影響該系統(tǒng)試飛參數(shù)時(shí)間歷程圖實(shí)時(shí)刷新的原因,提出了在飛行試驗(yàn)實(shí)時(shí)監(jiān)控中,采用優(yōu)化VI及對(duì)Chart控件二次編程的方法解決Chart曲線圖實(shí)時(shí)刷新的問(wèn)題。在此充分挖掘LabVIEW中Chart控件的屬性進(jìn)行二次編程,解決試飛參數(shù)時(shí)間歷程圖實(shí)時(shí)刷新、顯示問(wèn)題,具有很高的實(shí)用價(jià)值。
關(guān)鍵詞:VI的性能;VI執(zhí)行速度;數(shù)據(jù)更新;實(shí)時(shí)顯示

0 引言
    LabVIEW軟件是一種可視化程度較高的圖形化編程工具,以其直觀清晰、簡(jiǎn)明易學(xué)的優(yōu)點(diǎn)被作為初級(jí)編程者的首選。迄今為止,LabVIEW軟件已在石油、煤炭、工業(yè)自動(dòng)測(cè)量與控制、航空及醫(yī)學(xué)儀器等領(lǐng)域相繼得到了成功應(yīng)用。飛行試驗(yàn)實(shí)時(shí)監(jiān)控軟件是針對(duì)具體試飛科目而開(kāi)發(fā)的專用型軟件,它要求數(shù)據(jù)傳輸安全、穩(wěn)定可靠及實(shí)時(shí)性好。目前,我院飛行試驗(yàn)遙測(cè)實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)處理系統(tǒng)的客戶端實(shí)時(shí)監(jiān)控軟件,絕大多數(shù)情況下是采用NI LabVIEW的軟件開(kāi)發(fā)平臺(tái)進(jìn)行開(kāi)發(fā)。該類(lèi)型客戶端軟件,一般滿足了試飛課題的需求,保障了科研試飛。但是,針對(duì)一些實(shí)時(shí)性要求較高,試飛風(fēng)險(xiǎn)較大的特定試飛科目,如何開(kāi)發(fā)高性能的試飛科目時(shí)間歷程實(shí)時(shí)監(jiān)控軟件是本文研究的重點(diǎn)。

1 影響VI性能的因素
    VI性能的好壞主要由VI的執(zhí)行時(shí)間、數(shù)據(jù)的刷新速度和VI內(nèi)存的使用三方面決定。
    文件讀和寫(xiě)、使用GPIB、數(shù)據(jù)采集及網(wǎng)絡(luò)應(yīng)用都影響VI的執(zhí)行時(shí)間。數(shù)據(jù)在屏幕上的刷新速度與程序中控制控件、顯示控件及與控制控件相關(guān)聯(lián)的控件數(shù)目有關(guān)。此外,合理使用和高效管理VI的內(nèi)存可以提高VI的性能。

2 提高VI執(zhí)行效率的方法
    針對(duì)以上影響VI性能的因素,為提高VI的執(zhí)行效率,在進(jìn)行某客戶端實(shí)時(shí)監(jiān)控軟件系統(tǒng)設(shè)計(jì)時(shí),采用了以下編程技術(shù)來(lái)增強(qiáng)程序的可讀性。
    (1)程序避免在循環(huán)體里計(jì)算。能在循環(huán)體外計(jì)算時(shí),盡量將公式計(jì)算安排在循環(huán)體外。
    (2)在滿足軟件設(shè)計(jì)要求的前提下,將前面板顯示控件較多,畫(huà)面布局大于屏幕尺寸的VI分割成幾個(gè)VI進(jìn)行設(shè)計(jì);或者將大的VI分割成子VI。
    (3)當(dāng)VI程序框圖中使用較多矩陣(Array)或字符串(string)函數(shù)時(shí),程序框圖中盡量少用全局變量或局部變量;且輸入矩陣和輸出矩陣盡量使用相同的數(shù)據(jù)類(lèi)型。
    (4)設(shè)計(jì)程序框圖時(shí),盡量使輸出函數(shù)能復(fù)用輸入函數(shù)的內(nèi)存空間,尤其是使用矩陣、矩陣子集或字符串函數(shù)時(shí)。
    (5)如果子VI的前面板不需要顯示,去掉子VI中不用的屬性節(jié)點(diǎn)。
    (6)設(shè)計(jì)VI時(shí),避免使用復(fù)雜的數(shù)據(jù)類(lèi)型,開(kāi)發(fā)高效的程序結(jié)構(gòu)。
    (7)在VI屬性的“執(zhí)行”選項(xiàng)里面,將子VI的優(yōu)先級(jí)設(shè)置成“子程序”(subroutine),將主VI的優(yōu)先級(jí)設(shè)置為“優(yōu)先執(zhí)行”(time criti-cal Priority)的最高優(yōu)先級(jí)。

3 實(shí)時(shí)監(jiān)控中的應(yīng)用
    在NI LabVIEW 7.0平臺(tái)下基于以上編程思想,進(jìn)行了某課題實(shí)時(shí)監(jiān)控軟件的系統(tǒng)開(kāi)發(fā)。以下是其中的部分監(jiān)控畫(huà)面。監(jiān)控畫(huà)面中用Waveform Chart控件來(lái)實(shí)時(shí)顯示參數(shù)的時(shí)間歷程曲線。根據(jù)軟件的設(shè)計(jì)要求,將Chart圖表的y軸設(shè)置成自動(dòng),x軸利用控件本身的可見(jiàn)屬性x Scrollbar來(lái)及時(shí)刷新圖表顯示。
    圖1描述了數(shù)據(jù)源以1倍速率從服務(wù)器向客戶端VI發(fā)送網(wǎng)絡(luò)數(shù)據(jù),正常條件下,兩參數(shù)Par1和Par2的典型Chart趨勢(shì)圖。


    保持客戶端與服務(wù)器的網(wǎng)絡(luò)通信狀態(tài)不變,將數(shù)據(jù)源以4倍速率從服務(wù)器向客戶端發(fā)送網(wǎng)絡(luò)數(shù)據(jù),客戶端監(jiān)控畫(huà)面中兩個(gè)參數(shù)曲線出現(xiàn)臺(tái)階式的跳點(diǎn),對(duì)此現(xiàn)象不做任何處理,該現(xiàn)象一直持續(xù)。實(shí)時(shí)監(jiān)控中兩參數(shù)的曲線效果如圖2所示。產(chǎn)生圖2現(xiàn)象后,斷開(kāi)服務(wù)器,停止向客戶端發(fā)送數(shù)據(jù),同時(shí)將客戶端VI重新打包生成.exe可執(zhí)行文件,然后服務(wù)器重新開(kāi)始以4倍速率向客戶端發(fā)送網(wǎng)絡(luò)數(shù)據(jù)。VI執(zhí)行時(shí),圖2所示現(xiàn)象消失,客戶端實(shí)時(shí)監(jiān)控畫(huà)面恢復(fù)良好。


    或者利用Chart的屬性節(jié)點(diǎn)函數(shù)編程將Chart歷史數(shù)據(jù)清空,同樣地,客戶端實(shí)時(shí)監(jiān)控Chart圖表曲線正常,參數(shù)Par1,Par2實(shí)時(shí)曲線如圖3所示。
    對(duì)上述現(xiàn)象反復(fù)試驗(yàn)多次,結(jié)論仍然成立。研究、對(duì)比分析后,得出如下結(jié)論:
    (1)實(shí)時(shí)監(jiān)控軟件是網(wǎng)絡(luò)應(yīng)用程序,它本身對(duì)VI的內(nèi)存開(kāi)銷(xiāo)較大,影響VI的執(zhí)行速度。當(dāng)服務(wù)器向客戶端發(fā)送數(shù)據(jù)的速率較高時(shí),即單位時(shí)間內(nèi)VI前面板需要更新,顯示數(shù)據(jù)的頻率較快。
    (2)Chart圖表數(shù)據(jù)更新的原理是將新的數(shù)據(jù)添加在舊數(shù)據(jù)之后,該VI中Chart的y軸使用了自動(dòng)刻度。當(dāng)參數(shù)Par1,Par2的y值隨時(shí)間瞬時(shí)變化時(shí),Chart繪圖的基準(zhǔn)點(diǎn)在不斷變化,使得繪圖曲線呈臺(tái)階式的現(xiàn)象。
    (3)Chart圖表的數(shù)據(jù)緩存區(qū)能夠記憶顯示的數(shù)據(jù)點(diǎn)數(shù)。所以,當(dāng)服務(wù)器數(shù)據(jù)發(fā)送中斷再重新開(kāi)始發(fā)送時(shí),原VI的Chart數(shù)據(jù)緩存區(qū)累計(jì)記憶著歷史數(shù)據(jù),當(dāng)歷史數(shù)據(jù)累積到一定程度,數(shù)據(jù)緩存區(qū)又沒(méi)有完全釋放。此時(shí),雖然數(shù)據(jù)緩存區(qū)還在不斷更新數(shù)據(jù),但新到的數(shù)據(jù)在Chart圖上未及時(shí)刷新繪制,同樣使得曲線呈臺(tái)階式跳點(diǎn)的現(xiàn)象。
    (4)當(dāng)斷開(kāi)服務(wù)器,將VI重新打包時(shí),打包后的VI所有數(shù)據(jù)緩存區(qū)都是置零的原始狀態(tài),重新接收數(shù)據(jù),Chart圖表曲線恢復(fù)良好。
    (5)或者利用Chart控件的屬性節(jié)點(diǎn),通過(guò)編程方法定時(shí)將Chart圖表的歷史數(shù)據(jù)清空,實(shí)際飛行試驗(yàn)實(shí)時(shí)監(jiān)控中,Chart圖表曲線實(shí)時(shí)顯示正常。
    (6)該實(shí)時(shí)監(jiān)控軟件,根據(jù)其設(shè)計(jì)要求,VI前面板使用了18個(gè)Chart圖表和大量字符串顯示控件,Chart圖表分別對(duì)稱置于前面板中,9個(gè)Chart圖表的垂直總高度尺寸大于顯示器屏幕的高度,這降低了VI的性能,很大程度上也影響了Chart圖表的刷新和實(shí)時(shí)顯示。
    此外,Chart圖表的y軸使用了自動(dòng)刻度(Auto Scale y),圖表啟用了圖例標(biāo)記(Plot Legend),這些都對(duì)Chart圖表的刷新速度有一定程度的影響,但不是主要影響因素。

4 結(jié)語(yǔ)
    NI LabVIEW作為一種圖形化的編程工具,以虛擬儀器、圖形化的編程語(yǔ)言等優(yōu)點(diǎn)降低了軟件的入門(mén)門(mén)檻。同時(shí)作為一種快速的軟件開(kāi)發(fā)工具,縮短了軟件開(kāi)發(fā)時(shí)間,節(jié)省了開(kāi)發(fā)成本。本文從影響LabVIEW程序的性能因素出發(fā),結(jié)合手動(dòng)編程巧妙地解決了Chart圖表數(shù)據(jù)實(shí)時(shí)刷新的問(wèn)題。此外,在開(kāi)發(fā)大型復(fù)雜的基于網(wǎng)絡(luò)應(yīng)用的飛行試驗(yàn)實(shí)時(shí)監(jiān)控系統(tǒng)方面,應(yīng)將NI LabVIEW軟件平臺(tái)與Microsoft Visual studio和
Borland C++等開(kāi)發(fā)工具有機(jī)結(jié)合起來(lái),靈活地進(jìn)行應(yīng)用程序的開(kāi)發(fā)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉