標題: 智能溫度采集與控制系統(tǒng) [打印本頁]

作者: daming    時間: 2014-12-30 23:27
標題: 智能溫度采集與控制系統(tǒng)
1、本設(shè)計研究的意義:
    溫度的采集與控制系統(tǒng)是一個很廣泛實用的系統(tǒng),可以用在各種地方,比如水溫控制、室內(nèi)溫度報警、加熱控制等。溫度控制系統(tǒng)可以用多種方法實現(xiàn),比如FPGA編程、微機控制、單片機控制等。一片F(xiàn)PGA價格比較貴,且用為單一的溫度控制系統(tǒng)資源浪費很大,而微機控制也是大材小用。單片機價格便宜,用來做溫度控制資源利用合理。而本系統(tǒng)是基于MCS—51單片機設(shè)計的智能系統(tǒng),其有對采集的溫度進行實時處理能力,且可以根據(jù)溫度的高低來對其他的裝置比如加熱器等進行實時地控制。除了可以單獨作為一個溫度控制系統(tǒng)外,還可以結(jié)合其他的更為復(fù)雜的系統(tǒng),嵌入到其他的系統(tǒng)中,作為其中一的部分。比如家里用的電火鍋、電冰箱、空調(diào)等大型的產(chǎn)品。
2、實現(xiàn)功能:
   (1)系統(tǒng)能通過I/O接口線對加熱裝置進行控制,并通過A/D轉(zhuǎn)換電路采集該裝置溫度信息。
   (2可利用兩位LED數(shù)碼管即時顯示采集的溫度值。用定時器設(shè)計定時功能,使顯示停留時間為5S,利用單片機的中斷系統(tǒng)進行控制。
   (3)當溫度每變化1度時應(yīng)立即更新顯示。
   (4)對加熱裝置的某個溫度值進行控制,此實驗設(shè)定為50o,但可以修改
   (5)用一個單色LED燈顯示加熱情況:燈亮表示正在加熱,滅表示已停止加熱。
                                         二、硬件電路設(shè)計系統(tǒng)的硬件設(shè)計框圖如下:



由于本系統(tǒng)是基于AEDK5196ET單片機實驗系統(tǒng)而設(shè)計的,故里里面的好多芯片和裝置已經(jīng)安裝固定。下面對具體的裝置及其在本設(shè)計系統(tǒng)中的功能和接法進行說明:
1、加熱器和溫度傳感器 :這里采用到的是實驗系統(tǒng)上的AEDK—DJ3溫度/壓力實驗平臺。本實驗只用到其溫度測量和控制部分。其包括:加熱機構(gòu)、溫度傳感器和放大器。溫度采集使用熱敏電阻,轉(zhuǎn)化為電信號送出。加熱器是可控制的,當要加熱時,可以向相應(yīng)的管腳寫入“0”,停止加熱時寫入“1”。在此實驗系統(tǒng)中,當DJ3接入AEDK5196ET實驗機時,可以用芯片74LS273的PO4腳來控制加熱器。接線時用專用25芯插座把DJ3接到AEDK5196ET實驗機,其輸出端接到AD0809的IN1通道入口。
2、采樣裝置:這里采樣的是實驗箱中的AD0809,其具體的圖形如下:已經(jīng)和單片機有部分線連接好了。其采入由傳感器轉(zhuǎn)化后的模擬電信號,然后轉(zhuǎn)化為數(shù)字電信號。送入到MCS—51單片機中進行處理。接線時把EOC接到單片機的P1.7口用來進行查詢采樣是否完成。片選信號可以接入74LS138的地址選口。



3、單片機:這是整個系統(tǒng)的核心裝置。單片機主的的工作是控制和處理,其先控制A/D采進來的數(shù)據(jù)。然后根據(jù)傳感器的溫度——電壓對比值對應(yīng)為相應(yīng)的溫度,可以根據(jù)查表法,也可以根據(jù)公式法,本實驗采用的是MCS—51單片機的查表指令設(shè)計的查表法。再將對應(yīng)出來的溫度值進行實時的處理,包括:和控制溫度(50°)對比,看是否需要停止加熱;和前一次溫度對比,看是否需要更換LED的溫度顯示;對LED的顯示進行定時;將加熱與斷開狀態(tài)送到單色LED上顯示等。
4、單色LED:用一個發(fā)光二極管接到單片機一個I/O口,加熱時此口送出“1”,停止時此口清零。將單片機的P1.0口接到74LS240的任一個入口DLx。
5、八段LED:可以用實驗箱上的兩個八段LED來顯示溫度的值。它在實驗系統(tǒng)中由可編程芯片8279控制。其裝置圖如下:



     智能溫度采集與控制系統(tǒng)是將上面的裝置聯(lián)合起來,具體的實現(xiàn)方案如下:由溫度傳感器將溫度信號轉(zhuǎn)化為模擬電信號,由A/D采樣將模擬電信號采進來并轉(zhuǎn)化為數(shù)字電信號送給單片機處理,單片機將采進來的數(shù)字信號根據(jù)傳感器的溫度——電壓對比值對應(yīng)為相應(yīng)的溫度,再將對應(yīng)出來的溫度值進行實時的處理,包括:和控制溫度(50°)對比,看是否需要停止加熱,即對加熱器實時控制;和前一次溫度對比,看是否需要更換LED的溫度顯示,即對單色LED實時控制;對LED的顯示進行定時;將加熱與斷開狀態(tài)送到單色LED上顯示等。
                                            三、軟件設(shè)計流程及描述
根據(jù)設(shè)計思路,寫出實驗流程圖如下:



                        總程序流程圖
(源代碼程序請參見:《智能溫度采集與控制系統(tǒng)源代碼》)
                     
                                             四、設(shè)計所遇到問題分析
在本次設(shè)計中遇到下面幾個問題,但是根據(jù)查資料和請教他人,遂一一解決:
1、八段LED顯示兩位溫度:因為這里用的是AEDK5196ET單片機實驗系統(tǒng),它里面的LED是用8279控制的,所以得先熟悉8279芯片。用實驗系統(tǒng)上的LED顯示溫度時,必須查LED的段碼表,把對應(yīng)的數(shù)字對就為LED的相應(yīng)段碼。其實要是可以外接的話,可以直接把溫度轉(zhuǎn)化為BCD碼,然后用兩個74LS48或者74LS47(要看是共陰極還是共陽極選定相應(yīng)的譯碼器)譯碼器接到單片機的P1口,直接將溫度轉(zhuǎn)化后的BCD碼送出來就可以顯示了。這樣的話,程序可以很簡短,也沒有那么復(fù)雜了。
2、在寫程序的時候要注意到的問題有:(1)棧地址SP的設(shè)置問題。因為在程序中用到了比較多的寄存器,而SP的剛開始地址為0007H,可以和寄存器地址重復(fù),所以在程序的開始應(yīng)該給其定一個比較大的值;(2)用一個直接地址的時候要注意最好不用寄存器已經(jīng)分配的地址,如想用一個直接地址存一個備用數(shù)據(jù),因為已經(jīng)用到了R1R7等寄存器,所以最好不用00H1FH地址;(3)這里用到了查表程序,就要熟悉MCS51單片機的兩條查表程序,即用DPTRPC和查表程序。其中DPTR的查表程序比較簡單,但是PC的查表程序就比較復(fù)雜;(4)程序中要注意婁制的問題。要注意單片機內(nèi)的數(shù)據(jù)只有二進制數(shù),當人為地送進去十進制、十六進制等數(shù)的時候,它都一律轉(zhuǎn)化為相等的二進制數(shù)處理。所以可以隨意寫入任意進制的數(shù)。存在于單片機內(nèi)的數(shù)一律為二進制,但是注意一些碼和常數(shù)的區(qū)別。比如BCD碼,當一個十進制數(shù)30寫入單片機中時,會被單片機存為0001 1110,而30BCD碼為0011 0000,所以想把單片機內(nèi)一個等于30的常數(shù)顯示于LED上,要先轉(zhuǎn)化為BCD碼,再直接用譯碼器或者用查表法顯示出來。但是這里涉及到是把什么進制的數(shù)轉(zhuǎn)化為BCD碼,根據(jù)上面的知識,因為單片機內(nèi)只有二進制數(shù),所以應(yīng)該把二進制數(shù)轉(zhuǎn)化為BCD碼。 源碼下載:http://www.torrancerestoration.com/bbs/dpj-29903-1.html







歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1