I'm setting a FMCW radar simulation platform with ULA.
I read example code in helperFMCWTwoRaySimulate.m and Automotive Adaptive Cruise Control Using FMCW Technology.
for m = 1:Nsweep % Update radar and target positions
[radar_pos,radar_vel] = radarmotion(sweeptime); [tgt_pos,tgt_vel] = carmotion(sweeptime); % Transmit FMCW waveform
sig = waveform(); txsig = transmitter(sig); % Propagate the signal and reflect off the target
txsig = txchannel(txsig,radar_pos,tgt_pos,radar_vel,tgt_vel); % propagate the signal
rxsig = cartarget(txsig); rxsig = rxchannel(rxsig,radar_pos,tgt_pos,radar_vel,tgt_vel); % propagate the signal % Dechirp the received radar return
rxsig = receiver(rxsig); xd = dechirp(rxsig,sig); xr_unmixed(:,m) = rxsig; xr(:,m) = xd; end
In % Propagate the signal and reflect off the target, it used two channels for RX and TX respectively
I noticed that if I set a ULA, I don't have to use a reciver channel after collector. Is that right?
for m = 1:Nsweep % Update radar and target positions [radar_pos,radar_vel] = radarmotion(waveform.SweepTime); [tgt_pos,tgt_vel] = carmotion(waveform.SweepTime); % Transmit FMCW waveform sig = waveform(); txsig = transmitter(sig); % Radiate the pulse toward the target
txsig = radiator(txsig,tgtang); % Propagate the signal and reflect off the target txsig = channel(txsig,radar_pos,tgt_pos,radar_vel,tgt_vel); rxsig = cartarget(txsig); % txsig = channel(txsig,tgt_pos,radar_pos,tgt_vel,radar_vel);
% Collect the echo from the incident angle at the antenna
rxsig = collector(rxsig,tgtang); % Dechirp the received radar return rxsig = receiver(rxsig); dechirpsig = dechirp(rxsig,sig); xr(:,:,m) = dechirpsig; end
Best Answer