Simulation 3D Lidar

Модель датчика Лидара в 3D среду симуляции

  • Библиотека:
  • БПЛА Toolbox/Simulation 3D

  • Simulation 3D Lidar block

Описание

Блок Simulation 3D Lidar обеспечивает интерфейс к датчику лидара в 3D среде симуляции. Это окружение визуализируется с помощью Unreal Engine® из эпических игр®. Блок возвращает облако точек с заданным полем зрения и угловым разрешением. Можно также выводить расстояния от датчика до точек объекта. В сложение можно вывести местоположение и ориентацию датчика в мировой системе координат сцены.

Если вы задаете Sample time -1, блок использует шаг расчета, заданный в блоке Simulation 3D Scene Configuration. Чтобы использовать этот датчик, убедитесь, что блок Simulation 3D Scene Configuration находится в вашей модели.

Примечание

Блок Simulation 3D Scene Configuration должен выполняться перед блоком Simulation 3D Lidar. Таким образом, окружение визуализации 3D Unreal Engine подготавливает данные до того, как блок Simulation 3D Lidar получит их. Чтобы проверить порядок выполнения блока, щелкните правой кнопкой мыши блоки и выберите Properties. На вкладке General подтвердите следующие Priority настройки:

  • Simulation 3D Scene Configuration0

  • Simulation 3D Lidar1

Для получения дополнительной информации о поручении на выполнение смотрите Блочный порядок выполнения.

Порты

Выход

расширить все

Данные облака точек, возвращенные как m n - 3 массивами положительных, с реальным знаком [x, y, z] точки. m и n определяют число точек в облаке точек, как показано на этом уравнении:

m×n=VFOVVRES×HFOVHRES

где:

  • V FOV является вертикальным полем зрения лидара, в степенях, как задано параметром Vertical field of view (deg).

  • V RES является вертикальным угловым разрешением лидара, в степенях, заданным параметром Vertical resolution (deg).

  • H FOV является горизонтальным полем зрения лидара, в степенях, как задано параметром Horizontal field of view (deg).

  • H RES - горизонтальное угловое разрешение лидара, в степенях, заданное параметром Horizontal resolution (deg).

Каждая запись m -by n в массиве задает x, y и z координаты обнаруженной точки в системе координат датчика. Если лидар не обнаруживает точку в заданной координате, то x, y и z возвращаются как NaN.

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

Расстояние до точек объекта, измеренное датчиком лидара, возвращаемое как m -by n положительная вещественная матрица. Каждое m -by n значение в матрице соответствует координатной точке [x, y, z], возвращаемой Point cloud выходным портом.

Зависимости

Чтобы включить этот порт, на вкладке Parameters, выберите Distance outport.

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

Расположение датчика вдоль оси X, оси Y и оси Z сцены. Значения Location указаны в мировых координатах сцены. В этой системе координат ось Z указывает вверх от земли. Модули измерения указаны в метрах.

Зависимости

Чтобы включить этот порт, на вкладке Ground Truth, выберите Output location (m) and orientation (rad).

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

Ориентация датчика крена, тангажа и рыскания вокруг оси X, оси Y и оси Z сцены. Значения Orientation указаны в мировых координатах сцены. Эти значения положительны в направлении по часовой стрелке при взгляде в положительных направлениях этих осей. Модули указаны в радианах.

Зависимости

Чтобы включить этот порт, на вкладке Ground Truth, выберите Output location (m) and orientation (rad).

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

Параметры

расширить все

Установка

Уникальный идентификатор датчика, заданный как положительное целое число. В мультисенсорной системе идентификатор датчика различает датчики. Когда вы добавляете новый блок датчика к модели, Sensor identifier этого блока равен N + 1. N является самым высоким значением Sensor identifier среди существующих блоков датчиков в модели.

Пример: 2

Имя родительского элемента, на котором установлен датчик, указывается как Scene Origin или как имя транспортного средства в вашей модели. Имена транспортных средств, которые можно выбрать, соответствуют параметрам Name блоков Simulation 3D Vehicle в вашей модели. Если вы выбираете Scene Originблок помещает датчик в источник сцены.

Пример: SimulinkVehicle1

Место установки датчика.

  • Когда Parent name Scene Originблок устанавливает датчик в источник сцены, и Mounting location можно установить на Origin только. Во время симуляции датчик остается стационарным.

  • Когда Parent name - имя транспортного средства (для примера, SimulinkVehicle1) блок устанавливает датчик в одно из предопределенных мест установки, описанных в таблице. Во время симуляции датчик перемещается вместе с транспортным средством.

Место установки транспортного средстваОписаниеОриентация относительно источника транспортного средства [крен, тангаж, рыскание] (град.)
Origin

Передний датчик, установленный на источнике транспортного средства, который находится на земле, в геометрическом центре транспортного средства

[0, 0, 0]

Крен, тангаж и рыскание положительны по часовой стрелке при взгляде в положительном направлении оси X, оси Y и оси Z, соответственно. При взгляде на транспортное средство от верхней части вниз, тогда угол рыскания (то есть угол ориентации) против часовой стрелки-положительный, потому что вы смотрите в отрицательном направлении оси.

Расположение датчика (X, Y, Z) относительно транспортного средства зависит от типа транспортного средства. Чтобы задать тип транспортного средства, используйте параметр Type блока Simulation 3D UAV Vehicle, к которому вы монтируете. Чтобы получить места установки (X, Y, Z) для типа транспортного средства, смотрите страницу с описанием для этого транспортного средства.

Чтобы определить местоположение датчика в мировых координатах, откройте блок датчика. Затем на вкладке Ground Truth выберите Output location (m) and orientation (rad) и проверьте данные из Location выходного порта.

Выберите этот параметр, чтобы задать смещение от места установки с помощью параметров Relative translation [X, Y, Z] (m) и Relative rotation [Roll, Pitch, Yaw] (deg).

Смещение перемещения относительно места установки датчика, заданное как действительный вектор 1 на 3 вида [X, Y, Z]. Модули измерения указаны в метрах.

Если вы монтируете датчик к транспортному средству путем установки Parent name на имя этого транспортного средства, то X, Y и Z находятся в транспортном средстве системе координат, где:

  • Ось X указывает вперед от транспортного средства.

  • Ось Y указывает налево от транспортного средства, если смотреть, когда обращена вперед.

  • Ось Z указывает вверх.

Это источник - место установки, заданное в параметре Mounting location. Этот источник отличается от источника транспортного средства, который является геометрическим центром транспортного средства.

Если вы монтируете датчик к источнику сцены путем установки Parent name на Scene Origin, тогда X, Y и Z находятся в мировых координатах сцены.

Для получения дополнительной информации о транспортном средстве и мировых системах координат, смотрите Системы координат для Unreal Симуляция в UAV Toolbox.

Пример: [0,0,0.01]

Зависимости

Чтобы включить этот параметр, выберите Specify offset.

Вращательное смещение относительно места установки датчика, заданное как действительный вектор 1 на 3 вида [Roll, тангаж, рыскание]. Крен, тангаж и рыскание являются углами вращения вокруг осей X -, Y- и Z, соответственно. Модули указаны в степенях.

Если вы монтируете датчик к транспортному средству путем установки Parent name на имя этого транспортного средства, то X, Y и Z находятся в транспортном средстве системе координат, где:

  • Ось X указывает вперед от транспортного средства.

  • Ось Y указывает налево от транспортного средства, если смотреть, когда обращена вперед.

  • Ось Z указывает вверх.

  • Крен, тангаж и рыскание положительны по часовой стрелке при взгляде в прямом направлении оси X, оси Y и оси Z, соответственно. Если вы просматриваете сцену с 2D перспективой сверху вниз, то угол рыскания (также называемый углом ориентации) является противоположным часовой стрелке-положительным, потому что вы просматриваете сцену в отрицательном направлении оси Z.

Это источник - место установки, заданное в параметре Mounting location. Этот источник отличается от источника транспортного средства, который является геометрическим центром транспортного средства.

Если вы монтируете датчик к источнику сцены путем установки Parent name на Scene Origin, тогда X, Y и Z находятся в мировых координатах сцены.

Для получения дополнительной информации о транспортном средстве и мировых системах координат, смотрите Системы координат для Unreal Симуляция в UAV Toolbox.

Пример: [0,0,10]

Зависимости

Чтобы включить этот параметр, выберите Specify offset.

Шаг расчета блока в секундах, заданная как положительная скалярная величина. Частота систем координат среды симуляции 3D является обратной частотой шага расчета.

Если вы задаете значение шага расчета -1блок наследует свои шаги расчета от блока Simulation 3D Scene Configuration.

Параметры

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

Разрешение области значений датчиков лидара, в метрах, задается как положительный действительный скаляр. Разрешение области значений также известно как quantization factor. Минимальное значение этого фактора находится D диапазоне/224, где D область значений является максимальным расстоянием, измеренным датчиком лидара, как задано в параметре Detection range (m) .

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

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

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

Горизонтальное угловое (азимутальное) разрешение датчика лидара, заданное как положительная скалярная величина. Модули указаны в степенях.

Выберите этот параметр, чтобы вывести расстояние до измеренных точек объекта в порту Distance.

Основная истина

Выберите этот параметр, чтобы вывести положение и ориентацию датчика в портах Location и Orientation, соответственно.

Совет

  • Чтобы визуализировать облака точек, которые выводятся портом Point cloud, можно использовать pcplayer объект в блоке MATLAB Function.

  • Unreal Engine может занять много времени, чтобы запустить между симуляциями, рассмотрите логгирование сигналов, которые выводят датчики. Затем можно использовать эти данные для разработки алгоритмов восприятия в MATLAB®. См. «Конфигурирование сигнала для логгирования» (Simulink).

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

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