引言
AFS600是Actel公司推出的混合信號(hào)FPGA芯片,,它將模擬ADC,、DAC、RC振蕩器等嵌入到數(shù)字FPGA中,。AFS600是片上系統(tǒng) (SoC)設(shè)計(jì)的首選,,其內(nèi)部可嵌入8051單片機(jī)內(nèi)核,大大擴(kuò)展了其應(yīng)用范圍,。本文以AFS600為核心,,實(shí)現(xiàn)了太陽能熱水器的控制器系統(tǒng)。與目前采用微處理器,、PLC或FPGA芯片設(shè)計(jì)的系統(tǒng)相比,,該系統(tǒng)具有結(jié)構(gòu)簡(jiǎn)單、外圍元件少,、穩(wěn)定性高等優(yōu)點(diǎn),。
1 系統(tǒng)結(jié)構(gòu)
太陽能熱水器的控制結(jié)構(gòu)是根據(jù)熱水器的上水通道與熱水通道設(shè)計(jì)的,包括閥門控制,、傳感器的配置等,。
1.1 系統(tǒng)控制結(jié)構(gòu)
太陽能熱水器的控制系統(tǒng)分為主控制器和水箱控制兩部分。主控制器完成水溫水位的顯示,、控制操作,,以及熱/冷水的溫度、壓力參數(shù)的采集,、處理與控制,;水箱控制部分完成水箱水位、水溫的檢測(cè),,以及電加熱控制器的控制,。水箱控制部分通過數(shù)據(jù)線與主控制器的串口連接,實(shí)現(xiàn)主控制器對(duì)相關(guān)功能的控制與管理,。完整的水循環(huán)結(jié)構(gòu)及其閥門,、傳感器的配置如圖1所示。
通常,,系統(tǒng)中的3個(gè)電磁閥為關(guān)閉狀態(tài),;當(dāng)接受上水指令后,,上水電磁閥打開,,自來水經(jīng)過三通由上水電磁閥流向水箱,此時(shí)電動(dòng)節(jié)流閥和熱水電磁閥仍處于關(guān)閉狀態(tài);當(dāng)接受淋浴指令后,,熱水電磁閥打開,,熱水流出,電動(dòng)節(jié)流閥根據(jù)設(shè)定的淋浴溫度自動(dòng)開啟合適的角度,。
太陽能熱水器一般來說配有輔助控制裝置,,例如水箱內(nèi)增加一個(gè)電加熱器來輔助加熱,水位,、水溫探測(cè)器安裝在水箱中以檢測(cè)水箱中的水位高度和水溫,,并通過纜線接人控制器顯示。水流量的大小控制是通過步進(jìn)電機(jī)精確控制節(jié)流閥實(shí)現(xiàn)的,,同時(shí)保證用戶設(shè)定的淋浴溫度要求,。當(dāng)水位過低時(shí),一方面報(bào)警,,另一方面可根據(jù)實(shí)際需要自啟動(dòng)上水操作,。
1.2 控制器的配置
整個(gè)控制系統(tǒng)采用Fusion StartKit開發(fā)平臺(tái),嵌入的8051內(nèi)核為核心控制單元,。由于8051內(nèi)核以網(wǎng)表的形式提供,,而且只有其控制部分(CPU)及簡(jiǎn)單的外設(shè)(定時(shí)器、 UART等),,所以只需將8051內(nèi)核移植到FPGA內(nèi)部就能搭建一個(gè)完整的8051單片機(jī),。內(nèi)核包括8051內(nèi)核網(wǎng)表、內(nèi)部RAM,、單片機(jī)ROM和 PLL四個(gè)子模塊,。
8051內(nèi)核和Flash之間的通信由接口模塊控制,接口模塊由HDL語言在Libero集成開發(fā)環(huán)境下描述得到,。系統(tǒng)硬件接口電路包括:水箱溫度和水位檢測(cè)接口電路,、設(shè)定鍵和并行顯示接口電路、節(jié)流閥的控制接口電路,、光電隔離與輔助加熱電路,,以及繼電器輸出接口電路等。這些模塊的I/O口分配如圖2所示,。水箱溫度,、水位檢測(cè)、水溫控制,、上水控制,、輔助加熱等模塊的I/O口分配到Mini接口上。
8051內(nèi)核的P0口為液晶的數(shù)據(jù)口,,P2.O~P2.2為液晶的使能控制端,,P2.3~P2.5分別為3個(gè)電磁閥的控制端,。對(duì)淋浴水溫進(jìn)行智能檢測(cè)和顯示,經(jīng)單片機(jī)內(nèi)部運(yùn)算與設(shè)定溫度進(jìn)行比較,,通過控制節(jié)流閥的角度來調(diào)節(jié)水流量,,從而來保證淋浴水溫與用戶設(shè)定水溫相一致。P1.O為數(shù)字溫度傳感器DSl8820的專用端,,用于檢測(cè)水箱溫度并顯示在液晶上,;P1.1也是溫度傳感器專用端,用于檢測(cè)淋浴水溫,。如果水箱溫度不足 (達(dá)到設(shè)置水溫下限),,則控制繼電器啟動(dòng)輔助加熱裝置;當(dāng)水溫達(dá)到加熱溫度上限時(shí),,則關(guān)閉輔助加熱裝置,。水位用5段LED燈顯示。若水位不足,,則報(bào)警蜂鳴器響,;若沒使用,則上水繼電器動(dòng)作,,電磁閥開通,,自動(dòng)上水至水位上限后關(guān)閉。
1.3 液位傳感器的設(shè)計(jì)
由于目前常用的垂子式液位傳感器易受水垢的影響,,本文利用浸入水中的兩個(gè)極板組成電容,,電容值大小反映了水位的高低。其結(jié)構(gòu)如圖3(a)所示,。
圖3(a)中,,H為鋁板總高度,h為液位高度,。設(shè)板間距為l,,鋁板的寬度為b。上下兩部分的介質(zhì)分別為空氣和水,,等效電容為C1和C2分別為:
式中:空氣的介電常數(shù)ε空氣為l,,水的介電常數(shù)ε水為80??傠娙軨總為:
顯然,,電容的大小與水位的高度成正比。實(shí)際制作的電容傳感器,,測(cè)試電容值C為0.1~2.2μF,。
本傳感器采用定時(shí)器NE555設(shè)計(jì)了一款方波發(fā)生器,用于實(shí)現(xiàn)水位-電容值-頻率的轉(zhuǎn)換,,輸出的頻率可反映水位的變化,,取中心工作頻率為1 kHz,。具體電路如圖3(b)所示。輸出頻率f為:
這里,,R1、R2均取為1.43 kΩ,。
當(dāng)水位發(fā)生變化引起電容的變化,,經(jīng)多諧振蕩器輸出的方波頻率f也隨之發(fā)生變化,根據(jù)單片機(jī)的計(jì)數(shù)器T0捕捉到的時(shí)鐘的個(gè)數(shù),,再經(jīng)數(shù)據(jù)處理判斷水位,。
1.4 節(jié)流閥的控制
為了控制淋浴水溫、調(diào)節(jié)流量,,需要控制節(jié)流閥,。本文采用節(jié)流閥和步進(jìn)電機(jī)組成流量控制方案,通過控制步進(jìn)電機(jī)的旋轉(zhuǎn)來控制節(jié)流閥的開啟角,,從而控制流量,。選用步進(jìn)電機(jī)驅(qū)動(dòng)器BY一2HB03M,控制二相四拍步進(jìn)電機(jī)的步進(jìn)及正反轉(zhuǎn),。其驅(qū)動(dòng)器接線如圖4所示,。
2 系統(tǒng)軟件設(shè)計(jì)
根據(jù)系統(tǒng)要求,除了需要實(shí)時(shí)檢測(cè)和顯示水箱溫度和水位外,,還需要控制淋浴溫度,、上水閥、節(jié)流閥,、輔助加熱控制裝置等,,所有這些功能由AFS600內(nèi)部嵌入 8051內(nèi)核完成??刂破鬈浖O(shè)計(jì)采用模塊化結(jié)構(gòu),,除主程序外,還包括鍵盤與顯示子程序,、溫度與液位采集子程序,、以及淋浴水溫控制子程序和上水控制子程序等。系統(tǒng)的主程序接收控制指令,,調(diào)用子程序完成溫度,、水位檢測(cè)等。下面重點(diǎn)介紹淋浴溫度控制和上水控制子程序流程,。
2.1 上水控制
熱水器控制器具有智能化上水控制功能,,可以起到保護(hù)熱水器的作用。例如,,水位較低時(shí),,淋浴時(shí)或高溫日照下禁止自動(dòng)上水,;居家長時(shí)間無人時(shí),需要考慮自動(dòng)上水問題,;水位傳感器失靈時(shí),,防止上水溢出等。對(duì)此,,系統(tǒng)預(yù)置最低水位和最高水位,,并根據(jù)時(shí)間系統(tǒng)預(yù)置自動(dòng)上水時(shí)段。程序中設(shè)有計(jì)時(shí)器,,檢測(cè)上水時(shí)的水位變化與上水時(shí)間關(guān)系,,以此檢測(cè)水位傳感器失效問題,并可防止上水溢出問題,。具體流程如圖5所示,。
2.2 淋浴溫度控制
淋浴溫度控制是熱水器控制器的關(guān)鍵,是舒適度的重要指標(biāo),。本系統(tǒng)將傳統(tǒng)的手動(dòng)控制改為自動(dòng)控制,,并引入了適合步進(jìn)電機(jī)控制的增量式PID控制算法。其差分方程式如下:
式中:u(k)是控制量,;e(k)是系統(tǒng)的控制偏差,;Kp是比例增益;Ti是積分時(shí)間,;Td是微分時(shí)間,;T為采樣周期。PID運(yùn)算的輸出增量為相鄰兩次采樣時(shí)刻所計(jì)算的位置值之差,,綜合式(5),、(6)有:
根據(jù)預(yù)置的溫度和采集的淋浴溫度進(jìn)行參數(shù)正定,確定PID參數(shù)q0,、q1,、q2,其調(diào)節(jié)方法可參考相關(guān)文獻(xiàn),。具體流程如圖6所示,,實(shí)際的淋浴水溫可控制在設(shè)置溫度的上下2℃范圍內(nèi)。
結(jié)語
采用Actel公司usion系列的AFS600芯片,,通過嵌入8051內(nèi)核來實(shí)現(xiàn)太陽能熱水器控制器功能,。該太陽能熱水器具有集成度高、成本低和操作方便的優(yōu)點(diǎn),,特別是淋浴溫度的自動(dòng)調(diào)節(jié),,以及上水過程的智能化、人性化控制等功能,較好地彌補(bǔ)了目前相關(guān)產(chǎn)品的不足,,有一定的推廣和經(jīng)濟(jì)價(jià)值,。本設(shè)計(jì)得到了 Actel公司、廣州致遠(yuǎn)電子有限公司及其武漢辦事處的資助和技術(shù)指導(dǎo),,在此特表感謝,。