0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一種使用Python分析混合模式信號鏈中噪聲的簡單方法

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:Mark Thoren and Crist ? 2022-12-13 16:27 ? 次閱讀

作者:Mark ThorenandCristina ?uteu

任何涉及物理世界靈敏測量的應(yīng)用都始于精確、精密和低噪聲信號鏈?,F(xiàn)代、高度集成的數(shù)據(jù)采集設(shè)備通??梢灾苯舆B接到傳感器輸出,在單個硅器件上執(zhí)行模擬信號調(diào)理、數(shù)字化和數(shù)字濾波,從而大大簡化了系統(tǒng)電子元件。然而,仍然需要全面了解信號鏈的噪聲源和噪聲限制濾波器,才能從這些現(xiàn)代器件中提取最大性能并進(jìn)行調(diào)試。

介紹

教程轉(zhuǎn)換器連接教程的延續(xù)。1,2它將專注于單個信號鏈元件的噪聲,并使用Python/SciPy對其進(jìn)行建模。3和LTspice。然后,它將通過使用Python通過libm2k和Linux工業(yè)輸入輸出(IIO)框架驅(qū)動ADALM2000多功能USB測試儀器來驗證結(jié)果。所有源代碼和其他討論均可在配套的主動學(xué)習(xí)實驗室練習(xí)中找到。??

混合模式信號鏈無處不在。簡而言之,任何將真實信號轉(zhuǎn)換為電表示然后數(shù)字化的系統(tǒng)都可以歸類為混合模式信號鏈。在鏈條上的每個點(diǎn),信號都會以各種方式降級,通??梢员碚鳛槟撤N形式的失真或附加噪聲。一旦進(jìn)入數(shù)字領(lǐng)域,數(shù)字化數(shù)據(jù)的處理也不是完美的,但至少出于所有實際目的,它不受許多影響模擬信號的因素的影響——元件容差、溫度漂移、來自相鄰信號的干擾或電源電壓變化。

隨著行業(yè)不斷突破物理極限,有一點(diǎn)是肯定的:儀器儀表的模擬和混合信號組件總是有改進(jìn)的余地。如果市場上出現(xiàn)模數(shù)轉(zhuǎn)換器ADC)或數(shù)模轉(zhuǎn)換器DAC),在速度,噪聲,功率,精度或價格方面處于領(lǐng)先地位,制造商將很樂意將其應(yīng)用于現(xiàn)有問題,然后要求更多改進(jìn)。然而,為了為您的應(yīng)用實現(xiàn)最佳的采集系統(tǒng),了解組件的局限性并相應(yīng)地選擇它們是至關(guān)重要的。

通用混合模式信號鏈

圖1顯示了精密儀器儀表應(yīng)用的典型通用信號鏈,具有物理輸入和數(shù)字輸出。有許多關(guān)于ADC的背景參考資料可用,4大多數(shù)讀者會感覺到ADC在某個時間點(diǎn)對輸入信號進(jìn)行采樣(或測量信號在某個觀察時間內(nèi)的平均值),并生成該信號的數(shù)值表示形式 - 通常是二進(jìn)制數(shù),其值介于0到2之間(N – 1)其中 N 是輸出字中的位數(shù)。

403690-fig-01.svg?h=270&hash=A83DDB3D9A730B690C3AE2822877EADA&imgver=1

圖1.在混合模式信號鏈中,溫度、光強(qiáng)度、pH、力或扭矩等一些物理現(xiàn)象被轉(zhuǎn)換為電參數(shù)(電阻、電流或直接轉(zhuǎn)換為電壓)。然后,該信號被放大、低通濾波,并由ADC數(shù)字化,其中可能包括內(nèi)部數(shù)字濾波。

模數(shù)轉(zhuǎn)換器噪聲源

雖然圖1中有幾個噪聲源,但ADC數(shù)字輸出中的位數(shù)經(jīng)常被忽略或過分強(qiáng)調(diào)。從歷史上看,ADC的位數(shù)被認(rèn)為是最終品質(zhì)因數(shù),其中16位轉(zhuǎn)換器被認(rèn)為比14位轉(zhuǎn)換器好4倍。5但在現(xiàn)代高分辨率轉(zhuǎn)換器的情況下,位數(shù)可以安全地忽略不計。注意信號鏈設(shè)計的一般原則:

“一級的輸入噪聲應(yīng)略低于前一級的輸出噪聲。

與任何信號鏈一樣,ADC內(nèi)的一個噪聲源通常占主導(dǎo)地位。因此,如果將無噪聲信號施加到N位ADC:

產(chǎn)生單個輸出代碼或兩個相鄰輸出代碼,則量化噪聲占主導(dǎo)地位。信噪比(SNR)不能大于(6.02 N + 1.76)dB。6

導(dǎo)致許多輸出代碼的高斯分布,然后熱噪聲源占主導(dǎo)地位。信噪比不大于:

403690-eq-01.svg?la=en&imgver=1

哪里:

V在(p-p) 是滿量程輸入信號。
σ是以電壓單位表示的輸出代碼的標(biāo)準(zhǔn)偏差。

超高分辨率轉(zhuǎn)換器,如稍后將用作示例的AD7124-8,很少受到量化噪聲的限制;熱噪聲在所有增益/帶寬設(shè)置中占主導(dǎo)地位,短路輸入將始終產(chǎn)生相當(dāng)高斯的輸出代碼分布。圖2顯示了24位Σ-Δ型ADC7124-8的接地輸入直方圖,內(nèi)部可編程增益放大器(PGA)分別設(shè)置為1和128。

403690-fig-02.svg?h=270&hash=4508206C0AAA66CB5D01D83C90FFAA5C&imgver=2

圖2.PGA增益為1(左)時,AD7124輸出噪聲表示13個代碼,標(biāo)準(zhǔn)偏差約為2.5個代碼。雖然量化是可見的,但熱噪聲更為顯著。PGA增益為128(右)時,表示187個代碼,量化噪聲微不足道。截斷一個或兩個最低有效位(加倍或四倍量化噪聲)不會導(dǎo)致信息丟失。

建模和測量ADC噪聲

對熱噪聲受限ADC的噪聲進(jìn)行建模非常簡單。如果噪聲“表現(xiàn)良好”(如圖2所示為高斯噪聲)且在整個ADC輸入范圍內(nèi)恒定,則可以使用NumPy的7隨機(jī)正態(tài)函數(shù),然后通過取標(biāo)準(zhǔn)差進(jìn)行驗證,如圖3所示。

poYBAGOYN3iAJe4jAACP4iWq6tg875.jpg?h=270&hash=7F05D76E81A86491A16CC0B7D50344CB&imgver=1

圖3.使用 NumPy 對高斯噪聲進(jìn)行建模。

403690-fig-04.svg?h=270&hash=91684C6E958AD9AB24AE3CA62EF7AACA&imgver=1

圖4.ADALM2000是一款多功能USB測試儀器,具有兩個通用模擬輸入和兩個輸出,采樣速率分別為100 MSPS和150 MSPS。它可以用作測量ADC噪聲帶寬和濾波器響應(yīng)的簡單信號源。運(yùn)行內(nèi)核的Raspberry Pi 4支持AD7124器件驅(qū)動程序,充當(dāng)AD7124和主機(jī)之間的簡單橋梁。

AD7124器件驅(qū)動程序?qū)儆谛袠I(yè)標(biāo)準(zhǔn)IIO框架,該框架具有完善的軟件API(包括Python綁定)。應(yīng)用程序代碼可以在本地(在樹莓派上)或通過網(wǎng)絡(luò)、串行或 USB 連接在遠(yuǎn)程機(jī)器上運(yùn)行。此外,皮亞迪-伊奧8抽象層負(fù)責(zé)與IIO設(shè)備接口所需的大部分樣板設(shè)置,從而大大簡化了軟件界面。圖5說明了如何打開與AD7124-8的連接,對其進(jìn)行配置,捕獲數(shù)據(jù)塊,然后關(guān)閉連接。

poYBAGOYN3uACLqlAAGZPDPzPBY483.jpg?h=270&hash=751FE3DD8D4DB1450C439C4D8C92FA5E&imgver=1

圖5.AD7124-8基本數(shù)據(jù)采集。

建立與AD7124-8的通信后,可以執(zhí)行一個非常簡單但非常有用的測試:直接測量輸入噪聲。簡單地將ADC的輸入短路并查看ADC代碼的分布是表征信號鏈設(shè)計的重要步驟。AD7124輸入模式設(shè)置為單極性,因此只有正值有效;圖6所示的測試電路確保輸入始終為正。

403690-fig-06.svg?h=270&hash=6AC98B4BB9C5DF8A45DF134EB9F6449F&imgver=1

圖6.電阻分壓器用于在AD7124-8的輸入端產(chǎn)生1.25 mV偏置,克服了15 μV的最大失調(diào)電壓,并確保ADC讀數(shù)始終為正。

圖 7 顯示了兩個 1024 點(diǎn)測量值。下部(藍(lán)色)跡線是在最初通電后立即拍攝的。

403690-fig-07.svg?h=270&hash=C37354D515C8E9A97BD06A0ABF905CFD&imgver=1

圖7.在施加1.25 mV偏置的情況下采集兩個AD7124-8數(shù)據(jù)。下方的跡線顯示了上電后電路預(yù)熱時的初始漂移。上面的曲線顯示半小時預(yù)熱后讀數(shù)穩(wěn)定。

“漂移”可能是由于許多因素造成的——內(nèi)部基準(zhǔn)升溫、外部電阻升溫(因此漂移)或寄生熱電偶,其中略有不同的金屬在存在熱梯度的情況下會產(chǎn)生電壓。預(yù)熱后的實測噪聲約為565 nV rms,與數(shù)據(jù)手冊中的噪聲規(guī)格相當(dāng)。

將ADC噪聲表示為密度

模擬信號鏈設(shè)計的一般原理(一級的輸入噪聲應(yīng)略低于前一級的輸出噪聲)如果所有元件都包含噪聲密度規(guī)格,則計算起來很容易——大多數(shù)明確指定的傳感器和幾乎所有放大器都是如此。

與放大器和傳感器不同,ADC數(shù)據(jù)手冊通常不包括噪聲密度規(guī)格。將ADC的噪聲表示為密度,可以直接將其與模擬信號鏈中最后一個元件(可能是ADC驅(qū)動器級、增益級或傳感器本身)輸出端的噪聲進(jìn)行比較。

ADC的內(nèi)部噪聲必然出現(xiàn)在直流和采樣速率的一半之間。理想情況下,這種噪聲是平坦的,或者至少是可預(yù)測的形狀。事實上,由于ADC的總噪聲分布在已知帶寬內(nèi),因此可以將其轉(zhuǎn)換為噪聲密度,可以直接與信號鏈中的其他元件進(jìn)行比較。精密轉(zhuǎn)換器通常直接給出總噪聲,單位為伏特均方根:

403690-eq-02.svg?la=en&imgver=1

其中 e有效值是總均方根噪聲,根據(jù)接地輸入代碼直方圖的標(biāo)準(zhǔn)偏差計算得出。

經(jīng)過正弦信號測試和表征的高速轉(zhuǎn)換器通常具有SNR規(guī)格。如果提供,總均方根噪聲可以計算為:

403690-eq-03.svg?la=en&imgver=1

其中ADCp-p是ADC的峰峰值輸入范圍。

然后可以計算等效噪聲密度:

403690-eq-04.svg?la=en&imgver=1

其中 fS是以樣本/秒為單位的 ADC 采樣速率。

預(yù)熱后圖7的總噪聲為565 nV,數(shù)據(jù)速率為128 SPS。噪聲密度約為:

403690-eq-05.svg?la=en&imgver=1

ADC現(xiàn)在可以直接包含在信號鏈噪聲分析中,從而為優(yōu)化信號鏈增益提供了指南:

將增益增加到ADC之前最后一級的噪聲密度略高于ADC的噪聲密度,然后停止。不要再費(fèi)心增加信號鏈增益了——你只是在放大噪聲并減小允許的輸入范圍。

這與“填充”ADC輸入范圍的傳統(tǒng)做法背道而馳。如果ADC的傳遞函數(shù)存在階躍或不連續(xù)性,則使用ADC的更多輸入范圍可能會有所好處,但對于“表現(xiàn)良好”的ADC(大多數(shù)Σ-Δ型ADC和現(xiàn)代高分辨率逐次逼近寄存器(SAR)ADC),噪聲優(yōu)化是首選方法。

測量ADC濾波器響應(yīng)

AD7124-8是一款Σ-Δ型ADC,其中調(diào)制器產(chǎn)生高采樣速率但噪聲(低分辨率)的模擬輸入表示。然后,這些噪聲數(shù)據(jù)由內(nèi)部數(shù)字濾波器濾波,產(chǎn)生較低速率、較低噪聲的輸出。濾波器的類型因ADC而異,具體取決于預(yù)期的最終應(yīng)用。AD7124-8為通用型器件,面向精密應(yīng)用。因此,數(shù)字濾波器響應(yīng)和輸出數(shù)據(jù)速率是高度可配置的。雖然濾波器響應(yīng)在數(shù)據(jù)手冊中有明確定義,但有時可能需要測量濾波器對給定信號的影響。AD7124-8濾波器響應(yīng)代碼模塊(見圖9)通過向ADC輸入施加正弦波并分析輸出來測量濾波器響應(yīng)。這種方法可以很容易地適應(yīng)于測量其他波形——小波和模擬的物理事件。ADALM2000連接到AD7124-8電路,如圖8所示。

403690-fig-08.svg?h=270&hash=92E74B6C77B86F305E5180BC06E766F3&imgver=1

圖8.ADALM2000波形發(fā)生器用于產(chǎn)生一系列正弦波頻率,允許直接測量AD7124-8的濾波器響應(yīng)。腳本將正弦波幅度和失調(diào)設(shè)置為安全電平,而1 kΩ電阻可在發(fā)生故障時保護(hù)AD7124-8。(ADALM2000輸出電壓范圍為–5 V至+5 V,而AD7124-8的絕對最大限值為–0.3 V和+3.6 V。

AD7124-8濾波器響應(yīng)代碼模塊(見圖9)將ADALM2000的波形發(fā)生器設(shè)置為產(chǎn)生10 Hz的正弦波,捕獲1024個數(shù)據(jù)點(diǎn),計算均方根值,然后將結(jié)果附加到列表中。send_sinewave和capture_data是實用程序函數(shù),分別向ADALM2000發(fā)送正弦波并從AD7124接收數(shù)據(jù)塊。2然后,它將逐步通過高達(dá)120 Hz的頻率,然后繪制結(jié)果,如圖10所示。

poYBAGOYN32ALhBNAAGa1SZm9tw153.jpg?h=270&hash=81F24F4867579C9A4069AC7BE52A2D7F&imgver=1

圖9.ADALM2000的濾波器響應(yīng)模塊程序。

403690-fig-10.svg?h=270&hash=9DA0873E484538B7D12D369C5DF5A79F&imgver=1

圖 10.AD7124濾波器在64 SPS、sinc4模式下的響應(yīng)測量結(jié)果顯示了濾波器的通帶、第一個波瓣和前兩個零點(diǎn)。

雖然測量高衰減值需要更安靜、更低失真的信號發(fā)生器,但這種設(shè)置可以明顯地顯示前幾個主要波瓣的響應(yīng)。

ADC濾波器建模

測量ADC濾波器響應(yīng)的能力是臺架驗證的實用工具。但是,為了完全仿真信號鏈,需要濾波器的模型。許多轉(zhuǎn)換器(包括AD7124-8)沒有明確提供這一點(diǎn),但可以根據(jù)數(shù)據(jù)手冊中提供的信息對可行的模型進(jìn)行逆向工程。

請注意,以下僅為AD7124-8濾波器的型號;它不是位精確的表示形式。有關(guān)所有保證參數(shù),請參考AD7124-8數(shù)據(jù)手冊。

AD7124的濾波器均具有各種sinc功能組合的頻率響應(yīng)(頻率響應(yīng)與(sin{f}/f)成比例)N).這些過濾器相當(dāng)容易構(gòu)造,并且在已知空值時進(jìn)行逆向工程。

圖11顯示了AD7124-8的10 Hz陷波濾波器。還提供高階 sinc3 和 sinc4 過濾器的各種組合。

403690-fig-11.svg?h=270&hash=64BBF4D6AD6C0DBC6282D477E1FF9522&imgver=1

圖 11.AD7124-8 10 Hz陷波濾波器具有sinc1幅度響應(yīng);濾波器的脈沖響應(yīng)只是100 ms時間間隔內(nèi)樣本的未加權(quán)(矩形)平均值。

圖12所示的同步50 Hz/60 Hz抑制濾波器就是一個簡單的例子。該濾波器旨在強(qiáng)烈抑制來自交流電源線的噪聲,即50 Hz(如歐洲)或60 Hz(如美國)。

403690-fig-12.svg?h=270&hash=EB34BEA168852AB279FBB50A9E5907B3&imgver=1

圖 12.AD7124-8 50 Hz/60 Hz抑制濾波器響應(yīng)是50 Hz、sinc3濾波器和60 Hz、sinc1濾波器的組合。

高階sinc濾波器可以通過卷積sinc1濾波器生成。例如,卷積兩個sinc1濾波器(在時間上具有矩形脈沖響應(yīng))將產(chǎn)生三角脈沖響應(yīng)和相應(yīng)的sinc2頻率響應(yīng)。AD7124濾波器代碼塊(見圖13)生成一個在50 Hz時為零的sinc3濾波器,然后在60 Hz時添加第四個為零的濾波器。

pYYBAGOYN3-AI8U8AAElEd0CKAQ596.jpg?h=270&hash=F741C0C7140DD3E4A0610028940CC59F&imgver=1

圖 13.AD7124-8 50 Hz/60 Hz sinc濾波器的代碼示例

濾波器產(chǎn)生的脈沖(時域)形狀如圖14所示。濾波器系數(shù)(抽頭)值歸一化,在零頻率下獲得單位(0 dB)增益。

403690-fig-14.svg?h=270&hash=AAD9FC3F3EA6FBB28086505823AFA764&imgver=1

圖 14.反復(fù)卷積矩形脈沖響應(yīng)會產(chǎn)生三角形,然后是類似高斯的脈沖響應(yīng)。

最后,可以使用NumPy的freqz函數(shù)計算頻率響應(yīng),如圖16所示。響應(yīng)如圖 15 所示。

403690-fig-15.svg?h=270&hash=29382D2497871FC20C702FDFD9FCF57D&imgver=1

圖 15.將 sinc3、50 Hz 陷波濾波器與 sinc1、60 Hz 濾波器卷積會產(chǎn)生強(qiáng)烈抑制 50 Hz 和 60 Hz 的復(fù)合響應(yīng)。

poYBAGOYN4GAKgt7AACiLM2u2iQ932.jpg?h=270&hash=D2E0B1A536C9EAE1B3DC8AB62B19661B&imgver=1

圖 16.AD7124-8代碼示例,用于sinc3 50 Hz陷波濾波器,帶sinc 60 Hz濾波器。

電阻是徒勞的:傳感器的基本限制

所有傳感器,無論多么完美,都有一些最大輸入值(以及相應(yīng)的最大輸出,可能是電壓、電流、電阻,甚至撥號位置)和有限的本底噪聲——即使輸入完全靜止,也存在輸出“擺動”。在某些時候,具有電輸出的傳感器將包括一個具有有限電阻(或更一般地說,阻抗)的元件,由R表示傳感器在圖 17 中。這代表了一個無法改進(jìn)的基本噪聲限值——該電阻至少會產(chǎn)生 en(RMS) 伏特噪聲:

403690-eq-06.svg?la=en&imgver=1

哪里:

eN(RMS) 是總噪聲。

K 是玻爾茲曼常數(shù) (1.38E-23J/K)。

T 是電阻器的絕對溫度(開爾文)。

F2 和 F1 是感興趣頻段的上限和下限。

將帶寬歸一化為 1 Hz 表示噪聲密度(以 V/√Hz為單位)。

403690-fig-17.svg?h=270&hash=3C2DBAE74B8927EACB9784EAE35FA3B6&imgver=1

圖 17.傳感器通常包括一個內(nèi)部緩沖器,以簡化與下游電路的連接。雖然輸出阻抗較低(通常接近0 Ω),但來自高阻抗檢測元件的噪聲與信號一起緩沖。

將帶寬歸一化為 1 Hz 表示噪聲密度(以 V/√Hz為單位)。

傳感器的數(shù)據(jù)手冊可能規(guī)定低輸出阻抗(通常接近0 Ω),但這可能是一個緩沖級,它簡化了與下游電路的接口,但不能消除信號鏈早期阻抗引起的噪聲。

還有許多其他傳感器限制 - 機(jī)械,化學(xué),光學(xué) - 每個都有自己的理論限制,其影響可以在以后建模和補(bǔ)償。但噪音是不能做到的缺陷

實驗室噪聲源

經(jīng)過校準(zhǔn)的噪聲發(fā)生器充當(dāng)“世界上最差的傳感器”,它模擬傳感器的噪聲而不實際感應(yīng)到任何東西。這種發(fā)生器允許直接測量信號鏈對噪聲的響應(yīng)。圖18所示電路使用1 MΩ電阻作為127 nV/√Hz(室溫下)噪聲源,精度和帶寬為“正?!薄km然精度還可以,但這種方法有優(yōu)點(diǎn):

它基于第一原理,因此在某種意義上可以作為未校準(zhǔn)的標(biāo)準(zhǔn)。

它確實是隨機(jī)的,沒有重復(fù)的模式。

OP482是一款超低偏置電流放大器,具有相應(yīng)的低電流噪聲和足夠低的電壓噪聲,使得1 MΩ輸入阻抗引起的噪聲占主導(dǎo)地位。增益配置為2121,輸出噪聲為269 μV/√Hz。

403690-fig-18.svg?h=270&hash=360045DB2250102F18F7D9A7E40C7F9B&imgver=1

圖 18.1 MΩ電阻用作可預(yù)測的噪聲源,然后通過低噪聲運(yùn)算放大器將其放大至可用電平。

使用ADALM2000 USB儀器,使用Scopy GUI的頻譜分析儀驗證噪聲源,如圖19所示。9

403690-fig-19.svg?h=270&hash=29EF6E9006A61D66C6A34DE38E9424D9&imgver=1

圖 19.基于電阻的實驗室噪聲發(fā)生器的輸出具有大約10 kHz的可用帶寬。

在所示分析儀設(shè)置下,ADALM2000的本底噪聲為40 μV/√Hz,遠(yuǎn)低于噪聲源的269 μV/√Hz。

雖然 Scopy 對于單次目視測量很有用,但使用 SciPy 周期圖功能可以輕松復(fù)制該功能。原始數(shù)據(jù)是使用 libm2k 從 ADALM2000 收集的10和 Python 綁定,經(jīng)過最低限度的處理以刪除 DC 內(nèi)容(否則會泄漏到低頻箱中)并縮放到 nV/√Hz。這種方法如圖20所示,可以應(yīng)用于任何數(shù)據(jù)采集模塊,只要采樣速率是固定的和已知的,并且數(shù)據(jù)可以格式化為電壓矢量。

pYYBAGOYN4OAI8KAAADavAVBp2E924.jpg?h=270&hash=3698F1FEFF9451C898010792A5F7345C&imgver=1

圖 20.ADALM2000的Python噪聲源測量代碼。

我們現(xiàn)在配備了已知的噪聲源和測量該噪聲源的方法,這兩種方法都可用于驗證信號鏈。

LTspice中的信號鏈建模

LTspice?是一款免費(fèi)提供的通用模擬電路仿真器,可應(yīng)用于信號鏈設(shè)計。它可以執(zhí)行瞬態(tài)分析、頻域分析(AC 掃描)和噪聲分析,其結(jié)果可以導(dǎo)出并使用 Python 合并到混合信號模型中。

圖21顯示了模擬噪聲發(fā)生器的噪聲仿真,與實驗結(jié)果非常吻合。仿真使用了與OP482具有相似特性的運(yùn)算放大器。

403690-fig-21.svg?h=270&hash=8A95CCACF437231F0F8B572E44264EFA&imgver=1

圖 21.實驗室噪聲源的LTspice仿真顯示,其可用帶寬與測量電路大致相同。

圖22的電路噪聲對于模型來說相當(dāng)微不足道,因為它在某些帶寬(目標(biāo)信號所在的帶寬中)是恒定的,高于該帶寬,它以大約一階低通響應(yīng)滾降。這種技術(shù)派上用場的地方是模擬非平坦本底噪聲,無論是由于高階模擬濾波,還是有源元件本身。典型的例子是自穩(wěn)零放大器(如LTC2057)中經(jīng)常存在的噪聲山,如圖23所示。

403690-fig-22.svg?h=270&hash=B80808143FED4CDEEE4FB22E442AD9AA&imgver=1

圖 22.LTC2057的噪聲密度在低頻時是平坦的,峰值為50 kHz(內(nèi)部振蕩器100 kHz頻率的一半)。

poYBAGOYN4SAPIBaAAEBmFBVYAE824.jpg?h=270&hash=4AA8AA5B7E3ACAB75CBF86B2ABF3304C&imgver=1

圖 23.LTspice 用于在 +10 的同相增益配置中模擬 LTC2057 的輸出噪聲。LTspice提供了簡單的噪聲積分工具,但任何仿真的結(jié)果都可以導(dǎo)出并導(dǎo)入到Python中以進(jìn)行進(jìn)一步分析。

在Python中導(dǎo)入LTspice噪聲數(shù)據(jù)以進(jìn)行頻域分析是設(shè)置仿真命令的問題,以便仿真分析矢量中的精確頻率。在這種情況下,噪聲仿真的最大頻率為2.048 MHz,分辨率為62.5 Hz,對應(yīng)于采樣率為4.096 MSPS的第一奈奎斯特區(qū)。圖 23 顯示了 LTC2057 在同相增益 10 下的仿真、仿真輸出和導(dǎo)出的數(shù)據(jù)格式。

為了確定給定噪聲頻帶對信號的影響(信噪比),噪聲在目標(biāo)帶寬上進(jìn)行和方根積分。在LTspice中,可以通過設(shè)置繪圖限值,然后按住控制單擊參數(shù)標(biāo)簽來積分繪制的參數(shù)。整個2.048 MHz仿真的總噪聲為32 μV rms。在 Python 中實現(xiàn)此操作的函數(shù)如圖 24 所示。

pYYBAGOYN4aARHlRAADQeSOAyPs745.jpg?h=270&hash=A4BE10B780C4D64DD344A9C21439C3E2&imgver=1

圖 24.用于平方根實現(xiàn)的 Python 代碼。

讀取導(dǎo)出的噪聲數(shù)據(jù)并傳遞給integrate_psd函數(shù)會導(dǎo)致總噪聲為3.21951e-05,非常接近LTspice的計算。

產(chǎn)生測試噪聲

擴(kuò)展了純模擬噪聲發(fā)生器的功能,它不僅能夠產(chǎn)生平坦的噪聲分布,而且能夠產(chǎn)生任意的噪聲曲線,即平坦的噪聲帶、粉紅噪聲或模擬某些放大器中的峰值的噪聲山脈,這是非常有用的。從圖25中的半頻譜代碼塊生成的時間序列從所需的噪聲頻譜密度(可以手動生成,也可以從LTspice仿真中獲取)和時間序列的采樣速率開始,然后產(chǎn)生一個電壓值的時間序列,可以發(fā)送到DAC。

poYBAGOYN4iAHQnxAAE4Edec9qI985.jpg?h=270&hash=586281D35A27DD4CD4B9B637F5A13B84&imgver=1

圖 25.用于生成任意噪聲配置文件的 Python 代碼。

此功能可以通過libm2k腳本控制一個ADALM2000,然后使用第二個ADALM2000和Scopy GUI中的頻譜分析儀驗證噪聲曲線。ADALM2000代碼片段的推送噪聲時間序列(見圖26)在ADALM2000 W2輸出端產(chǎn)生四個1 mV/√Hz噪聲頻段(W1上帶有正弦波,用于雙重檢查功能)。

poYBAGOYN4qAWLPCAAEXt2KyWCI615.jpg?h=270&hash=40E609BBF69EEABFF8019F3314ADDE83&imgver=1

圖 26.使用ADALM2000驗證任意噪聲。

圖27顯示一個ADALM2000產(chǎn)生的四個1 mV/√Hz噪聲頻段。輸入矢量長度為 8192 點(diǎn),采樣率為 75 kSPS,帶寬為每點(diǎn) 9.1 Hz。每個頻段為 512 點(diǎn),或 4687 Hz 寬。~20 kHz以上的滾降是DAC的sinc滾降。如果DAC能夠?qū)崿F(xiàn)更高的采樣率,則可以通過插值濾波器對時間序列數(shù)據(jù)進(jìn)行上采樣和濾波。11

403690-fig-27.svg?h=270&hash=2C21B91ADF5C26A01F04E364EF33E9BD&imgver=1

圖 27.Scopy頻譜分析儀用于驗證任意噪聲發(fā)生器。噪聲帶之間的深陷波暴露了分析儀的本底噪聲,表明可以準(zhǔn)確生成任意噪聲曲線。

該噪聲發(fā)生器可與純模擬發(fā)生器結(jié)合使用,以驗證信號鏈的抑制特性。

建模和驗證ADC噪聲帶寬

外部噪聲源和高于f的雜散音調(diào)S/2將折回(別名)到 DC 到 fS/2區(qū)域和轉(zhuǎn)換器可能對遠(yuǎn)高于f 的噪聲敏感S/2.以LTC2378-20為例,其采樣速率為1 MSPS,–3 dB輸入帶寬為34 MHz。雖然在如此高的頻率下性能可能不是最好的,但該轉(zhuǎn)換器將數(shù)字化超過 68 個奈奎斯特噪聲區(qū),并將它們折疊回信號頂部。這說明了抗混疊濾波器對寬帶ADC的重要性。用于精密應(yīng)用的轉(zhuǎn)換器通常采用Σ-Δ(如AD7124-8)或過采樣SAR架構(gòu),其中輸入帶寬受設(shè)計限制

考慮濾波器(包括ADC的內(nèi)置濾波器)的等效噪聲帶寬(ENBW)通常很有用。ENBW是平坦通帶“磚墻”濾波器的帶寬,其允許通過的噪聲量與非平坦濾波器相同。一個常見的例子是一階RC濾波器的ENBW,它是:

403690-eq-07.svg?la=en&imgver=1

其中 fC是濾波器的截止頻率。如果將寬帶噪聲(從“直流到日光”)施加到1 kHz一階低通濾波器和1.57 kHz磚墻低通濾波器的輸入端,則輸出端的總噪聲功率將相同。

圖28中的ENBW示例代碼塊接受濾波器幅度響應(yīng)并返回有效噪聲帶寬。計算單極點(diǎn)濾波器的幅度響應(yīng),并用于驗證ENBW = fC× π/2 關(guān)系。

poYBAGOYN4yAYcp-AAE7V6inHpU740.jpg?h=270&hash=05637FC13CF4CCA087232191576E3005&imgver=1

圖 28.計算有效噪聲帶寬的Python代碼示例。

該函數(shù)可用于計算任意濾波器響應(yīng)的ENBW,包括AD7124的內(nèi)部濾波器。AD7124 sinc4濾波器的頻率響應(yīng),128 SPS采樣速率可以通過類似于前面的50 Hz/60 Hz抑制濾波器示例的方法計算。arb_anbw函數(shù)返回大約 31 Hz 的 ENBW。

ADALM2000噪聲發(fā)生器可用于驗證此結(jié)果。將測試噪聲發(fā)生器設(shè)置為產(chǎn)生1000 μV/√Hz頻段,總噪聲約為5.69 mV rms,測量結(jié)果約為5.1 mV rms總噪聲。示波器捕獲ADC輸入信號顯示在ADC輸出數(shù)據(jù)旁邊,如圖29所示。請注意,測得的峰峰值噪聲為426 mV,而ADC峰峰值噪聲約為26 mV。雖然如此高的 10 使用Python分析混合模式信號鏈中噪聲的簡單方法 噪聲水平在實際的精密信號鏈中(希望)是不現(xiàn)實的,但本練習(xí)表明,可以依靠ADC的內(nèi)部濾波器作為信號鏈中的主要帶寬限制元件,從而降低噪聲。

403690-fig-29.svg?h=270&hash=DF40721DF6DC627CA661739AFE1B4736&imgver=1

圖 29.1 mV/√Hz噪聲頻段驅(qū)動至AD7124-8輸入。噪音的定性降低是顯而易見的;ADC輸入端的峰峰值噪聲為426 mV,導(dǎo)致ADC輸出端的峰峰值噪聲約為25 mV??紤]到ADC濾波器的1 mV/√Hz噪聲密度和31 Hz ENBW,5.1 mV rms總輸出噪聲接近預(yù)測的5.69 mV rms。

結(jié)論

噪聲是任何信號鏈中的限制因素;一旦噪聲污染信號,信息就會丟失。在 構(gòu) 建 信號 采集 系統(tǒng) 之前, 必須 了解 應(yīng)用 要求, 進(jìn)行 相應(yīng) 的 選擇 元件, 并 測試 原型 電路。本教程提供了一系列方法,用于準(zhǔn)確建模和測量傳感器和信號鏈噪聲,這些方法可在設(shè)計和測試過程中使用。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 轉(zhuǎn)換器
    +關(guān)注

    關(guān)注

    27

    文章

    8505

    瀏覽量

    145983
  • adc
    adc
    +關(guān)注

    關(guān)注

    97

    文章

    6300

    瀏覽量

    542453
  • dac
    dac
    +關(guān)注

    關(guān)注

    43

    文章

    2226

    瀏覽量

    190439
  • python
    +關(guān)注

    關(guān)注

    53

    文章

    4753

    瀏覽量

    84079
收藏 人收藏

    評論

    相關(guān)推薦

    轉(zhuǎn)換器連接教程:Python分析混合模式信號噪聲方法

    (IIO) 框架使用 Python 驅(qū)動ADALM2000多功能 USB 測試儀器來驗證結(jié)果。所有源代碼和其他討論都可以在配套的主動學(xué)習(xí)實驗室練習(xí)中找到。 混合模式信號
    發(fā)表于 03-28 15:54 ?1777次閱讀

    分析信號累積直流誤差最詳盡的方法

    專門分析直流誤差,根據(jù)其與無源和有源器件的關(guān)系, 對每種不精確性進(jìn)行細(xì)分。分析誤差前,先對信號分個級圖 1 是一種可以達(dá)到 0.1% 精度
    發(fā)表于 11-01 11:36

    一種節(jié)省能源的簡單方法

    一種節(jié)省能源的簡單方法是在晚上關(guān)閉Mac。與不活動,空閑或睡眠的Mac相比,關(guān)機(jī)的Mac所消耗的能源更少。對于運(yùn)行大量Mac的組織,應(yīng)優(yōu)先考慮整夜關(guān)機(jī)。反對在夜間關(guān)閉的個常見論點(diǎn)是關(guān)閉和啟動所花
    發(fā)表于 12-29 08:20

    轉(zhuǎn)換器連接教程:Python分析混合模式信號噪聲方法

    使用 Python 分析混合模式信號
    發(fā)表于 03-30 16:20

    一種寬范圍微弱直流信號測量的簡單方法

    一種寬范圍微弱直流信號測量的簡單方法 介紹一種采用對數(shù)運(yùn)算功放大器MAX4206的測量方法,可實現(xiàn)1nA~1mA直流電流的測量,電路設(shè)計
    發(fā)表于 04-24 09:46 ?19次下載

    一種基于電壓比較器襯底噪聲的測試方法

      論述了一種測試混合信號集成電路襯底噪聲波形的方法采用電壓比較器利用襯底電壓對比   較器狀態(tài)的影響對
    發(fā)表于 08-29 16:08 ?14次下載

    應(yīng)用Matlab仿單相PWM整流器的一種簡單方法

    應(yīng)用Matlab仿真單相PWM整流器的一種簡單方法 葉齊峰,金新民 (北方交通大學(xué)電氣工程學(xué)院,北
    發(fā)表于 07-15 09:16 ?3136次閱讀
    應(yīng)用Matlab仿單相PWM整流器的<b class='flag-5'>一種</b><b class='flag-5'>簡單方法</b>

    一種影像測量系統(tǒng)自適應(yīng)混合噪聲濾波方法_周虎

    一種影像測量系統(tǒng)自適應(yīng)混合噪聲濾波方法_周虎
    發(fā)表于 03-19 11:45 ?0次下載

    測試IGBT的簡單方法

    些測試IGBT的簡單方法
    的頭像 發(fā)表于 06-19 10:19 ?1.4w次閱讀

    教你一種抑制EMI的簡單方法資料下載

    電子發(fā)燒友網(wǎng)為你提供教你一種抑制EMI的簡單方法資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計、用戶指南、解決方案等資料,希望可以幫助到廣大的電子工程師們。
    發(fā)表于 04-17 08:51 ?16次下載
    教你<b class='flag-5'>一種</b>抑制EMI的<b class='flag-5'>簡單方法</b>資料下載

    AN143-一種準(zhǔn)確預(yù)測泄漏電流引起的PLL參考雜散電平的簡單方法

    AN143-一種準(zhǔn)確預(yù)測泄漏電流引起的PLL參考雜散電平的簡單方法
    發(fā)表于 05-11 10:00 ?7次下載
    AN143-<b class='flag-5'>一種</b>準(zhǔn)確預(yù)測泄漏電流引起的PLL參考雜散電平的<b class='flag-5'>簡單方法</b>

    一種在電路板的銅走線上鍍錫的簡單方法

    當(dāng)你剛剛完成項目中電路板的刻蝕環(huán)節(jié),看起來很成功。但你也定知道,隨著時間的推移,電路板上的銅走線會慢慢變黑、變綠。本問將介紹一種在電路板的銅走線上鍍錫的簡單方法。
    的頭像 發(fā)表于 02-26 12:09 ?4940次閱讀

    使用 Python 簡化混合模式信號噪聲分析

    。但是,仍然需要全面了解信號噪聲源和噪聲限制濾波器,才能從這些現(xiàn)代設(shè)備中提取最大性能并對其進(jìn)行調(diào)試。 介紹 本教程是轉(zhuǎn)換器連接教程 [1][2] 的延續(xù)。它將關(guān)注單個
    的頭像 發(fā)表于 07-19 11:19 ?1243次閱讀
    使用 <b class='flag-5'>Python</b> 簡化<b class='flag-5'>混合</b><b class='flag-5'>模式</b><b class='flag-5'>信號</b><b class='flag-5'>鏈</b>的<b class='flag-5'>噪聲</b><b class='flag-5'>分析</b>

    FPGA遠(yuǎn)程更新/遠(yuǎn)程調(diào)試的一種簡單方法

    之前介紹過一種遠(yuǎn)程(無線)更新的方式,詳見《起飛!通過無線WIFI下載調(diào)試FPGA》,這種方式缺點(diǎn)有兩個:是速度較慢;二是我們的設(shè)備需要增加個無線設(shè)備,增加成本的同時增加了暴露的
    的頭像 發(fā)表于 05-25 09:23 ?2276次閱讀
    FPGA遠(yuǎn)程更新/遠(yuǎn)程調(diào)試的<b class='flag-5'>一種</b><b class='flag-5'>簡單方法</b>

    一種使用Python分析混合模式信號噪聲簡單方法

    涉及對真實世界進(jìn)行敏感測量的應(yīng)用都是從準(zhǔn)確、精密的低噪聲信號開始?,F(xiàn)代高度集成的數(shù)據(jù)采集器件通??梢灾苯舆B接到傳感器輸出,在單個硅器件上執(zhí)行模擬信號調(diào)理、數(shù)字化和數(shù)字濾波,這極大地簡化了系統(tǒng)電子組成。
    的頭像 發(fā)表于 07-08 11:46 ?384次閱讀
    <b class='flag-5'>一種</b>使用<b class='flag-5'>Python</b>來<b class='flag-5'>分析</b><b class='flag-5'>混合</b><b class='flag-5'>模式</b><b class='flag-5'>信號</b><b class='flag-5'>鏈</b><b class='flag-5'>中</b><b class='flag-5'>噪聲</b>的<b class='flag-5'>簡單方法</b>