數(shù)控直流電流源的設(shè)計與應用

作者: 2013年07月22日 來源: 瀏覽量:
字號:T | T
本文采用SPCE061A單片機作為數(shù)控直流電流源的主控部件,通過巧妙的軟件設(shè)計與簡易可靠的硬件電路相配合,實現(xiàn)了輸出電流可預置、可步進調(diào)整、輸出電流信號可直接顯示和語音提示等功能。系統(tǒng)采用了閉環(huán)控制方案,將實
      本文采用SPCE061A單片機作為數(shù)控直流電流源的主控部件,通過巧妙的軟件設(shè)計與簡易可靠的硬件電路相配合,實現(xiàn)了輸出電流可預置、可步進調(diào)整、輸出電流信號可直接顯示和語音提示等功能。系統(tǒng)采用了閉環(huán)控制方案,將實際輸出的電流值通過精密電阻采樣反饋,經(jīng)PID算法修正實際輸出值,提高了電流源的輸出精度和穩(wěn)定性。

    在電子設(shè)備中經(jīng)常用到穩(wěn)定性好、精度高、輸出可預置的直流電流源。本文設(shè)計的數(shù)控直流電流源能夠很好地降低因元器件老化、溫漂等原因造成的輸出誤差,輸出電流在20mA~2000mA可調(diào),輸出電流可預置、具有“+”、“-”步進調(diào)整、輸出電流信號可直接顯示和語音提示等功能。硬件電路采用凌陽單片機SPCE061A為控制核心,利用閉環(huán)控制原理,加上反饋電路,使整個電路構(gòu)成一個閉環(huán),在軟件方面主要利用PID算法來實現(xiàn)對輸出電流的精確控制。該系統(tǒng)可靠性高、體積小、操作簡單方便、人機界面友好。

    系統(tǒng)硬件實現(xiàn)方案

    本設(shè)計采用單片機作為主要控制部件,通過鍵盤預置輸出電流值并采用液晶模塊實時顯示。整個系統(tǒng)硬件部分由微控制器、電壓-電流轉(zhuǎn)換、鍵盤、顯示、直流穩(wěn)壓電源和語音提示等模塊組成。系統(tǒng)組成框圖如圖1所示。

圖1 數(shù)控直流電流源的基本模塊方框圖

    微控制器是整個系統(tǒng)的核心,負責整個系統(tǒng)的運作。為了實現(xiàn)簡化硬件電路、系統(tǒng)性能穩(wěn)定可靠,便于實現(xiàn)語音播報、鍵盤設(shè)置和信息的實時顯示等功能的協(xié)調(diào),通過多種方案論證后,微控制器選用凌陽公司的SPCE061A,該單片機內(nèi)部集成有ADC、DAC、PLL、AGC、DTMF、LCD-Driver等電路(與IC型號有關(guān))。它采用精簡指令集(RISC),指令周期均以CPU時鐘數(shù)為單位。另外,它還兼有DSP功能,內(nèi)置16位硬件乘法器和加法器,并配備有DSP擁有的特殊指令,大大加速了各種算法的運行速度。同時可以在Windows環(huán)境下使用凌陽單片機應用開發(fā)工具,該工具支持標準C語言和凌陽單片機匯編語言,集匯編、編程、仿真等功能于一體,大大加快了軟件開發(fā)過程。用該單片機作為控制器比較合適,在硬件電路簡單的前提下,容易實現(xiàn)A/D和D/A轉(zhuǎn)換、語音提示、PID運算等功能。
   
    顯示模塊主要實現(xiàn)的功能是顯示設(shè)置的電流輸出值和其它人機交互信息。本部分可以采用七段數(shù)碼LED顯示器,顯示數(shù)字、簡單字母和小數(shù)點等信息,但由于其顯示信息單一,人機交互不友好,本文采用字符型液晶顯示屏LCDSMC1602A模塊。該模塊具有輕薄短小、低壓微功耗、體積小、無輻射、平面直角顯示及影像穩(wěn)定不閃爍等優(yōu)點,且可視面積大、面效果好、分辨率高、抗干擾能力強,適合用于顯示字母、數(shù)字、符號等信息,而且不需要擴展過多外圍電路,可由單片機直接進行控制輸出顯示。

 

圖2 V/I轉(zhuǎn)換電路圖

    電壓-電流轉(zhuǎn)換模塊由精密運放與三個晶體管組成的達林頓管電路構(gòu)成。轉(zhuǎn)換電路利用晶體管平坦的輸出特性和深度負反饋電路使輸出電流穩(wěn)定,如圖2所示,此V/I轉(zhuǎn)換電路的帶負載能力強,電流輸出范圍達0~3A。輸出電流Io經(jīng)反饋電阻Rf得到一個反饋電壓Vf,Vf= V11-V12,通過R5、R6加到運算放大器的兩輸入端,設(shè)運放兩端的電為V1、V2,Vi由單片機DAC輸出。因為理想運放的輸入電流約等于零,且V1=V2,則:

    V12[1-R6/(R2+R6)]+ViR6/(R2+R6)=V11R1(R1+R6
   
    由于V12 =V11-Vf,則:
   
    V11R2/(R2+R6)+(ViR6-VfR2)/(R2+R6)=V11R1/(R1+R5
   
    令R1=R2=10kW,R5 =R6 =1kW,則有Vf=ViR6/R2=Vi/10
   
    若暫不考慮反饋時,

    Io=Vi/(10Rf
   
    由此可見,輸出電流的標定由D/A轉(zhuǎn)換所得輸出電壓Vi和Rf的阻值決定,成線性變換。Rf由大線徑銅絲制作,其溫度系數(shù)很?。?ppm/℃),大線徑可以使其溫度影響減至最小。3個三極管應選用大功率管TIP122,且使用散熱片,以保證管子工作在線性區(qū)。
   
    電壓-電流轉(zhuǎn)換模塊還有另外一種方案,即采用三個運放構(gòu)成輸出電流可變的電流源,如圖3所示。輸出電流I=Vi/R1,為使R1兩端的電壓保持恒定,由差分放大器IC1b通過射隨器IC1c監(jiān)測R1兩端的電位,此電位經(jīng)IC1b的7腳加到比較器 ICa的反相輸入端與Vref比較,根據(jù)比較結(jié)果使比較器的輸出端變化,直到平衡為止,即Vr1=Vi。電路中的電容用于補償ICa的頻率,減少控制環(huán)路的延時。只要R1=R2=R3=R4=R5,此電路的性能較好,但帶負載能力不強,環(huán)路延時補償對電路的穩(wěn)定有較大影響。

圖3 三運放V/I轉(zhuǎn)換電路

    系統(tǒng)鍵盤模塊可以采用獨立式或行列式(矩陣式)連接方式,該模塊主要完成對輸出電流和其它信息的設(shè)定。直流穩(wěn)壓電源模塊為整個系統(tǒng)供電,語音模塊實現(xiàn)語音提示,使系統(tǒng)設(shè)計更具人性化,系統(tǒng)具有友好的工作界面。凌陽單片機內(nèi)部集成有ADC、DAC、PLL、AGC、DTMF等模塊,語音功能可由軟件編程實現(xiàn),不需要外接任何電路,有效利用了系統(tǒng)資源。

    系統(tǒng)工作及軟件流程
   
    通過以上對各模塊的分析,系統(tǒng)在工作過程中由SPCE061A單片機將被預置的電流通過換算進行D/A轉(zhuǎn)換,以輸出電壓驅(qū)動V/I轉(zhuǎn)換電路,并將該電流對應的電壓通過閉環(huán)回路,經(jīng)信號處理電路作A/D轉(zhuǎn)換后輸入單片機系統(tǒng),通過PID算法調(diào)整電流輸出。整個系統(tǒng)工作流程如圖4所示。

 

圖4 系統(tǒng)工作流程圖

    系統(tǒng)軟件設(shè)計在凌陽十六單片機應用開發(fā)工具unSPIDE1.16.1中進行,采用凌陽單片機匯編語言和標準C語言對單片機進行編程,以實現(xiàn)各種功能。主要包括:(1)系統(tǒng)的初始化,包括各外圍接口設(shè)備的初始化;(2)鍵盤輸入;(3)D/A、A/D轉(zhuǎn)換; (4)PID算法進行電流調(diào)整;(5)語音提示和電流顯示。其主程序流程如圖5所示。

圖5 主程序流程圖圖

    A/D轉(zhuǎn)換部分程序主要用于將采樣電阻采集的模擬電壓信號轉(zhuǎn)換為數(shù)字信號。采樣信號由IoA6輸入并直接送入緩沖器P_ADC_MUX_Data,在ADC自動方式被啟用后,會產(chǎn)生一個啟動信號,此時RDY=0,DAC0的電壓模擬量與外部的采樣模擬量相比較,以盡快找出外部信號模擬量的數(shù)字量,A/D轉(zhuǎn)換的結(jié)果保存在SAR內(nèi)。當10位A/D轉(zhuǎn)換完成時,RDY=1,此時,通過讀P_ADC_MUX_Data單元,可以獲得10位A/D轉(zhuǎn)換的數(shù)據(jù)。其IRQ1 中斷服務(wù)程序的流程如圖6所示。

 

圖6 IRQ1 中斷服務(wù)程序的流程圖

    PID算法主要用于修正實際輸出的電流值和設(shè)定值的偏差,調(diào)節(jié)下一次的輸出值,使輸出更接近于設(shè)定值,提高精度。具體控制過程為:單片機經(jīng)A/D轉(zhuǎn)換芯片讀出實際電流Ik,然后和設(shè)定的電流Is比較,得出偏差值Ek=Is-Ik,單片機根據(jù)Ek的大小,調(diào)用PID公式,計算出本次電流調(diào)節(jié)的增量ΔIk,然后根據(jù)前一次的D/A轉(zhuǎn)換輸出電流Iq-1,計算出本次的輸出電流Iq。
   
    離散增量PID的計算公式為

    ΔIk=Kp[(Ek-Ek-1)+K1Ek+KD(Ek-2Ek-1+Ek-2)]
    =Kp(Ek-Ek-1)+K1Ek+KD’(Ek-2Ek-1+Ek-2
   
    式中:K1= Kp*K1, KD=Kp * KD,Ek為本次采樣的電流誤差, Ek-1為上次采樣電流誤差, Ek-2為再次采樣電流誤差值。
      
    結(jié)語

    為了測試系統(tǒng)運行的準確性和可靠性,可以對設(shè)定量與反饋量進行測試,誤差在0.01%之內(nèi),并且運行穩(wěn)定,達到了預期目的,還增添了特色的音頻播放設(shè)計。凌陽SPCE061A單片機在該系統(tǒng)中使用,使系統(tǒng)功能齊全、外圍電路簡單、輸出精確,軟件編程采用C和匯編混合編程來實現(xiàn),集兩種優(yōu)點于一身,豐富了編程思想,體現(xiàn)了很大的優(yōu)越性。

全球化工設(shè)備網(wǎng)(http://m.bhmbl.cn )友情提醒,轉(zhuǎn)載請務(wù)必注明來源:全球化工設(shè)備網(wǎng)!違者必究.

標簽:

分享到:
免責聲明:1、本文系本網(wǎng)編輯轉(zhuǎn)載或者作者自行發(fā)布,本網(wǎng)發(fā)布文章的目的在于傳遞更多信息給訪問者,并不代表本網(wǎng)贊同其觀點,同時本網(wǎng)亦不對文章內(nèi)容的真實性負責。
2、如涉及作品內(nèi)容、版權(quán)和其它問題,請在30日內(nèi)與本網(wǎng)聯(lián)系,我們將在第一時間作出適當處理!有關(guān)作品版權(quán)事宜請聯(lián)系:+86-571-88970062