В этом примере показано, как обновить датчики радара и камеры модели Simulink® при помощи приложения Driving Scenario Designer. Приложение Driving Scenario Designer позволяет вам сгенерировать несколько настроек датчика быстро и в интерактивном режиме. Можно затем использовать эти сгенерированные настройки датчика в существующих моделях Simulink, чтобы протестировать ведущие алгоритмы более тщательно.
Прежде, чем начать этот пример, добавьте папку в качестве примера в путь поиска файлов MATLAB®.
addpath(genpath(fullfile(matlabroot,'examples','driving')))
Модель, используемая в этом примере, реализует алгоритм сплава датчика автономного экстренного торможения (AEB). Для получения дополнительной информации об этой модели, смотрите Автономное Экстренное торможение с примером Fusion Датчика. Откройте эту модель.
open_system('AEBTestBenchExample')
Ведущий сценарий и генераторы обнаружения датчика, используемые, чтобы протестировать алгоритм, расположены в Среде Транспортного средства> Агенты и подсистема Симуляции Датчика. Откройте эту подсистему.
open_system('AEBTestBenchExample/Vehicle and Environment/Actors and Sensor Simulation')
Блок Scenario Reader читает агентов и дороги из заданного файла Driving Scenario Designer. Блок выводит агентов неэго. Эти агенты затем передаются Управлению Радарным Генератором Данных и блоками датчика Генератора Обнаружения Видения. В процессе моделирования эти блоки генерируют обнаружения агентов неэго.
Симулируйте и визуализируйте сценарий на Bird ' s-Eye Scope. На панели инструментов модели, рассматриваемых Результатах, нажимают Bird's-Eye Scope. В осциллографе нажмите Find Signals, и затем нажмите Run, чтобы запустить симуляцию. В этом сценарии модель AEB заставляет автомобиль, оборудованный датчиком тормозить вовремя, чтобы избежать столкновения с пешеходным дочерним элементом, который пересекает улицу.
Во время этого примера вы заменяете существующие датчики в этой модели с новыми датчиками, созданными в приложении Driving Scenario Designer.
Модель использует ведущий сценарий, который основан на одном из предварительно созданного Евро тестовые сценарии протокола NCAP. Можно загрузить эти сценарии из приложения Driving Scenario Designer. Для получения дополнительной информации об этих сценариях смотрите Евро NCAP Управление Сценариями в Driving Scenario Designer.
Загрузите файл сценария в приложение.
drivingScenarioDesigner('AEB_PedestrianChild_Nearside_50width_overrun.mat')
Чтобы симулировать сценарий в приложении, нажмите Run. В симуляции приложения, в отличие от этого, в симуляции модели, автомобиль, оборудованный датчиком сталкивается с пешеходом. Приложение использует предопределенную траекторию автомобиля, оборудованного датчиком, тогда как модель использует алгоритм AEB, чтобы управлять траекторией и заставить автомобиль, оборудованный датчиком тормозить.
Загруженный файл сценария содержит только дороги и агентов в сценарии. Отдельный файл содержит датчики. Чтобы загрузить эти датчики в сценарий, на панели инструментов приложения, выбирают Open> Sensors. Откройте AEBSensor.mat
файл расположен в папке в качестве примера. В качестве альтернативы от вашей корневой папки MATLAB, перейдите к и откройте этот файл: matlabroot/examples/driving/AEBSensors.mat
.
Радарный датчик смонтирован к переднему бамперу автомобиля, оборудованного датчиком. Датчик камеры смонтирован к переднему окну автомобиля, оборудованного датчиком.
Обновите датчики радара и камеры путем изменения их местоположений на автомобилях, оборудованных датчиком.
На Холсте Датчика перетащите радарный датчик к предопределенному Front Window
местоположение .
Перетащите датчик камеры к предопределенному Front Bumper
местоположение . В этом предопределенном местоположении, обновления приложения камера с ближнего датчика на датчик дальний.
Опционально, на левой панели, на вкладке Sensors, попытка изменить параметры датчиков камеры и радара. Например, можно изменить вероятность обнаружения или точность и шумовые настройки.
Сохраните копию этого нового сценария и настройки датчика к writeable местоположению.
Для получения дополнительной информации о работе с датчиками в приложении смотрите, Создают Ведущий Сценарий В интерактивном режиме и Генерируют Синтетические Данные о Датчике.
Это изображение показывает, что выборка обновила настройку датчика.
Чтобы сгенерировать блоки Simulink для сценария и его датчиков, на панели инструментов приложения, выбирают Export> Export Simulink Model. Эта модель показывает демонстрационные блоки, которые экспортировались из приложения.
open_system('AEBGeneratedScenarioAndSensors')
Если вы не внесли изменений в дороги и агентов в сценарии, то блок Scenario Reader читает ту же дорогу и данные об агенте, которые использовались в модели AEB. Ведущие Радарные блоки Генератора Обнаружения Генератора и Видения Данных моделируют радар и камеру, которую вы создали в приложении.
Замените сценарий и датчики в модели AEB с недавно сгенерированным сценарием и датчики. Даже если вы не изменили дороги и агентов и считали данные из того же файла сценария, заменение существующего блока Scenario Reader является все еще лучшой практикой. Используя этот сгенерированный блок сохраняет имена шины для сценария и датчиков сопоставимыми, когда данные передают между ними.
Чтобы начать, в модели AEB, вновь открыли Среду Транспортного средства> Агенты и подсистема Симуляции Датчика.
open_system('AEBTestBenchExample/Vehicle and Environment/Actors and Sensor Simulation')
Затем, чтобы справиться сценарий и блоки датчика со сгенерированными единицами, выполните эти шаги:
Удалите существующее Средство чтения Сценария, Управляя Радарным Генератором Данных и блоками Генератора Обнаружения Видения. Не удаляйте сигнальные линии, которые вводятся с блоком Scenario Reader или выходом от блоков датчика. В качестве альтернативы отключите эти блоки, не удаляя их и прокомментируйте их из модели. Используя эту опцию, можно сравнить существующие блоки с новым и вернуться назад в случае необходимости. Выберите каждый блок. Затем на вкладке Block выберите Comment Out.
Скопируйте блоки из сгенерированной модели в модель AEB.
Откройте скопированный - в блоке Scenario Reader и установите Источник параметра автомобиля, оборудованного датчиком к Input port
. Нажать ОК. Модель AEB задает автомобиль, оборудованный датчиком в блоке Pack Ego Actor, который вы соединяете с портом Ego Vehicle блока Scenario Reader.
Соедините существующие сигнальные линии со скопированным - в блоках. Чтобы очистить размещение модели, на вкладке Format модели, выбирают Auto Arrange.
Проверьте, что обновленная блок-схема подсистемы напоминает существующую ранее блок-схему. Затем сохраните модель или сохраните копию модели к writeable местоположению.
Чтобы визуализировать обновленную симуляцию сценария, вновь откройте Bird ' s-Eye Scope, нажмите Find Signals, и затем нажмите Run. С этой обновленной настройкой датчика автомобиль, оборудованный датчиком не тормозит вовремя.
Чтобы попробовать различные настройки датчика, перезагрузите сценарий и датчики в приложении, экспортируйте новые сценарии и датчики, и скопируйте их в модель AEB.
Когда вы закончите симулируя модель, удалите папку в качестве примера из пути поиска файлов MATLAB.
rmpath(genpath(fullfile(matlabroot,'examples','driving')))