利用AD7616的V型采樣實(shí)現(xiàn)準(zhǔn)同步數(shù)據(jù)采集
作者/ 于克泳1 葉健2 1.亞德諾半導(dǎo)體技術(shù)(上海)有限公司(南京 210014)2.亞德諾半導(dǎo)體技術(shù)(上海)有限公司(上海 201210)
本文引用地址:http://cafeforensic.com/article/201709/364882.htm摘要:AD7616是ADI公司推出的一款16位數(shù)據(jù)采集系統(tǒng)(DAS)。對(duì)于多通道非同步采樣型ADC,本文采用“V型采樣+數(shù)據(jù)平均”的模式在AD7616的應(yīng)用中實(shí)現(xiàn)了準(zhǔn)同步采樣,同時(shí)基于AD7616的實(shí)驗(yàn)結(jié)果也驗(yàn)證了理論上的誤差分析。
1 AD7616簡(jiǎn)介
AD7616是ADI公司推出的一款16位16通道數(shù)據(jù)采集系統(tǒng)(DAS) ,同一封裝內(nèi)集成了兩個(gè)16位逐次逼近寄存器型(SAR)模數(shù)轉(zhuǎn)換器(ADC),支持對(duì)16個(gè)通道進(jìn)行雙路同步采樣。AD7616的模擬輸入端為真雙極性輸入,每個(gè)通道的量程可獨(dú)立設(shè)置,有±10 V、±5 V或±2.5 V供選擇,同時(shí)輸入端具有±20V的箝位(CLAMP)保護(hù),而且片內(nèi)集成有抗混疊模擬濾波器。AD7616采用+5 V單電源供電,擁有1Msps的采樣速率并達(dá)到90dB的信噪比(SNR),輸入阻抗與采樣速率無(wú)關(guān),恒定為1M?,因此無(wú)需外部的驅(qū)動(dòng)電路及雙極性電源。
AD7616通過(guò)HW_RNGSEL[1:0]管腳進(jìn)行選擇,工作在硬件模式或軟件模式。硬件模式下,AD7616由引腳進(jìn)行配置。軟件模式下,AD7616支持并口或串口對(duì)內(nèi)部的寄存器及靈活的序列器(Flexible Sequencer)進(jìn)行配置,以獲得更多的功能。AD7616的內(nèi)部框圖如圖1所示。
2 多通道準(zhǔn)同步采樣
電力系統(tǒng)保護(hù)與測(cè)控的應(yīng)用中,需要實(shí)時(shí)監(jiān)測(cè)電網(wǎng)中多相的電壓和電流信號(hào)。為了滿足各種標(biāo)準(zhǔn)的精度要求,傳統(tǒng)的設(shè)計(jì)中通常都是對(duì)多路信號(hào)進(jìn)行同步采樣,因此一般選用多通道同步采樣型的ADC,例如AD7865,AD7656-1,AD7606等都是典型的應(yīng)用選擇。
在某些需要低成本但精度要求不高的應(yīng)用中,工程師嘗試采用一種“MUX模擬開(kāi)關(guān)+單通道ADC”的設(shè)計(jì)方案,如圖2所示,利用模擬開(kāi)關(guān)切換輸入通道,用單通道ADC循環(huán)對(duì)輸入信號(hào)進(jìn)行采樣。由于多通道信號(hào)的非同步采樣,采樣點(diǎn)的間隔時(shí)間會(huì)導(dǎo)致通道間采樣的延遲,并由此帶來(lái)一定的相位誤差或相位失配,誤差的大小與多個(gè)因素相關(guān),取決于輸入信號(hào)的頻率、幅值、采樣時(shí)刻信號(hào)的相位等。
為了減少非同步采樣所帶來(lái)的通道間相位誤差,設(shè)計(jì)一種采樣序列,通道順序?yàn)椤癡IN0→VIN1→ VIN2→…→VIN6→VIN7→VIN6→… →VIN2→VIN1 →VIN0”,如圖3所示。由于采樣序列像一個(gè)大寫(xiě)的字母“V”,我們不妨稱之為“V型采樣”模式。
在圖3“V型采樣”配置下,VIN0 ~ VIN6的每個(gè)通道前后采樣兩次,而且采樣時(shí)刻在VIN7采樣時(shí)刻的兩側(cè)呈對(duì)稱分布。如果ADC的采樣間隔控制為等間距,當(dāng)輸入信號(hào)為線性信號(hào)時(shí),VIN0 ~ VIN6通道前后兩次采樣數(shù)據(jù)的平均值與在VIN7采樣時(shí)刻的結(jié)果是相同的,這就通過(guò)“V型采樣+數(shù)據(jù)平均”的方式實(shí)現(xiàn)了多通道間的準(zhǔn)同步采樣,因此把VIN7的采樣時(shí)間點(diǎn)稱之為“準(zhǔn)同步采樣時(shí)刻”,如圖4所示。
如果輸入信號(hào)為正弦波,采用“V型采樣+數(shù)據(jù)平均”的模式會(huì)帶來(lái)一定的誤差,但相比傳統(tǒng)的“MUX模擬開(kāi)關(guān)+單通道ADC”非同步采樣模式而言,仍然可以大幅減少由于非同步采樣而帶來(lái)的通道間誤差。
3 “V型采樣+數(shù)據(jù)平均”的誤差分析
以正弦波為例,分析“V型采樣+數(shù)據(jù)平均”模式得到的平均值與準(zhǔn)同步采樣時(shí)刻的采樣值之間誤差的大小。為了簡(jiǎn)化分析,將輸入正弦波信號(hào)的幅值歸一化為1.0,并假定第一個(gè)采樣點(diǎn)時(shí)刻對(duì)應(yīng)正弦波的相位為α,第二個(gè)采樣點(diǎn)時(shí)刻對(duì)應(yīng)正弦波的相位為α+2β,參考圖 5所示。
1)前后兩個(gè)采樣點(diǎn)的數(shù)據(jù)平均值為:[sin(α) + sin(α+2β)] / 2 ;
2)準(zhǔn)同步采樣時(shí)刻的正弦波實(shí)際值為:sin(α+β) ;
3)“V型采樣+數(shù)據(jù)平均”所帶來(lái)的誤差Δ為:
Δ = | [sin(α) + sin(α+2β)] / 2 - sin(α+β) | = | [1 - cos(β)] * sin(α+β) | ;
假定正弦波信號(hào)的頻率為Fsig,前后兩個(gè)采樣點(diǎn)之間的間隔為T(mén)span,前后兩個(gè)采樣點(diǎn)的相位差:2β = 2π * Fsig * Tspan ,帶入誤差Δ的公式:Δ = | [1 - cos(β)] * sin(α+β) | = | [1 - cos(π * Fsig * Tspan)] * sin(α+π * Fsig * Tspan) |。
由誤差Δ的表達(dá)式可以看出,一旦輸入正弦波信號(hào)的頻率Fsig及前后采樣點(diǎn)的時(shí)間間隔Tspan確定后,“V型采樣+數(shù)據(jù)平均”帶來(lái)的誤差僅與采樣點(diǎn)時(shí)刻所對(duì)應(yīng)的正弦波相位α相關(guān),并且誤差的最大值為 [1 - cos(π * Fsig * Tspan)]。
Tspan與ADC的采樣率Fsample及前后采樣點(diǎn)間的采樣次數(shù)N相關(guān),即Tspan= N * (1 / Fsample) 。按照?qǐng)D4的配置時(shí),VIN0到VIN6每個(gè)通道的Tspan各不相同,其中VIN0通道的Tspan最大,誤差也將會(huì)最大。假定ADC的采樣率為1Msps且連續(xù)等間隔采樣,則相鄰兩次采樣的間隔為1μs,此時(shí)VIN0通道的Tspan = 14μs。以50Hz的電力系統(tǒng)應(yīng)用為例,用Tspan = 14μs來(lái)計(jì)算“V型采樣+數(shù)據(jù)平均”所帶來(lái)誤差的最大值:
對(duì)于50Hz (基波),誤差最大值為:1 - cos(π * 50Hz * 14μs) < 0.01‰;
對(duì)于250Hz (5次諧波),誤差最大值為:1 - cos(π * 250Hz * 14μs) < 0.1‰;
對(duì)于2550 kHz (51次諧波),誤差最大值為:1 - cos(π * 2550Hz * 14μs) < 6.3‰;
從以上的計(jì)算結(jié)果來(lái)看,“V型采樣+數(shù)據(jù)平均”的模式完全可以滿足電力系統(tǒng)中保護(hù)和測(cè)控的精度要求。下一步將會(huì)用實(shí)驗(yàn)的方法進(jìn)行驗(yàn)證。
4 AD7616準(zhǔn)同步采樣的實(shí)現(xiàn)
在傳統(tǒng)的“MUX模擬開(kāi)關(guān)+單通道ADC”模式中,ADC每收到一個(gè)CONVST啟動(dòng)轉(zhuǎn)換控制信號(hào)后,僅完成一個(gè)通道的轉(zhuǎn)換。這就意味著,要通過(guò)“V型采樣+數(shù)據(jù)平均”的方式來(lái)實(shí)現(xiàn)“準(zhǔn)同步采樣”,需要處理器 (Processor) 發(fā)出一系列的CONVST啟動(dòng)轉(zhuǎn)換控制信號(hào)來(lái)實(shí)現(xiàn)多個(gè)通道的采樣序列,還要求處理器在每次啟動(dòng)轉(zhuǎn)換之前讀出ADC的轉(zhuǎn)換數(shù)據(jù),這既增加了處理器的負(fù)擔(dān),又降低了系統(tǒng)的可靠性。
AD7616內(nèi)部集成了MUX模擬開(kāi)關(guān)和SAR型ADC,特別之處在于還集成有突發(fā)模式 (Burst Mode) 和靈活的通道序列器 (Flexible Sequencer) 。當(dāng)AD7616工作在軟件模式 (Software Mode) 下,通過(guò)設(shè)置序列棧寄存器 (Sequencer stack registers) ,處理器只需要發(fā)出一個(gè)CONVST啟動(dòng)轉(zhuǎn)換控制信號(hào),AD7616將會(huì)自行完成所有設(shè)置通道的轉(zhuǎn)換,并把每一次的轉(zhuǎn)換結(jié)果放在數(shù)據(jù)緩存區(qū)中,待全部通道轉(zhuǎn)換完成后,AD7616將BUSY忙碌指示信號(hào)置低,等待處理器讀取所有通道的轉(zhuǎn)換結(jié)果。AD7616與處理器的連接及內(nèi)部通道序列器的示意圖如圖6所示。
AD7616內(nèi)部有兩個(gè)高速ADC核,稱為A核和B核。通道的序列棧寄存器地址為0x20到0x3F,總共包含32個(gè)寄存器,由用戶編程來(lái)實(shí)現(xiàn)1到32個(gè)預(yù)定的采樣序列。每個(gè)寄存器的寬度為16bit,其中 [7:4] bit定義為BSEL,用來(lái)設(shè)定B核的轉(zhuǎn)換通道, [3:0] bit定義為ASEL,用來(lái)設(shè)定A核的轉(zhuǎn)換通道。寄存器中的 [8] bit定義為SSREN,是通道轉(zhuǎn)換序列的結(jié)束控制位,如果設(shè)定為0,AD7616將調(diào)入下一個(gè)序列寄存器的設(shè)置進(jìn)行轉(zhuǎn)換,如果設(shè)定為1,通道轉(zhuǎn)換序列在完成本次轉(zhuǎn)換后結(jié)束。轉(zhuǎn)換通道的選擇,除了模擬輸入通道VIN0 ~ VIN7,還可以選擇內(nèi)部Vcc,內(nèi)部LDO,或者固定輸出一個(gè)標(biāo)志字0x5555或0xAAAA。AD7616序列棧寄存器的描述如圖7所示。
評(píng)論