基于FPGA的多功能空調(diào)控制器設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
1 引言
今年八月,以格力“睡夢(mèng)寶”臥室空調(diào)為代表的一批性能卓越,設(shè)計(jì)人性化的空調(diào)一經(jīng)上市,就吸引了大批消費(fèi)者的目光,但其居高不下的價(jià)格卻也讓很多普通的消費(fèi)者望而卻步。
空調(diào)市場(chǎng)的高價(jià)位,除了商家基于利潤的考慮之外,一個(gè)很重要的原因,就是在空調(diào)的研發(fā)過程中所投入的巨額經(jīng)費(fèi)。以格蘭仕為例,公司每年拿出的科研獎(jiǎng)勵(lì)基金就高達(dá)1000萬元[1],其投入的研發(fā)經(jīng)費(fèi)之巨也就不難想象。如何降低設(shè)計(jì)成本,縮短研發(fā)周期,規(guī)避前期風(fēng)險(xiǎn)投資已成為空調(diào)產(chǎn)業(yè)發(fā)展所面臨的一個(gè)重要課題。
基于對(duì)上述問題的思索,本文以一個(gè)小型多功能家用空調(diào)控制器的設(shè)計(jì)作為實(shí)例,介紹一種設(shè)計(jì)簡(jiǎn)便,性能優(yōu)秀且能有效控制成本的FPGA解決方案。
2 設(shè)計(jì)指標(biāo)
本設(shè)計(jì)的任務(wù)是一個(gè)具有多種工作模式和多級(jí)風(fēng)速可供選擇的小型家用空調(diào)控制器。其基本設(shè)計(jì)指標(biāo)如下:
1.系統(tǒng)上電后,默認(rèn)工作于標(biāo)準(zhǔn)模式,風(fēng)速為1級(jí),自設(shè)溫度為22℃,定時(shí)功能關(guān),工作狀態(tài)指示燈亮。
2.系統(tǒng)有四種工作模式:
標(biāo)準(zhǔn)模式:系統(tǒng)根據(jù)用戶自設(shè)溫度與室內(nèi)溫度進(jìn)行對(duì)比判斷,驅(qū)動(dòng)響應(yīng)設(shè)備工作。
自動(dòng)模式:系統(tǒng)根據(jù)室內(nèi)溫度與系統(tǒng)內(nèi)預(yù)設(shè)溫
度閾值進(jìn)行對(duì)比判斷,驅(qū)動(dòng)響應(yīng)設(shè)備工作。
睡眠模式:除具有標(biāo)準(zhǔn)模式的功能外,在該模式下系統(tǒng)能根據(jù)人體睡眠特點(diǎn)和夜間溫度變化情況,自動(dòng)進(jìn)行溫度調(diào)節(jié)。
除濕模式:?jiǎn)⒂迷撃J胶?,將?qū)動(dòng)響應(yīng)設(shè)備對(duì)室內(nèi)進(jìn)行除濕操作。
3.此外系統(tǒng)還提供四級(jí)風(fēng)速供用戶選擇,方便的溫度設(shè)定輸入,定時(shí),工作狀態(tài)指示等功能。
3 FPGA方案的引入
長期以來,對(duì)于這類家用空調(diào)控制器的設(shè)計(jì),多采用單片機(jī)來實(shí)現(xiàn),其特點(diǎn)是成本較低,性能一般。但普通單片機(jī)的集成度通常較低,如Intel公司的AT89S51僅128字節(jié)片內(nèi)數(shù)據(jù)存儲(chǔ)器,32根可編程I/O口線,5個(gè)中斷源。顯然,要想完成較為復(fù)雜的運(yùn)算和控制功能,就必須對(duì)其進(jìn)行擴(kuò)展,而外部硬件電路所帶來的延時(shí)等不可預(yù)知風(fēng)險(xiǎn),使得擴(kuò)展必須以犧牲整機(jī)性能作為代價(jià)。而且這種設(shè)計(jì)方法受制于硬件電路,開發(fā)難度較大。而一些商家研發(fā)的空調(diào)專用芯片,也多因技術(shù)上的壁壘,在通用性,升級(jí)和價(jià)格方面不具優(yōu)勢(shì)。
FPGA作為一種新興的可編程技術(shù),是進(jìn)行原型設(shè)計(jì)最理想的載體[2],其精確的可測(cè)試性和目前已達(dá)到的深亞微米級(jí)工藝,能較好的解決傳統(tǒng)設(shè)計(jì)方法中的諸多難題。其豐富的編程資源和靈活的編程特性,能將許多原本需要借助外部硬件實(shí)現(xiàn)的功能,轉(zhuǎn)化為軟件編程來完成,使升級(jí)改進(jìn)更為靈活。而且這種設(shè)計(jì)方法能在軟件階段就對(duì)設(shè)計(jì)做出準(zhǔn)確的預(yù)測(cè)和評(píng)估,從而能極大地提高開發(fā)效率,有效規(guī)避前期的風(fēng)險(xiǎn)投資?,F(xiàn)代先進(jìn)的FPGA工藝技術(shù),使得FPGA在功耗和價(jià)格方面都大為降低,以工作電壓為3.3V的EPCS1SI8芯片為例,其目前的市場(chǎng)價(jià)格僅在10元左右。
4 系統(tǒng)劃分
FPGA技術(shù)的一個(gè)巨大優(yōu)勢(shì),就是采用自頂向下的設(shè)計(jì)思想,將設(shè)計(jì)模塊化處理。為完成控制器各項(xiàng)功能,設(shè)計(jì)被劃分為多個(gè)模塊進(jìn)行。整個(gè)控制器的組成及各模塊之間控制關(guān)系如圖1所示。
圖1 控制器結(jié)構(gòu)圖
由圖1可知,控制器由工作模式(含模式選擇和四種工作模式),風(fēng)速選擇,室溫設(shè)定,定時(shí),設(shè)備驅(qū)動(dòng)等模塊構(gòu)成。且在各模塊之間,存在明確的控制關(guān)系。
5 設(shè)計(jì)實(shí)現(xiàn)
由系統(tǒng)劃分可知,控制器的各項(xiàng)功能由各模塊協(xié)同完成。其中模式選擇,室溫設(shè)定,定時(shí)三個(gè)模塊都要接受來自外部的按鍵輸入,經(jīng)硬件實(shí)測(cè),設(shè)計(jì)選用了4HZ的系統(tǒng)頻率來減少按鍵輸入過程中的抖動(dòng)干擾。另外,有限狀態(tài)機(jī)設(shè)計(jì)作為進(jìn)行高效率高可靠邏輯控制的重要途徑[3],設(shè)計(jì)中也多次運(yùn)用了這一設(shè)計(jì)方法。以下分別闡釋各模塊及模塊間控制關(guān)系的設(shè)計(jì)思想和工作流程。
5.1 工作模式
模式選擇由選擇控制和四種工作模式構(gòu)成。
選擇控制:該模塊為四種工作模式提供選通信號(hào),通過按鍵從NORMAL開始循環(huán)切換,驅(qū)動(dòng)各模式正常工作。該部分被設(shè)計(jì)為一個(gè)具有四種工作狀態(tài)的字符型有限狀態(tài)機(jī),其狀態(tài)轉(zhuǎn)換控制關(guān)系如圖2所示。
圖2 選擇控制狀態(tài)轉(zhuǎn)換圖
標(biāo)準(zhǔn)模式:該模塊將外部采集的室溫與用戶自設(shè)溫度值進(jìn)行對(duì)比判斷,確定當(dāng)前室溫狀況(冷、熱或適宜),并將該狀態(tài)信息送入驅(qū)動(dòng)模塊處理。
自動(dòng)模式:該模塊將外部采集的室溫與系統(tǒng)內(nèi)預(yù)設(shè)溫度閾值(此處設(shè)定為[17℃-26℃])進(jìn)行對(duì)比判斷,若外部采集的溫度超出該閾值,則有相應(yīng)狀態(tài)信號(hào)向驅(qū)動(dòng)模塊發(fā)出。
睡眠模式:該模塊除具有標(biāo)準(zhǔn)模式的功能外,為了營造一個(gè)舒適的睡眠環(huán)境,系統(tǒng)每隔1小時(shí),會(huì)向自設(shè)溫度模塊發(fā)出自增1℃的請(qǐng)求信號(hào),5小時(shí)后向設(shè)備驅(qū)動(dòng)模塊發(fā)出關(guān)機(jī)請(qǐng)求。睡眠模式程序設(shè)計(jì)流程如圖3所示。
圖3 睡眠模式設(shè)計(jì)流程圖
除濕模式:該模式下除濕請(qǐng)求自動(dòng)向設(shè)備驅(qū)動(dòng)模塊發(fā)出。
5. 2 風(fēng)速選擇
風(fēng)速選擇模塊由設(shè)備驅(qū)動(dòng)提供選通信號(hào),該部分由一個(gè)具有五種工作狀態(tài)的字符型有限狀態(tài)機(jī)來實(shí)現(xiàn),通過按鍵從ST0到ST3進(jìn)行循環(huán)切換。當(dāng)設(shè)備驅(qū)動(dòng)模塊無設(shè)備請(qǐng)求輸出時(shí),風(fēng)速自動(dòng)切換到ST4狀態(tài),禁止風(fēng)機(jī)工作;當(dāng)設(shè)備驅(qū)動(dòng)恢復(fù)設(shè)備請(qǐng)求后,風(fēng)速將重新切換到原來的狀態(tài)。風(fēng)速選擇模塊狀態(tài)轉(zhuǎn)換控制關(guān)系如圖4所示。
圖4 風(fēng)速切換狀態(tài)轉(zhuǎn)換圖
5.3 定時(shí)
在該模塊中,通過按鍵預(yù)置關(guān)機(jī)時(shí)間(最長可設(shè)置270min),并將關(guān)機(jī)時(shí)間送出實(shí)時(shí)顯示,在關(guān)機(jī)時(shí)會(huì)驅(qū)動(dòng)系統(tǒng)狀態(tài)指示燈進(jìn)行閃爍提示。為方便用戶輸入,節(jié)約按鍵和顯示所用硬件資源,程序采用了映射輸入和映射顯示的設(shè)計(jì)方法,即將用戶每次按鍵以一個(gè)特定步長值(此處設(shè)為30min)在程序中替換,并將倒計(jì)時(shí)按步長區(qū)間進(jìn)行反替換輸出顯示。該部分程序設(shè)計(jì)流程如圖5所示。
圖5 定時(shí)模塊設(shè)計(jì)流程圖
5.4 室溫設(shè)定
室溫設(shè)定模塊,由一對(duì)加減按鍵循環(huán)進(jìn)行輸入,同時(shí)也接收來自睡眠模塊的調(diào)溫請(qǐng)求,溫度可調(diào)區(qū)間設(shè)為[10℃-35℃]。在程序設(shè)計(jì)中,利用VHDL不完整IF語句保持原值的特性,可很容易地實(shí)現(xiàn)自設(shè)溫度的增減功能。該模塊僅在系統(tǒng)工作于標(biāo)準(zhǔn)模式或睡眠模式時(shí),溫度可被設(shè)置,其余情況則將溫度復(fù)位到初始值22℃。
5.5 設(shè)備驅(qū)動(dòng)
設(shè)備驅(qū)動(dòng)模塊接收來自四種工作模式的室內(nèi)狀況信號(hào),經(jīng)分類處理后,向后續(xù)設(shè)備發(fā)出響應(yīng)請(qǐng)求。該部分采用了一個(gè)具有四種工作狀態(tài)(采暖、制冷、除濕和無操作)的字符型有限狀態(tài)機(jī)來實(shí)現(xiàn)。另外,為保護(hù)后續(xù)設(shè)備,在狀態(tài)機(jī)的設(shè)計(jì)中引入了異常輸入的保護(hù)機(jī)制,即當(dāng)設(shè)備驅(qū)動(dòng)模塊判定為異常輸入時(shí)(如同時(shí)出現(xiàn)冷熱兩種室內(nèi)狀況),則立即將所有設(shè)備請(qǐng)求禁止。設(shè)備驅(qū)動(dòng)模塊的狀態(tài)轉(zhuǎn)換控制關(guān)系如圖6所示。
圖6 輸出驅(qū)動(dòng)狀態(tài)轉(zhuǎn)換圖
6 設(shè)計(jì)驗(yàn)證
設(shè)計(jì)采用了具有良好可移植特性的VHDL語言進(jìn)行描述,通過Altera公司的MAX+PLUSII工具軟件,以其FPGA/ACEX1K /EP1K30TC144-3芯片作為測(cè)試載體,進(jìn)行了編譯測(cè)試和硬件驗(yàn)證。
6.1 仿真測(cè)試
控制器整體仿真測(cè)試結(jié)果如下:
圖7 控制器仿真波形1
圖8 控制器仿真波形2
圖7為控制器按鍵輸入的響應(yīng)情況,如圖所示,隨著按鍵的按下,各種輸出正常。圖8為控制器工作于睡眠模式,風(fēng)速為4級(jí),定時(shí)兩小時(shí)的波形圖,從圖中可以清晰地看到,在關(guān)機(jī)到來時(shí),STATE信號(hào)進(jìn)行了閃爍提示,自設(shè)溫度值也隨著時(shí)間由21℃自增為23℃。綜合以上分析可以看出,軟件仿真達(dá)到了預(yù)期的性能指標(biāo)。
6.2 資源使用狀況
FPGA具有精確的可測(cè)試性,借助功能強(qiáng)大的分析軟件可以在軟件設(shè)計(jì)階段就對(duì)設(shè)計(jì)做出準(zhǔn)確的預(yù)測(cè)和評(píng)估。由MAX+PLUSII軟件分析可知,設(shè)計(jì)中關(guān)鍵路徑的最大延時(shí)不超過20個(gè)納秒,這是一般的設(shè)計(jì)方法所不能達(dá)到的??刂破鞯馁Y源使用情況如表1所示。
表1 控制器資源使用狀況
輸入引腳數(shù) 輸出引腳數(shù) 邏輯單元數(shù)
15 32 230
6.3 硬件測(cè)試
設(shè)計(jì)已于零七年十月在樂山師范學(xué)院EDA技術(shù)開發(fā)實(shí)驗(yàn)平臺(tái)上通過硬件測(cè)試,控制器各項(xiàng)功能工作正常,整機(jī)運(yùn)行良好,性能穩(wěn)定,達(dá)到預(yù)期設(shè)計(jì)指標(biāo)。
7 結(jié)束語
FPGA技術(shù)的引入,使得設(shè)計(jì)擺脫了硬件電路的束縛,設(shè)計(jì)者只需將更多的精力致力于軟件的設(shè)計(jì)和優(yōu)化上,從而極大地提高了設(shè)計(jì)效率。本設(shè)計(jì)從任務(wù)提出到最終完成硬件測(cè)試僅歷時(shí)兩個(gè)多月,這在一定程度上也證明了在空調(diào)控制器的設(shè)計(jì)中引入現(xiàn)代FPGA技術(shù)的可行性和巨大潛力。隨著FPGA技術(shù)及其制作工藝的不斷進(jìn)步,將現(xiàn)代FPGA技術(shù)融入該類控制器的研發(fā)和生產(chǎn)之中必將大有可為。
[參考文獻(xiàn)]
[1]http://xk.cn.yahoo.com/articles/070814/1/2a52_2.html. 雅虎數(shù)碼.
[2] 黃志偉.FPGA系統(tǒng)設(shè)計(jì)與實(shí)踐[M].北京:電子工業(yè)出版社,2005.
[3] 潘松,黃繼業(yè).EDA技術(shù)與VHDL[M].北京:清華大學(xué)出版社,2005.
[4] 周啟,冀兆良.家用空調(diào)的現(xiàn)狀與發(fā)展趨勢(shì)[J].山西建筑,2007,(3):159-160.