洗碗機(jī)是一種自動(dòng)清洗餐具的廚房設(shè)備,它的出現(xiàn)減輕了炊事員及家庭“煮夫”的勞動(dòng)強(qiáng)度,并且提高了相應(yīng)地工作效率。目前,洗碗機(jī)在歐美已經(jīng)廣泛用于普通家庭中。有數(shù)據(jù)統(tǒng)計(jì),在歐美主要國家,洗碗機(jī)的普及率已達(dá)到70%以上,幾乎是家家戶戶必備的廚房生活電器,由于洗碗機(jī)在中國的發(fā)展時(shí)間較短,家庭普及率很低。隨著科技和時(shí)代的進(jìn)步,人們追求生活的便利性也在增長,洗碗機(jī)必然受到當(dāng)代青年的追求。
1、系統(tǒng)設(shè)計(jì)
本設(shè)計(jì)是一種基于單片機(jī)去實(shí)現(xiàn)自動(dòng)洗碗機(jī)的功能,實(shí)現(xiàn)一鍵操作整個(gè)過程。本設(shè)計(jì)的洗碗機(jī)主要過程包括自動(dòng)進(jìn)水、循環(huán)洗碗、自動(dòng)出水的功能,并能實(shí)時(shí)地顯示出當(dāng)前剩余的時(shí)間;另外,為了更好地實(shí)現(xiàn)生活的便利性,該系統(tǒng)還設(shè)計(jì)了對碗筷等進(jìn)行紫外光消毒、風(fēng)干等功能。為了實(shí)現(xiàn)各部分的功能,本設(shè)計(jì)主要采用單片機(jī)的定時(shí)/計(jì)數(shù)器的功能去控制時(shí)間變量。通過對時(shí)間變量的比較,達(dá)到控制洗碗機(jī)按照自動(dòng)進(jìn)水、自動(dòng)循環(huán)攪動(dòng)、自動(dòng)出水、風(fēng)干、消毒等程序順序執(zhí)行,從而實(shí)現(xiàn)一鍵啟動(dòng)洗碗機(jī)的簡單操作流程。洗碗機(jī)整體設(shè)計(jì)框圖如圖1所示。
圖1 洗碗機(jī)整體設(shè)計(jì)框圖
2、硬件設(shè)計(jì)
2.1、單片機(jī)小系統(tǒng)設(shè)計(jì)
本設(shè)計(jì)采用STC89C52單片機(jī)作為核心處理器。STC89C52是一種帶8K系統(tǒng)可編程Flash存儲(chǔ)器的低功耗、高性能CMOS8位微處理器。它是增強(qiáng)型的8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051單片機(jī),用戶可應(yīng)用的程序空間為8K字節(jié),片上集成了512字節(jié)RAM,具有EEPROM功能以及看門狗功能。除此之外,還具有3個(gè)16位定時(shí)器/計(jì)數(shù)器。在編程上,其ISP/IAP無需專用編程器以及專用的仿真器,直接可以通過串口線下載程序。單片機(jī)的時(shí)鐘電路通常采用內(nèi)部時(shí)鐘電路,利用石英晶體和電容組成的并聯(lián)諧振回路。晶振的負(fù)載電容
式中的Cd,Cg分別為接在晶振的兩個(gè)引腳上和對地的電容,而Cic+c的經(jīng)驗(yàn)值是3-5pf,電容的大小可以起到頻率微調(diào)的作用。通常晶振在11.592MHZ的時(shí)候,所匹配的電容為22p。復(fù)位電路能使單片機(jī)在出錯(cuò)后,能夠使個(gè)寄存器的值變回初始狀態(tài)的操作。在時(shí)鐘電路工作后,復(fù)位引腳上出現(xiàn)持續(xù)的2個(gè)機(jī)器周期的高電平就能完成復(fù)位操作。為了便于操作,通常采用開關(guān)復(fù)位的模式,按鍵按下的時(shí)候,電容C短路,RST出現(xiàn)高電平。如果時(shí)間超過復(fù)位的時(shí)間,即可完成復(fù)位操作。當(dāng)按鍵彈起后,由于電容(隔直通交)的作用,使得RESET引腳出現(xiàn)低電平,即可使單片機(jī)恢復(fù)正常運(yùn)行。其電阻R與電容C的大小的選擇,只要其時(shí)間常數(shù)τ=RC的值大于2個(gè)機(jī)器周期即可。STC89C52的EA/VPP引腳控制著程序訪問的地方,當(dāng)EA=1時(shí),CPU從片內(nèi)ROM讀取指令;EA=0時(shí),CPU從片外ROM讀取指令。由于片內(nèi)ROM能滿足本設(shè)計(jì)的存儲(chǔ)大小,故本設(shè)計(jì)的引腳設(shè)置為高電平。STC89C52單片機(jī)可通過IAP模式進(jìn)行程序下載,即通過串口接受需要燒錄的程序代碼,然后進(jìn)行“自編程”完成燒錄。因此電路設(shè)計(jì)上預(yù)留RXD、TXD的接口連接RS232轉(zhuǎn)TTL的模塊上來完成燒錄的功能。單片小系統(tǒng)電路圖如圖2所示。
圖2 ?單片機(jī)小系統(tǒng)電路圖
2.2、數(shù)碼管顯示電路設(shè)計(jì)
本設(shè)計(jì)采用的數(shù)碼管是兩位一體的共陽型八段數(shù)碼管,其引腳分別控制數(shù)碼管的位碼和數(shù)碼管的段碼。通過單片機(jī)對每位碼及段碼進(jìn)行編碼,即可完成相應(yīng)地位上顯示數(shù)字0~9。為了保證數(shù)碼管的驅(qū)動(dòng)電流,設(shè)計(jì)時(shí)在其段碼引腳加上74HC573鎖存器進(jìn)行數(shù)據(jù)鎖存,在其位碼上加上8550三極管進(jìn)行信號放大。數(shù)碼管電路設(shè)計(jì)圖如圖3所示。
圖3 數(shù)碼管電路設(shè)計(jì)圖
3、軟件設(shè)計(jì)
本設(shè)計(jì)需要實(shí)現(xiàn)按鍵一鍵啟動(dòng)洗碗的過程,其中包括自動(dòng)進(jìn)水、循環(huán)流動(dòng)、自動(dòng)出水且能夠循環(huán)執(zhí)行三次,并通過數(shù)碼管顯示當(dāng)前的剩余時(shí)間。程序主要通過單片機(jī)的定時(shí)器/計(jì)數(shù)器功能來完成設(shè)計(jì)的目的,定時(shí)器/計(jì)數(shù)器的功能能實(shí)現(xiàn)時(shí)間的精確定時(shí),每次進(jìn)入中斷服務(wù)函數(shù)后變量計(jì)數(shù)值自增,多次控制相應(yīng)的數(shù)值增量次數(shù),即可完成任意時(shí)間的定時(shí)功能。程序上比較當(dāng)前的全局變量的值,去實(shí)現(xiàn)不同的時(shí)間段完成相應(yīng)的自動(dòng)進(jìn)水、循環(huán)流動(dòng)、自動(dòng)出水的功能,且實(shí)時(shí)地顯示當(dāng)前剩余時(shí)間。程序流程圖如圖4所示。
圖4 程序流程圖
3.1、定時(shí)器/計(jì)數(shù)器程序控制
本設(shè)計(jì)的程序軟件主要是依靠單片機(jī)的定時(shí)器/計(jì)數(shù)器的功能去實(shí)現(xiàn)功能的要求。單片機(jī)定時(shí)器/計(jì)數(shù)器在對固定時(shí)間間隔的內(nèi)部機(jī)器周期計(jì)數(shù)時(shí),作為定時(shí)器功能;在對外部事件進(jìn)行計(jì)數(shù)時(shí),作為計(jì)數(shù)器功能,本設(shè)計(jì)采用的是其對固定時(shí)間間隔的內(nèi)部機(jī)器周期計(jì)數(shù)的定時(shí)器功能。定時(shí)器/計(jì)數(shù)器的方式寄存器TMOD和控制寄存器TCON的位控制決定了打開的定時(shí)器以及相應(yīng)的功能設(shè)置;THx,TLx八位計(jì)數(shù)器構(gòu)成了十六位的加法計(jì)數(shù)器,當(dāng)加法計(jì)數(shù)器的初值被設(shè)置,用指令改變TMOD和TCON后,即可在下一個(gè)機(jī)器周期按照設(shè)定的方式自動(dòng)運(yùn)行。加法計(jì)數(shù)器在計(jì)滿溢出后才申請中斷,因此在對其賦初值時(shí),不能直接賦值所需要的值,而是計(jì)數(shù)器計(jì)數(shù)的最大值與所需賦值的差值作為計(jì)數(shù)器的初值。本設(shè)計(jì)采用的是定時(shí)器T0工作在方式1下的定時(shí)計(jì)數(shù)功能,定時(shí)器T0初始化程序流程圖如圖5所示。
圖5 ?T0初始化程序流程圖
4、結(jié)論
綜上所述,本設(shè)計(jì)研究了一種基本單片機(jī)的自動(dòng)洗碗機(jī)的實(shí)現(xiàn)。研究了實(shí)現(xiàn)自動(dòng)洗碗機(jī)的硬件電路設(shè)計(jì),以及相應(yīng)的程序開發(fā),并設(shè)計(jì)預(yù)留出排風(fēng)扇、紫外燈的電路接口,為實(shí)現(xiàn)自動(dòng)洗碗機(jī)的洗碗、風(fēng)干、消毒等完整的功能提供系統(tǒng)設(shè)計(jì)思路。本設(shè)計(jì)旨在提出自動(dòng)洗碗機(jī)的功能的實(shí)現(xiàn),為研究智能家居提供進(jìn)一步的研究。
評論