穆欣榮+張志杰+楊文杰+張鵬



摘 要: 激波管標定系統是一種對傳感器動態特性的實驗裝置,通過激波速度獲得標準壓力,進而對目標傳感器動態性能進行修正。基于LabVIEW平臺結合NI公司的采集卡實現一種用于激波管標定系統的混合驅動軟件平臺,通過并行調用動態鏈接庫的方式,一方面實現對NI公司PXI?6115采集卡的驅動來達到激波速度的測試,另一方面對USB驅動接口實現對目標傳感器的測試。最后,采用改進的最小二乘(GLS)算法,實現傳感器的動態建模。結果表明,該系統具有快速讀取測試結果的優點,較好地實現動態性能修正。
關鍵詞: 激波管; 混合驅動; 最小二乘算法; 動態性能修正
中圖分類號: TN919.3?34; TP311 文獻標識碼: A 文章編號: 1004?373X(2017)08?0141?04
LabVIEW?based dynamic performance correction of pressure sensor
MU Xinrong1, ZHANG Zhijie1, YANG Wenjie1, ZHANG Peng2
(1. MOE Key Laboratory for Instrumentation Science and Dynamic Measurement, North University of China, Taiyuan 030051, China;
2. Baidu Cloud Computing Technology (Shanxi) Co., Ltd., Yangquan 045000, China)
Abstract: The shock tube calibration system is an experiment device to test the sensors dynamic performance. The standard pressure is acquired by means of the shock velocity to correct the dynamic performance of the objective sensor. A hybrid drive software platform used in the shock tube calibration system is realized on the basis of data acquisition card made by NI Company and LabVIEW platform. The way to call the dynamic link library in parallel is used to drive the PXI?6115 data acquisition card made by NI Company to realize test of the shock wave speed and objective sensor for USB driver interface. The improved least square algorithm is adopted to realize the dynamic modeling of the sensor. The result shows that the system has the advantage of reading the test results quickly, and can correct the dynamic performance well.
Keywords: shock tube; hybrid drive; least square algorithm; dynamic performance correction
0 引 言
虛擬儀器(VI)是由現代計算機技術和儀器技術深層次結合的產物,是為了達到“軟件即儀器”的目的。隨著計算機、采集電路和網絡技術的迅速發展,虛擬儀器技術在測試儀器、數據采集等領域廣泛應用[1]。數據采集卡有NI公司提供的通用采集卡,可以直接使用LabVIEW進行軟件編程;也有非NI數據采集卡,即為滿足用戶需求的專用測試系統,需要編寫相應的驅動程序使之被LabVIEW識別,從而完成數據采集工作[2]。
文獻[3]提出的傳統的激波管多通道數據采集系統是由采集卡直接完成測速和標定的功能,使用的是美國NI公司PXI?5105數據采集卡,不能對特定的采集系統進行誤差標定。而特定的采集系統和測試的采集卡總線實現方式不一樣,所使用的軟件也不一樣,這樣就給測試和標定帶來了一定的困難,必須使用兩臺計算機分別安裝兩個不同的軟件,操作復雜繁瑣,不宜工作人員使用。為了解決這個問題,設計了一種可同時驅動兩種不同總線的測試軟件,選擇使用范圍較廣的LabVIEW平臺,利用調用動態鏈接庫的方式實現兩個不同采集卡的驅動。修正傳感器的動態性能,采用改進的最小二乘算法,利用LabVIEW實現對傳感器動態性能的修正[4]。
1 系統總體設計
1.1 激波管測試原理
激波管動態壓力標準采用階躍壓力對壓力傳感器進行檢定,可以產生上升時間非常短的階躍壓力。激波管的基本工作原理,是用膜片把截面恒定的管子分為兩個壓力室,高壓室和低壓室,如圖1所示。在高壓室及低壓室充不同壓力的氣體,利用自然破膜的方法,當壓力值超過膜片承受的壓力時,膜片破裂。高壓室的氣體膨脹進入低壓室,形成入射激波。激波后波陣面壓力突變形成正階躍壓力。壓力階躍保持一定的時間稱為恒壓時間。入射波到達低壓室端面后被反射,形成反射激波和反射激波壓力階躍[2]。用此壓力階躍作為階躍激勵信號去激勵被測壓力傳感器,在通過專用測試系統采集數據,可得到被壓力傳感器的參數。
選用NI公司提供的PXI?6115采集卡采集激波管上三個測速傳感器的信號,根據時間求得激波波速。主要是通過NI?DAQmx驅動程序設計測速功能。
被測傳感器連接到專用的壓力測試系統上,通過USB連接到主機。選用FTDI公司的FT245芯片,調用動態鏈接庫函數驅動USB芯片,使得專用測試系統與主機通信成功。
1.2 軟件的結構設計
多通道混合驅動的測試系統軟件設計主要包括以下功能(如圖2所示):
(1) 參數設置,既包括對激波管三個測速通道的采樣頻率、數據長度、預觸發長度和觸發電平的設置,同時還包括對專用測試系統的放大倍數、采樣頻率、數據長度、預觸發長度和觸發電平的設置,其中激波管測速通道的放大倍數在信號放大調理器上設置。
(2) 讀取數據,系統觸發后上位機軟件讀取四個通道的數據,并顯示在前面板上。
(3) 波形顯示,顯示讀取到的波形或已保存的波形。
(4) 計算,針對測速傳感器測得的數據讀取時間間隔和,三個傳感器的間隔均為,激波波速由兩個時間間隔分別求得的速度和平均得到。
(5) 修正,采用最小二乘算法實現對目標傳感器進行動態修正,并用LabVIEW實現。
2 USB和NI?DAQ混合驅動的功能實現
2.1 USB通信方式
本設計選用了FTDI公司的FT245RL USB芯片,內部涵蓋寫入和讀出的FIFO緩沖區,FIFO控制模塊和USB讀寫模塊,在LabVIEW平臺上使用調用動態鏈接庫(DLL)的方式完成硬件與上位機的通信。
為了使USB芯片正常工作,需要安裝FTD2XX驅動程序。FTD2XX.dll提供了大量接口函數,其中常用的有FT_Open(打開),FT_ResetDevice(復位),FT_Purge(清除),FT_SetLatencyTimer(延時),FT_Read(讀),FT_Writer(寫),FT_Close(關閉),FT_SetTimeouts(超時)等函數。如圖3所示,調用動態鏈接庫函數實現USB通信。
上位機通過調用動態鏈接庫函數給專用測試系統發送不同的指令,可以實現參數設置、參數回讀、讀取數據等功能。
2.2 NI?DAQ通信方式
PXI?6115采用PXI總線技術(PCI extensions for Instrumentation,PXI)是PCI在儀器儀表領域的擴展,它結合了PCI的電氣總線特性、CompactPC的堅固性以及Eurocard機械封裝的特性,因此PXI擁有極高的數據傳輸能力、堅固的封裝形式以及高性能的IEC連接器,非常適用于測量與數據采集場合[5]。
NI公司的通用數據采集卡使用的是LabVIEW內的DAQ庫函數實現PXI與上位機通信。該驅動函數在底層的基礎函數上進行高度封裝,程序編寫人員只需要掌握驅動函數I/O端口的意義,就能進行相關的數據采集的功能的實現,使用戶在對采集卡進行操作時更加高效簡單方便。安裝好DAQ驅動程序(即NI?DAQmx)后,在LabVIEW的函數選板就會出現DAQmx節點,在程序框圖中右擊選擇函數“測量I/O”,再選擇“DAQmx數據采集”子選板尋找所需要的控件。針對測速傳感器通道的數據采集方式采用NI?DAQmx函數完成,如圖4所示。本設計采用的是可編程多通道多采樣的采集模式,在DAQmx Read控件的下拉列表里選擇“模擬”→“多通道”→“多采樣”→“2D DBL”方式,使得測速傳感器采集到的數據和專用設備采集到的數據類型一致,便于在同一個波形圖上顯示。采集啟動后,下層的NI?DAQmx驅動程序控制PXI?6115采集卡進行數據采集。
2.3 讀取數據功能
在讀取數據事件中,將被測傳感器采集到的數組整合成波形文件,并與三個測速通道組合成四通道波形數組,使之顯示在波形圖中,如圖5所示。三條細線波形圖分別是三個不同的測速傳感器所測得的數據顯示,黑色粗線波形是被測傳感器所得到的數據顯示。從圖5中可以明顯地看出測速傳感器的時間間隔,可由式(1)和式(2)得到激波波速;同時也可以看出激波傳到每個傳感器的時間,直觀地給用戶提供了同步性能的實現。
3 壓力傳感器動態修正
3.1 改進GLS算法進行線性動態建模的原理與實現
3.2 在LabVIEW上的實現
通過調用Matlab公式節點,實現LabVIEW和matlab的混合編程,達到對目標傳感器的動態修正。圖6為動態性能修正前后的階躍響應曲線,使用改進的最小二乘算法修正后的曲線效果明顯。
4 結 語
本設計在LabVIEW平臺的基礎上,將通用的采集系統和專用的采集系統結合在一個軟件中利用混合驅動編寫,實現了不同總線同時通信的功能。使得激波管測速通道和專用設備被校準通道同時完成數據采集,并且對采集到的數據進行動態修正。實踐證明,USB和DAQ同時通信是切實可行,用改進的最小二乘算法優化傳感器模型參數,能夠尋求一組實用參數,對傳感器的動態性能修正改善顯著。
參考文獻
[1] JOHNSON G, JENNINGS R. LabVIEW graphical programming[M].武嘉澍,陸昆,譯.北京:北京大學出版社,2002.
[2] 李威宣,黃建新.基于LabVIEW平臺的通用數據采集卡的驅動方法及數據采集[J].電子質量,2005(7):14?16.
[3] 解亞妮,石曉丹,馮浩,等.基于美國NI的多通道數據采集系統[J].可編程控制器與工廠自動化,2014(12):85?87.
[4] 軒青春,軒志偉,陳保立.基于最小二乘與粒子群算法的壓力傳感器動態補償方法[J].傳感技術學報,2014,27(10):1363?1366.
[5] 閆紀紅,楊偉成.基于PXI和LabVIEW的雙板卡遠程數據采集系統設計[J].實驗技術與管理,2013,30(7):80?82.
[6] 唐杲.基于虛擬儀器的動態壓力測試系統設計測試系統設計[D].成都:電子科技大學,2013.