杜慧勇 王站成 趙凱賓 劉建新 吳 健
河南科技大學車輛與動力工程學院 河南洛陽 471003
基于LabVIEW的工程熱力學虛擬實驗系統開發
杜慧勇 王站成 趙凱賓 劉建新 吳 健
河南科技大學車輛與動力工程學院 河南洛陽 471003
隨著信息技術的發展,通過建立虛擬實驗教學系統,運用計算機對一些實驗現象進行仿真模擬,可以達到“身臨其境”的效果,較詳細地介紹了采用LabVIEW軟件構建工程熱力學虛擬實驗系統的方法。LabVIEW可使用圖形化編程,內置豐富的控件與多種開發工具包并包含與其他程序的接口,擴展方便。
LabVIEW;虛擬儀器;多媒體教學;程序發布
工程熱力學虛擬實驗系統運行流程及結構如圖1所示。其中包含5個實驗項目:空氣定壓比熱容測定、噴管特性實驗、空氣絕熱指數的確定、可視性飽和P-t關系實驗、二氧化碳臨界點態觀測及p-υ-t關系實驗。實驗項目主要功能:(1)顯示實驗目的,回顧課程知識點;(2)顯示實驗步驟及注意事項,帶領學生整體把握實驗過程;(3)按步驟進行虛擬實驗,使用者在操作虛擬儀器時,由動畫同步顯示實驗過程;(4)布置實驗報告及思考題,激勵學生擴散思維。

圖1 系統運行流程及結構
2.1 歡迎及登錄界面介紹
為方便登記學生的實驗情況,本系統在啟動時要求輸入完整的個人信息,如班級、學號、姓名等。程序通過調用Windows系統API設定運行面板的透明度,隱匿前面板并顯示歡迎界面,歡迎VI顯示后自動關閉,程序將進入一個狀態機結構,彈出輸入信息對話框,并在“判斷”狀態時通過字符串檢索功能匹配學生的學號和姓名信息,匹配通過則會調用寫入表格文件VI,將登錄用戶信息寫入指定的文件,以供管理員查詢系統使用情況,程序將系統前面板透明度置為0。歡迎及登錄界面的程序框圖如圖2所示。

圖2 歡迎及登錄界面程序框圖
2.2 項目切換控制
本虛擬實驗系統包括4個實驗項目模塊VI,每個項目均包含4個相同的項目類別,各項目模塊間程序獨立,系統運行前面板如圖3所示。通過一個生產者—消費者結構使顯示結果與切換動作同步,即當用戶按下按鈕或通過菜單選擇進行項目切換時,會觸發相應的事件,在生產者循環中采集事件來源,并將狀態數據元素送入隊列存儲,在消費者循環中取出緩存的狀態數據元素并由條件結構跳轉到相應的執行語句。為保證顯示結構緊湊,系統在啟動VI的前面板上開辟了一塊子面板窗口,各個實驗項目可以按照用戶的選擇依次顯示于子面板顯示區域。使用子面板技術,可以很方便地做出模塊化的程序,并且模塊之間不會產生耦合[5]。子面板顯示控制如圖4所示。

圖3 系統運行前面板

圖4 子面板顯示控制
2.3 虛擬實驗的數據處理與顯示
以空氣絕熱指數實驗為例。該實驗的實驗過程可清晰地劃分為三部分:(1)通過充氣閥對剛性容器進行充氣;(2)快速放氣;(3)由大氣環境定容加熱。使用U形管測壓計用來測得三個狀態的表壓力PA,PB和PC,將其代入公式(1)中即可求得空氣的絕熱指數k。

LabVIEW圖形化程序采用數據流驅動,與面向過程的程序語言相比,增加了自動多線程的優勢,一個節點只要它所有的輸入都已經準備好,就會被執行,不需要等待其他節點執行完。即經常有多個節點同時運行,LabVIEW會自動把它們放到不同的線程中去運行[6]。在編程時其也可以借鑒面向過程的思想,先構想程序過程和數據流程,然后按照數據端口將相應的節點連接起來。本虛擬實驗在構建時首先用一個順序結構將程序分為初始化過程、實驗過程和數據處理過程,初始化過程用來設置按鈕或數據數組的初始狀態,實驗過程使用一個“生產者—消費者”結構,該結構中“生產者”部分為一事件結構,用來響應用戶的鼠標或鍵盤操作,產生相應的實驗數據,并將數據送入消息隊列,“消費者”結構用來將測出的A,B和C三個狀態下的壓力存入數組,并計算出實驗結果。在模擬時引入一定的隨機誤差干擾,使最終結果出現波動,可以使虛擬實驗更類似于真實的實驗情況。其數據處理圖形的繪制,也可以方便地使用數據擬合工具繪出。本實驗的虛擬實驗界面如圖5所示。

圖5 空氣絕熱指數虛擬實驗
通過LabVIEW設計的各個虛擬實驗均可以較為逼真地模擬出真實的實驗過程,其程序模塊化程度高、與用戶交互界面友好。由于其采用圖形化程序設計并可以通過ActiveX與其他軟件交互通訊或通過DLL接口調用已經編制好的應用程序,在適應其編程語言后,其編程效率很高,程序也易于維護與升級。
2.4 程序打包及網絡發布
虛擬實驗程序可以打包成EXE,DLL或安裝程序文件。以EXE文件為例,在LabVIEW8.6環境中,可以直接在項目樹中的程序生成規范右鍵菜單中選擇需要打包的文件類型,類型選擇為EXE后會彈出打包信息對話框,我們依次設置好打包文件的目標目錄信息、啟動VI、目標、原文件設置后點擊生成就可以自動生成打包文件。程序打包時可以支持多種語言,但如果想在沒有安裝LabVIEW的電腦上運行EXE程序還需要生成安裝程序文件,其過程與生成EXE文件類似,但在附加安裝程序信息欄中需包括相應的LabVIEW運行引擎。其他的EXE程序不必生成安裝程序文件即可直接運行。
本實驗系統借助于LabVIEW的一種簡單WEB發布工具對局域網絡進行網絡發布,即使客戶端沒有安裝LabVIEW運行引擎或硬件資源,也可以通過URL地址以嵌入、快照或顯示器方式遠程訪問虛擬實驗系統。對于遠程用戶來說,訪問實驗系統就像訪問網頁一樣簡單。這種訪問方式需要服務器端同時運行該實驗系統,并且同一時刻只能允許一個用戶控制系統。
筆者介紹了采用LabVIEW軟件構建工程熱力學虛擬實驗系統的方法。用LabVIEW軟件模擬實驗儀器設備及演示過程動畫,可以使實驗者在操作儀器的過程中通過動畫感受設備的運行狀態,更加直觀地了解實驗過程。實驗系統界面美觀友好,使用方便,借助該系統既可以作為動畫在課堂現場演示,也可以打包供學生下載在課下模擬練習,使理論教學與實踐教學相結合,提高學習效果,通過低成本的軟件系統替代了部分高成本的實驗設備,節省了實驗維護費用。
[1] 王東斌,王敏麗.工科專業多媒體課堂教學改革若干問題思考[J].科技信息,2010,5:164-165.
[2] 王俊峰,宋文愛.基于LabVIEW的信號處理虛擬實驗系統[J].國外電子測量技術,2006,25(10):71-73.
[3] 鄭茵,李文清.淺談高校實驗教學中心建設的難點與重點[J].中國現代教育裝備,2010,1:125-127.
[4] 余建波,楊西強.高校實驗教學信息化的建設與探索[J].實驗室研究與探索,2010,10:150-153.
[5] 戴成梅,戴成建.基于LabVIEW的電工電子網絡虛擬實驗室研究與開發[J].實驗室研究與探索,2011,30(2):74-77.
[6] 阮奇楨.我和LabVIEW—一個NI工程師的十年編程經驗[M].北京:北京航空航天大學出版社,2009.
Development of engineering thermodynamic virtual experiment system based on LabVIEW
Du Huiyong, Wang Zhancheng, Zhao Kaibin, Liu Jianxin, Wu Jian
Henan university of science and technology, Luoyang, 471003, China
With development of information technology, immersion effect can be achieved in virtual experiment teaching system through the computer simulation of real experiment. A virtual experiment system of thermodynamics of engineering that was built by LabVIEW was described in the paper. LabVIEW is a scalable graphical programming environment with plenty of built-in control unit and development kits include of interfaces with the other software.
LabVIEW; virtual instruments; multimedia teaching; program publishing
近年來,國內幾乎所有高等院校都已建設了一定數量的多媒體教室,許多教師使用多媒體授課,在一定程度上提高了課堂教學效率,取得了較好的教學效果。然而大部分教學軟件只是有助于教師講課和學生復習,學生被動接受,不能主動地通過實踐去驗證相關結論。要想讓學生真正掌握其所學內容,最好的辦法是讓其自己動手做相關的實驗。但隨著我國高等教育規模的擴大,高校的實驗教學面臨著巨大的壓力[1-4]。我們利用LabVIEW軟件開發了工程熱力學虛擬實驗系統,該虛擬實驗環境可以再現真實實驗過程中的儀器設備,計算實驗結果,對實驗操作過程中的正誤進行判斷,使實驗者了解實驗過程,加深對理論知識的理解與消化。其中LabVIEW軟件由美國NI公司開發,主要應用于測試測量儀器的研發,軟件采用基于信號流的圖形化編程界面,長于信號采集、分析以及儀表控制界面的設計,也可以進行簡單的過程動畫的表現。
通過建立虛擬實驗教學系統,對一些實驗現象進行仿真模擬,以低成本的軟件替代高成本的實驗設備,既節省實驗維護費用,又對大面積的實驗教學具有重要的現實意義。
2011-09-07
杜慧勇,博士,副教授。
河南科技大學校級項目“虛擬實驗技術在工程熱力學實驗教學中的應用”(編號:2009Z-018)。