Main Content

radarEmission

Emitted radar signal structure

Since R2021a

Description

The radarEmission class creates a radar emission object. This object contains all the properties that describe a signal radiated by a radar source.

Creation

Description

signal = radarEmission creates a radarEmission object with default properties. The object represents radar signals from emitters, channels, and sensors.

signal = radarEmission(Name,Value) sets object properties specified by one or more Name,Value pair arguments. Name can also be a property name and Value is the corresponding value. Name must appear inside single quotes (''). You can specify several name-value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

example

Properties

expand all

Platform identifier, specified as a positive integer. The emitter is mounted on the platform with this ID. Each platform identifier is unique within a scenario.

Example: 5

Data Types: double

Emitter identifier, specified as a positive integer. Each emitter index is unique.

Example: 2

Data Types: double

Location of the emitter in scenario coordinates, specified as a 1-by-3 real-valued vector. Units are in meters.

Example: [100 -500 1000]

Data Types: double

Velocity of the emitter in scenario coordinates, specified as a 1-by-3 real-valued vector. Units are in meters per second.

Example: [0 -50 100]

Data Types: double

Orientation of the emitter in scenario coordinates, specified as a quaternion or 3-by-3 real-valued orthogonal matrix.

Example: eye(3)

Data Types: double

Field of view of emitter, specified as a 2-by-1 vector of positive real values, [azfov, elfov]. The field of view defines the total angular extent of the signal emitted. The azimuth filed of view azfov must lie in the interval (0,360]. The elevation filed of view elfov must lie in the interval (0,180].

Example: [140;70]

Data Types: double

Effective isotropic radiated power, specified as a scalar. Units are in dB.

Example: 10

Data Types: double

Cumulative radar cross-section, specified as a scalar. Units are in dBsm.

Example: 10

Data Types: double

Center frequency of the signal, specified as a positive scalar. Units are in Hz.

Example: 100e6

Data Types: double

Half-power bandwidth of the radar signal, specified as a positive scalar. Units are in Hz.

Example: 5e3

Data Types: double

Waveform type identifier, specified as a nonnegative integer.

Example: 5e3

Data Types: double

Processing gain associated with the signal waveform, specified as a scalar. Units are in dB.

Example: 10

Data Types: double

Total distance over which the signal has propagated, specified as a nonnegative scalar. For direct-path signals, the range is zero. Units are in meters.

Example: 1000

Data Types: double

Total range rate for the path over which the signal has propagated, specified as a scalar. For direct-path signals, the range rate is zero. Units are in meters per second.

Example: 10

Data Types: double

Examples

collapse all

Create a radarEmission object with specified properties.

signal = radarEmission('PlatformID',10,'EmitterIndex',25, ...
    'OriginPosition',[100,3000,50],'EIRP',10,'CenterFrequency',200e6, ...
    'Bandwidth',10e3)
signal = 
  radarEmission with properties:

              PlatformID: 10
            EmitterIndex: 25
          OriginPosition: [100 3000 50]
          OriginVelocity: [0 0 0]
             Orientation: [1x1 quaternion]
             FieldOfView: [180 180]
         CenterFrequency: 200000000
               Bandwidth: 10000
            WaveformType: 0
          ProcessingGain: 0
        PropagationRange: 0
    PropagationRangeRate: 0
                    EIRP: 10
                     RCS: 0

Create a radar emission and then detect the emission using a radarDataGenerator object.

First, create a radar emission.

orient = quaternion([180 0 0],'eulerd','zyx','frame');
rfSig = radarEmission('PlatformID',1,'EmitterIndex',1,'EIRP',100, ...
    'OriginPosition',[30 0 0],'Orientation',orient);

Then, create an ESM sensor using radarDataGenerator.

sensor = radarDataGenerator(1,'DetectionMode','ESM');

Detect the RF emission.

time = 0;
[dets,numDets,config] = sensor(rfSig,time)
dets = 1x1 cell array
    {1x1 objectDetection}

numDets = 
1
config = struct with fields:
              SensorIndex: 1
              IsValidTime: 1
               IsScanDone: 0
              FieldOfView: [1 5]
              RangeLimits: [0 Inf]
          RangeRateLimits: [0 Inf]
    MeasurementParameters: [1x1 struct]

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2021a