EDA課程設(shè)計(jì)洗衣機(jī)控制器_第1頁(yè)
EDA課程設(shè)計(jì)洗衣機(jī)控制器_第2頁(yè)
EDA課程設(shè)計(jì)洗衣機(jī)控制器_第3頁(yè)
EDA課程設(shè)計(jì)洗衣機(jī)控制器_第4頁(yè)
EDA課程設(shè)計(jì)洗衣機(jī)控制器_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

東北石油大學(xué)課程設(shè)計(jì)課 程 EDA技術(shù)課程設(shè)計(jì)題 目 洗衣機(jī)控制器 院 系 電子科學(xué)學(xué)院 專業(yè)班級(jí) 電子信息工程 學(xué)生姓名 學(xué)生學(xué)號(hào) 指導(dǎo)教師 2014年3月7日東北石油大學(xué)課程設(shè)計(jì)任務(wù)書課程EDA技術(shù)課程設(shè)計(jì) 題目洗衣機(jī)控制器 專業(yè) 學(xué)號(hào) 主要容、基本要求、主要參考資料等主要容:設(shè)計(jì)一個(gè)洗衣機(jī)控制器,要求洗衣機(jī)有正轉(zhuǎn)、反轉(zhuǎn)、暫停三種狀態(tài)。設(shè)定洗衣機(jī)的工作時(shí)間,要洗衣機(jī)在工作時(shí)間完成:定時(shí)啟動(dòng)T正轉(zhuǎn)20秒T暫停10秒T反轉(zhuǎn)20秒T暫停10秒T定時(shí)未到回到“正轉(zhuǎn)20秒T暫停10秒T ",定時(shí)到則停止,同時(shí)發(fā)出提示音?;疽螅?、 設(shè)計(jì)一個(gè)電子定時(shí)器,控制洗衣機(jī)作如下運(yùn)轉(zhuǎn):定時(shí)啟動(dòng)T正轉(zhuǎn)20秒T暫停10秒T反轉(zhuǎn)20秒T暫停10秒T定時(shí)未到回到“正轉(zhuǎn)20秒T暫停10秒T ",定時(shí)到則停止;2、 若定時(shí)到,則停機(jī)發(fā)出音響信號(hào);3、 用兩個(gè)數(shù)碼管顯示洗滌的預(yù)置時(shí)間(分鐘數(shù)),按倒計(jì)時(shí)方式對(duì)洗滌過程作計(jì)時(shí)顯示,直到時(shí)間到停機(jī);洗滌過程由“開始”信號(hào)開始;4、 三只LED燈表示“正轉(zhuǎn)”、“反轉(zhuǎn)”、“暫停”三個(gè)狀態(tài)。主要參考資料:松著.EDA技術(shù)實(shí)用教程(第二版).:科學(xué),2005.康華光主編.電子技術(shù)基礎(chǔ)模擬部分.:高教,2006.閻石主編.數(shù)字電子技術(shù)基礎(chǔ).:高教,2003.完成期限 指導(dǎo)教師 專業(yè)負(fù)責(zé)人 2014年3月3日一、設(shè)計(jì)思想1.基本原理洗衣機(jī)控制器的設(shè)計(jì)主要是定時(shí)器的設(shè)計(jì)。由一片F(xiàn)PGA和外圍電路構(gòu)成了電器控制部分。FPGA接收鍵盤的控制命令,控制洗衣機(jī)的進(jìn)水、排水、水位和洗衣機(jī)的工作狀態(tài)、并控制顯示工作狀態(tài)以及設(shè)定直流電機(jī)速度、正反轉(zhuǎn)控制、制動(dòng)控制、起??刂坪瓦\(yùn)動(dòng)狀態(tài)控制。對(duì)芯片的編程采用模塊化的VHDL(硬件描述語(yǔ)言)進(jìn)行設(shè)計(jì),設(shè)計(jì)分為三層實(shí)現(xiàn),頂層實(shí)現(xiàn)整個(gè)芯片的功能。頂層和中間層多數(shù)是由VHDL的元件例化語(yǔ)句實(shí)現(xiàn)。中間層由無刷直流電機(jī)控制、運(yùn)行模式選擇、洗滌模式選擇、定時(shí)器、顯示控制、鍵盤掃描、水位控制以及對(duì)直流電機(jī)控制板進(jìn)行速度設(shè)定、正反轉(zhuǎn)控制、啟??刂频饶K組成,它們分別調(diào)用底層模塊。2.設(shè)計(jì)框圖圖1設(shè)計(jì)框圖用兩位數(shù)碼管預(yù)置洗滌時(shí)間(分鐘數(shù)),洗滌過程在送入預(yù)置時(shí)間后開始運(yùn)轉(zhuǎn),洗滌中按倒計(jì)時(shí)方式對(duì)洗滌過程作計(jì)時(shí)顯示,用LED表示電動(dòng)機(jī)的正、反轉(zhuǎn),如果定時(shí)時(shí)間到,則停機(jī)并發(fā)出音響信號(hào)。二、設(shè)計(jì)步驟和調(diào)試過程1、模塊設(shè)計(jì)和相應(yīng)模塊代碼洗衣機(jī)控制器電路主要有五大部分組成,包括:減法計(jì)數(shù)器、時(shí)序控制電路、預(yù)置時(shí)間和編碼電路、數(shù)碼管顯示、譯碼器組成。(1)預(yù)設(shè)時(shí)間和編碼電路:本模塊將輸入的四位時(shí)間信號(hào)編碼成八位二進(jìn)制數(shù)輸出到減法計(jì)數(shù)器電路。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitysettimeisport(load:instd_logic;time_input:instd_logic_vector(3downto0);time_set:outstd_logic_vector(7downto0));endsettime;architecturesettimeofsettimeissignalp1:std_logic_vector(7downto0);beginprocess(load)beginif(load'eventandload='1')thencasetime_inputiswhen"0000"=>pl〈二"00000000";when"0001"=>pl〈二"00000001";when"0010"=>p1〈二"00000010";when"0011"=>p1<="00000011";when"0100"=>p1<="00000100";when"0101"=>p1<="00000101";when"0110"=>p1<="00000110";when"0111"=>p1<="00000111";when"1000"=>p1<="00001000";when"1001"=>p1<="00001001";whenothers二〉p1〈二"00000000";endcase;endif;endprocesstime_set<二p1;endsettime;tpMmitaBTm Dgn 丄皿帀 bfilnrri 749m: ftari! End圖2預(yù)設(shè)時(shí)間和編碼仿真用K1、K2、K3、K4給time_input輸入一個(gè)二進(jìn)制數(shù)0111,讓load有效,輸出time_set為00000111。減法計(jì)數(shù)器模塊:由于洗衣機(jī)有工作時(shí)間,必須要一模塊來控制它的工作時(shí)間圍,當(dāng)洗衣機(jī)開始工作后,減法計(jì)數(shù)器即會(huì)實(shí)現(xiàn)減數(shù)功能,直到時(shí)間減到零,洗衣機(jī)便停止工作。當(dāng)出現(xiàn)系統(tǒng)運(yùn)行結(jié)束信號(hào)time_over時(shí),蜂鳴器報(bào)警洗衣機(jī)工作結(jié)束。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycounterisport(clk,start:instd_logic;time_set:instd_logic_vector(7downto0);time_remain:bufferstd_logic_vector(7downto0);time_over:bufferstd_logic);endcounter;architecturecounterofcounterisbeginprocess(clk)variabletime_second:integerrange0to59:=59;beginif(clk'eventandclk='1')thenif(start='0')thenif(time_remain(7downto0)=0)thentime_remain<=time_set;elsetime_remain(7downto4)<=time_remain(3downto0);time_remain(3downto0)<=time_set(3downto0);endif;time_second:=59;time_over<='1';elseif(time_over='1')thenif(time_second=0andtime_remain(7downto0)=0)thentime_over<='0';elseif(time_second=0)thenif(time_remain(3downto0)=0)thentime_remain(7downto4)<=time_remain(7downto4)-1;time_remain(3downto0)<="1001";time_second:=59;elsetime_remain(7downto4)<=time_remain(7downto4);time_remain(3downto0)<=time_remain(3downto0)-1;time_second:=59;endif;elsetime_second:=time_second-1;endif;endif;endif;endif;endif;endprocess;

endcounter;(3)數(shù)碼管顯示模塊:根據(jù)課程設(shè)計(jì)要求,必須將洗衣機(jī)的工作狀態(tài)及工endcounter;(3)數(shù)碼管顯示模塊:根據(jù)課程設(shè)計(jì)要求,必須將洗衣機(jī)的工作狀態(tài)及工作時(shí)間在數(shù)碼管和指示燈上顯示出來,此模塊是用來控制洗衣機(jī)的工作狀態(tài)及工作的頻率,并把工作狀態(tài)及工作時(shí)間顯示出來。a,b,c,d,e,f,g分別對(duì)應(yīng)數(shù)碼管的七段,minute和second分別位選兩個(gè)數(shù)碼管,顯示十位和個(gè)位。libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityshowtimeisport(time_remain:instd_logic_vector(7downto0);clk:instd_logic;minute,second:outstd_logic;a,b,c,d,e,f,g:outstd_logic);endshowtime;architectureshowtimeofshowtimeissignaltemp:std_logic_vector(6downto0);signalbcd:std_logic_vector(3downto0);signalchoose:std_logic;beginprocess(clk)beginif(clk'eventandclk='1')thenchoose<=notchoose;if(choose='1')then

minute<='0';second<='1';bcd<=time_remain(7downto4);elseminute<='1';second<='0';bcd<=time_remain(3downto0);endif;endif;endprocess;process(bcd)

casebediswhen"0000"=>temp<="1111110";when"0001"=>temp<="0110000";when"0010"=>temp<="1101101";when"0011"=>temp<="1111001";when"0100"=>temp<="0110011";when"0101"=>temp<="1011011";when"0110"=>temp<="1011111";when"0111"=>temp<="1110000";when"1000"=>temp<="1111111";when"1001"=>temp<="1111011";whenothers=>temp<="1111011";e<=temp(2);endcase;e<=temp(2);a<=temp(6);b<=temp(5);c<=temp(4);d<=temp(3)f<=temp(1);g<=temp(0)endprocessendshowtime圖4數(shù)碼管模塊仿真(4)時(shí)序電路模塊:接收運(yùn)行起止信號(hào),安排電機(jī)運(yùn)行狀態(tài)并編碼輸出libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityanalyseisport(clk,start,time_over:instd_logic;

out_1,out_2:outstd_logic );endanalyse;architectureanalyseofanalyseisbeginprocess(clk)variablestate:std_logic;variablewash_time:integer:=0;variablewait_time:integer:=0;if(clk'eventandclk='1')thenif(start='0')thenwash_time:=0;wait_time:=0;state:='0';out_1<='0';out_2<='0';elseif(time_over='1')thenif(wash_time=20)thenif(wait_time=10)thenwash_time:=0;state:=notstate;elsewait_time:=wait_time+1;endif;elsewash_time:=wash_time+1;

wait_time:=0;endif;endif;if(wash_time=20)thenout_l〈二'0';out_2〈二'0';elseif(state='0')thenout_1<='1';out_2<='0';elseout_1<='0';out_2<='1';endif;endif;endif;endif;endprocess;endanalyse;■I755raSuit1M.Ikl=沏endprocess;endanalyse;■I755raSuit1M.Ikl=沏L-341fl d*SB W.pm 240pm 3BDau KDQm. m 如燈口匸 ■?□曰x 13?C11. 3m EDnn. BHDDklJajinnr『1th0□.--■AQAbaJKlirert圖5時(shí)序電路模塊仿真:(5)譯碼器模塊:接收電機(jī)運(yùn)行狀態(tài)信號(hào),譯碼后實(shí)時(shí)控制電機(jī)的正傳、反轉(zhuǎn)和暫停。libraryieee;useieee.std_logic_1164.all;entitymoveisport(out_1,out_2:instd_logic;REV,RUN,PAUSE:bufferstd_logic);endmove;architecturemoveofmoveissignalchoose:std_logic_vector(1downto0);beginchoose(1)<=out_1;choose(0)<=out_2;process(choose)begincasechooseiswhen"00"=>REV<='0';RUN<='0';PAUSE<='1';when"10"=>REV<='0';RUN<='1';PAUSE<='0';when"01"=>REV<='1';RUN<='0';PAUSE<='0';whenothers=>REV<='0';RUN<='0';PAUSE<='0';endcase;REV<=out_2;RUN<=out_1;PAUSE<=not(out_1orout_2);endprocess;endmove;圖6譯碼器模塊仿真:2、仿真及仿真結(jié)果分析當(dāng)預(yù)置號(hào)時(shí)間,啟動(dòng)start,數(shù)碼管顯示預(yù)置時(shí)間,電機(jī)開始以正轉(zhuǎn)=>暫停二〉反轉(zhuǎn)二〉暫停為周期進(jìn)行循環(huán),一個(gè)周期正好費(fèi)時(shí)一分鐘,一個(gè)周期結(jié)束,數(shù)碼管顯示減一,依次循環(huán),直至數(shù)碼管顯示時(shí)間為零,洗衣結(jié)束。EmL<sgaajw.l^lAFTFIEauaiuL<sgaajw.l^lAFTFIEnnnnnnjmnnRftnjmFirwwuwiAnnnflfliwnjMinnnffiuMuiinmnfuimmnwvwwinjmumuinnnnnjuinnjuinjuimnniUUZUXruuuurLirLrLrLJjnJtrLjnjiJijriruuTiJTJTULrLrLnLruiJUT_r_rurrLi_rLn_ri-Lr_rL~vr^-LrLn^_rm_n_rLrLrL7T_HJT_n_rLrLi LrLrLr_rUWWUUVUWVj"eUWLrLSrVi_rmPVvWLrLrLrL5rL嚴(yán)■ LrLrLrLrLrLrLrLrLrLrLTLn[?ill1isR9

■SV[?ill1isR9

■SV-i*rw4jTRnj^njuiJU^rirLrLn"LrvmjvirLrirLrLruuvirLrLrLnjirLriEirLrLrLrLrLrLruuuw.rinjirLrLrLrunrwLrLrLrvLrurLrLrLrLrLrLrLrurLrLrLrLrwwwuuirLrLrLrLrLrLrLrLrLjijnji■J…L圖7總體仿真3、實(shí)驗(yàn)調(diào)試結(jié)果電路設(shè)計(jì)完成以后,按照預(yù)定設(shè)計(jì),輸入相應(yīng)數(shù)據(jù),三只LED燈按照設(shè)定時(shí)間規(guī)律間斷性亮起,數(shù)碼管也顯示輸入時(shí)間并按減數(shù)計(jì)時(shí)產(chǎn)生相應(yīng)的數(shù)字顯示,

溫馨提示

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

評(píng)論

0/150

提交評(píng)論