Free space propagation and reflection of radar signals
returns radar signals,radarsigout
= radarChannel(radarsigin
,platforms
)radarsigout
, as combinations of the signals,
radarsigin
, that are reflected from the platforms,
platforms
.
also allows you to specify whether to model occlusion from extended objects.radarsigout
= radarChannel(radarsigin
,platforms
,'HasOcclusion',HasOcclusion
)
Create a radar emission and a platform and reflect the emission from the platform.
Create a radar emission object.
radarSig = radarEmission('PlatformID',1,'EmitterIndex',1,'OriginPosition',[0 0 0]);
Create a platform structure.
platfm = struct('PlatformID',2,'Position',[10 0 0],'Signatures',rcsSignature());
Reflect the emission from the platform.
sigs = radarChannel(radarSig,platfm)
sigs = radarEmission with properties: PlatformID: 1 EmitterIndex: 1 OriginPosition: [0 0 0] OriginVelocity: [0 0 0] Orientation: [1x1 quaternion] FieldOfView: [180 180] CenterFrequency: 300000000 Bandwidth: 3000000 WaveformType: 0 ProcessingGain: 0 PropagationRange: 0 PropagationRangeRate: 0 EIRP: 0 RCS: 0
Reflect a radar emission from a platform defined within a trackingScenario.
Create a tracking scenario object.
scenario = trackingScenario;
Create a radarEmitter
object.
emitter = radarEmitter(1);
Mount the emitter on a platform within the scenario.
plat = platform(scenario,'Emitters',emitter);
Add another platform to reflect the emitted signal.
target = platform(scenario); target.Trajectory.Position = [30 0 0];
Emit the signal using the emit
object function of a platform
.
txsigs = emit(plat,scenario.SimulationTime)
txsigs = 1x1 cell array
{1x1 radarEmission}
Reflect the signal from the platforms in the scenario.
sigs = radarChannel(txsigs,scenario.Platforms)
sigs=2×1 cell array
{1x1 radarEmission}
{1x1 radarEmission}
radarsigin
— Input radar signalsradarEmission
objectsInput radar signals, specified as an array of radarEmission
objects.
platforms
— Reflector platformsPlatform
objects | array of Platform
structuresReflector platforms, specified as a cell array of Platform
objects,
Platform
, or
an array of Platform
structures:
Field | Description |
---|---|
PlatformID | Unique identifier for the platform, specified as a scalar positive integer. This is a required field which has no default value. |
ClassID | User-defined integer used to classify the type of target, specified as a nonnegative integer. Zero is reserved for unclassified platform types and is the default value. |
Position | Position of target in scenario coordinates, specified as a real-valued 1-by-3 vector. This is a required field. There is no default value. Units are in meters. |
Velocity | Velocity of platform in scenario coordinates, specified as a real-valued 1-by-3 vector.
Units are in meters per second. The default is |
Speed | Speed of the platform in the scenario frame specified as a real scalar.
When speed is specified, the platform velocity is aligned with its
orientation. Specify either the platform speed or velocity, but not both.
Units are in meters per second The default is
|
Acceleration | Acceleration of the platform in scenario coordinates specified as a
1-by-3 row vector in meters per second-squared. The default is |
Orientation | Orientation of the platform with respect to the local scenario NED coordinate frame,
specified as a scalar quaternion or a 3-by-3 rotation matrix. Orientation
defines the frame rotation from the local NED coordinate system to the
current platform body coordinate system. Units are dimensionless. The
default is |
AngularVelocity | Angular velocity of platform in scenario coordinates, specified as a real-valued 1-by-3
vector. The magnitude of the vector defines the angular speed. The direction
defines the axis of clockwise rotation. Units are in degrees per second. The
default is |
Signatures | Cell array of signatures defining the visibility of the platform to
emitters and sensors in the scenario. The default is the cell array { |
If you specify an array of platform structures, set a unique
PlatformID
for each platform and set the
Position
field for each platform. Any other fields not specified
are assigned default values.
HasOcclusion
— Enable occlusion from extended objectstrue
| false
Enable occlusion from extended objects, specified as true
or
false
. Set HasOccusion
to
true
to model occlusion from extended objects. Two types of
occlusion (self occlusion and inter object occlusion) are modeled. Self occlusion occurs
when one side of an extended object occludes another side. Inter object occlusion occurs
when one extended object stands in the line of sight of another extended object or a
point target. Note that both extended objects and point targets can be occluded by
extended objects, but a point target cannot occlude another point target or an extended
object.
Set HasOccusion
to false
to disable
occlusion of extended objects. This will also disable the merging of objects whose
detections share a common sensor resolution cell, which gives each object in the
tracking scenario an opportunity to generate a detection.
Data Types: logical
radarsigout
— Reflected radar signalsradarEmission
objectsReflected radar signals, specified as an array of radarEmission
objects.
You have a modified version of this example. Do you want to open this example with your edits?