吳忠鍇, 馬鐵華,梁志劍
(1. 中北大學(xué)電子測試技術(shù)重點實驗室,山西太原 030051;2. 儀器科學(xué)與動態(tài)測試教育部重點實驗室,山西太原 030051)
LabVIEW是測控領(lǐng)域優(yōu)秀的圖形語言開發(fā)環(huán)境,摒棄了晦澀難懂的文本代碼,軟件開發(fā)周期短、易于維護。結(jié)合力學(xué)實驗應(yīng)變采集系統(tǒng),在LabVIEW2010平臺下設(shè)計了應(yīng)變數(shù)據(jù)采集軟件[1]。
測試系統(tǒng)以電阻應(yīng)變片為傳感器件,將電阻應(yīng)變片粘貼在測試件表面,構(gòu)件在載荷作用下應(yīng)變片產(chǎn)生變形,電阻值也相應(yīng)變化,經(jīng)過電橋電路將電阻值變化轉(zhuǎn)換為電信號,再經(jīng)放大濾波、模數(shù)轉(zhuǎn)換(A/D)和接口電路輸入計算機、進行分析處理。假定被測試件長度為L、電阻阻值為R,變形后長度(L+ΔL),物體受力后軸向變形為ε,則:
其中K為應(yīng)變片靈敏度系數(shù),由公式可以看出,計算出電阻相對變化量就可以得到應(yīng)變值,但相對電阻變化難以測量,常用惠斯通電橋?qū)⑵滢D(zhuǎn)變?yōu)殡娦盘?,電橋連接如圖1所示。
圖1 電橋連接圖
當(dāng)公式中R1R3=R2R4時,電橋平衡,輸出電壓Δe為零。在電橋平衡狀態(tài)時,橋臂電阻產(chǎn)生增量,U保持不變,輸出Δe僅與電阻增量有關(guān),則電壓變化量就表征了應(yīng)變變化量[2-4]。
力學(xué)實驗臺金屬材料在受力時產(chǎn)生彈性變形,以電阻應(yīng)變片為傳感器,經(jīng)過電橋測量電路,將被測件的應(yīng)變變化轉(zhuǎn)化為電信號,再通過A/D變換將模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號,以FPGA為主控芯片,控制A/D的工作時序,將數(shù)據(jù)讀入內(nèi)部FIFO中,USB接口芯片再將FIFO中的數(shù)據(jù)傳到USB總線上。上位機程序調(diào)用動態(tài)鏈接庫DLL實現(xiàn)USB通信,上位機界面實現(xiàn)數(shù)據(jù)采集、實時處理顯示等操作,系統(tǒng)結(jié)構(gòu)框圖如圖2所示。
圖 2 系統(tǒng)結(jié)構(gòu)框圖
軟件設(shè)計遵循模塊化、結(jié)構(gòu)化設(shè)計方法,主要完成裝置選擇、參數(shù)設(shè)定、數(shù)據(jù)顯示、數(shù)據(jù)回讀功能,軟件流程如圖3所示。
2.2.1 下位機與上位機通信
上位機與下位機之間使用USB接口進行數(shù)據(jù)傳輸,接口芯片選擇Cypress公司的CY7C68013A芯片,在Labview下應(yīng)用NI的板卡無需專門編寫驅(qū)動程序,對于非NI公司出產(chǎn)的板卡就不能直接調(diào)用驅(qū)動程序,自制板卡利用動態(tài)鏈接函數(shù)庫DLL,DLL文件使用VC++高級語言程序編寫。在LabVIEW中“調(diào)用庫函數(shù)節(jié)點”模塊,完成數(shù)據(jù)通信[4-5]。
圖 3 軟件流程圖
2.2.2 電橋平衡
電橋平衡是軟件的重要環(huán)節(jié),關(guān)系到測量數(shù)據(jù)的準(zhǔn)確性,如果不消除電橋不平衡因素的影響,應(yīng)變測試電路的輸出會在沒有應(yīng)變輸入時遠(yuǎn)離零位,造成測試數(shù)據(jù)不準(zhǔn)確。軟件平衡原理:先采集數(shù)據(jù)判斷是否在平衡范圍內(nèi),如果在范圍內(nèi)則提示已平衡,如果不在范圍內(nèi),判斷電位器的移動方向,并向硬件中發(fā)送命令向上或向下調(diào)節(jié)電位器,直到采集的數(shù)據(jù)處于平衡范圍。
2.2.3 實時數(shù)據(jù)采集
多線程指一個程序中執(zhí)行多個線程的能力,在一段時間內(nèi),并行完成多個任務(wù),LabVIEW對多線程提供了很好的支持,只需要將不同的模塊放在不同的while循環(huán)中并行運行,這樣提高了程序運行效率和系統(tǒng)的可靠性[6-7]。程序劃分為三個while循環(huán),第一個循環(huán)響應(yīng)前面板的操作;第二個是數(shù)據(jù)采集循環(huán),由于數(shù)據(jù)采集的耗時比較長,為了避免數(shù)據(jù)采集時與其他操作沖突,占用過多系統(tǒng)資源,造成程序癱瘓,將數(shù)據(jù)采集模塊放在單個while循環(huán)中;第三個循環(huán)是數(shù)據(jù)處理,對原始采集的數(shù)據(jù)進行運算,并通過波形圖表顯示出來。
3個循環(huán)之間運用隊列技術(shù)進行數(shù)據(jù)通信。隊列是一種先進先出(FIFO)的數(shù)據(jù)結(jié)構(gòu),最常見的應(yīng)用是在多線程和多個VI之間傳遞數(shù)據(jù)),當(dāng)產(chǎn)生數(shù)據(jù)的速度比處理數(shù)據(jù)的速度快時,其緩沖作用保證數(shù)據(jù)不會丟失,也調(diào)節(jié)了各線程間的運行速度[1,8]。
數(shù)據(jù)采集是軟件的核心,采集流程是:依次發(fā)送復(fù)位、采集通道、采樣頻率、開始讀數(shù)命令,之后進入采集循環(huán),調(diào)用DLL讀取硬件數(shù)據(jù),采集停止跳出循環(huán)后發(fā)送關(guān)閉讀數(shù)命令,程序框圖如圖4所示。
圖 4 程序框圖
參數(shù)設(shè)置界面主要包括測量通道選擇,橋路連接方式(全橋、半橋、1/4橋),顯示量程設(shè)定,裝置設(shè)置,靜態(tài)參數(shù)設(shè)置(靈敏度、應(yīng)變片阻值、載荷修正系數(shù)),設(shè)定好的參數(shù)會顯示在屏幕上。
數(shù)據(jù)采集包括掃描采樣和載荷采樣兩種方式,掃描采樣是顯示實時采集的數(shù)據(jù),載荷采樣根據(jù)載荷值顯示應(yīng)變值,采樣前還需要設(shè)定采樣通道和采樣頻率,開始采樣后,變換不同的通道可以看到該通道實時采集的數(shù)據(jù)。采樣完成后,可以將數(shù)據(jù)以二進制文件格式保存,便于以后分析查看,上位機界面如圖5所示。
圖5 上位機界面
實驗時例如選擇沖擊桿裝置,1kHz采樣率,數(shù)據(jù)波形如圖6所示,振幅較大的地方為沖擊時產(chǎn)生的波形。
圖6 沖擊桿測試數(shù)據(jù)
以力學(xué)實驗應(yīng)變采集系統(tǒng)為背景,遵循模塊化的設(shè)計思想,在LabVIEW平臺下設(shè)計了數(shù)據(jù)采集系統(tǒng)軟件,實現(xiàn)了參數(shù)設(shè)置、數(shù)據(jù)實時采集顯示、數(shù)據(jù)回放等功能,利用隊列、多線程技術(shù)提高了程序運行效率和系統(tǒng)穩(wěn)定性。軟件接口簡單、開發(fā)周期短、易于維護。
[1]陳樹學(xué),劉萱.LabVIEW寶典[M].北京:電子工業(yè)出版社,2011.
[2]李新.基于虛擬儀器技術(shù)的程控動應(yīng)變測試系統(tǒng)研究與開發(fā)[D].沈陽:東北大學(xué),2008:7-9.
[3]謝銳.旋轉(zhuǎn)構(gòu)件實驗臺動扭矩及扭振測試技術(shù)研究[D].太原:中北大學(xué),2009:17-18,30-32.
[4]張浩茹,謝銳,崔冬梅.基于FPGA的應(yīng)力應(yīng)變測試系統(tǒng)設(shè)計[J].測試技術(shù)學(xué)報,2012,26(2):158-161.
[5]苗立交,楊新華,王巍.基于LabVIEW的動態(tài)鏈接庫的設(shè)計與調(diào)用[J].工業(yè)儀表與自動化裝置, 2010(4):71-73.
[6]馮林,李莉,吳振宇,等.基于 FPGA 的 USB 虛擬示波器[J].儀表技術(shù)與傳感器,2011(7):59-62.
[7]雷振山,魏麗,趙晨光,等.LabVIEW高級編程與虛擬儀器工程應(yīng)用[M].北京:中國鐵道出版社,2009.
[8]唐進元,李松,邵文.基于LabVIEW生產(chǎn)者—消費者模式的齒輪傳動振動測試系統(tǒng)[J].機械傳動,2011,35(1):5-7.