[信息與通信]基于單片機的全自動洗衣機控制系統(tǒng)設計
《[信息與通信]基于單片機的全自動洗衣機控制系統(tǒng)設計》由會員分享,可在線閱讀,更多相關《[信息與通信]基于單片機的全自動洗衣機控制系統(tǒng)設計(40頁珍藏版)》請在裝配圖網上搜索。
1、 基于單片機的全自動洗衣機控制系統(tǒng)設計 河南工業(yè)職業(yè)技術學院 畢 業(yè) 論 文 題目:基于單片機的全自動洗衣機控制系統(tǒng)設計 專業(yè)(系別):機電一體化 姓 名:肖 向 前 班 級:機電0905班 學 號:0202090521 指 導 老 師 : 李 仁 摘要 該系統(tǒng)是《基于單片機的全自動洗衣機控制系統(tǒng)設計》。系統(tǒng)采用AT89C51單片機作為核心控制芯片。并且輔以必要的外圍器件和電路,通過I/O
2、口輸出控制電動機運行和停止,通過AT89C51單片機內部定時器中斷來記錄洗衣時間和進水時間,通過按鍵來進行洗衣參數(shù)設置。通過AT89C51單片機驅動數(shù)碼管顯示洗衣機的工作時間,LED指示燈用作洗衣機的工作狀態(tài)顯示,用兩個電控水龍頭進行加水和放水,通過蜂鳴器提示洗衣結束。通過外部中斷來控制進水和放水。論文重點闡述單片機和控制系統(tǒng)模塊的設計。 關鍵詞:單片機,全自動洗衣機,數(shù)碼管,蜂鳴器,中斷,定時器 Summary The system i
3、s <
4、 internal timer interrupt to record the laundry time and water time, through the key parameters for laundry. AT89C51 microcontroller driven by digital display washing machine working hours, LED indicator for status display of washing machines work, carried out by two electronically controlled tap wa
5、ter and turn on the water, laundry tips by the end of the buzzer. Water through an external interrupt to control and turn on the water. Paper focuses on the single-chip module design and control system. keywords: MCU ,Automatic washing machine, LE Buzzer ,Interrupt ,Timer
6、 35 目錄 緒論 2 第一章 系統(tǒng)整體設計 5 1.1設計功能要求 5 1.2系統(tǒng)設計方案 5 1.3芯片選擇 6 1.3.1什么是單片機 6 1.3.2單片機的應用領域 6 1.3.3單片機的確定 7 1.4單片機的結構 8 1.4.1 AT89C51單片機的引腳功能 8 1.4.2電源 9 1.4.3時鐘 9 1.4.4控制信號引腳線 9 1.4.5輸入/輸出引腳(I/O口線) 10 1.5 繼電器的選擇 11 第二章 系統(tǒng)硬件設計 12 2.1 電源電路設計 12 2.2 保護電路設計 12 2.3 顯示電路設計
7、13 2.4 按鍵控制設計 14 2.5 狀態(tài)指示電路設計 14 2.6 硬件總體電路設計 15 第三章 系統(tǒng)軟件設計 17 3.1 軟件整體結構設計 17 3.2主程序結構設計與分析 17 3.3子程序結構設計與分析 26 3.3.1 定時器中斷1子程序 27 3.3.2 外部中斷0子程序 28 3.3.3 定時器中斷0子程序 30 3.3.4 外部中斷1子程序 31 3.3.5 數(shù)碼管顯示子程序 31 總結 33 致謝 34 參考文獻 35 緒論 1.全自動洗衣機的發(fā)展過程 隨著社會的進步和生活水平的提高,洗衣機是一種在家庭中不可
8、缺少的家用電器,全自動式洗衣機因使用方便得到大家的青睞,全自動即進水、洗滌、摔干等一系列過程自動完成。家用洗衣機從發(fā)明到現(xiàn)在已經經歷了一個多世紀,經歷以下一些發(fā)展階段: 世界上第一臺洗衣機實在1874年由美國的比爾.布萊克斯通(Bill Blackstone)研制成功的。1910年前后,第一臺臥軸滾筒式電動洗衣機問世,標志著人類家務勞動自動化的開始。20世紀20年代,第一臺立軸攪拌式洗衣機再美國試制成功,由此,洗衣機開始了“立軸”與“臥軸”之分。50年代中葉,日本三洋公司推出單桶波輪式洗衣機。開始確定了滾筒式、攪拌式和波輪式三種工作方式。60年代,日本推出了帶甩干桶半自動洗衣機,并且大量應用
9、塑料,使洗衣機的發(fā)展進入一個新的階段。70年代,日本推出波輪式套桶全自動洗衣機,從此開始有了“全自動”洗衣機的概念。70年代后期,日本推出了微電腦控制的全自動洗衣機。完成了由機械—電動程序控制到電腦控制的過渡,開始了電腦控制時代。這時,洗衣機在發(fā)達國家已進入飽和期,而在亞太地區(qū)發(fā)展中國家開始進入普及期。80年代后期,“模糊控制”洗衣機開始出現(xiàn),實現(xiàn)了家電器控制方式上的高度自動化。出現(xiàn)“白色家電”的概念。90年代,隨著變頻技術的發(fā)展,日本最先推出了電動機直接驅動洗衣機,實現(xiàn)了洗衣機驅動方式上的革命。今后洗衣機將以高可靠性,完善的功能,節(jié)水省電,降噪省時以及規(guī)格品種多樣化為發(fā)展方向。 2.洗衣機
10、的發(fā)展前景及待解決的問題 ①國外先進技術及開發(fā)前景: 當今世界是技術、知識大爆炸的年代,只要人們有需要,就有可能生產出某種產品來滿足人們的需要。洗衣機的發(fā)展正是這樣,人們在生活中發(fā)現(xiàn)了它的某些不便,就會在實際中不斷地改進和完善它,新型的洗衣機正是在這種情況下誕生的。 (1)超聲波洗衣機超聲振動產生空穴現(xiàn)象,在洗滌中通過氣泡的生產和消失的運動,產生強水壓,再加入小量洗衣劑,振動纖維,超聲乳化,去污,水中氣泡上升,產生了從洗滌桶中央向外側翻動的水流,使衣服之間相互摩擦,并與洗滌劑充分接觸產生很有效的洗滌作用。這種洗衣機洗滌桶小,桶內無運動部件,無機械電氣故障,修理方便。不纏繞,不傷布料,洗衣
11、效果好,省水,省電。 (2)電磁洗衣機這種洗衣機洗滌桶內有4個洗滌頭,上面各有有個夾子,把衣物伸展夾住,每個洗滌頭上有有個電磁線圈,接通電源發(fā)生2500次/秒的微擊振動,使衣物在洗滌液中洗滌。因不用電機驅動,無噪聲,省水50%,省電75%。 (3)高溫泡沫洗衣機日本大阪大研制的一種不用水用高溫泡沫來洗凈衣物的洗衣機。洗滌劑罐于洗衣機低部,放衣物后撥動開關,開始鼓風,將空氣送入罐中產生泡沫,由加熱到70C高溫泡沫洗凈衣物,然后進入洗衣桶旁邊的消泡裝置,一般洗5~10分鐘/次,21L/1kg干衣。 (4)真空洗衣機原蘇聯(lián)研制的不用洗衣粉或洗滌劑的洗衣機,真空泵將洗衣桶內吸成真空狀態(tài),桶中水運
12、動產生氣泡爆破并去污。洗凈度高,不損衣、無噪聲、造價高。實際上是采用冷沸騰洗滌原理,在幾秒鐘內從洗滌桶的上部那空氣抽空出。稀薄空氣與水如沸騰壯,衣物在泡沫旋渦鐘攪動,1.5~2分鐘就能洗凈衣物,一般洗衣服7~10分鐘即可完成全過程。 (5)噴射式洗衣機意大利扎努西公司研制一種將洗滌劑不斷噴向衣物的洗衣機,似乎無水,可以省水20%,省洗滌劑30%,省能35%,省時間10%。這種洗衣機完全不同于前裝式滾筒洗衣機,安裝在噴淋系統(tǒng)內的噴射裝置持續(xù)不斷地將水和洗滌劑噴淋在衣物上進行洗滌,并在不銹鋼桶內攪動衣物。衣物在液體中不停地攪動,就像桶內根本沒有水一樣。然而水卻滲透過衣物流入位于滾筒底部的一個儲水
13、槽中。在槽中,水被從新加熱再次循環(huán)噴射到衣物上去,洗滌桶做周期性脫水,以排去水和污物,隨后漂洗3次,最后脫水洗完。 ②洗衣機待解決的一些問題: 由于我國洗衣機廠起步晚,加上技術方面的一些問題,不可避免的在現(xiàn)有的機型中出現(xiàn)一些弊端。主要弊端有:噪聲大,耗水、耗電,進水不暢或進水不止或排水不暢,工作周期不平穩(wěn)、振動大,損傷洗滌物,洗滌效果不佳,脫水桶自動性不佳,脫水不良,重量大,容量不合理。具體來說,洗衣機的問題存在于結構、質量、原材料和模具及管理方面 (1)結構類型方面我國洗衣機多屬波輪式。今后波輪式仍然是主要型式。為了適應國外市場的不同需求,要適當?shù)厣a些新型式的滾筒式和攪拌式洗衣機,進
14、而生產具有波輪式、攪拌式兩種洗衣機優(yōu)點的新機型。為了使波輪式洗衣機洗滌更合理,應努力將全自動洗衣機提高到電腦型的水平。雙桶洗衣機再提高漂洗的條件下,以重點生產全自動型噴淋式洗衣機為宜。同時要注意避免新水流洗衣機一味地提高波輪式的轉數(shù)極其轉動時間或增高波輪筋高的傾向,以免損傷衣率和纏繞率回升增高,降低了新水流洗衣機的優(yōu)越性。 (2)質量方面我國洗衣機的質量問題,具體反映再功能、外觀和可靠性三方面,與國外存在再較大的差距。國內外洗衣機相比較:從功能、電源插頭、面板裝飾、旋鈕結合,塑料件的光整度(光潔、毛刺和變形),外箱和螺絲釘?shù)某尚渭胺冷P,皮帶的耐磨及噪音,進排水閥和水位開關質量,電腦控制各種功
15、能的能力,電腦的抗電壓波動、抗干擾防靜電的能力,以及傳感器的靈敏度等方面,很容易看出整體質量的好壞。再加上裝配工藝較落后,致使我國洗衣機的質量穩(wěn)定性差,出口有一定的困難。目前我國洗衣機無故障運行水平約為250~500小時,而國外同類產品達1500~2000小時,即十年不需修理。因此提高洗衣機的質量要從提高零部件的質量入手。關鍵電器件和傳動件應組織專業(yè)分工,制定標準,組織攻關,進行認證,在改進功能方面、外觀質量和可靠性三方面,進行全面整理,提高水平。 綜合以上分析介紹,全自動洗衣機由于具有對衣物的磨損小、洗滌量大、節(jié)約水電等特點,越來越得到廣大家庭的青睞。由于人們對全自動洗衣機在價格低廉的基礎
16、上也提出了功能齊全、操作簡單、不纏繞、不傷布料、洗衣效果好、性能可靠、工作效率高、便于維修等更高的要求。為滿足人們這種需求,特設計出這種有微控制器控制的全自動洗衣機控制系統(tǒng)。 第一章 系統(tǒng)整體設計 在進行系統(tǒng)設計之前,首先應根據對系統(tǒng)的功能要求及其應用環(huán)境等確定合理的、具體的功能和技術指標,對應用系統(tǒng)的可靠性、通用性、先進性、可維護性、以及成本等進行綜合考慮,以盡量合理并符合相應的標準。然后根據市場上各種單片機的貨源情況和單片機的性能及開發(fā)工具等因素選擇合適的機型。接下來要根據系統(tǒng)中遇到
17、的重要器件進行選擇,使之符合系統(tǒng)在精度、速度和可靠性等方面的要求。最后確定硬件和軟件的功能劃分。由于在系統(tǒng)設計中某些功能用硬件和軟件都能實現(xiàn),在設計中應綜合考慮研制周期和成本等因素具體劃分軟硬件功能。 1.1設計功能要求 (1)通過按鍵控制洗衣機的工作方式,并且相應工作方式的指示燈亮。 (2)數(shù)碼管用于顯示相應工作方式的剩余時間 (3)洗衣機具有強洗(電動機正轉)和弱洗(電動機正,反交替運行) (4)打開電源洗衣機自動在強洗模式(并且可調整強洗和弱洗) (5)當洗衣時間或脫水時間到蜂鳴器響 (6)通過延時控制洗衣機的進水水位 1.2系統(tǒng)設計方案 通過設對計要求的分析,主控制系
18、統(tǒng)運用的是AT89C51單片機,控制對象包括:按鍵、電控水龍頭1(進水閥)、電控水龍頭2(出水閥)、電動機、數(shù)碼管顯示、LED指示燈、蜂鳴器等。這些被控對象需要根據不同的洗衣程序來設定他們的工作狀態(tài)和工作時間,電控水龍頭1(進水閥)和電控水龍頭2(出水閥)來控制進水和出水,同時需要LED指示燈和數(shù)碼管顯示不同的工作狀態(tài)和剩余時間,按鍵 用來控制程序運行和設置洗衣模式,蜂鳴器用來提示洗衣完成提示。按照上述的系統(tǒng)方案得到的系統(tǒng)整體構架如圖1-1: 圖1-1系統(tǒng)整體構架 1.3芯片選擇 1.3.1什么是單片機 單片機即單片微型計算機。(Single-Chip Microcomput
19、er ),是 集CPU 、RAM 、ROM 、定時器、計數(shù)器和多種接口于一體的微控制器。這樣所組成的芯片級芯片級微型計算機稱為單片微型計算機(Single-Chip Microcomputer ),簡稱位單片微機或單片機。他體積小,成本低,功能強,廣泛應用于智能產品和工業(yè)自動化上。由于單片機的硬件結構與指令系統(tǒng)都是按工業(yè)控制要求設計的,常用于工業(yè)的檢測、控制裝置中,因而也稱為微控制器或嵌入式控制器。單片機按用途可分為通用型和專用型兩大類,按內部數(shù)據通道的寬度又可分為4位、8位、16位及32位。而51 單片機是各單片機中最為典型和最有代表性的一種。 1.3.2單片機的應用領域 單片機廣泛應用
20、于儀器儀表、家用電器、醫(yī)用設備、航空航天、專用設備的智能化管理及過程控制等領域,大致可分為如下幾個范疇: (一)在智能儀器儀表的應用 單片機具有體積小、功耗低、控制功能強、擴展靈活、微型化和使用方便等優(yōu)點,廣泛應用于儀器儀表中,結合不同類型的傳感器,可實現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度、元素、壓力等物理量的測量。采用單片機控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強大。例如精密的測量設備(功率計,示波器,各種分析儀)。 (2) 在家用電器中的應用 可以這樣說,現(xiàn)在的家用電器基本上都采用了單片機控制,從電飯煲、洗衣機、電
21、冰箱、空調機、彩電、其他音響視頻器材、再到電子秤量設備,五花八門,無所不在。 (三)在工業(yè)控制中的應用 用單片機可以構成形式多樣的控制系統(tǒng)、數(shù)據采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報警系統(tǒng),與計算機聯(lián)網構成二級控制系統(tǒng)等。 (四)在計算機網絡和通信領域中的應用 現(xiàn)代的單片機普遍具備通信接口,可以很方便地與計算機進行數(shù)據通信,為在計算機網絡和通信設備間的應用提供了極好的物質條件,現(xiàn)在的通信設備基本上都實現(xiàn)了單片機智能控制,從手機、電話機、小型程控交換機、樓宇自動通信呼叫系統(tǒng)、列車無線通信、再到日常工作中隨處可見的移動電話,集群移動通信,無線電對講機等。 (五)單片
22、機在醫(yī)用設備領域中的應用 單片機在醫(yī)用設備中的用途亦相當廣泛,例如醫(yī)用呼吸機,各種分析儀,監(jiān)護儀,超聲診斷設備及病床呼叫系統(tǒng)等等。 此外,單片機在工商、金融、科研、教育、國防航空等領域都有著十分廣泛的用途。 1.3.3單片機的確定 通過設計方案整體分析,根據單片機的使用性、技術性、經濟性、以及對控制系統(tǒng)的設計要求與性能,本系統(tǒng)選擇AT89C51單片機作為核心控制對象。其中AT89C51單片機具有以下基本特性:AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓,高性能CMOS8位微處理器,外圍電路簡單、硬件設計方便、I/O口操作簡單、資源豐富、能滿足一般的使用功能、 價格
23、便宜、容易購買。 通過以上的介紹和分析,AT89C51完全滿足設計要求和性能。因此,本系統(tǒng)選擇AT89C51單片機作為核心控制對象。 1.4單片機的結構 AT89C51 芯片內部集成了 CPU、RAM、ROM、定時/計數(shù)器和I/O口等各功能部件,并由內部總線把這些部件連接在一起。 AT89C51 單片機內部包含以下一些功能部件: (1) 一個8位CPU; (2) 一個片內振蕩器和時鐘電路; (3) 4KB 的ROM (4) 128x8字節(jié)內部RAM; (5) 可尋址64KB的外ROM和外RAM控制電路; (6) 兩個16位定時/計數(shù)器; (7) 21個
24、特殊功能寄存器; (8) 4個8位并行I/O口,共32條可編程I/O端線; (9) 一個可編程全雙工串行口; (10) 5個中斷源; 1.4.1 AT89C51單片機的引腳功能 AT89C51單片機一般采用雙列直插DIP封裝,共40個引腳,圖1-2為單片機引腳排列圖。40個引腳大致可分為4類:電源、時鐘、控制和I/O引腳。 圖1-2 單片機引腳排列圖 1.4.2電源 (1)VCC(40腳)——芯片電源,接+5V; (2)VSS(GND20腳)——接地端。 1.4.3時鐘 XTAL1(19腳)、XTAL2(18腳)—
25、—晶體振蕩電路反相輸入端和輸出端。使用內部振蕩電路時外接石英晶體如圖1-3。 圖1-3晶體振蕩電路 1.4.4控制信號引腳線 控制線共有4根,其中3根是復用線。所謂復用線是指具有兩種功能,正常使用時是一種功能,在某種條件下是另一種功能。 (1)ALE/PROG(30腳)地址鎖存允許/片內EPROM編程脈沖。 ①ALE功能:用來鎖存P0口送出的低8位地址。 AT89C51在并行擴展外存儲器(包括并行擴展I/O口)時,P0口用于分時傳送低8位地址和數(shù)據信號
26、,且均為二進制數(shù)。那么如何區(qū)分是低8位地址還是8位數(shù)據信號呢?當ALE為高電平時,P0口傳送的是低8位地址信號;ALE為低電平時,P0口傳送的是8位數(shù)據信號。在ALE信號的下降沿,鎖定P0口傳送的內容,即低8位地址信號。 需要指出的是,當CPU不執(zhí)行訪問外RAM指令(MOVX)時,ALE以時鐘振蕩頻率1 / 6的固定頻率輸出,因此ALE信號也可作為外部芯片CLK時鐘或其他需要。但是,當CPU執(zhí)行MOVX指令時,ALE將跳過一個ALE脈沖。ALE端可驅動8個LSTTL門電路。 ②PROG功能:片內有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 (2) PSEN(29腳)——
27、外ROM讀選通信號。 80C51讀外ROM時,沒個機器周期內PSEN兩次有效輸出。PSEN可作為外ROM芯片輸出允許OE的選通信號。在讀內ROM或讀外RAM時,PSEN無效。PSEN可驅動8個LSTTL門電路。 (3) RST/Vpd(9腳)——復位/備用電源。 ①正常工作時,RST(Reset)端為復位信號輸入端,只要在該引腳上連續(xù)保持兩個機器周期以上高電平,80C51芯片即實現(xiàn)復位操作,復位后一切從頭開始,CPU從0000H開始執(zhí)行指令。8051的復位方式可以是自動復位,也可以是手動復位,見下圖1—4上電自動復位電路 和圖1—5手動復位電路。
28、 圖1-4上電自動復位電路 圖1-5 手動復位電路 ②Vpd功能:在Vcc掉電情況下,該引腳可接上備用電源,由Vpd向片內供電,以保持片內RAM中的數(shù)據不丟失。 (4) EA/VPP(31腳) ——內外ROM選擇/片內EPROM編程電源。 ①EA功能:正常工作時,EA為內外ROM選擇端。AT89C51單片機ROM尋址范圍為64KB,其中4KB在片內,60KB在片外。當EA保持高電平時,先訪問內部ROM,但當PC(程序計數(shù)器)值超過4KB(0FFFH)時,將自動轉向執(zhí)行外ROM中的程序。當EA保持低電平時,則CPU只
29、訪問外ROM,當EA為高電平時,則CPU要先對內部ROM訪問,然后自動延至外部超過4KB的ROM。 ②Vpp功能:片內有EPROM的芯片,在EPROM編程期間,此引腳用于施加編程電源Vpp。 1.4.5輸入/輸出引腳(I/O口線) (1)P0口(32—39腳)——8位雙向I/O口。在不并行擴展外存儲器(包括并行擴展I/O口)時, P0口可用作雙向I/O口。在并行擴展外存儲器(包括并行擴展I/O口)時, P0口可用于分時傳送低8位地址(地址總線)和8位數(shù)據信號(數(shù)據總線)。P0口能驅動8個LSTTL門。 (2)P1口(1——8腳)——8位準雙向I/O口(“準雙向”是指該口內部有固定的上拉電
30、阻)。 P1口能驅動為4個LSTTL門。 (3) P2口(21——28腳)——8位準雙向I/O口。在不并行擴展外存儲器(包括并行擴展I/O口)時, P2口可用作雙向I/O口。在并行擴展外存儲器(包括并行擴展I/O口)時, P2口可用于傳送高8位地址(屬地址總線) 。P2口能驅動4個LSTTL門。引腳上拉電阻同P1口。在結構上,P2口比P1口多一個輸出控制部分。 (4) P3口(10——17腳)——8位準雙向I/O口??勺饕话鉏/O口用,同時P3口每一引腳還具有第二功能,用于特殊信號輸入輸出和控制信號(屬控制總線)。P3口驅動能力為4個LSTTL門。
31、 P3口第二功能如下: P3.0——RXD:串行口輸入端; P3.1——TXD:串行口輸出端; P3.2——INT0:外部中斷0請求輸入端; P3.3——INT1:外部中斷1請求輸入端 P3.4——T0:定時/計數(shù)器0外部信號輸入端; P3.5——T1:定時/計數(shù)器1外部信號輸入端; P3.6——WR:外RAM寫選通信號輸出端; P3.7——RD:外RAM讀選通信號輸出端。 上述4個I/O口,各有各的用途。 在不并行擴展外存儲器(包括并行擴展I/O口)時, 4個I/O口都可作為雙向I/O口用。在并行擴展外存儲器(包括并行擴展I/O口)時, P0口專用于分時傳送低8位
32、地址信號和8位數(shù)據信號,P2口專用于傳送高8位地址信號。P3口根據需要常用于第二功能,真正可提供給用戶使用的I/O口是P1口和一部分未用作第二功能的P3口端。 1.5 繼電器的選擇 繼電器是一種電子控制器件,它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路),通常應用于自動控制電路中,用來接通和斷開控制電器,它實際上是用較小的電流去控制較大電流的一種“自動開關”。故在電路中起著自動調節(jié)、安全保護、轉換電路等作用。根據控制電路的電源電壓,能提供的最大電流,被控電路需的觸點形式。根據單片機的控制特點AT89C51單片機帶負載能力不強,一般用三極管控制繼電器,因此本系統(tǒng)采用的是:松樂T7
33、3 SRD-5VDC-SL-C繼電器。 第二章 系統(tǒng)硬件設計 2.1 電源電路設計 電源為單片機提供+5V電壓供電,原理圖如圖2-1所示,交流220V電源經變壓器降壓在經過整流、濾波后產生直流電壓,輸入到集成穩(wěn)壓器7805的輸入端,7805輸出穩(wěn)定的+5V電壓為單片機供電。 圖2-1電源電路 2.2 保護電路設計 保護電路如圖2-2所示,該電路主要是對與電動機在運行過程中出現(xiàn)過載或短路保護,通過自恢復保險絲與電動機串聯(lián),當電動機過載或短路時,流經保險絲的大電流使其集溫升高,當達到居里溫度時,其態(tài)密度迅速減小,相變增大,內部的導電鏈路呈雪崩態(tài)變或斷裂,保險絲呈階躍式遷到
34、高阻態(tài),電流被迅速夾斷,從而對電路進行快速、準確的限制和保護,當故障排除后,其集溫降低,態(tài)密度增大,相變復原,納米晶體還原成鏈狀導電通路,自恢復保險絲恢復為正常狀態(tài),無需人工更換。從而起到保護作用。 2-2保護電路 2.3 顯示電路設計 顯示部分主要是通過一個兩位數(shù)碼管顯示系統(tǒng)的工作時間信息。該數(shù)碼管共有10個管腳,其中A——G 7個管腳為數(shù)碼管的段選,1和2為數(shù)碼管的位選,DP為小數(shù)點顯示。其中數(shù)碼管的段選與單片機的P0.0——P0.6口相連接,數(shù)碼管的位選1和2分別與單片機的P2.0和P2.1相連接。具體電路如圖2—3所示。 圖2-3 顯示電路
35、 2.4 按鍵控制設計 該系統(tǒng)通過四個獨立按鍵來控制系統(tǒng)的啟動、停止和工作狀態(tài)設置,四個鍵分別為:程序、增加、減少、啟動,其中四個鍵分別與單片機的P1.0—P1.3口相連接:具體連接如圖2—4所示。 圖2-4 按鍵連接 2.5 狀態(tài)指示電路設計 狀態(tài)指示是通過8個LDE顯示系統(tǒng)的工作狀態(tài),LED與74LS138的輸出端相連接,其中74LS138的三個使能端分別與單片機的P1.4—P1.6相連接,通過單片機輸出高低電平控制74LS138相應的引腳,使LED點亮,指示出工作狀態(tài)。具體連接如圖2-5所示。 圖2—5指示燈電路 2.6 硬件總體電路設計
36、 通過上面的分析硬件電路(如圖2-6)主要有這幾部分組成: 1.單片機最小系統(tǒng):(1)復位電路 (2)時鐘電路 (3)AT89C51 2.按鍵控制部分 3.LED與數(shù)碼顯示部分 4. 74LS138譯碼器 5.報警部分(蜂鳴器) 6.繼電器控制部分 7.電動機部分 其中按鍵部分為四個獨立按鍵與單片機的P1.0—P1.3口相連接,分別是程序的增加、減少和啟動主要用于設置洗衣機的工作狀態(tài)。D0—D7是洗衣機的工作狀態(tài)指示燈,其中D0—D5與38譯碼器的Y0—Y5相連接分別表示:進水時間設定,脫水剩余時間,脫水定時,洗衣剩余時間,洗衣定時
37、,洗滌次數(shù)。D6與D7分別與單片機的P2.6與P2.7相連接表示:弱洗和強洗。數(shù)碼管用于顯示洗衣機工作的時間,其中P0口控制數(shù)碼管的段選,P2.0與P2.1控制數(shù)碼管的位選。報警部分(蜂鳴器)用于洗衣完畢是的報警,通過三極管驅動與單片機的P1.7相連接。繼電器控制部分主要用于電動機的正反轉控制,通過三極管驅動與單片機的P2.2—P2.5相連接。單片機的P3.0與P3.2分別連接兩個電控水龍頭用于洗衣機的進水和脫水。 2-6 電路原理圖 第三章 系統(tǒng)軟件設計 3.1 軟件整體結構設計 該系統(tǒng)的主要程序圖框如圖3-1所示。
38、系統(tǒng)程序可以分為:主程序,定時器中斷1程序,定時器中斷0程序,外部中斷0和外部中斷1程序,延時程序,數(shù)碼管顯示程序,等幾部分組成。定時中斷1和外部中斷0來控制電控水龍頭進水,利用定時器中斷0記錄洗衣時間,通過外部中斷1判斷水是否放完,來進行脫水,定時中斷1記錄脫水時間。下面分別以各部分的程序流程圖進行分析程序 3.2主程序結構設計與分析 首先,開機可以先進行選擇強洗和弱洗(弱洗是電動機進行正反轉每10s交替運行)并且相應指示燈亮。連續(xù)按下“程序”鍵可進行相應功能的選擇,當進水時間、洗衣時間、脫水時間、洗滌次數(shù)、脫水時間以及強洗或弱洗設置完成后,按下“啟動”鍵系統(tǒng)開始工作,進水龍頭打開,當進
39、水時間到或水加滿開始進行洗衣,當洗衣時間到,開始進行脫水。當脫水時間到,若洗滌次數(shù)不到,繼續(xù)下一次洗滌,否則結束工作且蜂鳴器報警5秒,工作結束。其應用程序如下: 開始 啟動鍵按下否 否 洗衣參數(shù)設定狀態(tài) 是 洗
40、衣加水 是 加水時間到否或滿否 啟動鍵按下否 否
41、 是 是 洗衣狀態(tài) 脫水狀態(tài) 是 洗衣時間到否 否 是 脫
42、水時間到否 否 洗滌次數(shù)到否 否 是 是 結束
43、 圖3-1 主程序圖框 main() { int a; P1=0xff; TMOD=0x11;//定時器0和定時器1同時工作在模式0; ET0=1; //打開內部中斷0 ET1=1; //打開內部中斷1 led7=0; while(d) { shao_maio(); if(b==1200)//b=20剛好1秒 { b=0; m=m-1; if(m<0) { m=0; } if(t<0) { t=0; }
44、 shao_maio(); //掃描數(shù)碼管 } /*************進水控制****************************/ shao_maio(); if(b1==1200) { b1=0; jins_time=jins_time-1; } if(jins_time==0) { sw1=1;//關閉水龍頭 jins_time=1; EX0=1; //開外部中斷0 EA=1;//開總中斷 TMOD=0x11; jins_time=
45、1; TH0=(65536-50000)/256; //定時50毫秒 TL0=(65536-50000)%256; ET0=1; //打開內部中斷0 TR0=1; if(x==4) { sn1=0;//4 點亮洗衣剩余時間指示燈 sn2=1;//2 sn3=1;//1 ET0=1; //打開內部中斷0 TR0=1; } //if(x==3)//洗衣剩余時間 else {
46、 sn1=0; //4 sn2=1; //2 sn3=1;//1 x=3; ET0=1; //打開內部中斷0 TR0=1; } if(led6==0&&led7==1) //弱洗 { if(b>=0&&b<200||(b>=600&&b<800))//10m {q2=1;q3=1; q1=0;q4=0; } if(b>=400&&b<600||(b>=800&&b<1000))
47、 {q1=1;q4=1; q2=0;q3=0; } } if(led6==1&&led7==0) //強洗 { q1=0; q4=0; q2=1; q3=1; } } /*****************開始脫水************************/ if(m==0) { sw1=1;//關水龍頭1 sw2=0;//開水龍頭2 EX0=0;//關外部中斷0 ET0=0;//關定時器中斷0 TR0=0;
48、 EA=1;//開總中斷 TMOD=0x11; TH1=(65536-50000)/256; //定時50毫秒 TL1=(65536-50000)%256; ET1=1; //打開內部中斷0 TR1=1; EX1=1; //外部中斷1打開為放水準備 sn1=0; //4 脫水剩余時間指示燈亮 sn2=0; //2 sn3=1;//1 x=5;//顯示脫水剩余時間 } if(tuo_s==1200) { tuo_s=0;
49、 t=t-1; } if(t<=0) { jins_time=jins_time1; m=m1; t=t; d=d-1; x=0; xi_di=1;//判斷是否跳轉 } if(d<=0) { EA=0;//關總中斷 sw2=1;//關水龍頭2 sm1=sm2=0;//數(shù)碼管熄滅 sn1=sn2=sn3=1;//LED熄滅 q1=q2=q3=q4=1;//電動機停止 feng_m_qi=0;//蜂鳴器響 delay(2
50、);//延時5秒 feng_m_qi=1;//蜂鳴器停止 } else goto start; /************強洗弱洗選擇***********************/ if(sb2==0&&x==0)//弱洗 { for(a=0;a<140;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb2==0&&x==0) { led6=0; led7=1; } } if(sb3==0&&x
51、==0)//強洗 { for(a=0;a<140;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb3==0&&x==0) { led6=1; led7=0; } } /****************功能選擇*************************/ if(sb1==0) { EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管
52、 } if(sb1==0) { x=x+1; if(x==1)//洗滌次數(shù)設置 { sn1=1; //4 sn2=0; //2 sn3=1;//1 } if(x==2)// 洗衣定時 { sn1=1; //4 sn2=0; //2 sn3=0;//1 } if(x==3)//洗衣剩余時間 { sn1=0; //4 sn2=1; //2
53、 sn3=1;//1 } if(x==4)//脫水定時時間 { sn1=0; //4 sn2=1; //2 sn3=0;//1 } if(x==5)//脫水剩余時間 { sn1=0; //4 sn2=0; //2 sn3=1;//1 } if(x==6)//進水時間 { sn1=0; //4 sn2=0; //2
54、 sn3=0;//1 } if(x==7)//強洗 { x=0; led6=1; led7=0; } } } /****************增加設置*****************/ if(sb2==0&&x==1) //洗滌次數(shù)增加 { //EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb2==0&&x==1) { d=d+1;
55、 if(d>99) { d=0; } } } /*****************************************/ if(sb2==0&&x==2) //洗衣定時增加 { for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb2==0&&x==2) { m=m+1; m1=m; if(m>99) { m=0; } } } /******
56、******************************************/ if(sb2==0&&x==4)//脫水定時增加 { for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb2==0&&x==4) { t=t+1; t1=t; if(t>99) { t=0; } } } /****************************************
57、********/ if(sb2==0&&x==6)//進水水定時增加 { for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb2==0&&x==6) { jins_time=jins_time+1; jins_time1=jins_time; if(jins_time>99) { jins_time=0; } } } /***************減少設置*******
58、****************/ if(sb3==0&x==1)//洗滌次數(shù)減少 { EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb3==0&x==1) { d=d-1; if(d<0) { d=0; } } } /***************************************************/
59、 if(sb3==0&x==2)//洗衣定時減少 { EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb3==0&x==2) { m=m-1; m1=m; if(m<0) { m=m1; } } } /**************************************************/ if(sb3==0&&x==4
60、) //脫水定時減少 { EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb3==0&&x==4) { t=t-1; t1=t; shao_maio(); if(t<0) { t=0; } } } /**************************************************/ if(sb3==0&&x==6) //進水定時減少 {
61、 EA=0; for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb3==0&&x==6) { jins_time=jins_time-1; jins_time1=jins_time; shao_maio(); if(jins_time<0) { jins_time=0; } } } /*****************啟動****************
62、**************/ if(sb4==0&&x>0) { start: xi_di=0;//如果洗滌次數(shù)不到重新賦值 for(a=0;a<130;a++) //按鍵去抖 { shao_maio(); //掃描數(shù)碼管 } if(sb4==0&&x>0) { EA=1;//開總中斷 EX0=1; //開外部中斷0 sw1=0;//開水龍頭1 sw2=1; TMOD=0x11; TH1=(65536-500
63、00)/256; //定時50毫秒 TL1=(65536-50000)%256; ET1=1; //打開內部中斷0 TR1=1; x=6; sn1=0; //4 sn2=0; //2 sn3=0;//1 } } } } 3.3子程序結構設計與分析 3.3.1 定時器中斷1子程序 圖3-2為定時器中斷1程序框架,當啟動鍵按下后,系統(tǒng)將打開定時器中斷1,每50ms中斷一次,作為進水時間的記錄,當進水時間到定時器中斷1關閉停止計時?;蛘咚訚M后,利用外部
64、中斷0來停止加水。其主要程序如下: 洗衣參數(shù)設定狀態(tài) 啟動鍵按下否 否 是 開始每50ms中斷一次 進水時間到否 否 是 開始進入洗衣狀態(tài) 關閉定時器中斷1 打開定時器中斷0 圖3-2定時器中斷1 void ds1zhong_duan() int
65、errupt 3 //定時器1中斷 //進水水和脫水時間 { //shaomaio(); //掃描數(shù)碼管 TH1=(65536-50000)/256;//高8位 TL1=(65536-50000)%256;//低8位 if(EX0==1) { b1=b1+1; } //記錄中斷次,數(shù)每次中斷50ms else { tuo_s=tuo_s+1; } } 3.3.2 外部中斷0子程序 外部中斷0程序框架(如圖3-3所示),其
66、主要功能是:當設置加水時間過長,水就會溢出,為防止水溢出,當水加到一定高度時就會進入該中斷子程序關閉進水閥,開始執(zhí)行下一步任務。其主要程序如下: 圖3-3 外部中斷0 void wai0_zhong_duan() interrupt 0//外部中斷0 { sw1=1;//關閉水龍頭 jins_time==1; if(led6==0&&led7==1) //弱洗 { void dian_zf(); } if(led6==1&&led7==0) //強洗 { led6=1; led7=0; } sw1=0;//關閉水龍頭1 EA=1;//開總中斷 TMOD=0x11; jins_time=1; TH0=(65536-50000)/256; //定時50毫秒 TL0=(65536-50000)%256; ET0=1; //打開內部中斷0
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023年六年級數(shù)學下冊6整理和復習2圖形與幾何第7課時圖形的位置練習課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習2圖形與幾何第1課時圖形的認識與測量1平面圖形的認識練習課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習1數(shù)與代數(shù)第10課時比和比例2作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊4比例1比例的意義和基本性質第3課時解比例練習課件新人教版
- 2023年六年級數(shù)學下冊3圓柱與圓錐1圓柱第7課時圓柱的體積3作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊3圓柱與圓錐1圓柱第1節(jié)圓柱的認識作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊2百分數(shù)(二)第1節(jié)折扣和成數(shù)作業(yè)課件新人教版
- 2023年六年級數(shù)學下冊1負數(shù)第1課時負數(shù)的初步認識作業(yè)課件新人教版
- 2023年六年級數(shù)學上冊期末復習考前模擬期末模擬訓練二作業(yè)課件蘇教版
- 2023年六年級數(shù)學上冊期末豐收園作業(yè)課件蘇教版
- 2023年六年級數(shù)學上冊易錯清單十二課件新人教版
- 標準工時講義
- 2021年一年級語文上冊第六單元知識要點習題課件新人教版
- 2022春一年級語文下冊課文5識字測評習題課件新人教版
- 2023年六年級數(shù)學下冊6整理和復習4數(shù)學思考第1課時數(shù)學思考1練習課件新人教版