系統框圖
圖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引腳電平在發生匹配時(匹配值為0~0xffff之間的值,如圖2中的C),以及在計數器清零(從MAX變為BOTTOM)的那一個定時器時鐘周期內發生跳變,具體實現過程如圖2所示。

圖2 PWM波產生過程
(1)
單片機內部有1個10位的逐次逼近型ADC,當使用片內VCC作為參考電壓Vref,其分辨率為:
(2)
當系統需要更高的分辨率時,可以通過軟件補償的方法來實現。具體實現方法可參考相關資料。
3 濾波和功放模塊

圖3 二階RC低通濾波電路
二階RC低通無源濾波器的系統函數為:
(3)
由于無源濾波器的負載能力差,信號經過二階無源濾波網絡后衰減比較厲害,需要增加一級功率放大電路。功放電路比較簡單,也有經典電路,限于篇幅不再贅述。
4 恒流源模塊
恒流源采用的是壓控恒流元件IRF540,它的VGS為20V,ID為33A。截止時,最大漏電流為1μA,導通電阻僅有0.04Ω,圖4為IRF540的特性曲線。

圖4 IRF540特性曲線

圖5 橫流電路
軟件設計
由圖6可知,整個系統是一個動態的閉環系統。由于PWM初始匹配值設置的大小不同,電流值在開始時可能會跟設定值有較大偏差。隨著閉環系統的自我調整,逐漸使輸出穩定在設定值上下。系統達到穩定狀態的時間以及穩定后電流值波動的幅度,可根據設計要求由軟件來調整。





