What is the difference between "phased.LinearFMWaveform" and "phased.FMCWWaveform"
Show older comments
1. What is the difference between "phased.LinearFMWaveform" and "phased.FMCWWaveform" in Phased Array System Toolbox except for that Triangle waveform generation is possible in P"phased.LinearFMWaveform" function.
2. My other concern is I want to sweep bandwidth of 10Mhz from start frequency of 10 MHz and End Frequency 20MHz. How can i do that in "phased.LinearFMWaveform" function.
3. When i dechirp the received signal from transmitted signal of saw-tooth waveform, i should get 2 beat frequencies (according to "New ideas in FM Radar by H. D. Griffiths"). but i get only 1 beat frequency, why?
Accepted Answer
More Answers (1)
Nadir HEFHAF
on 10 Sep 2017
Edited: Honglei Chen
on 11 Sep 2017
i have problem also in this program
close all
clc
clear all
L = 50;
N = 4;
rxULA = phased.ULA('Element',phased.OmnidirectionalMicrophoneElement,...
'NumElements',N);
rxpos1 = [0;0;0];
rxvel1 = [0;0;0];
rxax1 = azelaxes(90,0);
rxpos2 = [L;0;0];
rxvel2 = [0;0;0];
rxax2 = rxax1;
srcpos = [30;100;0];
srcvel = [0;0;0];
srcax = azelaxes(-90,0);
srcULA = phased.OmnidirectionalMicrophoneElement;
fc = 300e3; % 300 kHz
c = 1500; % 1500 m/s
dmax = 150; % 150 m
pri = (2*dmax)/c;
prf = 1/pri;
bw = 100.0e3; % 100 kHz
fs = 2*bw;
waveform = phased.LinearFMWaveform('SampleRate',fs,'SweepBandwidth',bw,...
'PRF',prf,'PulseWidth',pri/10);
signal = waveform();
nfft = 128;
radiator = phased.WidebandRadiator('Sensor',srcULA,...
'PropagationSpeed',c,'SampleRate',fs,...
'CarrierFrequency',fc,'NumSubbands',nfft);
collector1 = phased.WidebandCollector('Sensor',rxULA,...
'PropagationSpeed',c,'SampleRate',fs,...
'CarrierFrequency',fc,'NumSubbands',nfft);
collector2 = phased.WidebandCollector('Sensor',rxULA,...
'PropagationSpeed',c,'SampleRate',fs,...
'CarrierFrequency',fc,'NumSubbands',nfft);
channel1 = phased.WidebandFreeSpace('PropagationSpeed',c,...
'SampleRate',fs,'OperatingFrequency',fc,'NumSubbands',nfft);
channel2 = phased.WidebandFreeSpace('PropagationSpeed',c,...
'SampleRate',fs,'OperatingFrequency',fc,'NumSubbands',nfft);
[~,ang1t] = rangeangle(rxpos1,srcpos,srcax);
[~,ang2t] = rangeangle(rxpos2,srcpos,srcax);
sigt = radiator(signal,[ang1t ang2t]);
sigp1 = channel1(sigt(:,1),srcpos,rxpos1,srcvel,rxvel1);
sigp2 = channel2(sigt(:,2),srcpos,rxpos2,srcvel,rxvel2);
[~,ang1r] = rangeangle(srcpos,rxpos1,rxax1);
[~,ang2r] = rangeangle(srcpos,rxpos2,rxax2);
sigr1 = collector1(sigp1,ang1r);
sigr2 = collector2(sigp2,ang2r);
doa1 = phased.GCCEstimator('SensorArray',rxULA,'SampleRate',fs,...
'PropagationSpeed',c);
doa2 = phased.GCCEstimator('SensorArray',rxULA,'SampleRate',fs,...
'PropagationSpeed',c);
angest1 = doa1(sigr1);
angest2 = doa2(sigr2);
yest = L/(abs(tand(angest1)) + abs(tand(angest2)));
xest = yest*abs(tand(angest1));
zest = 0;
srcpos_est = [xest;yest;zest]
the problem is
Array formation and parentheses-style indexing with objects of class 'phased.LinearFMWaveform' is not allowed. Use objects of class 'phased.LinearFMWaveform' only as scalars or use a cell array.
Error in program11 (line 27) signal = waveform();
3 Comments
Honglei Chen
on 11 Sep 2017
What version of MATLAB are you using? I cannot reproduce the error on my end.
Harwanto Zidqi Putro
on 12 Aug 2020
Edited: Harwanto Zidqi Putro
on 12 Aug 2020
I have version 2016a, and its error with same problem
PATRICK UWIGIZE
on 30 Dec 2021
Edited: PATRICK UWIGIZE
on 30 Dec 2021
Upgrade you MATLAB to a newer version
Categories
Show more
Find more on Linear Prediction in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!