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