0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于AT89LS8252單片機(jī)和ULN2803芯片實(shí)現(xiàn)洗碗機(jī)控制系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì)工程 ? 作者:趙建東,康樂 ? 2020-04-21 07:30 ? 次閱讀

1、引言

隨著數(shù)字信息家用電器應(yīng)用的普及,洗碗機(jī)已經(jīng)廣泛進(jìn)入人民大眾的家庭之中,從而使得人們能夠從繁雜的家務(wù)勞動(dòng)中逐步解放出來。作為一種家庭自動(dòng)化設(shè)備,洗碗機(jī)一般需要實(shí)現(xiàn)諸如自動(dòng)控制進(jìn)水、自動(dòng)加洗滌劑、冷洗、自動(dòng)加溫洗、清洗、排水、殺菌消毒,以及定時(shí)和故障報(bào)警等功能。從被控制量角度出發(fā),一個(gè)洗碗機(jī)通常需要滿足圖1所示的一些具體要求,其中涉及的開關(guān)量信號(hào)有兩種,一種是傳感器的高、低電平信號(hào)檢測(cè),如機(jī)門開關(guān)、水位高低、溫度調(diào)節(jié)保護(hù)器和行程開關(guān)等;另一種開關(guān)信號(hào)經(jīng)由固態(tài)繼電器控制強(qiáng)弱電壓信號(hào)的斷開和加載,如進(jìn)水電磁閥門的開合、恒溫加熱器的開合、瞬間加熱器的開合、清潔劑控制盒和消毒劑控制盒的工作等。圖1中所涉及的模擬量信號(hào)主要用于實(shí)現(xiàn)以下幾方面的功能:

(1)用溫度傳感器實(shí)現(xiàn)水溫/消毒水溫度檢測(cè);

(2)通過人機(jī)接口的顯示輸出、鍵盤輸入和聲音輸出等實(shí)現(xiàn)水溫顯示、洗滌過程顯示以及故障類型顯示等;

(3)根據(jù)用戶需要通過設(shè)置鍵選擇洗滌模式,并通過功能鍵啟動(dòng)相關(guān)功能;

(4)機(jī)器使用情況統(tǒng)計(jì)、清潔劑和消毒劑劑量的使用情況計(jì)數(shù)等;

(5)故障報(bào)警以及、洗滌完成報(bào)告等。

基于AT89LS8252單片機(jī)和ULN2803芯片實(shí)現(xiàn)洗碗機(jī)控制系統(tǒng)的設(shè)計(jì)

2、洗碗機(jī)控制系統(tǒng)的硬件設(shè)計(jì)

針對(duì)上述功能及可靠性、成本和方便使用維護(hù)等因素,設(shè)計(jì)了圖2所示的洗碗機(jī)控制系統(tǒng)。

單片機(jī)最小系統(tǒng)采用與MCS-51兼容的AT-MEL公司低功耗高性能CMOS芯片AT89LS8252設(shè)計(jì),其中片內(nèi)8k字節(jié)在線可編程閃存用以存放系統(tǒng)程序,可通過SPI接口下載程序;而2k字節(jié)的EEPROM則用以存放關(guān)鍵參數(shù),如開機(jī)維護(hù)密碼、產(chǎn)品的序列號(hào)、開機(jī)次數(shù)、洗滌設(shè)置參數(shù)等;256字節(jié)的RAM用來存放臨時(shí)變量。

鑒于本洗碗機(jī)有較多的開關(guān)量信號(hào),故此,設(shè)計(jì)中使用并行芯片8255來擴(kuò)展I/O接口,以配合P1和P3口部分管腳的使用,其輸出和輸入的比例為21/14,其中蜂鳴器由P1.3控制。從可靠性角度出發(fā),輸入和輸出部分都采用光電隔離措施。考慮到部分驅(qū)動(dòng)信號(hào)所要求的驅(qū)動(dòng)電流較大,因此,本設(shè)計(jì)選用功率驅(qū)動(dòng)器件ULN2803來驅(qū)動(dòng)。

溫度采集有兩種方案:一是使用熱敏電阻配合芯片MAX150進(jìn)行AD轉(zhuǎn)換,然后通過存放在程序存儲(chǔ)器里的表格來求得當(dāng)前溫度;二是使用三端溫度傳感器DS18B20進(jìn)行采集,直接得到溫度數(shù)據(jù)。相比之下,后一種方案較為經(jīng)濟(jì)簡(jiǎn)捷。

鍵盤和LED顯示選用HD7279A?3?來進(jìn)行控制,其電路圖如圖3所示。HD7279A無需外圍元件即可直接驅(qū)動(dòng)8位共陰式LED數(shù)碼管;引腳DIG0~3對(duì)應(yīng)0~3位數(shù)字輸出驅(qū)動(dòng);引腳SA~SG和DP則對(duì)應(yīng)于段a~g及小數(shù)點(diǎn)的驅(qū)動(dòng)輸出;各位可獨(dú)立控制譯碼/不譯碼及消隱和閃爍等屬性。

該芯片共有三種類型的指令:第一種是6條不帶數(shù)據(jù)的8位純指令,如復(fù)位、測(cè)試、左/右(循環(huán))移位等;第二種是7條16位帶數(shù)據(jù)指令,包括下載數(shù)據(jù)按方式0/1譯碼、下載不譯碼、閃爍、消隱、段點(diǎn)亮、關(guān)閉等;第三種是讀取鍵盤數(shù)據(jù)指令。它們均采用串行方式與AT89LS8252進(jìn)行通訊,串行數(shù)據(jù)從DATA引腳送入芯片并由CLK端同步。當(dāng)片選信號(hào)CS變?yōu)榈碗娖胶?,DATA引腳上的數(shù)據(jù)將在CLK引腳的上升沿時(shí)被寫入HD7279A的緩沖寄存器。

此外,HD7279A片內(nèi)含有去抖動(dòng)電路,可控制64鍵鍵盤矩陣。圖3中,元件JKEY為4×4鍵盤接口,當(dāng)有鍵按下時(shí),KEY引腳輸出低電平,發(fā)光二極管LED1發(fā)亮,該狀態(tài)一直保持到按鍵松開。此時(shí)如果接收到“讀鍵盤”指令15H,在指令前半段,DATA引腳將處于高阻狀態(tài)以接受來自微處理器的指令。而在指令后半段,DATA引腳則從輸入狀態(tài)轉(zhuǎn)為輸出狀態(tài),用以輸出所按下的鍵代碼值。

3、洗碗機(jī)控制系統(tǒng)的軟件設(shè)計(jì)

本系統(tǒng)功能模塊按洗碗過程可分為六個(gè)階段:進(jìn)水過程、加溫過程、注入清潔劑過程、控制電機(jī)旋轉(zhuǎn)清洗過程、注入消毒水消毒過程和排水過程。同時(shí)為確保洗碗機(jī)正常工作,對(duì)容易出故障的過程,系統(tǒng)還設(shè)置了故障報(bào)警或停機(jī)功能。系統(tǒng)軟件可按照洗碗機(jī)的工作流程進(jìn)行編寫。主要的軟件模塊有開機(jī)自檢、狀態(tài)初始化、顯示當(dāng)前默認(rèn)狀態(tài),進(jìn)入鍵盤掃描狀態(tài)并等待操作鍵按下,以及根據(jù)操作鍵轉(zhuǎn)入相應(yīng)流程等,其主程序流程見圖4所示。

用戶使用前,應(yīng)首先檢查洗碗機(jī)狀態(tài)是否正常,若狀態(tài)正常,按下弱電源開關(guān),根據(jù)洗滌要求設(shè)置洗滌模式(或使用默認(rèn)方式),將碗放入清洗室,然后關(guān)上機(jī)門,按下開始鍵。之后,控制器檢測(cè)水位高低和水溫,以決定是否進(jìn)水與恒溫加熱,至此準(zhǔn)備工作完成,啟動(dòng)電機(jī)進(jìn)行清洗。接下來再把清潔劑注入清洗室,同時(shí)檢測(cè)水位高低,若水位較低,則立即進(jìn)水,以保證清洗效果。清洗完成后,等碗上的水空一段時(shí)間后,洗碗機(jī)再注入高溫消毒水進(jìn)行消毒。洗滌完成后,蜂鳴器鳴叫,表明洗滌完成,同時(shí)控制器回到用戶初始設(shè)置模式。洗滌中每一過程和按鍵均對(duì)應(yīng)有一發(fā)光二極管的亮滅,用以顯示過程和按鍵的正常與否。洗滌完成后,用戶打開機(jī)門,取出碗盤,然后斷電即可結(jié)束整個(gè)洗碗過程。

在該系統(tǒng)軟件子程序中,需要對(duì)鍵盤/顯示管理模塊進(jìn)行說明,包括初始化子程序、發(fā)送子程序、接收子程序、中斷子程序、顯示子程序等。其中用戶通過鍵盤設(shè)置模塊可以設(shè)定洗滌模式、每一過程的時(shí)間長短以及洗滌劑量大小,也可隨時(shí)按相應(yīng)的功能鍵暫?;蛑兄瓜礈爝^程。技術(shù)維護(hù)人員可以通過鍵盤/顯示管理模塊輸入正確密碼來查詢機(jī)器的使用狀況,如機(jī)器序列號(hào)、機(jī)器的使用次數(shù)等,也可對(duì)關(guān)鍵參數(shù)根據(jù)實(shí)際情況進(jìn)行設(shè)置。

故障報(bào)警功能模塊可在工作電壓故障、進(jìn)水閥故障、加熱器故障、電機(jī)故障、清潔劑注入故障以及高溫消毒水注入故障發(fā)生時(shí)用蜂鳴器報(bào)警,同時(shí)斷掉強(qiáng)電控制信號(hào),以確保系統(tǒng)安全。

4、結(jié)論

控制系統(tǒng)目前已經(jīng)調(diào)試成功,試驗(yàn)性能良好,可實(shí)現(xiàn)本自動(dòng)洗碗機(jī)所要求的功能,而且簡(jiǎn)捷實(shí)用。但還有需要完善提高的地方,如排水需要人工干預(yù)、人機(jī)接口可考慮選用效果更好的字符或圖形LCD、系統(tǒng)集成度有待提高等。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6030

    文章

    44499

    瀏覽量

    632166
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6517

    瀏覽量

    110391
  • lcd
    lcd
    +關(guān)注

    關(guān)注

    34

    文章

    4407

    瀏覽量

    166950
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    ULN2803驅(qū)動(dòng)步進(jìn)電機(jī)的問題

    本帖最后由 eehome 于 2013-1-5 10:07 編輯 想用ULN2803驅(qū)動(dòng)步進(jìn)電機(jī).2803common口接15v直流電壓,單片機(jī)輸出和2803輸入直接相連。
    發(fā)表于 08-19 13:07

    關(guān)于ULN2803使用疑惑,希望幫助??!

    最近做一個(gè)數(shù)碼管的驅(qū)動(dòng)電路,用4線16線譯碼器74HC154接2個(gè)ULN2803驅(qū)動(dòng)16位的共陽數(shù)碼管位選,百度上看到ULN2803ULN2003一樣具有反向功能,也有驅(qū)動(dòng)能力,但也有的說
    發(fā)表于 11-16 22:36

    關(guān)于uln2803

    為什么我的光立方會(huì)出現(xiàn)以下情況:我用的51片機(jī),給P1.0口輸出高電平,然后接到ULN2803的某個(gè)輸入端,理論上2803的輸出端應(yīng)該是低電平,但是單片機(jī)的IO口卻被拉低,P1.0口電
    發(fā)表于 04-20 21:21

    uln2803驅(qū)動(dòng)

    ULN2803驅(qū)動(dòng)5v直流電機(jī),uln2803發(fā)燙是怎么回事?
    發(fā)表于 05-11 09:31

    請(qǐng)問ULN2803會(huì)影響IO輸出電壓?jiǎn)幔?/a>

    單片機(jī)開機(jī)IO口默認(rèn)為高電平,但是我用電壓表測(cè)量,IO口的電壓只有0.2V,IO口與ULN2803連接,難道ULN2803還影響IO輸出電壓?
    發(fā)表于 04-04 06:35

    ULN2803驅(qū)動(dòng)步進(jìn)電機(jī)

    uln2803則是解決驅(qū)動(dòng)問題,單片機(jī)達(dá)不到驅(qū)動(dòng)電流,使用也很方便,1—8引腳是輸入,9接地,10接VCC,11到18輸出,輸入高電平,輸出低電平,輸出高,則無法驅(qū)動(dòng)電機(jī),這里的電機(jī)正極接電源,負(fù)極
    發(fā)表于 08-31 09:26

    怎樣去設(shè)計(jì)一個(gè)基于單片機(jī)洗碗機(jī)控制

    設(shè)計(jì)簡(jiǎn)介:本設(shè)計(jì)是基于單片機(jī)洗碗機(jī)控制器,主要實(shí)現(xiàn)以下功能:LCD1602顯示溫度、溫度最大值以及狀態(tài)按鍵設(shè)置溫度最大值洗碗過程:進(jìn)水--
    發(fā)表于 11-19 08:00

    基于AT89C52的洗碗機(jī)自動(dòng)控制系統(tǒng)設(shè)計(jì)

    基于洗碗機(jī)的功能要求,設(shè)計(jì)了以AT89C52為控制核心的洗碗機(jī)自動(dòng)控制系統(tǒng)。該系統(tǒng)包括水溫檢測(cè)、
    發(fā)表于 11-09 15:03 ?105次下載
    基于AT<b class='flag-5'>89</b>C52的<b class='flag-5'>洗碗機(jī)</b>自動(dòng)<b class='flag-5'>控制系統(tǒng)</b>設(shè)計(jì)

    電子類手冊(cè)uln2803

    電子專業(yè)常用芯片芯片手冊(cè)——電子類手冊(cè)uln2803
    發(fā)表于 07-14 16:20 ?0次下載

    ULN2803

    uln2803
    發(fā)表于 03-15 14:00 ?35次下載

    基于STC89C52的全自動(dòng)洗碗機(jī)的設(shè)計(jì)

    本文主要介紹了基于STC89C52的全自動(dòng)洗碗機(jī)的設(shè)計(jì),本設(shè)計(jì)主要采用單片機(jī)的定時(shí)/計(jì)數(shù)器的功能去控制時(shí)間變量。通過對(duì)時(shí)間變量的比較,達(dá)到控制
    發(fā)表于 12-28 09:43 ?1.4w次閱讀
    基于STC<b class='flag-5'>89</b>C52的全自動(dòng)<b class='flag-5'>洗碗機(jī)</b>的設(shè)計(jì)

    uln2803中文資料匯總(uln2803引腳圖及功能_內(nèi)部結(jié)構(gòu)及應(yīng)用電路)

    本文開始介紹了ULN2803特點(diǎn)和內(nèi)部原理,其次介紹了ULN2803電氣特性和引腳圖及功能,最后介紹了ULN2803封裝以及ULN2803的應(yīng)用電路。
    發(fā)表于 04-10 10:59 ?14.4w次閱讀
    <b class='flag-5'>uln2803</b>中文資料匯總(<b class='flag-5'>uln2803</b>引腳圖及功能_內(nèi)部結(jié)構(gòu)及應(yīng)用電路)

    uln2803引腳圖及功能介紹

    本文開始介紹了uln2803的概念和uln2803引腳圖及功能,其次介紹了ULN2803內(nèi)部原理圖及封裝說明,最后介紹了幾款uln2803的測(cè)試圖。
    發(fā)表于 04-10 14:31 ?10.7w次閱讀
    <b class='flag-5'>uln2803</b>引腳圖及功能介紹

    使用單片機(jī)實(shí)現(xiàn)ULN2803驅(qū)動(dòng)點(diǎn)陣屏仿電梯數(shù)字滾動(dòng)顯示的C語言實(shí)例

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用單片機(jī)實(shí)現(xiàn)ULN2803驅(qū)動(dòng)點(diǎn)陣屏仿電梯數(shù)字滾動(dòng)顯示的C語言實(shí)例免費(fèi)下載。
    發(fā)表于 03-31 16:45 ?37次下載

    基于單片機(jī)洗碗機(jī)控制

    設(shè)計(jì)簡(jiǎn)介:本設(shè)計(jì)是基于單片機(jī)洗碗機(jī)控制器,主要實(shí)現(xiàn)以下功能:LCD1602顯示溫度、溫度最大值以及狀態(tài) 按鍵設(shè)置溫度最大值 洗碗過程:進(jìn)水
    發(fā)表于 11-12 16:06 ?9次下載
    基于<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>洗碗機(jī)</b><b class='flag-5'>控制</b>器