基于FPGA的智能熱水器設計
摘要:傳統(tǒng)電熱水器系統(tǒng)大多采用單片機作為控制核心,僅具有加熱和保溫功能,水溫不可見,水量不易控制,大多熱水器在保溫時采用開關控制,給電力系統(tǒng)帶來巨大沖擊。本系統(tǒng)選用現場可編程邏輯器件Actel Fusion系列FPGA作為控制核心,充分利用其炔磕J混合的特點實現水溫數字可視化、可預約時間等等功能,運用PID算法實現水的加熱和保兀使電力系統(tǒng)受到很小的沖擊,且該系統(tǒng)具有安全可靠、節(jié)能、高效能、性能穩(wěn)定、簡易操作的特性。
本文引用地址:http://www.ex-cimer.com/article/201610/308482.htm隨著社會的進步與發(fā)展,家庭生活的標準也在不斷提高,人們更加追求家庭生活的高度信息化、智能化。熱水器是常見的家用電器,是提供家庭沐浴用水、熱水或飲用水的電熱家電。目前市場上主要有電熱水器、太陽能熱水器、燃氣熱水器等三種。就我國的國情而言,太陽能熱水器的使用受天氣影響較大,使用范圍較窄;燃氣熱水器使用燃料,不環(huán)保;而電熱水器具有安全、無污染、使用方便、節(jié)能節(jié)水等優(yōu)點,越來越受消費者的青睞。目前市場上的電熱水器分為兩種,即熱式和貯水式,前者用水浪費較少,但由于功率太大,使用成本高,因此實際應用較少;傳統(tǒng)的貯水式電熱水器控制功能不完善、精度低、可靠性差,僅能實現燒水和保溫功能,并且會造成大量能源浪費。
1 系統(tǒng)方案設計
智能電熱水器控制系統(tǒng)的主要任務是實現對水溫的控制,主要功能有水溫測量、用于人工設定參數按鍵、水溫顯示、控制電加熱管通斷電的功率控制單元、漏電報警及安保措施等。系統(tǒng)以ACTEL FUSION系列的AS600為控制核心,外接水溫,室溫傳感器和遠程通訊控制設備,系統(tǒng)總體方案設計如圖1所示。
其中限流保護電路是為了避免傳感器絕緣層破損漏電或熱水器漏電對核心芯片造成損害。而整流電路是為了把移動通訊的模擬信號轉換為更容易被識別的高電平直流信號。水位傳感器為浮球傳感器,主要為系統(tǒng)提供5升和8升的水位信號以供確定注水時間。液晶顯示器用于顯示溫度、時間和用戶設置信息。四路驅動分別用于驅動加熱裝置和注水開關。功率放大器放大的模擬信號驅動擴音器發(fā)出水量過少的警告。
2 系統(tǒng)設計
本設計主要由模數轉換模塊、顯示及時鐘模塊、用戶信息與加熱時間計算模塊、水溫水位控制模塊四個大的模塊組成。其結構框圖如圖2所示。
2.1 模數轉換模塊
模數轉換模塊的功能主要是完成模數轉換以輸出較精確的溫度和是否有電話通知燒水的信號,實現對四路驅動的控制,包括ADC模塊、ADC配置模塊、ADC數據分離模塊、溫度變送器和遠程控制響應判斷模塊。ADC及其配置模塊完成對三路模擬信號的采樣,由數據分離模塊把各路數據分開,然后由溫度變送器傳出當前精確的室溫和水溫,最后由遠程控制響應模塊判斷是否有遠程控制通知的信號。模數轉換模塊采用TLC0831,使用LM358放大模擬信號,模數轉換、信號放大原理圖如圖3所示。
溫度傳感器測量電熱水器水箱的溫度變化,通過靈敏電阻將溫度變化變換為電信號輸送到測量電路,將信號放大到可以處理的信號,然后進行ADC。ADC將連續(xù)的模擬量通過取樣轉換成離散的數字量,將可處理的模擬信號轉換為數字信號,信號數字化是對原始信號進行數字近似。模數轉換包括采樣、量化和編碼三個過程。采樣是信號在時間上的離散化,按照一定的時間間隔在模擬信號上逐點采取瞬時值;量化是將連續(xù)幅度的抽樣信號轉換成離散時間、離散幅度的數字信號;編碼是將量化后的信號編碼成二進制代碼輸出。
編碼后二進制代碼傳輸給處理器。處理器對接收到信號與設定信號比較,采用PID控制方式進行控制,以實現對加熱量的控制。當設置溫度低于水箱內溫度,根據溫度變化的速率,減少加熱量,當設置溫度高于水箱內溫度,增加加熱量。溫度傳感器將水箱內的溫度變化經ADC送到處理器,重新判斷下一步如何調節(jié)水溫。
2.2 顯示及時鐘模塊
顯示電路主要用來設定溫度、顯示溫度、顯示水位等功能,采用液晶顯示鍵盤驅動芯片來驅動LCD顯示和接收鍵盤輸入信號。液晶顯示及鍵盤驅動芯片使用MSM6786驅動芯片。電源由主控板提供,采用三線(DATA、LOAD、CLK)串行通行模式,最大限度地減少了LCD顯示、鍵盤板與主控電路連線的數目。DATA引腳為串口通訊端口,用于輸入控制命令和需要顯示的數據或者輸出鍵盤信號;LOAD引腳用于輸入變換DATE引腳輸入/輸出狀態(tài)所需的脈沖信號;CLK引腳用于輸入串口通訊的同步時鐘信號,數據的輸入或輸出都必須與時鐘型號的上升沿同步。當按鍵狀態(tài)改變時,MSM6786自動掃描輸入狀態(tài),INT引腳的低電平信號變?yōu)楦唠娖叫盘?,向處理器請求外部中斷。電路圖如圖4所示。
時間模塊功能就是一個數字計時器,它由FPGA通過記錄基準頻率的次數決定,主要包括時間設置和時間運行計時兩個功能。
2.3 用戶信息模塊
用戶信息模塊主要完成用戶信息得設置、儲存和讀取并聯合時間模塊實現時間計算與控制,包括用戶信息設置和RAM寫操作模塊、RAM模塊、信息讀操作和數據轉換模塊和時間計算模塊。本模塊的實現方法為,信息設置模塊把用戶信息儲存在RAM內,信息讀取模塊在適當的時間讀取相應數據,根據數據計算出加熱所需要的時間,并在加熱時間到來時,輸出有有效信號和當前的有用信息給與控制模塊。
2.4 水溫水位控制模塊
水位控制包括]種水位狀態(tài),根據不同輸出電平信號判斷水箱水位,然后根據比較語句判斷結果,執(zhí)行水位狀態(tài)程序,輸出相應的操作控制信號,啟動或者暫停執(zhí)行元件實現水位的自動控制。水位控制流程圖如圖5所示。
在常規(guī)PID的應用中,P、I、D 3個參數往往根據現場設備情況或調試經驗人工設定的,通過調試參數以改變控制性能。PID控制是最早發(fā)展起來的控制策略之一,由于其算法結構清晰,參數可調,算法簡單高效,可在現場根據實際來調節(jié)比例、積分、微分3個參數來達到較好的控制效果,在溫度控制系統(tǒng)中被廣泛采用。PID控制系統(tǒng)原理如圖6所示。
完整的模擬PID算法表達式為:
(1)式中,u(t)為控制量,e(t)為偏差,即設定值與反饋值之差,Kp為比例常數,Ti為積分時間常數,Td為微分時間常數。PID算法的原理即調節(jié)Kp,Ti,Td3個參數使系統(tǒng)達到穩(wěn)定。
FPGA對信號處理前,必須將(1)式數字化,當采樣周期足夠短時,用累加求和替代積分、用向后差分代替微分,于是就得到差分方程:
式(5)即為數字PID算法公式。
Ziegler-Nichols(齊格勒-尼柯爾斯)參數整定它是在實驗階躍響應的基礎上,或者是在僅采用比例控制作用的條件下,根據臨界穩(wěn)定性中的Kp值建立起來的。當被控對象的傳遞函數可以近似為帶延遲的一階系統(tǒng):
齊格勒-尼柯爾斯給出了用表1中的公式確定kp、Ti、Td的值的方法。
用Ziegler-Nichols法則調整PID控制器,給出下列公式:
由電熱水器溫度控制系統(tǒng)的傳遞函數得:K=1.25,T=120秒,τ=122秒。
得Ti=2’=244秒,Td=61秒
根據齊格勒-尼柯爾斯參數調整法則得PID 3個參數為:
Kp=1.2T/τ=1.2 x 120/122=1.180 3
Ki=Kp/Ti=1.180 3/244=0.004 84
Kd=Kpx Td=1.180 3x61=71.998
由于FPGA不好處理浮點數,對離散信號作近似處理后得:
仿真時序如圖7:
3 結束語
基于Actel Fuions FPGA的智能熱水器控制系統(tǒng),實現了水溫、水位的檢測和智能控制,能夠適時加熱從而達到保溫效果,還可以根據水位自動上水,實現熱水器的智能控制。該系統(tǒng)也可用在太陽能熱水器上用來實現水溫顯示和液位控制,具有體積小,成本低的特點。本系統(tǒng)不但自身具有很好的穩(wěn)定性,由于其使用PID算法實現加熱保溫控制,也使得整個家庭電力系統(tǒng)受其沖擊很小。本文的最大創(chuàng)新點在于可以預設時間、可以遠程控制燒水、可以自動調節(jié)水溫和水位,這樣可以為家庭甚至國家節(jié)約很多能源和水資源。
評論