Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2015
    residenza
    Roma
    Messaggi
    9

    stimare frequenza avendo fft con matlab

    Salve. avrei un problema. Devo calcolarmi la fase (in frquenza)di un segnale sinusoidale trasformato con fft . L'obbiettivo è scegliere il numero di bit adatto a misurare questa fase quindi tramite delle prove (8,16,32 bit) volevo vedere quanti bit erano sufficienti per una buona misurazione di fase. Perciò avendo la fft della mia sinusoide e di una sinusoide identica sfasata di tot radianti (es pi/4) volevo quantizzare il mio vettore delle fasi (sto facendo il tutto con matlab) e poi ricostrurimi la mia frequenza(quantizzata) tramite la relazione deltaphi=2*pi*fq*deltaT e vedere se la sinusoide ricostruita con quella fq è sufficientemente simile a quella iniziale. Secondo voi è fattibile come cosa? avete altre idee per stimare il numero adatto di bit per avere una buona misurazione della fase in frequenza di un segnale?
    grazie

  2. #2
    Più che il campionamento è importante la frequenza (secondo la regola di Nyqvist, deve essere maggiore del doppio della frequenza del segnale).

    Io farei così. Scegli un segnale con una certa fase (es: pi/4) ed una data frequenza (es: 200 Hz).

    Dopodichè lo campioni a 500Hz, 1kHz, 2kHz, 5kHz, 10kHz.
    Analogamente fai un resample a 8, 16, e 32 bit (Matlab di default usa 64 bit).

    Se hai scelto 5 frequenze e 3 profondità di bit avrai quindi 5x3 = 15 ricampionamenti.

    Infine, per ogni coppia di frequenza / numero di bit ti ricalcoli la fase tramite algoritmo fft, e vedi per ogni segnale quanto è distante dall'originale. Mi aspetto una correlazione elevata con il periodo, basso con il numero di bit.

    PS: se hai domande specifiche su Matlab e qua non trovi risposte puoi consultare o il forum Mathworks o una delle pagine facebook di Matlab e/o Matlab/Simulink (dove tra l'altro mi trovi )

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2015
    residenza
    Roma
    Messaggi
    9
    Quote Originariamente inviata da panta1978 Visualizza il messaggio
    Più che il campionamento è importante la frequenza (secondo la regola di Nyqvist, deve essere maggiore del doppio della frequenza del segnale).

    Io farei così. Scegli un segnale con una certa fase (es: pi/4) ed una data frequenza (es: 200 Hz).

    Dopodichè lo campioni a 500Hz, 1kHz, 2kHz, 5kHz, 10kHz.
    Analogamente fai un resample a 8, 16, e 32 bit (Matlab di default usa 64 bit).

    Se hai scelto 5 frequenze e 3 profondità di bit avrai quindi 5x3 = 15 ricampionamenti.

    Infine, per ogni coppia di frequenza / numero di bit ti ricalcoli la fase tramite algoritmo fft, e vedi per ogni segnale quanto è distante dall'originale. Mi aspetto una correlazione elevata con il periodo, basso con il numero di bit.

    PS: se hai domande specifiche su Matlab e qua non trovi risposte puoi consultare o il forum Mathworks o una delle pagine facebook di Matlab e/o Matlab/Simulink (dove tra l'altro mi trovi )
    Allora non ho capito benissimo. Comunque il lavoro che mi è stato dato è che ho già prefissati la frequenza di campionamento (4Ghz) e la frequenza della sin la scelgo io (250 Mhz per esempio). Queste cose sono fissate.

    A questo punto, il mio compito è di calcolarmi la fase in frequenza (obbiettivo finale del progetto) ma devo riuscire a capire con quanta profondità di bit fare questa cosa.

    Poi avevo pensato che facendo le fft di una sinusoide con faseiniziale=0 e una con faseinziale1=pi/4 (esempio, è indifferente), volevo quantizzare i vettori delle due fasi nella fft con un algoritmo apposito con N bit, poi valutarmi questa frequenza quantizzata che mi esce fuori facendo deltafi(quantizzata in frequenza)=2*pi*fq*deltat.

    E quindi riuscire a trovarmi fq e vedere quanto è simile all'originale e se soddisfa la misurazione o se è meglio usare un numero maggiore di bit

    Era un idea ma volevo sapere se era fattibile e in caso come fare con matlab(ma quello piano piano riesco e sono gia su mathworks ), dato che mi è stato consigliato dal ragazzo che mi ha dato il lavoro (sono in tesi triennale). Se hai qualche altra idea per farlo o qualche opinione o cosniglio sul metodo se può funzionare, sono tutto orecchi
    grazie per l'aiuto!

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.