Engee documentation
Notebook

Target fluctuation models

An example illustrates the use of target models to describe fluctuations in effective scattering area (ESR). The scenario consists of a scanning monostatic radar and a target with an EPR described by the "Swerling-2" model.

Comparison of type 1 and type 2 fluctuation models

In the type 1 and type 2 target models, the EPR arises from multiple independent small reflectors with approximately equal EPRs. The total EPR may vary with each pulse in a scan (type 2) or be constant throughout a scan consisting of multiple pulses (type 1). In either case, the statistics obey a chi-squared probability density function with two degrees of freedom.

Dwell time and radar scanning

For simplicity, let's start with a rotating radar with a dwell time of 5 seconds, which corresponds to a rotation or scanning speed of 72 degrees/sec.

In [ ]:
Trot = 5.0;
scanrate = 360/Trot;

The radar's main beam width is 3.0 degrees. During the time period when the target is illuminated by the main beam, the radar pulses hit the target and are reflected back to the radar. The period of time during which the target is illuminated is called the scan time. The radar will perform 3 scans of the target.

In [ ]:
HPBW = 3.0; # ширина ДН
Tdwell = HPBW/scanrate; # время 1 круга сканирования
Nscan = 3; # количество сканирований

The number of pulses arriving at the target during the dwell time depends on the pulse repetition rate (PRR). Pulse repetition rate is the inverse of pulse repetition period (PRP). Assume that 5000 pulses are transmitted per second.

In [ ]:
prf = 5000.0; # частота следовния импульсов
pri = 1/prf; # период повторения импульсов

The number of pulses per dwell time is

In [ ]:
Np = floor(Int64,Tdwell*prf) 
print("Количество импульсов: $Np")
Количество импульсов: 208

Setting the fluctuation model type 2

Let's create a target target with a Swerling-2 fluctuation model using the EngeePhased.RadarTarget object. To create a Swerling-2 model, set the Model property of the RadarTarget object to "Swerling1" or "Swerling2". Both options are equivalent. Then, each time the object is accessed, set the updatercs argument to true. This argument means that the radar EPR is updated on every pulse.

Set the target model to 'Swerling2' .

In [ ]:
tgtmodel = "Swerling2"

Setting the radar model using system objects

Let's install the radiating antenna. Assume that the operating frequency of the antenna is 1 GHz.

In [ ]:
fc = 1e9 # несущая частота
antenna = EngeePhased.IsotropicAntennaElement(BackBaffled=true) # объекта антенного элемента приемника
radiator = EngeePhased.Radiator(OperatingFrequency=fc,Sensor=antenna) # излучатель

Specify the location of the stationary antenna and the target

In [ ]:
radarplatform = EngeePhased.Platform(InitialPosition=[0;0;0]) # модель движения радара
targetplatform = EngeePhased.Platform(InitialPosition=[2000;0;0]); # модель движения цели

The transmitted signal is a linear frequency modulated signal. Let's transmit one pulse per object call.

In [ ]:
waveform = EngeePhased.LinearFMWaveform(PulseWidth=50e-6,
    OutputFormat="Pulses",NumPulses=1);

Set up the transmitting amplifier.

In [ ]:
transmitter = EngeePhased.Transmitter(PeakPower=1000.0,Gain=40);

Set the propagation medium as free space.

In [ ]:
channel = EngeePhased.FreeSpace(
    OperatingFrequency=fc,
    TwoWayPropagation=true
);

Specify that the radar target must have a medium RCS=1 м^2 and be a Swerling type 1 or 2 model.

In [ ]:
target = EngeePhased.RadarTarget(
    MeanRCS=1,
    OperatingFrequency=fc,
    Model=tgtmodel
);

Receiving antenna assignment

In [ ]:
collector = EngeePhased.Collector(
    OperatingFrequency=1e9,
    Sensor=antenna
);

Define a matched filter to process the incoming signal.

In [ ]:
wav = waveform(); # вызов прямоугольного генератора
mfilter = EngeePhased.MatchedFilter(
    Coefficients=getMatchedFilter(waveform) # коэффициенты согласованного фильтра
);

Processing cycle for 3 scans of target "Swerling 2"

Stages of the radar system model:

  1. Formation of the radiated signal;
  2. Amplification of the transmitted signal;
  3. Study of the signal in the direction of the target;
  4. Propagation of the EM wave to and from the target;
  5. Reflection of the EM wave from the target;
  6. Receiving an EM wave using a phased antenna array
  7. Realisation of the algorithm of coordinated filtering of the received signal

Memory allocation for radar signal amplitudes.

In [ ]:
z = zeros(Nscan,Np);
tp = zeros(Nscan,Np);

Set updatercs = true for the first scan pulse only.

In [ ]:
for m = 1:Nscan
    t0 = (m-1)*Trot;
    t = t0;
    updatercs = true;
    for k = 1:Np
        t += pri;
        txwav = transmitter(wav);
        
        # Нахождение координат и скоростей цели и радара
        xradar,vradar = radarplatform(t);
        xtgt,vtgt = targetplatform(t);
        
        # Излучение ЭМ-волны по заданному направлению
        _,ang = rangeangle(xtgt,xradar);
        radwav = radiator(txwav,ang);
        
        # Распространение ЭМ-волны от радара до цели
        propwav = channel(radwav,radarplatform.InitialPosition,
            targetplatform.InitialPosition,[0;0;0],[0;0;0]);
        
        # Отражение ЭМ-волны от цели
        reflwav = target(propwav,updatercs);
        
        # Прием ЭМ-волны с помощью приемной антенны
        collwav = collector(reflwav,ang);
        
        # Применение согласованной фильтрации для пришедшего сигнала
        y = mfilter(collwav);
        z[m,k] = maximum(abs.(y));
        tp[m,k] = t;
    end
end

Plot the pulse amplitude graph

Construct a plot of pulse amplitudes for scanning as a function of time.

In [ ]:
Plots.scatter(tp[:],z[:],lab="")
xlabel!("Время,с")
ylabel!("Амплитуда импульса")
Out[0]:

Note that the pulse amplitude varies within a single scan.

Histogram of pulse amplitudes

Let's build a histogram of amplitude distribution of the received signal after processing

In [ ]:
Plots.histogram(z[:].*1e3,lab="")
xlabel!("Амплитуда импульса, мВ")
ylabel!("Количество")
Out[0]:

Conclusion

In the case study, a scenario of radar system operation during detection of 1 target was considered to investigate the target fluctuation model "Swerling-2".