How can I modify this code for frequency modulation to use freq deviation instead of a modulation index?
3 views (last 30 days)
Show older comments
I found a way to plot Frequency Modulated signals in the time domain, however, it uses a modulation index instead of Frequency Deviation.
How can I alter this code to use Frequency Deviation instead?
% Carrier Freq (Hz)
fc = 1200;
% Modulating Signal Freq (Hz)
fm = 60;
% Modulation Index
m = 10;
% Carrier Amplitude
Ac = 10;
% Signal Amplitude
Am = 1;
% Frequency deviation
f_delta = 300;
% Number of samples
numSamples = 2^14;
t = linspace(0, 0.05, numSamples);
% Carrier signal
c = Ac * sin(2*pi*fc*t);
% Modulating signal
M = Am * sin(2*pi*fm*t);
y = cos(2*pi*fc*t + (m.*sin(2*pi*fm*t)));
plot(t,y);
xlabel('Time');
ylabel('Amplitude');
title({'FM Signal'});
0 Comments
Answers (1)
Vishwa
on 24 Mar 2023
Modulation Index is nothing but ratio of peak frequency deviation and highest frequency component.
Hence,
y = cos(2*pi*fc*t + ((f_delta/fm).*sin(2*pi*fm*t)));
0 Comments
See Also
Categories
Find more on Modulation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!