En este artículo, vamos a discutir cómo generar la señal FM de banda estrecha y banda ancha usando MATLAB.
La modulación de frecuencia , conocida popularmente como FM , es un tipo de técnica de modulación analógica en la que la frecuencia de la señal portadora de alta frecuencia varía según la amplitud de la señal moduladora (mensaje), mientras que la amplitud y la fase de la señal portadora permanecen constantes o sin alterar.
Ecuación estándar de una señal de FM
dónde; fm = señal FM,
Ac = Amplitud de la señal portadora,
fc = frecuencia portadora,
fm = Frecuencia de modulación,
t = tiempo, & b = índice de modulación de frecuencia.
Las señales de FM se clasifican en dos grandes categorías según el valor del índice de modulación de frecuencia (b):
- FM de banda estrecha
- FM de banda ancha
Señal FM de banda estrecha
En general, las señales de FM que tienen un índice de modulación de frecuencia (b<1) inferior a la unidad se denominan señales de FM de Banda Estrecha. Por lo general, las señales FM de banda estrecha se utilizan en sistemas de comunicación por radio bidireccionales de bajo costo, como un walkie-talkie.
Para generar la señal FM de banda estrecha, utilizaremos la ecuación estándar de la señal FM y pasaremos el valor del índice de modulación de frecuencia (b) menor que la unidad.
Ejemplo:
Matlab
% MATLAB code to generate the narrowband FM signal clc; % Clears the Command Window clear all; % Clears the Workspace close all; % Closes all the Windows opened by the program % Time sampling where Step Size = 0.001 t = 0:0.001:1; fm = 20; % frequency of the Message signal fc = 250; % frequency of the Carrier signal % Take the user input for the Frequency Modulation Index (b) % (b) must be less than 1 b = input("Enter the value of b (<1): "); % Define the Message signal % here its a Sine wave msg = sin(2*pi*fm*t); % Define the Carrier signal % here it is a Cosine wave crr = cos(2*pi*fc*t); % Narrowband FM Signal generation nb_fm = cos((2*pi*fc*t)+(b*sin(2*pi*fm*t))); % Plot all the three signals figure('Name','Narrowband FM Signal Generation'); % Message Signal subplot(3,1,1); plot(t, msg, 'b', 'Linewidth', 1.5); title('Message signal'); xlabel('Time') ylabel('Amplitude') grid on; % Carrier Signal subplot(3,1,2); plot(t, crr, 'r', 'Linewidth', 1.5); title('Carrier signal'); xlabel('Time') ylabel('Amplitude') grid on; % Narrowband FM Signal subplot(3,1,3); plot(t, nb_fm, 'g', 'Linewidth', 1.5); title('Narrowband FM signal'); xlabel('Time') ylabel('Amplitude') grid on;
Producción:
Enter the value of b (<1): 0.55
Señal FM de banda ancha
A diferencia de las señales de FM de banda estrecha, las señales de FM de banda ancha son las señales de FM cuyo índice de modulación de frecuencia (b>1) es mayor que la unidad. Normalmente, las señales de banda ancha se utilizan para la transmisión de radiodifusión de alta calidad.
Para generar la señal FM de banda ancha, utilizaremos la ecuación estándar de la señal FM y pasaremos el valor del índice de modulación de frecuencia (b) mayor que la unidad.
Ejemplo:
Matlab
% MATLAB code to generate the wideband FM signal clc; % Clears the Command Window clear all; % Clears the Workspace close all; % Closes all the Windows opened by the program % Time sampling where Step Size = 0.001 t = 0:0.001:1; fm = 20; % frequency of the Message signal fc = 250; % frequency of the Carrier signal % Take the user input for the Frequency Modulation Index (b) % (b) must be greater than 1 b = input("Enter the value of b (>1): "); % Define the Message signal % here its a Sine wave msg = sin(2*pi*fm*t); % Define the Carrier signal % here it is a Cosine wave crr = cos(2*pi*fc*t); % Wideband FM Signal generation wb_fm = cos((2*pi*fc*t)+(b*sin(2*pi*fm*t))); % Plot all the three signals figure('Name','Wideband FM Signal Generation'); % Message Signal subplot(3,1,1); plot(t, msg, 'b', 'Linewidth', 1.5); title('Message signal'); xlabel('Time') ylabel('Amplitude') grid on; % Carrier Signal subplot(3,1,2); plot(t, crr, 'r', 'Linewidth', 1.5); title('Carrier signal'); xlabel('Time') ylabel('Amplitude') grid on; % Wideband FM Signal subplot(3,1,3); plot(t, wb_fm, 'g', 'Linewidth', 1.5); title('Wideband FM signal'); xlabel('Time') ylabel('Amplitude') grid on;
Producción:
Enter the value of b (>1): 2.5