王昊
(南京理工大學泰州科技學院 電子電氣工程系,江蘇 泰州 225300)
隨著生活節奏的加快,人們將時間更多的用于工作,更加疲于家務勞動,特別是面對每次餐后堆積的碗具,感到清洗起來既臟又浪費時間。洗碗機作為一種家庭自動化設備,避免了人工洗碗的煩惱,節約了時間,將人們從繁雜的家務勞動中逐步解放出來[1]。本文設計了一種洗碗機自動控制系統,在單片機控制下,可控制電磁閥、加熱電阻絲、清洗電動機、紫外線消毒器等強電電路,實現洗滌溫度與洗滌時間設置,自動進水與排水,自動添加洗滌劑,故障信息顯示及報警等功能。
洗碗機自動控制系統的總體設計框圖如圖1所示。系統以單片機AT89C52為控制核心,包含水溫檢測電路、水位檢測電路、門控電路、鍵盤電路、蜂鳴器、液晶顯示電路及強電驅動電路等部件。其中,水溫檢測電路結合溫度設置,采集水溫信息,控制電阻絲加熱;水位檢測電路進行最高水位和最低水位判斷,控制進水電磁閥和排水電磁閥開關;門控電路判斷洗碗機門是否關閉;鍵盤電路設置洗滌水溫及洗滌時間。為了實時顯示洗碗機工作狀態及可能出現的故障信息,系統中添加液晶顯示電路和蜂鳴器,方便用戶知道洗碗機工作模式和工作狀態,便于故障排查。強電驅動電路作為單片機與外部器件的接口電路,驅動電磁閥、電阻絲、電動機及紫外線消毒器工作。

圖1 系統總體框圖Fig.1 Structure diagram of the system
系統主體硬件電路設計包括水溫檢測電路、水位檢測電路、液晶顯示電路及強電驅動電路。
DS18B20是達拉斯半導體公司生產的1-Wire器件,即單總線器件,其將地址線、數據線和控制線合為1根信號線,具有成本低、節省I/O口、抗干擾能力強等優點。同時,與傳統的PT100、AD590等模擬溫度傳感器相比,DS18B20直接將被測溫度轉化成串行數字信號供單片機處理,省去了專用的模數轉換芯片。為了防水耐腐,本系統采用DS18B20防水型封裝,即DS18B20溫度傳感器外圍加入不銹鋼管進行灌膠密封。DS18B20與AT89C52連接電路如圖2所示。

圖2 水溫檢測電路Fig.2 Water temperature detection circuit
本系統只使用單片DS18B20,且不存在遠程溫度測量的考慮,所以為了簡便起見,DS18B20采用外部供電的方式,其VCC端直接接電源,I/O數據端與單片機P2.7相連,R1為上拉電阻。DS18B20通過片上溫度測量的技術來測量溫度,其分辨率可編程設置為9~12位,實現高精度測溫[2]。本系統采用出廠默認配置為12位分辨率,可分辨溫度為0.062 5°C,最多可在750 ms內把溫度轉換為數字。
AT89C52與DS18B20通信,必須符合1-Wire總線的協議要求,否則無法讀取測量結果,因此需要完成下述3個步驟:初始化DS18B20、ROM操作命令和DS18B20存儲器操作命令[3]。當DS18B20上電后,對其進行初始化,向AT89C52發送響應的應答脈沖,表明工作準備就緒。AT89C52通過拉低總線電平,產生復位脈沖,然后釋放總線,進入接收模式。當總線釋放后,上拉電阻將總線電平拉高。DS18B20檢測到上升沿后,延時后拉低總線,產生應答信號。ROM操作命令分為讀ROM、匹配ROM、跳過ROM、搜索ROM、報警搜索等。因本系統只使用單片DS18B20,所以只需寫入‘CCH’代碼,直接進入運行內存操作命令。DS18B20存儲器操作命令,發送溫度轉換命令 ‘44H’,將讀出的溫度存儲在8位寄存器TH和TL中,完成溫度轉換[4]。
為實現洗碗機自動進水、自動排水的功能,本系統采用兩個光電水位傳感器進行水位監測。光電水位傳感器外部罩有菱鏡,內置高強度紅外發射二極管和高靈敏度光敏晶體管,無機械運動部件,不存在最低水位限制。同時,與現有的浮子式水位開關相比,光電水位傳感器還具有體積小,結構緊湊,便于安裝,水位控制精度高等優點,其與AT89C52連接電路如圖3所示。

圖3 水位檢測電路Fig.3 Water level detection circuit
圖3中TX1,TX2同為光電水位傳感器,一上一下安裝,分別用來判別最高水位和最低水位。TX1和TX2為四端口器件,1和3端口內部接有高靈敏度光敏晶體管,2和4端口內部接有高強度紅外發射二極管。TX1和TX2端口1外接電源,端口2通過上拉電阻外接電源,端口3輸出經過電阻分壓各自加到NPN晶體管Q1、Q2柵極,端口4外接地。Q1、Q2漏極分別接到AT89C52的 P2.0口和P2.1口。二極管D1、D2為進水、排水指示燈。電路工作原理為:當洗碗機進水水位未達到最高水位時,TX1未接觸水,其紅外發射二極管發出的光線通過菱鏡面反射到達光敏晶體管,光敏晶體管導通,端口3輸出電平為高,Q1導通,P2.0口為低電平,開啟進水電磁閥,自動進水,進水指示燈D1亮;當洗碗機進水水位達到最高水位時,TX1沒入水中,其紅外發射二極管發出的光線通過水折射,未能到達光敏晶體管,導致P2.0口變為高電平,從而關閉進水電磁閥,停止進水。同理,洗碗機自動排水時,TX2內部光敏晶體管導通,P2.1為低電平,開啟排水電磁閥,自動排水;當排水排盡時,TX2內部光敏晶體管截止,P2.1變為高電平,關閉排水電磁閥。
本系統采用QC12864B漢字圖形點陣液晶顯示模塊,實時顯示洗碗機工作狀態,水溫,洗滌時間及故障信息。QC12864B液晶顯示屏為128×64點陣,可顯示4行,每行8個漢字。因其內置ST7920芯片,自帶字庫,所以無需提取字模。QC12864B液晶顯示模塊與AT89C52連接電路圖如圖4所示。QC12864B的GND、VCC端分別接地、電源;V0端通過可變電阻接地,調節液晶顯示對比度;D0至D7端與AT89C52的P0口相連,作為指令與顯示數據的總線通道;RS、R/W、E端與AT89C52與P2.5、P2.6、P2.7相連,構成液晶顯示控制信號的通道[5]。因本系統只使用液晶并行數據傳輸功能,所以將QC12864B的PSB端接電源。當洗碗機工作時,AT89C52的P2.4口輸出為低電平,將背光電源正極LA+拉高,點亮液晶;當洗碗機停止工作時,P2.4口輸出為高電平,將LA+拉低,關閉液晶,從而達到節約能耗的目的。

圖4 液晶顯示電路Fig.4 LCD circuit
AT89C52輸出采用繼電器驅動進水電磁閥、排水電磁閥、加料電磁閥、加熱電阻絲、清洗電動機與紫外消毒器等220 V器件。本系統為了減輕外部強電電路對AT89C52輸出的影響,增加了光耦隔離電路。因外部各器件強電驅動電路相同,文中僅給出進水電磁閥強電驅動電路,如圖5所示。圖5中U2為光耦,實物采用TPL52-1線性光耦,K1為12 V繼電器。當AT89C52的P1.0口輸出為低電平時,U1的3腳輸出高電平,NPN晶體管Q4導通,繼電器銜鐵吸合,驅動外部器件工作;當AT89C52的P1.0口輸出為高電平時,U1的3腳輸出高電平,Q4截止,繼電器銜鐵分離,關斷外部器件。為了消耗繼電器線圈斷電瞬間產生的反向電動勢,在繼電器線圈兩端反向并聯二極管D3[6],同時Q4還具有提升驅動電流的作用。
本系統按洗碗機工作過程可分為6個階段:進水過程、加溫過程、注入洗滌劑過程、電動機清洗過程、排水過程和紫外線消毒過程。同時為確保洗碗機正常工作,對容易出故障的過程,系統還設置了故障報警功能。系統軟件按照洗碗機的工作流程進行編寫,整體流程圖如圖6所示。

圖5 強電驅動電路Fig.5 Strong electric drive circuit

圖6 主程序流程圖Fig.6 Flow chart of main program
首先接通電源,洗碗機開機自檢,若狀態正常,將碗放入清洗室,門控電路關閉;通過鍵盤電路設置洗滌水溫及洗滌時間,若超過1分鐘鍵盤電路未動作,自動關閉電源;設置完畢,按啟動鍵,洗碗機打開進水電磁閥進水,通過水位檢測模塊判斷是否水進滿,若水進滿,關閉進水電磁閥,打開加料電磁閥,加入洗滌劑;根據溫度設置,判斷是否進行加熱操作,同時清洗電動機工作;洗滌時間結束,關閉清洗電動機,打開排水電磁閥,排水,通過水位檢測電路判斷是否水排盡,若水排盡,打開紫外線消毒器消毒;消毒完成,蜂鳴器鳴叫,表明洗滌完成,1分鐘后自動關閉電源。洗滌中的每個過程、洗滌溫度和洗滌剩余時間都可實時通過液晶顯示電路顯示出來。同時工作故障也可通過液晶顯示,并通過蜂鳴器報警。
該控制系統目前已經調試成功,可通過強電驅動電路控制外部電磁閥、加熱電阻絲、電動機及紫外線清洗器,實現洗碗機所要求的功能,且能夠通過液晶實時顯示工作狀態及故障信息,具有結構簡單、人機界面友好等優點。今后,擬引入濁度傳感器,對判斷洗滌是否真正干凈做繼續深入的研究。
[1]趙建東,康樂.自動洗碗機的控制系統設計[J].國外電子元器件,2004(8):4-6.ZHAO Jian-dong,KANG Le.The design of automatic washer controller[J].International Electronic Elements,2004(8):4-6.
[2]張越,張炎,趙延軍.基于DS18B20溫度傳感器的數字溫度計[J].微電子學,2007,37(5):709-710.ZHANG Yue,ZHANG Yan,ZHAO Yan-jun.Digtial temperature measurement system based on DS18B20[J].Microelectronics,2007,37(5):709-710.
[3]鄭峰,王巧芝,陳繪兵,等.51單片機應用系統典型模塊開發大全[M].北京:中國鐵道出版社,2010.
[4]張愛平,李金城.基于DS18B20的智能溫度控制器[J].北華航天工業學院學報,2007,17(5):1-15.ZHANG Ai-ping,LIN Jin-cheng.Intelligence temperature controllers based on DS18B20[J].Journal of North China Institute of Aerospace Engineering,2007,17(5):1-15.
[5]舒鑫,郭其一.ST7920點陣式液晶顯示模塊的應用研究和編程[J].液晶與顯示,2007(2):192-196.SHU Xin,GUO Qi-yi.Application research and programming of dot-matrix LCM with ST7920 controller[J].Chinese Journal of Liquid Crystals and Displays,2007(2):192-196.
[6]郭天祥.新概念51單片機C語言教程:入門、提高、開發、拓展全攻略[M].北京:電子工業出版社,2009.