Espectro de amplitud y fase en MATLAB

0

Tengo un pequeño problema con el tema Teoría de la señal. Nos dijeron que hiciéramos amplitud y espectro de fase de cosinus en MATLAB, pero no tenemos resultados ni materiales de nuestros maestros, así que tenemos que estudiar de muchos materiales diferentes y puedes imaginarte cómo es esto. Así que estoy un poco confundido.

Sin embargo, hice algunos gráficos, eso debería ser lo que quiero, de acuerdo con las instrucciones, pero nunca he visto algo así, así que no estoy seguro, si eso es correcto.

¿Estas gráficas tienen algún sentido para ti? Utilicé la transformada rápida de Fourier (fft (y) en MATLAB) en la señal y luego graficé el resultado de la transformada en función de la frecuencia de la muestra y pensé que es posible obtener la fase de la señal por ángulo (fft (y)), así que dibujé esto en el último gráfico.

Me gustaría disculparme por las nociones incorrectas que podría usar, porque no soy un hablante nativo de inglés.

Gracias por cualquier ayuda.

    
pregunta Bo20

1 respuesta

1

Probablemente esto se ajusta mejor a dsp.stackexchange.com.

Este es el FT más simple que debes entender. La regla básica es: un seno de frecuencia f0 en el dominio del tiempo es un delta en f0 y -f0 en frecuencia. Puede hacer esto teóricamente, como se muestra en enlace .

Esos picos en tu gráfica son consistentes con esto. Sin embargo, no es cierto que haya un pico en 90Hz. Los picos deben estar a 10 Hz y -10 Hz. Hay dos enfoques posibles aquí:

a) Use fftshift para corregir este problema. Esto llevará cada frecuencia a su lugar real.

Fs=100; %sampling frequency
T=1; %signal length
N=T*Fs;     %number of samples
f=-Fs/2:Fs/N:Fs/2-Fs/N; %frequency vector
x=cos(2*pi*10*t);
Xf=fft(x);
Xf=fftshift(Xf);
plot(f,abs(Xf)) %magnitude

b) Suponga que la señal es real, entonces el espectro es simétrico. Es cierto en este caso, pero no es necesario. Puede trazar la primera mitad de su pie derecho, es decir, de 0 Hz a 50 Hz.

    
respondido por el Serge

Lea otras preguntas en las etiquetas