<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 消費電子 > 設計應用 > 基于VHDL的洗衣機控制器的設計

基于VHDL的洗衣機控制器的設計

作者: 時(shí)間:2016-10-29 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:為降低設計成本,縮短設計周期,提出一種基于的設計方案。該方案采用模塊化的設計思想,并使用完成控制模塊的設計。整個(gè)系統在開(kāi)發(fā)平臺上完成設計、編譯和仿真,并在硬件實(shí)驗箱上進(jìn)行測試。仿真波形和測試結果均表明該設計方案切實(shí)可行。

本文引用地址:http://dyxdggzs.com/article/201610/307110.htm

為提高洗衣機控制系統的智能性,以及定時(shí)和轉速的精確度,目前洗衣機控制系統通常采用數字電路而不是傳統的機械式控制。隨著(zhù)EDA(Electronic Design Automation,電子設計自動(dòng)化)技術(shù)的發(fā)展,采用硬件描述語(yǔ)言在EDA開(kāi)發(fā)軟件上完成電子系統的設計和仿真,并下載到可編程邏輯器件上調試已成為數字電路設計的新趨勢。

與傳統的數字電路設計方法相比,EDA技術(shù)具有以下特點(diǎn):1)用軟件方式設計硬件;2)用軟件方式設計的系統到硬件系統的轉換是由有關(guān)開(kāi)發(fā)軟件自動(dòng)完成的;3)設計過(guò)程中可用有關(guān)軟件進(jìn)行各種仿真;4)系統可現場(chǎng)編程,在線(xiàn)升級;5)整個(gè)系統可集成在一個(gè)芯片上,體積小、功耗低、可靠性高;6)設計的移植性好、效率高;7)適合分工設計、團隊協(xié)作;8)設計成本低、設計周期短?;诖?,我們使用硬件描述語(yǔ)言在EDA主流開(kāi)發(fā)軟件上完成設計、編譯和仿真,并下載到硬件實(shí)驗箱上進(jìn)行測試。測試結果表明該設計方案切實(shí)可行。

1 總體設計方案

通過(guò)對市面上的的調查,設計洗衣機控制系統需實(shí)現洗滌模式選擇,水位控制,洗滌電機控制,洗衣?tīng)顟B(tài)、水位與剩余時(shí)間顯示等功能。具體功能為:1)能對洗滌模式、水位、洗滌時(shí)間、漂洗時(shí)間、脫水時(shí)間進(jìn)行設置;2)根據不同的洗滌模式,設置不同的電機轉速;3)能通過(guò)數碼管和LED顯示燈的形式顯示水位、洗衣的剩余時(shí)間、當前洗衣的狀態(tài)等信息;4)能在洗衣過(guò)程中隨時(shí)暫停,啟動(dòng)后從暫停前狀態(tài)繼續開(kāi)始洗衣;5)能實(shí)現系統復位功能,按復位鍵后使洗衣機系統恢復到起始狀態(tài)。

基于VHDL的洗衣機控制器的設計

根據洗衣機控制器的功能,設置了4個(gè)模塊,分別是按鍵選擇模塊、計數模塊、控制模塊和時(shí)間顯示模塊,其系統框圖如圖1所示?;谀K化設計思想,采用自頂向下的層次化設計方法進(jìn)行設計,其輸入為:?jiǎn)?dòng)信號、暫停信號、各種用戶(hù)設置信號、1 Hz的計時(shí)時(shí)鐘信號和1kHz的掃描時(shí)鐘信號;其輸出為:當前狀態(tài)剩余時(shí)間顯示(2位共陰極7段數碼管顯示)、洗衣?tīng)顟B(tài)、電機控制信號、水位和進(jìn)水信號。

2 核心模塊設計

2.1 按鍵選擇模塊設計

洗衣機洗衣過(guò)程分為4階段:進(jìn)水→洗滌→漂洗→脫水。其中進(jìn)水時(shí)間由水量大小決定。水量設置為高、中、低3檔,用戶(hù)通過(guò)撥動(dòng)兩位水量設置按鍵進(jìn)行選擇。當用戶(hù)不撥動(dòng)任何按鍵時(shí),即按鍵值為00時(shí),水量設置為默認值:即中檔,4升。表1給出了水量設置按鍵與水量大小和進(jìn)水時(shí)間的對應關(guān)系。

基于VHDL的洗衣機控制器的設計

洗滌、漂洗和脫水時(shí)間由洗衣模式?jīng)Q定。我們將洗衣模式分為自動(dòng)設置和手動(dòng)設置兩種。在手動(dòng)設置時(shí),用戶(hù)通過(guò)撥動(dòng)3組手動(dòng)洗衣設置按鍵:洗滌設置按鍵、漂洗設置按鍵和脫水設置按鍵分別設置洗滌、漂洗和脫水時(shí)間。表2給出了這3組設置按鍵與洗滌、漂洗和脫水時(shí)間的對應關(guān)系。當用戶(hù)不撥動(dòng)任何按鍵時(shí),時(shí)間取默認值,即中檔(按鍵值為10時(shí)對應的時(shí)間)

基于VHDL的洗衣機控制器的設計

自動(dòng)設置模式包括:強力、常用、輕柔3種洗衣模式,用戶(hù)通過(guò)撥動(dòng)兩位自動(dòng)洗衣模式選擇鍵進(jìn)行選擇。當用戶(hù)選擇自動(dòng)設置模式時(shí),控制器將根據用戶(hù)選擇的洗衣模式自動(dòng)設置相應的洗滌時(shí)間、漂洗時(shí)間、脫水時(shí)間。表3給出了不同洗衣模式下的洗滌、漂洗和脫水時(shí)間。

基于VHDL的洗衣機控制器的設計

需要注意的是:自動(dòng)設置模式的優(yōu)先級高于手動(dòng)設置模式。若用戶(hù)誤操作,同時(shí)撥動(dòng)了自動(dòng)洗衣模式選擇鍵和手動(dòng)洗衣時(shí)間設置鍵(這種情況很容易發(fā)生),洗衣機控制器認為選擇的是自動(dòng)洗衣模式,本模塊將按選擇的自動(dòng)洗衣模式輸出相應時(shí)間和洗滌轉速到控制模塊。而當用戶(hù)不撥動(dòng)任何自動(dòng)洗衣模式選擇鍵時(shí),默認選擇手動(dòng)設置模式。有趣的是,當自動(dòng)洗衣模式選擇鍵和手動(dòng)洗衣時(shí)間設置按鍵均未撥動(dòng)時(shí),即用戶(hù)直接啟動(dòng)洗衣機,將選擇手動(dòng)設置模式的默認值(中檔)。此時(shí),洗滌、漂洗和脫水時(shí)間分別為15,20,5分鐘,而這和自動(dòng)設置模式中的常用洗衣模式完全相同。這種洗衣模式是最常用的一種模式,通過(guò)這種默認設置,用戶(hù)可以有效避免復雜的選擇,直接啟動(dòng)洗衣機洗衣。

不論是選擇什么洗衣模式,洗滌電機的邏輯控制過(guò)程始終相同:在洗衣和漂洗時(shí),電機以洗滌轉速正向連續工作5秒,暫停工作1秒,然后以相同的洗滌轉速反向連續工作5秒,暫停工作1秒,如此循環(huán)控制電機,直到洗衣和漂洗定時(shí)結束;在脫水時(shí),電機以600轉/分鐘的轉速正向連續工作5秒,暫停工作1秒,如此循環(huán)控制電機,直到脫水定時(shí)結束。洗滌電機的洗滌轉速將根據洗衣模式有所調整,其默認轉速為60轉/分鐘。當洗衣模式為強力時(shí),電機轉速增加為72轉/分鐘;當洗衣模式為輕柔時(shí),電機轉速降低為45轉/分鐘;而其他模式,包括手動(dòng)設置模式均采用默認轉速60轉/分鐘。

按鍵選擇模塊的主要功能是根據用戶(hù)撥動(dòng)的各種設置按鍵,如水量設置、自動(dòng)洗衣模式選擇、手動(dòng)洗衣時(shí)間設置,進(jìn)行匯總,按照前面所提供的各種設置按鍵與控制信息之間的關(guān)系,輸出進(jìn)水、洗、漂洗、脫水時(shí)間、洗滌轉速到控制模塊控制洗衣過(guò)程,輸出洗衣總時(shí)間到計數模塊控制計數,輸出水位信號控制水位顯示的LED燈。

2.2 計數模塊設計

計數模塊的輸入為來(lái)自按鍵選擇模塊的洗衣總時(shí)間total、1 Hz計時(shí)時(shí)鐘信號以及復位和暫停信號。計數模塊實(shí)現從0到total的計數,并輸出計數到控制模塊。計數模塊的計數初值num為零,每過(guò)一時(shí)鐘周期,計數值num加1。當num

2.3 控制模塊設計

控制模塊是洗衣機控制器的核心模塊,它根據按鍵選擇模塊輸入的各種控制信息和計時(shí)模塊輸入的計時(shí)信息控制洗衣4種狀態(tài)的轉換和電機轉速,并輸出當前洗衣?tīng)顟B(tài)、電機轉速,以及剩余時(shí)間。

洗衣四種狀態(tài)的轉換可以方便對由實(shí)現。是一種輸出由當前狀態(tài)和當前輸入決定的時(shí)序電路,它通??梢杂脿顟B(tài)轉換圖表示。使用設計狀態(tài)機不必知道電路的具體實(shí)現細節,只需在邏輯上加以描述,因此采用狀態(tài)機實(shí)現控制模塊是一種非常方便的方法。

狀態(tài)機的用VHDL實(shí)現有通用格式,它包含兩個(gè)個(gè)進(jìn)程:狀態(tài)機狀態(tài)轉換進(jìn)程Change_State和狀態(tài)機輸出進(jìn)程O(píng)utput_Process。其中狀態(tài)轉換進(jìn)程由狀態(tài)轉換圖決定,洗衣機的狀態(tài)轉換圖如圖2所示,S0、S1、S2、S3、S4分別為進(jìn)水、洗滌、漂洗、脫水以及結束狀態(tài),n0、n1、n2、n3分別表示由按鍵選擇模塊輸出的進(jìn)水、洗滌、漂洗與脫水時(shí)間,num為計數模塊輸出的洗衣機運行時(shí)間,reset為洗衣機啟動(dòng)信號。當洗衣機啟動(dòng)時(shí),即reset按鍵撥動(dòng),進(jìn)入S0狀態(tài),開(kāi)始進(jìn)水;當洗衣機運行時(shí)間num=n0時(shí),進(jìn)水完成,狀態(tài)轉為S1,開(kāi)始洗滌;當洗衣機運行時(shí)間num=n0+n1時(shí),洗滌完成,狀態(tài)轉為S2,開(kāi)始漂洗;當洗衣機運行時(shí)間num=n0+n1+n2時(shí),漂洗完成,狀態(tài)轉為S3,開(kāi)始脫水;當洗衣機運行時(shí)間num=n0+n1+n2+n3時(shí),脫水完成,狀態(tài)轉為結束狀態(tài)S4,洗衣停止。

基于VHDL的洗衣機控制器的設計

狀態(tài)轉換進(jìn)程的VHDL代碼如下:

基于VHDL的洗衣機控制器的設計

當reset=1時(shí),啟動(dòng)進(jìn)程,當前狀態(tài)state置S0。每當掃描時(shí)鐘scan_clk為上升沿時(shí),啟動(dòng)進(jìn)程,根據當前狀態(tài)state和洗衣機運行時(shí)間num,按照狀態(tài)轉換圖決定新的當前狀態(tài)。

輸出進(jìn)程通過(guò)輸出4種洗衣?tīng)顟B(tài)信號控制4個(gè)LED燈當明滅來(lái)顯示當前洗衣?tīng)顟B(tài)。輸出進(jìn)程通過(guò)輸出進(jìn)水信號控制進(jìn)水。當洗衣為進(jìn)水狀態(tài)時(shí),若暫停信號為0,則輸出進(jìn)水信號為1,開(kāi)始進(jìn)水;若暫停信號為1,輸出進(jìn)水信號為0,暫停進(jìn)水。而當洗衣為其他狀態(tài)時(shí),輸出進(jìn)水信號始終為0,停止進(jìn)水。輸出進(jìn)程通過(guò)輸出電機控制信號控制電機運行。根據洗滌電機的邏輯控制過(guò)程,當洗衣?tīng)顟B(tài)為進(jìn)水時(shí),輸出電機控制信號為零電平,表示電機暫停;當洗衣?tīng)顟B(tài)為洗滌和漂洗時(shí),輸出電機控制信號為頻率為洗滌轉速(默認60轉/分鐘,即1Hz)的方波持續5秒(默認時(shí)輸出1 Hz的方波5個(gè)),然后高電平持續1秒(控制電機極性轉向);洗衣?tīng)顟B(tài)為脫水時(shí),輸出電機控制信號為頻率為脫水轉速(600轉/分鐘,即10 Hz)的方波持續5秒(默認狀態(tài)下,輸出10 Hz的方波50個(gè)),然后零電平持續1秒(控制電機暫停)。輸出進(jìn)程根據當前狀態(tài)和洗衣機運行時(shí)間輸出當前狀態(tài)剩余時(shí)間到顯示模塊。例如,當洗衣為洗滌狀態(tài)時(shí),輸出剩余時(shí)間為n0+n1-num。

2.4 顯示模塊設計

本模塊用于在7段數碼管上顯示當前狀態(tài)剩余時(shí)間,其輸入為控制模塊輸出的當前狀態(tài)剩余時(shí)間和掃描時(shí)鐘。首先,將輸入的剩余時(shí)間由秒轉換為分鐘(四舍五入);然后進(jìn)行分位,分為個(gè)位ge和十位shi(顯然剩余時(shí)間不超過(guò)100分鐘,最多2位);最后通過(guò)動(dòng)態(tài)掃描在2個(gè)共陰極的七段數碼上交替顯示個(gè)位數字和十位數字。當交替頻率高于28 Hz時(shí),由于人眼的視覺(jué)殘留效果,這2位數字看上去是同時(shí)顯示在2個(gè)七段數碼管上。動(dòng)態(tài)掃描進(jìn)程的VHDL代碼如下:

基于VHDL的洗衣機控制器的設計

3 結束語(yǔ)

我們在軟件開(kāi)發(fā)平臺上,基于模塊化的設計思想,使用VHDL語(yǔ)言完成洗衣機控制器設計、編譯和仿真,并下載到硬件實(shí)驗箱上進(jìn)行測試。仿真波形和測試結果表明該洗衣機能正確實(shí)現各種設計功能,該設計方案切實(shí)可行。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>