胡真,汪盼
(1.佛山職業技術學院,廣東 佛山 528137;2.中國工商銀行股份有限公司佛山分行,廣東 佛山 528010)
隨著信息技術的高速發展,智能手機、平板和筆記本電腦等便攜式智能電子產品隨處可見。電子產品的普及給消費者帶來了許多便利,但電子產品充電慢、充電難的問題日益凸顯,人們對電源系統的要求也日益提高,而鋰電池因其能量比高,自然放電率低,無記憶效應等優點,成為便攜式電子產品的理想電源。
目前,針對便攜式電子產品的充電設備種類繁多,粗制濫造的產品充斥著整個市場,不僅價格昂貴,質量參差不齊,且只能對單一產品進行充電,難以進行統一的管理。因此,研發出適用于大部分便攜式電子產品,且性能穩定、安全可靠的鋰電池智能充電系統成了一項研究熱點。
針對以上問題,本文設計了一種由充電芯片MAX1898和單片機PIC16F716 為硬件核心的智能充電系統,輔之以較少的外圍電路,通過合理的硬件和軟件模塊設計,實現對多種便攜式電子設備的智能充電。
在設計充電系統時,一般要求充電系統成本低廉,充電過程安全高效,充電設計節能環保。同時,為實現能對多種類型的便攜式電子產品充電,在兼容多種充電接口的同時,還需要實現充電過程的智能化,以保護不同規格電池的充電安全,延長電池的使用壽命。
單片機體型較小,售價便宜,且易于開發和拓展,成為實現充電過程智能控制的首選目標。基于此,本文考慮利用單片機作為核心控制,輔之以少量的外圍電路,通過充電芯片對充電電流、充電電壓,充電溫度和充電故障進行實時監測與控制,實現充電過程中的全智能化。智能充電系統的總體框架如圖1所示。

圖1 智能充電系統的總體框架
根據智能充電系統的總體框架,以及對系統安全、成本和可靠性等方面的要求,本文選取了單片機PIC16F716 作為核心控制元件,同時,選用了充電芯片MAX1898 作為核心充電元件,兩種元件一起構成硬件電路的核心器件。
單片機PIC16F716 是由Microchip 公司所研制的芯片處理器,指令集少,運行效率高,它擁有Flash program 程序內存的作用,能夠反復燒錄代碼,而且它內建的ICD 模塊,支持操作者直接在芯片上停止處理器工作,觀看緩存器中的內容等功能,具有非常明顯的優勢。
而充電芯片MAX1898 價格便宜,結構簡單,能自動進行內部的檢流,充電的最大電流可由用戶自行設置,能夠比較精準地對電池進行恒流恒壓狀態充電,同時它可以讓電池電壓的調節精度達到±0.75%左右,性價較高。
下面分別對充電系統的主要硬件電路進行詳細的說明。
為了適用大部分電子產品,本充電系統采用了5 V 的電源模塊,具體設計如圖2所示。首先,通過變壓器將220 V交流電壓降壓至12 V;其次,用橋式電路對電流整流,然后進行電流濾波;最后將電流送入三端穩壓電路LM7805,輸出5 V 的電壓,作為充電電源。

圖2 智能充電系統的電源電路
復位電路是單片機最小系統中必不可少的部分,合理的復位電路能保證硬件電路的正常運行。復位電路的設計方法較多,本文采用了穩定門檻電壓復位電路,該電路具有驅動能力強,負載影響小的優點,具體電路如圖3所示。

圖3 單片機復位電路
時鐘電路是單片機的重要組成部分,本文中單片機PIC16F716 為12 MHz 晶振,采用了晶體振蕩電路,其振蕩電容為22 pF。單片機PIC16F716 的時鐘電路如圖4所示。

圖4 單片機時鐘電路
圖5為充電芯片控制部分電路原理圖,其核心器件為充電芯片MAX1898。LEDG 表示發綠光的二極管,當電池處于充電狀態時,它將被一直點亮,而充電故障時該二極管將會不停閃爍,以示警告。電路圖中R5 阻值為4.7 kΩ,為了限制充電時的最大電流,充電電流的上限為500 mA。電容C5 值取100 nF,充電時間的上限設為3 小時,防止過度充電,損壞電池。

圖5 充電芯片控制電路
在充電過程中,單片機對CHG 引腳輸出信號進行監測,當CHG 發出的脈沖周期是4 秒時,則表示充電過程即將結束,這時,脈沖觸發單片機產生外部中斷,使PIC 單片機的T0 定時器進行計數,脈沖周期信號再一次到來時,定時器中程序會自行進行判斷,看計數值是否為4 秒,若是,便通過控制相關的引腳來關斷電池電源,如若不是,則表示充電過程出現故障。
智能充電系統的整個充電過程由單片機PIC16F716 與充電芯片MAXl898 共同完成,具體分為以下五個環節:
(1)預充。充電系統接入電源,連接充電設備后,即開始預充階段。在此階段,充電系統以10%的快充電流向電池充電,電池的溫度和電壓逐步升高。充電系統存在一個預充時間,該時間由電容C5 決定,若在此時間內電池的溫度保持穩定,并且電壓達到預定值,則充電系統馬上轉入快充階段。若超過此預充時間段,且電壓沒有滿足預定值,則認為充電過程發生故障,充電過程將立即結束。
(2)快充。以恒定電流對電池進行充電的過程,在此過程充電系統采用大小恒定的電流對電池進行充電,隨著時間推移,電池電壓稍微變大,當電壓升至預定值時,表示快充過程結束,此時電流迅速降低,充電過程進入滿充階段。
(3)滿充。在此階段,充電的電流逐漸下降,當降至預定值以下后,充電系統開始以微弱的電流進行充電,電池進入慢速充電狀態。同時,當電池充電時間過長時,為保護電池,也會進入滿充階段。由于充電電流較小,滿充充電能有效延長電池的使用時長。
(4)斷電。如果充電芯片MAXl898 檢測到電池已經充滿,或檢測到充電故障,將會通過2 號引腳發送高電平給PIC 單片機,觸發單片機產生中斷,單片機通過定時器程序進一步確認充電過程是否順利完成,若完成或發生充電故障,則通過控制相應引腳來切斷充電電源,以保護充電電池和充電芯片。
(5)報警。充電滿后,綠色的LED 會自動熄滅,用戶可直接取走充電設備。而若充電過程中發生錯誤,綠色的LED 將會不停閃爍,用來提醒用戶充電過程出錯。
智能充電系統的運行狀態與指示燈的狀態對比如表1所示。

表1 指示燈狀態表
對于本充電系統而言,由于在充電的過程中需要經過預充、快充、滿充,最后再斷電的四個步驟,此種充電法在一定程度上減少了充電的出氣量,使充電過程完成的比較徹底。
因此,在軟件模塊設計時,需考慮到每個充電步驟成功與否,再進行相應的流程處理,特別是指示燈的狀態顯示及斷電處理。
根據充電流程和充電指示燈狀態表,設計如圖6所示的智能充電系統軟件流程圖。

圖6 軟件主流程圖
首先,對充電系統進行初始化處理。在初始化時,必須先清除緩存,設定初始參數和看門狗,保證系統的正常運行。同時,由于需要實時檢測充電芯片的充電狀態,如充電電流、充電電壓、充電故障和充電溫度等,需要使用單片機的外部中斷和定時器,因此,需將對應外部中斷和定時器初始化。
其次,在初始化完成后,檢測充電系統是否準備就緒,包括電源狀態,電池狀態和充電芯片的狀態等,確保就緒后進入下一狀態,否則,返回上一流程。
接著,在檢測系統就緒后,開始進入充電流程,對預充、快充和滿充每一階段進行實時監控,根據結果讓系統執行對應操作,如改變指示燈的運行狀態。
最后,無論充電是否成功,只要檢測到充電完成信號,均使整個充電流程結束,并立即斷開充電電源。若出現故障,則指示燈閃爍,若充電成功,則指示燈熄滅。
由于在充電過程中,系統需要根據充電狀態,對預充、快充和滿充進行實時的監測與控制,在編寫中斷程序時,需注意以下問題:
(1)智能充電系統需要同時監測電壓、電流和溫度等,為保證充電系統運行效率,在編程時,可根據PIC18F716 的指令集少、多通道的特點,定時更換寄存器的監測通道,采取多通道切換運行的模式。
(2)智能充電系統需要實時監測充電狀態,以便及時處理不同的充電流程。若采取多線程運行,會大大占用單片機的運行內存,導致系統運行緩慢。因此,本系統可通過單片機的外部中斷和定時計數器來實施監測系統的狀態,并通過設置中斷優先級來處理不同優先級的事件,優先響應高優先級中斷服務子程序,保證充電系統及時處理問題。
在軟件設計時,采用了外部中斷0 和定時器0 來對充電芯片的引腳進行實時監測,外部中斷子程序流程圖如圖7所示。

圖7 外部中斷子程序流程圖
通過啟動外部中斷0,監測充電芯片的對應引腳。當對應引腳發出的脈沖信號時,引起PIC 單片機觸發外部中斷,此時,軟件重新設定定時器0 的初值,并啟動定時器0,單片機T0 開始計數。脈沖周期信號再一次到來時,定時器累計計數,并通過子程序判斷脈沖周期是否為4秒,若不為4秒,表示充電過程出現故障,通過單片機引腳控制指示燈閃爍,閃爍頻率由定時器0 決定。若為4 秒,則表示充電順利完成,通過單片機引腳直接熄滅指示燈。同時,不管充電成功與否,均通過單片機控制電路來使電池電源斷電,結束整個充電的流程。
本文對鋰電池的智能充電技術展開了深入的研究,設計了一種由充電芯片MAX1898 和單片機PIC16F716 為硬件核心的智能充電系統,可以滿足對大部分便攜式電子產品進行智能充電,解決了電子產品充電慢、充電難,且難以統一管理的問題。
一方面,該智能充電系統僅需要較少的外圍電路,可通過單片機和充電芯片對充電過程進行智能監測和控制,既減少了充電系統的設計成本,又達到保護充電電池的目的。另一方面,由于PIC 單片機具有強大的擴展空間,為后續智能充電系統的進一步升級提供了廣闊的平臺,來滿足市場的不斷需求。