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