sinus funktion schleife in Matlab programmieren

Gast #784961
Lesenswert?

Hallo an alle,

ich möchte ein sinus funktion schleife zwischen 20Hz-20KHz entwerfen.
ich hab aber schwierigkeiten gefunden. Sehen Sie das programm.

clear;
Amp = 1;
t0 = 0;
i=0;
for f=20:10:200; % f in hz
t2=1/f;
for t=linspace(0,t2,2000);
i=i+1;
b(i)=Amp*sin(2*pi*f*t);
end;
end;
plot(b);

% Das Programm soll den zeitlichen Verlauf eines Signals
% mit verschiedenen Frequenzen darstellen, aber
% es kommt immer das gleiche Signal raus.
% Ich glaube, dass es an der zeilzliche Schritteweite liegt. Hat jemand 
vielleicht eine Idee?
Gast #787265
Lesenswert?

Hallo,
es gibt zwei Chirp in MATLAB Bibliothek ,einmal bei:
Blocksets >SignalProcessing >Blocklibrary >SignalprocessingSources 
>chirp .
Der zweite ist bei:Simulink >LibraryBrowser >Sources >chirp signal.
Ich hab den ersten benutzt.
meine frage ist: wenn ich "simuliere",und auf "SCOPE" zweimal anclicke 
,das grafiche Fenster ist mit time. wie kann ich meine frequenzen
sehe?
danke.
Angehängte Dateien:
#794271
Lesenswert?

Hallo,

Ich möchte chirp funktion von 20-20KHz programmieren, meine Aufgabe ist 
anderes als von tobias hofer.
Bei mir sollte der chirp von 20 bis 20KHz in eine richtung.die Zeit ist 
beliebig.
Abtastfrequenz fa=44100Hz

Frage: ist der chirp,in der skizze der richtige?wenn ja ,wie sollen die 
Prameters eingegeben werden?

wie Sie sehen ,ganz oben habe ich das Programm mit for-schleife 
geschrieben,es wurde mir empfohlen mit"chirp" zu programmieren.
Angehängte Dateien:
#794337
Lesenswert?

>>meine Aufgabe ist anderes als von tobias hofer.
ja, die Zahlenwerte sind anders, außerm nur eine Richtung.

Nochmal: eine linear steigende Winkelgeschwindigkeit des rotierenden 
Zeigers vorgeben, die integrieren (cumsum), Sinus davon, fettich.

Pfeift wunderbar, das script.

Cheers
Detlef

clear
fsample=44100; %Abtastfrequenz
tend=10;
dph=20*2*pi*1/fsample+20000*2*pi*(0:1/fsample:tend)/(tend*fsample);
ph=cumsum(dph);
signal=sin(ph);
return
Gast #794958
Lesenswert?

>>"plot(signal)"geschrieben,dann kommt figur wo nur blau zu sehen

Das signal hat 44100*10 samples, klaro sieht man nur blau.
plot(signal(bla:bla+2000),'.-') oder so mal probieren.

>>sieht nicht gut aus.
Möglicherweise liegt das daran, daß Du Dir den Schluß angesehen hast. 
20kHz bei 44100ks/s ist nahe an der Nyquistfrequenz, das gibts nur wenig 
mehr als 2 samples/Sinuswelle. Das ganze schwebt auch noch etwas mit der 
Abtastfrequenz, deswegen sieht das Signal 'zerhackt' aus.

>>sieht nicht gut aus.
hört sich aber gut an: soundsc(signal,44100)

>>ausserdem,wie kann ich das programm in den Eingang von meiner Skizze in
>>Simulation hinfügen?
keine Ahnung, Simulink kenne ich nicht.

Cheers
Detlef

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren