Сгенерируйте блоки датчика, используя Driving Scenario Designer

В этом примере показано, как обновить радар и датчики камеры модели Simulink ® с помощью приложения Driving Scenario Designer. Приложение Driving Scenario Designer позволяет вам генерировать несколько строения датчика быстро и интерактивно. Затем можно использовать эти сгенерированные строения датчика в существующих моделях Simulink, чтобы более тщательно протестировать алгоритмы вождения.

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

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

Смотрите и моделируйте модель

Модель, используемая в этом примере, реализует алгоритм слияния датчика автономного аварийного торможения (AEB). Для получения дополнительной информации об этой модели см. Пример автономного экстренного торможения с Sensor Fusion. Откройте эту модель.

open_system('AEBTestBenchExample')

Сценарий вождения и генераторы обнаружения датчиков, используемые для тестирования алгоритма, расположены в подсистеме Транспортного средства Окружения > Actors и Sensor Simulation. Откройте эту подсистему.

open_system('AEBTestBenchExample/Vehicle and Environment/Actors and Sensor Simulation')

Блок Scenario Reader считывает актёров и дороги из заданного файла Driving Scenario Designer. Блок выводит актёров, не являющихся эго. Затем эти актёры передаются в блоки Driving Radar Data Generator и Vision Detection Generator. Во время симуляции эти блоки генерируют обнаружения актёров, не являющихся эго.

Моделируйте и визуализируйте сценарий на Bird ' s-Eye Scope. На панели инструментов модели в разделе Результаты проверки (Review Results) нажмите Bird ' s-Eye Scope. В возможности нажмите Find Signals, а затем нажмите запуск, чтобы запустить симуляцию. В этом сценарии модель AEB заставляет автомобиль , оборудованный датчиком тормозить вовремя, чтобы избежать столкновения с ребенком-пешеходом, который переходит улицу.

Во время этого примера вы заменяете существующие в этой модели датчики новыми датчиками, созданными в приложении Driving Scenario Designer.

Загрузка сценария в приложение

Модель использует сценарий вождения, который основан на одном из предварительно созданных сценариев протокола тестирования Euro NCAP. Эти сценарии можно загрузить из приложения Driving Scenario Designer. Для получения дополнительной информации об этих сценариях смотрите Euro NCAP Driving Scenarios in Driving Scenario Designer.

Загрузите файл сценария в приложение.

drivingScenarioDesigner('AEB_PedestrianChild_Nearside_50width_overrun.mat')

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

Датчики нагрузки

Загруженный файл сценария содержит только дороги и актёров в сценарии. Отдельный файл содержит датчики. Чтобы загрузить эти датчики в сценарий, на панели инструментов приложения выберите Open > Sensors. Откройте AEBSensor.mat файл, расположенный в папке примера. Кроме того, из корневой папки MATLAB перейдите к и откройте этот файл: matlabroot/examples/driving/AEBSensors.mat.

Радарный датчик установлен на переднем бампере автомобиля , оборудованного датчиком. Датчик камеры установлен на переднем окне автомобиля , оборудованного датчиком.

Датчики обновления

Обновите радар и датчики камеры путем изменения их местоположения на автомобилях , оборудованных датчиком.

  1. На Холсте Датчика щелкните и перетащите радар к предопределенной Front Window расположение.

  2. Щелкните и перетащите датчик камеры в предопределенное Front Bumper расположение. В этом предопределенном месте приложение обновляет камеру с датчика малой дальности на датчик большой дальности.

  3. Опционально на левой панели, на вкладке Sensors, попробуйте изменить параметры камеры и радарных датчиков. Для примера можно изменить вероятность обнаружения или настройки точности и шума.

  4. Сохраните копию этого нового сценария и строения датчика в доступном для записи месте.

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

Это изображение показывает выборку обновлённого строения датчика.

Экспорт сценария и датчиков в Simulink

Чтобы сгенерировать блоки Simulink для сценария и его датчиков, на панели инструментов приложения выберите Экспорт > Экспорт модели Simulink. Эта модель показывает выборки блоков, которые были экспортированы из приложения.

open_system('AEBGeneratedScenarioAndSensors')

Если вы не внесли никаких изменений в дороги и актёров в сценарии, то блок Scenario Reader считывает те же данные о дороге и актёре, которые использовались в модели AEB. Блоки Driving Radar Data Generator и Vision Detection Generator моделируют радар и камеру, которые вы создали в приложении.

Скопируйте экспортированный сценарий и датчики в существующую модель

Замените сценарий и датчики в модели AEB на вновь сгенерированные сценарий и датчики. Даже если вы не изменили дороги и актёров и не считали данные из того же файла сценария, замена существующего блока Scenario Reader по-прежнему является лучшей практикой. Использование этого сгенерированного блока сохраняет имена шин для сценария и датчиков непротиворечивыми, когда данные проходят между ними.

Чтобы начать, в модели AEB снова откройте Окружение транспортного средства > Подсистемы Актёров и Симуляции Датчика.

open_system('AEBTestBenchExample/Vehicle and Environment/Actors and Sensor Simulation')

Далее, чтобы справиться со сценарием и блоками датчиков с сгенерированными таковыми, выполните следующие шаги:

  1. Удалите существующие блоки Scenario Reader, Driving Radar Data Generator и Vision Detection Generator. Не удаляйте сигнальные линии, которые вводятся в блок Scenario Reader или выводятся из блоков датчика. Кроме того, отсоедините эти блоки, не удаляя их, и закомментируйте их из модели. Используя эту опцию, можно сравнить существующие блоки с новым и при необходимости вернуться назад. Выберите каждый блок. Затем на вкладке Block выберите Comment Out.

  2. Скопируйте блоки из сгенерированной модели в модель AEB.

  3. Откройте скопированный блок Scenario Reader и установите параметр Source of автомобиль , оборудованный датчиком на Input port. Нажмите OK. Модель AEB задает автомобиль , оборудованный датчиком в блоке Pack Ego Actor, который вы соединяете с Автомобилем , оборудованным датчиком портом блока Scenario Reader.

  4. Подключите существующие сигнальные линии к копируемым блокам. Чтобы очистить размещение модели, на вкладке Формат модели, выберите Auto Arrange.

  5. Проверьте, что обновлённый блок подсистемы напоминает ранее существовавшую блок. Затем сохраните модель или сохраните копию модели в записываемом месте.

Моделируйте обновленную модель

Чтобы визуализировать обновленную симуляцию сценария, снова откройте Bird ' s-Eye Scope, нажмите Найти сигналы и затем нажмите Запустить. С этой обновлённым строением датчика автомобиль , оборудованный датчиком не тормозит во времени.

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

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

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

См. также

Приложения

Блоки

Похожие темы