exponenta event banner

RoadGroup

Технические требования к хранилищу для дорожной развязки или перекрестка

Описание

RoadGroup В объекте хранятся спецификации сегментов дорог, которые объединяются для формирования развязки или перекрестка дороги.

Создание

Создание RoadGroup объект, используйте driving.scenario.RoadGroup функция создания. Затем создайте развязку или пересечение дороги, выполнив следующие действия.

  1. Определите сегменты дороги и добавьте их в RoadGroup с помощью road функция.

  2. Объединение сегментов дороги с образованием перекрестка или перекрестка и добавление их в сценарий движения с помощью roadGroup функция.

Описание

rg = driving.scenario.RoadGroup создает RoadGroup объект со свойствами Name и Roads.

пример

rg = driving.scenario.RoadGroup('Name',name) дополнительно указывает имя, name для дорожной развязки, где name - вектор символов или строковый скаляр. name устанавливает Name собственность.

Свойства

развернуть все

Это свойство доступно только для чтения.

Имя дорожной развязки или перекрестка, хранящееся в виде строкового скаляра. name аргумент задает это значение свойства.

Пример: driving.scenario.RoadGroup('Name','junction1') создает RoadGroup объект с Name имущество "junction1".

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

Это свойство доступно только для чтения.

Спецификации сегментов дорог в группе дорог, хранящиеся в виде массива ячеек конструкций. Каждая структура содержит эти поля, и их значения устанавливаются road функция:

ОбластьСтоимость
Width

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

LanesA lanespec объект, задающий свойства полос движения на дороге.
Name

Строковый скаляр, указывающий имя дороги.

Centers

Матрица N-by-2 или N-by-3 вещественных значений, задающая центры дороги. N - количество центров на дороге.

BankAngle

N-элементный вектор вещественных значений, задающий банковские значения для дороги. N - количество центров на дороге.

Типы данных: struct

Примеры

свернуть все

Трёхсторонний перекрёсток - это Y-перекрёсток, в котором две смежные дороги пересекают третью дорогу под тупым углом, как показано на этом рисунке. Для соединения трех дорог необходимо создать Y-развязку путем добавления трех сегментов дороги.

Добавить три дороги к сценарию вождения

Создайте пустой сценарий управления.

scenario = drivingScenario;

Укажите количество полос и ширину каждой полосы на дорогах.

ls = lanespec(2,'Width',5);

Определите центры дорог для трех дорог и добавьте их в сценарий вождения. Первая дорога диагонально ориентирована влево от сценарного полотна, вторая дорога диагонально ориентирована вправо от сценарного полотна, а третья дорога ориентирована вертикально.

% Add the first road
roadCenters = [-20 0; 6 0];
road(scenario,roadCenters,'Name','Road 1','Lanes',ls);

% Add the second road
roadCenters = [23 7; 50 33];
road(scenario,roadCenters,'Name','Road 2','Lanes',ls);

% Add the third road
roadCenters = [23 -7; 50 -33];
road(scenario,roadCenters,'Name','Road 3','Lanes',ls);

Постройте график сценария.

figure
plot(scenario)

Figure contains an axes. The axes contains 5 objects of type patch, line.

Создание Y-образной развязки для соединения дорог

Создать RoadGroup объект. Задайте ширину для каждого сегмента дороги, образующего Y-образное соединение.

rg = driving.scenario.RoadGroup('Name','Y-Junction');
roadWidth = 10;

Укажите центры дорог для трех сегментов дороги и добавьте эти сегменты дороги в RoadGroup с помощью road функция. Эти сегменты дороги пересекаются друг с другом.

% Add the first road segment
roadCenters = [23 7; 14 1; 6 0];
road(rg,roadCenters,roadWidth,'Name','Segment 1');

% Add the second road segment
roadCenters = [23 -7; 14 -1; 6 0];
road(rg,roadCenters,roadWidth,'Name','Segment 2');

% Add the third road segment
roadCenters = [23 7; 21 4; 21 -4; 23 -7];
road(rg,roadCenters,roadWidth,'Name','Segment 3');

Добавить Y-образное соединение в сценарий управления

Добавление сегментов дороги, хранящихся в RoadGroup объект к управляющему сценарию с помощью roadGroup функция. Сегменты дороги образуют Y-образную развязку, которая соединяет три дороги в сценарии вождения.

roadGroup(scenario,rg);

Figure contains an axes. The axes contains 3 objects of type patch, line.

См. также

Объекты

Функции

Представлен в R2021a