《2021單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)》由會員分享,可在線閱讀,更多相關(guān)《2021單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)(12頁珍藏版)》請?jiān)谘b配圖網(wǎng)上搜索。
1、單片機(jī)課程設(shè)計(jì)——基于51單片機(jī)的溫度控制系統(tǒng)設(shè)計(jì)
--
單片機(jī)課程設(shè)計(jì)報(bào)告
題目:溫度控制系統(tǒng)設(shè)計(jì)
學(xué)院:通信與信息工程學(xué)院
專業(yè):測控技術(shù)與儀器專業(yè)
班級: 測控三班
成員: 徐郡
二〇一四年六月十二日
--
--
一、引言
溫度是工業(yè)控制中主要的被控參數(shù)之一,特別是在冶金、化工、建材、食品、機(jī)械、石油等工業(yè)中,具有舉足重輕的作用。對于不同場所、不同工藝、所需溫度高低范圍不同、精度不同,則采用的測溫元件、測方法以及對溫度的控制方法也將不同;產(chǎn)品工藝不同、控制溫度的精度不同、時(shí)效不同,則對數(shù)據(jù)采集的精度和采用的控制算法也不同,因而,對溫度的測控方法多種多樣。
2、
隨著電子技術(shù)和微型計(jì)算機(jī)的迅速發(fā)展,微機(jī)測量和控制技術(shù)也得到了迅速的發(fā)展和廣泛的應(yīng)用。利用微機(jī)對溫度進(jìn)行測控的技術(shù),也便隨之而生,并得到日益發(fā)展和完善,越來越顯示出其優(yōu)越性。
作為獲取信息的手段——傳感器技術(shù)得到了顯著的進(jìn)步,其應(yīng)用領(lǐng)域較廣泛。傳感器技術(shù)已成為衡量一個(gè)國家科學(xué)技術(shù)發(fā)展水平的重要標(biāo)志之一。因此,了解并掌握各類傳感器的基本結(jié)構(gòu)、工作原理及特性是非常重要的。
為了提高對傳感器的認(rèn)識和了解,尤其是對溫度傳感器的深入研究以及其用法與用途,基于實(shí)用、廣泛和典型的原則而設(shè)計(jì)了本系統(tǒng)。本系統(tǒng)利用傳感器與單片機(jī)相結(jié)合,應(yīng)用性比較強(qiáng),本系統(tǒng)可以作為倉庫溫度監(jiān)控系統(tǒng),如果稍微改裝可以做熱水器溫
3、度調(diào)節(jié)系統(tǒng)、實(shí)驗(yàn)室溫度監(jiān)控系統(tǒng),以及構(gòu)成智能電飯煲等等。課題主要任務(wù)是完成環(huán)境溫度監(jiān)測,利用單片機(jī)實(shí)現(xiàn)溫度監(jiān)測并通過報(bào)警信號提示溫度異常。本設(shè)計(jì)具有操作方便,控制靈活等優(yōu)點(diǎn)。
本設(shè)計(jì)系統(tǒng)包括單片機(jī),溫度采集模塊,顯示模塊,按鍵控制模塊,報(bào)警和指示模塊五個(gè)部分。文中對每個(gè)部分功能、實(shí)現(xiàn)過程作了詳細(xì)介紹。整個(gè)系統(tǒng)的核心是進(jìn)行溫度監(jiān)控,完成了課題所有要求。
二、實(shí)驗(yàn)?zāi)康暮鸵?
2.1學(xué)習(xí)DS18B20溫度傳感芯片的結(jié)構(gòu)和工作原理。
2.2掌握LED數(shù)碼管顯示的原理及編程方法。
2.3掌握獨(dú)立式鍵盤的原理及使用方法。
2.4掌握51系列單片機(jī)數(shù)據(jù)采集及處理的方法。
三、方案設(shè)計(jì)
--
4、
--
總體設(shè)計(jì)方案采用AT89C52單片機(jī)作控制器,溫度傳感器選用DS18B20來設(shè)計(jì)數(shù)字溫度計(jì),系統(tǒng)由5個(gè)模塊組成:主控制器、測溫電路、顯示電路、控制電路、報(bào)警及指示電路。主控制器由單片機(jī)AT89C52實(shí)現(xiàn),測溫電路由DS18B20溫度傳感器實(shí)現(xiàn),顯示電路由4位LED數(shù)碼管直讀顯示,,報(bào)警指示電路由蜂鳴器和發(fā)光二級管構(gòu)成,控制電路由按鍵構(gòu)成。本設(shè)計(jì)所使用的數(shù)字溫度計(jì)與傳統(tǒng)的溫度計(jì)相比,具有讀數(shù)方便,測溫范圍廣,測溫準(zhǔn)確等特點(diǎn),其輸出溫度采用數(shù)字顯示,主要用于對溫度的精度要求較高的場所,或科研實(shí)驗(yàn)室使用,并且加有報(bào)警裝置,超過限制溫度可發(fā)出報(bào)警信號,還可以調(diào)整報(bào)警上下限溫度。該設(shè)計(jì)控制器使
5、用單片機(jī)AT89C52,測溫傳感器使用DS18B20,用4位共陽極LED數(shù)碼管以I/O口傳送數(shù)據(jù),實(shí)現(xiàn)溫度顯示,能準(zhǔn)確達(dá)到以上要求。
四、實(shí)驗(yàn)原理
利用溫度傳感器芯片監(jiān)測環(huán)境溫度,將溫度信號轉(zhuǎn)換為數(shù)字信號傳送到單片機(jī)內(nèi)部,單片機(jī)通過對溫度數(shù)據(jù)進(jìn)行處理,利用四位八段數(shù)碼管顯示環(huán)境溫度,并利用蜂鳴器和發(fā)光二極管發(fā)出超限警報(bào)信號。通過按鍵操作可以改變報(bào)警溫度的上下限。
五、材料清單
--
--
六、基本芯片及其原理
6.1單片機(jī)
89C52是INTEL公司MCS-51系列單片機(jī)中基本的產(chǎn)品,它采用INTEL 公司可靠的CHMOS工藝技術(shù)制造的高性能8位單片機(jī),屬于標(biāo)準(zhǔn)的MCS-51的
6、HCMOS產(chǎn)品。它結(jié)合了HMOS的高速和高密度技術(shù)及CHMOS的低功耗特征,它基于標(biāo)準(zhǔn)的MCS-51單片機(jī)體系結(jié)構(gòu)和指令系統(tǒng),屬于80C51增強(qiáng)型單片機(jī)版本,集成了時(shí)鐘輸出和向上或向下計(jì)數(shù)器等更多的功能,適合于類似馬達(dá)控制等應(yīng)用場合。89C52內(nèi)置8位中央處理單元、256字節(jié)內(nèi)部數(shù)據(jù)存儲器RAM、8k片內(nèi)程序存儲器(ROM)32個(gè)雙向輸入/輸出(I/O)口、3個(gè)16位定時(shí)/計(jì)數(shù)器和5個(gè)兩級中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)時(shí)鐘振蕩電路。此外,89C52還可工作于低功耗模式,可通過兩種軟件選擇空閑和掉電模式。在空閑模式下凍結(jié)CPU而RAM定時(shí)器、串行口和中斷系統(tǒng)維持其功能。掉電模式下,保存RA
7、M數(shù)據(jù),時(shí)鐘振蕩停止,同時(shí)停止芯片內(nèi)其它功能。89C52有PDIP(40pin)和PLC C(44pin)兩種封裝形式。
本次課程設(shè)計(jì)所使用的單片機(jī)為STC89C52單片機(jī),是深圳宏晶科技生產(chǎn)的完全兼容INTEL公司MCS-51系列的單片機(jī)。
6.2溫度傳感器及其原理
傳感器DS18B20具有體積小、精度高、適用電壓寬、采用一線總線、可組網(wǎng)等優(yōu)點(diǎn),在實(shí)際應(yīng)用中取得了良好的測溫效果。
美國Dallas半導(dǎo)體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持“一線總線”接口的溫度傳感器,在其內(nèi)部使用了在板(ON-B0ARD)專利技術(shù)。全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)
8、?!耙痪€總線”獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶可輕松地組建傳感器網(wǎng)絡(luò),為測量系統(tǒng)的構(gòu)建引入全新概念。
現(xiàn)在,新一代的DS18B20體積更小、更經(jīng)濟(jì)、更靈活。使用戶可以充分發(fā)揮“一線總線”的優(yōu)點(diǎn)。同DS1820一樣,DS18B20也支持“一線總線”接口,測量溫度范圍為-55C~+125C,在-10~+85C范圍內(nèi),精度為0.5C?,F(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場溫度測量,如:環(huán)境控制、設(shè)備或過程控制、測溫類消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。而且新一代產(chǎn)品更便宜,體積更小。
6.2.
9、1 DS18B20的特性
(1)適應(yīng)電壓范圍更寬,電壓范圍:3.0~5.5V,寄生電源方式下可由數(shù)據(jù)線
--
--
-- 供電。
(2)獨(dú)特的單線接口方式,DS18B20在與微處理器連接時(shí)僅需要一條口線即可實(shí)現(xiàn)微處理器與D S18B 20的雙向通訊。
(3)DS18B20支持多點(diǎn)組網(wǎng)功能,多個(gè)DS18B20可以并聯(lián)在唯一的三線上,實(shí)現(xiàn)組網(wǎng)多點(diǎn)測溫。
(4)D S18B20在使用中不需要任何外圍元件,全部傳感元件及轉(zhuǎn)換電路集成在形如一只三極管的集成電路內(nèi)。
(5)溫范圍-55℃~+125℃,在-10~+85℃時(shí)精度為0.5℃。
(6)可編程的分辨率為9~12位,對應(yīng)的可分辨溫度
10、分別為0.5℃、0.25℃、0.125℃和0.0625℃,可實(shí)現(xiàn)高精度測溫。
(7)在9位分辨率時(shí)最多在93.75m s內(nèi)把溫度轉(zhuǎn)換為數(shù)字,12位分辨率時(shí)最多在750ms 內(nèi)把溫度值轉(zhuǎn)換為數(shù)字,速度更快。
(8)測量結(jié)果直接輸出數(shù)字溫度信號,以“一線總線”串行傳送給CPU,同時(shí)可傳送C RC 校驗(yàn)碼,具有極強(qiáng)的抗干擾糾錯(cuò)能力。
(9)負(fù)壓特性:電源極性接反時(shí),芯片不會因發(fā)熱而燒毀,但不能正常工作。 6.2.2
DS18B20內(nèi)部結(jié)構(gòu)及DS 18B 20的管腳排列
64位光刻R OM 是出廠前被光刻好的,它可以看作是該D S18B20的地址序列號。不同的器件地址序列號不同。D S18B
11、20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻RO M,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器TH 和TL,高速暫存器。
DS18B20的引腳定義:
圖一 D S18B20引腳定義
(1)D Q為數(shù)字信號輸入/輸出端。
--
-- (2)G ND為電源地。
(3)VDD 為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。
6.2.3 DS 18B20的編程
(1)DS18B20的初始化:
①先將數(shù)據(jù)線置高電平“1”。
②延時(shí)(該時(shí)間要求的不是很嚴(yán)格,但是盡可能的短一點(diǎn))
③數(shù)據(jù)線拉到低電平“0”。
④延時(shí)750us (該時(shí)間的時(shí)間范圍可以從480us 到960us )
12、。
⑤數(shù)據(jù)線拉到高電平“1”。
⑥延時(shí)等待(如果初始化成功則在15到60毫秒時(shí)間之內(nèi)產(chǎn)生一個(gè)由DS18B20所返回的低電平“0”。據(jù)該狀態(tài)可以來確定它的存在,但是應(yīng)注意不能無限的進(jìn)行等待,不然會使程序進(jìn)入死循環(huán),所以要進(jìn)行超時(shí)控制)。
⑦若CPU 讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時(shí),其延時(shí)的時(shí)間從發(fā)出的高電平算起(第(5)步的時(shí)間算起)最少要480微秒。
⑧將數(shù)據(jù)線再次拉高到高電平“1”后結(jié)束。
初始化程序代碼如下:
void ds_r eset(voi d) { char presence=1; while(pr ese nce) ?{ ? wh ile(prese
13、nce) ?{ ???DQ=1; ? ?_n op_(); ?_nop_(); ?DQ=0; ? dela y(50); ? DQ=1; ??delay(6); ?? pr esence=DQ ; ??} ??delay(45); prese nce=~D Q; } DQ=1; }
(2)DS18B 20的寫操作:
①數(shù)據(jù)線先置低電平“0”。
②延時(shí)確定的時(shí)間為15us 。
--
-- ③按從低位到高位的順序發(fā)送字節(jié)(一次只發(fā)送一位)。 ④延時(shí)時(shí)間為45u s。
⑤將數(shù)據(jù)線拉到高電平。
⑥重復(fù)上(1)到(6)的操作直到所有的字節(jié)
14、全部發(fā)送完為止。 ⑦最后將數(shù)據(jù)線拉高。
寫操作程序代碼如下:
void ds_write(uc har ds_w rdata )
{ ?u char i; f or(i=8;i>0;i--) ?{ ? DQ=1; ? _no p_(); _no p_(); ? D Q=0; ? _n op_(); ?_nop_(); ??_no p_(); ?_n op_(); ? DQ=ds_wrdata&0x 01; //最低位移出 ?d el ay(6); d s_w rda ta=d s_wrdata/2; //右
15、移1位 ?} DQ =1; ?dela y(1); }
(3)DS18B20的讀操作:
①將數(shù)據(jù)線拉高“1”。
②延時(shí)2us 。
③將數(shù)據(jù)線拉低“0”。
④延時(shí)15us 。
⑤將數(shù)據(jù)線拉高“1”。
⑥延時(shí)15us 。
⑦讀數(shù)據(jù)線的狀態(tài)得到1個(gè)狀態(tài)位,并進(jìn)行數(shù)據(jù)處理。
⑧延時(shí)30us 。
讀操作程序代碼如下:
uc har ds_rea d(void ) { ?u ch ar i; ?uc har val ue=0; for(i =8;i>0;i--) {
--
-- DQ=1;_nop_(); ??_nop_(); ? valu e>>=1; ? D Q=0
16、; ??_nop_(); ??_nop_(); ? _nop_(); ? _nop_(); ??DQ=1; ??_nop_(); ?_nop _(); ? _no p_(); _nop_(); ?if (DQ)va lue|=0x80; del ay(6); ?} DQ=1; return(va lue ); }
6.2.4 DS18B20傳感器的溫度數(shù)據(jù)關(guān)系
:
圖二 溫度傳感器的溫度數(shù)據(jù)關(guān)系
6.2.5 DS18B20的外部電源供電方式:
在外部電源供電方式下,DS18B20工作電源由VDD 引腳接入,此時(shí)I/O 線不需要強(qiáng)上拉,不存在電源
17、電流不足的問題,可以保證 轉(zhuǎn)換精度,同時(shí)在總線上理論可以掛接任意多個(gè)DS18B 20傳感器,組成多點(diǎn)測溫系統(tǒng)。
--
--
圖三 外部電源供電連接圖
七、系統(tǒng)框圖
本系統(tǒng)設(shè)計(jì)由5個(gè)模塊組成:主控制器(單片機(jī))、溫度采集模塊、溫度顯示模塊、控制電路模塊、報(bào)警及指示模塊。主控制器由單片機(jī)AT89C52實(shí)現(xiàn),測溫電路由DS 18B 20溫度傳感器實(shí)現(xiàn),顯示電路由4位LED 數(shù)碼管直讀顯示,報(bào)警指示電路由蜂鳴器和發(fā)光二級管構(gòu)成,控制電路由按鍵構(gòu)成。
系統(tǒng)框圖如下:
圖四 系統(tǒng)框圖 溫度顯示 溫度采集 控制按鍵 報(bào)警指示 P1.0 P1.3~P1.7 P0.0~P0.7 P2.0~P2.3
P3.0~P3.3 單片機(jī)
--
八、工作流程圖
8.1主程序流程圖
圖五主要功能流程圖
--
--
圖六指示、報(bào)警模塊流程圖
圖七
--
--
九、硬件電路圖
圖八顯示模塊
圖九按鍵控制模塊
--