潘 婷,隆凡英,李洪波
(興義民族師范學(xué)院,貴州 興義 562400)
二十一世紀(jì)是科技高速發(fā)展的信息時(shí)代,電子技術(shù)、微型單片機(jī)技術(shù)的應(yīng)用更是空前廣泛。隨著科學(xué)技術(shù)和生產(chǎn)的不斷發(fā)展以及人們生活水平的不斷提高,人們對(duì)日常所用的水杯也提出了越來(lái)越高的要求。針對(duì)人們不能直觀地感知水溫的問(wèn)題,結(jié)合當(dāng)前先進(jìn)的電子和信息技術(shù),提出一種具有自動(dòng)提醒和加熱功能的智能水杯設(shè)計(jì)。
本文的研究重點(diǎn)在于基于單片機(jī)和傳感器設(shè)計(jì)1個(gè)溫度測(cè)量感知和加熱系統(tǒng),并將其應(yīng)用到智能水杯中,通過(guò)軟件和硬件的設(shè)計(jì)、仿真,最后進(jìn)行實(shí)踐驗(yàn)證。考慮使用溫度傳感器,結(jié)合單片機(jī)電路設(shè)計(jì),采用DS18B20 溫度傳感器采集溫度,在LCD1602 顯示溫度值。本系統(tǒng)電路設(shè)計(jì)方框圖如圖1 所示,其組成有:STC89C52 最小系統(tǒng)、LCD1602 顯示模塊、DS18B20 溫度檢測(cè)模塊、繼電器控制模塊、水位檢測(cè)模塊和蜂鳴器提醒模塊等。
圖1 系統(tǒng)電路設(shè)計(jì)方框圖
系統(tǒng)的硬件設(shè)計(jì)部分有:?jiǎn)纹瑱C(jī)最小系統(tǒng)、顯示電路設(shè)計(jì)、溫度采集電路設(shè)計(jì)、水位自動(dòng)提醒電路設(shè)計(jì)、溫度制熱設(shè)計(jì)、水位檢測(cè)電路設(shè)計(jì)及按鍵電路設(shè)計(jì)等。
STC89C52 為低功耗、高性能CMOS 8 位微控制器,加上外圍晶振時(shí)鐘電路和復(fù)位電路構(gòu)成單片機(jī)最小系統(tǒng)。另外,STC89C52 可降至0 Hz 靜態(tài)邏輯操作,支持2 種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口和中斷繼續(xù)工作。掉電保護(hù)方式下,RAM 內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。在本設(shè)計(jì)采用微控制器STC89C52 負(fù)責(zé)實(shí)時(shí)檢測(cè)傳感器輸出的信號(hào)是否有變化,其原理圖如圖2 所示。
圖2 主控電路
考慮到要顯示的是溫度和水位這2 個(gè)數(shù)據(jù),所以只需要能夠顯示1~2 行的顯示器即可。選擇的主要元器件為L(zhǎng)CD1602,實(shí)現(xiàn)溫度顯示功能。LCD1602 液晶顯示在執(zhí)行程序指令之前要進(jìn)行模塊標(biāo)志位的忙信號(hào),只有當(dāng)它的忙標(biāo)志位為低電平時(shí)才表示可以執(zhí)行指令。具體電路設(shè)計(jì):其D0、D1、D2、D3、D4、D5、D6 和D7 管 腳 分 別 與 單 片 機(jī)P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6 和P0.7 引腳連接,進(jìn)行數(shù)據(jù)傳輸;RS 與P2.5連接,高電平時(shí)選擇數(shù)據(jù)寄存器,低電平選擇指令寄存器;RW 與P2.6 連接,高電平進(jìn)行讀操作,低電平進(jìn)行寫(xiě)操作;E 與P2.7 連接,當(dāng)E 端由高電平變成低電平時(shí),液晶模塊執(zhí)行命令;通過(guò)排阻組成的上拉電阻驅(qū)動(dòng)液晶模塊,其電路圖如圖3 所示。
圖3 顯示電路
DS18B20 的溫度檢測(cè)與檢測(cè)溫度數(shù)字量全集成于一個(gè)芯片上,實(shí)現(xiàn)溫度采集功能。18B20 共有2 種形態(tài)的存儲(chǔ)器資源,分別是:①ROM 只讀存儲(chǔ)器:用于存放DS18B20 的ID 編碼;②RAM 數(shù)據(jù)暫存器:用于內(nèi)部計(jì)算和數(shù)據(jù)存取。DS18B20 的DQ 端與單片機(jī)的引腳P1.7 連接,實(shí)現(xiàn)溫度數(shù)據(jù)的傳輸。單片機(jī)對(duì)DS18B20的操作流程:①?gòu)?fù)位;②存在脈沖;③發(fā)送ROM 指令;④發(fā)送存儲(chǔ)器操作指令;⑤執(zhí)行或數(shù)據(jù)讀寫(xiě)。其電路原理圖如圖4 所示。
圖4 溫度采集電路
本文采用3 個(gè)不同顏色的LED 燈作為提醒的標(biāo)志,實(shí)現(xiàn)水位提醒功能。紅色LED 燈(D1)表示水位較低,需要計(jì)時(shí)裝水;黃色LED 燈(D2)表示水位一般;綠色LED 燈(D3)表示水量較多。D1、D2 和D3 分別與單片機(jī)的P1.4、P1.5 和P1.6 引腳連接。其電路圖如圖5所示。
圖5 LED 指示電路
加熱半導(dǎo)體熱電偶由N 型半導(dǎo)體和P 型半導(dǎo)體組成,實(shí)現(xiàn)加熱功能。為繼電器控制模塊部分,單片機(jī)P3.7 腳連接三極管,驅(qū)動(dòng)繼電器,使其進(jìn)行通斷操作,進(jìn)而控制加熱半導(dǎo)體熱電偶的加熱功能。其電路圖如圖6 所示。
圖6 溫度制熱電路
水位傳感器是由液位檢測(cè)專用集成芯片水位傳感器和探針組成,實(shí)現(xiàn)液位信號(hào)到電壓信號(hào)的轉(zhuǎn)換。水位傳感器使用熱阻探針技術(shù)來(lái)測(cè)量非可燃性液體的液面高度,其能提供一正比于液位高度的輸出,可進(jìn)行單次或重復(fù)測(cè)量。其水位檢測(cè)得到的電壓模擬信號(hào)通過(guò)模數(shù)轉(zhuǎn)換模塊ADC0832 轉(zhuǎn)換為8 位數(shù)字量,傳輸給單片機(jī)的P3.5 引腳進(jìn)行處理,實(shí)現(xiàn)水位監(jiān)測(cè)功能。其電路圖如圖7 所示。
圖7 水位檢測(cè)電路
ADC0832 芯片的主要特點(diǎn)見(jiàn)表1。
表1 ADC0832 芯片的主要特點(diǎn)
單片機(jī)的按鍵控制電路是由4 個(gè)微動(dòng)開(kāi)關(guān)并聯(lián)組成的電路按鍵,開(kāi)關(guān)的檢測(cè)其原理就是按下輸出低電平,松開(kāi)高電平,實(shí)現(xiàn)按鍵控制功能。設(shè)置按鍵、加按鍵、減按鍵和計(jì)時(shí)/暫停按鍵分別與單片機(jī)的引腳P1.0、P1.1、P1.2 和P1.3 連接,按鍵按下執(zhí)行相應(yīng)功能。其電路圖如圖8 所示。
圖8 按鍵電路
本裝置的軟件包括主程序、顯示程序、溫度判斷程序、制熱程序以及DS18B20 溫度采集程序等。主要實(shí)現(xiàn)以下功能:①可實(shí)現(xiàn)測(cè)量水杯內(nèi)的溫度;②可實(shí)現(xiàn)按鍵控制加熱功能;③可實(shí)現(xiàn)水溫控制功能。
主程序的主要參數(shù)是負(fù)責(zé)溫度的實(shí)時(shí)顯示,讀出處理DS18B20 的測(cè)量的當(dāng)前溫度值,其程序流程圖如圖9 所示。
圖9 主程序流程圖
硬件電路設(shè)計(jì)完成后,利用Keil 軟件編程生成可執(zhí)行文件,然后進(jìn)行仿真檢測(cè),仿真成功后購(gòu)買元器件進(jìn)行實(shí)物制作,完成實(shí)物測(cè)試。測(cè)試前首先要準(zhǔn)備需要的材料,如用礦泉水瓶模擬水杯;然后檢查電路連接,打開(kāi)電源開(kāi)關(guān),觀察效果。測(cè)試開(kāi)始后,LCD1602 顯示水溫為20 ℃,水溫低于設(shè)定值,繼電器模塊的綠燈亮起,說(shuō)明與繼電器連接的加熱模塊正在工作;LED 紅燈亮表示水位低于下限,在向水杯加入一些水的過(guò)程中,LED 黃燈先亮,之后LED 綠燈亮,表示水位在上升,LCD1602 顯示屏上顯示水位為72%,各功能單位工作正常,測(cè)試結(jié)果達(dá)到了本次設(shè)計(jì)的目標(biāo)。實(shí)物測(cè)試圖如圖10 所示。
圖10 實(shí)物測(cè)試圖
本設(shè)計(jì)實(shí)現(xiàn)了基于單片機(jī)的智能水杯的所有功能。采用DS18B20 溫度傳感器實(shí)現(xiàn)溫度的實(shí)時(shí)采集;利用ADC0832 模數(shù)轉(zhuǎn)換模塊實(shí)現(xiàn)了水杯水量的檢測(cè);利用繼電器控制水杯加熱,實(shí)現(xiàn)溫度控制;利用LCD1602 模塊實(shí)現(xiàn)了水量、水溫等信息的顯示;最后通過(guò)實(shí)際測(cè)試,驗(yàn)證了所設(shè)計(jì)的水杯是一種性能良好的智能水杯,具有一定的實(shí)際應(yīng)用價(jià)值。通過(guò)本次設(shè)計(jì),掌握了液晶顯示的基本理論知識(shí)以及更深入地掌握對(duì)單片機(jī)的開(kāi)發(fā)應(yīng)用和編程控制。