王 琦,韓天興,賈 偉,李林高
(1.山西大學 自動化系,太原030013;2.山西平朔煤矸石發電有限責任公司,朔州036800)
隨著儲能技術的發展,儲能電池組的容量不斷提高,為了合理利用空間電池組會密集布置,但是在充放電過程中熱量的積聚,會導致儲能電池箱內溫度變化明顯,因此合適的電池溫度環境對電池安全穩定工作至關重要[1]。為了滿足儲能電池對環境溫度的要求,儲能電池箱溫度控制系統的研究也應運而生。儲能電池最佳工作溫度為15 ℃~25 ℃,當環境溫度下降時,電池放電電壓也會大幅度下降,電池反應速率降低,輸出功率也會下降;而當溫度上升時,輸出功率雖然會上升,但若是超過溫度上限后,隨著溫度的繼續升高,儲能電池內部化學平衡遭到破壞,長期這樣下去電池性能退化,循環壽命會縮短[2],還有可能因電池的熱失控問題而導致燃燒、爆炸等危險事故,因此儲能電池箱溫度控制系統對于維持電池的使用壽命和輸出穩定的功率至關重要。
儲能電池箱溫度控制系統的被控量為箱內溫度和濕度,通過控制空調、天/側窗、散熱器等執行機構來達到控制目的。本文儲能電池箱溫度自動控制系統的核心控制器件選擇用PIC16F877A 單片機,因其具有哈佛總線結構、精簡指令集(RISC)技術、功耗低且價格低廉等優點[3],具有很全面的功能,應用范圍也廣泛。控制系統總體結構框圖如圖1所示。

圖1 系統結構框圖Fig.1 Structure diagram of system
本系統的硬件電路主要包括溫、濕度數據采集電路、輸出控制電路、報警電路、人機接口電路以及通訊接口電路等。溫、濕度數據的采集是將儲能電池箱內的溫度、濕度等生態因子參數通過溫度、濕度傳感器轉換為電信號,將此可識別的電信號通過調理電路送入以單片機PIC16F877A 為核心的控制器。將輸入的信號和溫度設定值進行對比,當箱內所測值超出設定值時,觸發啟動條件,執行機構針對溫度變化進行相應的控制同時系統警報能夠及時引起運行人員重視。PIC16F877A 控制器能夠獨立完成對儲能電池溫度的控制以及與上位機之間相互進行通信(包括可以接收指令同時又將采集的參數實時傳輸回去)。
本儲能電池箱溫度控制系統使用模糊控制算法對執行機構進行控制。可根據儲能電池箱內的溫度、濕度等生態因子的變化,根據現場工程人員長期的操作經驗和專家的工程經驗知識可以預先設定模糊規則,實現對空調、天/側窗、散熱器等控溫設備的自動控制,調控儲能電池箱內氣候環境,為電池安全穩定工作提供適宜環境。
本儲能電池箱溫度控制系統采用單線數字溫度傳感器DS18B20,其具有體積小、耗能小、精度高、性能好等特性,除此之外該型號還具有傳感器單線接口,沒有外圍元件,可以由總線提供電源等特性[4]。DS18B20 將溫度參數直接轉化成電信號處理,不需要專門的A/D 轉換電路,很容易與單片機連接。溫度采集電路如圖2所示,從圖中可以看到DS18B20 與PIC16F877A 單片機之間的連接方法是:
(1)Vcc 引腳接外部+5 V 電源;
(2)GND 引腳要接地;
(3)I/O 引腳與PIC16F877A 的I/O 線連接。

圖2 DS18B20 溫度采集電路Fig.2 Gathering circuit of temperature
在DS18B20 進行溫度A/D 轉換操作以及寫存儲器操作時,為了降低功耗,總線上必須有一個上拉電阻,上拉開啟時間不能超過10 μs,所以要在I/O口線處接一個數值為4.7 kΩ 的上拉電阻。
本儲能電池箱溫度控制系統使用的濕度傳感器是Honeywell 公司生產的帶有熱固聚酯電容式傳感頭的HIH-3610 集成濕度傳感器。該濕度傳感器在內部集成了信號處理功能電路,因此其輸出的線性電壓是由相對濕度值變為電容值轉換而出的,同時還可以和A/D 轉換器直接連接進行數字化處理,不需要經過外部信號的調理,其具有反應快、精度高、互換性好、價格低以及抗腐蝕性能好等優點特性[5]。濕度測量電路如圖3所示,是將單片機的模擬量輸入端口與濕度傳感器HIH-3610 的電壓輸出端相連,通過PIC16F877A 內部的A/D 單元實現模擬量/數字量的轉換,不需要通過使用外部A/D 轉換。

圖3 HIH-3610 濕度采集電路Fig.3 Gathering circuit of humidity
而在我們實際生活當中,隨著環境溫度的升高空氣中含的水份就越大,也就是說,水蒸氣含量相同的情況下溫度升高其相對濕度就會降低,因此在提供相對濕度的同時也必須提供溫度的數據。
本儲能電池箱溫度控制系統軟件設計方法采用了模塊化,將控制器所要具備的功能分別進行程序編寫并各自調試運行,等所有的模塊成功實現既定功能后,再將各個功能模塊按照邏輯順序連接起來,組成本溫度控制的單片機軟件系統,這種進行細化功能模塊的設計有利于代碼的更改與優化,便于調試程序、維護系統以及擴增新功能。
儲能電池箱溫度控制系統在上電或者復位后,開始進入系統的主程序,主程序首先進行系統初始化,完成后進入下一步,調用溫度采集子程序來采集溫度相關數據、濕度采集子程序來采集濕度相關數據,之后依次進行模糊算法處理、與上位機通信等功能,當發生一些情況時需中斷進行,此時要用到中斷程序來負責處理此類中斷事件,因此主系統需要立即執行中斷程序,待處理完畢后程序自動回到中斷發生前一時刻的狀態,順著流程主程序繼續往下執行[6]。在儲能電池箱溫度控制系統中主程序主要負責整個流程的任務調度,而子程序就是實現系統各個子功能,系統的主程序流程如圖4所示。

圖4 溫度控制系統主程序流程Fig.4 Temperature control system main program flow chart
溫度數據采集子程序模塊,主要進行的操作有對溫度傳感器DS18B20 直接讀取其溫度參數數據,將其轉化為電信號進行數據處理并存儲在單片機中。中央處理器CPU 對它的訪問流程是:
(1)對傳感器DS18B20 進行初始化操作(發復位脈沖);
(2)發送ROM 功能命令;
(3)發存儲器操作命令;
(4)處理數據。
在程序設計時特別要注意的是每一步操作之間的延時時間。但是因為傳感器DS18B20 的單線通信功能是分時完成的,需要遵循嚴格的時隙概念,因此能夠讀懂時序圖和會寫時序都是很重要的。溫度采集時傳感器DS18B20 的通信協議流程如圖5所示。
本文設計的儲能電池箱溫度控制系統能夠完成特定范圍內溫度、濕度的有效實時監控,可以預先設定溫度在其上、下限范圍內有效的實時溫度的自動控制,溫度超出設定范圍時,可觸發報警,及時提醒運行工作人員。此外本儲能電池箱溫度控制系統還具有如下優越性:①該系統結構簡單,儲能電池箱能夠自主調節溫度,確保了儲能電池的安全穩定運行;②該系統能將實時狀態就地及在上位機上同時顯示;③具有較強的通用性,程序和硬件稍加改動,還可應用于其他溫控場合。

圖5 DS18B20 通信協議Fig.5 DS18B20 communication protocol