方洵 魏亞茹 鄭玉恒

摘 要:誤差理論與數據處理是測控技術與儀器專業的一門專業基礎課,課程的理論性強,公式繁多復雜,給學生學習該門課程造成了一定的困難.利用圖形化編程語言 LabVIEW 進行實驗軟件的開發,將該課程實驗的數據處理部分利用軟件完成,使學生有更多的時間專注于誤差理論和數據處理方法的理解。
關鍵詞:LabVIEW;線性擬合;數據處理
1.LabVIEW編程開發環境介紹
LabVIEW是一種程序開發環境,由美國國家儀器(NI)公司研制開發,類似于C和BASIC開發環境,但是LabVIEW與其他計算機語言的顯著區別是:其他計算機語言都是采用基于文本的語言產生代碼,而LabVIEW使用的是圖形化編輯語言G編寫程序,產生的程序是框圖的形式。
與C和BASIC一樣,LabVIEW也是通用的編程系統,有一個完成任何編程任務的龐大函數庫。LabVIEW的函數庫包括數據采集、GPIB、串口控制、數據分析、數據顯示及數據存儲,等等。LabVIEW也有傳統的程序調試工具,如設置斷點、以動畫方式顯示數據及其子程序(子VI)的結果、單步執行等等,便于程序的調試。
LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一種用圖標代替文本行創建應用程序的圖形化編程語言。傳統文本編程語言根據語句和指令的先后順序決定程序執行順序,而 LabVIEW 則采用數據流編程方式,程序框圖中節點之間的數據流向決定了VI及函數的執行順序。VI指虛擬儀器,是 LabVIEW 的程序模塊。
LabVIEW提供很多外觀與傳統儀器(如示波器、萬用表)類似的控件,可用來方便地創建用戶界面。用戶界面在 LabVIEW 中被稱為前面板。使用圖標和連線,可以通過編程對前面板上的對象進行控制。這就是圖形化源代碼,又稱G代碼。LabVIEW 的圖形化源代碼在某種程度上類似于流程圖,因此又被稱作程序框圖代碼。
2.軟件設計實例
2.1實驗原理
用最小二乘的方法,設計輸出電壓隨廢氣濃度的變化關系。
2.2程序設計
給定廢氣濃度(X),輸出電壓值(Y),設計VI,實現輸入壓力值與輸出電壓值之間的最佳線性擬合直線。
2.3程序框圖設計
本實驗采用了LabVIEW數組函數,簇函數,創建數組,數組捆綁,XY圖以及線性擬合函數來實現功能及數據計算與處理。得到數據快速且數據準確,相比于人為計算,減少了出錯率,有效提高了效率。
2.4.線性擬合函數介紹
(1)輸入參數
Y:是由因變值組成的數組。Y的長度必須大于等于未知參數的元素個數
X:是由自變量組成的數組。X的元素必須等于Y的元素個數。
權重:是觀測點(xi,yi)的權重數組。權重的元素數必須等于Y的元素數。若權重未連線,VI將把權重的所有元素設置為1.
容差:確定使用最小絕對殘差或Bisquare方法時,何時停止斜率和截距的迭代調整。對于最小絕對殘差方法,若兩次連續的交互之間殘差的相對差小于容差,該VI將返回結果殘差。對于Bisquare方法,若兩次連續的交互之間斜率的和截距的相對差小于容差,該VI將返回斜率和截距。若容差小于等于0,VI將設置容差為0.0001。
方法:指定擬合方法。有3種方法可選擇:最小二乘(默認),最小絕對殘差,Bisquare。
參世界限:包含斜率和截距的上、下限。若知道特定參數的值,可設置參數的上、下限為該值。
(2)輸出參數
最佳線性擬合:返回擬合模型的Y值。
斜率:返回擬合模型的斜率。
截距:返回擬合模型的截距。
殘差:返回擬合模型的加權平均值。若方法設置為最小絕對殘差值,則殘差為加權平均絕對誤差;否則殘差為加權均方誤差。
3.結語
本實驗是基于LabVIEW編程環境對誤差與數據處理的,同樣在其他編程環境上可實現,例如MATLAB與C語言。但相比于其他編程環境,LabVIEW則具有獨特的優勢,LabVIEW操作更為簡單,結果更加形象,效率更為高效。只需對相關圖標的端口進行連線,捆綁等操作,點擊運行,即可完成大量繁復程序工作,結果可同時用數據與圖形圖表呈現,易于理解。
在誤差理論與數據處理的教學改革中,LabVIEW編程環境能夠實現高效的編譯,是一款教育與學習的有力工具。
參考文獻:
[1] 費業泰. 誤差理論與數據處理[M]. 北京: 機械工業出版社, 2015
[2] 張世英,劉智敏. 測量實踐的數據處理. 北京: 科學出版社, 1977
[3] 雷振山. ?LabVIEW 7 Express實用技術教程[M]. 北京:北京鐵道出版社,2004
[4] 張重雄,張思維. 虛擬儀器技術分析與設計(第三版). 北京:電子工業出版社, 2017
[5] 楊樂平,李海濤,楊磊. LabVIEW程序設計與應用. 北京:電子工業出版社,2005