摘 要:
設計了基于單片機的智能充電器,介紹了其硬件和軟件實現。該充電器可以實時采集和計算電池的參數,并進行智能控制,還可以通過串口和上位機進行通訊并進行實時
關鍵詞:智能充電器 單片機 開關電源 鋰離子電池
現代通訊設備、便攜式電子產品、筆記本電腦、電動汽車、小衛星等普遍使用蓄電池作為電源,應用非常廣泛。然而大多數設備中的蓄電池,只能使用專用的充電器,而且普通的充電器大多充電時間長,無法判斷其充電參數和剩余的充電時間。
本文介紹一種基于單片機的通用智能充電器的設計。充電器可以實時采集電池的電壓、電流,對充電過程進行智能控制,計算電池已充的電量和剩余的充電時間;還可以通過串口和上位機進行通訊并給用戶顯示必要的信息,有虛擬儀表的作用;另外,它也可以改變參數,適應各種不同電池的充電。這里列舉幾種不同的電池充電試驗,來說明智能充電器的實用價值。
1 智能充電器的硬件設計
智能充電器如圖1所示。主要包括電源變換電路、采樣電路、處理器、脈寬調制控制器和電池組等,形成了一個閉環系統[4]。下面對系統的工作原理分幾個部分進行簡述。
1.1 處理器
處理器采用51系列單片機89C51。單片機內部有兩個定時器、兩個外部中斷和一個串口中斷、三個八路的I/O口,采用11.0592MHz的晶振。單片機的任務是通過采樣電路實時采集電池的充電狀態,通過計算決定下一階段的充電電流,然后發送命令給控制器控制電流的大小。單片機通過串口RS232和上位機相連,用于存儲數據和虛擬顯示。
1.2 采樣部分
電壓和電流采樣采用模/數轉換器AD574。AD574為±15V雙電源供電,12位輸出,最大誤差為±4bit,合計電壓0.01V。
充電電流通過電流傳感器MAX471轉換為電壓值。電流采樣的電壓值和電池組的端電壓值兩者經過模擬開關CD4051,再經過電壓跟隨器輸入到AD574,分別進行轉換,其結果由單片機讀取,并進行存儲和處理。主要的電路連接如圖2所示。
1.3 控制器
控制器采用脈寬調制(PWM)方式控制供電電流的大小。PWM發生器由另一個20MHz的單片機構成,主控制器和它采用中斷的方式進行通訊,控制其增大或減小脈寬。PWM信號通過光電隔離驅動主回路上的MOSFET。開關管、二極管、LC電路構成開關穩壓電源。用PWM方式控制的開關電源可以減小功耗,同時便于進行數字化控制,但母線的紋波系數相對較大。PWM控制電路如圖3所示。
2 智能充電器的軟件設計
2.1 數據測量
在單片機的測量中,電池電壓值和電流測量值經過多路選擇器進行選擇,然后通過A/D轉換器轉換為16進制數,直接存入單片機。電池電容量C則需要間接計算,由于每個循環 周期檢測電流一次,故可以利用電流值的積分求出電容量C??紤]電池內阻r的影響,可以得到計算電容量的計算公式為:
Cn+1=Cn+I·t-I2·r·t
充電時間和剩余充電時間由上位機進行計算,剩余充電時間等于預設的充電時間與已充電時間的差值。其中,預設時間可根據電池的型號預先得到。
2.2 單片機控制程序設計
對于不同的電池和不同的參數,單片機需要設定不同的充電參數,選擇不同的充電策略。另外,程序需要在電池過電流、過電壓等異常情況下強制終止充電。以鋰離子電池為例,一般采用恒流-恒壓充電方式,其充電過程包括小電流預充電、大電流充電、恒壓充電等幾部分。其充電控制程序流程圖如圖4所示。
在控制恒定電流和恒定電壓的過程中,采用比例控制,即如果充電電流I大于設定電流Is,就按照比例減小脈寬;反之按照比例增大脈寬。單片機還需要接收和處理上位機的命令,并根據上位機的要求將數據實時回送給上位機。兩者的通訊協議要在程序中預先設定。
2.3 上位機處理程序設計
上位機程序由VisualC++編寫。其任務是每隔1秒鐘向串口發送一個查詢命令,并讀取單片機回送的信息,提取充電電流、充電電壓、工作狀態等參數。參數經過數制轉換和計算后進行顯示。軟件有著良好的用戶界面,可以方便地觀測電池目前的工作狀態以及剩余充電時間等信息。上位機程序會同時把讀到的數據存儲到文件中,這些數據可以利用其它數學軟件(如Matlab)進行處理。
另外,程序在初始化時要把充電電池的型號參數發送給智能充電器,參數一般包括充電電池的種類(鋰離子電池、鎳鎘電池)、充電電池的容量(單位為mAh)等。根據不同的電池型號,單片機可以設定不同的充電參數,程序可以直接控制單片機的運行與停止。
3智能充電器的應用試驗
3.1充電性能試驗
這里選用型號為US18650的SONY鋰離子電池,其額定容量為1800mAh;經過測量,電池在4.2V左右時的內阻約為0.3Ω。取恒流充電電流為1/3C=0.6A,截止電壓為4.2V,充電結束標志電流為0.06A,進行充電試驗。圖5為充電過程的電壓、電流和電容量的曲線。
圖6 NOKIA商用電池充電試驗
充電時間約為240分鐘,如果需要進一步縮短充電時間,只需在初始化時設定更大的充電電流即可。因為采用PWM控制器,所以電源供電的效率高,從供電電源到充電電池的工作效率,最低時在85%左右。充電電流波動較大,波動系數約為5%。
3.2 智能充電器通用性試驗
選用NOKIA6100鋰離子電池(額定容量為550mAh),用恒流-恒壓充電方式進行充電,取恒流充電電流為0.15A,截止電壓為4.2V,充電曲線如圖6所示。
從充電曲線來看,電池電壓達到3.96V時就不再上升了,充電電流也不再下降了??梢耘袛嗌逃秒姵貎炔坑斜Wo電路,將多余的電流旁路了,這樣的保護電路使充電過程中能量損耗很大。試驗曲線顯示在四小時時電池電量已經達到550mAh,但實際上并沒有達到滿充。此實驗證明,此充電器可以作為一般的商用電池的通用充電器,充電速度快,效果良好。不足的是它與實際的充電電池在機械接口上還不能匹配,需要進一步改進