基于51單片機洗衣機課程設計報告_第1頁
基于51單片機洗衣機課程設計報告_第2頁
基于51單片機洗衣機課程設計報告_第3頁
基于51單片機洗衣機課程設計報告_第4頁
基于51單片機洗衣機課程設計報告_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.PAGE 71. - - . 可修編-單片機原理及系統(tǒng)課程設計評語:考勤10分守紀10分過程30分設計報告30分辯論20分總成績(100分)專 業(yè): 自動控制 班 級: 控1102 姓 名:學 號:指導教師: 交通大學自動化與電氣工程學院2014 年 1月 13 日基于51單片機的洗衣機設計1 設計目的、要求及原理1.1設計目的由單片機控制實現(xiàn)洗衣機的各項功能,單片機的體積小,控制功能靈活,因此,設計出基于單片機的全自動洗衣機控制電路系統(tǒng)具有很強的實用性。用單片機設計出簡單操作省水省電的洗衣機,在方便日常生活和節(jié)約資源方面都有重要意義。由于個人能力有限,我能設計的洗衣機比前沿科技產品要差很多

2、。所以我這次課設的主要目的在于通過親手操作,查找資料,培養(yǎng)自己的分析設計能力。把這學期課程中零散的知識進展整合,將理論的知識聯(lián)系到實際的生活中。在實例中深入理解一些理論知識,并從中有所收獲,就是意義所在。1.2設計要求通過仿真軟件模擬洗衣機的根本工作過程,如進水、洗滌、排水、漂洗、脫水等。1.3設計方法利用89C51單片機的P0,P1,P2,P3串行輸入輸出功能,控制數(shù)碼管、電機、發(fā)光二極管的工作狀態(tài)模擬洗衣機的根本工作過程。2 設計方案及原理2.1 設計方案洗衣機的主要工作程序是:進水洗滌排水進水漂洗排水脫水排水。上述工作程序中,主要包含三個過程,洗滌過程、漂洗過程、脫水過程。(1) 洗滌過

3、程:放好待洗物,啟動開關,進水閥通電,向洗衣機供水,當供水到達預定時間后,進水閥斷電關閉,停頓供水。洗滌電動機接通電源,帶動波輪(或桶)旋轉,產生各種形式的水流攪動衣物進展洗滌。通過電動機不停的正轉、反轉,形成洗滌水對洗滌物產生強烈的翻滾作用。同時,衣物之間、衣物與四周桶壁之間產生互相摩擦和撞擊力,以次到達洗滌衣物的目的。(2) 漂洗過程:漂洗的目的在于去除衣物上的洗滌液。因此,在洗滌完畢之后,換水進展漂洗。漂洗過程與洗滌過程的電器動作是完全一樣的。為了完全漂凈衣服上的洗衣粉等,所以要屢次漂洗,在這次設計中漂洗次數(shù)設定為三次。(3) 脫水過程:漂洗后,需要對衣物進展脫水以便晾干,節(jié)省水資源,所

4、以脫水是洗衣過程中必不可少的環(huán)節(jié)。漂洗過程完畢后,電動機停頓轉動,排水閥通電,翻開排水閥門排水。當排水到達預定時間后,脫水電動機接通,電機帶動脫水桶高速旋轉,利用離心力把衣服上的水從桶壁的小眼里甩出。全部洗衣工作完成后,表示完畢的LED燈點亮,表示衣物已經洗好,洗衣機在這時就會自動停頓工作。2.2 設計原理本設計用51單片機實現(xiàn)對洗衣機的控制,通過功能選擇開關可以選擇洗衣機的工作模式。中選擇好模式后洗衣機進入相應的工作狀態(tài)。該模式的參數(shù)已裝入單片機中,洗衣機在單片機中預先裝入程序的控制下進展工作。程序實現(xiàn)的主要功能是洗滌,漂洗和脫水的控制。其中洗滌時間設為96s,用sec和min控制,其中se

5、c代表分鐘min代表秒。并且通過改變它們的值可以改變洗滌時間。用P3.2和P3.3控制電機的正反轉通過它們上下不同的電平控制電流的方向,從而改變電機的轉向。漂洗過程和洗滌過程較為相似,由于漂洗要屢次進展,所以用進水次數(shù)標志位flag1控制漂洗的次數(shù),當flag1=2、3、4時為漂洗過程。脫水過程是在出水次數(shù)flag2的控制下進展。當flag2=4時脫水,當脫水時間到達0后,脫水完畢,洗衣完畢,表示停頓的指示燈亮。ATA89C51按鍵輸入工作狀態(tài)顯示電機控制時間顯示圖1 系統(tǒng)組成框圖3 硬件設計3.1系統(tǒng)主要元器件在本設計中主要使用了以下元器件:AT89C51芯片、74LS245芯片、四數(shù)碼管、

6、發(fā)光二極管、直流電動機、三極管等。3.2 設計原理圖洗衣機的各項功能是由單片機控制實現(xiàn)的,單片機的體積小,控制功能靈活,因此,設計出基于單片機的全自動洗衣機控制電路系統(tǒng)具有很強的實用性采用5l系列單片機作為控制核心,主要包括功能選擇及控制電路、洗衣機工作狀態(tài)顯示及輸出控制電路??刂齐姍C正反轉以及進水閥和排水閥的開啟和關閉。如圖2所示為設計原理圖。圖2 硬件連接圖4 軟件設計4.1 主程序流程圖按下K1鍵,洗衣機從待命狀態(tài)。當按下K2鍵后,51單片機通過預先裝入的程序控制各引腳的狀態(tài),讓洗衣機才進入工作狀態(tài),以實現(xiàn)進水、洗衣、排水、漂洗、脫水、報警等根本功能。主程序流程圖如圖3所示。圖3 主程序

7、流程圖.PAGE 71. - - . 可修編-5 系統(tǒng)仿真及實際調試5.1 仿真結果圖4 :系統(tǒng)仿真結果5.1 問題分析本電路為模擬洗衣機工作過程,所以進水和排水局部只能用輸出引腳上的發(fā)光二極管表示工作狀態(tài),報警電路為脫水過程的保護電路,當脫水未完畢翻開洗衣機蓋的時候,報警電路工作并斷開電機電源,防止發(fā)生事故。6 總結在本設計過軟,硬件的配合設計,很好的實現(xiàn)了洗衣機的控制功能。本系統(tǒng)構造簡單,控制功能強大,自動化程度高等特點。系統(tǒng)軟硬件設計采用模塊化的設計方法,各模塊功能相對獨立,最后把它們整合在一起,大大的縮短了系統(tǒng)的設計周期。為保證洗衣機及人身平安,設計了報警電路。本設計還考慮半自動的設計

8、,用戶可以根據(jù)自己的需求自由選擇洗衣機的工作方式,這一點是通過功能選擇鍵實現(xiàn)的。通過這次單片機課程設計,不僅穩(wěn)固了課本上所學的知識,而且更加深刻地認識到了單片機在生活中的重要地位,通過這次課程設計讓我對單片機系統(tǒng)設計的過程與方法有了一定的認識,很好的培養(yǎng)了自己的創(chuàng)新設計能力。.1. - - . 可修編-參考文獻1 朝青.單片機原理及接口技術M.:航空航天,1999.2 顧濱.單片微計算機原理、開發(fā)及應用M.:高等教育,2000.3 王思明,金敏,茍軍年等.單片機原理及應用系統(tǒng)設計M:科學,2021.4 房小翠.單片機實用系統(tǒng)設計技術M.:國防工業(yè),1990.1 . 可修編-附錄1 源程序*in

9、clude*define uchar unsigned char*define uint unsigned int/*/sbit mo_r=P32; /電機右控制線sbit mo_l=P33; /電機左控制線/*/sbit key_menu=P34; / 菜單按鍵sbit key_on=P35; / 開場按鍵sbit key_off=P36; / 完畢按鍵sbit key_se=P37; / 菜單項選擇擇按鍵/*/sbit led_in=P00;/進水指示燈sbit led_*i=P01; / 洗衣指示燈sbit led_pao=P02;/泡洗指示燈sbit led_*=P03; / 脫水指示

10、燈sbit led_out=P04; / 出水指示燈sbit led_over=P05; / 洗衣完畢指示燈sbit led_work=P06; / 電機工作指示燈sbit led_wring=P07;/報警指示燈sbit other=P31; /脫水電源控制開關sbit anther=P30; /洗衣電源控制開關/*/uchar code num10=0*c0,0*f9,0*a4,0*b0,0*99,0*92,0*82,0*f8,0*80,0*90;/*/char sec=0; / 時間秒char min=0; / 時間分uchar count=0; / 中斷計數(shù)uchar flag0=0;

11、 / 洗衣機工作狀態(tài)標志uchar flag1=0; / 進水次數(shù)標志uchar flag2=0; / 出水次數(shù)標志uchar flag3=0; / 泡洗次數(shù)標志uchar err=0; / 報警標志uchar quan=0; / 正反轉計數(shù)/*/void delay(); / 延時函數(shù)void in(); / 進水子程序void out(); / 出水子程序void over(); / 完畢子程序void *i(); / 洗衣子程序void pao(); / 泡衣子程序void *(); / 脫水子程序void on(); / 工作on處理子程序void se(); / 顯示菜單項選擇擇vo

12、id SEG_display(); / 顯示時間子程序void key_scan(); / 按鍵掃描子程序void delay(uint i)uint *,y;for(*=i;*0;*-) for(y=120;y0;y-); /*工作on處理子程序*/void on()TMOD=0*01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;ET0=1;TR0=1; P0 = 0*ff;if(flag0=0) in();if(flag0=1) *i();if(flag0=2) pao();if(flag0=3) *();if(flag0=4) out

13、();/*完畢子程序*/void over()other=0;anther=0;P0=0*ff;mo_r=0;mo_l=0;led_over=0;EA=0; /*進水子程序*/void in()anther=0;other=0;P0=0*ff;led_in=0;flag1+;mo_r=0;mo_l=0;min=0;sec=8;/*洗衣子程序*/void *i() anther=1; other=0; P0=0*ff; led_work=0; led_*i=0; mo_r=1; mo_l=0; min=1; sec=36; quan=0;/ /*泡衣子程序*/void pao() anther=

14、1;other=0;P0=0*ff;led_pao=0;led_work=0;flag3+;mo_r=1;mo_l=0;min=1;sec=35;quan=0;/*脫水子程序*/void *()other=1;anther=0;P0=0*ff;led_*=0;mo_r=0;mo_l=1;min=0;sec=50; /*出水子程序*/void out()anther=0;other=0;P0=0*ff;led_out=0;flag2+;mo_r=0;mo_l=0;min=0;sec=5; /*顯示菜單項選擇擇*/void se()P0=0*ff;if(flag0 = 5)flag0=0; if(

15、flag0=0)led_in=0;if(flag0=1)led_*i=0;if(flag0=2)led_pao=0;if(flag0=3)led_*=0;if(flag0=4)led_out=0; /*菜單處理子程序*/void menu() min=0;sec=0;mo_r=0;mo_l=0;SEG_display(); while(1) if(key_on=0)delay(5);if(key_on=0)while(!key_on);on();break;/*/if(key_off=0)delay(5);if(key_off=0)while(!key_off);over();break;/*

16、/if(key_se=0)delay(5);if(key_se=0)while(!key_se);flag0+;se();/*按鍵掃描子程序*/void key_scan() if(key_menu=0)delay(5);if(key_menu=0)while(!key_menu);menu();/*/if(key_on=0)delay(5);if(key_on=0)while(!key_on);on();/*/if(key_off=0)delay(5);if(key_off=0)while(!key_off);over();/*顯示子程序*/void SEG_display()P1=0*01

17、;P2=nummin/10;delay(10);P1=0*02;P2=nummin%10;delay(10);P1=0*04;P2=numsec/10;delay(10);P1=0*08;P2=numsec%10;delay(10);/*主函數(shù)*/void main()led_in=0;anther=0;other=0;while(1)SEG_display();key_scan(); /*定時器0中斷處理程序*/void timer0() interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;count+; if(count=20) c

18、ount=0;sec-;if(flag0=1)|(flag0=2) quan+;switch(quan) case 1:mo_r=1;mo_l=0;break;case 10:mo_r=0;mo_l=0;break;case 15:mo_r=0;mo_l=1;break;case 25:mo_r=0;mo_l=0;break;default:; if(quan=30) quan=0; /*/if(sec=0)&(min != 0) min-; sec=59; /*/if(sec0)&(min=0)&(flag0=0) /進水完畢 switch(flag1) case 1:flag0=1;*i();break;case 2:flag0=2;pao();break;case 3:flag0=2;pao();break;case 4:flag0=2;pao();break;default: err=1;led_wring = 0; /*/if(sec0)&(min=0)&(flag0=1) /洗衣完畢 flag0=4; out(); /*/if(sec0)&(min=0)&(flag0=2) /泡衣完畢 switch(flag3) case 1:flag0=4;out();break;case 2:flag

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論