Добавьте транспортное средство в ведущий сценарий
добавляет vc
= vehicle(scenario
)Vehicle
объект, vc
, к ведущему сценарию, scenario
. Транспортное средство имеет значения свойств по умолчанию.
Vehicles является специализированным типом кубоида агента объект, (имеющий форму поля), который имеет четыре колеса. Для получения дополнительной информации о том, как транспортные средства заданы, смотрите Агентов и Транспортные средства.
свойства транспортного средства наборов с помощью одной или нескольких пар "имя-значение". Например, можно установить положение, скорость, размерности, ориентацию и колесную базу транспортного средства.vc
= vehicle(scenario
,Name,Value
)
Создайте ведущий сценарий, содержащий кривую дорогу, две дороги подряд и двух агентов: автомобиль и велосипед. Оба агента проходят дорога в течение 60 секунд.
Создайте ведущий объект сценария.
scenario = 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(scenario,roadcenters,roadwidth);
Добавьте две дороги подряд с шириной по умолчанию, с помощью дорожных центральных точек в каждом конце.
roadcenters = [700 0 0; 100 0 0]; road(scenario,roadcenters) roadcenters = [400 400 0; 0 0 0]; road(scenario,roadcenters)
Получите дорожные контуры.
rbdry = roadBoundaries(scenario);
Добавьте автомобиль и велосипед к сценарию. Расположите автомобиль в начале первой дороги подряд.
car = vehicle(scenario,'Position',[700 0 0],'Length',3,'Width',2,'Height',1.6);
Расположите велосипед дальше в будущем.
bicycle = actor(scenario,'Position',[706 376 0]','Length',2,'Width',0.45,'Height',1.5);
Постройте сценарий.
plot(scenario,'Centerline','on','RoadCenters','on'); title('Scenario');
Отобразите положения агента и профили.
poses = actorPoses(scenario)
poses=2×7 struct
ActorID
Position
Velocity
Roll
Pitch
Yaw
AngularVelocity
profiles = actorProfiles(scenario)
profiles=2×9 struct
ActorID
ClassID
Length
Width
Height
OriginOffset
RCSPattern
RCSAzimuthAngles
RCSElevationAngles
scenario
— Ведущий сценарийdrivingScenario
объектВедущий сценарий, заданный как drivingScenario
объект.
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
vehicle('Length',2.2,'Width',0.6,'Height',1.5)
создает транспортное средство с размерностями мотоцикла. Модули исчисляются в метрах.'ClassID'
— Идентификатор классификации
(значение по умолчанию) | неотрицательное целое числоИдентификатор классификации агента, заданного как разделенная запятой пара, состоящая из 'ClassID'
и неотрицательное целое число.
Задайте ClassID
значения, чтобы группироваться агенты, которые имеют подобные размерности, шаблоны радарного поперечного сечения (RCS) или другие свойства. Как лучшая практика, перед добавляющими агентами к drivingScenario
возразите, определите систему классификации агента, которую вы хотите использовать. Затем при создании агентов задайте ClassID
пара "имя-значение", чтобы установить идентификаторы классификации согласно схеме.
Предположим, что вы хотите создать сценарий, содержащий этих агентов:
Два автомобиля, один из которых является автомобилем, оборудованным датчиком
Грузовик
Велосипед
Код показывает демонстрационную систему классификации для этого сценария, где 1
относится к автомобилям, 2
относится к грузовикам и 3
относится к велосипедам. Автомобили имеют свойства транспортного средства по умолчанию. Грузовик и велосипед имеют размерности типичного грузовика и велосипеда, соответственно.
scenario = drivingScenario; ego = vehicle(scenario,'ClassID',1); car = vehicle(scenario,'ClassID',1); truck = vehicle(scenario,'ClassID',2,'Length',8.2,'Width',2.5,'Height',3.5); bicycle = actor(scenario,'ClassID',3,'Length',1.7,'Width',0.45,'Height',1.7);
ClassID
по умолчанию из
0
резервируется для объекта неизвестного или неприсвоенного класса. Если вы планируете импортировать drivingScenario
объекты в приложение Driving Scenario Designer, не оставляйте ClassID
свойство набора агентов к 0
. Приложение не распознает ClassID
из 0
для агентов и возвращает ошибку. Вместо этого установите ClassID
значения агентов согласно системе классификации агента используются в приложении.
ClassID | ClassName |
---|---|
1
| Автомобиль |
2
| Грузовик |
3
| Велосипед |
4
| Пешеход |
5
| Барьер |
'Position'
— Позиция центра транспортного средства
(значение по умолчанию) | [x
y
z] вектор с действительным знакомПозиция вращательного центра транспортного средства, заданного как разделенная запятой пара, состоящая из 'Position'
и [x
y
z] вектор с действительным знаком.
Вращательный центр транспортного средства является средней точкой своей задней оси. Транспортное средство расширяет назад расстоянием, равным заднему нависающему краю. Транспортное средство расширяет вперед расстояние, равное сумме колесной базы и прямого нависающего края. Модули исчисляются в метрах.
Пример: [10;50;0]
'Velocity'
— Скорость центра транспортного средства
(значение по умолчанию) | [v x
v y
v z] вектор с действительным знакомСкорость (v) транспортного средства центрируется в x - y - и z - направления, заданные как разделенная запятой пара, состоящая из 'Velocity'
и [v x
v y
v z] вектор с действительным знаком. 'Position'
пара "имя-значение" задает центр транспортного средства. Модули исчисляются в метрах в секунду.
Пример: [-4;7;10]
'Yaw'
— Угол отклонения от курса транспортного средства
(значение по умолчанию) | действительный скалярУгол отклонения от курса транспортного средства, заданного как разделенная запятой пара, состоящая из 'Yaw'
и действительный скаляр. Yaw является углом вращения транспортного средства вокруг z - ось и положителен в направлении по часовой стрелке. Угловые значения перенесены к области значений [–180, 180]. Модули в градусах.
Пример: -0.4
'Pitch'
— Передайте угол транспортного средства
(значение по умолчанию) | действительный скалярПередайте угол транспортного средства, заданного как разделенная запятой пара, состоящая из 'Pitch'
и действительный скаляр. Pitch является углом вращения транспортного средства вокруг y - ось и положителен в направлении по часовой стрелке. Угловые значения перенесены к области значений [–180, 180]. Модули в градусах.
Пример: 5.8
'Roll'
— Угол вращения транспортного средства
(значение по умолчанию) | действительный скалярУгол вращения транспортного средства, заданного как разделенная запятой пара, состоящая из 'Roll'
и действительный скаляр. Roll является углом вращения транспортного средства вокруг x - ось и положителен в направлении по часовой стрелке. Угловые значения перенесены к области значений [–180, 180]. Модули в градусах.
Пример: -10
'AngularVelocity'
— Скорость вращения транспортного средства
(значение по умолчанию) | [ω x
ω y
ω z] вектор с действительным знакомСкорость вращения (ω) транспортного средства, в мировых координатах, заданных как разделенная запятой пара, состоящая из 'AngularVelocity'
и [ω x
ω y
ω z] вектор с действительным знаком. Модули в градусах в секунду.
Пример: [20 40 20]
'Length'
— Длина транспортного средства
(значение по умолчанию) | положительный действительный скалярДлина транспортного средства, заданного как разделенная запятой пара, состоящая из 'Length'
и положительный действительный скаляр. Модули исчисляются в метрах.
Пример: 5.5
'Width'
— Ширина транспортного средства
(значение по умолчанию) | положительный действительный скалярШирина транспортного средства, заданного как разделенная запятой пара, состоящая из 'Width'
и положительный действительный скаляр. Модули исчисляются в метрах.
Пример: 2.0
'Height'
— Высота транспортного средства
(значение по умолчанию) | положительный действительный скалярВысота транспортного средства, заданного как разделенная запятой пара, состоящая из 'Height'
и положительный действительный скаляр. Модули исчисляются в метрах.
Пример: 2.1
'RCSPattern'
— Радарный шаблон поперечного сечения транспортного средства
(значение по умолчанию) | Q-by-P матрица с действительным знакомШаблон радарного поперечного сечения (RCS) транспортного средства, заданного как разделенная запятой пара, состоящая из 'RCSPattern'
и Q-by-P матрица с действительным знаком. RCS является функцией азимута и углов вертикального изменения, где:
Q является количеством углов вертикального изменения, заданных 'RCSElevationAngles'
пара "имя-значение".
P является количеством углов азимута, заданных 'RCSAzimuthAngles'
пара "имя-значение".
Модули находятся в децибелах на квадратный метр (dBsm).
Пример: 5.8
'RCSAzimuthAngles'
— Углы азимута шаблона транспортного средства RCS
(значение по умолчанию) | P - элемент вектор с действительным знакомУглы азимута шаблона транспортного средства RCS, заданного как разделенная запятой пара, состоящая из 'RCSAzimuthAngles'
и P - элемент вектор с действительным знаком. P является количеством углов азимута. Значения находятся в области значений [-180 °, 180 °].
Каждый элемент RCSAzimuthAngles
задает угол азимута соответствующего столбца 'RCSPattern'
пара "имя-значение". Модули в градусах.
Пример: [-90:90]
'RCSElevationAngles'
— Углы вертикального изменения шаблона транспортного средства RCS
(значение по умолчанию) | Q - элемент вектор с действительным знакомУглы вертикального изменения шаблона транспортного средства RCS, заданного как разделенная запятой пара, состоящая из 'RCSElevationAngles'
и Q - элемент вектор с действительным знаком. Q является количеством углов вертикального изменения. Значения находятся в области значений [-90 °, 90 °].
Каждый элемент RCSElevationAngles
задает угол вертикального изменения соответствующей строки 'RCSPattern'
пара "имя-значение". Модули в градусах.
Пример: [0:90]
'FrontOverhang'
— Передний нависающий край транспортного средства
(значение по умолчанию) | действительный скалярПередний нависающий край транспортного средства, заданного как разделенная запятой пара, состоящая из 'FrontOverhang'
и действительный скаляр. Передний нависающий край является расстоянием, которое транспортное средство расширяет вне передней оси. Если транспортное средство не расширяет мимо передней оси, то передний нависающий край отрицателен. Модули исчисляются в метрах.
Пример: 0.37
'RearOverhang'
— Задний нависающий край транспортного средства
(значение по умолчанию) | действительный скалярЗадний нависающий край транспортного средства, заданного как разделенная запятой пара, состоящая из 'RearOverhang'
и действительный скаляр. Задний нависающий край является расстоянием, которое транспортное средство расширяет вне задней оси. Если транспортное средство не расширяет мимо задней оси, то задний нависающий край отрицателен. Отрицательный задний нависающий край распространен в грузовиках полуприцепа, где такси грузовика не нависает над задним колесом. Модули исчисляются в метрах.
Пример: 0.32
'Wheelbase'
— Расстояние между осями транспортного средства
(значение по умолчанию) | положительный действительный скалярРасстояние между передними и задними осями транспортного средства, заданного как разделенная запятой пара, состоящая из 'Wheelbase'
и положительный действительный скаляр. Модули исчисляются в метрах.
Пример: 1.51
vc
— Ведущее транспортное средство сценарияVehicle
объектВедущее транспортное средство сценария, возвращенное как Vehicle
объект, принадлежащий ведущему сценарию, задан в scenario
.
Можно изменить 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
объекты, набор соответствующие показанные свойства.
Классификация агентов | Объект агента | Свойства агента | ||||||
---|---|---|---|---|---|---|---|---|
Length | Width | Height | FrontOverhang | RearOverhang | Wheelbase | RCSPattern | ||
Пешеход | Actor | 0,24 м | 0,45 м | 1,7 м | Нет данных | Нет данных | Нет данных | – 8 dBsm |
Автомобиль | Vehicle | 4,7 м | 1,8 м | 1,4 м | 0,9 м | 1,0 м | 2,8 м | 10 dBsm |
Мотоцикл | Vehicle | 2,2 м | 0,6 м | 1,5 м | 0,37 м | 0,32 м | 1,51 м | 0 dBsm |
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.