薛凱娟(山西工程職業技術學院,山西 太原 030009)
隨著信息技術的發展,便攜式電子設備的使用越來越廣。便攜式電子設備電池的充電與管理成為研發熱點。目前,市場上便攜式電子設備的充電方式多為用市電經過變壓器處理后再給電池充電,對充電環境要求比較苛刻,充電隨機性較差,不能有效利用新能源。本文提出了一種利用太陽能給便攜式電子設備進行充電的方法,利用單片機控制的太陽能智能充電器實現對便攜式電子設備電池的智能充電和智能管理控制,并利用物聯網技術實施智能監測。
太陽能智能充電器是利用太陽能板采集太陽能,把獲取的太陽能直接轉換成電能的半導體器件。利用單片機控制電壓采集器實時采集用電設備充電電壓,并將實時電壓及時地顯示在液晶屏上,方便設備使用者通過液晶顯示屏實時顯示的數據,觀察用電設備的充電情況。同時,單片機通過測得的基準電壓,可對用電設備的充電情況進行實時修正,使用電設備的充電情況永久保持在最佳狀態。當用電設備的電池到達充滿狀態時,單片機系統控制還可及時切掉電源,以保證用電設備電池的壽命[1]。
太陽能智能充電器系統設計了與大數據的接口,可通過無線通信將相關信息傳送到云端,與用戶終端實現智能互聯和信息交換,系統框圖如圖1所示。
太陽能智能充電器采用51系列單片機作為主控制器,最小控制系統由時鐘電路、復位電路以及89C51單片機芯片構成。

圖1 太陽能智能充電系統方框圖
太陽能電池板獲得的電能是不可以直接用于單片機供電,也不可以直接用于便攜式電子產品充電,需通過降壓穩壓處理得到單片機所需要的電壓。基于單片機控制的太陽能智能充電器采用LM2575電源管理模塊進行電壓降壓穩壓處理。LM2575系列開關穩壓集成,內部集成了一個固定振蕩器,只須極少外圍器件便可構成一種高效的穩壓電路,可大大減小散熱片的體積,且多數情況下不需散熱片;內部有完善的保護電路,包括電流限制和熱關斷電路等;芯片可提供外部控制引腳[2]。通過LM2575處理后的電壓可直接用于設備充電。
太陽能智能充電器采用降壓斬波的工作原理,電路原理及波形如圖2所示。
圖2中,V為全控型器件,選用IGBTD為續流二極管。由圖2中V的柵極電壓波形UGE可知,當V處于通態時,電源Ui向負載供電,UD=Ui;當V處于斷態時,負載電流經二極管D續流,電壓UD近似為零,至一個周期T結束,再驅動V導通,重復上一周期的過程。負載電壓的平均值為:

其中,ton為V處于通態的時間,toff為V處于斷態的時間,T為開關周期,α為導通占空比,簡稱占空比或導通比(α=ton/T)。輸出到負載的電壓平均值UO最大為Ui,若減小占空比α,則UO隨之減小,由于輸出電壓低于輸入電壓,故稱該電路為降壓斬波電路。

圖2 斬波電路電路原理圖
太陽能智能充電器電壓監控采用PCF8591芯片及相關電路構成。PCF8591是一個單片集成、單獨供電、低功耗及8-bitCMOS數據獲取器件,具有4個模擬輸入、1個模擬輸出及1個串行I2C總線接口。PCF8591的3個地址引腳A0、A1及A2可用于硬件地址編程,允許在同個I2C總線上接入8個PCF8591器件而無需額外的硬件,可以方便地將其納入到物聯網中,從而實現與物聯網中設備的信息交換。
太陽能智能充電器采用LCD1602型液晶作為顯示器,實現有效的人機對話。LCD1602液晶顯示器使用11根數據控制線完成人機交互功能,其中3根控制線,分別為RS、RW及EN,數據線采用的是并口形式,總共有8根,直接連接到單片機并行口[3]。VO引腳是液晶的對比度調節電路。該引腳上的電壓直接決定了液晶的對比度。
基于單片機控制的太陽能智能充電器的整體電路如圖3所示。

圖3 太陽能智能充電器整體電路圖
太陽能智能充電器控制程序是當充電器開始工作時,先進行硬件初始化。初始化工作主要包括檢測太陽能板是否正常,調整太陽能板的方向使其對準太陽光照方向;檢測電池電能的現狀;給單片機自動分配中斷向量表、操作寄存器及存儲器的物理地址等。
初始化操作完成后,依據采集的相關信息,綜合判斷后執行跳轉指令,跳轉到main函數地址,開始進行充電操作;同時單片機開始實時采集電池中的電壓值,通過AD轉換器對采集到的數據進行計算,將AD采樣值換算成電壓顯示在液晶界面上,方便用戶控制。
對于無線區域,將充電過程中電池電量的變化與電池的相關信息上傳到云端,實現與智能終端的連接,系統的運行流程如圖4所示。

圖4 太陽能智能充電器系統流程圖
當PCF8591作為AD轉換時,應初始化該器件。初始化步驟是啟動I2C總線,啟動后總線自動開始尋找地址,進入寫模式,此后等待從機進行應答響應,響應后進行寫通道操作,此時可寫入(00/01/02/03)通道號,寫通道完成后等待從機應答響應,從機響應完成后,停止I2C總線,初始化完成。然后開始一位一位的讀取數據,將讀取出來的數據進行轉換,轉換后等待主機下一步操作。
液晶屏顯示參數前,需對液晶進行初始化操作。1602液晶初始化就是對液晶顯示器進行準備工作設置,單片機通過數據線向1602液晶寫數據,首先寫入命令,規范1602液晶為顯示模式。由于設計中需要顯示字符,所以需要發送指令讓1602液晶顯示字符模式,在本設計中設置顯示字符格式為16×2顯示,單個字符大小為5×7點陣。由于顯示時液晶屏幕上會顯示光標,所以需設置液晶顯示光標。同時由于寫入液晶的字符是連續的,所以每顯示一個數字,上一位數據需要移一位,需設置為左移位的移位方式,以實現數據的正確顯示。
太陽能智能充電器硬件系統搭建完成,且編程編譯正確后,利用Protues軟件進行電路仿真,利用滑動電阻分壓實現用電器端電壓變化。調節滑動變阻器,可看到顯示屏中顯示電壓隨之改變,證明了系統功能已實現。圖5為部分系統仿真畫面。

圖5 太陽能智能充電器系統仿真圖
設計完成后,需對系統進行測試。由于設計是純手工制作,可靠性較差,因此測試時主要進行功能測試,不進行性能測試。
系統在焊接完成后,需進行調試。硬件調試時,首先檢查各電源是否正確連接,然后通電進行觀察。如果一切正常,則用萬用表連接各個部分的電源,以確定是否和設計值一致。需要著重檢查各引腳之間的電氣連接是否正常,消除虛焊現象。然后對系統進行通電,通電后觀察片刻,如果沒有異常,可進行燒錄。串口下載器連接到單片機串口燒錄程序,對燒錄情況進行驗證。如果燒錄失敗,首先檢查燒錄軟件配置是否正常,燒錄軟件正常的情況下,檢查燒錄接口,查看是否是焊接出錯,確認焊接無誤后可檢查單片機的時鐘電路是否正常。燒錄完成后如果系統的各項功能都能正常工作,則硬件調試完成,如果有功能不能實現,則需檢查硬件電路。對于不能實現的功能模塊,檢查其硬件焊接是否正常,設計是否有誤,可先在仿真軟件上進行仿真,以確認設計可行性,如果還是無法解決問題,則需調試系統軟件。聯合調試,直到系統功能都能正常工作為止。
系統硬件設計完成后,需調試軟件系統。軟件系統是建立在硬件系統能正常燒錄程序和正常運行程序的基礎上的。硬件調試中,由于實際運行效果和預先設想的不一致,所以需對軟件系統進行調試,并進行軟硬件聯合調試。軟件系統的調試需將程序下載到單片機,利用keil開發環境的debug功能進行調試。首先進行單步調試,看程序是否能夠正常走通,如果不能走通卡在了某個函數部分,則需檢查程序的引腳和硬件連接是否一致,如果不一致,則需檢查硬件設計。程序能夠正常運行后,需檢查程序數據,利用livewatch窗口進行觀測。仔細推敲,不斷查找代碼問題,直到程序能夠正常運作為止。
基于單片機控制的太陽能智能充電器充分滿足了便攜式電子設備對電池充電的需求,結合物聯網應用技術,提出了一個升級型的智能充電設備。由于軟硬件開發成本低,控制算法優良,智能化程度較高,該設備的應用前景較好。