《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 電源技術(shù) > 設(shè)計應(yīng)用 > 基于FPGA的多功能空調(diào)控制器設(shè)計
基于FPGA的多功能空調(diào)控制器設(shè)計
摘要: 文中提出了基于FPGA的多功能小型家用空調(diào)控制器的設(shè)計方案。該方案具有功耗低,開發(fā)周期短,,可移植性好,升級靈活等特點,。本文主要從系統(tǒng)實現(xiàn)和軟件設(shè)計進行論述,設(shè)計已在EP1K30TC144-3芯片中通過硬件測試,運行良好。
Abstract:
Key words :

  1 引言

  今年八月,,以格力“睡夢寶”臥室空調(diào)為代表的一批性能卓越,設(shè)計人性化的空調(diào)一經(jīng)上市,,就吸引了大批消費者的目光,,但其居高不下的價格卻也讓很多普通的消費者望而卻步。
       空調(diào)市場的高價位,,除了商家基于利潤的考慮之外,,一個很重要的原因,,就是在空調(diào)的研發(fā)過程中所投入的巨額經(jīng)費,。以格蘭仕為例,公司每年拿出的科研獎勵基金就高達1000萬元[1],,其投入的研發(fā)經(jīng)費之巨也就不難想象,。如何降低設(shè)計成本,縮短研發(fā)周期,,規(guī)避前期風險投資已成為空調(diào)產(chǎn)業(yè)發(fā)展所面臨的一個重要課題,。

  基于對上述問題的思索,本文以一個小型多功能家用空調(diào)控制器的設(shè)計作為實例,,介紹一種設(shè)計簡便,,性能優(yōu)秀且能有效控制成本的FPGA解決方案。

  2 設(shè)計指標

  本設(shè)計的任務(wù)是一個具有多種工作模式和多級風速可供選擇的小型家用空調(diào)控制器,。其基本設(shè)計指標如下:

  1.系統(tǒng)上電后,,默認工作于標準模式,風速為1級,,自設(shè)溫度為22℃,,定時功能關(guān),工作狀態(tài)指示燈亮,。

  2.系統(tǒng)有四種工作模式:

  標準模式:系統(tǒng)根據(jù)用戶自設(shè)溫度與室內(nèi)溫度進行對比判斷,,驅(qū)動響應(yīng)設(shè)備工作。

  自動模式:系統(tǒng)根據(jù)室內(nèi)溫度與系統(tǒng)內(nèi)預(yù)設(shè)溫

 

度閾值進行對比判斷,,驅(qū)動響應(yīng)設(shè)備工作,。

  睡眠模式:除具有標準模式的功能外,,在該模式下系統(tǒng)能根據(jù)人體睡眠特點和夜間溫度變化情況,自動進行溫度調(diào)節(jié),。

  除濕模式:啟用該模式后,,將驅(qū)動響應(yīng)設(shè)備對室內(nèi)進行除濕操作。

  3.此外系統(tǒng)還提供四級風速供用戶選擇,,方便的溫度設(shè)定輸入,,定時,工作狀態(tài)指示等功能,。

  3 FPGA方案的引入

  長期以來,,對于這類家用空調(diào)控制器的設(shè)計,多采用單片機來實現(xiàn),,其特點是成本較低,,性能一般。但普通單片機的集成度通常較低,,如Intel公司的AT89S51僅128字節(jié)片內(nèi)數(shù)據(jù)存儲器,,32根可編程I/O口線,5個中斷源,。顯然,,要想完成較為復雜的運算和控制功能,就必須對其進行擴展,,而外部硬件電路所帶來的延時等不可預(yù)知風險,,使得擴展必須以犧牲整機性能作為代價。而且這種設(shè)計方法受制于硬件電路,,開發(fā)難度較大,。而一些商家研發(fā)的空調(diào)專用芯片,也多因技術(shù)上的壁壘,,在通用性,,升級和價格方面不具優(yōu)勢。

  FPGA作為一種新興的可編程技術(shù),,是進行原型設(shè)計最理想的載體[2],,其精確的可測試性和目前已達到的深亞微米級工藝,能較好的解決傳統(tǒng)設(shè)計方法中的諸多難題,。其豐富的編程資源和靈活的編程特性,,能將許多原本需要借助外部硬件實現(xiàn)的功能,轉(zhuǎn)化為軟件編程來完成,,使升級改進更為靈活,。而且這種設(shè)計方法能在軟件階段就對設(shè)計做出準確的預(yù)測和評估,從而能極大地提高開發(fā)效率,,有效規(guī)避前期的風險投資?,F(xiàn)代先進的FPGA工藝技術(shù),,使得FPGA在功耗和價格方面都大為降低,以工作電壓為3.3V的EPCS1SI8芯片為例,,其目前的市場價格僅在10元左右,。

  4 系統(tǒng)劃分

  FPGA技術(shù)的一個巨大優(yōu)勢,就是采用自頂向下的設(shè)計思想,,將設(shè)計模塊化處理,。為完成控制器各項功能,設(shè)計被劃分為多個模塊進行,。整個控制器的組成及各模塊之間控制關(guān)系如圖1所示,。

控制器結(jié)構(gòu)圖

  圖1 控制器結(jié)構(gòu)圖

  由圖1可知,控制器由工作模式(含模式選擇和四種工作模式),,風速選擇,,室溫設(shè)定,定時,,設(shè)備驅(qū)動等模塊構(gòu)成,。且在各模塊之間,存在明確的控制關(guān)系,。

  5 設(shè)計實現(xiàn)

  由系統(tǒng)劃分可知,,控制器的各項功能由各模塊協(xié)同完成。其中模式選擇,,室溫設(shè)定,,定時三個模塊都要接受來自外部的按鍵輸入,,經(jīng)硬件實測,,設(shè)計選用了4HZ的系統(tǒng)頻率來減少按鍵輸入過程中的抖動干擾。另外,,有限狀態(tài)機設(shè)計作為進行高效率高可靠邏輯控制的重要途徑[3],,設(shè)計中也多次運用了這一設(shè)計方法。以下分別闡釋各模塊及模塊間控制關(guān)系的設(shè)計思想和工作流程,。

  5.1 工作模式

  模式選擇由選擇控制和四種工作模式構(gòu)成,。

  選擇控制:該模塊為四種工作模式提供選通信號,通過按鍵從NORMAL開始循環(huán)切換,,驅(qū)動各模式正常工作,。該部分被設(shè)計為一個具有四種工作狀態(tài)的字符型有限狀態(tài)機,其狀態(tài)轉(zhuǎn)換控制關(guān)系如圖2所示,。

選擇控制狀態(tài)轉(zhuǎn)換圖

  圖2 選擇控制狀態(tài)轉(zhuǎn)換圖

  標準模式:該模塊將外部采集的室溫與用戶自設(shè)溫度值進行對比判斷,,確定當前室溫狀況(冷、熱或適宜),,并將該狀態(tài)信息送入驅(qū)動模塊處理,。

  自動模式:該模塊將外部采集的室溫與系統(tǒng)內(nèi)預(yù)設(shè)溫度閾值(此處設(shè)定為[17℃-26℃])進行對比判斷,,若外部采集的溫度超出該閾值,則有相應(yīng)狀態(tài)信號向驅(qū)動模塊發(fā)出,。

  睡眠模式:該模塊除具有標準模式的功能外,,為了營造一個舒適的睡眠環(huán)境,系統(tǒng)每隔1小時,,會向自設(shè)溫度模塊發(fā)出自增1℃的請求信號,,5小時后向設(shè)備驅(qū)動模塊發(fā)出關(guān)機請求。睡眠模式程序設(shè)計流程如圖3所示,。

睡眠模式設(shè)計流程圖

  圖3 睡眠模式設(shè)計流程圖

  除濕模式:該模式下除濕請求自動向設(shè)備驅(qū)動模塊發(fā)出,。

  5. 2 風速選擇

 

  風速選擇模塊由設(shè)備驅(qū)動提供選通信號,該部分由一個具有五種工作狀態(tài)的字符型有限狀態(tài)機來實現(xiàn),,通過按鍵從ST0到ST3進行循環(huán)切換,。當設(shè)備驅(qū)動模塊無設(shè)備請求輸出時,風速自動切換到ST4狀態(tài),,禁止風機工作,;當設(shè)備驅(qū)動恢復設(shè)備請求后,風速將重新切換到原來的狀態(tài),。風速選擇模塊狀態(tài)轉(zhuǎn)換控制關(guān)系如圖4所示,。

風速切換狀態(tài)轉(zhuǎn)換圖

  圖4 風速切換狀態(tài)轉(zhuǎn)換圖

  5.3 定時

  在該模塊中,通過按鍵預(yù)置關(guān)機時間(最長可設(shè)置270min),,并將關(guān)機時間送出實時顯示,,在關(guān)機時會驅(qū)動系統(tǒng)狀態(tài)指示燈進行閃爍提示。為方便用戶輸入,,節(jié)約按鍵和顯示所用硬件資源,,程序采用了映射輸入和映射顯示的設(shè)計方法,即將用戶每次按鍵以一個特定步長值(此處設(shè)為30min)在程序中替換,,并將倒計時按步長區(qū)間進行反替換輸出顯示,。該部分程序設(shè)計流程如圖5所示。

   定時模塊設(shè)計流程圖
圖5 定時模塊設(shè)計流程圖

  5.4 室溫設(shè)定

  室溫設(shè)定模塊,,由一對加減按鍵循環(huán)進行輸入,,同時也接收來自睡眠模塊的調(diào)溫請求,溫度可調(diào)區(qū)間設(shè)為[10℃-35℃],。在程序設(shè)計中,,利用VHDL不完整IF語句保持原值的特性,可很容易地實現(xiàn)自設(shè)溫度的增減功

 

能,。該模塊僅在系統(tǒng)工作于標準模式或睡眠模式時,,溫度可被設(shè)置,其余情況則將溫度復位到初始值22℃。

  5.5 設(shè)備驅(qū)動

  設(shè)備驅(qū)動模塊接收來自四種工作模式的室內(nèi)狀況信號,,經(jīng)分類處理后,,向后續(xù)設(shè)備發(fā)出響應(yīng)請求。該部分采用了一個具有四種工作狀態(tài)(采暖,、制冷,、除濕和無操作)的字符型有限狀態(tài)機來實現(xiàn)。另外,,為保護后續(xù)設(shè)備,,在狀態(tài)機的設(shè)計中引入了異常輸入的保護機制,即當設(shè)備驅(qū)動模塊判定為異常輸入時(如同時出現(xiàn)冷熱兩種室內(nèi)狀況),則立即將所有設(shè)備請求禁止,。設(shè)備驅(qū)動模塊的狀態(tài)轉(zhuǎn)換控制關(guān)系如圖6所示,。

輸出驅(qū)動狀態(tài)轉(zhuǎn)換圖

  圖6 輸出驅(qū)動狀態(tài)轉(zhuǎn)換圖

  6 設(shè)計驗證

  設(shè)計采用了具有良好可移植特性的VHDL語言進行描述,通過Altera公司的MAX+PLUSII工具軟件,,以其FPGA/ACEX1K /EP1K30TC144-3芯片作為測試載體,,進行了編譯測試和硬件驗證。

  6.1 仿真測試

  控制器整體仿真測試結(jié)果如下:

控制器仿真波形

  圖7 控制器仿真波形1
 

控制器仿真波形

圖8 控制器仿真波形2

  圖7為控制器按鍵輸入的響應(yīng)情況,,如圖所示,,隨著按鍵的按下,各種輸出正常,。圖8為控制器工作于睡眠模式,,風速為4級,定時兩小時的波形圖,,從圖中可以清晰地看到,,在關(guān)機到來時,STATE信號進行了閃爍提示,,自設(shè)溫度值也隨著時間由21℃自增為23℃,。綜合以上分析可以看出,軟件仿真達到了預(yù)期的性能指標,。

  6.2 資源使用狀況

  FPGA具有精確的可測試性,,借助功能強大的分析軟件可以在軟件設(shè)計階段就對設(shè)計做出準確的預(yù)測和評估。由MAX+PLUSII軟件分析可知,,設(shè)計中關(guān)鍵路徑的最大延時不超過20個納秒,這是一般的設(shè)計方法所不能達到的,??刂破鞯馁Y源使用情況如表1所示。

  表1 控制器資源使用狀況

  輸入引腳數(shù) 輸出引腳數(shù) 邏輯單元數(shù)

  15                 32                230

  6.3 硬件測試

  設(shè)計已于零七年十月在樂山師范學院EDA技術(shù)開發(fā)實驗平臺上通過硬件測試,,控制器各項功能工作正常,,整機運行良好,性能穩(wěn)定,,達到預(yù)期設(shè)計指標,。

  7 結(jié)束語

  FPGA技術(shù)的引入,,使得設(shè)計擺脫了硬件電路的束縛,設(shè)計者只需將更多的精力致力于軟件的設(shè)計和優(yōu)化上,,從而極大地提高了設(shè)計效率,。本設(shè)計從任務(wù)提出到最終完成硬件測試僅歷時兩個多月,這在一定程度上也證明了在空調(diào)控制器的設(shè)計中引入現(xiàn)代FPGA技術(shù)的可行性和巨大潛力,。隨著FPGA技術(shù)及其制作工藝的不斷進步,,將現(xiàn)代FPGA技術(shù)融入該類控制器的研發(fā)和生產(chǎn)之中必將大有可為。    
 

      [參考文獻]

  [1]http://xk.cn.yahoo.com/articles/070814/1/2a52_2.html. 雅虎數(shù)碼.

  [2] 黃志偉.FPGA系統(tǒng)設(shè)計與實踐[M].北京:電子工業(yè)出版社,2005.

  [3] 潘松,黃繼業(yè).EDA技術(shù)與VHDL[M].北京:清華大學出版社,2005.

  [4] 周啟,冀兆良.家用空調(diào)的現(xiàn)狀與發(fā)展趨勢[J].山西建筑,,2007,,(3):159-160.

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載,。