FM модулирует и демодулирует синусоидальный сигнал

Модулируйте и демодулируйте синусоидальный сигнал. Постройте демодулируемый сигнал и сравните его с исходным сигналом.

Установите параметры в качестве примера.

fs = 100;              % Sample rate (Hz)
ts = 1/fs;             % Sample period (s)
fd = 25;               % Frequency deviation (Hz)

Создайте синусоидальный входной сигнал с длительностью 0,5 с и частота 4 Гц.

t = (0:ts:0.5-ts)';
x = sin(2*pi*4*t);

Создайте Систему модулятора FM object™.

MOD = comm.FMModulator('SampleRate',fs,'FrequencyDeviation',fd);

FM модулирует входной сигнал и строит его действительную часть. Вы видите, что частота модулируемого сигнала изменяется с амплитудой входного сигнала.

y = step(MOD,x);
plot(t,[x real(y)])

Демодулируйте FM модулируемый сигнал.

DEMOD = comm.FMDemodulator('SampleRate',fs,'FrequencyDeviation',fd);
z = step(DEMOD,y);

Постройте вход и демодулируемые сигналы. Выходной сигнал демодулятора точно выравнивается с входным сигналом.

plot(t,x,'r',t,z,'ks')
legend('Input Signal','Demod Signal')
xlabel('Time (s)')
ylabel('Amplitude')