Funzioni > Elaborazione dei segnali > Analisi spettrale > Esempio: analisi spettrale
  
Esempio: analisi spettrale
Utilizzare le funzioni coherence, cspectrum, pspectrum e snr per calcolare coerenza, spettro incrociato, spettro di potenza, e rapporto segnale-rumore per un segnale per o coppie di segnali.
Una descrizione di questa procedura media è disponibile in Signal Processing Algorithms di Samuel Stearns e Ruth David (Prentice-Hall, Inc.).
Spettro di potenza: utilizzo di DFT
Per una serie temporale lunga in cui solo pochi punti dati hanno valori corrispondenti a un segnale, è utile che lo spettro di potenza mostri le frequenze del segnale, ma non il rumore o i valori zero.
1. Definire la larghezza della finestra.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Definire due finestre possibili, w1 e w2, in cui il segnale è diverso da zero.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Impostare la larghezza della finestra su una delle due larghezze possibili.
Fare clic per copiare questa espressione
4. Definire il segnale e le frequenze di campionamento.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Utilizzare la funzione sin per definire il segnale all'interno e all'esterno della finestra selezionata.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Tracciare il grafico del segnale.
Fare clic per copiare questa espressione
7. Utilizzare la funzione dft per calcolare la trasformata discreta di Fourier di x.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
8. Tracciare il grafico della funzione risultante nel dominio delle frequenze.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Per un segnale sinusoidale puro, la grandezza dei coefficienti di DFT fornisce una buona stima del relativo spettro di potenza. Ma in questo caso, la DFT del segnale è il contenuto di frequenza del segnale strutturato convoluto con la trasformazione di una finestra rettangolare (una funzione sinc).
Impostando W= w2 (Passo 3) la finestra in cui è presente il segnale sinusoidale viene allargata da 230–300 a 0–499 (fattore di 7.143x), con il conseguente aumento della grandezza dei due picchi da 35 a 250 (anche in questo caso con un fattore 7.143x).
Le frequenze a cui corrispondono i picchi rimangono invariate.
Spettro di potenza: utilizzo di pspectrum
La funzione pspectrum suddivide la serie temporale originale in segmenti sovrapposti. Ognuno di questi segmenti viene trasformato da una trasformata discreta di Fourier e viene calcolata la media dei coefficienti delle grandezze trasformate. Se la scala della lunghezza dei segmenti corrisponde a quella dei fenomeni da analizzare nel segnale, la funzione pspectrum restituisce una buona approssimazione della grandezza dei componenti delle parti interessanti della serie temporale originale.
In generale, la lunghezza del segnale deve essere almeno uguale a n + 1.
1. Definire la lunghezza del segnale, la frazione di sovrapposizione e il tipo di finestra (rettangolare rastremata).
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare la funzione pspectrum per calcolare lo spettro di potenza di x calcolato dividendo x in n1 segmenti sovrapposti con frazione di sovrapposizione r ed eseguendo la finestratura di ogni segmento con una finestra rettangolare rastremata.
Fare clic per copiare questa espressione
3. Utilizzare le funzioni floor e length per mostrare che la lunghezza dell'intervallo è il numero più grande L per il quale:
Fare clic per copiare questa espressione
4. Tracciare il grafico dello spettro con un asse della frequenza normalizzato (1 rappresenta la frequenza di campionamento).
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Calcolare la potenza media nello spettro.
Fare clic per copiare questa espressione
È approssimativamente il valore al quadrato medio del segnale x.
Fare clic per copiare questa espressione
pspectrum con rumore bianco
Calcolare lo spettro di potenza di un segnale che contiene rumore bianco. Generare due segnali di tale tipo, poiché il secondo segnale è necessario per i calcoli dello spettro incrociato. Utilizzare una finestra di Hamming per racchiudere il blocco di dati.
1. Definire l'ampiezza del segnale.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Utilizzare le funzioni sin e rnd per definire due segnali con una frequenza comune fc. La funzione rnd restituisce un vettore di numeri casuali con distribuzione uniforme compreso tra 0 e il numero specificato, garantendo pertanto che i segnali rimangano diversi.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Tracciare i primi 100 campioni dei due segnali.
Fare clic per copiare questa espressione
4. Utilizzare la funzione pspectrum per ottenere lo spettro di potenza di y1 calcolato dividendolo in 40 segmenti sovrapposti con frazione di sovrapposizione di 0.5 ed eseguendo la finestratura di ogni segmento con una finestra di Hamming.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
5. Utilizzare le funzioni match e max per trovare i campioni di picco dello spettro di potenza.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
6. Tracciare il grafico dello spettro in decibel. Utilizzare gli indicatori per contrassegnare la frequenza comune e il valore massimo decibel.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Il grafico mostra che tutta la potenza del segnale si verifica alle frequenze comuni fc e 1-fc.
7. Calcolare la potenza del rumore.
Fare clic per copiare questa espressione
8. Calcolare il rendimento della potenza del rumore in dB.
Fare clic per copiare questa espressione
9. Calcolare l'altezza basandosi sul fatto che i due campioni di frequenza divisi per la lunghezza dello spettro dovrebbero restituire la potenza media nel componente seno, ovvero 0,5.
Fare clic per copiare questa espressione
Oppure:
Fare clic per copiare questa espressione
10. Confrontare in decibel le altezze teoriche ed effettive.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Funzione cspectrum
In genere, lo spettro incrociato è utilizzato per rilevare le analogie tra due segnali, ad esempio confrontando una forma d'onda del linguaggio nota (ad esempio la vocale "a") con una forma d'onda del linguaggio sconosciuta (ad esempio la parola "mela") per verificare se la forma d'onda nota è presente nella forma d'onda sconosciuta. Proprio come lo spettro di potenza di una serie temporale è simile alla rispettiva autocorrelazione, lo spettro incrociato per due serie temporali è simile alla rispettiva correlazione incrociata. Per le frequenze casuali stazionarie, le funzioni relative allo spettro restituiscono gli stessi valori delle funzioni di correlazione.
1. Applicare la funzione cspectrum ai segnali y1 e y2, utilizzando 40 segmenti sovrapposti con frazione di sovrapposizione di 0.5 ed eseguendo la finestratura di ogni segmento con una finestra rettangolare rastremata.
Fare clic per copiare questa espressione
2. Tracciare il grafico dello spettro in decibel.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Tracciare il grafico dello spettro incrociato tenendo presente che si tratta di un grafico complesso e pertanto il logaritmo deve essere applicato alla grandezza.
Fare clic per copiare questa espressione
Lo spettro incrociato di y1 e y2 mostra un picco alle frequenze comuni fc e 1- fc.
Funzioni coherence e snr
La funzione coherence misura la dipendenza lineare di un segnale da un altro, è uguale al quadrato della grandezza dello spettro incrociato dei sue segnali diviso per entrambi gli spettri di potenza e restituisce valori da 0 a 1. Se la funzione di coerenza ha valore 1, significa in genere che entrambi i segnali presentano componenti forti privi di rumore nella banda di frequenza in questione, mentre il valore 0 indica che in tale banda è presente soprattutto rumore.
La funzione snr relativa al rapporto segnale-rumore equivale alla funzione coherence divisa per uno meno la funzione coherence e ha valore massimo nel punto in cui i due segnali hanno componenti forti in qualsiasi banda di componenti, proporzionalmente al rapporto tra le forze dei segnali e la forza del sensore o del rumore di fondo.
1. Applicare la funzione coherence ai segnali y1 e y2, utilizzando 40 segmenti sovrapposti con frazione di sovrapposizione di 0.5 ed eseguendo la finestratura di ogni segmento con una finestra di Hamming.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
2. Tracciare il grafico della funzione di coerenza. Utilizzare indicatori per contrassegnare la frequenza comune e il valore massimo.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
3. Applicare la funzione snr ai segnali y1 e y2, utilizzando 40 segmenti sovrapposti con frazione di sovrapposizione di 0.5 ed eseguendo la finestratura di ogni segmento con una finestra di Hamming.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
4. Tracciare il grafico della funzione di rapporto segnale-rumore. Utilizzare indicatori per contrassegnare la frequenza comune e il valore massimo.
Fare clic per copiare questa espressione
Fare clic per copiare questa espressione
Entrambe le funzioni coherence e snr presentano un valore massimo in corrispondenza dei singoli componenti di frequenza dei due segnali con rumore aggiunto, rappresentato dalle due barre di dimensioni più piccole su uno dei lati.