基于PIC16F877A的太陽(yáng)能與市電互補(bǔ)照明系統(tǒng)控制器的設(shè)計(jì) 2011-05-13 10:13:37來(lái)源:互聯(lián)網(wǎng)
利用太陽(yáng)能照明是人類(lèi)開(kāi)發(fā)利用太陽(yáng)能的一個(gè)主要用途,然而,由于太陽(yáng)能輻射的不連續(xù)性和間歇性,以及目前單純太陽(yáng)能照明系統(tǒng)的投資和成本較高、部分技術(shù)不夠成熟等原因,太陽(yáng)能照明系統(tǒng)經(jīng)常出現(xiàn)在連續(xù)陰雨天時(shí),由于蓄電池電壓不足而導(dǎo)致負(fù)載不能點(diǎn)亮的情況。將太陽(yáng)能與市電組成雙電源互補(bǔ)供電照明系統(tǒng),不僅可以有效解決太陽(yáng)能利用不穩(wěn)定的問(wèn)題,還可以適當(dāng)減小太陽(yáng)能電池和蓄電池的容量,降低開(kāi)發(fā)利用太陽(yáng)能技術(shù)的成本,同時(shí)滿足系統(tǒng)的可靠性和經(jīng)濟(jì)性要求[1-2]。
1 控制器的主要功能及組成
 本文所設(shè)計(jì)的控制器供街道和住宅小區(qū)夜間利用太陽(yáng)能和市電互補(bǔ)照明系統(tǒng)使用,根據(jù)照明實(shí)際狀況,設(shè)計(jì)控制器具有如下功能:
 (1)支持12 V直流系統(tǒng)工作電壓;
 (2)支持最大至4 A的充放電電流;
 (3)支持直流、脈沖兩種充電方式;
 (4)具有深夜使半導(dǎo)體照明燈具亮度減半的功能;
 (5)蓄電池電量不足時(shí),自動(dòng)切換到市電電源供電;
 (6)能檢測(cè)太陽(yáng)能電池的電壓,自動(dòng)轉(zhuǎn)換工作模式;
 (7)能檢測(cè)蓄電池的電壓,對(duì)蓄電池的充、放電過(guò)程進(jìn)行控制;
 (8) 具有防反充電保護(hù)、過(guò)充電保護(hù)、過(guò)放電保護(hù)和負(fù)載短路保護(hù)功能;
 (9)具有電子時(shí)鐘和計(jì)時(shí)功能。
 圖1所示為以PIC16F877A為核心的控制器外圍電路示意圖[3]。主要由PIC單片機(jī)(內(nèi)部含A/D)、時(shí)鐘電路、電壓采樣電路、開(kāi)關(guān)驅(qū)動(dòng)電路、時(shí)鐘控制和數(shù)碼管顯示電路組成。單片機(jī)PIC16F877A是控制器的核心,外圍電路包括開(kāi)關(guān)控制電路(C1~C3)、數(shù)碼管顯示及驅(qū)動(dòng)(A~G/Dig_EN1~Dig_EN6)電路、工作狀態(tài)顯示等。

點(diǎn)擊看大圖

2 主要電路設(shè)計(jì)及器件選型
2.1 PIC16F877A
單片機(jī)是控制器的核心,系統(tǒng)工作時(shí)需要采集太陽(yáng)能電池和蓄電池的電壓。太陽(yáng)能電池的輸出電壓受溫度和太陽(yáng)輻射強(qiáng)度等外界因素影響較大,這就要求系統(tǒng)的實(shí)時(shí)性比較高,即要求系統(tǒng)的響應(yīng)速度快。故設(shè)計(jì)中選用了內(nèi)部含有A/D模塊、具有14位指令寬度的中檔PIC單片機(jī)16F877A,屬PIC中級(jí)產(chǎn)品,在保持低價(jià)格的前提下具有很高的性能。
 本文設(shè)計(jì)的控制器主要用到PIC16F877A的如下一些資源:
(1)16 KB的系統(tǒng)內(nèi)可編程Flash,1 KB片內(nèi)SRAM,10 000次擦寫(xiě)壽命。程序存儲(chǔ)空間足夠大,不需要額外擴(kuò)展存儲(chǔ)器;10 000次的擦寫(xiě)壽命方便進(jìn)行程序調(diào)試;
 (2) 2個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8位定時(shí)器/計(jì)數(shù)器。用于按鍵去抖和計(jì)時(shí);
 (3) 1個(gè)具有預(yù)分頻器、比較功能和捕捉功能的16位定時(shí)器/計(jì)數(shù)器。用作調(diào)節(jié)PWM控制信號(hào)的占空比,控制充電開(kāi)關(guān);
 (4) 8路10位ADC。使用其中的2路ADC通道分別對(duì)太陽(yáng)能電池工作電壓、蓄電池工作電壓采樣;
 (5) 使用2個(gè)中斷源,外部中斷和定時(shí)器中斷,分別用于計(jì)時(shí)和按鍵;
 (6) 可編程I/O口。部分I/O口使用其第二功能,其他用于控制器系統(tǒng)功能擴(kuò)展。
2.2 電壓采樣電路
 控制器需要采集2路電壓信號(hào),分別是太陽(yáng)能電池輸出電壓和蓄電池端電壓,這兩路信號(hào)均為變化的直流模擬信號(hào),采樣信號(hào)應(yīng)能如實(shí)地反映檢測(cè)量。設(shè)計(jì)中利用精度為0.1%的精密電阻組成簡(jiǎn)單的分壓電阻網(wǎng)絡(luò)來(lái)實(shí)現(xiàn),并在分壓電阻網(wǎng)絡(luò)的輸出端并聯(lián)漏電流很小的精密電容和電感進(jìn)行 濾波,以減小電流泄漏對(duì)測(cè)量精度的影響[4]。采樣電路如圖2所示。


點(diǎn)擊看大圖

2.3 控制開(kāi)關(guān)驅(qū)動(dòng)電路
控制器的主要控制對(duì)象是3個(gè)控制開(kāi)關(guān)C1~C3。分別是蓄電池的充電開(kāi)關(guān)、蓄電池放電(供電)開(kāi)關(guān)和市電供電開(kāi)關(guān)。開(kāi)關(guān)的狀態(tài)由單片機(jī)根據(jù)系統(tǒng)的工作狀態(tài)進(jìn)行控制:白天太陽(yáng)能電池向蓄電池充電,開(kāi)關(guān)C1閉合,太陽(yáng)能電池將太陽(yáng)能轉(zhuǎn)換為電能,儲(chǔ)存在蓄電池中,當(dāng)蓄電池電壓出現(xiàn)過(guò)充時(shí),控制器斷開(kāi)充電開(kāi)關(guān)C1;晚上主要由蓄電池向負(fù)載供電,開(kāi)關(guān)C2閉合,當(dāng)蓄電池電壓不足(欠壓)時(shí),蓄電池供電開(kāi)關(guān)C2斷開(kāi),控制器自動(dòng)切換為市電給負(fù)載供電(C3閉合)。圖3、圖4和圖5分別為蓄電池充電、放電和市電供電時(shí)開(kāi)關(guān)的驅(qū)動(dòng)電路。


點(diǎn)擊看大圖