杜 君,程立波
(五大連池市山口水電站管理處,黑龍江五大連池164500)
近年來,單片微型計算機以其強大的生命力飛速發(fā)展,在工業(yè)控制、智能儀器儀表、智能化設備和家用電器等領域得到了廣泛的應用,因而引起了各行各業(yè)的極大關注,有著廣闊的發(fā)展前景。
單片機控制多功能溫度檢測系統(tǒng),主要由溫度傳感器、測量放大器、低通濾波器、多路A/D轉(zhuǎn)換器、RS232通信電路組成軟件設計。上位機采用 Visual Basic語言編寫,主要包括數(shù)據(jù)接收模塊,電壓溫度轉(zhuǎn)換模塊等,計算機接收到電壓數(shù)據(jù)后轉(zhuǎn)換成溫度值,以便進行顯示和存儲實現(xiàn)了預定的設計要求。
多功能溫度測量儀的原理見圖1。
圖1 多功能溫度測量儀的原理框圖
此多功能溫度測量儀主要由溫度傳感器、測量放大器、低通濾波器、多路A/D轉(zhuǎn)換器、單片機、RS232通信電路及上位機程序系統(tǒng)組成。首先通過溫度傳感器將溫度信號轉(zhuǎn)換成電壓信號,為了提高A/D轉(zhuǎn)換精度,用測量放大器將該電壓信號變換到A/D轉(zhuǎn)換電路的最大輸入范圍內(nèi),此放大后的信號經(jīng)低通濾波器濾波后輸入多路A/D轉(zhuǎn)換電路,多路A/D轉(zhuǎn)換電路的輸出數(shù)字信號進入單片機,經(jīng)單片機對信號進行簡單處理后由RS232接口將數(shù)據(jù)發(fā)送至計算機,經(jīng)計算機進一步處理后轉(zhuǎn)換成溫度值,以便進行顯示和存儲。
本系統(tǒng)使用的是新型STC89C51系列單片機的D版本芯片,STC89C51系列單片機的特點有:
1)增強型 6時鐘/機器周期,12時鐘/機器周期 8051 CPU。
2)工作電壓:5.5V~3.4V。
3)通用I/O口(32個),復位后為:P1/P2/P3/P4是準雙向口/弱上拉(普通8051傳統(tǒng)I/O口)P0口是開漏輸出,作為總線擴展用時,不用加上拉電阻,作為I/O口用時,需加上拉電阻。
4)ISP(在系統(tǒng)可編程)/IAP(在應用可編程),無需專用編程器/仿真器,可通過串口(P3.0/P3.1)直接下載用戶程序。
5)內(nèi)部帶有E PROM可用來存儲數(shù)據(jù)。
6)內(nèi)部集成MAX810專用復位電路,可省去外部復位電路。
7)共3個16位定時器/計數(shù)器,其中定時器0還可以當成2個8位定時器使用。
8)外部中斷4路,下降沿中斷或低電平觸發(fā)中斷,Power Down模式可由外部中斷低電平觸發(fā)中斷方式喚醒。
9)通用異步串行口(URAT),還可以用定時器軟件實現(xiàn)多個UART。
最主要的是此芯片的功耗非常低,掉電模式下工作電流<0.1 uA,空閑模式下為2 mA,正常工作狀態(tài)下為4~7 mA,另外掉電模式可由外部中斷喚醒。
STC89C51通過禁止ALE時鐘信號輸出、外部時鐘頻率降一半以及單片機內(nèi)部時鐘振蕩器增益降低一半等措施,使其具有了良好的抗電磁輻射(EMI)能力。
Keil公司目前已經(jīng)推出了 V7.0以上版本的 C51編譯器,為8051單片機軟件開發(fā)提供了全新的C語言環(huán)境,同時保留了匯編代碼高效,快速的特點。C51已完全集成到一個功能強大的全新集成開發(fā)環(huán)境Vision2中,其中包括項目管理器、C51編譯器、A51宏匯編器、BL51/L51連接定位器、RTX51實時操作系統(tǒng)、Simulator軟件模擬器以及Monitor51硬件目標調(diào)試器,所有這些功能均可在Vision2提供的單一而靈活的開發(fā)環(huán)境中極為簡便地進行操作。Vision2提供了強大的項目管理功能,可以十分方便地進行結(jié)構化多模塊程序設計。Vision2內(nèi)部集成源級瀏覽器利用符號數(shù)據(jù)庫中詳細的信息,使用戶可以快速瀏覽源文件,并優(yōu)化用戶的變量數(shù)據(jù)存儲器。Vision2內(nèi)部集成器件數(shù)據(jù)庫(device database)存儲了多種不同型號單片機的片上資源信息,包括本系統(tǒng)選用的STC89C51系列,通過它可以自動設置C51編譯器、A51宏匯編、BL51/L51連接定位器及調(diào)試器的默認選項,充分滿足用戶利用特定單片機片上集成外圍功能的要求。Vision2內(nèi)部集成源程序編輯器允許用戶在編輯源程序文件時(甚至在未編譯和匯編之前)設置程序調(diào)試斷點,便于在程序調(diào)試過程中快速檢查和修改程序。Vision2提供文件查找功能,能對單一文件或全部項目文件進行指定搜索。此外還提供了用戶工具菜單接口,允許在 Vision2中直接啟動用戶功能?;谝陨蠋c,本系統(tǒng)采用Keil C51作為開發(fā)工具。
溫度檢測方法根據(jù)敏感元件和被測介質(zhì)接觸與否,可以分為接觸式和非接觸式兩大類。接觸式檢測方法主要包括基于物體受熱體積膨脹性質(zhì)的膨脹式溫度檢測儀表,基于導體和半導體電阻值隨溫度變化的熱電阻溫度檢測儀表,基于熱電效應的熱電偶檢測儀表。而變化的熱電阻溫度檢測儀表,基于熱電效應的熱電偶檢測儀表。而非接觸式的主要是利用物體的熱輻射特性與溫度之間的對應關系對溫度進行檢測。由于此系統(tǒng)中被測物體為金屬和空氣,所以沒用必要使用非接觸式的傳感器。
本系統(tǒng)的上位機部分采用 Visual Basic語言編寫,它是一種面向?qū)ο蟮某绦蛟O計語言。編程語言可分為過程語言和非過程語言。相應地,面向過程的程序設計關心的是程序表達對問題的求解過程,用戶可以顯式地指明一系列可執(zhí)行指令(或語句)來表達程序的處理過程。傳統(tǒng)的編程方法都是面向過程的程序設計。此方法以問題的處理過程為中心,對問題的求解步驟是根據(jù)問題所依據(jù)的數(shù)據(jù)結(jié)構來確定算法,編制程序,求得結(jié)果。面向?qū)ο蟪绦蛟O計與傳統(tǒng)的面向過程的程序設計完全不同,面向?qū)ο蟪绦蛟O計將數(shù)據(jù)和對數(shù)據(jù)的操作封裝在"類"中,這樣說明抽象數(shù)據(jù)類型比較自然,對實際問題的描述、對信息的隱蔽性、結(jié)構性和可讀性等都比面向過程程序設計好,對象間通過消息互相聯(lián)系,顯然面向?qū)ο蟪绦蚴?對象"的集合,本系統(tǒng)的程序由串口通信、均值濾波以及電壓-溫度轉(zhuǎn)換等幾個對象組成,
本系統(tǒng)下位機采用以STC89C51為主控芯片的單片機系統(tǒng),主要由溫度傳感器、測量放大器、低通濾波器、多路A/D轉(zhuǎn)換器、RS232通信電路組成。首先通過溫度傳感器將溫度信號轉(zhuǎn)換成電壓信號,為了提高A/D轉(zhuǎn)換精度,用測量放大器將該電壓信號變換到A/D轉(zhuǎn)換電路的最大輸入范圍內(nèi),此放大后的信號經(jīng)低通濾波器濾波后輸入多路A/D轉(zhuǎn)換電路,多路A/D轉(zhuǎn)換電路的輸出數(shù)字信號進入單片機,經(jīng)單片機對信號進行簡單處理后由 RS232接口將數(shù)據(jù)發(fā)送至計算機。上位機采用Visual Basic語言編寫,主要包括數(shù)據(jù)接收模塊,電壓溫度轉(zhuǎn)換模塊等,計算機接收到電壓數(shù)據(jù)后轉(zhuǎn)換成溫度值,以便進行顯示和存儲實現(xiàn)了預定的設計要求。單片機系統(tǒng)中的A/D轉(zhuǎn)換誤差平均值為±0.25℃,上位機程序中對熱敏電阻溫度曲線進行非線性擬合所產(chǎn)生的均方誤差為± 0.02℃,綜合以上兩方面因素最終得到系統(tǒng)的測量精度為± 0.27℃。
[1] 房小翠,王金鳳.單片機實用系統(tǒng)設計技術[M].北京:國防工業(yè)出版社,1999.
[2] 趙新民,王祁.智能儀器設計基礎[M].哈爾濱:哈爾濱工業(yè)大學出版社,1999.
[3] 王恩榮,程明霄.MCS-51單片機應用技術[M].北京:化學工業(yè)出版社,2001.