0
$\begingroup$

Okay, this might be a very basic question, but I'm completely new to the field.

I have a $40$ Hz sine wave ($1000$ samples, $fs = 1$ kHz), which I have amplitude modulated to a $4$ Hz sine wave ($1000$ samples, $fs = 1$ kHz). In the time-domain, the result looks like I expected. However, when I calculate the FFT, there are $2$ sidebands but nothing at $40$ Hz anymore. If I increase the FFT resolution with zero-padding I can see something there, but very modest.

Is this expected behaviour? Can someone explain what is happening here and why. Thank you!

EDIT: to clarify, I get two peaks which are at 16 Hz and 24 Hz.

$\endgroup$
  • $\begingroup$ Also, should I be lifting the sines over zero before doing the AM modulation...? I saw that to be done somewhere $\endgroup$ – stack Jul 4 '13 at 14:18
  • $\begingroup$ The modulation depth is 100%. Forgot to mention. $\endgroup$ – stack Jul 4 '13 at 14:21
  • 1
    $\begingroup$ Could you post a code fragment (or a formula) to clarify what you actually did? $\endgroup$ – Matt L. Jul 4 '13 at 14:58
  • $\begingroup$ pastebin.com/FQb7cThx $\endgroup$ – stack Jul 4 '13 at 15:03
  • $\begingroup$ Should the signal bandwidth be below the modulation frequency? That would seem to solve problems... :I arrgh, this is difficult $\endgroup$ – stack Jul 4 '13 at 15:14
3
$\begingroup$

What you did is multiply two sinusoids with each other:

$$z(n)=\sin(n\theta_1)\cdot\sin(n\theta_2)$$

where $\theta_1=2\pi\cdot 40/1000$ and $\theta_2=2\pi\cdot 4/1000$. The result $z(n)$ can be written as

$$z(n)=\frac{1}{2}\left[\cos(n(\theta_1-\theta_2))-\cos(n(\theta_1+\theta_2))\right]$$

So you get two sinusoids with the sum and the difference of the two original frequencies, i.e. one with $40-4=36Hz$, and the other one with $40+4=44Hz$. This is exactly what you see in your FFT plot. You use a 1000-point FFT, i.e. the frequency at index $i$, ($i=1,2,\ldots,1000)$, is given by

$$f_i=\frac{f_s}{1000}(i-1)=i-1,\quad i=1,\ldots,1000$$

where $f_s=1000Hz$ is the sampling frequency. You get peaks at $i=37$ and $i=45$, which correspond to frequencies $f_{37}=36Hz$ and $f_{45}=44Hz$, exactly as expected.

I think you made a mistake in the mapping of FFT indices to frequencies.

By the way, with standard amplitude modulation you indeed get the carrier in the spectrum because the modulated signal looks like

$$s(n)=[1+mx(n)]\sin(n\theta_0)$$

where $x(n)$ is your message, $m$ is a scaling factor, $\theta_0$ is the carrier frequency, and the term $1$ which is added to the signal results in the carrier wave in addition to the sidebands. You just multiplied two sinusoids without this constant term, that's why you don't see any carrier. This was already correctly pointed out in chirlu's answer.

$\endgroup$
1
$\begingroup$

From the code, it appears that you are multiplying both signals, i.e. $c(t)\cdot s(t)$. However, regular amplitude modulation with 100% depth is $c(t)\cdot (0.5+0.5\cdot s(t))$.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.