基于EasyARM1138的電能收集充電器設計
1.2.2 PWM發生器
PWM發生器集成在EasyARM1138系統中,利用定時器(Timer)模塊的16 bit PWM功能來產生PWM信號。在PWM模式中,TimerA或TimerB配置為16 bit元元元的遞減計數器,通過設置適當的裝載值(決定PWM周期)和匹配值(決定PWM占空比)來自動產生PWM方波信號,并從相應的CCP管腳輸出。
本方法的基本思想是利用EasyARM1138所具有的PWM(CCP)管口,在不改變PWM方波周期的前提下,通過軟件的方法調整PWM控制寄存器來調整PWM的占空比,從而控制充電電流。在調整充電電流前,處理器先快速讀取充電電流的大小,然后把設定的充電電流與實際讀取到的充電電流進行比較。若實際電流偏小,則向增加充電電流的方向調整PWM的占空比;若實際電流偏大,則向減小充電電流的方向調整PWM的占空比。在軟件PWM的調整過程中要注意ADC的讀數偏差和電源工作電壓等引入的紋波干擾,合理采用算術平均法等數字濾波技術。
1.3 采樣電路
采樣包括對充電電流和充電電池端電壓的采樣。采樣的電壓和電流經EasyARM1138中的1個集成的10 bit ADC模塊送到LM3S1138控制芯片中,LM3S1138對數據進行處理與保存。ADC模塊支持8個輸入通道,輸出最大誤差為±3 mV,±3.3 V電源供電,并含有4個可編程的序列發生器,這些序列發生器可在無需控制器干涉的情況下對多個模擬輸入源進行采樣。電流與電壓采樣原理圖如圖3所示。本文引用地址:http://www.104case.com/article/151829.htm
(1)電流和電壓采樣
為了降低成本,設計中對電流采樣不外加傳感器,通過1個傳感電阻R6把流過電池的電流轉換成電壓后,再進行ADC轉換取樣。流過電池的電流可能會很大(超過1 A),如果傳感電阻取得較大,那么就會產生較大的電壓降,根據功率計算公式:P=I2R,消耗的功率太大,就會產生較多的熱量,顯然這樣做是不可取的。本設計中使R6=0.1 Ω,用LM358運算放大器把電壓放大到3 V左右,再傳送到ADC轉換器的ADC1管腳[2]。電壓采樣直接通過改變滑動電阻R4的大小,使輸出電壓在0~3 V額定范圍,再傳送到ADC轉換器的ADC0管腳進行數據轉換。
評論