侯衛(wèi)周, 顧玉宗
(河南大學(xué) 物理與電子學(xué)院,河南 開封 475004)
一款單片機系統(tǒng)控制的溫控智能水杯設(shè)計
侯衛(wèi)周, 顧玉宗
(河南大學(xué) 物理與電子學(xué)院,河南 開封 475004)
設(shè)計了一款具有測溫、保溫、提醒等多重特性的智能水杯。以STC89C51單片機為電路控制核心,對溫控智能水杯系統(tǒng)的鍵盤顯示及接口、DS18B20溫度傳感、報警等硬件電路進行了設(shè)計;采用Visual C++6.0作為軟件開發(fā)工具進行編程,實現(xiàn)了單片機與LCD1602的接口電路設(shè)計;另外用戶可通過紅外遙控對溫控智能水杯進行加熱、定時等多種簡便操作。結(jié)果表明:該款智能溫控水杯具有的多重優(yōu)點,彌補了傳統(tǒng)水杯的不足,能極大地滿足用戶的需求。
單片機系統(tǒng); 溫度控制; 智能水杯
伴隨電子技術(shù)日新月異的發(fā)展,越來越多的科技產(chǎn)品已步入用戶的家庭和辦公場所。隨著人們對現(xiàn)代家庭和辦公環(huán)境舒適、便利、安全以及多元化信息服務(wù)的廣泛需要,智能化電器在人們?nèi)粘I钪兴急戎卦絹碓酱螅缃竦闹悄芩a(chǎn)品已絕不是一個簡單的加熱器,而是具有一定科技含量的現(xiàn)代化家電產(chǎn)品。在目前的市場中,還沒有一款同時具備測溫、保溫、提醒等多重功能的水杯。為滿足用戶需求并實現(xiàn)多功能的智能水杯,本設(shè)計采用STC89C51單片機為核心控制電路,成功制作出了測溫、保溫、提醒等具有多重智能特征的溫控水杯,同時也滿足了用戶對快節(jié)奏的現(xiàn)代生活需求。
1.1 控制設(shè)計的原理
STC89C51芯片是一款低功耗、高性能CMOS八位的單片機[1-2],內(nèi)含8 Kbyte的可反復(fù)擦寫1 000次的Flash只讀程序存儲器,它采用高密度、非易失性存儲技術(shù)生產(chǎn),兼容了標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳(或管腳)。該芯片集合了Flash程序存儲器[3],既能在線進行編程(ISP)也能采用傳統(tǒng)的方法實現(xiàn)編程;同時該芯片中內(nèi)置有通用的8位微處理器,功能十分強大,在諸多自動控制領(lǐng)域內(nèi)被廣泛使用。本設(shè)計基于STC89C51型號的單片機優(yōu)良特性,而智能溫控系統(tǒng)部分的主要核心就是該控制芯片,通過方案擇優(yōu)確定了電源、鍵盤、編程接口、單片機、幾種指示燈顯示、水溫檢測和報警輸出等可行性模塊,進一步實現(xiàn)智能水杯的設(shè)計要求。
1.2 實驗設(shè)計
由于STC89C51常采用+5 V電源供電,故要求供電電源單獨設(shè)計制作。單片機硬件部分由單片機最小系統(tǒng)配以按鍵、顯示器件構(gòu)成。限于單片機型號采用12 MHz晶振和兩個30 μF陶瓷平衡電容組成振蕩電路[4]。為使硬件具有通用性,復(fù)位電路采用上電與按鍵復(fù)位結(jié)合設(shè)計,獨立式按鍵通過P1口掃描查詢,分別執(zhí)行設(shè)置、加、減、確定等功能。系統(tǒng)還可通過紅外遙控對智能水杯進行控制,以提高整個水杯加熱系統(tǒng)的安全性。系統(tǒng)工作時,首先檢測功能按鍵,進行溫度范圍設(shè)置;其次檢測加減按鍵,進行溫度范圍調(diào)節(jié),也可以按下紅外遙控器上的按鍵操作,與主板上的按鍵功能一樣,然后執(zhí)行程序。由傳感器DS18B20檢測水溫,當(dāng)檢測溫度低于預(yù)設(shè)溫度下限時,開始加熱;檢測溫度高于預(yù)設(shè)溫度上限時,停止加熱;并可預(yù)約加熱,設(shè)定時間0~999 min,定時時間到達開始自動加熱。當(dāng)水杯內(nèi)沒有水但溫度還在設(shè)置范圍內(nèi)時,為保證安全,設(shè)計加入的防干燒模塊中的水位檢測器可有效預(yù)防干燒,若發(fā)生報警聲系統(tǒng)自動切斷加熱模塊,以防意外。
設(shè)計采用單片機來實現(xiàn)溫控智能水杯的科技智能化,主要原因是其采用面向控制的指令系統(tǒng),實時控制的功能比較強。CPU可直接對I/O口進行輸入、輸出操作及邏輯運算,并且具有很強的位處理能力[5],能有針對性地解決從簡單到復(fù)雜的各類必要控制任務(wù)。
2.1 設(shè)計要求
(1) 用LCD1602液晶顯示水溫、設(shè)置上、下限和定時;
(2) 水溫檢測的顯示范圍在0~99 ℃;
(3) 溫度預(yù)定范圍為0~99 ℃,當(dāng)測試水溫溫度低于預(yù)定溫度時,加熱系統(tǒng)開始啟動,而測試的水溫溫度高于預(yù)定溫度時,電路自動切斷并停止加熱;
(4) 設(shè)置4個程序按鍵,分別為“設(shè)置按鍵”“加鍵”“減鍵”“確認(rèn)鍵”等;
(5) 能通過紅外進行遠程(≤10 m)遙控功能,利用水杯內(nèi)的紅外一體接收探頭接收遙控器發(fā)來的信號,來執(zhí)行相應(yīng)的功能和需求;
(6) 防干燒模塊在水位檢測模塊作用下能有效預(yù)防水杯干燒。
2.2 實驗設(shè)計方案
(1) 以單片機STC89C51為控制核心的智能電熱水器。本研究主要以單片機STC89C51為控制核心部分,外圍配有時鐘、按鍵、顯示器件、復(fù)位等必要電路,最終溫控智能水杯系統(tǒng)的執(zhí)行框圖如圖1所示。
圖1 系統(tǒng)設(shè)計框圖
(2) 以PIC16C72單片機為控制器件的智能電熱水器。PIC16C72是Microchip公司推出的8/11位單片機。雖然該芯片功能很強大,但也存在需要改進的地方:中斷的現(xiàn)場保護是中斷應(yīng)用中一個很重要的部分,而PIC16C72的指令系統(tǒng)中沒有專門的PUSH(入棧)和POP(出棧)指令,需要另用一段程序來實現(xiàn)該功能;另外其內(nèi)部的控制繼電器如果用直流對電機進行控制,其轉(zhuǎn)速過快,過調(diào)量大,易引發(fā)震蕩現(xiàn)象。
因此通過兩種設(shè)計方案的比較和優(yōu)化,且考慮設(shè)計成本及軟硬件實現(xiàn)的難易程度,本設(shè)計采用方案(1)。
單片機應(yīng)用系統(tǒng)的硬件設(shè)計包含兩部分:
(1) 系統(tǒng)的擴展。單片機內(nèi)部如ROM、RAM、定時器/計數(shù)器、I/O、中斷系統(tǒng)等功能模塊無法滿足系統(tǒng)要求時,必須在STC89C51的芯片外圍進行適當(dāng)擴展,并設(shè)計相應(yīng)的擴展電路。
(2) 系統(tǒng)的配置。按系統(tǒng)功能的要求配置顯示器、打印機、鍵盤等相應(yīng)的外圍設(shè)備[6-8],同時還需要設(shè)計合適的接口電路進一步保障設(shè)計的最終實現(xiàn)。在考慮設(shè)計成本和實現(xiàn)的難易程度前提下,在本設(shè)計中,僅用單片機的最小系統(tǒng)外加鍵盤、顯示、ISP接口等電路,單片機本身資源基本能滿足本設(shè)計的一些需求,因此對單片機外圍不必進行擴展,最終該溫控智能水杯內(nèi)的系統(tǒng)硬件電路設(shè)計較為實用。
3.1 系統(tǒng)硬件電路
系統(tǒng)的硬件電路以STC89C51單片機為核心,主要分直流穩(wěn)壓電源和智能電熱水器控制電路兩部分。而智能水杯內(nèi)的電加熱系統(tǒng)由時鐘、報警、復(fù)位、溫度檢測和顯示接口等重要電路部分組成。
(1)電源電路。電源設(shè)計是本智能水杯加熱系統(tǒng)設(shè)計的重要環(huán)節(jié)。電源穩(wěn)定與否直接關(guān)系到電路是否能穩(wěn)定工作。按要求需一個+5 V電壓和一個+12 V左右可調(diào)電壓。LM317是三端穩(wěn)壓集成電路,最大輸出電流為2.2 A,輸出電壓范圍為1.25~37 V。本設(shè)計采用的LM317三端穩(wěn)壓集成器具有輸出電壓Uo可變,性價比較高且工作時的輸出電壓穩(wěn)定可靠等優(yōu)點。電源電路的設(shè)計目的是為了給單片機及其外圍控制電路提供合適的穩(wěn)定電壓。
(2)鍵盤接口電路。設(shè)計中I/O口線采用的是單個按鍵電路,構(gòu)成了獨立式按鍵,其中每個獨立按鍵分別占用一根I/O口線,其他I/O口線的工作狀態(tài)不受該按鍵工作的影響,開始時每個按鍵的輸入均需預(yù)置為低電平有效;另外在按鍵斷開時,上拉電阻保證了I/O口線的uH(高電平)是確定。設(shè)計的獨立式按鍵的軟件常通過查詢式方式進行訪問和查找,先逐位查找所有I/O口線的輸入工作狀態(tài)。若當(dāng)有一根I/O口線的輸入電平為低時,則可判斷該I/O口線所對應(yīng)的按鍵已執(zhí)行了相應(yīng)的“按下”操作,進而轉(zhuǎn)向該鍵所對應(yīng)的功能處理程序。
(3)報警電路。當(dāng)溫度超過上限時電路會報警,表明水溫過高,系統(tǒng)發(fā)出報警聲,以提示用戶要注意安全,報警電路設(shè)計如圖2所示。
圖2 報警電路
(4)水溫檢測電路。智能水杯的溫度檢測核心采用型號為DS18B20實時溫度傳感器[9-10]。DS18B20溫度采集模塊是達拉斯公司生產(chǎn)的一款線式數(shù)字溫度傳感器,具有三引腳的TO-92小體積封裝形式,對于溫度值的位數(shù)具有較高分辨率,能準(zhǔn)確采集水杯內(nèi)電熱水器的實際溫度,從而使系統(tǒng)設(shè)計更精確和靈活。單片機與 DS18B20溫度傳感器通過1-Wire協(xié)議進行數(shù)據(jù)通信,最終將DS18B20溫度數(shù)值通過STC89C51單片機引腳P2.2口實現(xiàn)數(shù)據(jù)串口通信實現(xiàn)讀數(shù),而本設(shè)計控制的對象為智能水杯中的水溫。系統(tǒng)中的水溫檢測電路如圖3所示。
圖3 水溫檢測電路
在溫度傳感器工作時,如果水溫超過60 ℃,將溫度信號傳給單片機,蜂鳴器報警,自動切斷電源;如果水溫低于30 ℃,水杯的電熱水器開始工作,加熱指示燈自動亮起。
(5)紅外一體接收模塊。智能水杯系統(tǒng)內(nèi)的紅外傳感器接收到紅外信號并經(jīng)處理后輸出給單片機引腳P3.3口,通過對P3.3口電平的判斷,來實現(xiàn)對單片機外圍電路的控制,如液晶顯示時間等。紅外遙控接收模塊外圍電路如圖4所示。
圖4 紅外遙控接收模塊外圍電路
3.2 顯示電路
櫻桃番茄播種適期是根據(jù)當(dāng)?shù)亟K霜期早晚、栽培品種與目的、苗床以及分苗次數(shù)等情況來確定。一般春季露地栽培,以當(dāng)?shù)亟K霜期往前推算60~70天為適宜播種日期??衫藐柶?、溫床、溫室等設(shè)施育苗。播前應(yīng)進行種子處理,多實行普通的溫湯浸種,或采用藥劑浸種。將浸過的種子放在25~30℃的環(huán)境下,2~3天即可出芽。選晴天上午播種,先澆底水后再播,可撒播,播種要均勻,覆土厚度不超過1厘米。利用營養(yǎng)缽和育苗盤育苗的,先將容器裝滿營養(yǎng)土,整齊的擺放在畦內(nèi),然后澆透水,每穴播2~3粒種子,播種后覆土,然后加蓋地膜或小拱棚,以利增溫和保濕。
在該溫控智能水杯加熱系統(tǒng)中,用LCD作為顯示部分,主要是設(shè)定時間和溫度的顯示。本設(shè)計選擇JHD162A作為液晶屏的顯示驅(qū)動控制器。按照1602液晶顯示(又稱LCD 1602)模塊電路的實際工作原理,設(shè)計出的STC89C51單片機與LCD1602的接口部分如圖5所示。其中1602液晶顯示有不帶背光的14個引腳或帶背光的16個引腳的接口,本設(shè)計采用帶背光的16個引腳的接口,由于篇幅有限,各引腳接口的詳細說明在此略;LCD1602模塊的讀寫、屏幕和光標(biāo)等操作都是通過指令程序來完成的;另外LCD1602模塊內(nèi)部的控制器共有11條指令,指令詳情讀者可查相關(guān)書籍。
圖5 單片機與LCD1602的接口電路
3.3 STC89C51單片機的最小系統(tǒng)
該溫控智能水杯的核心控制部分主要受單片機的最小系統(tǒng)來控制。設(shè)計采用了STC89C51型單片機,其最小系統(tǒng)由STC89C51單片機及其外圍電路構(gòu)成,其中的外圍電路主要包括時鐘、復(fù)位等兩部分。
時鐘電路包含一個用于構(gòu)成內(nèi)部振蕩器的高增益的反相放大器,該放大器與STC89C51芯片外的石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,目的為單片機提供一個基準(zhǔn)時序脈沖信號[11]。其中對預(yù)設(shè)和檢測到的溫度值等運算與控制過程均是在單片機產(chǎn)生的統(tǒng)一時序脈沖信號驅(qū)動下來完成的;如果單片機的時鐘電路停止工作(晶振停振),那么單片機也就自動停止運行。
復(fù)位電路分上電復(fù)位和按鍵手動復(fù)位。它是利用在復(fù)位管腳上外接電阻和電容構(gòu)成的外部復(fù)位電路來完成上電復(fù)位操作的。要求Ucc電壓上升時間t不超過1 ms(注:時間常數(shù)τ=RC),振蕩器啟動時間不超過10 ms。在加電時,該電路可以使單片機復(fù)位。在對單片機通電啟動時,RST(稱為復(fù)位管腳)上的電位從Ucc逐漸下降,RST管腳上的電位是Ucc電壓大小與電容電壓uC的差值,RST管腳上的電壓必須保證高于施密特觸發(fā)器的閾值電壓uT的時間足夠長,才能滿足復(fù)位電路的基本要求。為滿足溫控智能水杯及外圍電路簡單實用的要求,在設(shè)計中采用了上電和按鍵手動兩種方式同時結(jié)合的辦法來實現(xiàn)單片機復(fù)位。單片機復(fù)位后,單片機內(nèi)部的一些專用寄存器狀態(tài)從0000H單元開始執(zhí)行程序,同時使一些專用寄存器初始化為復(fù)位狀態(tài)值。受影響的具體寄存器狀態(tài)詳見表1。
表1 專用寄存器狀態(tài)
基于上述優(yōu)化方案和系統(tǒng)硬件電路的實現(xiàn),最終設(shè)計的單片機最小系統(tǒng)電路原理圖如圖6所示。
圖6 單片機最小系統(tǒng)電路原理圖
軟件部分主要是在Visual C++6.0的子編程環(huán)境進行程序設(shè)計的[12]。該智能溫控系統(tǒng)的程序設(shè)計主要包括由主程序、鍵掃描子程序及若干功能模塊子程序。其中主控制器子程序包括A/D轉(zhuǎn)換子程序(水溫、水位)、鍵盤處理及顯示子程序、加熱控制子程序(使用輸出比較功能)、漏電保護子程序等。主程序首先要對單片機內(nèi)部的定時器及端口、COP模塊、A/D轉(zhuǎn)換、鍵中斷等的工作參數(shù)進行系統(tǒng)初始化設(shè)定,接著系統(tǒng)的主程序循環(huán)調(diào)用各功能模塊的子程序,對相關(guān)事件的處理憑借標(biāo)志位及判斷標(biāo)志位來執(zhí)行和實現(xiàn)。由于涉及多方面技術(shù)原因,本文軟件設(shè)計的VC++6.0程序詳細代碼不予以給出,具體程序設(shè)計構(gòu)架(流程)如圖7所示。
圖7 主程序流程圖
溫控智能水杯調(diào)試過程如下:
(1) 智能水杯系統(tǒng)開始上電,現(xiàn)觀察杯中溫度為23.6 ℃(見圖8),若預(yù)設(shè)上限溫度為35 ℃,下限溫度為28 ℃,時間為2 min。當(dāng)前溫度不在設(shè)置范圍內(nèi),應(yīng)當(dāng)加熱,但設(shè)備并未進行加熱,此時紅色指示燈亮,表明水杯現(xiàn)在處于缺水狀態(tài),系統(tǒng)自動檢測并防止干燒。左下方的指示燈表示水位沒有達到上限值,該指示燈起到報警作用。圖8所示為水杯加熱但杯中水位未達上限時的調(diào)試電路。
(2) 給水杯注水,使其達到水位的上限值,此刻缺水指示燈熄滅,加熱棒開始加熱,左上方指示燈(黃燈)亮起。加熱棒通過繼電器來控制的,輸入信號分別是“0”和“1”,繼電器的通與斷是由溫度傳感器DS18B20采集處理相應(yīng)溫度數(shù)據(jù)后,通過引腳2輸出并送給單片機,單片機將其與設(shè)定溫度進行比較判斷后產(chǎn)生控制信號,來控制繼電器的通斷。加熱有水時的調(diào)試電路如圖9所示。
圖8 加熱但杯中水位未達上限的調(diào)試圖9 有水且在加熱的調(diào)試
(3) 水溫上升并超過下限溫度,且未達到上限溫度時,杯中水繼續(xù)加熱。當(dāng)水溫繼續(xù)上升,并超過上限溫度時,加熱指示燈(黃燈)熄滅,停止加熱。該過程的調(diào)試電路如圖10所示。
(4) 本設(shè)計還可利用紅外遙控來進行時間、上、下限溫度等設(shè)置的簡便操作。智能溫控水杯的最終設(shè)計成果如圖11所示;左下角是紅外遙控,其中主要的按鍵“C”是用來進行“選擇”操作,“+”和“-”鍵分別代表對預(yù)設(shè)溫度進行“加和減”的操作。
圖10 水溫未超上限的調(diào)試圖11 最終設(shè)計成果
通過圖8~10可看出,本研究實驗設(shè)計的溫控水杯具有加熱、保溫、提醒等智能特性的優(yōu)勢。
本研究是基于STC89C51單片機為控制核心的溫控智能水杯設(shè)計,主要包括設(shè)計方案的擇優(yōu)和電源、鍵盤接口、報警、水溫檢測等硬件電路的設(shè)計制作及單片
機最小系統(tǒng)、軟件程序設(shè)計等方面的研究,同時還對智能水杯系統(tǒng)進行了一些必要的電路測試。該溫控智能水杯具有如下特點:①可通過紅外遙控實現(xiàn)對水溫的控制,也能通過水杯上的按鈕實現(xiàn)對水溫的控制。②既可預(yù)設(shè)下限溫度又能預(yù)設(shè)上限溫度,溫控智能系統(tǒng)操作簡便,能進一步確保飲水者的身體健康。③能預(yù)約加熱時間,節(jié)能又省時。④溫控智能系統(tǒng)具有防干燒損壞的元器件模塊,以防意外發(fā)生。⑤為以后的智能研究提供一個研究思路和方向。結(jié)果表明:采用單片機控制系統(tǒng)為核心,利用溫度傳感器、和繼電器等電路成功設(shè)計的溫控智能水杯具有多重智能優(yōu)點,能進一步滿足用戶的使用需求,市場前景比較可觀。
[1] 張振榮.MCS-51單片機原理與實用技術(shù)[M].北京:人民郵電出版社,2000.
[2] 沈紅衛(wèi).基于單片機的智能系統(tǒng)設(shè)計與實現(xiàn)[M].北京:電子工業(yè)出版社,2005.
[3] 苗鳳娟,王 喆,陶佰睿,等.基于微生物培養(yǎng)的高精度低成本溫控儀研制[J].實驗室研究與探索,2014,33(5):49-52.
[4] 李建事,陳 剛.家用電器單片機控制系統(tǒng)的制作與檢修[M].上海:上海交通大學(xué)出版社,1998.
[5] 侯衛(wèi)周,蔣俊華.基于單片機系統(tǒng)的手機藍牙智能鎖設(shè)計[J].測控技術(shù),2016,35(6):132-136,140.
[6] 夏繼強.單片機實驗與實踐教程[M].北京:北京航空航天大學(xué)出版社,2001.
[7] 黃仕凰,劉 政.基于單片機的室內(nèi)環(huán)境控制系統(tǒng)[J].實驗室研究與探索,2012,31(6):86-88,95.
[8] 周文華.基于單片機的空調(diào)節(jié)能插座的設(shè)計與實現(xiàn)[J].電子世界,2016,31(6):98-101.
[9] 陳忠平,高金定.基于ATmega16與DS18B20的智能溫控系統(tǒng)的設(shè)計[J].現(xiàn)代電子技術(shù),2011,34(4):175-177.
[10] 方 赟,虎恩典,薛永風(fēng).基于模糊PID和單片機的溫度控制系統(tǒng)設(shè)計[J].電氣技術(shù)與自動化,2011,52(2):149-151.
[11] 楊 寧.單片機與控制技術(shù)[M].北京:北京航空航天大學(xué)出版社,2005.
[12] 馬忠梅,劉 濱,戚 軍,等.單片機C語言Windows環(huán)境編程寶典[M].北京:北京航空航天大學(xué)出版社,2003.
Design of an Intelligent Cup Controlled by Microcontroller System
HOUWeizhou,GUYuzong
(School of Physics and Electronics, Henan University, Kaifeng 475004, Henan, China)
In order to meet the needs of users, an intelligent cup was designed to have multiple functions such as measuring temperature, heat preservation and temperature alarm. The STC89C51 microcontroller was selected as the core, the keyboard display and interface, and DS18B20 temperature sensor and alarm etc other hardware circuit were innovative designed. Using Visual C++6.0 as development tool and programming, the interface circuit realized successfully communication between microcontroller and LCD1602. Additionally, users could flexibly operate the heating and timing by infrared remote control. The design results showed that the intelligent cup has multiple intelligence advantages, it can make up for the defects for traditional cups, greatly meet the needs for users.
microcontroller system; temperature control; intelligent drinking cup
2016-07-26
國家自然科學(xué)基金項目(21173068);2015年河南省省級教學(xué)團隊資助項目
侯衛(wèi)周(1973-),男,山西永濟人,副教授,現(xiàn)主要從事電子線路設(shè)計與研究、電子電路仿真研究。
Tel.: 13569509212;E-mail: hwz204@163.com
TN 99
A
1006-7167(2017)03-0070-05