How to generate complex envelop signal using chirp function

28 views (last 30 days)
Matlab chirp function will generate cosine-based chirp signal, say from f1 to f2 with 10MHz linear chirp. How to modulate the signal to a carrier at fc, and in complex envelop form?

Accepted Answer

Honglei Chen
Honglei Chen on 23 Jan 2018
One way to get the complex chirp is to form analytical signal, e.g.,
f1 = 0; f2 = 10;
t = 0:0.01:1;
xi = chirp(t,f1,1,f2);
x = hilbert(xi);
Alternatively, you can just use a complex chirp signal equation to derive it, like
x1 = exp(1i*pi*(f2-f1)*t.^2);
To modulate to the carrier, you need to multiply the carrier signal, like
fc = 50;
xm = x.*exp(1i*2*pi*fc*t);
However, most simulation is done in complex baseband and even in RF simulation it models the effect of RF distortion on the baseband signal.
  1 Comment
Chen on 23 Jan 2018
Hello Honglei if fc=18e9, what will be time interval in your t=0:dt:1; dt < 1/(2fc), am I right? then the x will be a very long vector. if I use phased.WideBandCollector to collect data using 20x20 URA, the data will be huge. However, in my application I only need 400 sample of the modulated 18GHz signal

Sign in to comment.

More Answers (1)

Chen on 23 Jan 2018
Hello Honglei Many thanks for your answer. What I want to do is that a URA gets 400 samples from the signal of a LFM(5MHz) modulated on 18GHz with SNR=10dB. I try to use phased.WideBandCollector. Can you answer my question in my next question?
Many thanks Chen

Community Treasure Hunt

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

Start Hunting!

Translated by