Магистральный маршрут после с интеллектуальными транспортными средствами

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

1. Смоделируйте поведение целевых транспортных средств, чтобы динамически адаптировать их траектории для того, чтобы выполнить одно из следующих поведений: скоростное хранение, маршрут после, или изменение маршрута.

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

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

Введение

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

Этот пример основывается на Магистральном Маршруте После (Automated Driving Toolbox) пример, который демонстрирует маршрут после в присутствии целевых транспортных средств, которые следуют за предопределенными траекториями. Этот пример изменяет среду симуляции сценария Магистрального Маршрута После (Automated Driving Toolbox) пример путем добавления функциональностей, чтобы смоделировать и симулировать интеллектуальные целевые транспортные средства. Интеллектуальные целевые транспортные средства, добавленные к этому примеру, адаптируют свои траектории на основе поведения соседних транспортных средств и среды. В ответ маршрут после системы автоматически реагирует, чтобы гарантировать, что автомобиль, оборудованный датчиком остается в своем маршруте.

В этом примере вы достигаете симуляции уровня системы посредством интеграции с Нереальным Engine® от Epic Games®. 3D среда симуляции требует Windows® 64-битная платформа.

if ~ispc
    error(['Unreal simulation is only supported on Microsoft', char(174), ' Windows', char(174), '.']);
end

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

rng(0);

В остальной части примера вы будете:

  1. Исследуйте тестовую модель: Исследуйте функциональности в тестовой модели уровня системы, которую вы используете, чтобы оценить маршрут после с интеллектуальными целевыми транспортными средствами.

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

  3. Смоделируйте интеллектуальные целевые транспортные средства: Смоделируйте целевые транспортные средства в сценарии для трех различных поведений: скоростное хранение, маршрут после, и изменение маршрута.

  4. Симулируйте маршрут после с интеллектуальными целевыми транспортными средствами на прямой дороге: Симулируйте скоростное хранение, маршрут после, и поведения изменения маршрута целевого транспортного средства при тестировании маршрута, следующего прямая дорога.

  5. Симулируйте маршрут после с интеллектуальными целевыми транспортными средствами на кривой дороге: Симулируйте скоростное хранение, маршрут после, и поведения изменения маршрута целевого транспортного средства при тестировании маршрута, следующего кривая дорога.

  6. Тест с другими сценариями: Протестируйте модель с другими сценариями, доступными с этим примером.

Исследуйте тестовую модель

Чтобы исследовать тестовую модель, откройте рабочую копию файлов проекта в качестве примера. MATLAB® копирует файлы в папку в качестве примера так, чтобы можно было отредактировать их.

addpath(fullfile(matlabroot, 'toolbox', 'driving', 'drivingdemos'));
helperDrivingProjectSetup('HLFIntelligentVehicles.zip', 'workDir', pwd);

Откройте тестовую модель симуляции уровня системы для маршрута после приложения.

open_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench")

Тестовая модель содержит эти модули:

  1. Симуляция 3D Сценарий: Подсистема, которая задает дорогу, автомобиль, оборудованный датчиком, интеллектуальные целевые транспортные средства, камеру и радарные датчики, используемые для симуляции.

  2. Детектор Маркера маршрута: модель Algorithm, чтобы обнаружить контуры маршрута в системе координат, полученной датчиком камеры.

  3. Детектор транспортного средства: модель Algorithm, чтобы обнаружить, чтобы обнаружить транспортные средства в системе координат, полученной датчиком камеры.

  4. Прямое Cочетание датчиков Транспортного средства: модель Algorithm, которая плавит обнаружения транспортных средств перед автомобилем, оборудованным датчиком, которые были получены из радарных датчиков и видения.

  5. Маршрут После Логики Решения: модель Algorithm, которая задает ответвление, продольную логику решения и предоставляет информацию о центре маршрута и сопутствующую информацию MIO контроллеру.

  6. Маршрут После Контроллера: модель Algorithm, которая задает средства управления.

  7. Динамика аппарата: Задает модель динамики для автомобиля, оборудованного датчиком.

  8. Метрическая Оценка: Оценивает поведение уровня системы.

Детектор Маркера Лейна, Детектор Транспортного средства, Прямое Cочетание датчиков Транспортного средства, Лейн После Логики Решения, Лейн После Контроллера, Динамики аппарата и Метрических подсистем Оценки основаны на подсистемах, используемых в Хайвее Лейне После (Automated Driving Toolbox) (Automated Driving Toolbox). Если у вас есть лицензия на Simulink® Coder™ и Embedded Coder™, можно сгенерировать развертываемо-готовый встроенный код в реальном времени для Детектора Маркера Лейна, Детектора Транспортного средства, Прямого Cочетания датчиков Транспортного средства, Лейна После Логики Решения и Лейна После моделей Алгоритма регулятора. Этот пример фокусирует только на Симуляции 3D подсистему Сценария. Интеллектуальный Целевой блок подсистемы Транспортных средств добавляется к Симуляции 3D подсистема Сценария для того, чтобы сконфигурировать поведение целевых транспортных средств в сценарии. Детектор Маркера Лейна, Детектор Транспортного средства, Прямое Cочетание датчиков Транспортного средства, Лейн После Логики Решения, Лейн После Контроллера, Динамики аппарата и Метрических подсистем Оценки регулируют автомобиль, оборудованный датчиком в ответ на поведение целевых транспортных средств, сконфигурированных Симуляцией 3D подсистема Сценария.

Откройте Симуляцию 3D подсистема Сценария и подсветите Интеллектуальную Целевую подсистему Транспортных средств.

open_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench/Simulation 3D Scenario")
hilite_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench/Simulation 3D Scenario/Intelligent Target Vehicles")

Симуляция 3D подсистема Сценария конфигурирует дорожную сеть, моделирует целевые транспортные средства, устанавливает положения транспортного средства и синтезирует датчики. Подсистема инициализируется при помощи helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup скрипт. Этот скрипт задает ведущий сценарий для тестирования магистрального маршрута после. Этот скрипт настройки задает дорожную сеть и устанавливает поведение для каждого целевого транспортного средства в сценарии.

  • Блок Scenario Reader (Automated Driving Toolbox) читает дороги и агентов (эго и целевые транспортные средства) из файла сценария, заданного с помощью helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup скрипт. Блок выводит положения целевых транспортных средств и контуров маршрута относительно системы координат автомобиля, оборудованного датчиком.

  • Интеллектуальные Целевые Транспортные средства являются блоком подсистемы вызова функций, который моделирует поведение агентов в ведущем сценарии. Начальные значения для этой подсистемы параметры блоков установлены helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup скрипт. Кубоид К 3D Симуляции (Automated Driving Toolbox) и Симуляция 3D Транспортное средство с Землей После (Automated Driving Toolbox) блоки установил положения агента для 3D среды симуляции.

  • Блок Simulation 3D Scene Configuration (Automated Driving Toolbox) реализует 3D среду симуляции при помощи дорожной сети и положений агента.

Этот скрипт настройки также конфигурирует параметры проектирования контроллера, параметры модели транспортного средства и сигналы шины Simulink®, требуемые для HighwayLaneFollowingWithIntelligentVehiclesTestBench модель. Этот скрипт присваивает массив структур, targetVehicles, к базовому рабочему пространству, которое содержит тип поведения для каждого целевого транспортного средства.

Поведения транспортного средства

Этот пример позволяет вам использовать четыре режима поведений транспортного средства для конфигурирования целевых транспортных средств с помощью targetVehicles структура.

  • Default: В этом режиме целевые транспортные средства в сценарии следуют за предопределенными траекториями. Целевые транспортные средства неадаптивны и не сконфигурированы для интеллектуального поведения.

  • VelocityKeeping: В этом режиме целевые транспортные средства сконфигурированы, чтобы переместиться в маршруте при постоянной скорости набора. Каждое целевое транспортное средство обеспечивает скорость набора независимо от присутствия ведущего транспортного средства в его текущем маршруте и не проверяет на столкновение.

  • LaneFollowing: В этом режиме целевые транспортные средства сконфигурированы, чтобы переместиться в маршруте путем адаптации их скоростей в ответ на ведущее транспортное средство. Если целевое транспортное средство сталкивается с ведущим транспортным средством в своем текущем маршруте, модель выполняет проверку столкновения и настраивает скорость целевого транспортного средства. Проверка столкновения гарантирует, что целевое транспортное средство обеспечивает безопасное расстояние от ведущего транспортного средства.

  • LaneChange: В этом режиме целевые транспортные средства сконфигурированы, чтобы переместиться в маршруте при особой скорости и следовать за ведущим транспортным средством. Если целевое транспортное средство становится слишком близким к ведущему транспортному средству, то это выполняет изменение маршрута. Прежде, чем изменить маршрут, модель проверяет на потенциал вперед и столкновения стороны и адаптирует скорость целевого транспортного средства, чтобы обеспечить безопасное расстояние от других транспортных средств в сценарии.

Интеллектуальные целевые транспортные средства модели

Интеллектуальная Целевая подсистема Транспортных средств динамически обновляет положения транспортного средства для всех целевых транспортных средств на основе их предопределенного поведения транспортного средства. Как упомянуто уже, helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup скрипт задает сценарий и поведение для каждого целевого транспортного средства в сценарии. Скрипт настройки хранит поведение транспортного средства и другие атрибуты как массив структур, targetVehicles, к базовому рабочему пространству. Структура хранит эти атрибуты:

  • ActorID

  • Position

  • Velocity

  • Roll

  • Pitch

  • Yaw

  • AngularVelocity

  • InitialLaneID

  • BehaviorType

Интеллектуальная Целевая подсистема Транспортных средств использует маску, чтобы загрузить настройку в targetVehicles от базового рабочего пространства. Можно установить значения этих атрибутов, чтобы изменить положение, ориентацию, скорости и поведение целевых транспортных средств. Откройте Интеллектуальную Целевую подсистему Транспортных средств.

open_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench/Simulation 3D Scenario/Intelligent Target Vehicles")

Блок Vehicle To World (Automated Driving Toolbox) преобразует предопределенного агента (эго и целевое транспортное средство) положения и траектории от координат автомобиля, оборудованного датчиком до мировых координат. Целевой блок подсистемы Поведения Транспортного средства вычисляет следующее состояние целевых транспортных средств при помощи предопределенных целевых положений транспортных средств, положения автомобиля, оборудованного датчиком и текущего состояния целевых транспортных средств. Подсистема выводит целевые положения транспортных средств в мировых координатах для навигации по транспортным средствам в 3D среде симуляции.

Откройте Целевую подсистему Поведения Транспортного средства.

open_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench/Simulation 3D Scenario/Intelligent Target Vehicles/Target Vehicle Behavior",'tab')

Целевая подсистема Поведения Транспортного средства позволяет вам переключиться между значением по умолчанию и другими поведениями транспортного средства. Если тип поведения для целевого транспортного средства установлен в Default, подсистема конфигурирует целевые транспортные средства, чтобы следовать за предопределенными траекториями. В противном случае положение транспортного средства динамически вычисляется и обновило использование Интеллектуального блока подсистемы Транспортного средства. Интеллектуальный блок подсистемы Транспортного средства конфигурирует VelocityKeeping, LaneFollowing, и LaneChange поведения для целевых транспортных средств.

Откройте Интеллектуальную подсистему Транспортного средства.

open_system("HighwayLaneFollowingWithIntelligentVehiclesTestBench/Simulation 3D Scenario/Intelligent Target Vehicles/Target Vehicle Behavior/Intelligent Vehicle")

Интеллектуальная подсистема Транспортного средства вычисляет положение целевого транспортного средства при помощи информации о соседних транспортных средствах и поведении транспортного средства. Подсистема похожа на компонент Планировщика Изменения Маршрута Магистрального Изменения Маршрута (Automated Driving Toolbox) пример. Интеллектуальная подсистема Транспортного средства имеет эти блоки:

  • Блок Environment Updater вычисляет ведущую и заднюю информацию о транспортном средстве, текущий номер маршрута и существование смежных маршрутов (NoLeftLane, NoRightLane) относительно текущего состояния целевого транспортного средства. Этот блок сконфигурирован Системой object™ HelperEnvironmentUpdater.

  • Блок Velocity Keeping Sampler задает конечные состояния, требуемые для VelocityKeeping поведение. Этот блок читает скорость набора из параметра маски norm(TargetVehicle.Velocity).

  • Блок Lane Following Sampler задает конечные состояния, требуемые для LaneFollowing поведение. Этот блок читает скорость набора из параметра маски norm(TargetVehicle.Velocity).

  • Блок Lane Change Sampler задает конечные состояния, требуемые для LaneChange поведение. Этот блок также задает смещение отклонения от ссылочного пути, чтобы сохранить транспортное средство в определенном маршруте после изменения маршрута. Этот блок читает TargetVehicle.Velocity, laneInfo, и TargetVehicle.InitialLaneID от базового рабочего пространства при помощи параметров маски.

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

  • Проверки блока Столкновения Проверки на столкновение с любым другим транспортным средством в сценарии. Симуляция останавливается, если столкновение обнаруживается.

  • Блок Pulse Generator задает период переплана для подсистемы Планировщика Движения. Значение по умолчанию установлено в 1 секунду. Перепланирование может быть инициировано каждый импульсный период, или если какой-либо из сэмплеров имеет обновление состояния, или подсистемой Планировщика Движения.

  • Подсистема MotionPlanner генерирует траекторию для целевого транспортного средства при помощи конечных состояний, заданных поведением транспортного средства. Это использует trajectoryOptimalFrenet (Navigation Toolbox) от Navigation Toolbox™, чтобы сгенерировать траекторию. Подсистема оценивает положение транспортного средства вдоль его траектории в каждом шаге симуляции. Эта подсистема внутренне использует HelperTrajectoryPlanner Система object™, чтобы реализовать механизм нейтрализации для различных поведений транспортного средства, когда trajectoryOptimalFrenet функция не может сгенерировать выполнимую траекторию.

  • Если поведение транспортного средства установлено в LaneChange, планировщик траектории пытается сгенерировать траекторию с LaneFollowing поведение. Если это не может сгенерировать траекторию, то это останавливает транспортное средство с помощью своего поведения остановки.

  • Если поведение транспортного средства установлено в LaneFollowing или VelocityKeeping, планировщик траектории останавливает транспортное средство с помощью поведения остановки.

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

Симулируйте интеллектуальное целевое поведение транспортного средства на Стрэайт-Роуд

Этот пример использует сценарий тестирования, который имеет три целевых транспортных средства (красный седан, черный автомобиль с высокой мощностью и оранжевый хэтчбек) и один автомобиль, оборудованный датчиком (синий седан) перемещающийся на прямой дороге с двумя маршрутами.

  • Красный седан является первым целевым транспортным средством и перемещается в маршруте, смежном с маршрутом эго.

  • Оранжевый хэтчбек является ведущим транспортным средством для автомобиля, оборудованного датчиком в маршруте эго.

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

Можно запустить симуляцию любое число раз путем изменения типа поведения для каждого транспортного средства во время каждого запуска. Этот пример запускает симуляцию три раза, и при каждом запуске изменяется тип поведения для первого целевого транспортного средства.

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

Запустите скрипт настройки, чтобы сконфигурировать VelocityKeeping поведение для всех целевых транспортных средств.

helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup(...
    "scenarioFcnName",...
    "scenario_LFACC_01_Straight_IntelligentVelocityKeeping");

Отобразите BehaviorType из всех целевых транспортных средств.

disp([targetVehicles(:).BehaviorType]');
    VelocityKeeping
    VelocityKeeping
    VelocityKeeping
    Default        
    Default        

Запустите симуляцию и визуализируйте результаты. Целевые транспортные средства в сценарии перемещаются в их соответствующих маршрутах при постоянной скорости. Красный седан и черный автомобиль с высокой мощностью обеспечивают их скорость и не проверяют на столкновения.

Чтобы сократить командное окно выход, выключите сообщения обновления прогнозирующего управления модели (MPC).

mpcverbosity('off');
% Run the model
simout = sim("HighwayLaneFollowingWithIntelligentVehiclesTestBench","StopTime","9");

Постройте скоростные профили эго и сначала предназначайтесь для транспортного средства (красный седан), чтобы анализировать результаты.

hFigVK = helperPlotEgoAndTargetVehicleProfiles(simout.logsout);

Закройте фигуру

close(hFigVK);
  • Угол Рыскания Целевого Транспортного средства (Красный седан) график показывает угол рыскания красного седана. Нет никакого изменения угла рыскания, когда транспортное средство перемещается на прямой дороге маршрута.

  • Абсолютная Скорость Целевого Транспортного средства (Красный седан) график показывает абсолютную скорость красного седана. Скоростной профиль транспортного средства является постоянным, когда транспортное средство сконфигурировано к VelocityKeeping поведение.

  • Абсолютная Скорость Автомобиля, оборудованного датчиком (Синий седан) график показывает, что нет никакого эффекта красного седана на автомобиле, оборудованном датчиком, когда оба транспортных средства перемещаются в смежных маршрутах.

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

Сконфигурируйте тип поведения для первого целевого транспортного средства (красный седан), чтобы выполнить маршрут после. Отобразите обновленные значения для BehaviorType из целевых транспортных средств.

targetVehicles(1).BehaviorType = VehicleBehavior.LaneFollowing;
disp([targetVehicles(:).BehaviorType]');
    LaneFollowing  
    VelocityKeeping
    VelocityKeeping
    Default        
    Default        

Запустите симуляцию и визуализируйте результаты. Целевые транспортные средства в сценарии перемещаются в их соответствующих маршрутах. Первое целевое транспортное средство (красный седан) замедляется, чтобы не сталкиваться с медленным черным автомобилем с высокой мощностью в его маршруте.

sim("HighwayLaneFollowingWithIntelligentVehiclesTestBench");

Постройте скоростные профили эго и сначала предназначайтесь для транспортного средства (красный седан), чтобы анализировать результаты.

hFigLF = helperPlotEgoAndTargetVehicleProfiles(logsout);

Закройте фигуру

close(hFigLF);
  • Угол Рыскания Целевого Транспортного средства (Красный седан) график совпадает с тем, полученным в предыдущей симуляции. Нет никакого изменения угла рыскания, когда транспортное средство перемещается на прямой дороге маршрута.

  • Абсолютная Скорость Целевого Транспортного средства (Красный седан) график отличается от предыдущей симуляции. Скорость красного седана постепенно уменьшается с 13 м/с до 5 м/с, чтобы не сталкиваться с черным автомобилем с высокой мощностью и обеспечивает разрыв безопасности.

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

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

targetVehicles(1).BehaviorType = VehicleBehavior.LaneChange;

Отобразите BehaviorType из всех целевых транспортных средств.

disp([targetVehicles(:).BehaviorType]');
    LaneChange     
    VelocityKeeping
    VelocityKeeping
    Default        
    Default        

Запустите симуляцию и визуализируйте результаты. Оранжевый хэтчбек и черный автомобиль с высокой мощностью перемещаются при постоянной скорости в их соответствующих маршрутах. Первое целевое транспортное средство (красный седан) выполняет изменение маршрута, когда это приближается к черному автомобилю с высокой мощностью. Это также делает другое изменение маршрута, когда это приближается к оранжевому хэтчбеку.

sim("HighwayLaneFollowingWithIntelligentVehiclesTestBench");

Постройте скоростные профили эго и первого целевого транспортного средства (красный седан), чтобы анализировать результаты.

hFigLC = helperPlotEgoAndTargetVehicleProfiles(logsout);

Закройте фигуру

close(hFigLC);
  • Угол Рыскания Целевого Транспортного средства (Красный седан) график отличается от предыдущих результатов симуляции. Угловой профиль рыскания первого целевого транспортного средства показывает отклонения, когда транспортное средство выполняет изменение маршрута.

  • Абсолютная Скорость Целевого Транспортного средства (Красный седан) график похожа на VelocityKeeping поведение. Красный седан обеспечивает постоянную скорость даже во время изменения маршрута.

  • Абсолютная Скорость Автомобиля, оборудованного датчиком (Синий седан) график показывает ответ автомобиля, оборудованного датчиком на маневр изменения маршрута первым целевым транспортным средством (красный седан). Скорость уменьшений автомобиля, оборудованного датчиком как красный седан перестраивается на другую полосу. Красный седан перемещается в маршрут эго и перемещается перед автомобилем, оборудованным датчиком. Автомобиль, оборудованный датчиком реагирует путем уменьшения его скорости для того, чтобы переместиться в том же маршруте. Закройте все фигуры.

Симулируйте интеллектуальное целевое поведение транспортного средства на Кервед-Роуд

Протестируйте модель на сценарии с кривыми дорогами. Настройка транспортного средства и положение транспортных средств похожи на предыдущую симуляцию. Сценарий тестирования содержит кривую дорогу, и первое целевое транспортное средство (Красный седан) сконфигурировано к LaneChange поведение. Другие два целевых транспортных средства сконфигурированы к VelocityKeeping поведение. Рисунок ниже показывает исходные положения транспортных средств в кривой дорожной сцене.

Запустите скрипт настройки, чтобы сконфигурировать параметры модели.

helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup(...
    "scenarioFcnName",...
        "scenario_LFACC_04_Curved_IntelligentLaneChange");

Запустите симуляцию и визуализируйте результаты. Постройте угол рыскания и скоростные профили эго и предназначайтесь для транспортных средств.

sim("HighwayLaneFollowingWithIntelligentVehiclesTestBench");
hFigCurvedLC = helperPlotEgoAndTargetVehicleProfiles(logsout);

  • Угол Рыскания Целевого Транспортного средства (Красный седан) график показывает изменение профиля, когда красный седан выполняет изменение маршрута на кривой дороге. Искривление дороги также влияет на угол рыскания целевого транспортного средства.

  • Абсолютная Скорость Целевого Транспортного средства (Красный седан) график похожа на VelocityKeeping поведение, когда красный седан обеспечивает постоянную скорость во время изменения маршрута на кривой дороге.

  • Абсолютная Скорость Автомобиля, оборудованного датчиком (Синий седан) график показывает ответ автомобиля, оборудованного датчиком к маневру изменения маршрута красным седаном. Автомобиль, оборудованный датчиком реагирует путем уменьшения его скорости для того, чтобы переместиться в том же маршруте.

Закройте фигуру.

close(hFigCurvedLC);

Исследуйте другие сценарии

Этот пример предоставляет дополнительные сценарии, которые совместимы с HighwayLaneFollowingWithIntelligentVehiclesTestBench модель. Ниже список совместимых сценариев, которым предоставляют этот пример.

  • scenario_LFACC_01_Straight_IntelligentVelocityKeeping функция конфигурирует сценарий тестирования, таким образом, что все целевые транспортные средства сконфигурированы, чтобы выполнить VelocityKeeping поведение на прямой дороге.

  • scenario_LFACC_02_Straight_IntelligentLaneFollowing функция конфигурирует сценарий тестирования, таким образом, что красный седан выполняет LaneFollowing поведение, в то время как все другие целевые транспортные средства выполняют VelocityKeeping поведение на прямой дороге.

  • scenario_LFACC_03_Straight_IntelligentLaneChange функция конфигурирует сценарий тестирования, таким образом, что красный седан выполняет LaneChange поведение, в то время как все другие целевые транспортные средства выполняют VelocityKeeping поведение на прямой дороге.

  • scenario_LFACC_04_Curved_IntelligentLaneChange функция конфигурирует сценарий тестирования, таким образом, что красный седан выполняет LaneChange поведение, в то время как все другие целевые транспортные средства выполняют VelocityKeeping поведение на кривой дороге. Это сконфигурировано как сценарий по умолчанию.

  • scenario_LFACC_05_Curved_IntelligentDoubleLaneChange функция конфигурирует сценарий тестирования, таким образом, что красный седан выполняет LaneChange поведение, в то время как все другие целевые транспортные средства выполняют VelocityKeeping поведение на кривой дороге. Размещение других транспортных средств в этом сценарии таково, что красный седан выполняет двойное изменение маршрута во время симуляции.

Для получения дополнительной информации о дорожных и целевых настройках транспортного средства в каждом сценарии просмотрите комментарии в каждом файле. Можно сконфигурировать модель Simulink и рабочую область, чтобы симулировать эти сценарии с помощью helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup функция.

helperSLHighwayLaneFollowingWithIntelligentVehiclesSetup("scenarioFcnName","scenario_LFACC_05_Curved_IntelligentDoubleLaneChange");

Заключение

Этот пример демонстрирует, как протестировать функциональность маршрута после приложения в сценарии с автомобилем, оборудованным датчиком и несколькими интеллектуальными целевыми транспортными средствами.

Включите сообщения обновления MPC снова.

mpcverbosity('on');

Похожие темы