Perché gli ambiti digitali campionano i segnali a una frequenza più alta di quella richiesta dal teorema di campionamento?


15

Nella ricerca di un analizzatore di portata / logica per PC non così costoso, ho trovato un piccolo dispositivo carino che sembra molto ben fatto e so che farà il lavoro.

Tuttavia, guardando le specifiche , ho riscontrato questo:

Larghezza di banda vs frequenza di campionamento

Per registrare con precisione un segnale, la frequenza di campionamento deve essere sufficientemente elevata per preservare le informazioni nel segnale, come dettagliato nel teorema di campionamento di Nyquist-Shannon. I segnali digitali devono essere campionati almeno quattro volte più velocemente della componente di frequenza più alta nel segnale. I segnali analogici devono essere campionati dieci volte più velocemente del componente di frequenza più veloce nel segnale.

E di conseguenza ha una frequenza di campionamento di 500MSP ma una larghezza di banda (filtro) di 100 MHz, quindi un rapporto 1: 5 per i segnali digitali e una frequenza di campionamento di 50 MHz e una banda (filtro) di 5 MHz, quindi un rapporto 1:10 per segnali analogici

Per quanto ho capito, Niquist-Shannon parla solo del campionamento alla doppia frequenza massima (in teoria), è ovviamente bene non spingere i limiti e non ci sono filtri perfetti. ma anche un semplice UART campiona un segnale digitale alla stessa velocità del baudrate!

Quindi questa è una normale regola empirica per il campionamento? o è qualcosa che qualcuno delle vendite potrebbe aver scritto? Mi permette in qualche modo di capire che non ne ho mai sentito parlare.


5
Gli ambiti economici tagliano tutti i tipi di angoli in termini di capacità di interpolare correttamente i campioni di segnale per la visualizzazione, motivo per cui hanno bisogno di rapporti di sovracampionamento così elevati per ottenere una fedeltà visiva decente.
Dave Tweed

7
Tutto ciò che costa meno di $ 5000 è abbastanza economico e dovrai progettare un 'ambito.
Il fotone

9
Se campionate una forma d'onda ripetitiva a 2f, non sapete nulla della sua forma. Era un quadrato, un seno, un dente di sega? Chissà ... i tuoi campioni non possono dirtelo.
brhans,

5
@brhans nota che il tuo punto è assolutamente controverso. Un'onda quadra di frequenza non ha affatto una larghezza di banda di f , ma componenti spettrali in tutto il luogo. ff
Marcus Müller,

4
Ti sbagli su UART. Il classico UART 16550 che funziona alla massima velocità di trasmissione richiede 16 campioni per bit. Non è possibile ottenere una sincronizzazione affidabile con meno di 3 campioni per bit (la deriva dell'orologio si accumula in modo tale da perdere periodicamente un bit). Il teorema di campionamento di Niquist afferma semplicemente che non è possibile ricostruire un segnale con frequenza di campionamento inferiore a 2x, non significa che è possibile ottenere un buon segnale a frequenza 2x.
Slebetman,

Risposte:


10

"anche un semplice UART campiona un segnale digitale alla stessa velocità ..." l'UART non ha bisogno di ricostruire il segnale analogico ad onda quadra che trasporta le informazioni digitali, quindi non tiene conto del teorema.

Il teorema di Shannon-Nyquist in realtà parla della perfetta rappresentazione di un segnale analogico . La rappresentazione perfetta qui significa che conoscendo solo i campioni del segnale è possibile ricostruire perfettamente il segnale analogico nel dominio del tempo che è stato campionato.

sinc(x)=sin(πx)πX+

Ma hanno ancora bisogno di un sovracampionamento, perché la frequenza di campionamento deve essere maggiore di 2B, dove B è la larghezza di banda e il fatto che nella ricostruzione abbiano usato una funzione sinc troncata non consente di avvicinarsi troppo a quella cifra 2B.


8
In realtà, ogni UART che ho visto campiona i dati a 8 o 16 volte la velocità di trasmissione.
pipe il

1
@pipe Sono d'accordo, anche i pochi che ho visto si comportano in questo modo. Stavo solo sottolineando una premessa errata nel ragionamento di OP.
Lorenzo Donati supporta Monica il

@tubo. A proposito, penso che campionino così velocemente solo perché consente algoritmi di rilevamento più semplici. Non ne sono sicuro, ma penso che potrebbero fare con molti meno campioni se usassero algoritmi più complicati (il che è poco pratico e costoso, probabilmente, quindi la domanda è discutibile).
Lorenzo Donati supporta Monica il

2
sinc(x)

3
Alcuni UART MCU, come il vecchio MC6811, sono stati campionati tre volte nel mezzo di un bit (clock 5, 7 e 9 da quando ha utilizzato il sovracampionamento 16X), hanno utilizzato una funzione di maggioranza per ottenere il valore del bit di dati e impostare un "noise flag "bit di stato se i campioni non corrispondevano tutti. Hanno anche usato più campioni per confermare il bordo del bit iniziale. Questo non solo ha aiutato a rilevare e mitigare un po 'di rumore, ma potrebbe anche darti un po' più di tolleranza della frequenza di clock.
Mike DeSimone,

29

Teorema del campionamento di Nyquist-Shannon ... spesso usato male ...

Se si dispone di un segnale che è perfettamente limitato a una larghezza di banda di f0, è possibile raccogliere tutte le informazioni presenti in quel segnale campionandolo in momenti discreti, purché la frequenza di campionamento sia maggiore di 2f0

è molto conciso e contiene al suo interno due avvertimenti molto importanti

  1. PERFETTAMENTE BANDLIMITATO
  2. Maggiore di 2f

Il punto n. 1 è il problema principale qui in quanto non è possibile in pratica ottenere un segnale che sia perfettamente bandlimited. Poiché non siamo in grado di ottenere un segnale perfettamente bandlimited, dobbiamo trattare le caratteristiche di un segnale bandlimited reale. Più vicino alla frequenza di nyquist creerà uno spostamento di fase aggiuntivo. Più vicino creerà distorsione, incapacità di ricostruire il segnale di interesse.

Regola del pollice? Vorrei campionare a 10 volte la frequenza massima che mi interessa.

Un ottimo documento sull'uso improprio di Nyquist-Shannon http://www.wescottdesign.com/articles/Sampling/sampling.pdf

Perché "At 2x" è sbagliato

Prendi questo come esempio: vogliamo campionare un'onda sinusoidale con frequenza f. se campioniamo ciecamente a 2f ... potremmo finire per catturare una linea retta.

inserisci qui la descrizione dell'immagine


3
Risposta eccellente. Il limite di 2f Nyquist impedisce l' aliasing ma consente comunque un errore di ampiezza del 100%, come mostrato nella figura. Con più punti per ciclo, l'errore di ampiezza, errore di fase, errore di offset ed errore di frequenza scendono infine a valori accettabili.
MarkU,

6
Questa è stata una risposta eccellente fino all'esempio, il che dimostra solo che è molto importante che la frequenza di campionamento sia oltre il doppio della larghezza di banda. @MarkU parla degli effetti che esistono quando non segui la "legge".
pipe,

4
esattamente pipe :) se leggi ciò che l'OP ha scritto "campionamento al doppio della frequenza massima (in teoria)" Per i principianti non è quello che il teorema ha dichiarato (come ho scritto) ed è il più comune malinteso sul teorema del campionamento. L'immagine è grezza sì, MA è al punto perché "al doppio" è così molto sbagliato e completamente non quello che NS ha affermato.
JonRB,

Secondo il teorema, l'esempio che dai è sbagliato. In effetti, è l' esempio mostrato perché la frequenza di campionamento dovrebbe essere maggiore di 2f. In un'onda perfettamente bandlimited con qualsiasi frequenza maggiore di 2f consentirebbe perfettamente la ricostruzione dell'onda.
bunyaCloven

4
E questo è il mio punto. L'OP stava dichiarando a 2x. Stavo citando esattamente il teorema (non dice mai a 2x, dice più grande di CON un segnale perfettamente limitato in banda) e mostrando anche perché non dovresti campionare a 2x. L'esempio non ha lo scopo di mostrare cosa dovrebbe essere fatto, ma perché l'interpretazione colloquiale di NS è così sbagliata
JonRB,

13

C'è una differenza tra analizzare un segnale per informazioni e visualizzarlo su una schermata dell'oscilloscopio. Una visualizzazione dell'oscilloscopio è fondamentalmente un collegamento dei punti, quindi se si avesse campionato un'onda sinusoidale a 100 MHz a 200 MHz (ogni 5 nsec) E si avesse anche il campionamento del componente immaginario, è possibile ricostruire il segnale. Dato che hai solo la parte reale disponibile, 4 punti è praticamente il minimo richiesto, e anche in questo caso ci sono situazioni patologiche, come il campionamento a 45, 135, 225 e 315 gradi, che sembrerebbero un'onda quadra di ampiezza minore. Il tuo ambito, tuttavia, mostrerebbe solo 4 punti collegati da linee rette. Dopotutto, il campo di applicazione non ha modo di sapere quale sia la forma effettiva - per fare ciò avrebbe bisogno di armoniche più elevate. Per ottenere un'approssimazione ragionevolmente piacevole al seno di 100 MHz occorrerebbero circa 10 campioni per periodo: più è meglio, ma 10 è una regola empirica approssimativa. Certamente 100 campioni sarebbero eccessivi per una visualizzazione dell'oscilloscopio e le regole empiriche tecniche tendono a funzionare con potenze di 10.


3
Ma la componente immaginaria è (probabilmente) zero ...
Oliver Charlesworth

2
@OliverCharlesworth - Non rispetto al clock di campionamento. La componente immaginaria è di 90 gradi per un ciclo sinusoidale attivato a ampiezza zero, poiché se fosse zero, ed entrambi i campioni sarebbero zero, non c'è modo di dire che il seno sia presente.
WhatRoughBeast

1
Onestamente, sembra solo un sovracampionamento 2x. Sto facendo fatica a modellare il modo in cui si genera un componente immaginario (a parte un'operazione di spostamento di frequenza o una trasformazione di Hilbert). Non affermare che questo framework non sia corretto qui, solo che non l'ho mai visto usato in questo modo. Qualche termine di ricerca di Google che dovrei esaminare?
Oliver Charlesworth,

Inoltre, non convinto dal "bisogno di armoniche più elevate" - la citazione di OP fa riferimento alla " componente di frequenza più veloce " - dato quel vincolo, l'interpolazione sincera (sufficiente) dovrebbe ricostruire la forma d'onda originale per qualsiasi cosa> 2f.
Oliver Charlesworth,

1
@OliverCharlesworth - "un momento difficile nel modellare il modo in cui si genera un componente immaginario" - Esatto. Non fattibile, motivo per cui è necessario sovracampionare. Nel mondo RF si generano I e Q, ma non è utile qui. E per quanto riguarda l'interpolazione sincera, i produttori di scope lo trovano antieconomico, per non dire non intuitivo da parte degli utenti. Alla massima velocità di scansione su un ambito digitale la traccia diventa ovvia come punti collegati da linee rette e i limiti della frequenza di campionamento diventano evidenti (e, si spera, come fonte di cautela).
WhatRoughBeast,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.