per Bertolazzi, Nyquist, Shannon

Il 10/01/2010 16.12, in un posto esoterico e misterioso che non dovrei rivelare agli infedeli (it.hobby.hi-fi) , F. Bertolazzi ha scritto: > Stando al teorema di Nyquist (che =E8 un teorema, non un'opinione), > operando > con un campionamento a frequenza doppia della massima riproducibile =E8=

possibile ricostruire un segnale esattamente identico all'originale.

vediamo, per esempio, il CDaudio ?

e' vero che con un DAC a Fsample=3D44KHz puoi costruire (inventare) un segnale a 22KHz, ma con quale forma d' onda ? quadra, triangolare, trapezoidale, sinusoidale, altro ? nei campioni non hai abbastanza informazioni per dirlo. puoi supporre che sia sinusoidale, ma solo se a monte hai usato un filtro antialiasing perfetto (di ordine infinito =3D che non esiste) che ha eliminato completamente le frequenze superiori. e devi supporre che i campioni siano corrispondenti ai picchi della sinusoide, altrimenti quale diavolo di ampiezza potrebbe avere, se hai campionato altrove ?

e in fase di campionamento ADC a 44KHz: se non sei superfortunato e invece di campionare sui picchi (di una ipotetica sinusoide 22KHz) campioni sugli zeri ? escono tutti campioni a zero =3D silenzio di tomba ?

e se campioni con ADC 44KHz una sinusoide a 21.99KHz ? i campioni non sono presi sempre sui picchi ma si spostano continuamente sulla sinusoide; cosa riproduci poi con questi campioni ? il segnale originale oppure una sinusoide 22KHz modulata piu' o meno in ampiezza ? (come se fosse uscita da un modulatore doppio bilanciato)

con tutti i segnali sotto i 22 KHz hai lo stesso effetto di modulazione, sempre meno marcato scendendo in frequenza, giu' fino a quasi 11KHz.

sei d'accordo che la differenza tra i due segnali originale e riprodotto e' enorme ? e che all' ascolto, se il tuo orecchio puo' "trascurare" la nota costante del segnale originale, non puo' ignorare quel "sibilo vibrante" della modulata riprodotta ?

con segnale a 11KHz (1/4 Fsample) la situazione e' poco migliore: i 4 campioni per ogni ciclo sono pochi per definire esattamente(*) la forma d' onda, ma perlomeno si evita l' effetto modulante precedente.

con segnale a 5.5KHz (1/8 Fsample) la situazione e' migliore, ma gli 8 campioni per ciclo sono ancora pochi per definire esattamente(*) la forma d' onda.

(*) esattamente =3D con distanza tra i campioni non eccessiva ed in grado=

di ricostruire con poca approssimazione il segnale originale, con distorsione nei limiti dichiarati.

questo non e' un teorema, e' solo la mia opinione: con buona pace del signor Nyquist, se vuoi campionare e "ricostruire un segnale esattamente identico all'originale" , devi aumentare Fsample ben oltre il doppio di Fmax.

in attesa di fulmini, saette, vostre osservazioni, saluto

--=20 lowcost

Reply to
lowcost
Loading thread data ...

"lowcost" ha scritto nel messaggio news:hj1qb7$shv$ snipped-for-privacy@nnrp-beta.newsland.it...

La memoria è labile ma mi sembra che dicesse che con 2 campioni puoi definire le caratteristiche minime di un segnale, frequenza e ampiezza e stop:-) O meglio, servono almeno due campioni per sbozzare un segnale analogico:-D Ma ripeto, la memoria è labile su queste cose:-) ciao Rusty

Reply to
Rusty

lowcost:

Se la tua opinione va contro quella di un teorema dimostrato mi sembra assurdo esprimerla. ;-) Comunque, visto che sono in grado di farlo, cercherò di sdebitarmi con te in minimissima parte.

Fondamentalmente chiedi come faccio a dire che quella campionata era un'onda quadra, triangolare o sinusoidale.

Sappiamo da Fourier che un onda quadra è la somma di tutte le armoniche dispari della fondamentale ed una triangolare la somma di tutte quelle pari. Sappiamo quindi che, essendo le frequenze che possiamo produrre ed elaborare finite, l'onda non sarà certo una quadra o una triangolare perfetta. Tante più armoniche alte taglieremo, tanto più la nostra onda assomiglierà ad una sinusoide.

Come giustamente noti, potrai avere una buona approssimazione di un'onda triangolare solo se è di una frequenza molto più bassa della 1/2 campionamento. Ma ciò non toglie che, per tutte le componenti dell'onda (comunque quasi-)triangolare inferiori alla frequenza di Nyquist hai una ricostruzione perfetta.

Per quanto riguarda i filtri di entrata la soluzione è assai semplice: basta che inizino a tagliare ad una frequenza più bassa, in modo tale che il contenuto di armoniche alla frequenza 1/2 campionamento sia zero.

Reply to
F. Bertolazzi

F. Bertolazzi:

Ti faccio notare che questo è un fenomeno fisico, indipendente dall'elettronica (come forse sai Fourier aveva addirittura cominciato lo studio sulle sue serie per stabilire la velocità di propagazione del calore). Non può esistere nessun fenomeno perfettamente "triangolare" o "quadrato", prima o poi l'inerzia (di qualunque tipo, capacità termica, massa ecc.) dell'oggetto osservato "sinusoidalizzeranno", ovvero taglieranno le armoniche più alte del fenomeno.

Da cui deriva che, in pratica, la ricostruzione perfetta si ha per frequenze inferiori a quella 1/2 campionamento.

Reply to
F. Bertolazzi

e

Aggiunta personale: l'orecchio umano NON e' in grado di percepire componenti armoniche al di la' dei 20 kHz. E questo per un orecchio in perfette condizioni.

Considerando che la risposta dell'orecchio peggiora con l'et=E0, il limite massimo di frequenza udibile =E8 in media dell'ordine di 18 kHz. E questo =E8 quanto per i famosi 44 kHz di frequenza di campionamento. Si potrebbe dire qualcosa sulla quantizzazione a 16 bit, volendo essere realmente pignoli, ma sfido chiunque a dimostrare che l'orecchio sia in grado di fare distinzioni di 1/65536-mo sull'ampiezza di un segnale.

Il teorema di Shannon (Nyquist) non specifica che tipo di onda si possa ricostruire, ma solo che puo' essere ricostruita, tanto per chiudere il discorso...

Mentore

Reply to
Mentore

cut...

Aggiungo (da ignoranterrimo) che, avendoli usati, i DAC e gli ADC audio non sono per niente simili a quelli usati per strumentazione et simila. I DAC interpolano per i fatti loro i campioni con almeno altri 4-8-16 valori determinati al loro interno con circuiti magici che mi hanno sempre lasciato putrefatto. In ogni caso, campionando a 44100 sample/sec non c'=E8 pericolo di incappare in aliasing con risultante zero. Occorrerebbe una frequenza di 22050 Hz per avere il problema che =E8 gi=E0 non udibile di suo. Anche gli ADC sospetto che abbiano magie che li rendano culo e camicia con i corrispondenti DAC. Infatti, tali chip funzionano con un clock multiplo della sample rate. Anche un suono molto acuto registrato su CD viene riprodotto con sorprendente continuit=E0.

Piccio.

Reply to
Piccio

Mentore:

Questo per via dell'inerzia dei peli delle orecchie. No, scherzo, delle ciglia delle cellule acustiche.

Se parli di frequenza udibile hai messo un 1 di troppo.

Io l'avevo fatto. Sai, quando si parla con degli esoterici è meglio essere inutilmente precisi....

Sì e no: la sola onda a 22kHz che un CD può riprodurre è sinusoidale (sempre passi dai filtri passa-basso di input e output). Più cala la sua frequenza, più può essere arbitraria.

Reply to
F. Bertolazzi

Il giorno Mon, 18 Jan 2010 15:09:24 +0100, lowcost ha scritto:

L'onda è solo sinusoidale, altre forme d'onda le ottieni sommando varie componenti sinusoidali, tutte al di sotto della frequenza di campionamento/2. Non potrai mai ottenere in questo modo onde quadre o triangolari con componenti armoniche troppo elevate.

Qui spiega qualcosa sul teorema di Shannon:

formatting link

-- ciao Stefano

Reply to
SB

Piccio:

I circuiti magici a cui ti riferisci credo siano un sottoprodotto della conversione sigma-delta che usano.

ROTFL. Da spiritoso ora sei trapassato a puro spirito?

Eccerto: sono anch'essi sigma-delta.

Reply to
F. Bertolazzi

Ci sarebbero diverse cose da dire. La cosa fondamentale da tenere in conto =E8 che il teorema di Nyquist tratta la possibilit=E0 di ricostruire segnali a banda limitata. Se io prendo lo spettro di un segnale e mi ritrovo dei patatoidi tra 0 Hz e Fmax ed altrove ho zero, allora la MINIMA TEORICA frequenza di campionamento che mi permetterebbe di ricostruire esattamente lo stesso segnale =E8 2*Fmax. Il teorema si dimostra facilmente ma richiede un pizzico di matematica (la teoria delle distribuzioni, in particolare). Se noi abbiamo un'onda quadra a 22 kHz, lo spettro di quest'affare ha la fondamentale a 22 kHz, ma poi ci si ritrover=E0 delle armoniche con ampiezza minore ma che trasportano comunque potenza. Il valore di Fmax non =E8 quindi 22 kHz, ma un valore pi=F9 elevato che dipende da quante armoniche vogliamo far passare. I calcoli mostrano che le armoniche di un onda rettangolare o quadra diminuiscono con l'ordine, ma non si annullano mai, almeno da un punto di vista matematico. Lo spettro non =E8 quindi a supporto limitato. Per casi come questo ed anche per il rumore, per fare un campionamento bisogna far precedere al tutto un filtro anti aliasing che deve essere per forza un filtro analogico, con tutte le difficolt=E0 del caso. E' anche per le bande di transizione di questo povero filtro, cos=EC per il suo omologo che si usa per la ricostruzione, che bisogna tenere un certo margine tra il limite teorico dettato dal teorema di Nyquist e la scelta effettiva di una frequenza di campionamento.

Reply to
Darwin

Questo =E8 vero, ma a causa dell'impossibilit=E0 di realizzare dei filtri anti aliasing e di ricostruzione con una banda di transizione infinitamente stretta.

Reply to
Darwin

Dimenticavo di dire che a volte, nei sistemi che adoperano segnali a banda stretta, si pu=F2 utilizzare in maniera creativa l'aliasing per sottocampionare, ovvero fare ad un campionamento ad una frequenza che non rispetta Nyquist. Il trucco =E8 fare in modo che due porzioni di spettro che trasportano segnale utile non vengano mai sovrapposte a causa del campionamento.

Reply to
Darwin

Darwin:

Forse ho quasi capito. In questo caso ideale, però, immagino che i valori quantizzati non sarebbero esattamente gli stessi che con un filtro "vero".

Però... il teorema di Shannon non è un po' come la Relatività ristretta, ovvero fissa un limite massimo alla quantità di informazione che puoi far passare attraverso un canale? Con i tuoi filtri ideali, in teoria, potresti farne passare di più... Forse è proprio per questo che sono ideali, come la luce che viaggia istantaneamente.

Reply to
F. Bertolazzi

etta,

ar

Momento. Shannon era un genio totale e di teoremi ne ha partoriti un bel po'... Uno =E8 il teorema del campionamento di cui si discute sopra, un altro =E8 il teorema che specifica la massima capacit=E0 di canale una volta che si conosce il rapporto segnale su rumore, specificando l'errore massimo tollerato. Sono due cose abbastanza diverse.

Reply to
Darwin

Un bel giorno lowcost digitò:

Nella pratica si considera un fattore di 0.9-0.95 rispetto alla frequenza di Shannon. Ossia se campioni ottimamente a 44 kHz, ti puoi aspettare una buona resa fino a 20 kHz.

Ragionando al limite arrivi a risultati paradossali come questo. E' ovvio che quello di Shannon è un limite puramente teorico, per il semplice fatto che non può esistere un filtro di ordine infinito (o che non possiamo eseguire una correlazione con un segnale a potenza infinita, per dirla nel dominio del tempo).

Nel momento in cui scendi sotto alla frequenza di Shannon, si ritorna ad un caso risolvibile nella pratica. Se campioni una sinusoide a 21.99KHz, per ricostruirla perfettamente dovrai usare un filtro notevole, ma pur sempre realizzabile. Man mano che si scende di frequenza anche l'ordine del filtro scende, e come dicevo già al 90% della frequenza di Shannon puoi ricostruire perfettamente il segnale con attrezzature comuni.

No.

--
emboliaschizoide.splinder.com
Reply to
dalai lamah

Darwin:

Mi riferivo al secondo, detto anche teorema fondamentale della teoria dell'informazione, come evidente dal fatto che parlavo di "canale". :p

Reply to
F. Bertolazzi

I stand corrected :-D

Beh sai, mi riferivo a un grafico studiato al IV anno di Ingegneria Elettronica, con il buon Mancianti. Si parlo' di 18 kHz circa, anche

15 a dire il vero. Per non parlare dei casi sfortunati come le metropoli, in cui le orecchie vengono messe talmente a dura prova da avere medie di 12 kHz di banda udibile.

ere

Yep

e

Anche qui ragionavo in termini puramente matematici, ma andando a memoria e' possibilissimo che io abbia sbagliato.

Mentore

Reply to
Mentore

Non capisco questo accanimento (a tradimento, su un altro NG), ma prometto che mi aggiornerò (anzi, se qualcuno volesse fornirmi qualche "bigino"...). Non avra mica rubato anche a te la merenda...? :-)

Dunque (a giudicare anche dal seguito) sei uno di quelli che ascolta i dischi (quelli in vinile) mettendoli su un volano da 18kg? :-p Ti hanno già risposto esaustivamente, credo. Volevo solo aggiungere un piccolo contributo su quello che dici qui sotto:

Mi sembra che tu abbia in mente un interpolatore lineare (che unisce i punti dall'1 al 47 come nella Settimana Enigmistica, per intenderci) il quale non è affatto il modo migliore per "inventarsi" i campioni interpolanti. Il filtro da usare sarebbe il cosiddetto Sinc, che ha questa forma

formatting link

Il quale ha la fastidiosissima caratteristica di essere di lunghezza infinita e quella ancora più fastidiosa di esserlo da entrambi i lati (è , come si dice, anticausale) il che implica che devi conoscere i campioni del tuo segnale nel futuro. Ma questa è un'altra storia e non ci dà molto fastidio se stiamo leggendo un CD (e quindi conosciamo i campioni nel futuro). Per fortuna quando ci si allontana dal centro del filtro i campioni hanno ampiezza sempre più piccola e in pratica si può troncarlo ad una certa dimensione, a seconda della precisione che vogliamo ottenere.

Questo filtro va convoluto col segnale da interpolare (o sovracampionare) opportunamente "sovracampionato" (qui si intende inserire L-1 zeri dopo ogni campione, dove L è l'ordine di interpolazione es. L=4 se vuoi ottenere 4 volte il numero di campioni iniziali).

Ad esempio, un segnale sinusoidale a 450Hz, campionato a 1000Hz (solo

100 campioni rappresentati)

formatting link

che come dici tu appare "modulato in ampiezza"

Ma dopo opportuna ricostruzione con il sinc rappresentato prima, che permette un interpolazione per un fattore 100

formatting link

(gli asterischi sono i campioni originali)

Qui c'è un ingrandimento

formatting link

Ovviamente il risultato non è perfetto ma lo si può migliorare a piacere allungando opportunamente il filtro, ma come vedi la modulazione è sparita.

P.

Reply to
Pasu

Pasu:

Sembra una wavelet.

Anche questa. ;-)

Grazie dell'ottima spieganza.

Reply to
F. Bertolazzi

=E8

Una domanda sul linguaggio, io ho sempre chiamato non causale la sinc. Si pu=F2 dire che sia anticausale? Io chiamerei anticausale una funzione tipo u(-t), dove con u(t) indico il gradino di Heaviside. Non sono uno specialista di teoria dei segnali (anche se partecipo ogni tanto a qualche corso, per divertirmi un po' e tenermi in allenamento), e non in Italia.

Reply to
Darwin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.