基于AVR單片機PWM功能的數控恒流源研制
隨著電子技術的深入發(fā)展,各種智能儀器越來越多,涉及領域越來越廣,而儀器對電源的要求也越來越高?,F今,電源設備有朝著數字化方向發(fā)展的趨勢。然而絕大多數數控電源設計是通過高位數的A/D和D/A芯片來實現的,這雖然能獲得較高的精度,但也使得成本大為增加。本文介紹一種基于AVR單片機PWM功能的低成本高精度數控恒流源,能夠精確實現0~2A恒流。
系統框圖
圖1為系統的總體框圖。本系統通過小鍵盤和LCD實現人機交流,小鍵盤負責接收要實現的電流值,LCD 12864負責顯示。AVR單片機根據輸入的電流值產生對應的PWM波,經過濾波和功放電路后對壓控恒流元件進行控制,產生電流,電流再經過采樣電阻到達負載。同時,對采樣電阻兩端信號進行差分和放大,送入ADC。單片機根據采集到的值調整PWM輸出,從而調整了輸出電流。如此反復,直到電流達到設定要求。
圖1 數控恒流源系統框圖
模塊介紹
1 人機接口模塊
本模塊包括小鍵盤電路和液晶顯示電路。鍵盤設計為34鍵盤,由數字鍵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電源,以及更換合適的壓控恒流元件。
pwm相關文章:pwm原理
評論