洗衣機洗滌控制電路設(shè)計實例_第1頁
洗衣機洗滌控制電路設(shè)計實例_第2頁
洗衣機洗滌控制電路設(shè)計實例_第3頁
洗衣機洗滌控制電路設(shè)計實例_第4頁
洗衣機洗滌控制電路設(shè)計實例_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

洗衣機洗滌控制電路

設(shè)計實例11.1洗衣機洗滌控制電路的性能要求 11.2洗衣機洗滌控制電路的結(jié)構(gòu) 11.3洗衣機洗滌控制電路的算法狀態(tài)機圖描述11.4洗衣機洗滌控制電路的VHDL描述習題與思考題

11.1洗衣機洗滌控制電路的性能要求

1.強洗、標準、輕柔三種洗滌模式強洗周期水流控制:正向電機接通5秒后,停2秒;再反向電機接通5秒,停2秒;然后又正向電機接通5秒。如此循環(huán)控制電機,直到洗滌定時結(jié)束。標準洗周期水流控制:其過程與強洗周期水流控制相同,不同的是正向接通時間為3.5秒,停止時間為1.5秒,反向接通時間為3.5秒。輕柔洗周期水流控制:正向接通時間為2.5秒,停止時間為1.5秒,反向接通時間為2.5秒。

2.三種洗滌定時

洗衣機洗滌定時有三種選擇:5分鐘、10分鐘、15分鐘。

3.上電復位后的初始設(shè)定

初始設(shè)定為標準模式,定時時間為15分鐘。如需修改,可按模式選擇按鍵和定時選擇按鍵。每按一次按鍵轉(zhuǎn)換一次,可多次進行循環(huán)選擇。當某一次洗滌過程結(jié)束后,自動返回初始狀態(tài),等待下一次洗滌過程開始。

4.啟/??刂?/p>

洗滌過程由啟/停鍵控制。每按一次啟/停鍵,狀態(tài)轉(zhuǎn)換一次。

5.洗滌定時精度

洗滌定時誤差要求不大于0.1秒。

為簡化洗衣機洗滌控制電路設(shè)計,只要求輸出正向和反向的電機控制信號。

11.2洗衣機洗滌控制電路的結(jié)構(gòu)

根據(jù)上述對洗衣機洗滌控制電路的性能要求,可以畫出如圖11-1所示的結(jié)構(gòu)框圖。該控制器由四大部分組成:主分頻器、主控制器、洗滌定時器和水流控制器。圖11-1洗衣機洗滌控制電路的結(jié)構(gòu)框圖

1.主分頻器

主分頻器用來產(chǎn)生0.1秒的時鐘供主控制器使用。本方案使用民用的石英晶體,其振蕩頻率為76.8?kHz。這樣,主分頻器的分頻系數(shù)為7680?,F(xiàn)采用3個分頻器構(gòu)成主分頻器的分頻電路,分別是256分頻器、10分頻器和3分頻器。主分頻器的結(jié)構(gòu)如圖11-2所示。

圖11-2主分頻器的結(jié)構(gòu)

2.主控制器

主控制器的輸入信號和輸出信號如圖11-1所示,分別敘述如下:

(1)輸入信號:

reset:上電復位;

start_stop:啟/停按鍵輸入;

mode_sel:洗滌模式選擇按鍵輸入;

系統(tǒng)時鐘輸入(sysclk):76800Hz主時鐘;

timer_sel:洗滌時間選擇按鍵輸入;

timer_down:定時到輸入。

(2)輸出信號:

5min_out:5分鐘定時控制;

10min_out:10分鐘定時控制;

15min_out:15分鐘定時控制;

start_out:啟/停控制;

j_out:強水流控制;

b_out:標準水流控制;

z_out:輕柔水流控制。

主控制器的功能是根據(jù)各輸入按鍵的狀態(tài),輸出對應的控制狀態(tài)信號,控制洗滌定時器和水流控制器的工作。

3.洗滌定時器

洗滌定時器的功能是根據(jù)主控制器送來的有關(guān)控制信號,實現(xiàn)5分鐘、10分鐘和15分鐘的洗滌時間控制。其輸入和輸出信號分別如下:

(1)輸入信號:

s5min_in;

s10min_in;

s15min_in;

start_in;

reset

;

sysclk。

(2)輸出信號:

timer_on_out:定時有效;

timer_down_out:定時到。

4.水流控制器

水流控制器的功能是根據(jù)主控制器輸出的強、標準、輕柔控制信號產(chǎn)生不同的水流控制周期,控制洗衣機電機的工作,其輸入和輸出信號分別如下:

(1)輸入信號:

j_in;

b_in;

z_in;

sysclk;

clk_01;

timer_down;

reset;

timer_on。

(2)輸出信號:

off_out:電機斷開控制信號輸出;

on_out:電機接通控制信號輸出。

11.3洗衣機洗滌控制電路的算法狀態(tài)機圖描述

如圖11-1所示,洗衣機洗滌控制電路主要是控制電路和計數(shù)電路,因此直接用算法狀態(tài)機圖描述比較方便。

1.主控制器的算法狀態(tài)機圖描述

根據(jù)主控制器的工作要求,洗衣機洗滌時的工作狀態(tài)共有以下9種:

標準——15分鐘;

標準——10分鐘;

標準——5分鐘;

輕柔——15分鐘;

輕柔——10分鐘;

輕柔——5分鐘;

強洗——15分鐘;

強洗——10分鐘;

強洗——5分鐘。

如果該主控制器用9個狀態(tài)的算法狀態(tài)機圖來描述,則其狀態(tài)轉(zhuǎn)換將會變得復雜而難以處理??紤]到模式和定時選擇是相對獨立的,沒有很強的關(guān)聯(lián)性,因此,可以用3個算法狀態(tài)機圖來描述。

1)模式選擇控制狀態(tài)機圖

模式選擇控制狀態(tài)機圖如圖11-3(a)所示。

(a)模式選擇控制狀態(tài)機圖;(b)定時選擇控制狀態(tài)機圖圖11-3主控制器算法狀態(tài)機圖

復位后進入標準洗滌模式,并輸出set_b標準模式狀態(tài)信號。接著判斷定時結(jié)束timer_down是否有效。如果有效,則表明洗滌結(jié)束,set_b置“0”回到標準模式狀態(tài);如果無效,則判別模式選擇按鍵是否按下。如果未按下,則仍處于標準狀態(tài);如果已按下,則進入輕柔狀態(tài)。通過類似的操作和判別,該狀態(tài)機圖可在標準、輕柔、強洗三種模式下循環(huán)選擇和工作,并送出相應的狀態(tài)信號。

2)定時選擇控制狀態(tài)機圖

定時選擇控制狀態(tài)機圖如圖11-3(b)所示。其結(jié)構(gòu)與模式選擇控制狀態(tài)機圖一致,所不同的僅僅是狀態(tài)名、狀態(tài)輸出信號及引起狀態(tài)轉(zhuǎn)換的按鍵信號。圖中,3個狀態(tài)分別為s_5min、s_10min、s_15min;3個狀態(tài)輸出信號分別為set_5?min、set_10?min、set_15?min;按鍵輸入信號為timer_sel。

3)啟/??刂扑惴顟B(tài)機圖描述

主控制器還要產(chǎn)生啟/停控制信號。啟/停控制算法狀態(tài)機圖如圖11-4所示。

圖11-4啟/??刂扑惴顟B(tài)機圖

圖11-4中只有2種狀態(tài):停止狀態(tài)和啟動狀態(tài)。系統(tǒng)復位時進入停止狀態(tài)s_stop,當start_stop按鍵按下時,狀態(tài)轉(zhuǎn)移至啟動狀態(tài)s_start,并送出啟動控制信號start(start?=?1)。再按一下start_stop鍵,狀態(tài)回到停止狀態(tài),start控制信號置“0”,暫停洗滌工作。再按一次start_stop按鍵,系統(tǒng)又回到啟動狀態(tài)。這樣,根據(jù)需要可人為地暫停或啟動洗衣機工作。

2.洗滌定時器的算法狀態(tài)機圖描述

洗滌定時器的算法狀態(tài)機圖如圖11-5所示。

洗滌定時器有3種狀態(tài):停止狀態(tài)(IDLE)、計時狀態(tài)(INCCOUNT)和暫停狀態(tài)(TMP_STOP)。

系統(tǒng)復位后就進入停止狀態(tài)(IDLE)。在停止狀態(tài)下不斷判別啟動信號start是否為“1”。如果為“1”,則表明啟動鍵已按下,定時器開始工作,timer_on標志置“1”,轉(zhuǎn)移的下一個狀態(tài)為計數(shù)狀態(tài);否則仍留在停止狀態(tài)。

圖11-5洗滌定時器的算法狀態(tài)機圖

在計時狀態(tài)(INCCOUNT)下,先要判別啟動信號是否仍為“1”。前面已經(jīng)提到,啟/停按鍵是一個乒乓按鍵,按一次啟/停按鍵使start輸出狀態(tài)轉(zhuǎn)換一次。如果復位后按一下啟/停按鍵,使start?=

1,則定時器開始進行定時計數(shù)。如果再按一次啟/停按鍵,使start=0,則定時器處于暫時停止狀態(tài),定時計數(shù)值將被保留。如果再按一次啟/停鍵,則洗滌定時器繼續(xù)啟動,在原有計時值上進行計時。如果在計時狀態(tài)下發(fā)現(xiàn)start?=

0,則定時器進入暫停狀態(tài)(TEMP_STOP),同時timer_on置“0”,定時器停止計數(shù)。

在暫停狀態(tài)下,繼續(xù)判別start信號。如果start?=?0,則仍留在暫停狀態(tài);如果start?=

1,則表明定時器再啟動,timer_on?=

1,狀態(tài)將轉(zhuǎn)移至計時狀態(tài)。

在計時狀態(tài)下,如果start

=

1,接著判別分時鐘s1min上升沿是否到來。如果未到來,則仍停留在計時狀態(tài);若分時鐘的上升沿已到來,則分計數(shù)器就進行加1操作。接著判斷是否到了指定的定時計時值(定時計數(shù)值只有3種:5分鐘、10分鐘和15分鐘)。如果未到計時值,則仍停留在計時狀態(tài);如果到了計時值,則停止計時,timer_on?=

0,timer_down?=

1,count?=

0000,start?=

0,狀態(tài)轉(zhuǎn)移至停止狀態(tài)。

3.水流控制器的算法狀態(tài)機圖描述

水流控制器的算法狀態(tài)機圖如圖11-6所示。

該狀態(tài)機圖有3種狀態(tài):停止狀態(tài)(STOP)、電機接通定時計數(shù)狀態(tài)(ON_TIME)和電機斷開定時計數(shù)狀態(tài)(OFF_TIME)。

圖11-6水流控制器的算法狀態(tài)機圖

系統(tǒng)復位后進入停止狀態(tài),接著判斷洗滌定時器是否啟動(timer_on

=

1)。如果未啟動,則仍停留在停止狀態(tài);如果已啟動,則判別當前電機是處在接通定時計數(shù)狀態(tài),還是處在斷開定時計數(shù)狀態(tài)。根據(jù)設(shè)置不同,轉(zhuǎn)入相應的狀態(tài):ON_TIME或OFF_TIME。

在ON_TIME狀態(tài)下,判別timer_on是否繼續(xù)為“1”(因為洗滌過程有可能暫停)。如果為“1”,再判別0.1秒時鐘clk_01的上升沿是否到來。如果未到來,則停留在ON_TIME狀態(tài);如果已到來,則電機接通定時計數(shù)器加1(on_count?=?on_count+1)。下面判別定時計數(shù)值是否到規(guī)定時間值:

強洗:on_count_u=5秒

標準洗:on_count_u=3.5秒

輕柔洗:on_count_u=2.5秒

在未到規(guī)定計數(shù)值時,返回ON_TIME狀態(tài)繼續(xù)進行定時計數(shù);當計數(shù)到規(guī)定的定時值時,就使cnton_inc、clron、cntoff_inc、set_off置“1”,接著狀態(tài)轉(zhuǎn)移至電機斷開定時計數(shù)狀態(tài)OFF_TIME。

在ON_TIME狀態(tài)下,如果發(fā)現(xiàn)timer_on為“0”,表明洗滌定時過程結(jié)束,對水流控制器進行初始化,然后進入停止狀態(tài)。

電機斷開的定時計數(shù)狀態(tài)的工作過程與電機接通的定時計數(shù)狀態(tài)的工作過程類同,請讀者自行分析。

下面對標志量的含義作一說明:

set_on='1' →on_out='1'

clron='1'→on_out='0';

set_off='1' →off_out='1';

cnton_inc='1' →count_on+1;

cntoff_inc='1'→count_off+1;

如果上述這些標志量是'1',就會發(fā)生后面所示的操作。設(shè)置標志量的目的是為了編程方便,使控制操作集中在一個進程中,以避免VHDL中的“多源”描述的出現(xiàn),這一點在后面程序中就可以看到。

11.4洗衣機洗滌控制電路的VHDL描述

洗衣機洗滌控制電路由5個模塊組成:主分頻器timectr_clkdiv、定時器timer_count、定時器控制timer_ctr、水流周期控制timeronoff_ctr及洗滌定時控制電路timer_sum模塊。

1.主分頻器timectr_clkdiv模塊

主分頻器的功能是將76

800

Hz的主頻分頻為10?Hz的時鐘。該模塊由3個進程組成,其VHDL描述的程序清單如下:

div_10進程為10分頻進程,div_256進程為256分頻進程,div_3進程為3分頻進程。76800Hz主頻經(jīng)該3個進程串行分頻就得到10Hz的時鐘clk_01。

2.定時器控制timer_ctr模塊

如前所述,定時器控制timer_ctr模塊的功能是根據(jù)啟/停按鍵(start_stop)、模式選擇按鍵(mode_sel)和定時選擇按鍵(timer_sel)的不同輸入狀態(tài),產(chǎn)生對應的控制信號輸出,其VHDL描述的程序清單如下:

該模塊由4個進程組成。mode_ctr進程是模式選擇控制進程,對應圖11-3(a)所示的模式選擇控制狀態(tài)機圖;timer_ctr進程是定時選擇控制進程,對應圖11-3(b)所示的定時選擇控制狀態(tài)機圖;start_ctr進程是啟/??刂七M程,對應圖11-4所示的啟/停控制算法狀態(tài)機圖;最后一個進程是timer_ctr_update進程,它的功能是根據(jù)上述3個進程中不同的控制標志輸出,在該進程中對輸出控制信號進行刷新,其刷新頻率為系統(tǒng)主時鐘頻率(76800Hz),這樣就可確??刂频木?。

3.定時器timer_count模塊

定時器timer_count模塊的功能是根據(jù)定時控制輸出,對洗衣機的洗滌時間進行定時控制。它由3個進程構(gòu)成,其VHDL描述的程序清單如下:

count_ctr進程是定時計時進程,根據(jù)定時選擇所確定的定時時間進行計時控制,它對應圖11-5所示的洗滌定時器的算法狀態(tài)機圖。update進程是一個刷新進程,它根據(jù)count_ctr進程的輸出控制標志,對輸出控制信號進行刷新。INIT進程是對本次定時器賦初值的進程。定時器根據(jù)所賦初值的時間,實現(xiàn)洗滌時間的控制。

在timer_count清單中還含有10分頻器和60分頻器元件,這主要是為了在本模塊中得到分時鐘

溫馨提示

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

評論

0/150

提交評論