автомобиль

Добавьте автомобиль в ведущий сценарий

Синтаксис

vc = vehicle(sc)
vc = vehicle(sc,Name,Value)

Описание

vc = vehicle(sc) добавляют объект Vehicle, vc, к ведущему сценарию, sc. Автомобиль имеет значения свойств по умолчанию.

Vehicles является специализированным типом кубоида агента объект, (имеющий форму поля), который имеет четыре колеса. Для получения дополнительной информации о том, как автомобили заданы, смотрите Агентов и Автомобили.

пример

vc = vehicle(sc,Name,Value) свойства автомобиля наборов с помощью одной или нескольких пар "имя-значение". Например, можно установить положение, скорость, размерности, ориентацию и колесную базу автомобиля.

Примеры

свернуть все

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

Создайте ведущий объект сценария.

sc = drivingScenario('SampleTime',0.1','StopTime',60);

Создайте кривую дорогу с помощью дорожных центральных точек после дуги круга с 800-метровым радиусом. Дуга запускается на уровне 0 °, заканчивается на уровне 90 ° и выбирается в шаге на 5 °.

angs = [0:5:90]';
R = 800;
roadcenters = R*[cosd(angs) sind(angs) zeros(size(angs))];
roadwidth = 10;
road(sc,roadcenters,roadwidth);

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

roadcenters = [700 0 0; 100 0 0];
road(sc,roadcenters)
roadcenters = [400 400 0; 0 0 0];
road(sc,roadcenters)

Получите дорожные контуры.

rbdry = roadBoundaries(sc);

Добавьте автомобиль и велосипед к сценарию. Расположите автомобиль в начале первой дороги подряд.

car = vehicle(sc,'Position',[700 0 0],'Length',3,'Width',2,'Height',1.6);

Расположите велосипед дальше в будущем.

bicycle = actor(sc,'Position',[706 376 0]','Length',2,'Width',0.45,'Height',1.5);

Постройте сценарий.

plot(sc,'Centerline','on','RoadCenters','on');
title('Scenario');

Отобразите положения агента и профили.

poses = actorPoses(sc)
poses = 2x1 struct array with fields:
    ActorID
    Position
    Velocity
    Roll
    Pitch
    Yaw
    AngularVelocity

profiles = actorProfiles(sc)
profiles = 2x1 struct array with fields:
    ActorID
    ClassID
    Length
    Width
    Height
    OriginOffset
    RCSPattern
    RCSAzimuthAngles
    RCSElevationAngles

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

свернуть все

Ведущий сценарий, заданный как объект drivingScenario.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: vehicle('Length',2.2,'Width',0.6,'Height',1.5) создает автомобиль с размерностями мотоцикла. Модули исчисляются в метрах.

Идентификатор классификации, заданный как пара, разделенная запятой, состоящая из 'ClassID' и неотрицательного целого числа. Можно задать собственную систему классификации агента и присвоить значения ClassID агентам согласно схеме. Значение 0 резервируется для объекта неизвестного или неприсвоенного класса.

Позиция вращательного центра автомобиля, заданного как пара, разделенная запятой, состоящая из 'Position' и [x y z] вектор с действительным знаком.

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

Пример: [10;50;0]

Скорость (v) автомобиля центрируется в x - y - и z - направления, заданные как пара, разделенная запятой, состоящая из 'Velocity' и [v x v y v z] вектор с действительным знаком. Пара "имя-значение" 'Position' задает центр автомобиля. Модули исчисляются в метрах в секунду.

Пример: [-4;7;10]

Угол отклонения от курса автомобиля, заданного как пара, разделенная запятой, состоящая из 'Yaw' и действительного скаляра. Yaw является углом вращения автомобиля вокруг z - ось и положителен в направлении по часовой стрелке. Модули в градусах.

Пример: -0.4

Передайте угол автомобиля, заданного как пара, разделенная запятой, состоящая из 'Pitch' и действительного скаляра. Pitch является углом вращения автомобиля вокруг y - ось и положителен в направлении по часовой стрелке. Модули в градусах.

Пример: 5.8

Угол вращения автомобиля, заданного как пара, разделенная запятой, состоящая из 'Roll' и действительного скаляра. Roll является углом вращения автомобиля вокруг x - ось и положителен в направлении по часовой стрелке. Модули в градусах.

Пример: -10

Угловая скорость (ω) автомобиля, в мировых координатах, заданных как пара, разделенная запятой, состоящая из 'AngularVelocity' и [ω x ω y ω z] вектор с действительным знаком. Модули в градусах в секунду.

Пример: [20 40 20]

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

Пример: 5.5

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

Пример: 2.0

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

Пример: 2.1

Шаблон радарного поперечного сечения (RCS) автомобиля, заданного как пара, разделенная запятой, состоящая из 'RCSPattern' и Q-by-P матрица с действительным знаком. RCS является функцией азимута и углов повышения, где:

  • Q является количеством углов повышения, заданных парой "имя-значение" 'RCSElevationAngles'.

  • P является количеством углов азимута, заданных парой "имя-значение" 'RCSAzimuthAngles'.

Модули находятся в децибелах на квадратный метр (dBsm).

Пример: 5.8

Углы азимута шаблона автомобиля RCS, заданного как пара, разделенная запятой, состоящая из 'RCSAzimuthAngles' и P - элемент вектор с действительным знаком. P является количеством углов азимута. Значения находятся в области значений [-180 °, 180 °].

Каждый элемент RCSAzimuthAngles задает угол азимута соответствующего столбца пары "имя-значение" 'RCSPattern'. Модули в градусах.

Пример: [-90:90]

Углы повышения шаблона автомобиля RCS, заданного как пара, разделенная запятой, состоящая из 'RCSElevationAngles' и Q - элемент вектор с действительным знаком. Q является количеством углов повышения. Значения находятся в области значений [-90 °, 90 °].

Каждый элемент RCSElevationAngles задает угол повышения соответствующей строки пары "имя-значение" 'RCSPattern'. Модули в градусах.

Пример: [0:90]

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

Пример: 0.37

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

Пример: 0.32

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

Пример: 1.51

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

свернуть все

Ведущий автомобиль сценария, возвращенный как объект Vehicle, принадлежащий ведущему сценарию, задан в sc.

Можно изменить объект Vehicle путем изменения его значений свойств. Имена свойства соответствуют аргументам пары "имя-значение", используемым, чтобы создать объект. Единственным свойством, которое вы не можете изменить, является ActorID, который является положительным целым числом, указывающим на заданный сценарием ID автомобиля.

Чтобы задать и визуализировать движение автомобиля, используйте эти функции:

trajectory

Создайте агента или траекторию автомобиля в ведущем сценарии

chasePlot

Эгоцентрический проективный перспективный график

Чтобы получить информацию о характеристиках автомобиля, используйте эти функции:

actorPoses

Положения, скорости и ориентации агентов в ведущем сценарии

actorProfiles

Физический и радарные характеристики агентов в ведущем сценарии

targetOutlines

Основы целей просматриваются агентом

targetPoses

Целевые положения и ориентации относительно автомобиля, оборудованного датчиком

driving.scenario.targetsToEgo

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

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

roadBoundaries

Получите дорожные контуры

driving.scenario.roadBoundariesToEgo

Преобразуйте дорожные контуры в координаты автомобиля, оборудованного датчиком

currentLane

Получите текущий маршрут агента

laneBoundaries

Получите контуры маршрута маршрута агента

laneMarkingVertices

Вершины маркировки маршрута и поверхности в ведущем сценарии

Больше о

свернуть все

Агенты и автомобили

В ведущих сценариях actor является кубоидом объект, (имеющий форму поля) с определенной длиной, шириной и высотой. Агенты также имеют шаблон радарного поперечного сечения (RCS), заданный в dBsm, который можно совершенствовать путем установки углового азимута и координат повышения. Положение агента задано как центр его нижней поверхности. Эта центральная точка используется в качестве вращательного центра агента и точки контакта с землей.

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

  • Wheelbase — Расстояние между передними и задними осями

  • Front overhang — Расстояние между передней стороной автомобиля и передней осью.

  • Rear overhang — Расстояние между задней осью и задней частью автомобиля.

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

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

Классификация агентовОбъект агентаСвойства агента
LengthWidthHeightFrontOverhangRearOverhangWheelbaseRCSPattern
ПешеходActor0,24 м0,45 м1,7 мНет данныхНет данныхНет данных– 8 dBsm
АвтомобильVehicle4,7 м1,8 м1,4 м0,9 м1,0 м2,8 м10 dBsm
МотоциклVehicle2,2 м0,6 м1,5 м0,37 м0,32 м1,51 м0 dBsm

Введенный в R2017a