How can I use the step function for the swerling models with the UPDATERCS?
Mostrar comentarios más antiguos
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);
end
rxsig = 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');
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre Transmitters and Receivers en Centro de ayuda y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!