黃斌
(電子科技大學(xué) 四川 成都 610054)
溫度是表征物體冷熱程度的物理量,是工業(yè)生產(chǎn)過程中監(jiān)測的重要參數(shù),溫度過高或過低都會對產(chǎn)品的質(zhì)量造成影響,甚至使產(chǎn)品報廢、設(shè)備損壞。因此對溫度進(jìn)行監(jiān)測具有十分重要的作用,特別在冶金和化工領(lǐng)域。隨著傳感器技術(shù)和單片機技術(shù)等不斷發(fā)展,為智能溫度測溫系統(tǒng)精度的提高和穩(wěn)定性改善等提供了條件。溫度監(jiān)測系統(tǒng)在工業(yè)生產(chǎn)、科學(xué)研究和人們的生活領(lǐng)域中,得到了廣泛應(yīng)用。本文以ATmega16單片機為核心,以及液晶顯示器、數(shù)字溫度傳感器DS1624、報警裝置和串行通訊設(shè)備來實現(xiàn)對溫度的監(jiān)測。這種溫度監(jiān)測系統(tǒng)系統(tǒng)性能可靠,不僅軟件設(shè)計靈活簡單,而且還具有精度高、穩(wěn)定性好的特點。
ATmega16是基于增強的A VR RISC結(jié)構(gòu)的低功耗8位CMOS微控制器。由于其先進(jìn)的指令集以及單時鐘周期指令執(zhí)行時間,ATmega16的數(shù)據(jù)吞吐率高達(dá)1 MIPS/MHz,從而可以減緩系統(tǒng)在功耗和處理速度之間的矛盾。ATmega16 AVR內(nèi)核具有豐富的指令集和32個通用工作寄存器。所有的寄存器都直接與運算邏單元相連接,使得一條指令可以在一個時鐘周期內(nèi)同時訪問兩個獨立的寄存器。這種結(jié)構(gòu)大大提高了代碼效率,并且具有比普通的CISC微控制器最高至10倍的數(shù)據(jù)吞吐率[1]。因此文中采用ATmega16單片機可以保證很好進(jìn)行數(shù)據(jù)傳送以及對溫度的采集。
DS1624是美國DALLAS公司[2]生產(chǎn)的集成了測量系統(tǒng)和存儲器于一體的芯片。數(shù)字接口電路簡單,與I2C總線兼容,且可以使用一片控制器控制多達(dá)8片的DS1624。DS1624可工作在最低2.7 V電壓下,適用于低功耗應(yīng)用系統(tǒng),除此之外,DS1624還具有以下優(yōu)點:
1)無需外圍元件即可測量溫度;
2)測量范圍為-55~+125℃,精度為 0.031 25℃;
3)測量溫度的結(jié)果以13位數(shù)字量(兩字節(jié)傳輸)給出;
4)測量溫度的典型轉(zhuǎn)換時間為1 s;
5)集成了256字節(jié)的E2PROM非易性存儲器;
6)數(shù)據(jù)的讀出和寫入通過一個2-線(I2C)串行接口完成;
7)采用8腳DIP或SOIC封裝。
T6963C是一個用在LCD控制驅(qū)動集成電路(LSI)和數(shù)據(jù)顯示存儲器上的LCD控制器。它有一個8位的并行數(shù)據(jù)總線和控制線與MPU接口進(jìn)行讀寫操作,它除了可以直接與80系列的8位微處理器相連接以外,還有以下特點:
1)字符字體可由硬件或軟件設(shè)置,字體有 4種:5×8、6×8、7×8、8×8;
2)T6963C的占空比可從1/16到1/128;
3)T6963C具有字符發(fā)生器 ROM,共有 128種字符,T6963C可管理64K顯示緩沖區(qū);
4)T6963C可以圖形方式、文本方式及圖形和文本合成方式進(jìn)行顯示,以及文本方式下的特征顯示,還可以實現(xiàn)圖形拷貝操作。
為了能實現(xiàn)監(jiān)測系統(tǒng)與上位機通訊的功能,本系統(tǒng)采用MAX232接口模式[3],利用單片機內(nèi)部集成的UART收發(fā)器進(jìn)行與上位機實現(xiàn)通訊功能。當(dāng)單片機通過串口與上位機[4]相連,工作過程中一旦檢測到上位機發(fā)來的命令,單片機便將當(dāng)前溫度值傳送給上位機,方便了數(shù)據(jù)的存儲與處理。
設(shè)計的溫度監(jiān)測系統(tǒng)如圖1所示,首先單片機通過鍵盤輸入得到所需要的最低工作溫度和最高工作溫度,然后單片機每隔一秒讀取溫度傳感器的溫度值,并將溫度傳感器的當(dāng)前溫度、最低工作溫度和最高工作溫度都通過液晶顯示器實時顯示出來;當(dāng)單片機[5-7]所讀取的當(dāng)前溫度大于最高工作溫度或者小于最低工作溫度時,單片機就會控制報警電路發(fā)出警報聲;另外,溫度監(jiān)測系統(tǒng)采用MAX232接口模式,使用ATmega16內(nèi)部集成的UART收發(fā)器進(jìn)行與上位機全雙工通訊,波特率采用9 600 bps,單片機通過接口可以將數(shù)據(jù)傳輸至上位機存儲,這樣便于以后的數(shù)據(jù)對比分析;實際的溫度監(jiān)測系統(tǒng)電路如圖2所示。
圖1 溫度監(jiān)測系統(tǒng)框圖Fig.1 Temperature monitoring system diagram
本系統(tǒng)運用C語言進(jìn)行單片機程序設(shè)計,采用結(jié)構(gòu)化程序設(shè)計思想[8]。把整體任務(wù)分成一個個子任務(wù),每個子程序都完成其規(guī)定的功能,明確輸入輸出。將這些程序連接起來就構(gòu)成整體流程圖。模塊化編程,每個模塊結(jié)構(gòu)完整,相互獨立的程序段。這些程序可以任意調(diào)用、修改,使整個程序結(jié)構(gòu)清晰,組合靈活,維護(hù)調(diào)試方便。所設(shè)計的軟件流程圖如圖3所示,當(dāng)開始初始化時,單片機的定時器1每隔一秒讀取溫度傳感器的溫度值,并將溫度值實時的顯示出來。如果單片機所讀取溫度傳感器的溫度值大于最大溫度時,定時器0中斷,此時發(fā)光二極管閃爍,蜂鳴器發(fā)出報警聲;同理,如果單片機所讀取溫度傳感器[9-10]的溫度值小于最小溫度時,定時器2中斷,發(fā)光二極管閃爍,蜂鳴器發(fā)出報警聲。
圖2 溫度監(jiān)測系統(tǒng)電路Fig.2 Circuit of temperature monitoring system
圖3 軟件流程圖Fig.3 Software flaw chart
為了檢驗監(jiān)測系統(tǒng)測量的溫度精度,我們專門用該系統(tǒng)所測到的溫度值與實際溫度計測量到的溫度值進(jìn)行對比,如表1所示。由此表的數(shù)據(jù)可知,該監(jiān)測系統(tǒng)測量的溫度與實際溫度計測量的溫度的誤差不超過0.5℃,因此可以滿足工業(yè)生產(chǎn)的要求。
表1 溫度對比Tab.1 Comparison of temperature data
實驗證明,該系統(tǒng)以ATmega16單片機為核心,利用DS1624進(jìn)行測溫,具有硬件電路簡單、測量溫度精度高、功能強、簡單靈活等優(yōu)點。它可以應(yīng)用于監(jiān)測溫度在-55~+125℃之間的各種場合,而且監(jiān)測的溫度精度保持在±0.5℃,能夠滿足工業(yè)生產(chǎn)的要求。此外,該系統(tǒng)可以通過與上位機之間的通訊來保存溫度數(shù)據(jù),以便于將來進(jìn)行對比分析數(shù)據(jù)。
[1]田國棟,李強.基于ATmegal6單片機的實時溫度采集與分析系統(tǒng)[J].電子設(shè)計工程,2012(7):151-153.
TIAN Guo-dong,LI Qiang.System of current time temperature gather and analysis based on ATmagel6-microcontroller[J].Electronic Design Engineering,2012(7):151-153.
[2]馬明.基于DS18B20的溫度采集平臺設(shè)計[J].江蘇科技信息,2011(7):54-56.
MA Ming.The design of temperature acquisition platform based on DS18B20 [J].Jiangsu Science& Technology Information,2011(7):54-56.
[3]MAO Yu-rong.Realization of serial communication between SCM and computer[J].Instruments and analysis and monitoring,2007(1):3-6.
[4]張維君,王珠忠,索世文.基于PC機串口與DS18B20的單線多點溫度測量[J].儀表技術(shù)與傳感器,2009(4):52-55.
ZHANG Wei-jun,WANG Zhu-zhong,SUO Shi-wen.1-Wire Multidrop temperature measuring technology based on of DS18B20 and PC Com[J].Instrument Technology and Sensors,2009(4):52-55.
[5]馬潮.AVR單片機嵌入式系統(tǒng)原理與應(yīng)用實踐 [M].北京:北京航空航天大學(xué)出版社,2007.
[6]XU Yan,GUO Tao,ZHU Jie,et al.Based on single-chip microcomputer temperature and humidity data acquisition system design.IEEE,2011:2-310-2-313.
[7]WANG Ruilan.The design of temperature and humidity control system in multi incubators based on single-chip.IEEE,2011:4466-4469.
[8]吳新杰.AVR單片機項目教程——基于C語言[M].北京:北京航空航大大學(xué)出版社,2011.
[9]王黎明,周晉,陳昌龍.GIS微水監(jiān)測濕度傳感器自校驗平臺的設(shè)計[J].陜西電力,2012(4):11-15.
WANG Li-ming,ZHOU Jin,CHEN Chang-long.Design of adaptive equipment for humidity sensor of GIS moisture content monitoring[J].Shaanxi Electric Power,2012(4):11-15.
[10]黃華東,郭張軍,彭鵬.基于分布式多傳感器融合技術(shù)的壩基地下水宏觀動態(tài)監(jiān)測數(shù)據(jù)分析[J].陜西電力,2011(3):13-16.
HUANG Hua-dong,GUO Zhang-jun,PENG Peng.Study on macroscopic regime of groundwater under dam section based on distributed multi-sensor data fusion theory[J].Shaanxi Electric Power,2011(3):13-16.