vehicle

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

Описание

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

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

пример

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

Примечание

Можно сконфигурировать транспортные средства в ведущем сценарии, чтобы метать икру и despawn, и затем импортировать связанный drivingScenario объект в приложение Driving Scenario Designer. Приложение считает первое транспортное средство созданным в ведущем сценарии, чтобы быть автомобилем, оборудованным датчиком и не позволяет автомобилю, оборудованному датчиком или метать икру или despawn в сценарии.

Примеры

свернуть все

Создайте ведущий сценарий, содержащий кривую дорогу, две дороги подряд и двух агентов: автомобиль и велосипед. Оба агента проходят дорога в течение 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);

Добавьте дорогу 2D маршрута к сценарию.

roadCenters = [0 1 0; 53 1 0];
laneSpecification = lanespec([1 1]);
road(scenario,roadCenters,'Lanes',laneSpecification);

Добавьте другую дорогу, которая пересекает первую дорогу под прямым углом, чтобы сформировать T-форму.

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]

Добавьте автомобиль, оборудованный датчиком в сценарий и задайте его waypoints. Установите скорость автомобиля, оборудованного датчиком на 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)

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

nonEgovehicle1 = vehicle(scenario,'ClassID',1, ...
                'Position',[22 30 0],'EntryTime',[0.2 1.4],'ExitTime',[1.0 2.0]);

Задайте waypoints для неавтомобиля, оборудованного датчиком. Установите скорость неавтомобиля, оборудованного датчиком на 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);

Задайте waypoints для второго неавтомобиля, оборудованного датчиком. Установите скорость транспортного средства на 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);

Постройте сценарий и запустите симуляцию. Наблюдайте, как икра неавтомобилей, оборудованных датчиком и despawn в сценарии, в то время как симуляция запускается.

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 значения агентов согласно системе классификации агента используются в приложении.

ClassIDClassName
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

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

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

  • К despawn транспортное средство только однажды, задайте выходное время как скаляр.

  • К despawn транспортное средство многократно, задайте выходное время как вектор.

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

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

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

  • Каждая выходная временная стоимость должна быть меньше времени остановки сценария. Можно установить время остановки для сценария путем определения значения для '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] вектор с действительным знаком. 'Position' пара "имя-значение" задает центр транспортного средства. Модули исчисляются в метрах в секунду.

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

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

Пример: -0.4

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

Пример: 5.8

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

Пример: -10

Скорость вращения (ω) транспортного средства, в мировых координатах в виде разделенной запятой пары, состоящей из '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' пара "имя-значение".

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

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

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

trajectory

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

smoothTrajectory

Создайте сглаженного, ограниченного толчками агента или траекторию транспортного средства в ведущем сценарии

chasePlot

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

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

actorPoses

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

actorProfiles

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

targetOutlines

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

targetPoses

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

driving.scenario.targetsToEgo

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

driving.scenario.targetsToScenario

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

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

roadBoundaries

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

driving.scenario.roadBoundariesToEgo

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

currentLane

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

laneBoundaries

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

laneMarkingVertices

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

roadMesh

Поймайте в сети представление самых близких дорог агента в ведущем сценарии.

Больше о

свернуть все

Агент и положения транспортного средства и размерности

В ведущих сценариях 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 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