基于單片機的高精度數(shù)字直流電流源設(shè)計
直流電流源是一種應(yīng)用廣泛的電子儀器,對于要求輸出電流可調(diào)的情況,最簡單實用的方法是通過軟件控制來實現(xiàn)。使用單片機作為主控部件,系統(tǒng)設(shè)計簡單方便。本文設(shè)計的直流電流源是以凌陽61單片機系統(tǒng)[1,2]為核心,采用12位外部擴展MAX531DA和MAX197AD芯片,并在外部電流輸出模塊中引入PI控制[3],構(gòu)成電流閉環(huán),有效消除了由于電子器件本身以及外界干擾造成的輸出誤差,大大提高了電流源的精度。
圖1 系統(tǒng)結(jié)構(gòu)圖
2 系統(tǒng)原理與設(shè)計方案
系統(tǒng)主電路采用全橋整流電路作為負載電路電源,并選用大功率三極管[4]串聯(lián)電路進行電流輸出。控制電路使用凌陽61單片機,單片機掃描鍵盤顯示接口,當有鍵按下時,鍵值通過83編碼器CD4532讀給單片機。單片機控制DA轉(zhuǎn)換,轉(zhuǎn)換輸出值經(jīng)過電流源輸出模塊輸出。輸出電流經(jīng)采樣放大電路一方面?zhèn)鬟f給AD轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字量信號,經(jīng)處理后換算成相應(yīng)的電流值,最終通過液晶顯示;另一方面結(jié)合模板PI調(diào)節(jié)器實現(xiàn)電流閉環(huán)控制,以保證輸出電流值無靜差跟蹤程控給定電流。整個控制系統(tǒng)采用模塊化設(shè)計思想,系統(tǒng)結(jié)構(gòu)如圖1所示。
3 硬件電路設(shè)計
3.1 負載電路電源設(shè)計
本設(shè)計沒有采用開關(guān)電源。因為開關(guān)電源采用高頻斬波電路,雖然可以在輸入電壓波動比較大的情況下高效保持穩(wěn)定的直流輸出,但高頻電路容易產(chǎn)生高頻電磁噪聲,對采樣、控制電路形成干擾。因此,為避免開關(guān)電源對控制電路造成干擾、提高控制和輸出精度,本系統(tǒng)采用傳統(tǒng)的全橋整流電路,作為負載電路電源。
使用輸出功率50W、變比220/15的變壓器,經(jīng)全橋整流后加30000μF電容穩(wěn)壓濾波輸出21V直流電壓,再串入扼流線圈用于減小電流紋波。
本電路還加載了過流保護功能,使用電壓比較器檢測電阻的電壓,當檢測電壓超過最高設(shè)定電壓時,電壓比較器輸出高電平,通過DA的CLR腳使DA清零從而使得負載電流為零,達到過流保護目的。
3.2 電流源輸出模塊
3.2.1 PI控制
程控12位D/A給定進行1:1比例放大電路反向輸出,與電流采樣板輸出的電流反饋進行比較,形成電流閉環(huán),調(diào)節(jié)PI控制器的比例放大系數(shù),使DA輸出量和實際采樣檢測值之間保持線性關(guān)系。系統(tǒng)電流閉環(huán)消除了由運放引起的非線性誤差,并有效抑制模擬電路部分的非線性對AD轉(zhuǎn)換電路的干擾,簡化了軟件部分的設(shè)計。實驗表明,系統(tǒng)輸出電流誤差絕對值小于1mA。
改變電路中的電阻和電容,可進行積分時間和放大系數(shù)的改變。
3.2.2電流放大輸出
從PI控制輸出的電流較小,無法滿足系統(tǒng)輸出電流20mA-2000mA的要求,需附加電流放大電路。為了使電流源帶負載能力更強,電流放大電路接一個PNP型大功率三極管MJ2955輸出,采用NPN型通用三極管9013驅(qū)動MJ2955。考慮到MJ2955的電流比較大,功耗大、發(fā)熱嚴重,系統(tǒng)中使用了散熱器并強迫風(fēng)冷,以保證MJ2955不被燒壞。PI調(diào)節(jié)電路及主電路如圖2。
3.2.3 負載電路
電源輸出端并聯(lián)30000μF的大電容穩(wěn)壓后,再串聯(lián)π型濾波電路濾波,減小電流波動干擾;在負載正極和地之間并聯(lián)60000μF大電容用于減小電流紋波。
3.2.4 電流采樣電路
系統(tǒng)要求電流源輸出電流范圍為20mA到2000mA。當輸出電流為2000mA時,若取采樣電阻為0.5歐姆,則采樣電阻上產(chǎn)生的功率為2瓦,這將導(dǎo)致采樣電阻發(fā)熱,電阻阻值發(fā)生改變,使得電流給定值與實測值之間產(chǎn)生很大誤差??点~絲的電阻溫度系數(shù)比較小,因此系統(tǒng)選用康銅絲作為采樣電阻,用多根較粗的康銅絲并接,同時用風(fēng)扇給電阻降溫,以降低溫漂,保持采樣電阻阻值恒定。
3.3 AD和DA轉(zhuǎn)換模塊的選擇
凌陽61單片機自帶8個通道的10位AD轉(zhuǎn)換器,其中7個為普通AD轉(zhuǎn)換通道,另一個為語音信號輸入通道;61單片機也有兩路DA轉(zhuǎn)換。61單片機的10位AD和DA轉(zhuǎn)換分辨精度為1/1024,而系統(tǒng)輸出電流的誤差絕對值要求小于1mA,因此,應(yīng)該選用更高位數(shù)的AD和DA轉(zhuǎn)換芯片。系統(tǒng)采用12位AD芯片MAX197和12位DA芯片MAX531,基本滿足精度要求。
為提高AD和DA的可靠性,增加系統(tǒng)的抗干擾能力,提高轉(zhuǎn)換精度,系統(tǒng)中對AD和DA電源使用π型濾波器再次進行濾波處理,避免干擾信號串入轉(zhuǎn)換電路。在沒有加入濾波電路之前,測得紋波電流為8mA;在加入濾波電路后,實際測得的紋波電流下降到0.8mA。
3.4 控制模塊
3.4.1 凌陽61單片機最小系統(tǒng)
SPCE061A主要包括輸入/輸出端口、定時器/計數(shù)器、數(shù)/模轉(zhuǎn)換、模/數(shù)轉(zhuǎn)換、串行設(shè)備輸入輸出、通用異步串行接口、低電壓監(jiān)測和復(fù)位等部分,并且內(nèi)置在線仿真電路ICE接口,較高的處理速度使其能夠快速的處理復(fù)雜的數(shù)字信號。SPCE061A 單片機應(yīng)用領(lǐng)域非常廣泛,例如應(yīng)用在家用電器控制器、工業(yè)控制領(lǐng)域。
3.4.2 單片機與AD、DA轉(zhuǎn)換的接口電路
系統(tǒng)采用單片機作為AD和DA轉(zhuǎn)換的控制模塊,只需考慮外部接口電路的設(shè)計,即可方便實現(xiàn)控制過程。芯片MAX531,MAX197均采用內(nèi)電壓基準工作模式,單電源+5V供電。MAX531內(nèi)部給出2.048V基準電壓,MAX197內(nèi)部給出4.096V基準電壓。MAX531提供兩倍增益,即輸出電壓從0V到+4.096V。
由于凌陽61單片機沒有類似于51單片機的控制總線,本系統(tǒng)中對AD、DA的讀寫等控制信號均采用輸出口模擬的方式來提供。AD和DA轉(zhuǎn)換電路如圖3和圖4。
3.4.3 鍵盤和顯示模塊
本系統(tǒng)沒有采用凌陽61單片機自帶的四鍵鍵盤,而是用83編碼器CD4532擴展了8個鍵。這樣可以分級“+”,“-”調(diào)整電流源輸出,達到步進1mA,10mA和100mA。系統(tǒng)提供了一個方便的用戶操作界面,體現(xiàn)了人性化設(shè)計的思想。
基爾霍夫電流相關(guān)文章:基爾霍夫電流定律
評論