基于PIC16F877A的太陽能與市電互補照明系統(tǒng)控制器的設計
1 控制器的主要功能及組成
本文所設計的控制器供街道和住宅小區(qū)夜間利用太陽能和市電互補照明系統(tǒng)使用,根據照明實際狀況,設計控制器具有如下功能:
(1)支持12 V直流系統(tǒng)工作電壓;
(2)支持最大至4 A的充放電電流;
(3)支持直流、脈沖兩種充電方式;
(4)具有深夜使半導體照明燈具亮度減半的功能;
(5)蓄電池電量不足時,自動切換到市電電源供電;
(6)能檢測太陽能電池的電壓,自動轉換工作模式;
(7)能檢測蓄電池的電壓,對蓄電池的充、放電過程進行控制;
(8) 具有防反充電保護、過充電保護、過放電保護和負載短路保護功能;
(9)具有電子時鐘和計時功能。
圖1所示為以PIC16F877A為核心的控制器外圍電路示意圖[3]。主要由PIC單片機(內部含A/D)、時鐘電路、電壓采樣電路、開關驅動電路、時鐘控制和數碼管顯示電路組成。單片機PIC16F877A是控制器的核心,外圍電路包括開關控制電路(C1~C3)、數碼管顯示及驅動(A~G/Dig_EN1~Dig_EN6)電路、工作狀態(tài)顯示等。
本文引用地址:http://m.butianyuan.cn/article/163153.htm
2 主要電路設計及器件選型
2.1 PIC16F877A
單片機是控制器的核心,系統(tǒng)工作時需要采集太陽能電池和蓄電池的電壓。太陽能電池的輸出電壓受溫度和太陽輻射強度等外界因素影響較大,這就要求系統(tǒng)的實時性比較高,即要求系統(tǒng)的響應速度快。故設計中選用了內部含有A/D模塊、具有14位指令寬度的中檔PIC單片機16F877A,屬PIC中級產品,在保持低價格的前提下具有很高的性能。
本文設計的控制器主要用到PIC16F877A的如下一些資源:
(1)16 KB的系統(tǒng)內可編程Flash,1 KB片內SRAM,10 000次擦寫壽命。程序存儲空間足夠大,不需要額外擴展存儲器;10 000次的擦寫壽命方便進行程序調試;
(2) 2個具有獨立預分頻器和比較器功能的8位定時器/計數器。用于按鍵去抖和計時;
(3) 1個具有預分頻器、比較功能和捕捉功能的16位定時器/計數器。用作調節(jié)PWM控制信號的占空比,控制充電開關;
(4) 8路10位ADC。使用其中的2路ADC通道分別對太陽能電池工作電壓、蓄電池工作電壓采樣;
(5) 使用2個中斷源,外部中斷和定時器中斷,分別用于計時和按鍵;
(6) 可編程I/O口。部分I/O口使用其第二功能,其他用于控制器系統(tǒng)功能擴展。
2.2 電壓采樣電路
控制器需要采集2路電壓信號,分別是太陽能電池輸出電壓和蓄電池端電壓,這兩路信號均為變化的直流模擬信號,采樣信號應能如實地反映檢測量。設計中利用精度為0.1%的精密電阻組成簡單的分壓電阻網絡來實現,并在分壓電阻網絡的輸出端并聯漏電流很小的精密電容和電感進行 濾波,以減小電流泄漏對測量精度的影響[4]。采樣電路如圖2所示。
2.3 控制開關驅動電路
控制器的主要控制對象是3個控制開關C1~C3。分別是蓄電池的充電開關、蓄電池放電(供電)開關和市電供電開關。開關的狀態(tài)由單片機根據系統(tǒng)的工作狀態(tài)進行控制:白天太陽能電池向蓄電池充電,開關C1閉合,太陽能電池將太陽能轉換為電能,儲存在蓄電池中,當蓄電池電壓出現過充時,控制器斷開充電開關C1;晚上主要由蓄電池向負載供電,開關C2閉合,當蓄電池電壓不足(欠壓)時,蓄電池供電開關C2斷開,控制器自動切換為市電給負載供電(C3閉合)。圖3、圖4和圖5分別為蓄電池充電、放電和市電供電時開關的驅動電路。
評論