尚瑾
摘要:本文介紹了通用數(shù)據(jù)采集系統(tǒng),分析了系統(tǒng)的設計思路與方法,研究了微機控制通信系統(tǒng)的編程。
關鍵詞:微機控制通信;單片機;通用數(shù)據(jù)采集系統(tǒng)
中圖分類號:TP274.2 文獻標識碼:A 文章編號:1007-9416(2017)12-0019-02
數(shù)據(jù)信息采集是當前工業(yè)生產(chǎn)、消防等領域,應用效果明顯。在未來一段時間內(nèi),數(shù)據(jù)采集系統(tǒng)將得到進一步改進與完善,朝向智能化的方向發(fā)展。微機控制通信的單片機數(shù)據(jù)采集系統(tǒng),為確保PC與PC,PC與單片機之間完成數(shù)據(jù)交換,則選擇串行通信,實現(xiàn)數(shù)據(jù)交換。但,傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)往往是針對特定領域構建,容易造成數(shù)據(jù)采集系統(tǒng)的通用性受到制約?;诖耍疚膶?shù)據(jù)采集系統(tǒng)展開研究,并對基于微機控制通信的單片機通用數(shù)據(jù)采集系統(tǒng)展開研究,詳細內(nèi)容如下。
1 通用數(shù)據(jù)采集系統(tǒng)
數(shù)據(jù)采集系統(tǒng),是借助一種裝置,從外部獲取數(shù)據(jù),并傳遞到系統(tǒng)內(nèi)部。當前,人們對數(shù)據(jù)采集系統(tǒng)的重視程度相對較高,且對其的研究也較為深入,對推動系統(tǒng)功能提升打下基礎。通常情況下,數(shù)據(jù)采集系統(tǒng)是借助單片機與PC構建的。系統(tǒng)能夠的完成采集、處理、顯示和控制等功能,并順利完成PC與PC間通信,PC與單片機間的通信。此外,系統(tǒng)模擬量的轉(zhuǎn)化,主要是借助A/D轉(zhuǎn)換,器可有效將模擬量轉(zhuǎn)為數(shù)字量。但是,一些數(shù)據(jù)采集系統(tǒng)構建中,往往以適合對應領域的設計方式,通用效果不夠理想。通用數(shù)據(jù)采集系統(tǒng),在實際應用中,可直接運用到其他領域,減少系統(tǒng)重構的繁瑣程序,滿足數(shù)據(jù)采集的需求,推動相關行業(yè)發(fā)展。
2 系統(tǒng)的設計思路與方法
2.1 實時性研究
正常情況下,單片機對輸入的模擬量展開采集工作,并將采集的到信息傳遞到的PC端,游PC對采集的數(shù)據(jù)進行處理。鑒于串行通信的接線少和傳輸距離的特點,可用于數(shù)據(jù)采集的通信中。但,一旦為多路模擬量輸入系統(tǒng),則容易出現(xiàn)濾波和串行傳送耗時的情況。數(shù)字濾波器是數(shù)據(jù)采集系統(tǒng)的關鍵,期主要是用于對數(shù)據(jù)信息進行過濾波的作用,其可保障數(shù)字量的平滑性與真實性。對于由單片機與PC組成的通信系統(tǒng),單片機采集的數(shù)據(jù)信息不能不經(jīng)過數(shù)字濾波。在具體的采集過程中,每采集一個模擬量所消耗的時間為μs級,在串行通信過程中,每組數(shù)據(jù)的發(fā)送時間為ms。如果未經(jīng)過濾波處理,則會造成數(shù)據(jù)傳遞效率延時較為嚴重。
2.2 數(shù)據(jù)整合周期
現(xiàn)設有N路模擬量需進行采集,對N路模擬量展開采集和濾波展開整合處理,每一次整合所耗費的時間為一個整合周期。其受到A/D轉(zhuǎn)換器一次轉(zhuǎn)換時間和濾波方式等的影響。故此,如下以平均值濾波為例展開研究?,F(xiàn)設共有8路的A/D轉(zhuǎn)換,每路取6次平均,a(i)用于存放累加和,其中i=1,…8?,F(xiàn)對具體的整合過程展開研究具體為:
(1)對所有模擬量進行一次掃描采集,再由A/D轉(zhuǎn)換后的數(shù)據(jù)與前一次的整合值展開比較。(2)比較后,如果值正常,則用a(i),展開對位累加。(3)按照上述模式,連續(xù)掃描6次,得到結果,進而得到平均值濾波,最后得到采集數(shù)據(jù)為:
B(i)=a(i)÷6(i=1,2…6) (1)
設一路模擬量進行一次采集和處理時間可以理解為:t=200μs,其中整合周期可用如下公式表示:
T=t×路數(shù)×采集次數(shù) (2)
按照上述方式展開計算,可以得到具體的整合周期為T=9600μs。且由整合周期可對系統(tǒng)的實時性具有直接影響,主要影響因素為整合周期長短。
2.3 串行通信方式選擇
具體串行通信方式選擇,本文選擇適宜的利用方式,提升整合數(shù)據(jù)利用率。兩種方案分別為:(1)單片機開放串行中斷,如果單片機在當前整合周期完成后未申請中斷,則進行下移輪整合周期。當微機需要數(shù)據(jù)時,則向單片機發(fā)送信號,接受到申請后,其停止整合,并進入中斷處理子程序發(fā)送RAM中存儲上一次整合數(shù)據(jù)。(2)后臺微機也工作于串行中斷方式。當整合完成后,向PC發(fā)送完成標志,且其處于待機狀態(tài)。
將上述兩種串行方式方案一單片機利用效率較低,且工作效率較低,A/D轉(zhuǎn)換可被中斷延時,干擾數(shù)據(jù)效果。對于方案2可更為適應多路數(shù)據(jù)采集系統(tǒng)。
3 微機控制通信系統(tǒng)的編程
單片機具有簡單和控制效果顯著,但是,單片機的數(shù)據(jù)處理、顯示等的效果不夠顯著。故此,可借助計算機編程的方式,促使操作更為可靠。本文主要以Windows操作系統(tǒng)條件下,運用Visual C++進行編程。運用Windows API有關的串行通信函數(shù)結合Active X控件。具體的編程方式如:
(1)擇取MFC構建基本對話框,使且支持Active X,設定名稱,再添加控件,如表1所示。(2)完成后,再添加系統(tǒng)注冊過Microsoft communications control,合理對其屬性進行設置,其余參數(shù)選擇默認值。(3)向Class Wizard中添加變量及函數(shù)。通過上述方式,可完成對多路溫度檢測,多路壓力檢測。其中由于Windows API提供了標準串行,能夠得到系統(tǒng)的利用率和通用性,且能夠完成對不同模擬量的采集,效果顯著。本文主要選擇AT89c51為核心,輔以TLC0838、X25045。具體的單片機程序流程圖如圖1所示。
4 結語
基于微機控制通信的單片機通用數(shù)據(jù)采集系統(tǒng),可有效改善數(shù)據(jù)采集系統(tǒng)通用性,保障系統(tǒng)的整體功能,可實現(xiàn)多路數(shù)據(jù)采集和傳遞,增強采集的利用率和通用性,并對預先編制好的程序進行簡單修改,則可完成移植,具有極高的重復利用價值。
參考文獻
[1]楊新華.基于單片機的數(shù)據(jù)采集系統(tǒng)的研究[J].電子技術與軟件工程,2015,(21):254.
[2]徐小明.基于單片機的數(shù)據(jù)采集系統(tǒng)的研究與實現(xiàn)[J].電工技術:理論與實踐,2015,(4):88-89.
[3]王宇.基于單片機C8051的數(shù)據(jù)采集和控制系統(tǒng)設計[J].數(shù)字技術與應用,2017,(5):5-6.
Abstract:This paper introduces the general data acquisition system, analyzes the design ideas and methods of the system, and studies the programming of the microcomputer controlled communication system.
Key words:microcomputer controlled communication; single chip microcomputer; general data acquisition systemendprint