標(biāo)題: 51單片機(jī)水溫水位控制系統(tǒng)設(shè)計(jì)論文下載 [打印本頁]
作者: 51hei團(tuán)團(tuán) 時(shí)間: 2018-7-1 04:29
標(biāo)題: 51單片機(jī)水溫水位控制系統(tǒng)設(shè)計(jì)論文下載
摘 要
本溫度設(shè)計(jì)采用現(xiàn)常見的89C51單片機(jī),配以DS18B20數(shù)字溫度傳感器,該溫度傳感器可自行設(shè)置溫度上下限。單片機(jī)將檢測到的溫度信號(hào)與輸入的溫度上、下限進(jìn)行比較,由此作出判斷是否啟動(dòng)繼電器以開啟設(shè)備。系統(tǒng)包括單片機(jī)模塊、溫度檢測模塊、水位檢測模塊和驅(qū)動(dòng)電路設(shè)計(jì)四個(gè)部分。文中對(duì)每個(gè)部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。
目錄
一.概述
1.1課題研究的目的及意義
1.2技術(shù)指標(biāo)
二.總體設(shè)計(jì)方案
三.詳細(xì)設(shè)計(jì)方案
1.1溫度檢測系統(tǒng)
1.2水位檢測系統(tǒng)
四.元件說明
1.1 工作原理
1.2單片機(jī)的選擇
1.3溫度傳感器
1.4水位傳感器
1.5 顯示元件
五.硬件模塊設(shè)計(jì)
1.1單片機(jī)模塊設(shè)計(jì)
1.2溫度檢測模塊
1.3水位檢測模塊
1.4 控制模塊
1.5 驅(qū)動(dòng)電路設(shè)計(jì)
六.軟件設(shè)計(jì)
1.2 溫度檢測系統(tǒng)
1.3 水位檢測系統(tǒng)
1.4 DS18B20主程序
七.結(jié)論
八.參考文獻(xiàn)
附 錄
單片機(jī)與顯示器件連接圖
系統(tǒng)軟件源代碼
一.概述
1.1課題研究的目的及意義 目前市場上太陽能熱水器的控制系統(tǒng)大多存在功能單一、操作復(fù)雜、控制不方便登問題,很多控制器只具有溫度和水位顯示功能,不具有溫度控制功能。即使熱水器具有輔助加熱功能,也可能由于加熱時(shí)間不能控制而產(chǎn)生過燒,從而浪費(fèi)電能。鑒于此,我以89C51單片機(jī)為檢測控制核心,采用數(shù)碼管顯示溫度,設(shè)計(jì)了一種太陽能熱水器微控制器,實(shí)現(xiàn)了溫度和水位參數(shù)的實(shí)時(shí)顯示,具有溫度設(shè)定、水位控制功能。
1.2技術(shù)指標(biāo)設(shè)計(jì)并制作一個(gè)基于單片機(jī)的溫度控制系統(tǒng),能夠?qū)t溫進(jìn)行控制。爐溫可以在一定范圍內(nèi)由人工設(shè)定,并能在爐溫變化時(shí)實(shí)現(xiàn)自動(dòng)控制。若測量值高于溫度設(shè)定范圍,由單片機(jī)發(fā)出控制信號(hào),經(jīng)過驅(qū)動(dòng)電路使加熱器停止工作。當(dāng)溫度低于設(shè)定值時(shí),單片機(jī)發(fā)出一個(gè)控制信號(hào),啟動(dòng)加熱器。通過繼電器的反復(fù)開啟和關(guān)閉,使?fàn)t溫保持在設(shè)定的溫度范圍內(nèi)。
⑴溫度設(shè)定范圍為0~99℃,最小區(qū)分度為1℃,溫度控制的誤差≤1℃
⑵能夠用數(shù)碼管精確顯示當(dāng)前實(shí)際溫度值
⑶按鍵控制:設(shè)置鍵、加一鍵、減一鍵
二.總體設(shè)計(jì)方案 以89C51為主控制芯片,溫度采集采用DS18B20溫度傳感器,通過外圍電路來采集水位,用四位數(shù)碼管顯示當(dāng)前的水溫,用LED燈指示水位,并且通過鍵盤來輸入所需控制的水溫。并且當(dāng)水溫水位超于限制時(shí)啟動(dòng)報(bào)警系統(tǒng)。如圖2.1總體設(shè)計(jì)方案圖所示。
圖2.1 總體設(shè)計(jì)方案圖
三.詳細(xì)設(shè)計(jì)方案3.1 總體結(jié)構(gòu)設(shè)計(jì)方案一:測溫電路的設(shè)計(jì),可以使用DS18B20溫度傳感器利用其感溫效應(yīng),在將隨被測溫度變化的電壓或電流采集后,把采樣得到的模擬信號(hào)送入ADC0809進(jìn)行A/D轉(zhuǎn)換讀入單片機(jī)進(jìn)行A/D轉(zhuǎn)換后,通過串行口輸入,就可以用單片機(jī)進(jìn)行數(shù)據(jù)的處理,同時(shí)在顯示電路上,就可以將被測溫度顯示出來。
方案二:考慮使用溫度傳感器,結(jié)合單片機(jī)電路設(shè)計(jì),采用一只DS18B20溫度傳感器,直接讀取被測溫度值,之后進(jìn)行A/D轉(zhuǎn)換,依次完成設(shè)計(jì)要求。
比較以上兩種方案,很容易看出,采用方案二,電路比較簡單,軟件設(shè)計(jì)容易實(shí)現(xiàn),故實(shí)際設(shè)計(jì)中擬采用方案二。
在本系統(tǒng)的電路設(shè)計(jì)方框圖如圖3.1.1.2所示,它由三部分組成:
⑴主控芯片89C51;
⑵數(shù)據(jù)顯示部分;
⑶傳感器部分。


圖3.1.1 溫度計(jì)電路總體設(shè)計(jì)方案
(1)控制部分
采用傳統(tǒng)的數(shù)字模似電路,功能可以實(shí)現(xiàn),但電路復(fù)雜,溫度誤差大,成本高,可靠性也比較差;于是我選擇采用單片機(jī)89C51控制,它結(jié)構(gòu)簡單,可以減少外圍電路的搭接,并且89C51使用方便,成本比較低,性能穩(wěn)定,還可以控制各模塊輸入輸出。但是由于其不能直接進(jìn)行模數(shù)轉(zhuǎn)換,因此要做外圍電路設(shè)計(jì)中加AD0809芯片。
(2)顯示部分
四位一體的共陽數(shù)碼管,
(3)傳感器部分
DS18B20溫度傳感器是美國DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫。這一部分主要完成對(duì)溫度信號(hào)的采集和轉(zhuǎn)換工作,由DS18B20數(shù)字溫度傳感器及其與單片機(jī)的接口部分組成。數(shù)字溫度傳感器DS18B20把采集到的溫度經(jīng)數(shù)模轉(zhuǎn)換后通過數(shù)據(jù)引腳傳到單片機(jī)的P1口,單片機(jī)接受溫度并存儲(chǔ)。此部分只用到DS18B20、AD0809和單片機(jī),硬件很簡單。
3.2水位檢測系統(tǒng) 對(duì)于水位進(jìn)行控制的方式有很多,而應(yīng)用較多的主要有3種,三種方式的實(shí)現(xiàn)如下:
方案一:簡單的機(jī)械式控制方式。其常用形式有浮標(biāo)式、電極式等,這種控制形式的優(yōu)點(diǎn)是結(jié)構(gòu)簡單,成本低廉。
方案二:利用單片機(jī)進(jìn)行水位檢測和控制,基于數(shù)字電路的全自動(dòng)控制,其工作過程是被測水位經(jīng)過模擬信號(hào)采集模塊進(jìn)行采樣,然后把采樣得到的模擬信號(hào)送入ADC0809進(jìn)行A/D轉(zhuǎn)換讀入單片機(jī),再由單片機(jī)進(jìn)行處理,得出結(jié)果是否啟動(dòng)/停止控制電路

執(zhí)行信號(hào)以達(dá)到水位的控制,具體硬件流程框圖入圖3.2.1所示。
圖3.2.1 方案二具體流程框圖
方案三:采用89C51單片機(jī)為核心控制器的電路。因?yàn)閱纹瑱C(jī)電路結(jié)構(gòu)簡單成本低廉、可靠性高,便于實(shí)現(xiàn)各個(gè)控制功能能很好的完成設(shè)計(jì)任務(wù)。水位檢測由本設(shè)計(jì)使用的電極式水位傳感器通過檢測來實(shí)現(xiàn)水位的改變。獲得當(dāng)前水位并通過LED燈顯示。
綜合以上三種方案,方案一和方案二由于缺少溫度檢測模塊,而水溫也是影響太陽能熱水器很重要的一方面:比如說水箱中水溫度過高導(dǎo)致水沸騰這時(shí)候雖然水所在刻度不是滿的,實(shí)際上已經(jīng)溢出,這樣說來方案一和方案二的設(shè)計(jì)算不上智能。方案三是在方案二的基礎(chǔ)上完善和加強(qiáng)的,采用單片機(jī)鍵的雙邊通信,比起方案二更加方便,也更加合理。
四.元件說明4.1 工作原理本文闡述了基于單片機(jī)的水溫水位控制系統(tǒng)的設(shè)計(jì)方法,此種方法是以89C51單片機(jī)為主控制單元,對(duì)水溫水位參數(shù)進(jìn)行控制,從而提高了電器的工作穩(wěn)定性。以DS18B20為溫度傳感器的對(duì)水溫進(jìn)行數(shù)據(jù)采集并實(shí)現(xiàn)溫度控制。該控制系統(tǒng)還可以實(shí)時(shí)存儲(chǔ)相關(guān)的溫度數(shù)據(jù)以及水位高度并能記錄當(dāng)前的時(shí)間。為了實(shí)現(xiàn)功能本系統(tǒng)設(shè)計(jì)了相關(guān)的硬件電路和相關(guān)應(yīng)用程序。硬件電路主要包括89C51單片機(jī)最小系統(tǒng),測溫電路、測水位電路、LCD12864液晶顯示電路以及報(bào)警電路、鍵盤輸入?yún)?shù)等。系統(tǒng)程序主要包括主程序,讀出溫度子程序,計(jì)算溫度子程序、水位顯示子程序、按鍵處理程序、12864液晶顯示程序以及數(shù)據(jù)存儲(chǔ)程序以及時(shí)間顯示程序等
4.2單片機(jī)的選擇單片機(jī)的選擇在整個(gè)系統(tǒng)設(shè)計(jì)中至關(guān)重要,要滿足大內(nèi)存、高速率、通用性、價(jià)格便宜等要求,本課題選擇89C51作為主控芯片。
89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。它是美國ATMEL公司的低電壓,高性能CMOS8位單片機(jī)。89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C51單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。
1.3溫度傳感器美國Dallas半導(dǎo)體公司的數(shù)字化溫度傳感器DS18B20是世界上第一片支持 "一線總線"接口的溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD)專利技術(shù)。
1.3.1 DS18B20性能及結(jié)構(gòu)

DS18B20原理與特性本系統(tǒng)采用了DS18B20單總線可編程溫度傳感器,來實(shí)現(xiàn)對(duì)溫度的采集和轉(zhuǎn)換,大大簡化了電路的復(fù)雜度,以及算法的要求。首先先來介紹一下DS18B20這塊傳感器的特性及其功能: DSl8B20的管腳及特點(diǎn) DS18B20可編程溫度傳感器有3個(gè)管腳。內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的外形及管腳排列如下圖4.1.3.1
圖4.1.3.1 DS18B20的外形及管腳圖
GND為接地線,DQ為數(shù)據(jù)輸入輸出接口,通過一個(gè)較弱的上拉電阻與單片機(jī)相連。VDD為電源接口,既可由數(shù)據(jù)線提供電源,又可由外部提供電源,范圍3.O~5.5 V。本文使用外部電源供電。
主要特點(diǎn)有: 1. 用戶可自設(shè)定報(bào)警上下限溫度值。 2. 不需要外部組件,能測量-55~+125℃ 范圍內(nèi)的溫度。 3. -10℃ ~+85℃ 范圍內(nèi)的測溫準(zhǔn)確度為±0.5℃ 。 4. 通過編程可實(shí)現(xiàn)9~l2位的數(shù)字讀數(shù)方式,可在至多750 ms內(nèi)將溫度轉(zhuǎn)換成12 位的數(shù)字,測溫分辨率可達(dá)0.0625℃ 。 5. 獨(dú)特的單總線接口方式,與微處理器連接時(shí)僅需要一條線即可實(shí)現(xiàn)與微處理器雙向通訊。6. 測量結(jié)果直接輸出數(shù)字溫度信號(hào),以"一線總線"串行傳送給CPU,同時(shí)可傳送CRC校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。7. 負(fù)壓特性:電源極性接反時(shí),芯片不會(huì)因發(fā)熱而燒毀,但不能正常工作。8. DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測溫。

DS18B20的內(nèi)部結(jié)構(gòu) DS18B20內(nèi)部功能模塊如圖4.1.3.2所示,
圖4.1.3.2 DS18B20內(nèi)部功能模塊
1.3.2 DS18B20工作原理
DS18B20的讀寫時(shí)序和測溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同DS18B20 為9位~12位A/D轉(zhuǎn)換精度,而DS1820為9位A/D轉(zhuǎn)換,雖然我們采用了高精度的芯片,但在實(shí)際情況上由于技術(shù)問題比較難實(shí)現(xiàn),而實(shí)際精度此時(shí)溫度寄存器中的數(shù)值即為所測溫度。斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。如下圖的測溫原理圖不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2s減為750ms。 DS18B20測溫原理如圖4.1.3.3所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。則高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在-55℃所對(duì)應(yīng)的一個(gè)基數(shù)值時(shí)。計(jì)數(shù)器1對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)計(jì)數(shù)器1的預(yù)置值減到0時(shí),溫度寄存器的值將加1,計(jì)數(shù)器1的預(yù)置將重新被裝入,計(jì)數(shù)器1重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直
到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值。
圖4.1.3.3 DS18B20原理圖
1.3.3 DS18B20使用中注意事項(xiàng)
DS18B20雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實(shí)際應(yīng)用中也應(yīng)注意以下幾方面的問題:
⑴較小的硬件開銷需要相對(duì)復(fù)雜的軟件進(jìn)行補(bǔ)償,由于DS18B20與微處理器間采用串行數(shù)據(jù)傳送,因此,在對(duì)DS18B20進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。在使用PL/M、C等高級(jí)語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對(duì)DS18B20操作部分最好采用匯編語言實(shí)現(xiàn)。
⑵在DS18B20的有關(guān)資料中均未提及單總線上所掛DS18B20數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè)DS18B20,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛DS18B20超過8個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測溫系統(tǒng)設(shè)計(jì)時(shí)要加以注意。
⑶連接DS18B20的總線電纜是有長度限制的。試驗(yàn)中,當(dāng)采用普通信號(hào)電纜傳輸長度超過50m時(shí),讀取的測溫?cái)?shù)據(jù)將發(fā)生錯(cuò)誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時(shí),正常通訊距離可達(dá)150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時(shí),正常通訊距離進(jìn)一步加長。這種情況主要是由總線分布電容使信號(hào)波形產(chǎn)生畸變造成的。因此,在用DS18B20進(jìn)行長距離測溫系統(tǒng)設(shè)計(jì)時(shí)要充分考慮總線分布電容和阻抗匹配問題。
⑷在DS18B20測溫程序設(shè)計(jì)中,向DS18B20發(fā)出溫度轉(zhuǎn)換命令后,程序要等待DS18B20的返回信號(hào),一旦某個(gè)DS18B20接觸不好或斷線,當(dāng)程序讀該DS18B20時(shí),將沒有返回信號(hào),程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行DS1820硬件連接和軟件設(shè)計(jì)時(shí)也要給予一定的重視。 測溫電纜線建議采用屏蔽4芯雙絞線,其中一對(duì)線接地線與信號(hào)線,另一組接VCC和地線,屏蔽層在源端單點(diǎn)接地。
1.4水位傳感器單片機(jī)水塔水位控制原理如圖l所示,圖中的虛線表示允許水位變化的上、下限位置。在正常情況下.水位應(yīng)控制在虛線范圍之內(nèi)。為此,在水塔內(nèi)的不同高度處,安裝固定不變的3根金屬棒A、B、C。用以反映水位變化的情況。其中,A棒在下限水位.B棒在上、下限水位之間,C棒在上限水位(底端靠近水池底部.不能過低,要保證有足夠大的流水量)。水塔由電機(jī)帶動(dòng)水泵供水。單片機(jī)控制電機(jī)轉(zhuǎn)動(dòng),隨著供水,水位不斷上升.當(dāng)水位上升到上限水位時(shí),由于水的導(dǎo)電作用。使B、C棒均與+5 V連通。因此b、C兩端的電壓都為+5 V即為。l”狀態(tài),此時(shí)應(yīng)停止電機(jī)和水泵工作,不再向水塔注水;當(dāng)水位處于上、下限之間時(shí)。B棒和A棒導(dǎo)通.而C棒不能與A棒導(dǎo)通,b端為“r狀態(tài)。C端為“O”狀態(tài)。此時(shí)電機(jī)帶動(dòng)水泵給水塔注水,使水位上升,還是電機(jī)不工作,水位不斷下降,都應(yīng)繼續(xù)維持原有工作狀態(tài);當(dāng)水位處于下限位置以下時(shí),B、C棒均不能與A棒導(dǎo)通,b、c均為“0”狀態(tài)。此時(shí)應(yīng)啟動(dòng)電機(jī)轉(zhuǎn)動(dòng),帶動(dòng)水泵給水塔注水。
1.5 顯示元件
五.硬件模塊設(shè)計(jì)1.1單片機(jī)模塊設(shè)計(jì)控制模塊是整個(gè)設(shè)計(jì)方案的核心,它控制了溫度的采集、處理與顯示、溫度值的設(shè)定與溫度越限時(shí)控制電路的啟動(dòng)。本控制模塊由單片機(jī)89C51及其外圍電成,電路如圖5.1.1所示。

圖5.1.1 單片機(jī)控制模塊電路
該電路采用按鍵加上電復(fù)位,S2為復(fù)位按鍵,復(fù)位按鍵按下后,復(fù)位端通過51Ω的小電阻與電源接通,迅速放電,使RST引腳為高電平,復(fù)位按鍵彈起后,電源通過8.2KΩ的電阻對(duì)10KμF的電容C5重新充電,RST引腳端出現(xiàn)復(fù)位正脈沖.
AT89S51內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器,但要形成時(shí)鐘脈沖,外部還需附加電路,本設(shè)計(jì)采用內(nèi)部時(shí)鐘方式,利用芯片內(nèi)部的振蕩器,然后在引腳XTAL1和XTAL2兩端跨接晶體振蕩器,就構(gòu)成了穩(wěn)定的自激振蕩器,發(fā)出的脈沖直接送入內(nèi)部時(shí)鐘電路,C6和C7的值通常選擇為30pF左右,晶振Y1選擇12MHz.為了減小寄生電容,更好地保證振蕩器穩(wěn)定、可靠地工作,振蕩器電容應(yīng)盡可能安裝得與單片機(jī)引腳XTAL1和XTAL2靠近。
單片機(jī)的31腳(EA)接+5V電源,表示允許使用片內(nèi)ROM。
1.2溫度檢測模塊溫度由DALLAS 公司生產(chǎn)的一線式數(shù)字溫度傳感器DS18B20 采集。DS18B20 測溫范圍為-55°C~+125°C,測溫分辨率可達(dá)0.0625°C,被測溫度用符號(hào)擴(kuò)展的16 位補(bǔ)碼形式串行輸出。CPU 只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。
本設(shè)計(jì)采用三引腳PR-35封裝的DS18B20,其引腳圖見圖5.1.2。Vcc接外部+5V電源,GND接地,I/O與單片機(jī)的P3.4(T0)引腳相連。
圖5.1.2 溫度傳感器電路引腳圖
1.3水位檢測模塊1.3.1 傳感器電路
作原理圖如5.1.3.1所示
圖5.1.3.1壓阻式壓力傳感器原理圖
1.3.2 時(shí)鐘電路與復(fù)位電路
要使單片機(jī)按照設(shè)計(jì)要求正常工作,完整單片機(jī)最基本的工作要求,考慮到系統(tǒng)無需精確地定時(shí)功能,且為了方便串口通信波特率的計(jì)算,采用11.0592MHz的晶振提供系統(tǒng)時(shí)鐘。并附加復(fù)位電路,組成單片機(jī)最小系統(tǒng)。復(fù)位操作有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種方式。我們采用上電自動(dòng)復(fù)位,其是通過外部復(fù)位電路的電容充電來實(shí)現(xiàn)的。其電路圖如圖2-16(a)所示。這樣,只要電源
的上升時(shí)間不超過1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位,即接通電源就完成了系統(tǒng)的復(fù)位初始化。關(guān)于參數(shù)的選定,在振蕩穩(wěn)定后應(yīng)保證復(fù)位信號(hào)高電平持續(xù)時(shí)間大于2個(gè)機(jī)器周期。當(dāng)采用的晶體頻率為6 MHz時(shí),可采用C=22µF,R=1kΩ;當(dāng)采用的晶體頻率為12 MHz時(shí),可采用C=10µF,R=8.2kΩ。

圖2-16復(fù)位電路
如果上述電路復(fù)位不僅要使單片機(jī)復(fù)位,而且還要使單片機(jī)的一些外圍芯片也同時(shí)復(fù)位,那么上述電阻、電容參考值應(yīng)作少許調(diào)整。
對(duì)于CMOS型的89C51,由于在RST端內(nèi)部有一個(gè)下拉電阻,故可將外部電阻去掉,而將外接電容減至1µF。
1.3.3 A/D采集轉(zhuǎn)換電路
本系統(tǒng)A/D芯片所選用的是ADC0809,該大規(guī)模集成電路芯片是一種由單一+5V電源供電,采用逐次逼近轉(zhuǎn)換原理,能夠?qū)?路0—+5V輸入模擬電壓進(jìn)行分時(shí)轉(zhuǎn)換的八位并行通用型可編程模數(shù)轉(zhuǎn)換器。ADC0809由單片機(jī)控制驅(qū)動(dòng),對(duì)傳感器進(jìn)行定式循環(huán)采集,然后單片機(jī)將各測量參數(shù)傳至PC機(jī),進(jìn)行后臺(tái)數(shù)據(jù)處理。電路連接如圖5.1.3.3。
圖5.1.3.3 A/D轉(zhuǎn)換電路圖
1.3.4 按鍵設(shè)計(jì)
鍵盤在單片機(jī)應(yīng)用系統(tǒng)中是一個(gè)很關(guān)鍵的部件,它能實(shí)現(xiàn)向單片機(jī)系統(tǒng)輸入數(shù)據(jù)、發(fā)送命令等功能,是人工干預(yù)單片機(jī)的主要手段。考慮到本設(shè)計(jì)實(shí)際需要的按鍵較少,故采用獨(dú)立式鍵盤接口電路。在程序查詢方式下,通過I/O端口讀入按鍵狀態(tài),當(dāng)有按鍵按下時(shí),相應(yīng)的I/O端口變?yōu)榈碗娖剑幢话聪碌陌存I在上拉電阻作用下為高電平,這樣通過讀I/O口的狀態(tài)判斷是否有按鍵按下。
圖5.1.3.4 系統(tǒng)按鍵電路
1.4 控制模塊 控制電路與單片機(jī)的P0.2口相連,由于單片機(jī)輸出控制信號(hào)非常微弱,需要用三極管來驅(qū)動(dòng)外圍電路,三極管選用NPN型的 9014,當(dāng)檢測溫度低于設(shè)定溫度時(shí),在單片機(jī)的P0.2口輸出高電平控制信號(hào),使三極管9014導(dǎo)通,使繼電器兩控制端產(chǎn)生壓差,從而使繼電器吸合,常開觸點(diǎn)接通,控制外部電路對(duì)鍋爐進(jìn)行加熱。控制電路電路圖如圖5.1.4所示。
圖5.1.4 控制電路
1.5 驅(qū)動(dòng)電路設(shè)計(jì) 在單片機(jī)控制系統(tǒng)中,需要用開關(guān)量去控制和驅(qū)動(dòng)一些執(zhí)行元件,如發(fā)光二極管、繼電器等。但89C51單片機(jī)驅(qū)動(dòng)能力有限,且高電平比低電平驅(qū)動(dòng)低。一般情況下,需要加驅(qū)動(dòng)接口電路,且用低電平驅(qū)動(dòng)。如圖5.1.5所示
圖5.1.5驅(qū)動(dòng)電路
六.軟件設(shè)計(jì)
1.1 系統(tǒng)軟件設(shè)計(jì)整體思路程序設(shè)計(jì)語言有三種:機(jī)器語言、匯編語言和高級(jí)語言。機(jī)器語言是機(jī)器唯一能“懂”的語言,用匯編語言或高級(jí)語言編寫的程序(稱為源程序)最終都必須翻譯成機(jī)器語言的程序(成為目標(biāo)程序),計(jì)算機(jī)才能“看懂”,然后逐一執(zhí)行。
高級(jí)語言是面向問題和計(jì)算過程的語言,它可通過于各種不同的計(jì)算機(jī),用戶編程時(shí)不必仔細(xì)了解所用的計(jì)算機(jī)的具體性能與指令系統(tǒng),而且語句的功能強(qiáng),常常一個(gè)語句已相當(dāng)于很多條計(jì)算機(jī)指令,于是用高級(jí)語言編制程序的速度比較快,也便于學(xué)習(xí)和交流,但是本系統(tǒng)卻選用了匯編語言。原因在于,本系統(tǒng)是編制程序工作量不大、規(guī)模較小的單片機(jī)微控制系統(tǒng),使用匯編語言可以不用像高級(jí)語言那樣占用較多的存儲(chǔ)空間,適合于存儲(chǔ)容量較小的系統(tǒng)。同時(shí),本系統(tǒng)對(duì)位處理要求很高,需要解決大量的邏輯控制問題。
1.2 溫度檢測系統(tǒng)1.2.1 系統(tǒng)流程圖
圖6.1.2.1 系統(tǒng)流程圖
1.2.2 程序編寫
程序的功能是:啟動(dòng)DS18B20測量溫度,將測量值與給定值進(jìn)行比較,若測得溫度小于設(shè)定值,則進(jìn)入加熱階段,置P1.1為低電平,這期間繼續(xù)對(duì)溫度進(jìn)行監(jiān)測,直到溫度在設(shè)定范圍內(nèi),置P1.1為高電平斷開可控硅, 關(guān)閉加熱器,等待下一次的啟動(dòng)命令。當(dāng)測得溫度大于設(shè)定值,則進(jìn)入降溫階段,則置P1.2為低電平,這期間繼續(xù)對(duì)溫度進(jìn)行監(jiān)測,直到溫度在設(shè)定范圍內(nèi),置P1.2為高電平斷開,關(guān)閉風(fēng)扇,等待下一次的啟動(dòng)命令。
1.3 水位檢測系統(tǒng)1.3.1系統(tǒng)主程序流程圖
七.結(jié)論本文詳細(xì)介紹了基于單片機(jī)89C51的溫度控制系統(tǒng)的設(shè)計(jì)方案與軟硬件實(shí)現(xiàn)。系統(tǒng)包括數(shù)據(jù)采集模塊,單片機(jī)控制模塊,顯示模塊和溫度設(shè)置模塊,驅(qū)動(dòng)電路五個(gè)部分。文中對(duì)每個(gè)部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。完成了課題既定的任務(wù),達(dá)到了預(yù)期的目標(biāo)。系統(tǒng)具有如下特點(diǎn):
⑴.采用智能溫度傳感器DS18B20采集溫度數(shù)據(jù),簡化了硬件電路設(shè)計(jì),溫度采集數(shù)據(jù)更加精準(zhǔn);
⑵.89C51單片機(jī)的采用,有利于功能擴(kuò)展;
⑶.電路設(shè)計(jì)充分考慮了系統(tǒng)可靠性和安全性。
本課題軟件和硬件相結(jié)合,有相當(dāng)?shù)碾y度,同時(shí)也有很大的實(shí)用性。
0.png (48.92 KB, 下載次數(shù): 49)
下載附件
2018-7-1 04:30 上傳
完整的Word格式文檔51黑下載地址(仿真+源碼):
http://www.raoushi.com/bbs/dpj-126041-1.html
作者: bxsuo 時(shí)間: 2018-11-29 15:43
真好
作者: 蒲公英562 時(shí)間: 2019-12-5 12:49
剛好需要,但好像下載不了啊
| 歡迎光臨 (http://www.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |