简体   繁体   English

MATLAB中的AM调制:采样频率?

[英]AM Modulation in MATLAB: Sampling frequency?

I'm trying to modulate a carrier of Fc=10 KHz with a sinusoidal message of Fm = 200 Hz (from 0 to 1 in time-domain) 我正在尝试使用Fm = 200 Hz(时域从0到1)的正弦消息调制Fc = 10 KHz的载波

The sampling rate Fs=1 KHz. 采样率Fs = 1KHz。

This is my code: 这是我的代码:

fs=1000;    % sampling freq.
ts=1/fs;
t= 0 : ts : 1;   % time axis
N=length(t);

%signal
fsignal=200;   % message signal freq.
y=sin(2*pi*fsignal*t);
f= -fs/2 : fs/N : fs/2 - fs/N;   % freq. axis
Y=fftshift(fft(y));
subplot(211); plot(f,abs(Y));

Till this point, no problem. 至此,没有问题。 Now, for the carrier signal: 现在,对于载波信号:

%carrier:
fc = 10000;
carrier = cos(2*pi*fc*t);
CARRIER=fftshift(fft(carrier));
subplot(212); plot(f,abs(CARRIER));

信息载体

It's required now to multiply the carrier and message in time-domain. 现在需要在时域中将运营商和消息相乘。 But the carrier isn't correct. 但是承运人是不正确的。 The problem rises from the fact that Fs << Fc 问题源于Fs << Fc

That's why I get wrong FT for the carrier. 这就是为什么我为承运商弄错了FT。

How to fix this please? 请问该如何解决?

NB: This just an example I used to understand the situation. 注意:这只是我用来了解情况的一个示例。 The real problem I'm trying to solve contains wav audio file (Fs=44.1 KHz) and the Carrier Freq (Fc=100 KHz). 我要解决的实际问题包括wav音频文件(Fs = 44.1 KHz)和载波频率(Fc = 100 KHz)。 So, Fs << Fc and I can't do anything about it. 因此,Fs << Fc,我对此无能为力。

Thanks, 谢谢,

If you are trying to plot the spectrum after modulation, you should set the sample freq fs = 2*(fc + fsignal) . 如果要在调制后绘制频谱图,则应设置样本频率fs = 2*(fc + fsignal) See Nyquist I theorem. 参见奈奎斯特一世定理。

Maybe you are trying to see the spectrum around carrier? 也许您正在尝试查看运营商周围的频谱? Without high sampling? 没有高采样? You can use zoom-fft and use Nyquist II theorem 您可以使用zoom-fft和Nyquist II定理

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM