国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于LabVIEW的檢測報告自動生成方法研究

2012-12-01 10:07:56李磊楊峰何耀
自動化儀表 2012年1期
關鍵詞:前面板全局文檔

李磊 楊峰 何耀

(空軍工程大學導彈學院,陜西 三原 713800)

0 引言

檢測報告自動生成是自動測試系統(tǒng)(automatic testing system,ATS)所具有的重要功能,也是專業(yè)測試軟件的重要組成部分。隨著計算機和虛擬儀器(virtual instrument,VI)技術的發(fā)展,傳統(tǒng)儀器的簡單結果輸出正在被計算機自動測試和自動生成檢測報告所取代。LabVIEW是美國NI公司推出的一種基于G語言的虛擬儀器軟件開發(fā)工具,也是目前應用廣泛、發(fā)展較快、功能強大的圖形化軟件開發(fā)集成環(huán)境[1]。

基于LabVIEW平臺研制的某型雷達接收機組合檢測儀由數(shù)字萬用表、示波器、邏輯分析儀、任意波形產生器、數(shù)字波形產生器等模塊組成。各模塊需要完成的檢測項目種類多、數(shù)量大,其檢測結果表現(xiàn)為數(shù)值、序列、波形、圖像和文字結論等多種數(shù)據(jù)形式。在檢測完成之后,如何利用LabVIEW提供的測試結果和報告生成功能,快速準確地將各種檢測結果和判別結論按照一定的模版格式和指定順序自動地生成,是一個值得人們研究的問題。

1 報告生成的常用方法

在LabVIEW平臺環(huán)境下生成報告的方法有很多,主要有以下幾種:利用Report Generation類函數(shù)模板生成、利用File I/O類函數(shù)生成、通過動態(tài)數(shù)據(jù)交換(dynamic data exchange,DDE)生成、通過 ActiveX 技術生成、利用LabVIEW報告生成工具包(Report Generation Toolkit)生成等[2]。這些方法的優(yōu)缺點如下。

①利用LabVIEW提供的Report Generation類函數(shù),可以生成標準或HTML網(wǎng)頁格式的報告,樣式比較美觀,可以插入圖形,能滿足一般用戶的需要。但程序生成過程不直觀、不易調試,不適合制作樣式較為復雜、結構不規(guī)則的報告。

②利用File I/O類函數(shù)生成的報告是ASCII格式文本,可以顯示內容并將報告打印出來。這種方法雖然程序簡潔、速度快,但生成報告的格式單一,無法繪制表格,只能應用在對報告要求不高的場合。

③DDE可以將LabVIEW作為客戶端,將Excel或Word作為服務器,LabVIEW通過向Excel或Word發(fā)送虛擬基礎應用(visual basic for applications,VBA)命令,從而生成符合要求的報告。這種方法雖然功能強大,但程序流程不夠直觀,并且需要對VBA有一定的了解[3]。

④通過ActiveX生成報告主要是通過Active Automation訪問某個Windows應用程序中的對象所集成的屬性和方法。將 Excel或 Word視作 Active Automation的服務器,把LabVIEW作為客戶端去控制Excel或Word的屬性,從而生成所需要的報告。這種方法功能比較強大,但編程不直觀、難度較大、調試也比較繁瑣[4]。

⑤LabVIEW報告生成工具包(Report Generation Toolkit)是LabVIEW中的一個專用的功能模塊,通過ActiveX技術將Microsoft Word、Excel與LabVIEW開發(fā)環(huán)境集成起來,并應用于快速生成專業(yè)的報告,從而高效、清晰地表示出各種測試數(shù)據(jù)和結果。用戶可以移植、修改現(xiàn)有的報告模版,并使用標準的LabVIEW功能,擴展該工具包的報告生成功能[5]。本文正是基于這種方法,實現(xiàn)了某型雷達接收機組合檢測儀的檢測報告自動生成功能。

2 全局變量

2.1 全局變量的意義

全局變量是LabVIEW中的一種內置對象(常量和變量)。該對象可以在同時運行的多個VI之間訪問和傳遞數(shù)據(jù)。將檢測儀在檢測過程中的各種檢測結果作為一種變量,并通常被保存在檢測程序的VI中,如“組合名稱”、“第一中頻信號檢測結果”和“第一本振信號檢測結果”等。這些檢測結果一般表現(xiàn)為數(shù)值、序列、波形、圖像和文字等數(shù)據(jù)形式。將這些數(shù)據(jù)按照一定的方式集中存放,以便檢測報告生成程序進行查詢和調用。全局變量具有在多個VI之間進行數(shù)據(jù)訪問和傳遞的性能,能夠實現(xiàn)檢測結果的集中存放和快速調用[6]。

2.2 全局變量的創(chuàng)建

在創(chuàng)建全局變量時,LabVIEW將自動創(chuàng)建一個具有前面板但無程序框圖的特殊全局VI。向該全局VI的前面板添加輸入控件和顯示控件可定義其中所含全局變量的數(shù)據(jù)類型,則該前面板實際便成為一個可供多個VI進行數(shù)據(jù)訪問的容器。創(chuàng)建全局變量的基本步驟如下。

①從函數(shù)選板上選擇一個全局變量,將其放置在程序框圖上。

②雙擊該全局變量節(jié)點,可顯示全局VI的前面板。該前面板與標準前面板一樣,可用來放置輸入控件和顯示控件,檢測結果一般用顯示控件表示。在創(chuàng)建全局變量時,通常是將原始VI檢測結果的顯示控件直接復制到全局VI的前面板上,以便使全局變量的數(shù)據(jù)類型與檢測結果數(shù)據(jù)類型保持一致。

在LabVIEW平臺中,可創(chuàng)建多個僅含有一個前面板對象的全局VI,也可創(chuàng)建一個含有多個前面板對象的全局VI,從而將相似的變量歸為一組。值得強調的是,全局變量是自帶標簽的,因此全局VI前面板上的所有全局變量都必須具有一定的描述性。

③所有對象在全局VI前面板上放置完畢后,保存該全局VI并返回到原始VI的程序框圖;然后選擇全局VI中想要訪問的對象,右鍵單擊該全局變量節(jié)點,并從選擇項快捷菜單中選中一個前面板對象。該快捷菜單列出了全局VI中所有自帶標簽的前面板對象。

這樣,原始VI中定義的全局變量在程序執(zhí)行過程中就會將數(shù)據(jù)實時地傳遞到全局VI中相應的同名全局變量。

3 檢測報告程序設計

在Microsoft Office Word 2003中,以“文檔模板”類型保存的文檔具有不被改寫的屬性。新形成的“文檔1”、“文檔2”等文件可以進行人工改寫或通過“插入標簽”的方式自動改寫。

LabVIEW編程平臺正是利用這一屬性,開發(fā)了Report Generation Toolkit工具包,實現(xiàn)了利用Word文檔生成檢測報告的方法。接下來需要進行以下兩項工作:①在指定路徑以“檢測報告”名稱創(chuàng)建并設計一個“文檔模板(*.Dot)”類型的文件;②在指定路徑以指定名稱創(chuàng)建并設計一個檢測報告生成VI程序。在完成以上兩項工作之后,該VI程序就能夠調用“檢測報告”模板,并將全局VI中的“檢測結果”按照標簽指定位置自動生成檢測報告[7]。

3.1 文檔模版的創(chuàng)建

創(chuàng)建并設計“文檔模板”文件的步驟如下。

① 雙擊Microsoft Office Word 2003,打開一個新的Word文檔。

②根據(jù)組合要求的檢測項目進行文檔內容和版面設置,組合測試報告的內容一般包括檢測的基本信息、電源檢測結果、機內檢測結果和整機檢測結果等幾大類,每一大類又包括幾個具體的檢測項目。為了清晰地顯示檢測結果和結論,通常把檢測報告Word模版中的具體項目設計成表格的形式。

③在各具體的檢測項目后,依次插入與相應的全局變量名稱相同的書簽名稱,以便檢測報告生成VI程序,從而能夠將全局VI中的“檢測結果”按照書簽指定位置生成檢測報告。

④對創(chuàng)建的Word文檔進行保存,在選擇保存時,將文件名定義為“檢測報告Template”,保存類型選擇“文檔模板”,并保存在指定路徑下。這就在指定路徑以“檢測報告Template”名稱創(chuàng)建并設計了一個“文檔模板(*.Dot)”類型的文件。

3.2 程序VI的設計

根據(jù)組合測試的要求和LabVIEW編程相關知識,設計一個“檢測報告自動生成程序VI”,整個程序可分為設置路徑及參數(shù)、插入基本信息、插入檢測結果、設置報告顯示及關閉四個部分。

①設置路徑及參數(shù)。該部分用于對檢測報告的生成樣式、調用路徑及文字大小等參數(shù)進行設置。程序VI中的路徑及參數(shù)設置界面如圖1所示。

圖1 路徑及參數(shù)設置界面Fig.1 Setting paths and parameters interface

圖1中:1號為“當前VI路徑”子VI;2~3號分別為“拆分路徑”、“創(chuàng)建路徑”子VI,其中3號設置報告來源是之前設計保存在指定路徑中的“檢測報告”模板;4號為“新建報表”子VI,設置打開的是Word類型的模板;5號為“設置報表字體”子VI,用來設置向模板中插入文本的字體及大小等參數(shù)[8]。

②插入基本信息。該程序用于向Word文檔組合測試報告模板中的指定位置插入檢測的基本信息。插入基本信息如圖2所示。

圖2 插入基本信息界面Fig.2 Basic information inserted interface

圖2中:6~10號都為“添加報表文本”子VI,用來設定在Word模板中插入的基本信息及插入點的位置;11號為“獲取日期/時間字符串”子VI,與6~7號子VI一起向模板中插入的信息是日期date和時間time;而8~10號子VI通過調用全局變量的方式來依次輸入“組合名稱”、“組合ID”和“測試人員”等信息,調用的全局變量有“組合名稱”、“組合ID”和“用戶名”。

③插入檢測結果。該部分用于向模板中指定位置插入表現(xiàn)為數(shù)值、序列、波形、圖像和文字結論等多種數(shù)據(jù)形式的檢測結果。其中插入輸出電源檢測結果如圖3所示。

圖3 插入輸出電源檢測結果Fig.3 Test results of output power inserted

圖3中:12號子VI為“For循環(huán)結構”;13號為“捆綁”子VI,用來將獨立的元素組合成簇[9];14號為“創(chuàng)建數(shù)組”子VI,將三次檢測結果創(chuàng)建為一組數(shù)組,循環(huán)執(zhí)行三次,調用“二次電源檢測結果”全局變量分別向電源為-15 V、5 V、15 V插入檢測結果。后一個循環(huán)利用“二次電源檢測結論”全局變量來生成三次電源的檢測結論。

④設置報告顯示及關閉程序。該部分用于設置報告的顯示樣式和關閉報告引用單元、釋放內存。報告顯示設置及關閉程序如圖4所示。

圖4 報告顯示設置及關閉程序界面Fig.4 Report display setup and procedures closed interface

圖4中:15號為“放置報表在前端”子VI,其功能是設置生成的檢測報告顯示在窗口的最前面,還可以選擇文件顯示在窗口的大小,包括最大化(maximized)、最小化(minimized)和正?;?normal)[10];16 號子 VI用來關閉報告子 VI,表明程序運行結束,釋放內存資源;17號為“通用錯誤處理器”子VI,當程序發(fā)生錯誤時,顯示有錯誤發(fā)生,返回錯誤描述或打開對話框。

4 報告生成和結論

某型雷達接收機組合檢測儀在檢測報告程序運行完畢后,將自動生成一份測試報告,其內容包括檢測的基本信息、電源檢測結果、機內檢測結果和整機檢測等。其中,檢測的基本信息如下:測試日期為2010-09-20,測試時間為15:25,測試人員共10086人,組合名稱為8號組合,組合ID為220031。電源檢測及機內檢測結果如表1和表2所示。其中,表1中額定值允許偏差為±3%。

表1 電源檢測結果Tab.1 Power detection result

表2 機內檢測結果Tab.2 Machine detection result

當各個組合經檢測儀自動測試系統(tǒng)檢測完成后,檢測結果中的數(shù)據(jù)、波形、圖像和文字信息將自動加載到設定好的指定位置。

利用Report Generation Toolkit工具包開發(fā)的檢測報告生成程序具有以下特點:①結構簡單清晰,通過調用全局變量,大大減少了程序的結構復雜度;②生成的Word文檔格式的檢測報告結構層次分明、內容豐富,便于測試人員快速準確地讀取檢測結果;③各個組合的測試報告模板設計和生成程序設計差別不大,程序和模板都具有很強的移植性,能夠極大地提高檢測工作效率。

5 結束語

本文基于LabVIEW平臺,采用全局變量技術和Word文檔檢測報告生成技術,利用Report Generation Toolkit工具包設計實現(xiàn)了某型雷達接收機組合檢測儀的檢測報告自動生成程序。該程序能夠實時記錄檢測過程中的各種檢測結果和判別結論,并自動生成基于指定Word模板的檢測報告。

檢測報告的自動生成大大減輕了測試人員的數(shù)據(jù)檢測工作量和記錄負擔,加快了接收機組合的檢測速度,并極大提高了測試系統(tǒng)的工作效率。隨著測試精度和復雜度的日益提高,LabVIEW和虛擬儀器在自動測試系統(tǒng)中的應用范圍將更加廣泛。

[1]陳書旺,胡愛華,盧云,等.虛擬儀器的類型及其發(fā)展情況[J].電腦學習,2007(4):57-58.

[2]鄒堅,李世平,魏小飛.基于LabVIEW的自動測試系統(tǒng)中的報表生成研究[J].自動化儀表,2006,27(11):68 -70.

[3]胡紹海,高亞峰,肖坦.基于LabVIEW的的Excel報表生成技術研究[J].測控技術,2007(10):64 -69.

[4]裴鋒,王翠英,李資榮.基于LabVIEW的虛擬儀器算法解決方案[J].自動化儀表,2005,26(8):57 -58.

[5]楊樂平,李海濤,趙勇,等.LabVIEW高級程序設計[M].北京:清華大學出版社,2006.

[6]李瑞,周冰,胡仁喜,等.LabVIEW2009中文版虛擬儀器從入門到精通[M].北京:機械工業(yè)出版社,2010.

[7]侯國屏,王坤,葉齊鑫,等.LabVIEW7.1編程與虛擬儀器設計[M].北京:清華大學出版社,2005.

[8]江建軍,劉繼光.LabVIEW程序設計教程[M].北京:電子工業(yè)出版社,2008.

[9]Travis J.LabVIEW 大學實用教程[M].喬瑞萍,譯.北京:電子工業(yè)出版社,2008.

[10]雷振山.LabVIEW7 Express實用技術教程[M].北京:中國鐵道出版社,2004.

猜你喜歡
前面板全局文檔
Cahn-Hilliard-Brinkman系統(tǒng)的全局吸引子
量子Navier-Stokes方程弱解的全局存在性
顏值高和散熱強可以并存3款高品質機箱推薦
電腦報(2021年21期)2021-08-19 17:22:40
有人一聲不吭向你扔了個文檔
電競潮牌范 航嘉GX520S機箱評測
電腦報(2019年29期)2019-09-10 07:22:44
落子山東,意在全局
金橋(2018年4期)2018-09-26 02:24:54
基于RI碼計算的Word復制文檔鑒別
Persistence of the reproductive toxicity of chlorpiryphos-ethyl in male Wistar rat
新思路:牽一發(fā)動全局
剛撓印制板在機載設備電子機箱中的結合與應用
潮州市| 广东省| 广汉市| 兴安县| 宁阳县| 万全县| 罗江县| 敦化市| 新田县| 和静县| 屏东县| 安义县| 东莞市| 松潘县| 毕节市| 芮城县| 洮南市| 将乐县| 沈阳市| 姜堰市| 图们市| 南皮县| 蒙自县| 巨野县| 固阳县| 外汇| 曲松县| 小金县| 萍乡市| 邢台市| 广安市| 富阳市| 金川县| 乌兰浩特市| 连山| 灯塔市| 义乌市| 南昌县| 赞皇县| 嘉义县| 和静县|