晏英俊,張自強(qiáng)
(上海師范大學(xué)通信工程系,江蘇上海 200234)
文中在通過對(duì)過采樣技術(shù)的分析,將此技術(shù)應(yīng)用在 TI公司 LM3S8962片內(nèi) ADC上,在不使用昂貴片外 ADC的情況下同樣獲得較高的分辨率。既節(jié)約了成本,又節(jié)省電路板空間,同時(shí)也提高了系統(tǒng)整體可靠性。
過采樣是對(duì)待測(cè)數(shù)據(jù)進(jìn)行多次采樣,獲取樣本數(shù)據(jù),累計(jì)求和這些樣本數(shù)據(jù),并對(duì)它們均值濾波,減小噪聲后最終獲得采樣結(jié)果。過采樣在一定條件下能夠提高信噪比(SNR),同時(shí)使噪聲減弱,從而提升測(cè)量分辨率。過采樣技術(shù)將采樣頻率提高到被采樣頻率的 4倍,能過濾掉高于 3 fb的分量,用數(shù)字濾波器過濾 fb~3fb的分量,最終有用分量被完全保存下來。若采取足夠多次采樣,則能重現(xiàn)原始信號(hào)。式(1)是過采樣的頻率要求
式(1)中,F(xiàn)o為過采樣頻率;n為希望增加的分辨率位數(shù);fb為初始采樣頻率要求。
在提出過采樣與噪聲的對(duì)應(yīng)關(guān)系之前,對(duì)量化噪聲作一簡(jiǎn)單描述。量化誤差是由相鄰 ADC碼的間距所決定,因此相鄰 ADC碼之間的距離為
式(2)中,N為 ADC碼的位數(shù);Vr為基準(zhǔn)電壓。式(3)為量化誤差 ed的關(guān)系式。
奈奎斯特定理指出,如果被測(cè)信號(hào)的頻帶寬度小于采樣頻率的 1/2,那么可以重建此信號(hào)?,F(xiàn)用白噪聲近似描繪實(shí)際信號(hào)中的噪聲,在信號(hào)頻帶中的噪聲能量譜密度為
式(4)中,e(f)為帶內(nèi)能量譜密度;ea為平均噪聲功率;fs為采樣頻率。
ADC量化噪聲的功率關(guān)系如式(5)所示。由于量化噪聲會(huì)引發(fā)固定噪聲功率,因此針對(duì)增加的有效位數(shù)能夠計(jì)算過采樣比
式(6)中 P為過采樣比;fs為采樣頻率;fm為輸入信號(hào)最高頻率。低通濾波器輸出端的帶內(nèi)噪聲功率見式(7),其中 n2是濾波器輸出的噪聲功率
由此可見,過采樣能減少噪聲功率卻又對(duì)信號(hào)功率不產(chǎn)生影響,在減小量化誤差的同時(shí),能夠獲得與高分辨率 ADC相同的信噪比,從而增加被測(cè)數(shù)據(jù)的有效位數(shù)。通過提高采樣頻率或過采樣比可提高ADC有效分辨率。
對(duì)于過采樣,理論上需要信號(hào)有一定噪聲,并且必須近似白噪聲,幅度足夠大。若噪聲信號(hào)不能滿足前面講述的理論要求,就需要引入噪聲激勵(lì)。因此,選用周期性噪聲作為激勵(lì)信號(hào)。同時(shí)對(duì)激勵(lì)噪聲有一定要求:激勵(lì)噪聲幅度≥1 LSB;噪聲均值在添加激勵(lì)噪聲時(shí)必須是 0[4]。
在理解過采樣理論及需要滿足的條件后,出于對(duì)具體應(yīng)用的考慮,設(shè)計(jì)了過采樣的操作步驟,概括如下:
(1)判斷被采樣信號(hào)是否有噪聲,如果沒有噪聲,則疊加周期性激勵(lì)噪聲。
(2)對(duì)信號(hào)進(jìn)行 4n次過采樣(n為希望增加的分辨率位數(shù))。如果使用片內(nèi) 10位 ADC,希望得到 14位的 ADC精度,則需要 44即 256次 10位的過采樣。
(3)抽取數(shù)字序列,對(duì)各個(gè)采樣值進(jìn)行累加。
(4)對(duì)累加后的采樣數(shù)據(jù),若提高 n位精度則右移 n位,最終得到過采樣值。
在 ADC過采樣設(shè)計(jì)中,選用 TI公司 ARM Cortex-M3芯片,主要原因是其功能強(qiáng)大、高性價(jià)比的Cortex-M3內(nèi)核,使過采樣的效率與精度得到進(jìn)一步提升。該內(nèi)核具有如下特性[1]:
(1)采用 ARMv7M架構(gòu),在 ARMv4T架構(gòu)基礎(chǔ)上擴(kuò)展了 36條指令。
(2)基于哈佛結(jié)構(gòu),數(shù)據(jù)與指令可同時(shí)從存儲(chǔ)器讀取,并行執(zhí)行多個(gè)操作,加快程序執(zhí)行速度。與ARM7TDMI-S相比,比 ARM指令每兆赫效率提高了 35%,比 Thumb指令效率提高了 70%。
(3)帶有多種睡眠和喚醒模式,實(shí)現(xiàn)產(chǎn)品的低功耗。
(4)單周期乘法、乘 -加、硬件除法指令,實(shí)現(xiàn)快速運(yùn)算。
(5)低延遲中斷處理:支持 8層硬件中斷嵌套,末尾連鎖功能,高優(yōu)先級(jí)中斷遲來處理。
(1)外設(shè)初始化。
在軟件實(shí)現(xiàn)過采樣之前,必然要對(duì)各個(gè)模塊進(jìn)行初始化和配置。初始化定時(shí)器、ADC、UART等模塊,定時(shí)器模塊用來提供系統(tǒng)時(shí)鐘周期,配置 ADC的觸發(fā)模式和采樣速率,利用 UART將測(cè)量值傳遞給PC,方便查驗(yàn)是否正確。
(2)產(chǎn)生 PWM信號(hào),作為噪聲。
為了保證過采樣原理應(yīng)用的可靠性,引入噪聲激勵(lì)信號(hào)。而為了避免激勵(lì)噪聲出現(xiàn)的誤差,使用內(nèi)部的 PWM信號(hào)發(fā)生器產(chǎn)生周期性和對(duì)稱性很好的 PWM波,作為激勵(lì)噪聲。產(chǎn)生噪聲步驟如圖 1所示。
圖1 產(chǎn)生PWM信號(hào)
(3)數(shù)據(jù)的采集、濾波及抽取。
在過采樣中所做的數(shù)字平均濾波僅提高了平滑度,精度卻并沒有增加,抽取過程才是真正意義上的提高精度。額外的 K次采樣,按照常規(guī)平均那樣進(jìn)行累加,但并不是直接將結(jié)果除以 M,而是右移 N位(N是期待所增加的額外精度),得到更精確的采樣結(jié)果。
過采樣算法如圖 2所示。對(duì) TI的 LM 3S8962芯片,將 10位 AD值的精度提高到 12位的方法,直接調(diào)用寄存器讀取函數(shù) HWREG訪問 FIFO緩存區(qū),經(jīng)過兩次循環(huán),將從 FIFO中收集到的 16個(gè) 10位轉(zhuǎn)換值相加,產(chǎn)生一個(gè) 14位結(jié)果,右移 2位后就得到所希望的 12位 AD值。
圖2 12位過采樣算法
轉(zhuǎn)換速率、穩(wěn)定度和分辨率是模數(shù)轉(zhuǎn)換器的衡量標(biāo)準(zhǔn)。為了能夠清楚地看到利用過采樣技術(shù)后對(duì) AD值改善的效果,采用 LM3S8962芯片進(jìn)行了 12位ADC過采樣實(shí)驗(yàn)。根據(jù)顯示的實(shí)驗(yàn)數(shù)據(jù)和測(cè)量情況,給出并分析了指標(biāo)的改善情況。
對(duì)于轉(zhuǎn)換速率,使用片內(nèi)定時(shí)器進(jìn)行測(cè)量,在CPU為 50 MHz時(shí)鐘頻率狀態(tài),ADC的采樣速度為100 kHz時(shí),采樣連續(xù)觸發(fā)模式進(jìn)行 1次 12位過采樣時(shí)間是 52μs,由于在數(shù)據(jù)轉(zhuǎn)換的同時(shí)還要訪問數(shù)據(jù)緩存區(qū),因此再加上 64μs才是它的實(shí)際速度。
對(duì)數(shù)次采樣后獲得的值進(jìn)行數(shù)字濾波,滑動(dòng)平均后,得到較為穩(wěn)定的數(shù)據(jù)值,通過串口傳送過采樣后的數(shù)據(jù)結(jié)果如圖 3所示。1組數(shù)據(jù)有 6 bit,其中前3 bit是原來的 10位采樣值,后 3 bit是 12位過采樣值。從圖 3中能夠得知,12位過采樣分辨率的值比10位采樣值的分辨率值更穩(wěn)定。
圖3 10位采樣值與 12位過采樣值比較圖
為了驗(yàn)證位數(shù)越高,采樣精度越高,做了一個(gè)13位的過采樣實(shí)驗(yàn)。采樣過程中,循環(huán) 8次,獲得64組 AD值,并利用分段折線法校正非線性誤差,將采樣值轉(zhuǎn)換為標(biāo)準(zhǔn)電壓值。從圖 4中可以看出,過采樣后的電壓值波動(dòng)很小,效果尤為明顯。
圖4 高精度13位過采樣值
文中從過采樣的頻譜特性出發(fā),分析了過采樣技術(shù)的基本原理。隨后采用TI公司高性價(jià)比的 Cortex-M3內(nèi)核 ARM,利用過采樣技術(shù)提高了測(cè)量值的分辨率。實(shí)驗(yàn)結(jié)果表明,利用過采樣技術(shù)既能降低成本,又能使外圍電路得到簡(jiǎn)化,它與 Cortex-M 3內(nèi)核相結(jié)合后,更能提高系統(tǒng)的運(yùn)行速率、可靠性與穩(wěn)定性。這種結(jié)合方式對(duì)于檢測(cè)、監(jiān)控等領(lǐng)域起著積極作用,具有一定的推廣和實(shí)用價(jià)值。
[1]周立功.Cortex-M3開發(fā)指南——基于LM 3S8000[Z].廣州:廣州致遠(yuǎn)電子有限公司,2007.
[2]胡廣書.數(shù)字信號(hào)處理理論、算法與實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2003.
[3]劉青蘭,方志剛.利用過采樣技術(shù)提高 ADC測(cè)量分辨率[J].現(xiàn)代電子技術(shù),2007(12):74-76,79.
[4]牛睿,劉飛.基于AVR單片機(jī)的過采樣原理的實(shí)現(xiàn)方法[J].自動(dòng)化與儀器儀表,2008(3):72-74.
[5]王輝,李奇,倪超.基于DSP的過采樣技術(shù)[J].電子工程師,2003,29(4):44-46.