exponenta event banner

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

В этом примере показано, как протестировать алгоритм ADAS с разомкнутым контуром (усовершенствованная система помощи водителю) в Simulink ®. В алгоритме ADAS с разомкнутым контуром поведение эго-транспортного средства предопределено и не изменяется по мере продвижения сценария во время моделирования.

Для проверки алгоритма используется сценарий вождения, сохраненный в приложении «Конструктор сценариев вождения». В этом примере выполняется чтение сценария с помощью блока «Считыватель сценариев», а затем визуализация обнаруженных сценариев и датчиков в области «Птичий глаз».

Проверка сценария вождения

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

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

drivingScenarioDesigner('LeftTurnScenario.mat')

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

Эго-автомобиль имеет следующие датчики:

  • Фронтальный радар для генерации обнаружений объектов

  • Фронтальная камера и задняя камера для создания обнаружений объектов и границ полос движения

  • Лидар в центре крыши для генерации данных облака точек сценария

Проверка модели

Модель в этом примере была создана из приложения, выбрав Экспорт > Экспорт модели Simulink. В модели блок чтения сценариев считывает актёров и дороги из файла сценария и выводит не-эго актёров и границы полос движения. Откройте модель.

open_system('OpenLoopWithScenarios.slx')

В блоке чтения сценариев параметр имени файла конструктора сценариев определяет имя файла сценариев. Можно указать файл сценария, который находится в пути поиска MATLAB, например, файл сценария, используемый в этом примере, или полный путь к файлу сценария. Кроме того, можно указать drivingScenario путем установки для параметра Source of driving scription значения From workspace, а затем установка имени переменной MATLAB или рабочей области модели в качестве имени допустимого drivingScenario переменная рабочей области объекта.

Блок чтения сценариев выводит позы субъектов, не являющихся эго, в сценарии и границы левой и правой полос эго-транспортного средства. Для вывода всех границ полосы движения дороги, по которой едет эго-транспортное средство, выберите соответствующую опцию параметра Границы полосы для вывода.

Акторы, границы полос и поза эго-транспортного средства передаются в подсистему, содержащую блоки датчиков. Откройте подсистему.

open_system('OpenLoopWithScenarios/Detection Generators')

Блоки «Генератор радиолокационных данных», «Генератор визуального обнаружения» и «Генератор облака точек Лидара» производят синтетические обнаружения из сценария. Эти данные датчика можно сплавить для создания дорожек, например, в примере с разомкнутым контуром Sensor Fusion Using Synthetic Radar and Vision Data in Simulink.

Выходы блоков датчиков в данной модели находятся в координатах транспортного средства, где:

  • Ось X указывает вперед от эго-транспортного средства.

  • Ось Y указывает влево от эго-транспортного средства.

  • Начало координат расположено в центре задней оси эго-транспортного средства.

Поскольку эта модель является открытой, поведение эго-транспортного средства не изменяется по мере продвижения моделирования. Поэтому параметр Source of ego vehicle имеет значение Scenarioи блок считывает предопределенную позу и траекторию эго-транспортного средства из файла сценария. Для контроллеров транспортных средств и других моделей с замкнутым контуром установите параметр Source of ego vehicle равным Input port. С помощью этой опции можно указать ego-транспортное средство, которое определено в модели как вход в блок чтения сценариев. Пример см. в разделе Тестирование алгоритма ADAS с замкнутым контуром с использованием сценария управления.

Визуализация моделирования

Для визуализации сценария и обнаружения датчиков используйте Область действия «Птичий глаз». На панели инструментов Simulink в разделе «Результаты проверки» выберите «Область действия птичьего глаза». Затем в области щелкните Найти сигналы (Find Signals) и запустите моделирование.

Обновить параметры моделирования

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

Если моделирование выполняется слишком быстро в области «Птичий глаз», можно замедлить моделирование с помощью темпинга моделирования. На панели инструментов «Simulink» выберите «Run» > «Simulation Pacing». Установите флажок Включить ускорение моделирования (Enable pacing to slow simulation) и уменьшите время моделирования чуть менее чем до 1 секунды на секунду настенного времени, например до 0,8 секунды. Затем повторно запустите моделирование в области «Птичий глаз».

См. также

Приложения

Блоки

Связанные темы