필터 지우기
필터 지우기

linear chirp signal generation ?

조회 수: 66 (최근 30일)
Aniket
Aniket 2013년 2월 5일
댓글: Neal Bambha 2019년 12월 16일
hello i don't want to use chirp inbuilt function and i have written a code for chirp. could any one tell me is the code is correct ? i have simulate it and getting plot but at instantaneous time t1, I am not getting frequency change.
i have written a code according to equation of chirp signal generation.
please tell me this is correct ?
*****************************************
f1 =10;
f2 = 50 ;
t =0:0.001:20;
t1 = 10;
alpha = (f2-f1)/t1;
f= (alpha)*t + f1;
xx =1*cos(f);
plot (t,xx);
**********************************************
  댓글 수: 1
Neal Bambha
Neal Bambha 2019년 12월 16일
This is not the correct expression for a linear chirped signal. See the wikipedia page for "Chirp" There is a t-squared term in the sine. Otherwise you will not have the correct spectrum
chirp_slope = (f2 - f1)/t(end);
chirp_signal = sin(2*pi*(0.5*chirp_slope*t.^2 + f1*t));

댓글을 달려면 로그인하십시오.

채택된 답변

Youssef  Khmou
Youssef Khmou 2013년 2월 5일
편집: Youssef Khmou 2013년 2월 5일
hi, try this :
Fs=1000; % sample rate
tf=2; % 2 seconds
t=0:1/Fs:tf-1/Fs;
f1=100;
f2=400; % start @ 100 Hz, go up to 400Hz
semi_t=0:1/Fs:(tf/2-1/Fs);
sl=2*(f2-f1/2);
f1=f1*semi_t+(sl.*semi_t/2);
f2=f1(end)+f2*semi_t-sl.*semi_t/2;
f=[f1 f2];
y=1.33*cos(2*pi*f.*t);
plot(t,y)
  댓글 수: 6
Atilla Golan
Atilla Golan 2018년 1월 21일
편집: Atilla Golan 2018년 1월 21일
Hi Youssef, Can we try up-going and down going chirp together? (without using chirp function on Matlab). In a time range of [1.2s 2.7s] (for example) my function should go up 0.6s (since 1.2s to 1.8s) and go down for the rest (since 1.8s to the end:2.7s). I mean in a constant frequency range, function goes up and down during time like quadratic chirp function but without using chirp.
Dhananjay Singh
Dhananjay Singh 2019년 2월 25일
hi youssef,
the code you last sent doesn't work when i set the values of f1, f2 in Khz. can you help?

댓글을 달려면 로그인하십시오.

추가 답변 (3개)

Honglei Chen
Honglei Chen 2013년 2월 5일
It should be
cos(2*pi*f.*t)
instead of
cos(f)

REEM ALI
REEM ALI 2014년 1월 30일
please i want to generate triangular modulation sweep of fmcw of rx and tx

farouk behar
farouk behar 2015년 8월 11일
f = 150; a =5; w =2*pi*f; t =0:0.1:20; theta = pi/2; X = a*cos((w*t)+theta); y0 = X + 2*rand(size(t));
plot(t,y0)

카테고리

Help CenterFile Exchange에서 Waveform Generation에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by