Dear Sirs/Madams, Could you please tell me how to use the step function with UPDATERCS? I would like to apply swerling models to end-to-end radar system example http://www.mathworks.com/help/phased/gs/end-to-end-radar-system.html but I couldn't understand how to do from the explanations of mathworks' step function and radar.target. Could you please send me a short example about UPDATERCS on step function or explain me how to do with details ASAP? In fact I would be very happy if you explain me the issue on the end-to-end radar system example.
Error: Error using phased.RadarTarget/step Not enough input arguments; expected 2 (in addition to the object handle), got 1.
Error in rs2 (line 54) sig = step(htgt,sig);
full code:
hwav = phased.RectangularWaveform('PulseWidth',1e-6,'PRF',5e3,'OutputFormat','Pulses','NumPulses',1);hant = phased.IsotropicAntennaElement('FrequencyRange',[1e9 10e9]);htgt = phased.RadarTarget('Model','Nonfluctuating','MeanRCS',0.5,'PropagationSpeed',physconst('LightSpeed'),'OperatingFrequency',4e9);htxplat = phased.Platform('InitialPosition',[0;0;0],'Velocity',[0;0;0],'OrientationAxes',[1 0 0;0 1 0;0 0 1]);htgtplat = phased.Platform('InitialPosition',[7000; 5000; 0],'Velocity',[-15;-10;0]);[tgtrng,tgtang] = rangeangle(htgtplat.InitialPosition,htxplat.InitialPosition);htx = phased.Transmitter('PeakPower',50e3,'Gain',20,'LossFactor',0,'InUseOutputPort',true,'CoherentOnTransmit',true);hrad = phased.Radiator('Sensor',hant,'PropagationSpeed',physconst('LightSpeed'),'OperatingFrequency',4e9);hcol = phased.Collector('Sensor',hant,'PropagationSpeed',physconst('LightSpeed'),'Wavefront','Plane','OperatingFrequency',4e9);hrec = phased.ReceiverPreamp('Gain',20,'NoiseFigure',2,'ReferenceTemperature',290,'SampleRate',1e6,'EnableInputPort',true,'SeedSource','Property','Seed',1e3);hspace = phased.FreeSpace('PropagationSpeed',physconst('LightSpeed'),'OperatingFrequency',4e9,'TwoWayPropagation',false,'SampleRate',1e6);% Time step between pulses
T = 1/hwav.PRF;% Get antenna position
txpos = htxplat.InitialPosition;% Allocate array for received echoes
rxsig = zeros(hwav.SampleRate*T,numpulses);for n = 1:numpulses % Update the target position
[tgtpos,tgtvel] = step(htgtplat,T); % Get the range and angle to the target
[tgtrng,tgtang] = rangeangle(tgtpos,txpos); % Generate the pulse
sig = step(hwav); % Transmit the pulse. Output transmitter status
[sig,txstatus] = step(htx,sig); % Radiate the pulse toward the target
sig = step(hrad,sig,tgtang); % Propagate the pulse to the target in free space
sig = step(hspace,sig,txpos,tgtpos,[0;0;0],tgtvel); % Reflect the pulse off the target
sig = step(htgt,sig); % Propagate the echo to the antenna in free space
sig = step(hspace,sig,tgtpos,txpos,tgtvel,[0;0;0]); % Collect the echo from the incident angle at the antenna
sig = step(hcol,sig,tgtang); % Receive the echo at the antenna when not transmitting
rxsig(:,n) = step(hrec,sig,~txstatus);endrxsig = pulsint(rxsig,'noncoherent');t = unigrid(0,1/hrec.SampleRate,T,'[)');rangegates = (physconst('LightSpeed')*t)/2;plot(rangegates,rxsig); hold on;xlabel('Meters'); ylabel('Power');ylim = get(gca,'YLim');plot([tgtrng,tgtrng],[0 ylim(2)],'r');
Best Answer