白宇航,翟娟,潘往麗,彭泉
(揚州大學(xué)廣陵學(xué)院,江蘇 揚州 225009)
在現(xiàn)代廚房中,普遍使用抽油煙機和天然氣灶。在使用天然氣灶的過程中,將會產(chǎn)生一定量的油煙及有害氣體;而傳統(tǒng)抽油煙機擁有單一的風(fēng)扇轉(zhuǎn)速,增加了能源的消耗以及遇到煤氣泄漏的危險時不能及時發(fā)現(xiàn)并報警。為了減少或防止這些危害,本文設(shè)計一種智能型油煙機。
本次設(shè)計基于51單片機控制的智能油煙機進行設(shè)計[1],改善一些傳統(tǒng)油煙機不足的地方,將部分智能化、自動化的功能加入其中,使其具有自動控制的功能,大大增強其可行性、安全性、舒適節(jié)能、智能化的功能。
本系統(tǒng)的整個框架分為以下三個部分:
(1)檢測部分,包括煙霧檢測、煤氣檢測和按鍵輸入。(2)控制部分,由單片機AT89C51、開關(guān)電路、液晶顯示、自動照明和GSM模塊與聲光報警模塊電路組成。(3)看門狗芯片,用來保證單片機正常工作,并監(jiān)測電源的是否穩(wěn)定以及程序執(zhí)行是否正常。系統(tǒng)原理圖如圖1所示。
煙霧傳感器用來檢測廚房油煙的濃度,系統(tǒng)會根據(jù)室內(nèi)油煙的濃度自動調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速,在廚房的溫度和煙霧高于其設(shè)定閾值的情況下,報警信號開啟,蜂鳴器和排煙風(fēng)扇同時作用,并向用戶手機發(fā)送警報信息,達到即使排煙報警的效果。按鍵用來設(shè)置溫度和煙霧的報警閾值,系統(tǒng)的整個工作信息通過LED1062液晶屏幕顯示出來。
圖1 基于AT89C51 微處理器的系統(tǒng)設(shè)計
單片機最小系統(tǒng)主一般主要由振蕩電路和復(fù)位電路組成,如圖2所示。本系統(tǒng)的AT89C51采用12MHZ的晶體振蕩器作為振蕩源,可以更簡便的計算其機器周期。上電復(fù)位和按鍵復(fù)位組成了復(fù)位電路,單片機的RST引腳上連接一個10μF電容并接5V的電源,另外一邊連接一個10k的電阻到GND就形成了一個RC充放電回路,這就是上電復(fù)位。它保證了單片機在上電時RST腳上有足夠的時間去進行高電平復(fù)位,隨后進入正常工作狀態(tài)。將一個開關(guān)并聯(lián)到10μF電容上就是按鍵復(fù)位。按下開關(guān),形成一個回路,電容開始放電,RST拉到高電平。充電時,RST保持一段時間的高電平從而使單片機進行復(fù)位[2]。
圖2 單片機最小系統(tǒng)
在本設(shè)計中,顯示模塊采用LCD1062液晶屏,如圖3所示,此液晶屏為字符型點陣式液晶顯示器,其內(nèi)部的字符發(fā)生儲存器(CGROM)已經(jīng)儲存了160個不同的點陣字符圖形。LCD1062可以顯示16×2=32個字符,工作電壓在4.5到5.5V的范圍內(nèi),工作電流是2.0mA(5.0V)[4]。
LCD1062液晶屏的8bit數(shù)據(jù)(D0~D7)端口接P0(P0口需接上拉排阻再與液晶相連防止LCD顯示出錯),其中3號引腳為液晶顯示屏的對比調(diào)整端,接到正電源時,對比度最弱,接到地電源,對比度最高,我們通過連接一個可變電阻器來調(diào)節(jié)液晶顯示對比度;4號引腳RS寄存器選擇端;5號引腳RW為讀/寫選擇端;6號引腳為脈沖使能端。如圖4所示。
圖3 LCD1062 實物圖
圖4 LCD1062 連接電路圖
在本設(shè)計里,我們采用結(jié)構(gòu)簡單、電路配置靈活的獨立按鍵。獨立按鍵的每個按鍵都單獨占用一根I/O口線,工作期間與其他的I/O口線互不影響。獨立按鍵在彈性作用的影響下容易出現(xiàn)抖動現(xiàn)象,如果在抖動的過程中檢測出按鍵連接或者斷開,可能導(dǎo)致把一次按下或釋放檢測為多次按下或釋放。為了避免這種情況,可以采取硬件消抖和軟件消抖方法克服這個問題。按鍵接線圖如圖5所示。
圖5 按鍵接線圖
通過查閱相關(guān)資料對比,本系統(tǒng)只需實現(xiàn)短信功能,考慮到成本和實用性,選擇SIM900A。
SIM900A的工作頻段可以有GSM900MHZ和GSM1800MHZ兩種,可以低功耗來實現(xiàn)短信,彩信等數(shù)據(jù)的傳輸。尺寸大小為24x24x3mm,適用于緊湊型產(chǎn)品設(shè)計。 MINI板同時支持RS232串口和TTL串口,支持5~24V的工作范圍。
圖6 SIM900A 模擬連接圖
TXD為發(fā)送數(shù)據(jù)的端口,RXD為接受數(shù)據(jù)的端口,一般情況下,數(shù)據(jù)的收發(fā)需要TXD與RXD相連來實現(xiàn),由于SIM900Amini板設(shè)計電路串口接口時已經(jīng)做成了交叉,所以在這里直接RXD與RXD相接,TXD與TXD相接。VCC的電壓為5V給模塊供電,模塊與單片機的連接圖如圖6所示[5]。
在聲光報警電路中,PNP三極管起到一個開關(guān)的作用,發(fā)射結(jié)正偏,則電路導(dǎo)通,蜂鳴器發(fā)出聲音;發(fā)射結(jié)反偏時,電路不導(dǎo)通,蜂鳴器不會工作。
本設(shè)計一共使用了三個LED指示燈,分別為照明指示燈、溫度報警指示燈、煙霧報警指示燈。所有指示燈均為陽極發(fā)光二極管。聲光報警模塊連接圖如圖7所示。
圖7 聲光報警連接圖
2.5.1 溫度傳感器
本設(shè)計采用一線式溫度傳感器DS18B20,該產(chǎn)品是美國DALLAS公司生產(chǎn)的DS18B20可組網(wǎng)數(shù)字溫度傳感器芯片封裝而成,可以在各種小空間和控制領(lǐng)域里進行數(shù)字測溫。它可以測量-55℃~+125℃的溫度范圍,其固有測溫分辨率為0.5℃。
DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:
(1)64位光刻ROM
(2)溫度傳感器
(3)非揮發(fā)的溫度報警觸發(fā)器TH和TL
(4)配置寄存器。
DS18B20的GND引腳接地,VCC引腳接上拉電阻[8]。如圖8所示。
圖8 DS18B20 圖
2.5.2 煙霧檢測電路
煙霧檢測電路采用對液化氣、丙烷、氫氣的靈敏度較高,對煙霧、乙醇等氣體幾乎不反應(yīng)的MQ-2傳感器。MQ-2與煙霧接觸時,傳感器的電導(dǎo)率會隨著煙霧濃度的增大而增大。MQ-2傳感器輸出的是模擬信號,通過A/D轉(zhuǎn)換器將模擬信號轉(zhuǎn)換為數(shù)字信號,經(jīng)運算處理后送至LCD1062液晶顯示屏內(nèi)顯示出來[8]。煙霧檢測電路如圖9所示。
圖9 煙霧檢測電路圖
2.6風(fēng)扇控制模塊
本模塊要實現(xiàn)油煙機的風(fēng)速控制,風(fēng)速的智能調(diào)節(jié)是本設(shè)計的一個重要模塊。選用ULN2003芯片作為直流電機的驅(qū)動電路,簡單實現(xiàn)可以根據(jù)油煙濃度自動調(diào)節(jié)風(fēng)速的功能。在本設(shè)計中,使用pwm控制技術(shù)進行調(diào)節(jié)和控制,改變pwm信號的占空比,就能改變輸出的平均功率電壓,進而改變風(fēng)扇轉(zhuǎn)速。當(dāng)占空比越高,風(fēng)扇的轉(zhuǎn)速就越快。設(shè)置幾個不同的煙霧濃度值,通過條件語句和定時中斷控制占空比,進而控制風(fēng)扇的轉(zhuǎn)速。風(fēng)扇電路圖如圖10所示。
圖10 風(fēng)速控制電路
該智能油煙機的主體程序如圖11所示,進入主程序后,對系統(tǒng)進行初始化,讀取溫度的上限值,然后進入循環(huán)程序。在循環(huán)程序中,進入傳感器檢測模塊,利用MQ-2和DS18B20傳感器對煙霧濃度和溫度進行檢測,通過A/D轉(zhuǎn)換模塊讀取檢測到的數(shù)值,再將讀取到的數(shù)值送到LCD1602液晶屏上顯示,判斷是否超出濃度、溫度的上限值,如果是,則切斷電源,進行聲光報警,通過發(fā)送短信向用戶告知信息。如果不是,則進入按鍵檢測,如果按鍵被按下,則進行相應(yīng)功能,然后進入風(fēng)扇控制模塊,判斷油煙的等級,根據(jù)不同的等級選擇合適的風(fēng)速。整個循環(huán)程序不斷進行檢測,顯示和判斷,循環(huán)往復(fù)。
串口[9]在工作之前,首先要對其進行初始化,設(shè)置波特率為9600b/s,所以,設(shè)置PCON中的SMOD位為0。然后設(shè)置特殊功能寄存器SCON中SM0為0,SM1為1,即工作方式為方式1,其波特率是可變的。方式1輸入時,用軟件置REN為1,串口就可以接收數(shù)據(jù)。接著系統(tǒng)對輔助寄存器AXUR進行設(shè)置,定時器工作在12T的模式,產(chǎn)生波特率的定時器選擇定時器1。串口初始化流程圖如圖12所示。
定時器[1]初值的計算,根據(jù)公式:
方式1的波特率=(2SMID/32)×(T1溢出率)
得出:TH1=253,轉(zhuǎn)化為16進制為TH1=0XFD。
圖11 主程序流程圖
圖12 串口初始化流程圖
GSM模塊向用戶發(fā)送短信告知報警信號,通過查閱相關(guān)資料獲得發(fā)送短信的過程,如圖13所示。
圖13 發(fā)送短信流程圖
本設(shè)計使用Keil C51軟件進行相關(guān)模塊的編程,將編好的程序生成hex文件,在Proteus里畫出系統(tǒng)的原理圖后,導(dǎo)入已編好的程序,進行仿真和調(diào)試,確定各模塊的各項功能是否能正常實現(xiàn)。
預(yù)期的功能:檢測模塊將檢測出來的溫度、煙霧濃度通過A/D轉(zhuǎn)換,將其模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號顯示在LCD1062液晶顯示屏上,與其上下限對比確定風(fēng)扇的風(fēng)速以及是否啟動聲光報警電路,向用戶發(fā)送報警信息。實物圖如圖14所示。
本設(shè)計的智能油煙機以AT89C51為基礎(chǔ),根據(jù)傳統(tǒng)油煙機高耗能、噪音大、對油煙感知能力低等的問題,確定將整個系統(tǒng)分為各個模塊,如:油煙、煤氣檢測模塊,GSM模塊,聲光報警模塊,LED顯示模塊,風(fēng)速控制模塊等,逐個解決其弱點,并優(yōu)化一些功能,再通過軟件編程仿真調(diào)試,證實在理論上的可行性,實現(xiàn)我們預(yù)期的功能。
圖14 實物成品圖