exponenta event banner

Моделирование 3D Лидар

Модель датчика Lidar в среде моделирования 3D

  • Библиотека:
  • Автоматизированная панель инструментов вождения/ 3D моделирования

  • Simulation 3D Lidar block

Описание

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

Если для параметра Sample time установлено значение -1блок использует время выборки, указанное в блоке «Моделирование» 3D «Конфигурация сцены». Чтобы использовать этот датчик, убедитесь, что блок «Моделирование» 3D «Конфигурация сцены» находится в модели.

Примечание

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

  • Моделирование 3D Конфигурация сцены - 0

  • Моделирование 3D Лидар - 1

Дополнительные сведения о порядке выполнения см. в разделе Как работает моделирование нереального двигателя для автоматического вождения.

Порты

Продукция

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

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

m × n = VFOVVRES × HFOVHRES

где:

  • VFOV - вертикальное поле зрения лидара, в градусах, как указано параметром Вертикальное поле зрения (град.).

  • VRES - вертикальное угловое разрешение лидара в градусах, заданное параметром Вертикальное разрешение (град.).

  • HFOV - горизонтальное поле зрения лидара, в градусах, как указано параметром Горизонтальное поле зрения (град.).

  • HRES - горизонтальное угловое разрешение лидара в градусах, заданное параметром Горизонтальное разрешение (град.).

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

Из этих возвращенных точек можно создать облако точек с помощью функций облака точек в блоке функции MATLAB. Список функций обработки облака точек см. в разделе Обработка Lidar. Пример использования этих функций см. в разделе Разработка алгоритма Lidar SLAM с использованием среды моделирования нереального механизма.

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

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

Зависимости

Чтобы включить этот порт, на вкладке Параметры (Parameters) выберите Выход расстояния (Distance outport).

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

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

Зависимости

Для включения этого порта на вкладке Ground Truth выберите Output location (m) и orientation (rad).

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

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

Зависимости

Для включения этого порта на вкладке Ground Truth выберите Output location (m) и orientation (rad).

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

Параметры

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

Установка

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

Пример: 2

Имя родителя, к которому подключен датчик, указанное как Scene Origin или как название транспортного средства в модели. Имена транспортных средств, которые можно выбрать, соответствуют параметрам «Имя» (Name) блока «Моделирование транспортного средства» (Simulation) 3D «Транспортное Средство» (Vehicle) с блоками «Следование по земле» (Ground Foll При выборе Scene Originблок размещает датчик в начале сцены.

Пример: SimulinkVehicle1

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

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

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

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

Датчик, установленный на начало координат транспортного средства, находящегося на земле, в геометрическом центре транспортного средства (см. «Системы координат для имитации нереального двигателя в автоматизированной панели инструментов вождения»)

[0, 0, 0]
Front bumper

Датчик, установленный на переднем бампере

[0, 0, 0]
Rear bumper

Датчик, обращенный назад, установленный на заднем бампере

[0, 0, 180]
Right mirror

Датчик, обращенный вниз, установленный на правом зеркале бокового обзора

[0, –90, 0]
Left mirror

Обращенный вниз датчик, установленный на левом зеркале бокового обзора

[0, –90, 0]
Rearview mirror

Датчик, обращенный вперед, установленный на зеркале заднего вида внутри транспортного средства

[0, 0, 0]
Hood center

Датчик, установленный в центре капота

[0, 0, 0]
Roof center

Датчик, обращенный вперед, установленный в центре крыши

[0, 0, 0]

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

Расположение (X, Y, Z) датчика относительно транспортного средства зависит от типа транспортного средства. Чтобы указать тип транспортного средства, используйте параметр Тип (Type) блока Имитация транспортного средства со следом за землей (Simulation 3D Vehicle with Ground Following), к которому монтируется датчик. Для получения информации о местах установки (X, Y, Z) для типа транспортного средства см. справочную страницу для данного транспортного средства.

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

Выберите этот параметр, чтобы задать смещение от места монтажа с помощью параметров относительного перемещения [X, Y, Z] (m) и относительного поворота [Roll, Pitch, Yaw] (o).

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

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

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

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

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

Исходная точка - это место установки, указанное в параметре Место установки. Эта точка отсчета отличается от точки отсчета транспортного средства, которая является геометрическим центром транспортного средства.

Если установить датчик в начало координат сцены, установив для параметра «Родительское имя» значение Scene Originзатем X, Y и Z находятся в мировых координатах сцены.

Дополнительные сведения о системах координат транспортного средства и мира см. в разделе Системы координат для моделирования нереального двигателя в автоматизированной панели инструментов вождения.

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

Зависимости

Чтобы включить этот параметр, выберите Задать смещение (Specify offset).

Смещение вращения относительно места установки датчика, определяемое как действительный вектор 1 на 3 формы [Roll, Pitch, Yaw]. Крен, шаг и рыскание - это углы поворота вокруг осей X, Y и Z. Единицы измерения в градусах.

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

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

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

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

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

Исходная точка - это место установки, указанное в параметре Место установки. Эта точка отсчета отличается от точки отсчета транспортного средства, которая является геометрическим центром транспортного средства.

Если установить датчик в начало координат сцены, установив для параметра «Родительское имя» значение Scene Originзатем X, Y и Z находятся в мировых координатах сцены.

Дополнительные сведения о системах координат транспортного средства и мира см. в разделе Системы координат для моделирования нереального двигателя в автоматизированной панели инструментов вождения.

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

Зависимости

Чтобы включить этот параметр, выберите Задать смещение (Specify offset).

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

Если задать время выборки равным -1блок наследует время выборки из блока «Моделирование» 3D «Конфигурация сцены».

Параметры

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

Разрешение диапазона лидарных датчиков, в метрах, определяется как положительный действительный скаляр. Разрешение диапазона также известно как коэффициент квантования. Минимальное значение этого коэффициента - Drange/224, где Drange - максимальное расстояние, измеренное лидарным датчиком, как указано в параметре Диапазон обнаружения (m).

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

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

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

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

Выберите этот параметр для вывода расстояния до точек измеряемого объекта в порту «Расстояние».

Истина на земле

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

Совет

Представлен в R2019b