AM modulation and demodulation
29 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Eleftherios Kostakis
am 26 Mai 2020
Beantwortet: SINETHEMBA MNGUNI
am 16 Okt. 2020
Hello, I have this signal m(t) = cos(2*pi*t), and the AM signal of m : y = (Ac + m).*cos(2*fc*pi*t).
The first plot is the original signal, the second plot is the AM signal and the last is the envelope of the modulated signal.
I want to get the original signal so I try to do demodulation to AM signal, using z = amdemod(y,fc,fs) and next get the envelope of the demolated singal
but I get again the AM's signal envelope. As you see y axis is in range (1,3) but I want it in range (-1,1) like the orginal signal. I want just to deduct the Ac I added in (Ac + m), to get the original, but with amdemod() I don't get that result.
0 Kommentare
Akzeptierte Antwort
Sebastien Dupertuis
am 27 Mai 2020
I think that by removing the mean (DC offset) of your demodulated signal in figure 3, you will then get your signal within the range (-1,1):
m = m-mean(m);
I would write an amDemod function like this:
function m = amDemod(s,fc,fs,n)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Function amDemod()
% Goal : Demodulation of an AM signal
% IN : - s : AM modulated signal
% - fc: Carrier signal frequency
% - fs: Sampling frequency
% - n : Number of carrier signal periods
% IN/OUT: -
% OUT : - m : Original demodulated signal
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Rectify the modulated signal
s = abs(s);
% Set the number of samples on which to do the moving average
k = round(n*fs/fc);
% Take the moving average
m = movmean(s,k);
% Remove the DC offset
m = m-mean(m);
end
Hope this helps.
0 Kommentare
Weitere Antworten (1)
SINETHEMBA MNGUNI
am 16 Okt. 2020
Hi, I need to modulate and demoduate an Audio.wav signal, how can I go about it?
0 Kommentare
Siehe auch
Kategorien
Mehr zu Modulation finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!