A/D轉(zhuǎn)換中的數(shù)字濾波抗干擾技術(shù)
上述的幾種軟件濾波方法對(duì)抑制個(gè)別的異常數(shù)據(jù)方面具有一定作用,然而對(duì)于由工頻干擾引起的平穩(wěn)隨機(jī)干擾信號(hào)不太理想。隨著近幾年來(lái)集成電路的快速發(fā)展,一些數(shù)字濾波器也集成到數(shù)據(jù)處理芯片當(dāng)中,而且數(shù)字濾波器的設(shè)計(jì)參數(shù)通過(guò)軟件可編程實(shí)現(xiàn),具有極大的靈活性和實(shí)用性。
3.1 芯片介紹及應(yīng)用
目前市場(chǎng)上由美國(guó)AD公司新近推出的AD7705 就是一例[1]。它是內(nèi)置了數(shù)字濾波器的帶信號(hào)調(diào)理電路的16位A/D轉(zhuǎn)換器件,可應(yīng)用于低頻測(cè)量的2通道的模擬前端。該器件可以接受直接來(lái)自傳感器的低電壓輸入信號(hào),然后產(chǎn)生串行的數(shù)字輸出,利用∑-Δ轉(zhuǎn)換技術(shù)實(shí)現(xiàn)16位無(wú)丟失代碼性能。選定的輸入信號(hào)被送到一個(gè)基于模擬調(diào)制器的增益可編程專用前端,片內(nèi)數(shù)字濾波器處理調(diào)制器的輸出信號(hào),通過(guò)片內(nèi)控制寄存器可調(diào)節(jié)濾波器的截止點(diǎn)和輸出更新率,從而對(duì)數(shù)字濾波器的第一個(gè)陷波進(jìn)行編程。
AD7705有以下幾個(gè)特點(diǎn):
(1)差分輸入通道ADC,具有16位無(wú)丟失代碼和0.003%非線形誤差;
(2)MCU的接口為串行的三線接口模式;
(3)可編程增益1~128,信號(hào)極性以及更新速率配置有工作寄存器,通過(guò)對(duì)寄存器的操作可以選擇等;
(4) 器件還包括自標(biāo)定和系統(tǒng)校準(zhǔn)功能,以消除器件本身或系統(tǒng)的增益和編程誤差;
(5) 內(nèi)帶數(shù)字信號(hào)處理電路,由軟件可編程進(jìn)行設(shè)置。
引腳排列如圖1。
主要管腳說(shuō)明如下:
MCLK IN:為轉(zhuǎn)換器提供主時(shí)鐘信號(hào),能以晶體/諧振器或外部時(shí)鐘的形式提供。
MCLK OUT:當(dāng)主時(shí)鐘為晶體/諧振器時(shí),晶體諧振器被接在MCLK IN和MCLK OUT之間;如果在MCLK IN引腳處連接一個(gè)外部時(shí)鐘,MCLK OUT將提供一個(gè)反向時(shí)鐘信號(hào)。
CS :片選,低電平有效的邏輯輸入。
A1N2(+)[A1N1]:對(duì)于AD7705,差分模擬輸入通道2的正輸入端;對(duì)于AD7706,模擬輸入通道1的輸入端。
A1N1(+)[A1N2]:差分模擬輸入通道1的正輸入端。
A1N1(-)[COMMON]:差分模擬輸入通道1的負(fù)輸入端。
A1N2(-)[A1N3]:差分輸入模擬通道2的負(fù)輸入端。
DRDY :邏輯輸出。這個(gè)輸出端上的邏輯低電平表示可從AD7705的數(shù)字寄存器獲取新的輸出字。
DOUT:串行數(shù)據(jù)輸出端。
DIN:串行數(shù)據(jù)輸入端。
SCLK:串行時(shí)鐘,施密特邏輯輸入。
從AD轉(zhuǎn)換器件發(fā)展趨勢(shì)來(lái)看,目前的16位A/ D轉(zhuǎn)換器除具有較高的轉(zhuǎn)換精度外,還具有高度的集成化、可編程等特點(diǎn) [2,3]。AD7705符合這些特點(diǎn),其簡(jiǎn)化的應(yīng)用電路如圖2。
圖2給出了一個(gè)完整的前向測(cè)試通道,圖中 AD7705可直接接收傳感器輸入信號(hào),而不用外接信號(hào)調(diào)理電路,模擬量輸出增益可實(shí)現(xiàn)軟件可編程調(diào)節(jié)。輸出的AD值通過(guò)SPI三線口模式發(fā)送給MCU。圖中,MCU采用的是P87LPC764,它是 PHILIPS公司新推出的增強(qiáng)型8位單片機(jī),內(nèi)核與MCS51系列兼容,內(nèi)置電源檢測(cè)、看門(mén)狗WDT、 IIC總線等資源。 AD7705的數(shù)據(jù)接口采用了SPI接口標(biāo)準(zhǔn)。SPI 接口利用4根線可完成主從之間的數(shù)據(jù)通信。接口非常方便。這4根口線分別為時(shí)鐘線(SCLK)、數(shù)據(jù)輸入線(SDI)、數(shù)據(jù)輸出線(SDO)和片選線(CS)。DIN線用來(lái)向片內(nèi)寄存器傳輸數(shù)據(jù),而DOUT線用來(lái)訪問(wèn)寄存器里的數(shù)據(jù)。SCLK是串行時(shí)鐘輸入,所有的數(shù)據(jù)傳輸都和SCLK信號(hào)有關(guān)。DRDY線作為狀態(tài)信號(hào),以提示數(shù)據(jù)什么時(shí)候已準(zhǔn)備好從寄存器讀數(shù)據(jù)。輸出寄存器中有新的數(shù)據(jù)時(shí),DRDY變?yōu)榈碗娖?,在?shù)據(jù)寄存器更新前,若DRDY變?yōu)楦唠娖剑瑒t提示這個(gè)時(shí)候不讀數(shù)據(jù),以免在寄存器更新的過(guò)程中讀數(shù)據(jù)。CS作為片選信號(hào),在本電路中由于只用一片AD7705故CS端接地。
3.2 低通濾波及陷波處理
AD7705包含一個(gè)片內(nèi)低通濾波器,用它處理器件的∑-Δ調(diào)制器的輸出信號(hào)。所以,該器件不僅提供模數(shù)轉(zhuǎn)換功能,而且還具備一定的濾波能力。AD7705內(nèi)嵌了數(shù)字低通濾波器,數(shù)字濾波發(fā)生在模-數(shù)轉(zhuǎn)換之后,它能消除模-數(shù)轉(zhuǎn)換過(guò)程中產(chǎn)生的噪音。此外,數(shù)字濾波器容易實(shí)現(xiàn)可編程性。依靠數(shù)字濾波器設(shè)計(jì),用戶可以編程截?cái)囝l率和輸出更新頻率。
AD7705的數(shù)字濾波器是一個(gè)低通(sin x/x)3 濾波器(也稱為sinc3),其在Z 域的轉(zhuǎn)換功能可描述為,
在3次域可描述為,
圖3是截止頻率為15.72Hz的濾波器頻率響應(yīng),這一頻率與濾波器的第一個(gè)陷波頻率(50Hz)對(duì)應(yīng),這曲線顯示從直流到300Hz。在數(shù)字濾波器采樣頻率的兩邊這個(gè)頻率曲線各重復(fù)一次。這種濾波器響應(yīng)與一個(gè)平均濾波器的相似。因此,圖中的輸出速率為50Hz,濾波器的第一個(gè)陷波頻率為50Hz。這種(sin x/x)3 濾波器的陷波位置多次在第一個(gè)陷波的倍數(shù)處重復(fù)。在這些陷波處濾波器提供大于100dB 的衰減。
AD7705內(nèi)部帶有數(shù)字濾波器,具有抑制干擾功能。對(duì)于50Hz的工頻干擾在第一陷波位置已衰減180dB,這樣有效抑制工頻干擾。另外,我們?cè)诿看尾杉疉D值時(shí),每采集10個(gè)AD值作為一組數(shù)據(jù),去除其中的最大值,最小值而取剩余的8個(gè)A/D轉(zhuǎn)換值的平均值,這樣可有效去除數(shù)據(jù)隨機(jī)誤差。
評(píng)論