基于AT89C52的數(shù)控直流電流源設(shè)計方案
本文設(shè)計的數(shù)控直流電流源能夠很好地降低因元器件老化、溫漂等原因造成的輸出誤差,輸出電流在20—2000mA(可調(diào))、輸出電流可預(yù)置、輸出電流信號可直接顯示等功能。硬件電路采用單片機為控制核心,利用閉環(huán)控制原理,電路組成閉環(huán)負反饋進行穩(wěn)流,最終實現(xiàn)精度高、穩(wěn)定性好、輸出范圍寬的要求。 1 系統(tǒng)組成和原理 1.1 系統(tǒng)的組成 本電流源系統(tǒng)可分為穩(wěn)壓電源電路、單片機控制部分、A/D和D/A轉(zhuǎn)換電路、恒流源電路、人機界面(包括鍵盤輸入與LED顯示)等幾部分,其系統(tǒng)組成如圖1所示。
1.2 系統(tǒng)的工作原理 系統(tǒng)原理如圖1所示,系統(tǒng)通過穩(wěn)壓電源向恒流源提供24V電壓,向單片機AT89C52、A/D和D/A轉(zhuǎn)換器提供5V電壓,通過鍵盤對電流值進行預(yù)置,利用單片機將電流步進值或電流設(shè)定值換算后輸出相應(yīng)的數(shù)字信號,經(jīng)過D/A轉(zhuǎn)換、信號放大,驅(qū)動恒流源輸出電流信號,實際輸出的電流再利用精密電阻采樣變成電壓信號,經(jīng)過A/D轉(zhuǎn)換,將信號反饋到單片機中,單片機將輸出反饋信號再與預(yù)置值比較,送出調(diào)整信號,再輸出新的電流,這樣就形成系統(tǒng)的閉環(huán)調(diào)節(jié),從而提高了輸出電流的精度。顯示電路用于顯示電流設(shè)定值和當前電流測量值。 2 硬件系統(tǒng)的設(shè)計 2.1 單片機控制系統(tǒng)的設(shè)計 在本設(shè)計中,控制芯片主要完成與A/D、D/A的數(shù)據(jù)通信及對其數(shù)據(jù)的處理,實現(xiàn)對系統(tǒng)給定量的設(shè)定和對輸出量的采樣與顯示。同時還檢測各種故障信息,及時地發(fā)出相應(yīng)的報警信號。此外,由于系統(tǒng)屬于強的EMI源,對主控制器芯片的抗干擾性能和故障處理能力有較高的要求,所以,控制芯片采用AT89C52單片機。 2.2 穩(wěn)壓電源 穩(wěn)壓電源采用三端穩(wěn)壓器7805、7824構(gòu)成。由于78系列穩(wěn)壓器最大輸出電流為1.5A,而系統(tǒng)輸出最大電流為2000mA,為此,需外加功率管擴流。[!--empirenews.page--] 2.3 A/D、D/A的轉(zhuǎn)換電路設(shè)計 根據(jù)設(shè)計要求,系統(tǒng)要求輸出的電流信號為20—2000mA,步進為1mA,且要求顯示數(shù)值,因此,給定量的執(zhí)行元件一D/A轉(zhuǎn)換器與檢測元件一A/D轉(zhuǎn)換器至少需要11位的轉(zhuǎn)換精度。結(jié)合系統(tǒng)的設(shè)計要求,并考慮到單片機的I/O接口資源緊張等因素,最終確定選用串行數(shù)據(jù)傳送方式的ADS7841和DAC7512兩款芯片(轉(zhuǎn)換精度均為12位的集成芯片),其量化精度能達到1/4096<1/2000,完全能達到設(shè)計的精度要求。 ADS7841芯片用于將電流檢測電路輸出的模擬電壓信號轉(zhuǎn)換成數(shù)字信號,回送給單片機,由單片機將該反饋信號與預(yù)置值比較,根據(jù)兩者間的差值調(diào)整輸出信號大小,由此構(gòu)成反饋調(diào)節(jié),提高輸出電流的精度。 同時,A/D轉(zhuǎn)換器采樣回來的電流經(jīng)過單片機處理后傳送到LED,用以顯示當前的實際電流值。D/A轉(zhuǎn)換器將設(shè)定的電流值轉(zhuǎn)換為模擬信號并提供給壓控恒流源,控制恒流源的輸出大小。 ADS7841中,在電源輸入端并聯(lián)一個0.1IzF的電容去耦,同時并聯(lián)一個101_LF的電解電容來提高供電的穩(wěn)定性。根據(jù)其技術(shù)資料,將引腳端1和端2短接就能實現(xiàn)5V的基準源輸出,并在引腳端6和7之間接一個0.1仙F的電容,能有效地提高抗干擾性能。 2.4 恒流源電路 恒流源模塊電路的設(shè)計是本系統(tǒng)硬件設(shè)計的核心,它是用電壓來控制電流的變化。為了能產(chǎn)生恒定的電流,我們采用電壓閉環(huán)反饋控制。恒流源電路原理圖如圖2所示,該電路由運算放大器、大功率達林頓管、采樣電阻Rs、負載電阻RL等組成。取樣電阻RS從輸出端進行取樣,再與基準電壓比較,并將誤差電壓放大后反饋到調(diào)整管,使輸出電壓在電網(wǎng)電壓變動的情況下仍能保持穩(wěn)定。電路中調(diào)整管采用大功率達林頓管TIPl27,既能滿足輸出電流最大達到2A的要求,也能較好地實現(xiàn)電壓近似線性地控制電流。Rs選用熱穩(wěn)定性好的康銅絲,并選取較大的阻值(2Q),使得在電流較低時也能獲得較大的電壓值。運算放大器采用高精度的OP一27作為電壓跟隨器。當Ui一定時,運算放大器的Ui=Uf,Io=Is=U1/Rs,達林頓管的,Ic≈Ie。(基極電流相對很小,可忽略不計),所以Io=Is=Ui/Rs……正因為I0=Ui/Rs,電路輸入電壓配Ui控制電流Io,即I0不隨RL的變化而變化,從而實現(xiàn)壓控恒流。
2.5 電流采樣電路 輸出電流采樣電路測量Rs兩端的電壓差,根據(jù),I=U/R換算得到電流值。電路原理圖如圖3所示。通過對電阻Rs兩端的電壓值進行采樣,經(jīng)過運算放大器送入A/D轉(zhuǎn)換器ADS7841進行轉(zhuǎn)換。因為A1、A2為電壓跟隨器,輸入電阻高,所以采樣端V1、V2幾乎不分流,從而實現(xiàn)對電流的精確采樣。因為采樣電阻Rs兩端有較高的電壓,所以,差分電路中的運放器采用雙電源供電。因為電流輸出的范圍較寬,所以放大倍數(shù)不能太大。Rs=2Ω,測量的電流范圍為0—2000mA。
Rs兩端的電壓在0—4V的范圍內(nèi)變化。將該電平輸入到ADC輸入,因(V1一V2)和A/D的數(shù)字采樣之間具有線性對應(yīng)關(guān)系,故通過單片機就可以測量出(V1-V2)的電壓值,從而計算出恒流源的輸出電流。 [!--empirenews.page--] 人機界面包括鍵盤和顯示電路,主要是為了實現(xiàn)對電流值的任意設(shè)定,對給定值和輸出值實時顯示。 輸入設(shè)備采用輕觸按鍵來實現(xiàn),顯示部分采用LED顯示。由于顯示的電流值最多為4位,所以在設(shè)計中使用了8個共陽極數(shù)碼管,采用動態(tài)掃描的方式實現(xiàn)。 為了增強位選信號的驅(qū)動能力,將位選端口接在9012三極管的基極,使9012三極管工作在開關(guān)狀態(tài),大大提高了數(shù)碼管顯示的亮度。 3 系統(tǒng)的軟件設(shè)計 為了提高代碼的執(zhí)行效率,系統(tǒng)軟件設(shè)計均采用匯編語言編寫。單片機軟件主要包括主程序,A/D電流采樣子程序,D/A輸出電流給定值及鍵盤顯示等程序。A/D采樣子程序主要是采集電路中的電流信號,再通過單片機運算并顯示當前的電流大小。D/A輸出程序?qū)⒂脩粼O(shè)定的恒流值轉(zhuǎn)換成為模擬信號,并提供給壓控恒流源,實現(xiàn)恒流控制。鍵盤與顯示程序用LED動態(tài)顯示數(shù)據(jù)信息,在一個主程序周期中掃描檢測一次鍵盤,察看是否有有效的鍵按下,再根據(jù)鍵盤狀態(tài)做出相應(yīng)的處理。系統(tǒng)軟件流程圖如圖4所示。 4 系統(tǒng)測試 采用數(shù)字萬用表DT9904C(四位半)為測量儀器,以毫安檔與負載串聯(lián),通過鍵盤預(yù)置輸出的電流值,在不同的預(yù)置值下測量實際的電流值,檢測結(jié)果如表1。 [!--empirenews.page--] 改變負載電阻,讓輸出電壓在0—10V以內(nèi)變化時,測出輸出電流變化的絕對值,檢測結(jié)果如表2。 5 結(jié)語 系統(tǒng)輸出實際測試結(jié)果表明,本直流電流源的輸出電流范圍為20—2000mA,步進lmA或10mA可變。 改變負載電阻,輸出電壓在10V以內(nèi)變化時,輸出電流變化的絕對值小于輸出電流值的0.1%+1mA,紋波電流小于O.2mA,是一個較為理想的直流電流源。