Добавить транспортное средство в сценарий вождения
добавляет vc
= vehicle(scenario
)Vehicle
объект, vc
, к сценарию вождения, scenario
. У транспортное средство есть значения свойств по умолчанию.
Vehicles являются специализированным типом кубоидного (коробчатого) объекта актёра, который имеет четыре колеса. Для получения дополнительной информации о том, как определяются транспортные средства, смотрите Позиции актёра и транспортного средства и Размерности.
устанавливает свойства транспортного средства с помощью одной или нескольких пар "имя-значение". Для примера можно задать положение, скорость, размерности, ориентацию и колесную базу транспортного средства. Можно также задать время для того, чтобы транспортное средство нерест или despawn в сценарии.vc
= vehicle(scenario
,Name,Value
)
Примечание
Можно сконфигурировать транспортные средства в сценарии вождения, чтобы они несли и деспотичились, а затем импортировать связанную drivingScenario
объект в Driving Scenario Designer приложение. Приложение рассматривает первое транспортное средство, созданное в сценарии вождения, как автомобиль , оборудованный датчиком и не позволяет автомобилю , оборудованному датчиком нереститься или загориться в сценарии.
Создайте сценарий вождения, содержащий изогнутую дорогу, две прямые дороги и двух актёров: автомобиль и велосипед. Оба актёра двигаются по дороге на 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)
ans = Road with properties: Name: "" RoadID: 2 RoadCenters: [2x3 double] RoadWidth: 6 BankAngle: [2x1 double]
roadcenters = [400 400 0; 0 0 0]; road(scenario,roadcenters)
ans = Road with properties: Name: "" RoadID: 3 RoadCenters: [2x3 double] RoadWidth: 6 BankAngle: [2x1 double]
Получите контуры дорог.
rbdry = roadBoundaries(scenario);
Добавьте в сценарий автомобиль и велосипед. Поместите автомобиль в начале первой прямой дороги.
car = vehicle(scenario,'ClassID',1,'Position',[700 0 0], ... 'Length',3,'Width',2,'Height',1.6);
Расположите велосипед дальше по дороге.
bicycle = actor(scenario,'ClassID',3,'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×1 struct array with fields:
ActorID
Position
Velocity
Roll
Pitch
Yaw
AngularVelocity
profiles = actorProfiles(scenario)
profiles=2×1 struct array with fields:
ActorID
ClassID
Length
Width
Height
OriginOffset
MeshVertices
MeshFaces
RCSPattern
RCSAzimuthAngles
RCSElevationAngles
Создайте сценарий вождения. Установите время остановки для сценария равным 3 секундам.
scenario = drivingScenario('StopTime',3);
Добавьте к сценарию двухполосную дорогу.
roadCenters = [0 1 0; 53 1 0];
laneSpecification = lanespec([1 1]);
road(scenario,roadCenters,'Lanes',laneSpecification);
Добавьте другую дорогу, которая пересекает первую дорогу под прямым углом, чтобы сформировать Т-образную форму.
roadCenters = [20.3 38.4 0; 20 3 0];
laneSpecification = lanespec(2);
road(scenario,roadCenters,'Lanes',laneSpecification)
ans = Road with properties: Name: "" RoadID: 2 RoadCenters: [2x3 double] RoadWidth: 7.3500 BankAngle: [2x1 double]
Добавьте автомобиля , оборудованного датчиком к сценарию и определите его путевые точки. Установите скорость автомобиля , оборудованного датчиком 20 м/с и сгенерируйте траектории для автомобиля , оборудованного датчиком.
egoVehicle = vehicle(scenario,'ClassID',1, ... 'Position',[1.5 2.5 0]); waypoints = [2 3 0; 13 3 0; 21 3 0; 31 3 0; 43 3 0; 47 3 0]; speed = 20; smoothTrajectory(egoVehicle,waypoints,speed)
Добавьте неавтомобиля , оборудованного датчиком к сценарию. Установите неавтомобиль , оборудованный датчиком на нерест и демпфирование два раза во время симуляции путем определения векторов для времени входа и времени выхода. Заметьте, что каждое значение времени входа меньше соответствующего значения времени выхода.
nonEgovehicle1 = vehicle(scenario,'ClassID',1, ... 'Position',[22 30 0],'EntryTime',[0.2 1.4],'ExitTime',[1.0 2.0]);
Задайте путевые точки для неавтомобиля , оборудованного датчиком. Установите скорость неавтомобиля , оборудованного датчиком 30 м/с и сгенерируйте ее траектории.
waypoints = [22 35 0; 22 23 0; 22 13 0; 22 7 0; 18 -0.3 0; 12 -0.8 0; 5 -0.8 0]; speed = 30; smoothTrajectory(nonEgovehicle1,waypoints,speed)
Добавьте другой неавтомобиль , оборудованный датчиком к сценарию. Установите второй неавтомобиль , оборудованный датчиком на нерест один раз во время симуляции, указав время входа в качестве положительной скалярной величины. Поскольку вы не задаете время выхода, это транспортное средство останется в сценарии до окончания сценария.
nonEgovehicle2 = vehicle(scenario,'ClassID',1, ... 'Position',[48 -1 0],'EntryTime',2);
Задайте путевые точки для второго неавтомобиля , оборудованного датчиком. Установите скорость транспортного средства равную 50 м/с и сгенерируйте его траектории.
waypoints = [48 -1 0; 42 -1 0; 28 -1 0; 16 -1 0; 12 -1 0]; speed = 50; smoothTrajectory(nonEgovehicle2,waypoints,speed)
Создайте пользовательское окно рисунка, чтобы построить график сценария.
fig = figure; set(fig,'Position',[0 0 600 600]) movegui(fig,'center') hViewPnl = uipanel(fig,'Position',[0 0 1 1],'Title','Vehicle Spawn and Despawn'); hPlt = axes(hViewPnl);
Постройте график сценария и запустите симуляцию. Наблюдайте, как неавтомобили , оборудованные датчиком нерест и деспаут в сценарии во время симуляции.
plot(scenario,'Waypoints','on','Parent',hPlt) while advance(scenario) pause(0.1) end
scenario
- Сценарий вожденияdrivingScenario
объектСценарий вождения, заданный как drivingScenario
объект.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
vehicle('Length',2.2,'Width',0.6,'Height',1.5)
создает транспортное средство, которое имеет размерности мотоцикла. Модули измерения указаны в метрах.'ClassID'
- Идентификатор классификации0
(по умолчанию) | неотрицательное целое числоКлассификационный идентификатор актёра, заданный как разделенная разделенными запятой парами, состоящая из 'ClassID'
и неотрицательное целое число.
Задайте ClassID
значения для группирования актёров, которые имеют одинаковые размерности, шаблоны поперечного сечения (RCS) или другие свойства. Как лучшая практика, перед добавлением актёров в drivingScenario
объект, определите схему классификации актёра, которую вы хотите использовать. Затем при создании актёров задайте ClassID
Пара "имя-значение" для установки идентификаторов классификации согласно схеме классификации актёра.
Предположим, что вы хотите создать сценарий, содержащий следующих актёров:
Две машины, одна из которых автомобилей , оборудованных датчиком
Грузовик
Велосипед
Джерси барьер вдоль дороги
Код показывает пример схемы классификации для этого сценария, где 1
относится к автомобилям, 2
относится к грузовикам, 3
относится к велосипедам и 5
относится к барьерам для джерси. Автомобили имеют свойства транспортного средства по умолчанию. Грузовик и велосипед имеют размерности типичных грузовика и велосипеда, соответственно.
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); mainRoad = road(scenario,[0 0 0;10 0 0]); barrier(scenario,mainRoad,'ClassID',5);
Значение по умолчанию ClassID
от 0
зарезервирован для объекта неизвестного или неназначенного класса. Если вы планируете импортировать drivingScenario
объекты в Driving Scenario Designer приложение, не покидайте ClassID
свойство актёров установлено в 0
. Приложение не распознает ClassID
от 0
для актёров и возвращает ошибку. Вместо этого задайте ClassID
значения актёров согласно схеме классификации актёра, используемой в приложении.
ClassID | Имя класса |
---|---|
1 | Автомобиль |
2 | Грузовик |
3 | Велосипед |
4 | Пешеход |
5 | Джерси-Барьер |
6 | Поручень |
'Name'
- Имя транспортного средства""
(по умолчанию) | символьный вектор | строковый скалярИмя транспортного средства, заданное как разделенная разделенными запятой парами, состоящая из 'Name'
и вектор символов или строковый скаляр.
Пример: 'Name','Vehicle1'
Пример: "Name","Vehicle1"
Типы данных: char
| string
'EntryTime'
- Время въезда транспортного средства на нерест0
(по умолчанию) | положительная скалярная величинаВремя входа транспортного средства в нерест в сценарии вождения, заданное как разделенная разделенными запятой парами, состоящая из 'EntryTime'
и положительная скалярная величина или вектор положительных значений. Модули указаны в секундах, начиная со времени начала сценария.
Задайте этот аргумент пары "имя-значение", чтобы добавить или сделать транспортное средство появившимся в сценарии вождения в указанное время во время симуляции.
Чтобы породить транспортное средство только один раз, задайте время входа как скаляр.
Чтобы породить транспортное средство несколько раз, задайте время входа в качестве вектора.
Расположите элементы вектора в порядке возрастания.
Длина вектора должна совпадать с длиной выходного временного вектора.
Если у транспортного средства есть связанное время выхода, то каждое значение времени входа должно быть меньше соответствующего значения времени выхода.
Каждое значение времени входа должно быть меньше, чем время остановки сценария. Можно задать время остановки для сценария путем определения значения для 'StopTime'
свойство drivingScenario
объект.
Пример: 'EntryTime',2
Пример: 'EntryTime',[2 4]
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'ExitTime'
- Время выхода автомобиля в деспотInf
(по умолчанию) | положительная скалярная величинаВремя выхода транспортного средства из сценария вождения, заданное как разделенная запятой пара, состоящее из 'ExitTime'
и положительная скалярная величина или вектор положительных значений. Модули указаны в секундах, начиная со времени начала сценария.
Задайте этот аргумент пары "имя-значение", чтобы удалить или заставить транспортное средство исчезнуть из сценария в заданное время во время симуляции.
Чтобы депонировать транспортное средство только один раз, задайте время выхода как скаляр.
Чтобы отключить транспортное средство несколько раз, задайте время выхода в качестве вектора.
Расположите элементы вектора в порядке возрастания.
Длина вектора должна совпадать с длиной временного вектора входа.
Если транспортное средство имеет связанное время входа, то каждое значение времени выхода должно быть больше соответствующего значения времени входа.
Каждое значение времени выхода должно быть меньше, чем время остановки сценария. Можно задать время остановки для сценария путем определения значения для 'StopTime'
свойство drivingScenario
объект.
Пример: 'ExitTime',3
Пример: 'ExitTime',[3 6]
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
'PlotColor'
- отображение цвета транспортного средстваОтобразите цвет транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'PlotColor'
и триплет RGB, шестнадцатеричный цветовой код, название цвета или короткое название цвета.
Это транспортное средство появляется в заданном цвете во всех визуализациях программного сценария, включая plot
функция, chasePlot
функции и функции построения графика birdsEyePlot
объекты. Если вы импортируете сценарий в приложение Driving Scenario Designer, то транспортное средство появится в этом цвете во всех визуализациях приложения. Если вы импортируете сценарий в Simulink®, затем транспортное средство появляется в этом цвете в Bird's-Eye Scope.
Если вы не задаете цвет для транспортного средства, функция присваивает цвет на основе порядка цвета по умолчанию Axes
объекты. Для получения дополнительной информации смотрите ColorOrder
свойство для Axes
объекты.
Для пользовательского цвета укажите триплет RGB или шестнадцатеричный код цвета.
Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]
; для примера, [0.4 0.6 0.7]
.
Шестнадцатеричный код цвета - это вектор символов или строковый скаляр, который начинается с хэш-символа (#
), за которым следуют три или шесть шестнадцатеричных цифр, которые могут варьироваться от 0
на F
. Значения не зависят от регистра. Таким образом, цветовые коды '#FF8800'
, '#ff8800'
, '#F80'
, и '#f80'
являются эквивалентными.
Кроме того, вы можете задать имена некоторых простых цветов. В этой таблице перечислены именованные опции цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.
Название цвета | Краткое имя | Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|---|---|
'red' | 'r' | [1 0 0] | '#FF0000' | |
'green' | 'g' | [0 1 0] | '#00FF00' | |
'blue' | 'b' | [0 0 1] | '#0000FF' | |
'cyan' | 'c' | [0 1 1] | '#00FFFF' | |
'magenta' | 'm' | [1 0 1] | '#FF00FF' | |
'yellow' | 'y' | [1 1 0] | '#FFFF00' | |
'black' | 'k' | [0 0 0] | '#000000' | |
'white' | 'w' | [1 1 1] | '#FFFFFF' |
Вот триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию MATLAB® использует на многих типах графиков.
Триплет RGB | Шестнадцатеричный цветовой код | Внешность |
---|---|---|
[0 0.4470 0.7410] | '#0072BD' | |
[0.8500 0.3250 0.0980] | '#D95319' | |
[0.9290 0.6940 0.1250] | '#EDB120' | |
[0.4940 0.1840 0.5560] | '#7E2F8E' | |
[0.4660 0.6740 0.1880] | '#77AC30' | |
[0.3010 0.7450 0.9330] | '#4DBEEE' | |
[0.6350 0.0780 0.1840] | '#A2142F' |
'Position'
- Положение центра транспортного средства[0 0 0]
(по умолчанию) | вектор [x
y z] с реальным значением
Положение центра вращения транспортного средства, заданное как разделенная разделенными запятой парами, состоящая из 'Position'
и [x
y z] вектор с реальным значением
.
Центр вращения транспортного средства является средней точкой его задней оси. Транспортное средство простирается назад на расстояние, равное заднему свесу. Транспортное средство простирается вперед на расстояние, равное сумме колесной базы и переднего свеса. Модули измерения указаны в метрах.
Пример: [10;50;0]
'Velocity'
- Скорость центра транспортного средства[0 0 0]
(по умолчанию) | вектор [v x
v y v z] с реальным значением
Скорость (v) центра транспортного средства в x -, y - и z - направлениях, заданная как разделенная разделенными запятой парами, состоящая из 'Velocity'
и вектор [v x
v y v z] с реальным значением
. The 'Position' Пара "имя-значение" определяет центр транспортного средства. Модули указаны в метрах в секунду.
Пример: [-4;7;10]
'Yaw'
- Угол рыскания транспортного средства0
(по умолчанию) | действительный скалярУгол рыскания транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'Yaw'
и настоящий скаляр. Yaw - угол поворота транспортного средства вокруг оси z. Рыскание является по часовой стрелке-положительным при взгляде в прямом направлении оси, которая указывает вверх от земли. Поэтому при просмотре транспортных средств сверху вниз, например, на графике птичьего глаза, рыскание против часовой стрелки-положительно. Значения углов заключаются в область значений [-180, 180]. Модули указаны в степенях.
Пример: -0.4
'Pitch'
- Угол тангажа транспортного средства0
(по умолчанию) | действительный скалярУгол тангажа транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'Pitch'
и настоящий скаляр. Pitch - угол поворота транспортного средства вокруг оси y и по часовой стрелке-положительный при взгляде в прямом направлении оси. Значения углов заключаются в область значений [-180, 180]. Модули указаны в степенях.
Пример: 5.8
'Roll'
- Угол крена транспортного средства0
(по умолчанию) | действительный скалярУгол крена транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'Roll'
и настоящий скаляр. Roll - угол поворота транспортного средства вокруг оси x и по часовой стрелке-положительный при взгляде в прямом направлении оси. Значения углов заключаются в область значений [-180, 180]. Модули указаны в степенях.
Пример: -10
'AngularVelocity'
- Скорость вращения транспортного средства[0 0 0]
(по умолчанию) | вектор [ω x
ω y ω z] с реальным значением
Скорость вращения ( < reservedrangesplaceholder1 >) транспортного средства, в мировых координатах, задается как разделенная разделенными запятой парами, состоящая из 'AngularVelocity'
и вектор [ω x
ω y ω z] с реальным значением
. Модули указаны в степенях в секунду.
Пример: [20 40 20]
'Length'
- Длина транспортного средства4.7
(по умолчанию) | положительный действительный скалярДлина транспортного средства, заданная как разделенная разделенными запятой парами, состоящая из 'Length'
и положительный действительный скаляр. Модули измерения указаны в метрах.
В Vehicle
объекты, это уравнение определяет значения Length
, FrontOverhang
, Wheelbase
, и RearOverhang
свойства:
Length = FrontOverhang + Wheelbase + RearOverhang
Если вы обновляете Length
, RearOverhang
, или Wheelbase
свойство, для поддержания уравнения, Vehicle
объект увеличивает или уменьшает FrontOverhang
свойство и сохраняет другие свойства постоянными.
Если вы обновляете FrontOverhang
свойство, для поддержания этого уравнения, Vehicle
объект увеличивает или уменьшает Wheelbase
свойство и сохраняет другие свойства постоянными.
При установке обоих FrontOverhang
и RearOverhang
свойства, чтобы предотвратить Vehicle
объект от переопределения FrontOverhang
значение, установите RearOverhang
во-первых, далее следуют FrontOverhang
. Объект вычисляет новую Wheelbase
значение свойства автоматически.
Пример: 5.5
'Width'
- Ширина транспортного средства1.8
(по умолчанию) | положительный действительный скалярШирина транспортного средства, заданная как разделенная разделенными запятой парами, состоящая из 'Width'
и положительный действительный скаляр. Модули измерения указаны в метрах.
Пример: 2.0
'Height'
- Высота транспортного средства1.4
(по умолчанию) | положительный действительный скалярВысота транспортного средства в виде разделенной разделенными запятой парами, состоящей из 'Height'
и положительный действительный скаляр. Модули измерения указаны в метрах.
Пример: 2.1
'Mesh'
- Расширенный mesh объектаextendedObjectMesh
объектРасширенный mesh объекта, заданная как extendedObjectMesh
объект.
'RCSPattern'
- Радарный рисунок поперечного сечения транспортного средства[10 10; 10 10]
(по умолчанию) | Q -by P матрица с реальным значениемРадиолокационный шаблон поперечного сечения (RCS) транспортного средства, заданное как разделенная запятой пара, состоящее из 'RCSPattern'
и Q -by P вещественной матрицей. RCS является функцией азимута и углов возвышения, где:
Q - количество углов возвышения, заданное 'RCSElevationAngles'
Пара "имя-значение".
P - количество азимутальных углов, заданное 'RCSAzimuthAngles'
Пара "имя-значение".
Модули указаны в децибелах на квадратный метр (дБсм).
Пример: 5.8
'RCSAzimuthAngles'
- Азимутальные углы шаблона RCS транспортного средства[-180 180]
(по умолчанию) | P вектор с реальным значением -элементАзимутальные углы RCS шаблона транспортного средства, заданные как разделенная разделенными запятой парами, состоящая из 'RCSAzimuthAngles'
и P элемент с реальным значением. P - количество азимутальных углов. Значения находятся в области значений [-180 °, 180 °].
Каждый элемент RCSAzimuthAngles
определяет угол азимута соответствующего столбца 'RCSPattern'
Пара "имя-значение". Модули указаны в степенях.
Пример: [-90:90]
'RCSElevationAngles'
- Углы возвышения шаблона RCS транспортного средства[-90 90]
(по умолчанию) | Q вектор с реальным значением -элементУглы возвышения шаблона RCS транспортного средства, заданные как разделенная разделенными запятой парами, состоящая из 'RCSElevationAngles'
и Q элемент с реальным значением. Q - количество углов возвышения. Значения находятся в области значений [-90 °, 90 °].
Каждый элемент RCSElevationAngles
определяет угол возвышения соответствующей строки 'RCSPattern'
Пара "имя-значение". Модули указаны в степенях.
Пример: [0:90]
'FrontOverhang'
- Передний свес транспортного средства0.9
(по умолчанию) | действительный скалярПередний свес транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'FrontOverhang'
и настоящий скаляр. Передний свес - это расстояние, на которое транспортное средство выходит за пределы передней оси. Если транспортное средство не проходит мимо передней оси, то передний свес отрицателен. Модули измерения указаны в метрах.
В Vehicle
объекты, это уравнение определяет значения Length
, FrontOverhang
, Wheelbase
, и RearOverhang
свойства:
Length = FrontOverhang + Wheelbase + RearOverhang
Если вы обновляете Length
, RearOverhang
, или Wheelbase
свойство, для поддержания уравнения, Vehicle
объект увеличивает или уменьшает FrontOverhang
свойство и сохраняет другие свойства постоянными.
Если вы обновляете FrontOverhang
свойство, для поддержания этого уравнения, Vehicle
объект увеличивает или уменьшает Wheelbase
свойство и сохраняет другие свойства постоянными.
При установке обоих FrontOverhang
и RearOverhang
свойства, чтобы предотвратить Vehicle
объект от переопределения FrontOverhang
значение, установите RearOverhang
во-первых, далее следуют FrontOverhang
. Объект вычисляет новую Wheelbase
значение свойства автоматически.
Пример: 0.37
'RearOverhang'
- задний свес транспортного средства1.0
(по умолчанию) | действительный скалярЗадний свес транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'RearOverhang'
и настоящий скаляр. Задний свес - это расстояние, на которое транспортное средство выходит за пределы задней оси. Если транспортное средство не проходит мимо задней оси, то задний свес отрицателен. Отрицательный задний свес распространён в полуприцепах, где кабина грузовика не навешивает заднее колесо. Модули измерения указаны в метрах.
В Vehicle
объекты, это уравнение определяет значения Length
, FrontOverhang
, Wheelbase
, и RearOverhang
свойства:
Length = FrontOverhang + Wheelbase + RearOverhang
Если вы обновляете Length
, RearOverhang
, или Wheelbase
свойство, для поддержания уравнения, Vehicle
объект увеличивает или уменьшает FrontOverhang
свойство и сохраняет другие свойства постоянными.
Если вы обновляете FrontOverhang
свойство, для поддержания этого уравнения, Vehicle
объект увеличивает или уменьшает Wheelbase
свойство и сохраняет другие свойства постоянными.
При установке обоих FrontOverhang
и RearOverhang
свойства, чтобы предотвратить Vehicle
объект от переопределения FrontOverhang
значение, установите RearOverhang
во-первых, далее следуют FrontOverhang
. Объект вычисляет новую Wheelbase
значение свойства автоматически.
Пример: 0.32
'Wheelbase'
- Расстояние между осями транспортных средств2.8
(по умолчанию) | положительный действительный скалярРасстояние между передней и задней осями транспортного средства, заданное как разделенная разделенными запятой парами, состоящая из 'Wheelbase'
и положительный действительный скаляр. Модули измерения указаны в метрах.
В Vehicle
объекты, это уравнение определяет значения Length
, FrontOverhang
, Wheelbase
, и RearOverhang
свойства:
Length = FrontOverhang + Wheelbase + RearOverhang
Если вы обновляете Length
, RearOverhang
, или Wheelbase
свойство, для поддержания уравнения, Vehicle
объект увеличивает или уменьшает FrontOverhang
свойство и сохраняет другие свойства постоянными.
Если вы обновляете FrontOverhang
свойство, для поддержания этого уравнения, Vehicle
объект увеличивает или уменьшает Wheelbase
свойство и сохраняет другие свойства постоянными.
При установке обоих FrontOverhang
и RearOverhang
свойства, чтобы предотвратить Vehicle
объект от переопределения FrontOverhang
значение, установите RearOverhang
во-первых, далее следуют FrontOverhang
. Объект вычисляет новую Wheelbase
значение свойства автоматически.
Пример: 1.51
vc
- Вождение транспортного средства сценарияVehicle
объектСценарий транспортного средства вождения, возвращенный как Vehicle
объект, принадлежащий сценарию вождения, указанному в scenario
.
Можно изменить Vehicle
объект путем изменения значений его свойств. Имена свойства соответствуют аргументам пары "имя-значение", используемым для создания объекта.
Единственное свойство, которое вы не можете изменить ActorID
, которое является положительным целым числом, указывающим уникальный, заданный сценарием идентификатор транспортного средства.
Чтобы задать и визуализировать движение транспортного средства, используйте эти функции:
trajectory | Создайте траекторию актёра или транспортного средства в сценарии вождения |
smoothTrajectory | Создайте плавный, ограниченный рывком актёр или траекторию транспортного средства в сценарии вождения |
chasePlot | Эго-ориентированный проективный перспективный график |
Чтобы получить информацию о характеристиках транспортного средства, используйте следующие функции:
actorPoses | Положения, скорости и ориентации актёров в сценарии вождения |
actorProfiles | Физические и радиолокационные характеристики актёров в сценарии вождения |
targetOutlines | Контуры целей, просматриваемых актером |
targetPoses | Целевые положения и ориентации относителен автомобиль , оборудованный датчиком |
driving.scenario.targetsToEgo | Преобразуйте целевые положения актёра из мировых координат сценария в координаты автомобиля , оборудованного датчиком |
driving.scenario.targetsToScenario | Преобразуйте целевые положения актёра из координат автомобиль , оборудованный датчиком в мировые координаты сценария |
Чтобы получить информацию о дорогах и полосах, на которых находится транспортное средство, используйте следующие функции:
roadBoundaries | Получите контуры дорог |
driving.scenario.roadBoundariesToEgo | Преобразуйте контуры дороги в координаты автомобиль , оборудованный датчиком |
currentLane | Получите текущий канал актёра |
laneBoundaries | Получите контуры маршрута актёра |
laneMarkingVertices | Маркировка вершин и граней маршрута в сценарии вождения |
roadMesh | Mesh представление ближайших дорог актёра в сценарии вождения. |
В сценариях вождения actor является кубоидным (коробчатым) объектом с определенной длиной, шириной и высотой. Актёры также имеют радиолокационный шаблон поперечного сечения (RCS), заданный в dBsm, который можно уточнить, задав угловые координаты азимута и повышения. Положение актёра определяется как центр его нижней грани. Эта центральная точка используется как вращательный центр актёра, его точка контакта с землей и ее источник в локальной системе координат. В этой системе координат:
Ось X указывает вперед от актёра.
Ось Y указывает на левую сторону актёра.
Ось Z указывает вверх от земли.
Крен, тангаж и рыскание положительны по часовой стрелке при взгляде в прямом направлении X -, Y - и Z - осей, соответственно.
А vehicle - актёр, который перемещается на колесах. Транспортные средства обладают тремя дополнительными свойствами, которые регулируют размещение их передней и задней осей.
Wheelbase - Расстояние между передней и задней осями
Front overhang - Расстояние между передней частью транспортного средства и передней осью
Rear overhang - Расстояние между задней осью и задней частью транспортного средства
В отличие от других типов актёров, положение транспортного средства определяется точкой на земле, которая находится ниже центра его задней оси. Эта точка соответствует естественному центру вращения транспортного средства. Как и в случае с нетранспортными средствами, эта точка является источником в локальной системе координат транспортного средства, где:
Ось X указывает вперед от транспортного средства.
Ось Y указывает на левую сторону транспортного средства.
Ось Z указывает вверх от земли.
Крен, тангаж и рыскание положительны по часовой стрелке при взгляде в прямом направлении X -, Y - и Z - осей, соответственно.
В этой таблице представлен список общих действующих лиц и их размерностей. Чтобы задать эти значения в Actor
и Vehicle
задайте соответствующие свойства, показанные на рисунке.
Классификация актёров | Объект актёра | Свойства актёра | ||||||
---|---|---|---|---|---|---|---|---|
Length | Width | Height | FrontOverhang | RearOverhang | Wheelbase | RCSPattern | ||
Пешеход | Actor | 0,24 м | 0,45 м | 1,7 м | Н/Д | Н/Д | Н/Д | -8 дБсм |
Автомобиль | Vehicle | 4,7 м | 1,8 м | 1,4 м | 0,9 м | 1,0 м | 2,8 м | 10 дБсм |
Мотоцикл | Vehicle | 2,2 м | 0,6 м | 1,5 м | 0,37 м | 0,32 м | 1,51 м | 0 дБсм |
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.