vehicle

Добавить транспортное средство в сценарий вождения

Описание

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

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

пример

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

Примечание

Можно сконфигурировать транспортные средства в сценарии вождения, чтобы они несли и деспотичились, а затем импортировать связанную 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');

Figure contains an axes. The axes with title Scenario contains 1219 objects of type patch, line.

Отображение положений и профилей актёра.

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

Figure contains an axes and an object of type uipanel. The axes contains 9 objects of type patch, line.

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

свернуть все

Сценарий вождения, заданный как drivingScenario объект.

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

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

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

Классификационный идентификатор актёра, заданный как разделенная разделенными запятой парами, состоящая из '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','Vehicle1'

Пример: "Name","Vehicle1"

Типы данных: char | string

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

Задайте этот аргумент пары "имя-значение", чтобы добавить или сделать транспортное средство появившимся в сценарии вождения в указанное время во время симуляции.

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

  • Чтобы породить транспортное средство несколько раз, задайте время входа в качестве вектора.

    • Расположите элементы вектора в порядке возрастания.

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

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

  • Каждое значение времени входа должно быть меньше, чем время остановки сценария. Можно задать время остановки для сценария путем определения значения для 'StopTime' свойство drivingScenario объект.

Пример: 'EntryTime',2

Пример: 'EntryTime',[2 4]

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

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

Задайте этот аргумент пары "имя-значение", чтобы удалить или заставить транспортное средство исчезнуть из сценария в заданное время во время симуляции.

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

  • Чтобы отключить транспортное средство несколько раз, задайте время выхода в качестве вектора.

    • Расположите элементы вектора в порядке возрастания.

    • Длина вектора должна совпадать с длиной временного вектора входа.

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

  • Каждое значение времени выхода должно быть меньше, чем время остановки сценария. Можно задать время остановки для сценария путем определения значения для 'StopTime' свойство drivingScenario объект.

Пример: 'ExitTime',3

Пример: 'ExitTime',[3 6]

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Отобразите цвет транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из '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' и [x y z] вектор с реальным значением .

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

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

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

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

Угол рыскания транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из 'Yaw' и настоящий скаляр. Yaw - угол поворота транспортного средства вокруг оси z. Рыскание является по часовой стрелке-положительным при взгляде в прямом направлении оси, которая указывает вверх от земли. Поэтому при просмотре транспортных средств сверху вниз, например, на графике птичьего глаза, рыскание против часовой стрелки-положительно. Значения углов заключаются в область значений [-180, 180]. Модули указаны в степенях.

Пример: -0.4

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

Пример: 5.8

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

Пример: -10

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

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

Длина транспортного средства, заданная как разделенная разделенными запятой парами, состоящая из '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' и положительный действительный скаляр. Модули измерения указаны в метрах.

Пример: 2.0

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

Пример: 2.1

Расширенный mesh объекта, заданная как extendedObjectMesh объект.

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

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

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

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

Пример: 5.8

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

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

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

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

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

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

Передний свес транспортного средства, заданный как разделенная разделенными запятой парами, состоящая из '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' и настоящий скаляр. Задний свес - это расстояние, на которое транспортное средство выходит за пределы задней оси. Если транспортное средство не проходит мимо задней оси, то задний свес отрицателен. Отрицательный задний свес распространён в полуприцепах, где кабина грузовика не навешивает заднее колесо. Модули измерения указаны в метрах.

В 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' и положительный действительный скаляр. Модули измерения указаны в метрах.

В 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

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

свернуть все

Сценарий транспортного средства вождения, возвращенный как 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 задайте соответствующие свойства, показанные на рисунке.

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

Введенный в R2017a