中心議題:
- 太陽能工程熱水器控制器的設(shè)計(jì)與實(shí)現(xiàn)
解決方案:
- 以AVR Meg a 32 單片機(jī)為檢測(cè)控制核心
隨著人們生活水平的提高, 各種熱水器的使用已相當(dāng)普及, 與之相配套的控制儀也相繼問世。然而, 目前市場(chǎng)上的各種熱水器控制電路還與理想要求相差甚遠(yuǎn)。消費(fèi)者需要真正的全自動(dòng)控制, 以實(shí)現(xiàn)使用的最簡(jiǎn)單化, 就像家用電視機(jī)、電冰箱一樣, 接通電源、設(shè)定完畢就不用再操心了。鑒于國(guó)內(nèi)太陽能熱水器市場(chǎng)不斷擴(kuò)大, 而與其相配套的控制器卻急需改進(jìn)的情況, 研制了這套太陽能熱水器控制器。本文設(shè)計(jì)的太陽能熱水器是以AVR Meg a 32 單片機(jī)為檢測(cè)控制核心,不僅實(shí)現(xiàn)了溫度、水位兩種參數(shù)的實(shí)時(shí)顯示功能, 而且具有溫度設(shè)定與控制功能??刂破骺梢愿鶕?jù)天氣情況利用輔助加熱裝置使蓄水箱內(nèi)的水溫達(dá)到預(yù)先設(shè)定的溫度, 從而達(dá)到24 小時(shí)供應(yīng)熱水的目的。實(shí)際應(yīng)用結(jié)果表明, 該控制器和以往的顯示儀相比具有性價(jià)比高、溫度控制與顯示精度高、使用方便和性能穩(wěn)定等優(yōu)點(diǎn),提高了我國(guó)太陽能應(yīng)用領(lǐng)域控制水平, 具有可觀的經(jīng)濟(jì)效益和社會(huì)效益。
設(shè)計(jì)目標(biāo)與實(shí)現(xiàn)方案描述
1. 1 系統(tǒng)原理圖
系統(tǒng)原理圖如圖1 所示。其中:W 為水位傳感器( 壓力式) , 包含T2 ; T1 為集熱器頂部溫度傳感器; T2 為水箱溫度傳感器, 與水位W一體; T3 為防凍循環(huán)溫度傳感器( 安裝于集熱循環(huán)管路最低溫度點(diǎn)) ; T4 為用水管道溫度傳感器( 安裝于用水循環(huán)管路最低溫度點(diǎn)) ; T5 為管道電伴熱溫控傳感器( 一般安裝于自來水上水管道, 位置可根據(jù)實(shí)際情況而定) ; P1 為集熱管路循環(huán)泵, 亦作為防凍循環(huán)泵; P2 為用水管路循環(huán)泵( 亦可用電磁閥+ 自動(dòng)增壓泵形式);E1 為上水電磁閥( 自來水直接進(jìn)水箱補(bǔ)水) ;E2 為頂水電磁閥( 自來水進(jìn)集熱器, 頂水入水箱) ; EH1為電加熱器; EH2 為電伴熱帶( 選用) 。
系統(tǒng)原理圖
圖1 系統(tǒng)原理圖
1. 2 主要功能及說明
在太陽能熱水工程控制系統(tǒng)中, 需實(shí)現(xiàn):LED 顯示, 溫差循環(huán), 定溫出水, 定溫上水, 自動(dòng)上水, 定時(shí)上水, 低水位上水, 自動(dòng)加熱, 定時(shí)加熱, 電加熱防干燒, 防凍電加熱, 防凍循環(huán), 定時(shí)間段定溫管路循環(huán), 高溫保護(hù), 警戒水位保護(hù), 防炸管, 斷電參數(shù)與運(yùn)行狀態(tài)記憶,出廠參數(shù)復(fù)位, 故障及相關(guān)報(bào)警提示, 安全防護(hù), 管道防凍電伴熱, 用水管道防凍, 水燈顯示方式, 鍵盤鎖, 緊急斷電, 開機(jī)自檢等眾多功能??梢詫⑦@些功能分為以下6 類:鍵盤輸入、A / D 轉(zhuǎn)換、實(shí)時(shí)時(shí)鐘、數(shù)據(jù)顯示、E2PROM的使用和故障報(bào)警。該系統(tǒng)利用低功耗高性能的RISC 單片機(jī)AVR 作為控制電路的核心, AVR 微處理器是Atmel 公司的8 位嵌入式RISC 處理器, 具有高性能、高保密性、低功耗等優(yōu)點(diǎn)。程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器為可獨(dú)立訪問的哈佛結(jié)構(gòu), 代碼執(zhí)行效率高。系統(tǒng)采用的AVR Meg a 32 處理器包含有32 KB 片內(nèi)可編程FLA SH 程序存儲(chǔ)器; 1 KB 的E2PROM 和2 KB的RAM; 同時(shí)片內(nèi)集成了看門狗; 8 路10 位ADC; 3 路可編程PWM 輸出; 具有在線系統(tǒng)編程功能, 片內(nèi)資源豐富, 集成度高, 使用方便。AVR Mega 32 可以很方便地實(shí)現(xiàn)外部輸入?yún)?shù)的設(shè)置, A / D 轉(zhuǎn)換, E2PROM 的數(shù)據(jù)存儲(chǔ), 工作狀態(tài)的指示等。
[page]
1. 2. 1 鍵盤輸入
鍵盤輸入部分可用4*4 按鍵組成0~ 9 數(shù)字鍵及確認(rèn)鍵, 8 位數(shù)碼管組成顯示電路提示信息。單片機(jī)應(yīng)用系統(tǒng)中, 鍵盤掃描只是單片機(jī)的工作內(nèi)容之一。單片機(jī)在忙于各項(xiàng)工作任務(wù)時(shí), 如何兼顧鍵盤的輸入, 取決于鍵盤的工作方式, 而鍵盤的工作方式取決于CPU 的忙、閑情況而定。其原則為既要保證能及時(shí)響應(yīng)按鍵操作, 又不要浪費(fèi)過多的CPU 工作時(shí)間。通常, 鍵盤的工作方式有3 種, 即編程掃描, 定時(shí)掃描和中斷掃描。
為進(jìn)一步提高掃描鍵盤的工作效率, 可以采用中斷掃描方式, 只有在鍵盤有按鍵按下時(shí), 才執(zhí)行鍵盤掃描并執(zhí)行按鍵功能程序。而鍵盤的識(shí)別方法又可以分為3 種:
掃描法, 線反轉(zhuǎn)法和編碼法。對(duì)于按鍵較少的獨(dú)立式鍵盤可采用編碼法, 如4 * 4 的鍵盤, 鍵盤可以編碼為:
01H, 02H, ……, 0FH, 10H 共16 個(gè)。
1. 2. 2 A/ D 轉(zhuǎn)換
關(guān)于溫差循環(huán), 定溫出水, 定溫上水, 自動(dòng)上水, 低水位上水, 自動(dòng)加熱, 電加熱防干燒, 防凍電加熱, 防凍循環(huán), 高溫保護(hù), 警戒水位保護(hù), 防炸管, 安全防護(hù), 管道防凍電伴熱, 用水管道防凍等大多數(shù)功能就是對(duì)系統(tǒng)多處進(jìn)行水溫水位檢測(cè), 也就是將傳感器的模擬量通過AVR Mega 32 自帶的8 路10 位ADC 進(jìn)行A/ D 轉(zhuǎn)換。
檢測(cè)水溫現(xiàn)多采用PT100 傳感器, 電路圖如圖2所示。
Pt100 電路圖
圖2 Pt100 電路圖
R2 , R 3 , R4 和Pt100 組成傳感器測(cè)量電橋, 為了保證電橋輸出電壓信號(hào)的穩(wěn)定性, 電橋的輸入電壓通過TL431 穩(wěn)至2. 5 V。從電橋獲取的差分信號(hào)通過兩級(jí)運(yùn)放放大后輸入單片機(jī)。電橋的一個(gè)橋臂采用可調(diào)電阻R3 , 通過調(diào)節(jié)R3 可以調(diào)整輸入到運(yùn)放的差分電壓信號(hào)大小, 通常用于調(diào)整零點(diǎn)。放大電路采用LM358集成運(yùn)算放大器, 為了防止單級(jí)放大倍數(shù)過高帶來的非線性誤差, 放大電路采用兩級(jí)放大, 如圖3 所示, 前一級(jí)放大倍數(shù)約為10 倍, 后一級(jí)約為3 倍。溫度在0 ~100 # 變化, 當(dāng)溫度上升時(shí), Pt100 阻值變大, 輸入放大電路的差分信號(hào)變大, 放大電路的輸出電壓AV 對(duì)應(yīng)升高。
一般在使用Pt100 的溫度采集方案中, 都會(huì)對(duì)放大器LM358 采集來的模擬信號(hào)AV 進(jìn)行溫度采樣, 即進(jìn)行A/ D 轉(zhuǎn)換。
在對(duì)數(shù)值進(jìn)行濾波操作之后, 還要將A/ D 值轉(zhuǎn)換為溫度, 只需要確定比例系數(shù)K 和基準(zhǔn)偏差B 即可。
溫度轉(zhuǎn)換的C 語言實(shí)現(xiàn)過程為:
temper ature= ( adc_data* K) - B; / / 換算成溫度值
1. 2. 3 實(shí)時(shí)時(shí)鐘
采用DALLAS 公司推出的涓流式充電時(shí)鐘芯片,它內(nèi)部集成了實(shí)時(shí)時(shí)鐘/ 日歷和31 B 靜態(tài)RAM, 可以通過串行接口與單片機(jī)進(jìn)行通信。實(shí)時(shí)時(shí)鐘、日歷電路電路提供秒、分、時(shí)、星期、月、年的信息, 每個(gè)月的天數(shù)和閏年天數(shù)可自動(dòng)調(diào)整, 時(shí)鐘操作可通過AM/ PM 標(biāo)志位決定采用24 小時(shí)或12 小時(shí)時(shí)間格式。DS1302 與單片機(jī)之間能簡(jiǎn)單地采用同步串行的方式通信, 僅需3 根線:復(fù)位( RST ) 、I/ O 數(shù)據(jù)線、串行時(shí)鐘( SCLK) 。
[page]
DS1302 工作功耗很低, 保持?jǐn)?shù)據(jù)和時(shí)鐘信息時(shí), 功耗小于1 mW。利用它很容易實(shí)現(xiàn)自動(dòng)上水、自動(dòng)加熱的控制和時(shí)間顯示。假設(shè)這里單片機(jī)設(shè)置報(bào)警為凌晨3 點(diǎn)整, 啟動(dòng)電加熱, 當(dāng)CPU 讀出DS1302 時(shí)間為3 點(diǎn)即可使對(duì)應(yīng)的I/ O 管腳輸出高電平, 打開繼電器啟動(dòng)加熱器, 定時(shí)上水功能同理。同時(shí)在不顯示溫度和水位時(shí),它還可作為精確的電子鐘進(jìn)行時(shí)間顯示。
1. 2. 4 數(shù)據(jù)顯示
該系統(tǒng)采用靜態(tài)顯示的方式, 用3 個(gè)數(shù)碼管交替顯示水溫、時(shí)間、報(bào)警的信息, 在按鍵時(shí), 也將用數(shù)碼管顯示。水位級(jí)別顯示則用LED 顯示。顯示電路由3 個(gè)移位寄存器74H C164 和3 個(gè)數(shù)碼組成。每個(gè)數(shù)碼管接有8 個(gè)1 k 電阻, 保護(hù)數(shù)碼管, 防止電流過大燒壞數(shù)碼管。具體的電路如圖3 所示。
數(shù)碼管靜態(tài)顯示
圖3 數(shù)碼管靜態(tài)顯示
1. 2. 5 其他部分
本系統(tǒng)除復(fù)位鍵、手動(dòng)上水和手動(dòng)加熱允許鍵外,其余的按鍵為選擇設(shè)定項(xiàng)目( 溫度顯示或定時(shí)顯示) , 每按一下choose 鍵, 設(shè)定功能變換1 次。按1 次 + 鍵,設(shè)定值對(duì)應(yīng)加1。按1 次 - 鍵, 設(shè)定值對(duì)應(yīng)減1。為了防止設(shè)定的參數(shù)在掉電后丟失, 利用了E2PROM 存儲(chǔ)各設(shè)定參數(shù)。
本文設(shè)計(jì)的太陽能工程熱水器控制器, 硬件設(shè)計(jì)簡(jiǎn)單, 功能強(qiáng)大。經(jīng)試驗(yàn)證明系統(tǒng)穩(wěn)定, 操作方便, 值得推廣。本文給出的電路是一種最基本最簡(jiǎn)單的電路, 其目的是給出一種單片機(jī)的控制模式, 亦可以根據(jù)用戶需求, 添加更多附加功能。