monostaticRadarSensor

Сгенерируйте радарные обнаружения для отслеживания сценария

Описание

Система monostaticRadarSensor object™ генерирует обнаружения целей моностатическим радаром сканирования наблюдения. Можно использовать объект monostaticRadarSensor в сценарии, содержащем перемещение и стационарные платформы, такие как одно созданное использование trackingScenario. Объект monostaticRadarSensor может моделировать действительные обнаружения с добавленным случайным шумом и также сгенерировать ложные сигнальные обнаружения. Кроме того, можно использовать обнаружения, сгенерированные этим объектом, как введено к средствам отслеживания, таким как trackerGNN или trackerTOMHT.

Этот объект позволяет вам сконфигурировать радар сканирования. Радар сканирования изменяет свой угол взгляда путем продвижения механического и электронного положения луча с шагом углового промежутка, заданного в свойстве FieldOfView. Радар сканирует общую область в азимуте и повышении, заданном радаром механические и электронные пределы сканирования, MechanicalScanLimits и ElectronicScanLimits. Если пределы сканирования для азимута или повышения устанавливаются к [0 0], то никакое сканирование не выполняется по тому измерению для того режима сканирования. Если максимальная механическая частота развертки для азимута или повышения обнуляется, то никакое механическое сканирование не выполняется по тому измерению.

Используя одно-экспоненциальный режим, радар вычисляет область значений и смещения повышения, вызванные распространением через тропосферу. Смещение области значений означает, что измеренные области значений больше, чем область значений угла обзора к цели. Смещение повышения означает, что измеренные повышения выше их истинных повышений. Смещения больше, когда путь угла обзора между радаром и целью проходит через более низкие высоты, потому что атмосфера является более толстой.

Сгенерировать радарные обнаружения:

  1. Создайте объект monostaticRadarSensor и установите его свойства.

  2. Вызовите объект с аргументами, как будто это была функция.

Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.

Создание

Синтаксис

sensor = monostaticRadarSensor
sensor = monostaticRadarSensor(Name,Value)
sensor = monostaticRadarSensor('No scanning')
sensor = monostaticRadarSensor('Raster')
sensor = monostaticRadarSensor('Rotator')
sensor = monostaticRadarSensor('Sector')
sensor = monostaticRadarSensor(SensorIndex,___)

Описание

sensor = monostaticRadarSensor создает радарный объект генератора обнаружения со значениями свойств по умолчанию.

пример

sensor = monostaticRadarSensor(Name,Value) свойства наборов с помощью одной или нескольких пар "имя-значение". Заключите каждое имя свойства в кавычки. Например, monostaticRadarSensor('DetectionCoordinates','Sensor cartesian','MaxRange',200) создает радарный генератор обнаружения, который сообщает об обнаружениях в Декартовой системе координат датчика и имеет максимальную область значений обнаружения 200 метров.

sensor = monostaticRadarSensor('No scanning') синтаксис удобства, который создает monostaticRadarSensor, который только указывает вдоль радарного направления опорного направления антенны. Никакое механическое устройство или электронное сканирование не выполняются. Этот синтаксис устанавливает свойство ScanMode на 'No scanning'.

sensor = monostaticRadarSensor('Raster') синтаксис удобства, который создает объект monostaticRadarSensor, который механически сканирует растровый шаблон. Растровый промежуток составляет 90 ° в азимуте от-45 ° до +45 ° и в повышении от горизонта до на 10 ° выше горизонта. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.

sensor = monostaticRadarSensor('Rotator') синтаксис удобства, который создает объект monostaticRadarSensor, который механически сканирует 360 ° в азимуте путем механического вращения антенны на постоянном уровне. Когда вы устанавливаете HasElevation на true, радарная антенна механически указывает на центр поля зрения повышения. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.

sensor = monostaticRadarSensor('Sector') синтаксис удобства должен создать объект monostaticRadarSensor, который механически сканирует сектор азимута на 90 ° от-45 ° до +45 °. Установка HasElevation к true указывает радарную антенну к центру поля зрения повышения. Можно изменить ScanMode на 'Electronic', чтобы электронно отсканировать тот же сектор азимута. В этом случае антенна механически не наклоняется на электронном сканировании сектора. Вместо этого лучи сложены электронно, чтобы обработать целое повышение, заполненное пределами сканирования на сингле, живут. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.

sensor = monostaticRadarSensor(SensorIndex,___) задает ID датчика, SensorIndex, как входной параметр вместо того, чтобы использовать пару "имя-значение" SensorIndex.

Свойства

развернуть все

Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их, и функция release разблокировала их.

Если свойство является настраиваемым, можно изменить его значение в любое время.

Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).

Уникальный идентификатор датчика, заданный как положительное целое число. Это свойство отличает обнаружения, которые прибывают из различных датчиков в системе мультидатчика. Это свойство должно быть задано, прежде чем можно будет использовать объект.

Типы данных: double

Частота обновления датчика, заданная как положительная скалярная величина. Этот интервал должен быть целочисленным кратным интервал времени симуляции, заданный trackingScenario. Вызовы объектов trackingScenario радарный датчик сканирования в интервалах времени симуляции. Радар генерирует новые обнаружения, с промежутками заданные обратной величиной свойства UpdateRate. Любое обновление, которое требуют к датчику между интервалами обновления, не содержит обнаружений. Модули находятся в герц.

Пример 5

Типы данных: double

Местоположение датчика на платформе, заданной как 1 3 вектор с действительным знаком. Это свойство задает координаты датчика относительно источника платформы. Значение по умолчанию указывает, что источник датчика в начале координат его платформы. Модули исчисляются в метрах.

Пример: [.2 0.1 0]

Типы данных: double

Ориентация датчика относительно платформы, заданной как трехэлементный вектор с действительным знаком. Каждый элемент вектора соответствует внутреннему вращению Угла Эйлера, которое несет оси тела платформы к осям датчика. Эти три элемента задают вращения вокруг z - y - и x - оси, в том порядке. Первое вращение вращает оси платформы вокруг z - ось. Второе вращение вращает несомый кадр вокруг вращаемого y - ось. Итоговое вращение вращает кадр вокруг несомого x - ось. Модули в градусах.

Пример: [10 20 -15]

Типы данных: double

Поля зрения датчика, заданного как 2 1 вектор положительных действительных значений, [azfov; elfov]. Поле зрения задает общую угловую степень, заполненную датчиком. Каждый компонент должен лечь в интервале (0,180]. Цели за пределами поля зрения радара не обнаруживаются. Модули в градусах.

Пример: [14;7]

Типы данных: double

Включите неоднозначности области значений, заданные как false или true. Установите это свойство на true включать неоднозначности области значений датчиком. В этом случае датчик не может разрешить, что неоднозначности области значений для целей в областях значений вне MaxUnambiguousRange перенесены на интервал [0 MaxUnambiguousRange]. Когда false, о целях сообщают в их однозначной области значений.

Типы данных: логический

Максимальная однозначная область значений, заданная как положительная скалярная величина. Максимальная однозначная область значений задает максимальную область значений, для которой радар может однозначно разрешить область значений цели. Когда HasRangeAmbiguities установлен в true, цели, обнаруженные в областях значений вне максимальной однозначной области значений, перенесены на интервал области значений [0,MaxUnambiguousRange]. Это свойство применяется к истинным целевым обнаружениям, когда вы устанавливаете свойство HasRangeAmbiguities на true.

Это свойство также применяется к ложным целевым обнаружениям, когда вы устанавливаете свойство HasFalseAlarms на true. В этом случае свойство задает максимальную область значений для ложных предупреждений.

Модули исчисляются в метрах.

Пример: 5e3

Зависимости

Чтобы включить это свойство, установите свойство HasRangeAmbiguities на true или установите свойство HasFalseAlarms на true.

Типы данных: double

Включите неоднозначности уровня области значений, заданные как false или true. Установите на true, чтобы включить неоднозначности уровня области значений датчиком. Когда true, датчик не разрешает неоднозначности уровня области значений, и уровни целевого диапазона вне MaxUnambiguousRadialSpeed перенесены на интервал [0,MaxUnambiguousRadialSpeed]. Когда false, о целях сообщают на их однозначном уровне области значений.

Зависимости

Чтобы включить это свойство, установите свойство HasRangeRate на true.

Типы данных: логический

Максимальная однозначная радиальная скорость, заданная как положительная скалярная величина. Радиальная скорость является значением уровня целевого диапазона. Максимальная однозначная радиальная скорость задает радиальную скорость, для которой радар может однозначно разрешить уровень области значений цели. Когда HasRangeRateAmbiguities установлен в true, цели, обнаруженные на уровнях области значений вне максимальной однозначной радиальной скорости, перенесены на интервал уровня области значений [-MaxUnambiguousRadialSpeed, MaxUnambiguousRadialSpeed]. Это свойство применяется к истинным целевым обнаружениям, когда вы устанавливаете свойство HasRangeRateAmbiguities на true.

Это свойство также применяется к ложным целевым обнаружениям, полученным, когда вы устанавливаете обоих свойства HasRangeRate и HasFalseAlarms на true. В этом случае свойство задает максимальную радиальную скорость, для которой могут быть сгенерированы ложные предупреждения.

Модули исчисляются в метрах в секунду.

Зависимости

Чтобы включить это свойство, установите HasRangeRate и HasRangeRateAmbiguities к true и/или установите HasRangeRate и HasFalseAlarms к true.

Типы данных: double

Режим сканирования радара, заданного как 'Mechanical', 'Electronic', 'Mechanical and electronic' или 'No scanning'.

Режимы сканирования

ScanModeЦель
'Mechanical'Радар сканирует механически через азимут и пределы повышения, заданные свойством MechanicalScanLimits. Шаг направления сканирования радарным углом поля зрения между живет.
'Electronic'Радар сканирует электронно через азимут и пределы повышения, заданные свойством ElectronicScanLimits. Шаг направления сканирования радарным углом поля зрения между живет.
'Mechanical and electronic'Радар механически сканирует опорное направление антенны через механические пределы сканирования и электронно сканирует лучи относительно опорного направления антенны через электронные пределы сканирования. Общее поле отношения, отсканированного в этом режиме, является комбинацией механических и электронных пределов сканирования. Шаг направления сканирования радарным углом поля зрения между живет.
'No scanning'Радарный луч указывает вдоль опорного направления антенны, заданного свойством MountingAngles.

Пример: 'No scanning'

Максимальная механическая частота развертки, заданная как неотрицательный скаляр или с действительным знаком 2 1 вектор с неотрицательными записями.

Когда HasElevation будет true, задайте частоту развертки как 2 1 вектор-столбец неотрицательных записей [maxAzRate; maxElRate]. maxAzRate является максимальной частотой развертки в азимуте, и maxElRate является максимальной частотой развертки в повышении.

Когда HasElevation будет false, задайте частоту развертки как неотрицательный скаляр, представляющий максимальную механическую частоту развертки азимута.

Частоты развертки устанавливают максимальный уровень, на котором радар может механически отсканировать. Радар устанавливает свою частоту развертки продвигаться радарный угол механического устройства полем отношения. Если необходимая частота развертки превышает максимальную частоту развертки, максимальная частота развертки используется. Модули являются степенями в секунду.

Пример: [5;10]

Зависимости

Чтобы включить это свойство, установите свойство ScanMode на 'Mechanical' или 'Mechanical and electronic'.

Типы данных: double

Угловые пределы механических направлений сканирования радара, заданного как с действительным знаком 1 2 вектор - строка или матрица 2 на 2 с действительным знаком. Механические пределы сканирования задают минимальные и максимальные механические углы, которые радар может отсканировать от его смонтированной ориентации.

Когда HasElevation является true, пределы сканирования принимают форму [minAz maxAz; minEl maxEl]. minAz и maxAz представляют минимальные и максимальные пределы углового сканирования азимута. minEl и maxEl представляют минимальные и максимальные пределы углового сканирования повышения. Когда HasElevation является false, пределы сканирования принимают форму [minAz maxAz]. Если вы задаете пределы сканирования как матрицу 2 на 2, но устанавливаете HasElevation на false, вторая строка матрицы проигнорирована.

Азимутальные пределы сканирования не могут охватить больше чем 360 °, и пределы сканирования повышения должны лечь в закрытом интервале [-90 ° 90 °]. Модули в градусах.

Пример: [-90 90;0 85]

Зависимости

Чтобы включить это свойство, установите свойство ScanMode на 'Mechanical' or 'Mechanical and electronic'.

Типы данных: double

Это свойство доступно только для чтения.

Текущий механический угол сканирования радара, возвращенного как скаляр или с действительным знаком 2 1 вектор. Когда HasElevation является true, угол сканирования принимает форму [Азимут; El]. Az и El представляют азимут и углы сканирования повышения, соответственно, относительно смонтированного угла радара на платформе. Когда HasElevation является false, угол сканирования является скаляром, представляющим угол сканирования азимута.

Зависимости

Чтобы включить это свойство, установите свойство ScanMode на 'Mechanical' или 'Mechanical and electronic'.

Типы данных: double

Угловые пределы электронных направлений сканирования радара, заданного как с действительным знаком 1 2 вектор - строка или матрица 2 на 2 с действительным знаком. Электронные пределы сканирования задают минимальные и максимальные электронные углы, которые радар может отсканировать от его текущего механического направления.

Когда HasElevation является true, пределы сканирования принимают форму [minAz maxAz; minEl maxEl]. minAz и maxAz представляют минимальные и максимальные пределы углового сканирования азимута. minEl и maxEl представляют минимальные и максимальные пределы углового сканирования повышения. Когда HasElevation является false, пределы сканирования принимают форму [minAz maxAz]. Если вы задаете пределы сканирования как матрицу 2 на 2, но устанавливаете HasElevation на false, вторая строка матрицы проигнорирована.

Азимутальные пределы сканирования и пределы сканирования повышения должны лечь в закрытом интервале [-90 ° 90 °]. Модули в градусах.

Пример: [-90 90;0 85]

Зависимости

Чтобы включить это свойство, установите свойство ScanMode на 'Electronic' или 'Mechanical and electronic'.

Типы данных: double

Это свойство доступно только для чтения.

Текущий электронный угол сканирования радара, возвращенного как скаляр или 1 2 вектор-столбец. Когда HasElevation является true, угол сканирования принимает форму [Азимут; El]. Az и El представляют азимут и углы сканирования повышения, соответственно. Когда HasElevation является false, угол сканирования является скаляром, представляющим угол сканирования азимута.

Зависимости

Чтобы включить это свойство, установите свойство ScanMode на 'Electronic' or 'Mechanical and electronic'.

Типы данных: double

Это свойство доступно только для чтения.

Посмотрите угол датчика, заданного как скаляр или с действительным знаком 2 1 вектор. Посмотрите угол является комбинацией механического угла и электронного угла в зависимости от свойства ScanMode.

ScanModeLookAngle
'Mechanical'MechnicalAngle
'Electronic'ElectronicAngle
'Mechanical and Electronic'MechnicalAngle + ElectronicAngle
'No scanning'0

Когда HasElevation является true, угол взгляда принимает форму [Азимут; El]. Az и El представляют азимут и углы взгляда повышения, соответственно. Когда HasElevation является false, угол взгляда является скаляром, представляющим угол взгляда азимута.

Вероятность обнаружения цели, заданной как положительная скалярная величина, меньше чем или равная одной. Это количество задает вероятность обнаружения цели с радарным поперечным сечением, ReferenceRCS, в ссылочной области значений обнаружения, ReferenceRange.

Пример: 0.95

Типы данных: double

Ложный сигнальный уровень отчета в каждой радарной ячейке разрешения, заданной как положительная скалярная величина в области значений [10 –7,10–3]. Модули являются безразмерными. Ячейки разрешения определяются из свойств AzimuthResolution и RangeResolution и свойств ElevationResolution и RangeRateResolution, когда им включают.

Пример: 1e-5

Типы данных: double

Диапазон ссылки для данной вероятности обнаружения и данного ссылочного радарного поперечного сечения (RCS), заданного как положительная скалярная величина. Диапазон ссылки является областью значений, в которой цель, задающая радарное поперечное сечение ReferenceRCS, обнаруживается с вероятностью обнаружения, заданного DetectionProbability. Модули исчисляются в метрах.

Пример: 25e3

Типы данных: double

Ссылочное радарное поперечное сечение (RCS) для, учитывая вероятность обнаружения и диапазона ссылки, заданного как скаляр. Ссылочный RCS является значением RCS, в котором цель обнаруживается с вероятностью, заданной DetectionProbability в ReferenceRange. Модули находятся в dBsm.

Пример: -10

Типы данных: double

Это свойство доступно только для чтения.

Радарное усиление цикла, возвращенное как скаляр. RadarLoopGain зависит от значений DetectionProbability, ReferenceRange, ReferenceRCS и свойств FalseAlarmRate. Радарное усиление цикла является функцией отношения сигнал-шум, о котором сообщают, радара, SNR, целевого радарного поперечного сечения, RCS, и целевого диапазона, R. Функция

SNR = RadarLoopGain + RCS - 40log10 (R)(1)
где SNR и RCS находятся в дБ и dBsm, соответственно, и область значений исчисляется в метрах. Радарное усиление цикла находится в дБ.

Типы данных: double

Позвольте радару измерить целевые углы повышения и отсканировать в повышении, заданном как false или true. Установите это свойство на true моделировать радарный датчик, который может оценить целевое повышение и сканирование в повышении.

Типы данных: логический

Позвольте радару измерить уровни целевого диапазона, заданные как false или true. Установите это свойство на true моделировать радарный датчик, который может измерить уровень целевого диапазона. Установите это свойство на false моделировать радарный датчик, который не может измерить уровень области значений.

Типы данных: логический

Разрешение азимута радара, заданного как положительная скалярная величина. Разрешение азимута задает минимальное разделение в углу азимута, под которым радар может отличить две цели. Разрешение азимута обычно - 3 дБ downpoint угловой ширины луча азимута радара. Модули в градусах.

Типы данных: double

Разрешение повышения радара, заданного как положительная скалярная величина. Разрешение повышения задает минимальное разделение в углу повышения, под которым радар может отличить две цели. Разрешение повышения обычно является 3dB-downpoint в угловой ширине луча повышения радара. Модули в градусах.

Зависимости

Чтобы включить это свойство, установите свойство HasElevation на true.

Типы данных: double

Разрешение области значений радара, заданного как положительная скалярная величина. Разрешение области значений задает минимальное разделение в области значений, в которой радар может различать две цели. Модули исчисляются в метрах.

Типы данных: double

Разрешение уровня области значений радара, заданного как положительная скалярная величина. Разрешение уровня области значений задает минимальное разделение в уровне области значений, на котором радар может различать две цели. Модули исчисляются в метрах в секунду.

Зависимости

Чтобы включить это свойство, установите свойство HasRangeRate на true.

Типы данных: double

Часть смещения азимута радара, заданного как неотрицательный скаляр. Смещение азимута выражается как часть разрешения азимута, заданного в AzimuthResolution. Это наборы значений нижняя граница на азимутальной точности радара. Это значение является безразмерным.

Типы данных: double

Часть смещения повышения радара, заданного как неотрицательный скаляр. Смещение повышения выражается как часть разрешения повышения, заданного значением свойства ElevationResolution. Это наборы значений нижняя граница на точности повышения радара. Это значение является безразмерным.

Зависимости

Чтобы включить это свойство, установите свойство HasElevation на true.

Типы данных: double

Часть смещения области значений радара, заданного как неотрицательный скаляр. Смещение области значений выражается как часть разрешения области значений, заданного в RangeResolution. Это наборы свойств нижняя граница на точности области значений радара. Это значение является безразмерным.

Типы данных: double

Уровень области значений смещает часть радара, заданного как неотрицательный скаляр. Смещение уровня области значений выражается как часть разрешения уровня области значений, заданного в RangeRateResolution. Это наборы свойств нижняя граница на точности уровня области значений радара. Это значение является безразмерным.

Зависимости

Чтобы включить это свойство, установите свойство HasRangeRate на true.

Типы данных: double

Включите дополнительный входной параметр, который передает текущую оценку положения платформы датчика к датчику, заданному как false или true. Когда true, информация о положении добавляется к структуре MeasurementParameters обнаружений, о которых сообщают. Позируйте информация позволяет алгоритмам отслеживания и сплава оценить состояние целевых обнаружений на северо-востоке вниз (NED) кадр.

Типы данных: логический

Включите сложение шума к радарным измерениям датчика, заданным как true или false. Установите это свойство на true добавлять шум в радарные измерения. В противном случае измерения не имеют никакого шума. Даже если вы устанавливаете HasNoise на false, объект все еще вычисляет свойство MeasurementNoise каждого обнаружения.

Типы данных: логический

Позвольте создать ложные сигнальные радарные измерения, заданные как true или false. Установите это свойство на true сообщать о ложных предупреждениях. В противном случае только о фактических обнаружениях сообщают.

Типы данных: логический

Включите поглощение газов из расширенных объектов, заданных как true или false. Установите это свойство на true к образцовому поглощению газов от расширенных объектов. Моделируются два типа поглощения газов (сам поглощение газов и предают объектное поглощение газов земле). Сам поглощение газов происходит, когда одна сторона расширенного объекта закрывает другую сторону. Поглощение газов объекта Inter происходит, когда один расширенный объект стоит в углу обзора другого расширенного объекта или цели точки. Обратите внимание на то, что оба расширенных объекта и цели точки могут быть закрыты расширенными объектами, но цель точки не может закрыть другую цель точки или расширенный объект.

Установите это свойство на false отключать поглощение газов расширенных объектов. Это также отключит слияние объектов, обнаружения которых совместно используют общую ячейку разрешения датчика, которая дает каждый объект в сценарии отслеживания возможность сгенерировать обнаружение.

Типы данных: логический

Источник максимального количества обнаружений, о которых сообщает датчик, заданный как 'Auto' или 'Property'. Когда это свойство установлено в 'Auto', датчик сообщает обо всех обнаружениях. Когда это свойство установлено в 'Property', отчеты датчика до количества обнаружений, заданных свойством MaxNumDetections.

Типы данных: char

О максимальном количестве обнаружений сообщает датчик, заданный как положительное целое число. Об обнаружениях сообщают в порядке расстояния до датчика, пока максимальное количество не достигнуто.

Зависимости

Чтобы включить это свойство, установите свойство MaxNumDetectionsSource на 'Property'.

Типы данных: double

Система координат обнаружений, о которых сообщают, заданных как:

  • 'Scenario' — Об обнаружениях сообщают в прямоугольном кадре координаты сценария. Система координат сценария задана как локальный кадр NED во время начала симуляции. Чтобы включить это значение, установите свойство HasINS на true.

  • 'Body' — Об обнаружениях сообщают в прямоугольной системе тела платформы датчика.

  • 'Sensor rectangular' — Об обнаружениях сообщают в радарном датчике прямоугольная система координат тела.

  • 'Sensor spherical' — Об обнаружениях сообщают в сферической системе координат, выведенной от датчика прямоугольная система координат тела. Эта система координат сосредоточена в радарном датчике и выровнена с ориентацией радара на платформе.

Пример: 'Sensor spherical'

Типы данных: char

Включите вход радиочастотной помехи, заданный как false или true. Когда true, можно добавить радиочастотную помеху с помощью входного параметра объекта.

Типы данных: логический

Радарная пропускная способность формы волны, заданная как положительная скалярная величина. Модули находятся в герц.

Пример: 100e3

Типы данных: double

Центральная частота радарной полосы, заданной как положительная скалярная величина. Модули находятся в герц.

Пример: 100e6

Типы данных: double

Минимальная операционная чувствительность получателя, заданного как скаляр. Чувствительность включает изотропное усиление получателя антенны. Модули находятся в dBmi.

Пример: -10

Типы данных: double

Использование

Синтаксис

dets = sensor(targets,simTime)
dets = sensor(targets,ins,simTime)
dets = sensor(targets,interference,simTime)
[dets,numDets,config] = sensor(___)

Описание

dets = sensor(targets,simTime) создает радарные обнаружения, dets, от измерений датчика, проведенных targets в текущем времени симуляции, simTime. Датчик может сгенерировать обнаружения для нескольких целей одновременно.

dets = sensor(targets,ins,simTime) также указывает оцененную по INS информацию положения, ins, для платформы датчика. Информация о INS используется путем отслеживания и алгоритмы сплава, чтобы оценить целевые положения в кадре NED.

Чтобы включить этот синтаксис, установите свойство HasINS на true.

dets = sensor(targets,interference,simTime) также задает интерференционный сигнал, interference.

Чтобы включить этот синтаксис, установите свойство HasInterference на true.

[dets,numDets,config] = sensor(___) также возвращает количество допустимых обнаружений, о которых сообщают, numDets и настройка датчика, config, в текущем времени симуляции. Можно использовать эти выходные аргументы с любым из предыдущих входных синтаксисов.

Входные параметры

развернуть все

Отслеживание сценария предназначается для положений, заданных как структура или массив структур. Каждая структура соответствует цели. Можно сгенерировать эту структуру с помощью метода targetPoses платформы. Можно также создать такую структуру вручную. Таблица показывает обязательные поля структуры:

Поле Описание
PlatformID

Уникальный идентификатор для платформы, заданной как скалярное положительное целое число. Это - обязательное поле без значения по умолчанию.

ClassID

Пользовательское целое число раньше классифицировало тип цели, заданной как неотрицательное целое число. Нуль резервируется для несекретных типов платформы и является значением по умолчанию.

Position

Положение цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Это - обязательное поле без значения по умолчанию. Модули исчисляются в метрах.

Velocity

Скорость цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Модули исчисляются в метрах в секунду. Значением по умолчанию является [0 0 0].

Acceleration

Ускорение цели в координатах платформы, заданных как 1 3 вектор - строка. Модули исчисляются в метрах на второй в квадрате. Значением по умолчанию является [0 0 0].

Orientation

Ориентация цели относительно координат платформы, заданных как скалярный кватернион или 3х3 матрица вращения. Ориентация задает вращение кадра от системы координат платформы до текущей целевой системы координат тела. Модули являются безразмерными. Значением по умолчанию является quaternion(1,0,0,0).

AngularVelocity

Угловая скорость цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Значение вектора задает угловую скорость. Направление задает ось по часовой стрелке вращения. Модули в градусах в секунду. Значением по умолчанию является [0 0 0].

Значения Position, Velocity и полей Orientation заданы относительно системы координат платформы.

Текущее время симуляции, заданное как положительная скалярная величина. Вызовы объектов trackingScenario радарный датчик сканирования в интервалах постоянного времени. Радарный датчик генерирует новые обнаружения, с промежутками заданные свойством UpdateInterval. Значение свойства UpdateInterval должно быть целочисленным кратным интервал времени симуляции. Обновления, которые требуют от датчика между интервалами обновления, не содержат обнаружений. Модули находятся в секундах.

Типы данных: double

Информацией о положении платформы от инерционной системы навигации (INS) является структура, которая имеет эти поля:

Поле Определение
Position

Положение GPS-приемника в локальной системе координат NED, заданной как с действительным знаком 1 3 вектор. Модули исчисляются в метрах.

Velocity

Скорость GPS-приемника в локальной системе координат NED, заданной как с действительным знаком 1 3 вектор. Модули исчисляются в метрах в секунду.

Orientation

Ориентация INS относительно локальной системы координат NED, заданной как скалярный кватернион или 3х3 ортонормированная матрица вращения кадра с действительным знаком. Задает вращение кадра от локальной системы координат NED до текущей системы координат тела INS. Это также упоминается как "родительский элемент к дочернему" вращению.

Зависимости

Чтобы включить этот аргумент, установите свойство HasINS на true.

Типы данных: struct

Вмешательство или затор сигнала, заданного как массив объектов radarEmission.

Зависимости

Чтобы включить этот аргумент, установите свойство HasInterference на true.

Типы данных: double
Поддержка комплексного числа: Да

Выходные аргументы

развернуть все

Обнаружения датчика, возвращенные как массив ячеек объектов objectDetection. Для представления высокого уровня обнаружений объектов смотрите объекты objectDetection. Каждый объект имеет эти свойства, но содержимое свойств зависит от определенного датчика. Для monostaticRadarSensor смотрите Обнаружения объектов.

СвойствоОпределение
TimeВремя измерения
MeasurementОбъектные измерения
MeasurementNoiseКовариационная матрица шума измерения
SensorIndexУникальный идентификатор датчика
ObjectClassIDПредметная классификация
MeasurementParametersПараметры используются функциями инициализации нелинейного Кальмана, отслеживающего фильтры
ObjectAttributesДополнительная информация передала средству отслеживания

Поскольку о Measurement и MeasurementNoise сообщают в системе координат, заданной свойством DetectionCoordinates.

Количество обнаружений, о которых сообщают, возвратилось как неотрицательное целое число.

  • Когда свойство MaxNumDetectionsSource установлено в 'Auto', numDets установлен в длину dets.

  • Когда свойство MaxNumDetectionsSource установлено в 'Property', dets является массивом ячеек с длиной, определенной свойством MaxNumDetections. Максимальным количеством возвращенных обнаружений является MaxNumDetections. Если количество обнаружений - меньше, чем MaxNumDetections, первые элементы numDets dets содержат допустимые обнаружения. Остающиеся элементы dets установлены в значение по умолчанию.

Типы данных: double

Настройка датчика тока, заданная как структура. Этот вывод может использоваться, чтобы определить, какие объекты находятся в пределах радарного луча во время объектного выполнения.

Поле Описание
SensorIndex

Уникальный индекс датчика

IsValidTime

Допустимое время обнаружения, возвращенное как 0 или 1. IsValidTime является 0, когда обновления обнаружения время от времени требуют, которые являются между интервалами обновления, заданными UpdateInterval.

IsScanDone

IsScanDone является true, когда датчик завершил сканирование.

FieldOfView

Поле зрения датчика определяет, какие объекты находятся в пределах луча датчика во время объектного выполнения. Поле зрения задано как 2 1 вектор положительных действительных значений, [azfov; elfov].

MeasurementParameters

MeasurementParameters является массивом структур, содержащих координатный кадр, преобразовывает, должен был преобразовать положения и скорости в кадре верхнего уровня к кадру датчика тока.

Типы данных: struct

Функции объекта

Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj, используйте этот синтаксис:

release(obj)

развернуть все

stepЗапустите алгоритм Системного объекта
releaseВысвободите средства и позвольте изменения в значениях свойств Системного объекта и введите характеристики
resetСбросьте внутренние состояния Системного объекта

Примеры

развернуть все

Моделируйте радарный сценарий.

sc = trackingScenario('UpdateRate',1);

Создайте контрольно-диспетчерский пункт аэропорта с расположенными 15 метрами радара наблюдения над землей. Радар вращается на уровне 12,5 об/мин, и его поле зрения в азимуте является 5 градусами, и его поле зрения в повышении является 10 градусами.

rpm = 12.5;
fov = [5;10]; % [azimuth; elevation]
scanrate = rpm*360/60;
updaterate = scanrate/fov(1) % Hz

radar = monostaticRadarSensor(1,'Rotator', ...
    'UpdateRate',updaterate, ...
    'MountingLocation',[0 0 -15], ...
    'MaxMechanicalScanRate',scanrate, ...
    'FieldOfView',fov, ...
    'AzimuthResolution',fov(1));
towermotion = kinematicTrajectory('SampleRate',1,'Position',[0 0 0],'Velocity',[0 0 0]);
tower = platform(sc,'ClassID',1,'Trajectory',towermotion);
aircraft1motion = kinematicTrajectory('SampleRate',1,'Position',[10000 0 1000],'Velocity',[-100 0 0]);
aircraft1 = platform(sc,'ClassID',2,'Trajectory',aircraft1motion);
aircraft2motion = kinematicTrajectory('SampleRate',1,'Position',[5000 5000 200],'Velocity',[100 100 0]);
aircraft2 = platform(sc,'ClassID',2,'Trajectory',aircraft2motion);
updaterate =

    15

Выполните 5 сканирований.

detBuffer = {};
scanCount = 0;
while advance(sc)
    simTime = sc.SimulationTime;
    targets = targetPoses(tower);
    [dets,numDets,config] = radar(targets,simTime);
    detBuffer = [detBuffer;dets];
    if config.IsScanDone
            scanCount = scanCount + 1;
            if scanCount == 5;
                break;
            end
    end
end

Постройте обнаружения

tp = theaterPlot;
clrs = lines(3);
rp = platformPlotter(tp,'DisplayName','Radar','Marker','s',...
    'MarkerFaceColor',clrs(1,:));
pp = platformPlotter(tp,'DisplayName','Truth',...
    'MarkerFaceColor',clrs(2,:));
dp = detectionPlotter(tp,'DisplayName','Detections',...
    'MarkerFaceColor',clrs(3,:));
plotPlatform(rp,[0 0 0])
plotPlatform(pp,[targets(1).Position; targets(2).Position])
if ~isempty(detBuffer)
    detPos = cellfun(@(d)d.Measurement(1:3),detBuffer,...
        'UniformOutput',false);
    detPos = cell2mat(detPos')';
    plotDetection(dp,detPos)
end

Больше о

развернуть все

Расширенные возможности

Смотрите также

Классы

Функции

Системные объекты

Введенный в R2018b

Для просмотра документации необходимо авторизоваться на сайте