How to generate a sine curve?

I want to generate a sine curve with a frequency of 1 Hz, amplitude of 0.2, and for a time of 15 seconds. I want the sampling rate to be 30 samples per second. This is something that I have so far:
Amp = 0.20;
Freq = 1;
Time.Val = [0:482-1];
Sig = Amp*...
sin(Freq*2*pi*Time.Val);
However, I keep getting an error. Can anyone help?

4 comentarios

Matt J
Matt J el 26 de Feb. de 2013
Editada: Matt J el 26 de Feb. de 2013
You forgot to copy/paste your error messages for us, but it probably has to do with AMP.Mod.Time. You should show us how that's generated, too.
per isakson
per isakson el 26 de Feb. de 2013
Editada: per isakson el 26 de Feb. de 2013
Whit does AMP.Mod.Time stand for? Is it defined?
Sarah
Sarah el 26 de Feb. de 2013
Sorry everyone, AMP.Mod.Time should just be Time.Val. I am not actually getting an error, but my plot is weird, I am not getting 1 cycle per second, where each cycle has 30 samples.
Youssef  Khmou
Youssef Khmou el 26 de Feb. de 2013
hi Sarah; you get one period because the time axis is not sampling with F=30Hz; beside you code does nt respect Nyquist condition

Iniciar sesión para comentar.

 Respuesta aceptada

Youssef  Khmou
Youssef Khmou el 26 de Feb. de 2013

0 votos

hi, try :
Fs=30;
t=0:1/Fs:15-1/Fs;
Amp=0.5;
F=1;
x=Amp*sin(2*pi*t*F);
figure, plot(t,x)

Más respuestas (0)

Categorías

Más información sobre Communications Toolbox en Centro de ayuda y File Exchange.

Preguntada:

el 26 de Feb. de 2013

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by