Сгенерируйте инфракрасные обнаружения для отслеживания сценария
irSensor
Система object™ создает статистическую модель для генерации обнаружений с помощью инфракрасных датчиков. Можно использовать irSensor
объект в сценарии, что перемещение моделей и стационарные платформы с помощью trackingScenario
. Датчик может симулировать действительные обнаружения с добавленным случайным шумом и также сгенерировать ложные сигнальные обнаружения. Кроме того, можно использовать этот объект создать вход к средствам отслеживания, таким как trackerGNN
, trackerJPDA
или trackerTOMHT
.
Этот объект позволяет вам сконфигурировать механически датчик сканирования. Инфракрасное излучение, сканируя датчик изменяет угол взгляда между обновлениями путем продвижения механического положения луча с шагом углового промежутка, заданного в FieldOfView
свойство. Инфракрасный датчик сканирует общую область в азимуте и вертикальном изменении, заданном MechanicalScanLimits
свойство. Если пределы сканирования для азимута или вертикального изменения устанавливаются к [0 0]
, никакое сканирование не выполняется по тому измерению для того режима сканирования. Кроме того, если максимальная частота развертки для азимута или вертикального изменения обнуляется, никакое сканирование не выполняется по тому измерению.
Сгенерировать инфракрасные обнаружения:
Создайте irSensor
объект и набор его свойства.
Вызовите объект с аргументами, как будто это была функция.
Чтобы узнать больше, как Системные объекты работают, смотрите то, Что Системные объекты? MATLAB.
создает инфракрасный объект генератора обнаружения с заданным индексом датчика, sensor
= irSensor(SensorIndex
)SensorIndex
, и значения свойств по умолчанию.
синтаксис удобства, который создает sensor
= irSensor(SensorIndex
,'No scanning')irSensor
это смотрит вдоль направления опорного направления датчика. Никакое механическое сканирование не выполняется. Этот синтаксис устанавливает ScanMode
свойство к 'No scanning'
.
синтаксис удобства, который создает sensor
= irSensor(SensorIndex
,'Raster')irSensor
возразите, что механически сканирует растровый шаблон. Растровый промежуток составляет 90 ° в азимуте от-45 ° до +45 ° и в вертикальном изменении от горизонта до на 10 ° выше горизонта. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.
синтаксис удобства, который создает sensor
= irSensor(SensorIndex
,'Rotator')irSensor
возразите, что механически сканирует 360 ° в азимуте путем электронного вращения датчика на постоянном уровне. Когда вы устанавливаете HasElevation
к true
, инфракрасный датчик механически указывает на центр поля зрения вертикального изменения. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.
синтаксис удобства должен создать sensor
= irSensor(SensorIndex
,'Sector')irSensor
возразите, что механически сканирует сектор азимута на 90 ° от-45 ° до +45 °. Установка HasElevation
к true
, указывает инфракрасный датчик к центру поля зрения вертикального изменения. Лучи сложены механически, чтобы обработать целое вертикальное изменение, заполненное пределами сканирования на сингле, живут. Смотрите Синтаксисы Удобства для свойств, установленных этим синтаксисом.
свойства наборов с помощью одной или нескольких пар "имя-значение" после всех других входных параметров. Заключите каждое имя свойства в кавычки. Например, sensor
= irSensor(___,Name,Value
)irSensor(1,'UpdateRate',1,'CutoffFrequency',20e3)
создает инфракрасный датчик, который сообщает об обнаружениях в частоте обновления 1 Гц и частоте среза 20 кГц. Если вы задаете индекс датчика с помощью SensorIndex
свойство, можно не использовать SensorIndex
входной параметр.
Если в противном случае не обозначено, свойства являются ненастраиваемыми, что означает, что вы не можете изменить их значения после вызова объекта. Объекты блокируют, когда вы вызываете их и release
функция разблокировала их.
Если свойство является настраиваемым, можно изменить его значение в любое время.
Для получения дополнительной информации об изменении значений свойств смотрите Разработку системы в MATLAB Используя Системные объекты (MATLAB).
SensorIndex
— Уникальный идентификатор датчикаУникальный идентификатор датчика, заданный как положительное целое число. Это свойство отличает обнаружения, которые прибывают из различных датчиков в системе мультидатчика. При создании irSensor
системный объект, необходимо или задать SensorIndex
как первый входной параметр в синтаксисе создания, или задают его как значение для SensorIndex
свойство в синтаксисе создания.
Пример 2
Типы данных: double
UpdateRate
— Частота обновления датчика
(значение по умолчанию) | положительная скалярная величинаЧастота обновления датчика, заданная как положительная скалярная величина. Этот интервал должен быть целочисленным кратным интервал времени симуляции, заданный trackingScenario
. trackingScenario
вызовы объектов инфракрасный датчик в интервалах времени симуляции. Датчик генерирует новые обнаружения, с промежутками заданные обратной величиной UpdateRate
свойство. Любое обновление, которое требуют к датчику между интервалами обновления, не содержит обнаружений. Модули находятся в герц.
Пример 5
Типы данных: double
ScanMode
— Режим сканирования инфракрасного датчика'Mechanical'
(значение по умолчанию) | 'No scanning'
Режим сканирования инфракрасного датчика, заданного как 'Mechanical'
или 'No scanning'
. Когда установлено в 'Mechanical'
, датчик сканирует механически через азимут и пределы вертикального изменения, заданные MechanicalScanLimits
свойство. Шаг положений сканирования полем зрения датчика между живет. Когда установлено в 'No scanning'
, никакое сканирование не выполняется датчиком.
Пример: 'No scanning'
Типы данных: char
MountingLocation
— Местоположение датчика на платформе
(значение по умолчанию) | 1 3 вектор с действительным знакомМестоположение датчика на платформе, заданной как 1 3 вектор с действительным знаком. Это свойство задает координаты датчика относительно источника платформы. Значение по умолчанию указывает, что источник датчика в начале координат его платформы. Модули исчисляются в метрах.
Пример: [.2 0.1 0]
Типы данных: double
MountingAngles
— Ориентация датчика
(значение по умолчанию) | вектор с действительным знаком с 3 элементамиОриентация датчика относительно платформы, заданной как трехэлементный вектор с действительным знаком. Каждый элемент вектора соответствует внутреннему вращению Угла Эйлера, которое несет оси тела платформы к осям датчика. Эти три элемента описывают вращения вокруг z - y - и x - оси последовательно. Модули в градусах.
Пример: [10 20 -15]
Типы данных: double
FieldOfView
— Поля зрения датчика
| с действительным знаком 2 1 вектор положительных действительных значенийПоля зрения датчика, заданного как 2 1 вектор положительных действительных значений, [azfov; elfov]. Поле зрения задает общую угловую степень, заполненную датчиком. Каждый компонент должен лечь в интервале (0,180]. Цели за пределами поля зрения датчика не будут обнаружены. Модули в градусах.
Пример: [14;70]
Типы данных: double
MaxMechanicalScanRate
— Максимальная механическая частота развертки
(значение по умолчанию) | неотрицательный скаляр | с действительным знаком 2 1 вектор с неотрицательными записямиМаксимальная механическая частота развертки, заданная как неотрицательный скаляр или с действительным знаком 2 1 вектор с неотрицательными записями.
Когда HasElevation является true
, задайте частоту развертки как 2 1 вектор-столбец неотрицательных записей [maxAzRate; maxElRate]. maxAzRate является максимальной частотой развертки в азимуте, и maxElRate является максимальной частотой развертки в вертикальном изменении.
Когда HasElevation
false
, задайте частоту развертки как неотрицательный скаляр, представляющий максимальную механическую частоту развертки азимута.
Частоты развертки устанавливают максимальный уровень, на котором инфракрасный датчик может механически отсканировать. Датчик устанавливает свою частоту развертки продвигаться механический угол полем отношения. Если необходимая частота развертки превышает максимальную частоту развертки, максимальная частота развертки используется. Модули являются степенями в секунду.
Пример: [5;10]
Чтобы включить это свойство, установите ScanMode
свойство к 'Механическому устройству'.
Типы данных: double
MechanicalScanLimits
— Угловые пределы механических направлений сканирования датчика
(значение по умолчанию) | с действительным знаком, 1 2 вектор-строка | матрица 2 на 2 с действительным знакомУгловые пределы механических направлений сканирования датчика, заданного как с действительным знаком, 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 °]. Модули в градусах.
Пример: [10 90;0 85]
Чтобы включить это свойство, установите ScanMode
свойство к 'Mechanical'
.
Типы данных: double
MechanicalAngle
— Текущий механический угол сканированияЭто свойство доступно только для чтения.
Текущий механический угол сканирования, возвращенный как скаляр или с действительным знаком 2 1 вектор. Когда HasElevation является true
, угол сканирования принимает форму [Азимут; El]. Az и El представляют азимут и углы сканирования вертикального изменения, соответственно, относительно смонтированного угла датчика на платформе. Когда HasElevation
false
, угол сканирования является скаляром, представляющим угол сканирования азимута.
Типы данных: double
LookAngle
— Посмотрите угол датчикаЭто свойство доступно только для чтения.
Посмотрите угол датчика, заданного как скаляр или с действительным знаком 2 1 вектор. Посмотрите угол зависит от механического углового набора в ScanMode
свойство.
ScanMode | LookAngle |
'Mechanical' | MechanicalAngle |
'No scanning' | 0
|
Когда HasElevation является true
, угол взгляда принимает форму [Азимут; El]. Az и El представляют азимут и углы взгляда вертикального изменения, соответственно. Когда HasElevation
false
, угол взгляда является скаляром, представляющим угол взгляда азимута.
LensDiameter
— Диаметр линзы8.0e-2
(значение по умолчанию) | положительная скалярная величинаДиаметр линзы, заданный как положительная скалярная величина. Модули исчисляются в метрах.
Пример: 0.1
Типы данных: double
FocalLength
— Фокусное расстояние круговой линзы датчикаФокусное расстояние круговой линзы датчика, заданной как скаляр. Фокусным расстоянием в пикселях является f = F s, где F является фокусным расстоянием в миллиметрах, и s является количеством пикселей на миллиметр.
Пример: 500
Типы данных: double
NumDetectors
— Количество инфракрасных детекторов в датчике плоскость обработки изображений
| положительный, двухэлементный вектор с действительным знакомКоличество инфракрасных детекторов в датчике плоскость обработки изображений, заданная как положительный, двухэлементный вектор-строка с действительным знаком. Первый элемент задает количество строк в плоскости обработки изображений, и второй элемент задает количество столбцов в плоскости обработки изображений. Количество строк соответствует разрешению вертикального изменения датчика, и количество столбцов соответствует разрешению азимута датчика.
Пример: [500 750]
Типы данных: double
CutoffFrequency
— Частота среза передаточной функции модуляции датчика20e3
| положительная скалярная величинаЧастота среза передаточной функции модуляции (MTF) датчика, заданной как положительная скалярная величина. Модули находятся в герц.
Пример: 30.5e3
Чтобы включить это свойство, установите ScanMode
свойство к 'Mechanical'
.
Типы данных: double
DetectorArea
— Область инфракрасного чувствительного элемента 1.44e-6
| положительная скалярная величинаОбласть инфракрасного чувствительного элемента / пиксель, заданный как положительная скалярная величина. Модули находятся в квадратных метрах.
Пример: 3.0e-5
Типы данных: double
Detectivity
— Определенная обнаружительная способность материала детектора1.2e10
| положительная скалярная величинаОпределенная обнаружительная способность материала детектора, заданного как положительная скалярная величина. Модули являются cm-sqrt (Гц)/W.
Пример: .9e10
Типы данных: double
NoiseEquivalentBandwidth
— Шумовая эквивалентная пропускная способность датчика
(значение по умолчанию) | положительная скалярная величинаШумовая эквивалентная пропускная способность датчика, заданного как положительная скалярная величина. Модули находятся в Гц.
Пример: 100
Типы данных: double
FalseAlarmRate
— Ложный сигнальный уровень1e-6
(значение по умолчанию) | положительная скалярная величинаУровень ложного сигнального отчета в каждой ячейке разрешения, заданной как положительная скалярная величина в области значений [10 –7,10–3]. Модули являются безразмерными. Ячейки разрешения определяются из свойства AzimuthResolution и опционально активированного свойства ElevationResolution.
Пример: 1e-5
Типы данных: double
AzimuthResolution
— Разрешение азимута
(значение по умолчанию) | положительная скалярная величинаЭто свойство доступно только для чтения.
Разрешение азимута датчика, заданного как положительная скалярная величина. Разрешение азимута задает минимальное разделение в углу азимута, под которым сеньор может отличить две цели. Разрешение азимута выведено из фокусного расстояния линзы и количества столбцов в плоскости детектора обработки изображений. Модули в градусах.
Типы данных: double
ElevationResolution
— Разрешение вертикального изменения сеньора
(значение по умолчанию) | положительная скалярная величинаЭто свойство доступно только для чтения.
Разрешение вертикального изменения датчика, заданного как положительная скалярная величина. Разрешение вертикального изменения задает минимальное разделение в углу вертикального изменения, под которым сеньор может отличить две цели. Разрешение вертикального изменения выведено из фокусного расстояния линзы и количества строк в плоскости детектора обработки изображений. Модули в градусах.
Чтобы включить это свойство, установите HasElevation
свойство к true
.
Типы данных: double
AzimuthBiasFraction
— Часть смещения азимута
(значение по умолчанию) | неотрицательный скалярЧасть смещения азимута датчика, заданного как неотрицательный скаляр. Смещение азимута выражается как часть разрешения азимута, заданного в AzimuthResolution
. Это наборы значений нижняя граница на азимутальной точности датчика. Это свойство только запрашивает режимы, где датчик сканирует. Значение является безразмерным.
Типы данных: double
ElevationBiasFraction
— Часть смещения вертикального изменения
(значение по умолчанию) | неотрицательный скалярЧасть смещения вертикального изменения датчика, заданного как неотрицательный скаляр. Смещение вертикального изменения выражается как часть разрешения вертикального изменения, заданного значением ElevationResolution
свойство. Это наборы значений нижняя граница на точности вертикального изменения датчика. Это свойство только запрашивает режимы, где датчик сканирует. Значение является безразмерным.
Чтобы включить это свойство, установите HasElevation
свойство к true
.
Типы данных: double
HasElevation
— Включите сканирование вертикального изменения сеньора и измеренияfalse
(значение по умолчанию) | true
Позвольте датчику измерить целевые углы вертикального изменения и отсканировать в вертикальном изменении, заданном как false
или true
. Установите это свойство на true
смоделировать инфракрасный датчик, который может оценить целевое вертикальное изменение и сканирование в вертикальном изменении.
Типы данных: логический
HasAngularSize
— Включите угловые измерения размераfalse
(значение по умолчанию) | true
Позвольте датчику возвратить азимут и размер вертикального изменения или промежуток цели в обнаружениях, о которых сообщают, заданных как false
или true
. Если это свойство установлено в false
, затем о единственном азимуте и местоположениях вертикального изменения вместо их угловой степени сообщают в обнаружениях.
Типы данных: логический
HasINS
— Включите вход инерционной системы навигации (INS)false
(значение по умолчанию) | true
Включите дополнительный входной параметр, который передает текущую оценку положения платформы датчика к датчику, заданному как false
или true
. Когда true
, позируйте информация добавляется к MeasurementParameters
структура обнаружений, о которых сообщают. Позируйте информация позволяет алгоритмам отслеживания и сплава оценить состояние целевых обнаружений на северо-востоке вниз (NED) система координат.
Типы данных: логический
HasNoise
— Включите сложение шума к измерениям датчикаtrue
(значение по умолчанию) | false
Включите сложение шума к измерениям датчика сеньора, заданным как true
или false
. Установите это свойство на true
добавить шум в измерения. В противном случае измерения не имеют никакого шума. Обратите внимание на то, что ковариация шума измерения, о которой сообщают, не зависит от этого свойства и является всегда представительной для шума, который будет добавлен когда HasNoise
установлен в истину.
Типы данных: логический
HasFalseAlarms
— Позвольте создать ложные сигнальные обнаружения датчикаtrue
(значение по умолчанию) | false
Позвольте создать ложные сигнальные измерения датчика, заданные как true
или false
. Установите это свойство на true
сообщить о ложных предупреждениях. В противном случае только о фактических обнаружениях сообщают.
Типы данных: логический
HasOcclusion
— Включите поглощение газов из расширенных объектовtrue
(значение по умолчанию) | false
Включите поглощение газов из расширенных объектов, заданных как true
или false
. Установите это свойство на true
к поглощению газов модели от расширенных объектов. Моделируются два типа поглощения газов (сам поглощение газов и предают объектное поглощение газов земле). Сам поглощение газов происходит, когда одна сторона расширенного объекта закрывает другую сторону. Поглощение газов объекта Inter происходит, когда один расширенный объект стоит в углу обзора другого расширенного объекта или цели точки. Обратите внимание на то, что оба расширенных объекта и цели точки могут быть закрыты расширенными объектами, но цель точки не может закрыть другую цель точки или расширенный объект.
Установите это свойство на false
отключить поглощение газов расширенных объектов. Это также отключит слияние объектов, обнаружения которых совместно используют общую ячейку разрешения датчика, которая дает каждый объект в сценарии отслеживания возможность сгенерировать обнаружение.
Типы данных: логический
MinClassificationArea
— Минимальный размер изображения для классификации
(значение по умолчанию) | положительное целое числоМинимальный размер изображения для классификации, заданной как положительное целое число. MinClassificationArea
определяет минимальную площадь (в квадратных пикселях), раньше решал, распознает ли датчик обнаружение классифицированным объектом. irSensor
попытки заключить обнаружение степени с помощью минимальной прямоугольной ограничительной рамки (вдоль азимута и направлений вертикального изменения) в плоскости изображения датчика. Если область минимальной ограничительной рамки меньше значения, данного MinClassificationArea
свойство, затем ClassID
, о котором сообщают, нуль в возвращенном
objectDetection
для того обнаружения. В противном случае, ClassID
, о котором сообщают, получен из
ClassID
из соответствующего целевого входа.
Типы данных: double
MaxAllowedOcclusion
— Максимальное позволенное поглощение газов
(значение по умолчанию) | действительный скаляр в [0,1)Максимальное позволенное поглощение газов, заданное как действительный скаляр на интервале [0,1). Свойство задает отношение закрытой области относительно общей площади ограничительной рамки цели. Если закрытое отношение области больше, чем значение, заданное MaxAllowedOccusion
свойство, закрытая цель не будет обнаружена.
Типы данных: double
MaxNumDetectionsSource
— Источник максимального количества обнаружений, о которых сообщат'Auto'
(значение по умолчанию) | 'Property'
Источник максимального количества обнаружений, о которых сообщает датчик, заданный как 'Auto'
или 'Property'
. Когда это свойство установлено в 'Auto'
, датчик сообщает обо всех обнаружениях. Когда это свойство установлено в 'Property'
, датчик сообщает об обнаружениях до номера, заданного MaxNumDetections
свойство.
Типы данных: char
MaxNumDetections
— Максимальное количество обнаружений, о которых сообщают,
(значение по умолчанию) | положительное целое числоО максимальном количестве обнаружений может сообщить датчик, заданный как положительное целое число. Об обнаружениях сообщают в порядке расстояния до датчика, пока максимальное количество не достигнуто.
Чтобы включить это свойство, установите MaxNumDetectionsSource
свойство к 'Property'
.
Типы данных: double
также задает INS оцененная информация о положении, dets
= sensor(targets
,ins
,simTime
)ins
, для платформы датчика. Информация о INS используется путем отслеживания и алгоритмы сплава, чтобы оценить целевые положения в системе координат NED.
Чтобы включить этот синтаксис, установите HasINS
свойство к true
.
targets
— Отслеживание сценария предназначается для положенийОтслеживание сценария предназначается для положений, заданных как структура или массив структур. Каждая структура соответствует цели. Можно сгенерировать эту структуру с помощью targetPoses
метод платформы. Можно также создать такую структуру вручную. Таблица показывает обязательные поля структуры:
Поле | Описание |
---|---|
PlatformID | Уникальный идентификатор для платформы, заданной как скалярное положительное целое число. Это - обязательное поле без значения по умолчанию. |
ClassID | Пользовательское целое число раньше классифицировало тип цели, заданной как неотрицательное целое число. Нуль резервируется для несекретных типов платформы и является значением по умолчанию. |
Position | Положение цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Это - обязательное поле без значения по умолчанию. Модули исчисляются в метрах. |
Velocity | Скорость цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Модули исчисляются в метрах в секунду. Значением по умолчанию является |
Acceleration | Ускорение цели в координатах платформы, заданных как 1 3 вектор-строка. Модули исчисляются в метрах на второй в квадрате. Значением по умолчанию является |
Orientation | Ориентация цели относительно координат платформы, заданных как скалярный кватернион или 3х3 матрица вращения. Ориентация задает вращение системы координат от системы координат платформы до текущей целевой системы координат тела. Модули являются безразмерными. Значением по умолчанию является |
AngularVelocity | Скорость вращения цели в координатах платформы, заданных как с действительным знаком, 1 3 векторный. Величина вектора задает угловую скорость. Направление задает ось по часовой стрелке вращения. Модули в градусах в секунду. Значением по умолчанию является |
Значения Position
, Velocity
, и Orientation
поля заданы относительно системы координат платформы.
simTime
— Текущее время симуляцииТекущее время симуляции, заданное как положительная скалярная величина. trackingScenario
вызовы объектов инфракрасный датчик в интервалах постоянного времени. Датчик генерирует новые обнаружения, с промежутками заданные UpdateInterval
свойство. Значение UpdateInterval
свойство должно быть целочисленным кратным интервал времени симуляции. Обновления, которые требуют от датчика между интервалами обновления, не содержат обнаружений. Модули находятся в секундах.
Пример: 10.5
Типы данных: double
ins
— Положение платформы от INSПоложение платформы датчика получено из инерционной системы навигации (INS), заданной как структура.
Информацией о положении платформы от инерционной системы навигации (INS) является структура, которая имеет эти поля:
Поле | Определение |
Position | Положение GPS-приемника в локальной системе координат NED, заданной как с действительным знаком 1 3 вектор. Модули исчисляются в метрах. |
Velocity | Скорость GPS-приемника в локальной системе координат NED, заданной как с действительным знаком 1 3 вектор. Модули исчисляются в метрах в секунду. |
Orientation | Ориентация INS относительно локальной системы координат NED, заданной как скалярный кватернион или 3х3 ортонормированная матрица вращения системы координат с действительным знаком. Задает вращение системы координат от локальной системы координат NED до текущей системы координат тела INS. Это также упоминается как "родительский элемент к дочернему" вращению. |
Чтобы включить этот аргумент, установите HasINS
свойство к true
.
Типы данных: struct
interference
— Вмешательство или создающий затор сигналВмешательство или затор сигнала, заданного как структура.
Чтобы включить этот аргумент, установите HasInterference
свойство к true
.
Типы данных: double
Поддержка комплексного числа: Да
dets
— обнаружения датчикаobjectDetection
объектыОбнаружения датчика, возвращенные как массив ячеек objectDetection
объекты. Каждый объект имеет эти свойства:
Свойство | Определение |
---|---|
Time | Время измерения |
Measurement | Объектные измерения |
MeasurementNoise | Ковариационная матрица шума измерения |
SensorIndex | Уникальный идентификатор датчика |
ObjectClassID | Предметная классификация |
MeasurementParameters | Параметры используются функциями инициализации нелинейного Кальмана, отслеживающего фильтры |
ObjectAttributes | Дополнительная информация передала средству отслеживания |
Measurement
и MeasurementNoise
сообщаются в системе координат, заданной DetectionCoordinates
свойство.
numDets
— Количество обнаруженийКоличество обнаружений, о которых сообщают, возвратилось как неотрицательное целое число.
Когда MaxNumDetectionsSource
свойство установлено в 'Auto'
, numDets
установлен в длину dets
.
Когда MaxNumDetectionsSource
свойство установлено в 'Property'
, dets
массив ячеек с длиной, определенной MaxNumDetections
свойство. Не больше, чем MaxNumDetections
количество обнаружений возвращено. Если количество обнаружений - меньше, чем MaxNumDetections
, первый numDets
элементы dets
содержите допустимые обнаружения. Остающиеся элементы dets
установлены в значение по умолчанию.
Типы данных: double
config
— Настройка датчика токаНастройка датчика тока, заданная как структура. Этот выход может использоваться, чтобы определить, какие объекты находятся в пределах луча датчика во время объектного выполнения.
Поле | Описание |
SensorIndex | Уникальный индекс датчика |
IsValidTime | Допустимое время обнаружения, возвращенное как |
IsScanDone |
|
FieldOfView | Поле зрения датчика определяет, какие объекты находятся в пределах луча датчика во время объектного выполнения. Поле зрения задано как 2 1 вектор положительных действительных значений, [azfov; elfov]. |
MeasurementParameters |
|
Типы данных: struct
Чтобы использовать объектную функцию, задайте Системный объект как первый входной параметр. Например, чтобы выпустить системные ресурсы Системного объекта под названием obj
, используйте этот синтаксис:
release(obj)
Обнаружьте цель с инфракрасным датчиком.
Сначала создайте целевую структуру.
tgt = struct( ... 'PlatformID',1, ... 'Position',[10e3 0 0], ... 'Speed',900*1e3/3600);
Затем создайте датчик IR.
sensor = irSensor(1);
Сгенерируйте обнаружение от цели.
time = 0; [dets,numDets,config] = sensor(tgt,time)
dets = 1x1 cell array
{1x1 objectDetection}
numDets = 1
config = struct with fields:
SensorIndex: 1
IsValidTime: 1
IsScanDone: 0
FieldOfView: [64.0108 64.0108]
MeasurementParameters: [1x1 struct]
Датчик измеряет координаты цели. Measurement
и MeasurementNoise
о значениях сообщают в системе координат, заданной DetectionCoordinates
свойство датчика.
Когда DetectionCoordinates
свойством является 'Scenario'
, 'Body'
, или 'Sensor rectangular'
, Measurement
и MeasurementNoise
о значениях сообщают в прямоугольных координатах. О скоростях только сообщают когда свойство уровня области значений, HasRangeRate
, true
.
Когда DetectionCoordinates
свойством является 'Sensor spherical'
, Measurement
и MeasurementNoise
о значениях сообщают в сферической системе координат, выведенной из системы прямоугольной координаты датчика. О вертикальном изменении и уровне области значений только сообщают когда HasElevation
и HasRangeRate
true
.
Измерения упорядочены как [азимут, вертикальное изменение, область значений, уровень области значений]. Создание отчетов вертикального изменения и уровня области значений зависит от соответствующего HasElevation
и HasRangeRate
значения свойств. Углы в градусах, область значений исчисляется в метрах, и уровень области значений исчисляется в метрах в секунду.
Координаты измерения
DetectionCoordinates | Измерение и координаты шума измерения | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
'Scenario' | Координатная зависимость от
| |||||||||||||||
'Body' | ||||||||||||||||
'Sensor rectangular' | ||||||||||||||||
'Sensor spherical' | Координатная зависимость от
|
MeasurementParameters
свойство состоит из массива структур, которые описывают последовательность координатных преобразований от дочерней системы координат до родительской системы координат или обратных преобразований (см. Вращение Системы координат). В большинстве случаев самой длинной необходимой последовательностью преобразований является Датчик → Платформа → Сценарий.
Если об обнаружениях сообщают в сферических координатах датчика и HasINS
установлен в false
, затем последовательность состоит только из одного преобразования от датчика до платформы. В преобразовании, OriginPosition
то же самое как MountingLocation
свойство датчика. Orientation
состоит из двух последовательных вращений. Первое вращение, соответствуя MountingAngles
свойство датчика, составляет вращение от системы координат платформы (P) к датчику, монтирующему систему координат (M). Второе вращение, соответствуя азимуту и углам вертикального изменения датчика, составляет вращение от датчика, монтирующего систему координат (M) к датчику, сканируя систему координат (S). В системе координат S направление x является направлением опорного направления, и направление y находится в x-y плоскость датчика, монтирующего систему координат (M).
Если HasINS
true
, последовательность преобразований состоит из двух преобразований – сначала формируют систему координат сценария к системе координат платформы затем от системы координат платформы до системы координат сканирования датчика. В первом преобразовании, Orientation
вращение от системы координат сценария до системы координат платформы и OriginPosition
положение системы координат платформы относительно системы координат сценария.
Тривиально, если об обнаружениях сообщают в прямоугольных координатах платформы и HasINS
установлен в false
, преобразование состоит только из идентичности.
Поля MeasurementParameters
показаны здесь. Не все поля должны присутствовать в структуре. Набор полей и их значений по умолчанию может зависеть от типа датчика.
Поле | Описание |
Frame | Перечислимый тип, указывающий на систему координат раньше, сообщал об измерениях. Когда об обнаружениях сообщают с помощью системы прямоугольной координаты, |
OriginPosition | Смещение положения источника дочерней системы координат относительно родительской системы координат, представленной как вектор 3 на 1. |
OriginVelocity | Скоростное смещение источника дочерней системы координат относительно родительской системы координат, представленной как вектор 3 на 1. |
Orientation | 3х3 ортонормированная матрица вращения системы координат с действительным знаком. Направление вращения зависит от |
IsParentToChild | Логический скаляр, указывающий, если |
HasElevation | Логический скаляр, указывающий, включено ли вертикальное изменение в измерение. Для измерений, о которых сообщают в прямоугольной системе координат, и если |
HasAzimuth | Логический скаляр, указывающий, включен ли азимут в измерение. |
HasRange | Логический скаляр, указывающий, включена ли область значений в измерение. |
HasVelocity | Логический скаляр, указывающий, включают ли обнаружения, о которых сообщают, скоростные измерения. Для измерений, о которых сообщают в прямоугольной системе координат, если |
Атрибуты объектов содержат дополнительную информацию об обнаружении:
Атрибут | Описание |
TargetIndex | Идентификатор платформы, |
SNR | Отношение сигнал-шум обнаружения в дБ. |
Синтаксисы удобства устанавливают несколько свойств вместе моделировать определенный тип инфракрасного датчика.
Наборы ScanMode
к 'Никакому сканированию'.
Этот синтаксис устанавливает эти свойства:
Свойство | Значение |
ScanMode | 'Mechanical' |
HasElevation | true |
MaxMechanicalScanRate | [75;75]
|
MechanicalScanLimits | [-45 45; -10 0]
|
ElectronicScanLimits | [-45 45; -10 0]
|
Можно изменить ScanMode
свойство к 'Electronic'
выполнять электронную развертку растра по тому же объему как механическое сканирование.
Этот синтаксис устанавливает эти свойства:
Свойство | Значение |
ScanMode | 'Mechanical' |
FieldOfView | [1:10]
|
HasElevation | false или true
|
MechanicalScanLimits | [0 360; -10 0]
|
ElevationResolution | 10/sqrt(12) |
Этот синтаксис устанавливает эти свойства:
Свойство | Значение |
ScanMode | 'Mechanical' |
FieldOfView | [1;10]
|
HasElevation | false |
MechanicalScanLimits | [-45 45; -10 0]
|
ElectronicScanLimits | [-45 45; -10 0]
|
ElevationResolution | 10/sqrt(12) |
Изменение ScanMode
свойство к 'Electronic'
позволяет вам выполнить электронную развертку растра по тому же объему как механическое сканирование.
Указания и ограничения по применению:
Смотрите системные объекты в Генерации кода MATLAB (MATLAB Coder).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.