基于單片機(jī)設(shè)計的智能多路信號源
隨著測試設(shè)備的飛速發(fā)展,其性能狀況越來越受到人們的重視,經(jīng)過一段時間要對測試設(shè)備進(jìn)行檢測。主測試板作為測試設(shè)備上的重要部件,它的性能好壞起著重要作用。在對其進(jìn)行性能測試時,由于沒有專用的信號源,一般都是安裝在設(shè)備上進(jìn)行試驗。這不僅費(fèi)時費(fèi)力,而且更重要的是增加了修理成本,因此,迫切需要專用的測試設(shè)備。本信號源就是針對這一問題而設(shè)計的。
2 信號源的設(shè)計要求
根據(jù)對多數(shù)測試設(shè)備修理試驗工藝的分析,該信號源具體要求如下:
四路電壓信號:一路電壓范圍為-25 V~25 V的直流信號源,精度要求為:0 V~1 V的誤差為±0.1V,1 V~25 V的誤差為±0.05 V,-25 V~0 V的誤差為±0.15 V;其中一路產(chǎn)生幅值為0 V~25 V的方波,幅值誤差為±0.2 V,頻率誤差為1 Hz;
一路電壓范圍為-100 mV~100 mV的直流信號源,要求誤差為±0.5 mV;
一路電壓范圍為-0.5 V~0.5 V的直流信號源,要求誤差為±0.005 V;
一路電壓范圍為0 V~5 V的直流信號源,要求誤差為0.01 V。
四路模擬溫度信號。
3 系統(tǒng)硬件設(shè)計
3.1 信號源硬件設(shè)計及工作過程
本系統(tǒng)的硬件部分以Atmel公司的AT89S51單片機(jī)為核心,其外圍電路主要包括:D/A轉(zhuǎn)換電路、電壓轉(zhuǎn)換電路、運(yùn)算放大電路、集電器模擬溫度電路、通信接口電路以及看門狗復(fù)位電路。其核心部分是D/A轉(zhuǎn)換電路和運(yùn)算放大電路,其他電路都是圍繞D/A轉(zhuǎn)換功能完善系統(tǒng)、保證程序正常運(yùn)行而設(shè)計的。通信接口電路實現(xiàn)上位機(jī)與下位機(jī)的數(shù)據(jù)通信;集電器模擬溫度電路實現(xiàn)四路溫度的模擬;看門狗復(fù)位電路監(jiān)控程序的運(yùn)行狀態(tài),在死機(jī)或“程序走飛”時可使系統(tǒng)自動恢復(fù)到正常工作狀態(tài)。圖1所示為系統(tǒng)硬件原理結(jié)構(gòu)框圖。
系統(tǒng)工作過程:上位機(jī)發(fā)送控制字(包括信號通道選擇和信號幅值大小)至下位機(jī)(單片機(jī)),下位機(jī)采集控制字后,由單片機(jī)程序?qū)崿F(xiàn)所選信號通道以及信號幅值的大小。下位機(jī)產(chǎn)生信號后,通過串行總線將數(shù)據(jù)發(fā)送到上位機(jī)并顯示在上位機(jī)相應(yīng)的虛擬面板上。產(chǎn)生的信號通過板卡上的外接信號輸出端口傳輸?shù)綔y試設(shè)備相應(yīng)的通道上,模擬傳感器接收信號。如果測試設(shè)備接收后顯示的信號與板卡輸出的信號大小相一致,則認(rèn)為測試設(shè)備性能良好。
3.2 D/A轉(zhuǎn)換電路和運(yùn)算放大電路
D/A轉(zhuǎn)換電路采用美國德州儀器公司生產(chǎn)的TLC5620。它是一款帶有串行控制的4路8位電壓輸出數(shù)/模轉(zhuǎn)換器(DAC)。每一路均具有兩級緩沖器(輸入鎖存器(Latch)和DAC鎖存器)、一個輸出增益開關(guān),一個8位DAC電路以及一個電壓輸出電路。TLC5620的編程可通過對串行控制字中的RNG位置1或清零來實現(xiàn),其輸出電壓的最大值可以是外部參考電壓的1~2倍。其輸入/輸出電路均為射極跟隨器。
通過簡單的3線串行總線可對TLC5620進(jìn)行控制,其11位的命令字由8位數(shù)據(jù)位、2位DAC選擇位以及1位RNG位組成。DAC寄存器是雙緩沖的,將完整的新數(shù)值寫入器件,然后DAC輸出通過LDAC端的控制同時更新。數(shù)字輸出端帶有施密特觸發(fā)器,因此,該電路具有較高的噪聲抑制性能。
TLC5620采用4個電阻串(resistor-string)來實現(xiàn)D/A轉(zhuǎn)換。每一個DAC的核心是一個帶有256抽頭的單電阻,它們對應(yīng)于0~255的數(shù)字代碼。每個電阻串的一端連接到GND,另一端由基準(zhǔn)輸入緩沖器的輸出饋電。通過使用電阻串保持單調(diào)性,線性度取決于電阻元件的一致性和輸出緩沖器的性能。由于輸入端經(jīng)過緩沖,所以DAC對于基準(zhǔn)源總是呈現(xiàn)為高阻狀態(tài)。
每一個DAC的輸出由一個可控增益放大器緩沖,它可以被配置為×1或×2的增益。上電時,DAC被復(fù)位為全“0”。每一路的輸出電壓可由下式給出:
V0(DACA~DACD)=REF×(CODE/255)×(1+RNG)
其中,CODE的范圍為0~255。RNG位是串行控制字內(nèi)的0或1。
四路+25 V模擬信號采用寬電壓輸出的運(yùn)算放大器OPA551。該運(yùn)算放大器可輸出±30 v電壓,電流最大值200 mA,可滿足本系統(tǒng)要求。其余采用LM324,以節(jié)約成本。方波信號采用定時器的溢出中斷來產(chǎn)生。四路溫度的模擬采用數(shù)字電位器和繼電器實現(xiàn)。調(diào)節(jié)電位器阻值大小實現(xiàn)溫度變化,由繼電器的動作切換開閉溫度的模擬。D/A與運(yùn)算放大器電路如圖2所示。
評論