Протестируйте алгоритм ADAS разомкнутого цикла Используя управление сценарием

Этот пример показывает, как протестировать ADAS разомкнутого цикла (продвинутая система помощи водителю) алгоритм в Simulink®. Чтобы протестировать сценарий, вы используете ведущий сценарий, который был сохранен из приложения Driving Scenario Designer. В этом примере вы читаете в сценарии с помощью блока Scenario Reader, и затем визуально проверяете производительность простого алгоритма сплава датчика на Видимом с большого расстояния Осциллографе.

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

addpath(genpath(fullfile(matlabroot,'examples','driving')))

Осмотрите ведущий сценарий

Этот пример использует ведущий сценарий, который основан на одном из предварительно созданных сценариев, к которым можно получить доступ через приложение Driving Scenario Designer. Для получения дополнительной информации на этих сценариях, смотрите, Генерируют Синтетические Обнаружения из Предварительно созданного Ведущего Сценария.

Откройте файл сценария в приложении.

drivingScenarioDesigner('LeftTurnScenario.mat')

Нажмите Run, чтобы моделировать сценарий. В этом сценарии автомобиль, оборудованный датчиком перемещается на север и идет сквозной пересечение. Между тем автомобиль, прибывающий из левой стороны пересечения, поворачивает налево и заканчивается перед автомобилем, оборудованным датчиком.

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

Осмотрите модель

В модели блок Scenario Reader читает агентов и дороги из файла сценария и выводит агентов неэго и контуры маршрута. Откройте модель.

open_system('OpenLoopWithScenarios.slx')

В блоке Scenario Reader Ведущий параметр имени файла сценария задает имя файла сценария. Можно задать файл сценария, который находится на пути поиска файлов MATLAB, таком как файл сценария, используемый в этом примере или полном пути к файлу сценария.

Блок Scenario Reader выводит положения агентов неэго в сценарии и лево-маршруте и контурах правильного маршрута автомобиля, оборудованного датчиком. Чтобы вывести все контуры маршрута дороги, на которой перемещается автомобиль, оборудованный датчиком, выберите соответствующую опцию для контуров Лейна к выходному параметру.

Агенты передаются Радарному Генератору Обнаружения и блоку Vision Detection Generator, и контуры маршрута передаются блоку Vision Detection Generator. Эти блоки датчика производят синтетические обнаружения из сценария. Выходные параметры находятся в координатах автомобиля, где:

  • Ось X указывает вперед от автомобиля, оборудованного датчиком.

  • Ось Y указывает слева от автомобиля, оборудованного датчиком.

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

Если сценарий имеет несколько автомобилей, оборудованных датчиком в блоке Scenario Reader, установите Систему координат выходного параметра к World coordinates вместо Vehicle Coordinates. В системе мировой координаты агенты и контуры маршрута находятся в мировых координатах ведущего сценария. Видимый с большого расстояния Осциллограф не поддерживает визуализацию мировых координат.

В этой модели блок Scenario Reader читает автомобиль, оборудованный датчиком из файла сценария (Источник параметра автомобиля, оборудованного датчиком установлен в Scenario file). Поскольку этот алгоритм является разомкнутым циклом, поведение автомобиля, оборудованного датчиком не изменяется, когда симуляция совершенствуется. Поэтому Источник параметра автомобиля, оборудованного датчиком установлен в Scenario file, и блок читает предопределенное положение автомобиля, оборудованного датчиком и траекторию из сценария. Для контроллеров автомобиля и других алгоритмов с обратной связью, набор Источник параметра автомобиля, оборудованного датчиком к Input port. При использовании этой опции вы задаете автомобиль, оборудованный датчиком, который задан в модели как вход к блоку Scenario Reader. Для примера смотрите Тест Алгоритм ADAS С обратной связью Используя Управление Сценарием.

Визуально проверьте алгоритм

Чтобы визуализировать сценарий и объект и обнаружения контура маршрута, используйте Видимый с большого расстояния Осциллограф. От панели инструментов модели Simulink кликните по кнопке Bird's-Eye Scope. Затем нажмите Find Signals и запустите симуляцию. Датчик видения правильно генерирует обнаружения для агента неэго и контуров маршрута.

Обновите настройки симуляции

Эта модель использует время остановки симуляции по умолчанию 10 секунд. Однако, потому что сценарий только приблизительно 5 секунд длиной, симуляция продолжает запускаться в Видимом с большого расстояния Осциллографе даже после того, как сценарий закончился. Чтобы синхронизировать симуляцию и времена остановки сценария, на панели инструментов модели Simulink, устанавливают время остановки симуляции на секунды 5.2, которое является точным временем остановки сценария приложения. После того, как вы запускаете симуляцию, отображения приложения это значение в нижнем правом углу холста сценария.

Если симуляция запускается слишком быстро в Видимом с большого расстояния Осциллографе, можно замедлить симуляцию при помощи следующей симуляции. От панели инструментов модели Simulink выберите Simulation> Pacing Options. Выберите Enable, следующий, чтобы замедлить флажок симуляции и уменьшить время симуляции к немного меньше чем 1 секунде в тактовую стеной секунду, такую как 0,8 секунды. Затем повторно выполните симуляцию в Видимом с большого расстояния Осциллографе.

По окончании с этим примером, удаляете папку в качестве примера из пути поиска файлов MATLAB.

rmpath(genpath(fullfile(matlabroot,'examples','driving')))

Смотрите также

| | | |

Похожие темы