范福玲 孫建民
摘 要:為了解決原有杭州賽特公司生產的CSY型傳感器實驗臺功能單一、專用性強的缺點,提高實驗儀器的使用率,將傳感器實驗臺輸出的標準電壓信號通過PCI1711數據采集卡送入PC機進行數據顯示與數據處理,從而實現信號的自動檢測。主要介紹數據采集系統的硬件組成及在VB環境下數據采集系統的程序設計。該系統人機界面友好,操作簡單方便,已成功應用于實驗教學中,效果良好。
關鍵詞:傳感器;數據采集;數據顯示;線性化處理
中圖分類號:TP273 文獻標識碼:B 文章編號:1004-373X(2009)04-189-03
Design of Data Acquisition System Based on Sensor Experiment Platform
FAN Fuling1,SUN Jianmin2
(1.Zhongyuan Institute of Technology,Zhenzhou,450007,China;2.Shanghai Meishan Iron & Steel Co.Ltd.,Nanjing,210039,China)
Abstract:To overcome the drawbacks of CSY sensor experiment platform made in Hangzhou Saite Company which are functional singleness and monopoly used,and to improve using ratio of the experiment instrument,the standard voltage signal of the sensor experiment platform outputs to computer by the PCI1711 data acquisition card,then computer implements data display and processing,thus realizing automatic checkout with signal.The hardware structure and program design under the visual basic environment are described.It has a friendly interface and can be easily operated.It has been used in experiment teaching successfully,and it has been proved a good performance.
Keywords:sensor;data acquisition;data display;linear processing
0 引 言
傳感器原理實驗臺由一些分立元件組成的電路和指針式儀表構成,實驗結果往往不是很穩定,而且以電流、電壓形式顯示的結果不是很直觀。為了提高實驗教學質量,將傳感器實驗臺的輸出送入計算機進行顯示與數據處理。該系統人機界面友好,操作簡單方便,已成功地應用于實驗教學中,且效果良好。
1 總體設計
數據采集系統原理圖如圖1所示[1,2]。
圖1 數據采集系統框圖
該系統采用PCI1711數據采集卡作為PC機與傳感器實驗臺之間的接口。
2 系統介紹
數據采集系統采用Visual Basic 6.0實現,該系統能夠對CSY傳感器實驗臺的實驗數據進行采集存儲、處理以及圖形顯示等操作。參數設定設置實驗名稱、操作學生信息。數據采集分單次采集,連續采集2種[3]。數據顯示分簡單顯示和線性擬合顯示2種。其他有數據打印、存儲等。系統軟件結構圖如圖2所示。
圖2 系統軟件結構
3 信號采集程序設計
選中“數據采集”,將出現如圖3所示窗體。窗體提示將要選擇采集數據的方式[4-6],是單次數據采集或是連續數據采集。單次數據采集窗體功能實現的流程圖如圖4所示。連續數據采集方式和單次數據采集基本相似,只是在單次數據采集程序的基礎上加上一個FOR循環。
圖3 數據采集
圖4 單次數據采集窗體功能實現的流程圖
4 數據顯示
數據顯示有2種:一是將數據顯示在文本框中;二是將數據顯示在坐標中,并進行線性化處理。
4.1 數據在文本框中顯示
數據在文本框[7]中是一個個以順序的形式顯示的。要實現數據在文本框中顯示比較簡單,但是要解決的問題是如何將文本框中的數據的每一行讀取出來。 Windows API 提供有讀取 TextBox 第N行的功能,在實現文本框中的每一行數據的讀取后,再把每一行的值賦給MSFlexGrid控件的TextMatrix屬性,做一個FOR循環,這樣就可以實現采集卡數據的圖表顯示。
4.2 數據顯示在坐標中[3]
繪制實時采集數據曲線是為了實時觀測,以便掌握實時采集數據變動的趨勢,使曲線顯示效果達到最佳。繪制曲線前要將需要的繪圖范圍及坐標軸的尺寸刻度設定好,然后根據速度測量結果及采集時間繪制實時測量曲線。
首先設置坐標軸與網格。新建Form,將屬性name設為 lanxu,在窗體上添加控件Picturebox作為趨勢圖的顯示容器,在Picturebox上繪制坐標軸(在后面的坐標第繪制部分將講到),橫坐標軸是位移量,利用控件將x軸分為20格,每格代表移動0.5 mm,將y軸分為10格,每格代表電壓1 V。
在做好上述步驟的基礎上,利用Picturebox的Line方法得到如圖5所示的較為理想的實時曲線繪制效果。
5 數據線性化處理
根據一組測量數據求回歸方程的具體做法主要包括以下2個方面:首先確定數學表達式即回歸方程的類型;其次,確定回歸方程的及常數項α,β等數值。這里采用最小二乘法進行曲線擬和。
圖5 連續數據采集曲線
根據最小二乘法原理[8-10],解下面的聯立方程就可以求出α,β等的估計值。
怠苖j=1[yj-f(xj;α,β,…)]2鄲=0
怠苖j=1[yj-f(xj;α,β,…)]2鄲=0
由于在實踐中大量存在線性關系,在小范圍內非線性關系又可以近似為線性關系,所以用正規方程求待定參數的一個常見的特例就是回歸為線性,即求出關系式:y=α+βx中α,β的情況。解下式:
怠苖j=1[yj-(α+βxj)]2鄲=0
怠苖j=1[yj-(α+βxj)]2鄲=0
解得:
β=m∑xjyj-∑xj∑yjm∑x2j-∑xj2=∑xjyj-m?∑x2j-m2
α=∑yj/m-∑xj/mβ=-β
其擬合功能實現如下:
Dim a1 As SingleDim a2 As Single,Dim a3 As Single,Dim a4 As Single,Dim a5 As Single,Dim a6 As Single,Dim a7 As Single,Dim af As Single,Dim ab As Single,Dim N As Single,Dim i As Integer,N=20
For i = 1 To 20
a1 = a1 + x(i) * y(i)
a5 = a5 + y(i)
a6 = a6 + x(i)
a3 = a3 + x(i) ^ 2
Next
a2 = a5 * a6
a4 = a6 ^ 2
ab = (N * a1 - a2) / (N * a3 - a4)
af = a5 / N - a6 * ab / N
For i = 1 To 30
Picture2.PSet (x(i),y(i)),vbYellow
Next i
Picture2.DrawWidth = 1
Picture2.Line (2,af + 2 * ab)-(6,af + 6*ab),vbBlue
經過擬合后的圖形如圖6所示。
圖6 擬合后的圖形
6 結 語
基于傳感器實驗臺的數據采集系統將傳感器實驗過程清晰地展現在學生面前,使學生能夠了解數據的變化趨勢和浮動范圍等。在對數據處理顯示的同時也可以將數據存儲起來。系統不僅可以完成傳感器的靜態實驗,還可以完成簡單的動態實驗,提高了實驗的可靠性和精確性。通過學生使用證明,它可以很好地對實驗數據進行采集處理以及顯示等功能的實現,可以很好地完成多門課程的實驗。
參 考 文 獻
[1]何瑾,張燁軍,于彤彥.基于PCI總線的數據采集卡的設計[J].現代電子技術,2006,29(17):109-110.
[2]張麗,闊永紅,傅豐林.基于PCI9054的數據采集系統的實現[J].現代電子技術,2007,30(6):144-146.
[3]潘雪濤.基于CSY型傳感器實驗臺的位移測量特性分析與研究[J].自動化與儀器儀表,2005(4):64-68.
[4]李湘江,彭建.基于VB的實時數據采集程序設計[J].微計算機信息,2003(10):41-42,68.
[5]謝勤嵐,劉松齡.手指壓力數據采集系統[J].現代電子技術,2006,29(23):77-78.
[6]網冠科技.Visual Basic 6.0控件時尚編程百例[M].北京:機械工業出版社,2002.
[7]王福杰,潘宏俠.基于VB的二維實時曲線顯示設計[J].電腦開發與應用,2005,18(11):30-32.
[8]費業泰.誤差理論與數據處理[M].北京:機械工業出版社,2004.
[9]李飛,王江萍,孫志英.基于VB的數據采集與處理系統的研究[J].北京:計量技術,2004(16):24-27.
[10]王新和,程世洲.曲線擬合的最小二乘法[J].新疆職業大學學報,2004,12(12):84-86.
作者簡介
范福玲 1965年出生,河南溫縣人,副教授。研究方向為測控技術與儀器。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。