使用AD7779 24位同步采樣Σ-Δ型ADC實現(xiàn)電能質(zhì)量測量的相干采樣
2016-05-31
作者:Anthony O’Shaughnessy和Petre Minciunescu
簡介
隨著智能電網(wǎng)的發(fā)展,電力公司需要提高電網(wǎng)的可見性和自動化程度。 提高電網(wǎng)基礎(chǔ)設(shè)施的自動化程度可提高電網(wǎng)效率,因為可通過調(diào)整動態(tài)負(fù)載來滿足相應(yīng)需求。 提高可見性和自動化程度需要增強(qiáng)電網(wǎng)節(jié)點的監(jiān)控能力。 為了滿足智能電網(wǎng)的各種要求,輸配電(T&D)產(chǎn)品的用戶需要具備多種功能的高性價比產(chǎn)品。 這些功能包括保護(hù)、測量和質(zhì)量監(jiān)控。 輸配電設(shè)備制造商正在開發(fā)集成式硬件/軟件解決方案來滿足這些要求。 在單個硬件/軟件解決方案中加入這些功能需要具有下述特性的模數(shù)轉(zhuǎn)換器(ADC):
? 一個8/4通道同步采樣24位ADC
? 高動態(tài)范圍(8 kSPS時為114 dB)
? 一個快速建立ADC(低群延遲)
? 微調(diào)ADC輸出數(shù)據(jù)速率(ODR)以促使相干采樣頻率比線路頻率小0.01 Hz
AD7779是一種滿足所有這些要求的24位同步采樣Σ-Δ型ADC。 本應(yīng)用筆記提供了使用AD7779用線路頻率實現(xiàn)相干采樣的方法,并將這些方法與其他方法進(jìn)行了對比。
相干采樣要求
要使電能計量和電能質(zhì)量設(shè)備的諧波數(shù)據(jù)和計量參數(shù)獲得要求的精度,應(yīng)確保ADC采樣速率和電力線頻率之間的相干性。
電力線頻率可在50 Hz ± 15%或60 Hz ± 15%范圍內(nèi)變化。 在電網(wǎng)完善且得到妥善控制的國家,電力線頻率的變化率較低。 在電網(wǎng)正在發(fā)展的國家,電力線頻率變化較大。 電能質(zhì)量標(biāo)準(zhǔn)IEC 61000-4-30規(guī)定了電能質(zhì)量產(chǎn)品分類的相應(yīng)頻率跟蹤分辨率。 A類設(shè)備必須能夠跟蹤0.01 Hz的線路頻率變化,S類設(shè)備必須能夠跟蹤0.05 Hz的線路頻率變化,而B類設(shè)備的跟蹤要求則由制造商確定。 后續(xù)版本的IEC 61000-4-30標(biāo)準(zhǔn)可能會移除B類設(shè)備。
IEC 61000-4-30標(biāo)準(zhǔn)所采用的電壓諧波測量方法在IEC 61000-4-7中確定: 離散傅里葉變換(DFT)使用矩形窗以數(shù)字方式在一組樣本中執(zhí)行。 不建議采用DFT加窗技術(shù),因為DFT窗口的形狀(Hamming、Blackman等)會改變諧波的幅值;如果各制造商采用不同的快速傅里葉變換(FFT)加窗技術(shù),則不同產(chǎn)品供應(yīng)商的諧波分析結(jié)果會有所不同。 因此,IEC 61000-4-30 A類電能質(zhì)量設(shè)備不能使用DFT加窗技術(shù)來實現(xiàn)相干采樣。
實現(xiàn)相干采樣的現(xiàn)有解決方案
客戶目前使用下述方案之一來維持與線路頻率的相干性:
? 使用鎖相環(huán)(PLL)動態(tài)調(diào)整ADC時鐘。
? 使用Goertzel算法對ADC采樣并執(zhí)行DFT。
? ADC進(jìn)行至少4倍過采樣,插入波形樣本,使用常規(guī)傅里葉變換(FFT)算法執(zhí)行DFT。
PPL在模擬或數(shù)字域內(nèi)實施。 它提供的輸出信號的頻率等于輸入信號的基頻。 此信號會動態(tài)調(diào)整ADC時鐘并實現(xiàn)ADC采樣與線路基頻的相干性。 PPL的問題是其響應(yīng)時間,也就是從線路頻率變化時刻到PPL輸出建立時刻的時間。
目錄
簡介 1
相干采樣要求 1
實現(xiàn)相干采樣的現(xiàn)有解決方案 1
修訂歷史 2
采樣速率 4
采樣速率轉(zhuǎn)換器(SRC) 4
將抽取系數(shù)N編入采樣速率轉(zhuǎn)換器 4
將抽取系數(shù)N載入采樣速率轉(zhuǎn)換器 5
轉(zhuǎn)換為新ODR時的延遲 6
頻率 6
圖1顯示了由AD7779和數(shù)字信號處理器(DSP)組成的保護(hù)繼電器和測量系統(tǒng)的框圖,DSP可計算電壓諧波,然后將其用于保護(hù)算法中。 Goertzel DFT算法會根據(jù)實際情況調(diào)整傅里葉變換系數(shù)在整數(shù)線路周期內(nèi)獲得的波形樣本數(shù)量的函數(shù)。 這些系數(shù)為正弦和余弦系數(shù);因此,DSP必須具有較高的帶寬才能應(yīng)對這種負(fù)荷。
也可使用插值方法代替Goertzel算法。 將AD777x的輸出速率設(shè)為32 kSPS,這是通常使用的8 kSPS速率的4倍。 DSP插入波形樣本以使線路周期內(nèi)的相同樣本數(shù)與線路頻率無關(guān)。 插值可以是線性或具有更高的等級,后者得到的結(jié)果更準(zhǔn)確。 DSP必須具有較高的帶寬才能應(yīng)對這種額外的計算負(fù)荷。 請注意,插值會在測量頻帶中引入雜散諧波。
現(xiàn)有解決方案都有缺點,如增加功耗(因為更高的DSP計算帶寬要求)和成本等。 借助AD7779的采樣速率轉(zhuǎn)換器(SRC),用戶可通過使AD7779 ODR具有足夠的分辨率來跟蹤電力線頻率中的0.01Hz變化,獲得A類電能質(zhì)量設(shè)備。 SRC無需采用插值模塊,如圖1所示。
圖1. 保護(hù)繼電器和測量系統(tǒng)框圖
采樣速率
采樣速率轉(zhuǎn)換器(SRC)
Σ-Δ型ADC包括一個可高效消除調(diào)制器噪聲的低通sinc濾波器。 sinc濾波器還可使輸出數(shù)據(jù)速率降低一定數(shù)量的整數(shù)值(與調(diào)制器時鐘速率相關(guān)),該過程稱為抽取。 通常,抽取限制為一定數(shù)量的整數(shù)值。 AD7779上的sinc濾波器具有同步采樣速率轉(zhuǎn)換器(SRC),以便以非整數(shù)值進(jìn)行抽取。 用戶可在使用此高效成熟的sinc濾波器架構(gòu)的同時,隨時間更改此值。
要使SRC可用,AD7779必須處于SPI控制模式下。 上電過程中,通過將FORMAT0引腳和FORMAT1引腳直接與輸入/輸出數(shù)字LDO電源IOVDD相連,選擇此模式。
AD7779專為監(jiān)控主電源電力線網(wǎng)絡(luò)中的交流電壓和電流的應(yīng)用而設(shè)計。 這些應(yīng)用中衡量的兩個主要參數(shù)是傳輸線路頻率和功耗。 通過在ADC產(chǎn)生的輸出上執(zhí)行FFT可確定這兩個參數(shù)。
AD7779可通過允許用戶對特定輸出數(shù)據(jù)速率進(jìn)行編程,在線路頻率內(nèi)維持相干采樣。 用戶可使用SPI接口對sinc濾波器的抽取系數(shù)(N)進(jìn)行編程。 計算輸出數(shù)據(jù)速率(ODR)的公式為
其中:
MCLK為AD7779時鐘頻率。
AD7779設(shè)為高分辨率(HR)模式時M等于4,設(shè)為低功耗(LP)模式時M等于8。
fMOD = MCLK/M,指調(diào)制器的采樣時鐘。
計算抽取系數(shù)N的步驟如下:
1. 將FORMAT0引腳和FORMAT1引腳連接至IOVDD,使AD7779處于SPI控制模式下。
2. 選擇sinc濾波器、抽取率、功耗模式、PGA增益和內(nèi)部/外部電壓基準(zhǔn),方法是使用SPI接口將這些項目寫入相應(yīng)的存儲器映射寄存器。 請注意,AD7779僅具有sinc3濾波器。
3. 選擇ADC的輸出數(shù)據(jù)速率(ODR),數(shù)值必須介于表1列出的最小和最大速率之間。
4. 根據(jù)fMOD = MCLK/M計算調(diào)制器的采樣時鐘。
5. 根據(jù)N = fMOD/ODR計算抽取系數(shù)。
表1. 最小和最大輸出數(shù)據(jù)速率(ODR)
例如,對于AD7779,可在器件設(shè)為LP模式的條件下選用sinc3濾波器。
在一個線路周期內(nèi)對電壓采樣64次,以在64點DFT中ADC輸出樣本。如果線路頻率恰為50.00 Hz,則輸出數(shù)據(jù)速率ODR = 50.00 × 64 = 3.200 kHz。 調(diào)制器的采樣時鐘為
抽取系數(shù)N為
如果線路頻率變?yōu)?0.01 Hz,仍然采樣64次。 此時輸出數(shù)據(jù)速率ODR = 50.01 × 64 = 3.20064 kHz。
抽取系數(shù)N為
使用AD7770/AD7771/AD7779濾波器型號計算抽取系數(shù)和sinc濾波器在任意條件下的響應(yīng)。
將抽取系數(shù)N編入采樣速率轉(zhuǎn)換器
在載入SRC前將抽取系數(shù)N編入存儲器映射。 抽取系數(shù)由一個整數(shù)和一個小數(shù)組成。 抽取系數(shù)編程使用四個存儲器映射寄存器。
兩個寄存器用于對整數(shù)進(jìn)行編程,可編程值的范圍為最小指定值(見表2)至4095。
? 寄存器0x60,SRC_N_MSB位,位[3:0]
? 寄存器0x61,SRC_N_LSB位,位[7:0]
兩個寄存器用于對小數(shù)(又稱插值因子)進(jìn)行編程,可將待編程的小數(shù)表示為16位十進(jìn)制數(shù)。
? 寄存器0x62,SRC_IF_MSB位,位[7:0]
? 寄存器0x63,SRC_IF_LSB位,位[7:0]
表2根據(jù)濾波器類型,詳細(xì)列出了抽取系數(shù)N的最小值和最大值。
表2. 抽取系數(shù)N的最小值和最大值
在“采樣速率轉(zhuǎn)換器(SRC)”部分的例子中,N = 159.968006。 整數(shù)為159,小數(shù)為0.968006。 SRC_N_MSB = 0x00,SRC_N_LSB = 0x9F。
SRC_IF_MSB和RC_IF_LSB寄存器值的計算方法如下:
1. 將小數(shù)乘以216:
0.968006 × 216 = 63,439.24。
2. 取整數(shù)并將其轉(zhuǎn)換為十六進(jìn)制格式:
63,439 = 0xF7CF。
3. 將0xF7寫入SRC_IF_MSB寄存器,將0xCF寫入SRC_IF_LSB寄存器。
AD7770/AD7771/AD7779濾波器型號可計算SRC_N_MSB、SRC_N_LSB、SRC_IF_MSB和SRC_IF_LSB寄存器的每個抽取系數(shù)N(通過計算得到)的寄存器值。
將抽取系數(shù)N載入采樣速率轉(zhuǎn)換器
SRC_N_MSB、SRC_N_LSB、SRC_IF_MSB和SRC_IF_LSB寄存器僅存儲抽取系數(shù)。 這些抽取系數(shù)必須通過SRC加載操作載入DSP。 抽取系數(shù)可通過軟件或硬件加載,具體取決于SRC_UPDATE寄存器(寄存器0x64)中的位7(SRC_LOAD_SOURCE):
? 位0 = SRC_LOAD_UPDATE
? 位7 = SRC_LOAD_SOURCE
如果位7 SRC_LOAD_SOURCE的默認(rèn)值為0,則通過將SRC_LOAD_UPDATE位設(shè)為1進(jìn)行加載。等待至少兩個MCLK周期,然后將SRC_LOAD_UPDATE位清0。該位必須清0后才能嘗試執(zhí)行新的加載。
如果位7 SRC_LOAD_SOURCE設(shè)為1,則ODR在硬件中進(jìn)行控制。 執(zhí)行加載的步驟如下:
1. 將MODE0/GPIO0引腳連接至MODE1/GPIO1引腳。
2. 將MODE2/GPIO2引腳設(shè)為高電平,在LP模式下持續(xù)兩個MCLK周期,在HR模式下持續(xù)一個MCLK周期。 然后將MODE2/GPIO2引腳設(shè)為低電平。
如果多個AD7779器件必須加載相同的同步SRC加載信號,則將一個器件的MODE1/GPIO1引腳連接至其他器件的MODE0/GPIO0引腳。 請注意,同步方法需要使用一個共用MCLK(見圖2)。
圖2. 多個AD7779器件同步
轉(zhuǎn)換為新ODR時的延遲
SRC加載新抽取系數(shù)后,轉(zhuǎn)換為新ODR時會出現(xiàn)延遲。 出現(xiàn)延遲的原因是SRC會進(jìn)入轉(zhuǎn)換序列: 完成以先前的ODR進(jìn)行的濾波器輸出計算,然后開始以新ODR計算輸出。 ODR通過監(jiān)控引腳(引腳30)處的信號的周期進(jìn)行確定。 引腳保持高電平至少一個DCLK脈沖,以顯示最新轉(zhuǎn)換已經(jīng)完成,數(shù)據(jù)即將在DOUT引腳提供。
抽取系數(shù)加載時刻到在引腳處看到新ODR的時刻之間存在延遲。 三或四個脈沖后才會看到新ODR(見圖3)。 確切的延遲時間不固定,因為這取決于相對于脈沖加載SRC的時間。
在采樣速率轉(zhuǎn)變過程中,請勿將新的抽取系數(shù)載入SRC。 任何此種嘗試都將被忽略。
頻率
引腳可用于測量AD7779的ODR。 抽取系數(shù)為整數(shù)時,DRDY引腳的周期始終固定,等于1/ODR。
例如,如果N = 160,則ODR = fMOD/N = 512/160 = 3.2 kHz,脈沖之間的周期為1/3200 = 312.5 μs。 如果N = 159,則ODR = 512/159 = 3.220126 kHz,脈沖之間的周期為1/3220.126 = 310.547 μs。
如果抽取系數(shù)為非整數(shù)值,則的周期將在不同周期之間振蕩,具體取決于抽取系數(shù)四舍五入后得到的整數(shù)。 各個周期的平均值等于預(yù)期ODR。 但是,各個周期始終以編入AD7779的ODR進(jìn)行計算。
例如,如果N = 159.968006,周期將在由N = 159 (310.547 μs)和N = 160 (312.5 μs)確定的周期之間進(jìn)行振蕩,其平均值N/fMOD = 159.968006/512000 = 312.438 μs。
要確定ODR周期是否為預(yù)期數(shù)值,可測量由下述公式顯示的脈沖數(shù)之間的時間。 得到的數(shù)值近似等于獲得預(yù)期ODR所需的時間。
當(dāng)IF≤0.5時,
((1/IF) + 1)脈沖
當(dāng)IF>0.5時,
((1/(1 ? IF)) + 1)脈沖
其中,IF為N的小數(shù)位。
當(dāng)脈沖的數(shù)量不是整數(shù)時,將結(jié)果四舍五入至最近的整數(shù)值。
例如,如果N = 159.968006、IF = 0.968006。 計算預(yù)期ODR周期時必須計數(shù)的脈沖數(shù)如下:
1/(1 ? 0.968006) + 1 = 32.35 33 DRDY脈沖
圖3. 新輸出數(shù)據(jù)速率延遲
?2016 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners.
AN13855-0-2/16(0)