《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 電源技術(shù) > 設(shè)計(jì)應(yīng)用 > 一種數(shù)控DC電流源的設(shè)計(jì)與實(shí)現(xiàn)(圖)
一種數(shù)控DC電流源的設(shè)計(jì)與實(shí)現(xiàn)(圖)
摘要: 本設(shè)計(jì)采用單片機(jī)作為主要控制部件,,通過(guò)鍵盤(pán)預(yù)置輸出電流值并采用液晶模塊實(shí)時(shí)顯示,。
Abstract:
Key words :

  系統(tǒng)硬件系統(tǒng)設(shè)計(jì)

  本設(shè)計(jì)采用單片機(jī)" title="單片機(jī)">單片機(jī)作為主要控制部件,,通過(guò)鍵盤(pán)預(yù)置輸出電流值并采用液晶模塊實(shí)時(shí)顯示,。整個(gè)系統(tǒng)硬件部分由微控制器模塊、電壓-電流轉(zhuǎn)換模塊,、鍵盤(pán)模塊,、顯示模塊、直流穩(wěn)壓電源模塊和語(yǔ)音提示模塊組成,。系統(tǒng)結(jié)構(gòu)框圖如圖1所示,。

  

  圖1 數(shù)控" title="數(shù)控">數(shù)控DC電流源" title="DC電流源">DC電流源系統(tǒng)

  微控制器是整個(gè)系統(tǒng)的核心,負(fù)責(zé)整個(gè)系統(tǒng)的運(yùn)作,。為了能夠做到硬件電路簡(jiǎn)單,,系統(tǒng)性能穩(wěn)定可靠,便于實(shí)現(xiàn)語(yǔ)音播報(bào),、鍵盤(pán)設(shè)置和信息實(shí)時(shí)顯示等功能的協(xié)調(diào),,通過(guò)多種方案論證后,選用凌陽(yáng)十六位單片機(jī)SPCE061A,。該單片機(jī)采用現(xiàn)代電子技術(shù)——片上系統(tǒng)SOC(system on a chip)技術(shù)設(shè)計(jì)而成,,內(nèi)部集成有ADC、DAC,、PLL,、AGC,、DTMF、LCD-DRIVER等電路(與IC型號(hào)有關(guān)),。它采用精簡(jiǎn)指令集(RISC),,指令周期均以CPU時(shí)鐘數(shù)為單位。另外,,它還兼有DSP芯片功能,,內(nèi)置16位硬件乘法器和加法器,并配備有DSP擁有的特殊指令,,大大加速了各種演算法的運(yùn)行速度,。同時(shí)可以在Windows環(huán)境下使用凌陽(yáng)十六單片機(jī)應(yīng)用開(kāi)發(fā)工具,該工具支持標(biāo)準(zhǔn)C語(yǔ)言和凌陽(yáng)單片機(jī)匯編語(yǔ)言,,集匯編,、編程、仿真等功能于一體,,大大加快了軟件開(kāi)發(fā)過(guò)程,。凌陽(yáng)單片機(jī)具有高速度、低價(jià),、可靠,、實(shí)用、體積小,、功耗低等特點(diǎn),用該單片機(jī)作為控制器比較合適,,在硬件電路簡(jiǎn)單的前提下容易實(shí)現(xiàn)A/D,、D/A轉(zhuǎn)換、語(yǔ)音提示,、PID運(yùn)算等功能,。

  顯示模塊主要實(shí)現(xiàn)的功能是顯示設(shè)置的電流輸出值和其他人機(jī)交互信息。本部分可以采用七段數(shù)碼LED顯示器,,實(shí)現(xiàn)顯示數(shù)字,、簡(jiǎn)單字母和小數(shù)點(diǎn)等信息,但由于其顯示信息單一,,人機(jī)交互不友好,,在系統(tǒng)中采用字符型液晶顯示屏LCDSMC1602A模塊。該模塊具有輕薄短小,、低壓微功耗,、體積小、無(wú)輻射危險(xiǎn),,平面直角顯示及影像穩(wěn)定不閃爍等優(yōu)點(diǎn),。其方便用于顯示字母,、數(shù)字、符號(hào)等信息,,而且不需要擴(kuò)展過(guò)多外圍電路,,可由單片機(jī)直接進(jìn)行控制輸出顯示。

  電壓-電流轉(zhuǎn)換模塊由精密運(yùn)放與3個(gè)晶體管組成的達(dá)林頓管電路構(gòu)成,。轉(zhuǎn)換電路利用晶體管平坦的輸出特性和深度負(fù)反饋電路使輸出電流穩(wěn)定,。如圖2所示,此V/I轉(zhuǎn)換電路的帶負(fù)載能力強(qiáng),,電流輸出范圍達(dá)0~3A,。輸出電流Io經(jīng)反饋電阻Rf得到一個(gè)反饋電壓Vf,Vf= V11-V12,,通過(guò)R5,、R6加到運(yùn)算放大器的兩輸入端,設(shè)運(yùn)放兩端的電為V1,、V2,,Vi由單片機(jī)DAC輸出。因?yàn)槔硐脒\(yùn)放的輸入電流約等于零,,且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=10kΩ,R5=R6=1kΩ,,則有Vf=ViR6/R2=Vi/10,。若暫不考慮反饋時(shí),Io=Vi/(10Rf),。

  

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

  由此可見(jiàn),,輸出電流的標(biāo)定由D/A轉(zhuǎn)換的輸出電壓Vi和Rf決定,為線(xiàn)性變換,。Rf由大線(xiàn)徑康銅絲制作,,其溫度系數(shù)很小(5×10-6/℃),,大線(xiàn)徑可以使其溫度影響減至最小,。3個(gè)三極管應(yīng)選用大功率管TIP122,且使用散熱片,,以保證管子工作在線(xiàn)性區(qū),。

  電壓-電流轉(zhuǎn)換模塊的組成還有另外一種方案,采用3個(gè)運(yùn)放構(gòu)成輸出電流可變的電流源,,如圖3所示,。輸出電流I=Vi/R1,,為使R1兩端的電壓保持恒定,由差分放大器IC1b通過(guò)射隨器IC1c監(jiān)測(cè)R1兩端的電位,,此電位經(jīng)IC1b的7腳加到比較器 ICa的反相輸入端與Vref比較,。比較結(jié)果使比較器的輸出端變化,直到平衡為止,,即Vr1=Vi,。電路中的電容用于補(bǔ)償ICa的頻率,減少控制環(huán)路的延時(shí),。只要R1=R2=R3=R4=R5,,此電路的性能較好。但此電路的帶負(fù)載能力不強(qiáng),,環(huán)路延時(shí)補(bǔ)償對(duì)電路的穩(wěn)定有較大影響,。

  

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

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

  系統(tǒng)硬件系統(tǒng)設(shè)計(jì)

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

  

  圖1 數(shù)控DC電流源系統(tǒng)

  微控制器是整個(gè)系統(tǒng)的核心,,負(fù)責(zé)整個(gè)系統(tǒng)的運(yùn)作。為了能夠做到硬件電路簡(jiǎn)單,,系統(tǒng)性能穩(wěn)定可靠,,便于實(shí)現(xiàn)語(yǔ)音播報(bào),、鍵盤(pán)設(shè)置和信息實(shí)時(shí)顯示等功能的協(xié)調(diào),通過(guò)多種方案論證后,,選用凌陽(yáng)十六位單片機(jī)SPCE061A,。該單片機(jī)采用現(xiàn)代電子技術(shù)——片上系統(tǒng)SOC(system on a chip)技術(shù)設(shè)計(jì)而成,內(nèi)部集成有ADC,、DAC,、PLL、AGC,、DTMF,、LCD-DRIVER等電路(與IC型號(hào)有關(guān))。它采用精簡(jiǎn)指令集(RISC),,指令周期均以CPU時(shí)鐘數(shù)為單位,。另外,它還兼有DSP芯片功能,,內(nèi)置16位硬件乘法器和加法器,,并配備有DSP擁有的特殊指令,大大加速了各種演算法的運(yùn)行速度,。同時(shí)可以在Windows環(huán)境下使用凌陽(yáng)十六單片機(jī)應(yīng)用開(kāi)發(fā)工具,,該工具支持標(biāo)準(zhǔn)C語(yǔ)言和凌陽(yáng)單片機(jī)匯編語(yǔ)言,集匯編,、編程,、仿真等功能于一體,大大加快了軟件開(kāi)發(fā)過(guò)程,。凌陽(yáng)單片機(jī)具有高速度,、低價(jià)、可靠,、實(shí)用,、體積小、功耗低等特點(diǎn),,用該單片機(jī)作為控制器比較合適,,在硬件電路簡(jiǎn)單的前提下容易實(shí)現(xiàn)A/D、D/A轉(zhuǎn)換,、語(yǔ)音提示,、PID運(yùn)算等功能。

  顯示模塊主要實(shí)現(xiàn)的功能是顯示設(shè)置的電流輸出值和其他人機(jī)交互信息,。本部分可以采用七段數(shù)碼LED顯示器,,實(shí)現(xiàn)顯示數(shù)字、簡(jiǎn)單字母和小數(shù)點(diǎn)等信息,,但由于其顯示信息單一,,人機(jī)交互不友好,,在系統(tǒng)中采用字符型液晶顯示屏LCDSMC1602A模塊。該模塊具有輕薄短小,、低壓微功耗,、體積小、無(wú)輻射危險(xiǎn),,平面直角顯示及影像穩(wěn)定不閃爍等優(yōu)點(diǎn),。其方便用于顯示字母、數(shù)字,、符號(hào)等信息,,而且不需要擴(kuò)展過(guò)多外圍電路,可由單片機(jī)直接進(jìn)行控制輸出顯示,。

  電壓-電流轉(zhuǎn)換模塊由精密運(yùn)放與3個(gè)晶體管組成的達(dá)林頓管電路構(gòu)成,。轉(zhuǎn)換電路利用晶體管平坦的輸出特性和深度負(fù)反饋電路使輸出電流穩(wěn)定。如圖2所示,,此V/I轉(zhuǎn)換電路的帶負(fù)載能力強(qiáng),,電流輸出范圍達(dá)0~3A。輸出電流Io經(jīng)反饋電阻Rf得到一個(gè)反饋電壓Vf,,Vf= V11-V12,,通過(guò)R5、R6加到運(yùn)算放大器的兩輸入端,,設(shè)運(yùn)放兩端的電為V1,、V2,Vi由單片機(jī)DAC輸出,。因?yàn)槔硐脒\(yùn)放的輸入電流約等于零,,且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=10kΩ,,R5=R6=1kΩ,,則有Vf=ViR6/R2=Vi/10。若暫不考慮反饋時(shí),,Io=Vi/(10Rf)。

  

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

  由此可見(jiàn),,輸出電流的標(biāo)定由D/A轉(zhuǎn)換的輸出電壓Vi和Rf決定,,為線(xiàn)性變換。Rf由大線(xiàn)徑康銅絲制作,,其溫度系數(shù)很?。?×10-6/℃),,大線(xiàn)徑可以使其溫度影響減至最小。3個(gè)三極管應(yīng)選用大功率管TIP122,,且使用散熱片,,以保證管子工作在線(xiàn)性區(qū)。

  電壓-電流轉(zhuǎn)換模塊的組成還有另外一種方案,,采用3個(gè)運(yùn)放構(gòu)成輸出電流可變的電流源,,如圖3所示。輸出電流I=Vi/R1,,為使R1兩端的電壓保持恒定,,由差分放大器IC1b通過(guò)射隨器IC1c監(jiān)測(cè)R1兩端的電位,此電位經(jīng)IC1b的7腳加到比較器 ICa的反相輸入端與Vref比較,。比較結(jié)果使比較器的輸出端變化,,直到平衡為止,即Vr1=Vi,。電路中的電容用于補(bǔ)償ICa的頻率,,減少控制環(huán)路的延時(shí)。只要R1=R2=R3=R4=R5,,此電路的性能較好,。但此電路的帶負(fù)載能力不強(qiáng),環(huán)路延時(shí)補(bǔ)償對(duì)電路的穩(wěn)定有較大影響,。

  

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

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

  系統(tǒng)工作及軟件流程

  在工作過(guò)程中,, SPCE061A單片機(jī)將被預(yù)置的電流值通過(guò)換算進(jìn)行D/A轉(zhuǎn)換,,以輸出電壓驅(qū)動(dòng)V/I轉(zhuǎn)換電路實(shí)現(xiàn)電路輸出,并將該電流值對(duì)應(yīng)的電壓值通過(guò)閉環(huán)回路,經(jīng)A/D轉(zhuǎn)換后輸入單片機(jī)系統(tǒng),,再通過(guò)PID算法調(diào)整電流輸出,。整個(gè)系統(tǒng)工作流程圖如圖4所示。

  

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

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

  

  圖5 主程序流程圖

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

  

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

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

  離散增量PID的計(jì)算公式為

  ΔIk=Kp[(Ek-Ek-1)+K1Ek+KD(Ek-2Ek-1+Ek-2)]

  =Kp(Ek-Ek-1)+K1’Ek +KD’(Ek-2Ek-1+Ek-2)

  式中,K1’= Kp.K1,, KD’= Kp×KD,Ek為本次采樣時(shí)刻的電流誤差,,Ek-1為上次采樣電流誤差,,Ek-2為再次采樣電流誤差值。

  為了測(cè)試系統(tǒng)運(yùn)行的準(zhǔn)確性和可靠性,,將設(shè)定量與反饋量的進(jìn)行測(cè)試對(duì)比,,誤差在0.01%之內(nèi),并且運(yùn)行穩(wěn)定,,達(dá)到了預(yù)期目的,,還增添了特色的音頻播放設(shè)計(jì)。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。