隨著電子技術的深入發(fā)展,,各種智能儀器越來越多,,涉及領域越來越廣,而儀器對電源的要求也越來越高?,F今,,電源設備有朝著數字化方向發(fā)展的趨勢。然而絕大多數數控電源設計是通過高位數的A/D和D/A芯片來實現的,,這雖然能獲得較高的精度,,但也使得成本大為增加。本文介紹一種基于AVR單片機PWM功能的低成本高精度數控恒流源,,能夠精確實現0~2A恒流,。
系統框圖
圖1為系統的總體框圖。本系統通過小鍵盤和LCD實現人機交流,,小鍵盤負責接收要實現的電流值,,LCD 12864負責顯示。AVR單片機根據輸入的電流值產生對應的PWM波,,經過濾波和功放電路后對壓控恒流元件進行控制,,產生電流,電流再經過采樣電阻到達負載,。同時,,對采樣電阻兩端信號進行差分和放大,送入ADC,。單片機根據采集到的值調整PWM輸出,,從而調整了輸出電流。如此反復,,直到電流達到設定要求,。
圖1 數控恒流源系統框圖
模塊介紹
1 人機接口模塊
本模塊包括小鍵盤電路和液晶顯示電路。鍵盤設計為3×4鍵盤,,由數字鍵0~9,,功能鍵“
刪除”及“確認”組成,,采用反轉法實現鍵值識別,。顯示電路由帶中文字庫的LCD 12864構成,,該液晶可以每行8個漢字顯示4行。由于這部分電路比較簡單,,在此不詳述,。
2 核心控制模塊
系統的核心控制模塊為AVR單片機(ATMEGA 16L)。主要使用了AVR的PWM功能和A/D功能,。
AVR單片機片內有一個具有16位PWM功能的定時/計數器,。在普通模式下,計數器不停地累加,,計到最大值(TOP=0xffff)后溢出,,返回到最小值0x0000重新開始。當啟用PWM功能即在單片機的快速PWM模式下,,通過調整OCR1A的值可實現輸出PWM波的占空比變化,。產生PWM波形的機理是:PWM引腳電平在發(fā)生匹配時(匹配值為0~0xffff之間的值,如圖2中的C),,以及在計數器清零(從MAX變?yōu)锽OTTOM)的那一個定時器時鐘周期內發(fā)生跳變,,具體實現過程如圖2所示。
圖2 PWM波產生過程
圖2中的C~F為OCR1A匹配值,。從圖中可見,,波形在每個匹配值處以及計數清零時輸出發(fā)生變化,從而實現了PWM波,。由于OCR1A的值可以從0x0000到0xffff,,共有65535個值,因此PWM波的最大分辨率為1/65535,,滿足系統分辨率設計要求,。PWM波的頻率為:
(1)
其中,fclk_I/O為系統時鐘頻率 (7.3728MHz),,N為分頻系數(取1,、8、64,、256或1024),。在N取1時,根據式(1)得PWM波的最大頻率為7.3728MHz,;當N取1024時,,PWM波的最小頻率為 7.2kHz。本系統N取256,,PWM波頻率為28.8kHz,。
單片機內部有1個10位的逐次逼近型ADC,當使用片內VCC作為參考電壓Vref,,其分辨率為:
(2)
若使用片內的2.56V基準源作為參考電壓,,依據式(2)可得到其分辨率為0.003V,。
當系統需要更高的分辨率時,可以通過軟件補償的方法來實現,。具體實現方法可參考相關資料,。
3 濾波和功放模塊
圖3 二階RC低通濾波電路
PWM波產生后不能直接用于控制MOSFET,需把其變成能隨占空比變化而變化的直流電壓,。在此,,我們選用二階RC低通無源濾波器,并取得了很好的效果,。
二階RC低通無源濾波器的系統函數為:
(3)
其中,,A為通帶增益,Q為品質因素,, ω0為截止頻率,。根據式(1)算出PWM波的頻率,取截止頻率為30kHz,,由式(3)可確定對應的電阻,、電容值。
由于無源濾波器的負載能力差,,信號經過二階無源濾波網絡后衰減比較厲害,,需要增加一級功率放大電路。功放電路比較簡單,,也有經典電路,,限于篇幅不再贅述。
4 恒流源模塊
恒流源采用的是壓控恒流元件IRF540,,它的VGS為20V,,ID為33A。截止時,,最大漏電流為1μA,,導通電阻僅有0.04Ω,圖4為IRF540的特性曲線,。
圖4 IRF540特性曲線
由圖4可知,,當VGS為5V時,可輸出電流就可達到30A左右,,完全能實現小電壓控制大電流的目的,。具體應用電路如圖5所示。
圖5 橫流電路
IRF540的G極接PWM波轉換后的直流電壓,,D極接能提供15V/5A電流的電源(可采用開關電源),,S極用來接采樣電阻和負載。采樣電阻應采用溫漂系數低、阻值為10mΩ,、精度為1%的大功率錳銅絲電阻,。當對采樣電阻兩端信號進行差分后,可得到采樣電阻兩端的電壓值U,,而在已知采樣電阻阻值情況下,很容易得到流經采樣電阻的電流,,即I=U/R,。由于負載與采樣電阻在同一條支路,故流經負載的電流也為I,。差分放大電路的放大倍數可根據采樣電阻阻值以及ADC的參考電壓來選擇,,圖5中要求R1=R3,R2=R4,,放大倍數為R4/R3,。需要注意的是該電路應該具有很高的輸入阻抗,以減少對負載電路的影響,。差分信號經ADC口送入單片機進行處理,。
軟件設計
由圖6可知,整個系統是一個動態(tài)的閉環(huán)系統,。由于PWM初始匹配值設置的大小不同,,電流值在開始時可能會跟設定值有較大偏差。隨著閉環(huán)系統的自我調整,,逐漸使輸出穩(wěn)定在設定值上下,。系統達到穩(wěn)定狀態(tài)的時間以及穩(wěn)定后電流值波動的幅度,可根據設計要求由軟件來調整,。
圖6 程序流程圖
實驗結果
我們對此數控恒流源進行了負載測試,,測試結果如下:
從表1和表2的實測數據中可以看出,該恒流源在負載為100Ω以內,,最大誤差僅為2mA,,在0~200mA段沒有誤差,滿足了設計要求,,達到了較高的精度,。
如果需要提高200mA段以上的精度,可采用軟件補償的方法實現,。即先測量足夠多的測試數據,,然后采用曲線擬合方法對數據分段進行補償,詳
細方法可參考相關資料,。
結語
本文介紹的基于PWM技術的數控恒流源電路結構簡單,,成本低,系統穩(wěn)定可靠,,精度高,,已經應用于工業(yè)生產,。如果設計要求更高的恒流值,可以更換更大功率的+15V/I電源,,以及更換合適的壓控恒流元件,。