Main Content

sonarEmission

Emitted sonar signal structure

Description

ThesonarEmissionclass creates a sonar emission object. This object contains all the properties that describe a signal radiated by a sonar source.

Creation

Description

signal= sonarEmissioncreates asonarEmissionobject with default properties. The object represents sonar signals from emitters, channels, and sensors.

example

signal= sonarEmission(Name,Value)sets object properties specified by one or moreName,Valuepair arguments.Namecan also be a property name andValueis the corresponding value.Namemust appear inside single quotes (''). You can specify several name-value pair arguments in any order asName1,Value1,...,NameN,ValueN.

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

Cumulative source level of an emitted signal, specified as a scalar. The cumulative source level of the emitted signal in decibels is relative to the intensity of a sound wave having an rms pressure of 1 micro-pascal. Units are in dB // 1 micro-pascal.

Example:10

Data Types:double

Cumulative target strength of the source platform emitting the signal, specified as a scalar. Units are in dB.

Example:10

Data Types:double

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

Example:10.5e3

Data Types:double

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

Example:1e3

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

全部折叠

创建一个sonarEmissionobject with specified properties.

signal = sonarEmission('PlatformID',6,'EmitterIndex',2,...'OriginPosition',[100,3000,50],'TargetStrength',20,...'CenterFrequency',20e3,'Bandwidth', 500.0)
signal = sonarEmission with properties: PlatformID: 6 EmitterIndex: 2 OriginPosition: [100 3000 50] OriginVelocity: [0 0 0] Orientation: [1x1 quaternion] FieldOfView: [180 180] CenterFrequency: 20000 Bandwidth: 500 WaveformType: 0 ProcessingGain: 0 PropagationRange: 0 PropagationRangeRate: 0 SourceLevel: 0 TargetStrength: 20

创建一个sonar emission and then detect the emission using asonarSensorobject.

First, create a sonar emission.

orient = quaternion([180 0 0],'eulerd','zyx','frame');sonarSig = sonarEmission('PlatformID',1,'EmitterIndex',1,...'OriginPosition',[30 0 0],'Orientation',orient,...'SourceLevel',140,'TargetStrength',100);

Then create a passive sonar sensor.

sensor = sonarSensor(1,'No scanning');

Detect the sonar emission.

time = 0; [dets, numDets, config] = sensor(sonarSig,time)
dets =1x1 cell array{1x1 objectDetection}
numDets = 1
config =struct with fields:SensorIndex: 1 IsValidTime: 1 IsScanDone: 1 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™.

中on History

Introduced in R2018b