精品国产成人一区二区三区-女子十八毛片-欧洲性猛交-无码不卡一区二区三区在线观看-www.四虎在线-伊人网国产-国精产品自偷自偷综合下载-不卡av网站-俄罗斯黄色大片-一本久久知道综合久久-国产精品日韩一区二区-日韩精品色-免费人成网ww555kkk在线-黄色在线观看免费-日韩在线免费-久久久久99人妻一区二区三区-十八禁真人啪啪免费网站

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓信息
贊助商
基于單片機的溫度控制系統(tǒng)的設(shè)計與實現(xiàn)
基于單片機的溫度控制系統(tǒng)的設(shè)計與實現(xiàn)
 更新時間:2009-9-21 16:26:41  點擊數(shù):0
【字體: 字體顏色
摘 要:本文介紹了基于單片機AT89C51 的溫度控制系統(tǒng)的設(shè)計方案與軟硬件實現(xiàn)。采用溫度傳感器DS18B20 采集溫度數(shù)據(jù),液晶顯示屏LCM1602 顯示溫度數(shù)據(jù),AT24C02B 存儲溫度上下限設(shè)定值,按鍵設(shè)置溫度上下限并可改變加熱器與致冷器的溫控狀態(tài),當溫度低于設(shè)定的下限時,單片機啟動加熱器加熱,同時點亮綠色發(fā)光二極管,當溫度高于設(shè)定的上限時,單片機啟動致冷器降溫,同時點亮紅色發(fā)光二極管。給出了系統(tǒng)總體框架、程序流程圖和Proteus 仿真結(jié)果,并在硬件平臺上實現(xiàn)了所設(shè)計的功能。
關(guān)鍵詞:單片機;溫度控制系統(tǒng);溫度傳感器;液晶顯示器

1 引 言
隨著社會的發(fā)展,溫度的測量及控制變得越來越重要。本文采用單片機AT89C51 設(shè)計了溫度實時測量及控制系統(tǒng)。單片機AT89C51 能夠根據(jù)溫度傳感器DS18B20 所采集的溫度數(shù)據(jù)來控制加熱器或致冷器的啟停,從而把溫度控制在設(shè)定的范圍之內(nèi)。在溫控開關(guān)被激活的情況下,當溫度低于設(shè)定的下限時,單片機啟動加熱器加熱,同時點亮綠色發(fā)光二極管,當溫度高于設(shè)定的上限時,單片機啟動致冷器降溫,同時點亮紅色發(fā)光二極管。所有溫度數(shù)據(jù)均通過液晶顯示器LCM1602 顯示出來。為了防止單片機掉電引起的數(shù)據(jù)丟失,溫度上下限的設(shè)定值存儲在AT24C02B 中。
2 系統(tǒng)總體設(shè)計
系統(tǒng)主要包括單片機控制模塊,溫度采集模塊,溫度顯示模塊,溫度上下限調(diào)整模塊,電機驅(qū)動模塊和外部存儲模塊等六大部分。系統(tǒng)總體框架如圖1 所示。

 

2.1 單片機控制模塊
控制模塊是整個設(shè)計方案的核心,它控制了溫度的采集、處理與顯示、溫度上下限值的設(shè)定與溫度越限時電機的啟動。
本文選用AT89C51 作為控制器件。它是美國ATMEL 公司生產(chǎn)的8 位Flash ROM 單片機。其最突出的優(yōu)點是片內(nèi)ROM 為Flash ROM,可方便地擦寫1000 次以上,價格低廉,而且其指令豐富,編譯工具多,仿真環(huán)境好。因此被廣泛地應(yīng)用于各種控制領(lǐng)域。
本控制系統(tǒng)中AT89C51 與外圍設(shè)備的連接關(guān)系如圖2 所示:

 

由圖2 可知,溫度數(shù)據(jù)采集模塊中溫度傳感器DS18B20 的DQ 端接P1.7;顯示模塊LCM1602的DB0~DB7 數(shù)據(jù)端口接P0.0~P0.7,數(shù)據(jù)命令選擇端RS 接P2.0,讀寫選擇端接P2.1,使能信號接P2.2;溫度上下限調(diào)整模塊包括模式切換、增加溫度上下限值、減少溫度上下限值、溫控開關(guān)等四個功能,它們分別接P1.0~P1.3;外部存儲模塊為AT24C02B,其SCK、SDA 分別接P2.3 與P2.4;電機控制電路與P3.6 和P3.7 相連;XTAL1、XTAL2 接振蕩電路,RST 接復位電路,EA 接高電平,LCM1602 上的VO、RST 接電源+5V,GND 接地。
2.2 溫度數(shù)據(jù)采集模塊
溫度由DALLAS 公司生產(chǎn)的一線式數(shù)字溫度傳感器DS18B20 采集。DS18B20 測溫范圍為-55°C~+125°C,測溫分辨率可達0.0625°C,被測溫度用符號擴展的16 位補碼形式串行輸出。CPU 只需一根端口線就能與諸多DS18B20 通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。
DS18B20 內(nèi)部有一個9 字節(jié)的高速存儲器用于存儲溫度值。其中前兩個字節(jié)是測得的溫度數(shù)據(jù),第1 字節(jié)的內(nèi)容是溫度的低八位,第2 字節(jié)是溫度的高八位,第3 和第4 字節(jié)是溫度上限 TH 與溫度下限 TL 的易失性拷貝,第5 字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個字節(jié)的內(nèi)容在每一次上電復位時被刷新,第6、7、8 這三個字節(jié)用于內(nèi)部計算,第9個字節(jié)是冗余檢驗字節(jié),可用來保證通信的正確性。當溫度轉(zhuǎn)換命令發(fā)出后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補碼形式存放在此存儲器的第1 和第2 個字節(jié)。單片機可通過單線接口讀到該數(shù)據(jù),讀取時低位在前,高位在后,其中高5 位是符號位,中間7 位是整數(shù)位,最低4 位是小數(shù)位。

DS18B20 最大的特點是單總線數(shù)據(jù)傳輸方式,因此對讀寫的數(shù)據(jù)位有著嚴格的時序要求。時序包括:初始化時序、讀時序、寫時序。每一次命令和數(shù)據(jù)的傳輸都是從單片機啟動寫時序開始,如果要求DS18B20 回送數(shù)據(jù),在進行寫命令后,單片機需啟動讀時序完成數(shù)據(jù)接收。數(shù)據(jù)和命令的傳輸都是低位在先。DS18B20 的時序及命令請參考文獻[1]。
2.3 LCM1602
LCM1602 是2 行×16 個字符的字符型LCD 顯示器,它由32 個字符點陣塊組成,每個字符點陣塊由5×7 或5×10 個點陣組成,可以顯示ASCII 碼表中的所有可視的字符。它內(nèi)置了字符產(chǎn)生器ROM (Character Generator ROM,CGROM)、 字符產(chǎn)生器RAM (CharacterGenerator RAM, CGRAM)和顯示數(shù)據(jù)RAM(Data Display RAM, DDRAM)。CGROM 中內(nèi)置了192個常用字符的字模,CGRAM 包含8 個字節(jié)的RAM,可存放用戶自定義的字符,DDRAM 就是用來寄存待顯示的字符代碼。DDRAM 地址與顯示位置的對應(yīng)關(guān)系以及LCM1602 的指令與讀寫時序可參考文獻[2]。
2.4 外部存儲模塊
外部存儲模塊采用美國ATMEL 公司生產(chǎn)的低功耗CMOS 型E2PROM 器件AT24C02B,它內(nèi)含256×8 位存儲空間,具有工作電壓寬(2.5~5.5 V)、擦寫次數(shù)多(大于10000 次)、寫入速度快(小于10ms)、抗干擾能力強、數(shù)據(jù)不易丟失、體積小等特點。它采用了I2C 總線規(guī)程,使主/從機雙向通信。主機通過SCL 引腳產(chǎn)生串行時鐘信號并發(fā)出控制字,控制總線數(shù)據(jù)傳送的開始、方向和停止。無論是主機還是從機,接收到一個字節(jié)后必須發(fā)出一個確認信號。AT24C02B 占用很少的資源和I/O 線,并且支持在線編程,數(shù)據(jù)實時存取十分方便。AT24C02B 的讀寫時序及控制字見參考文獻[3]。
2.5 溫度上下限設(shè)置模塊
溫度上下限設(shè)置模塊包括四個按鍵:
(1)模式切換鍵:進行模式之間的切換,模式包括設(shè)置溫度上限模式、設(shè)置溫度下限模式,每次按下該鍵就在這兩種模式之間切換。
(2)溫度上下限增加鍵:增加溫度上下限的值。
(3)溫度上下限減少鍵:減少溫度上下限的值。
(4)溫控開關(guān)鍵:是溫控與非溫控之間的切換鍵。它用于設(shè)置是否進行溫度控制即是否讓越界的溫度值觸發(fā)加熱器或致冷器的啟動。
2.6 控制電路模塊
該部分電路有光耦合元件4N25、繼電器、三極管,若干電阻等構(gòu)成。這部分電路的主要作用是光電隔離,即消除后級電機對前級單片機的影響。三極管使用的是9013,9013是NPN 型的,把其集電極接+5V 電壓,射極接繼電器。當單片機引腳給出低電位時,4N25內(nèi)部的發(fā)光二極管亮,使其內(nèi)部的三極管導通,繼而通過第4 引腳上的10K 電阻分得電壓。當4N25 給其基極提供足夠的電壓時9013 導通。繼電器的常開開關(guān)閉合,電機上電工作。
3 系統(tǒng)軟件設(shè)計
主程序調(diào)用了5 個子程序,分別是LCD 顯示程序、按鍵掃描及處理程序、溫度采集程序、溫度越界判決程序、AT24C02B 讀寫程序。LCD 顯示程序,用于溫度等數(shù)據(jù)的實時顯示;按鍵掃描及處理程序,實現(xiàn)按鍵識別、按鍵輸入及相關(guān)處理;溫度采集程序負責把DS18B20所采集的現(xiàn)場溫度讀入到指定的數(shù)組中;溫度越界判決程序,對現(xiàn)場溫度與設(shè)定的溫度上下限進行比較,若溫度越界,并且當溫控開關(guān)處于開啟狀態(tài)時,啟動加熱器或致冷器工作;

AT24C02B 讀寫程序,存儲和調(diào)用設(shè)定的溫度上下限值。圖3 為系統(tǒng)主程序與按鍵掃描程序的流程圖。有關(guān)溫度采集的程序及流程圖可參考文獻[4]。

 

4 PROTEUS 仿真
按照圖2 所示電路原理圖,在Proteus 里面建立元器件連接關(guān)系。根據(jù)設(shè)計功能要求在Keil μVision3 環(huán)境下編寫C 語言程序,并編譯連接生成十六進制的hex 文件,把此文件加載到單片機,就可以進行Proteus 仿真了。圖4 是當溫度低于所設(shè)定的下限值并且溫控開關(guān)處于激活狀態(tài)時,綠色二極管亮,同時加熱器啟動的仿真結(jié)果。

 

5 結(jié)束語
本文詳細講述了系統(tǒng)設(shè)計方案,并給出了相關(guān)程序流程。本設(shè)計應(yīng)用性比較強,可以應(yīng)用在倉庫溫度、大棚溫度、機房溫度等的監(jiān)控。另外,如果把本設(shè)計方案擴展為多點溫度控制,加上上位機,則可以實現(xiàn)遠程溫度監(jiān)控系統(tǒng),將具有更大的應(yīng)用價值。
本文的創(chuàng)新點在于詳細設(shè)計了基于單片機AT89C51 的溫度監(jiān)控系統(tǒng),進行了Proteus仿真,所設(shè)計程序已經(jīng)在硬件平臺上成功運行.此系統(tǒng)可廣泛用于溫度在DS18B20 測溫范圍之內(nèi)的場合,有良好的應(yīng)用前景。
本項目來源于焦煤集團礦區(qū)溫度監(jiān)控工程,項目經(jīng)濟效益為20 萬元。
參考文獻
[1] 周潤景,張麗娜.基于PROTEUS 的電路及單片機系統(tǒng)設(shè)計與仿真[M].北京:航空航天大學出版 ,2006.P321~P326
[2]王忠飛,胥芳.MCS-51 單片機原理及嵌入式系統(tǒng)應(yīng)用[M].西安:西安電子科技大學出版社,2007.P268-273
[3] Microchip 24C01B/02B 8 位PIC®單片機產(chǎn)品手冊[ED/OL],http://www.chuandong.com/publish/data/2007/2/data_14_27926.html.
[4]趙娜,趙剛,于珍珠等.基于51 單片機的溫度測量系統(tǒng)[J]. 微計算機信息,2007,1-2:146-148。
作者簡介:趙鴻圖(1965.4-),男,漢族,河南理工大學計算機學院,講師,主要研究方向為嵌人式系統(tǒng),計算機通信;

  • 上一篇: 激光打標機數(shù)字控制系統(tǒng)的設(shè)計與開發(fā)
  • 下一篇: 沒有了
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔任何保證責任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1
    正镶白旗| 新余市| 台东县| 哈密市| 德庆县| 黄浦区| 额尔古纳市| 定州市| 湄潭县| 股票| 进贤县| 扎囊县| 偏关县| 虞城县| 油尖旺区| 溆浦县| 张掖市| 广宗县| 东安县| 建水县| 宁晋县| 襄垣县| 济南市| 襄垣县| 休宁县| 穆棱市| 罗甸县| 化州市| 贵定县| 北流市| 淅川县| 兴城市| 崇明县| 宣化县| 任丘市| 黄龙县| 双桥区| 平顶山市| 岳阳县| 无棣县| 抚宁县|