exponenta event banner

Создание измерений датчиков INS на основе интерактивного сценария вождения

Приложение «Конструктор сценариев вождения» позволяет создавать сценарии вождения в интерактивном режиме и создавать синтетические данные датчиков для тестирования автоматизированных алгоритмов вождения. В сценариях вождения, представляющих географические местоположения, можно добавить датчик, который плавит измерения из инерциальной навигационной системы (INS) и глобальной навигационной спутниковой системы (GNSS), такой как GPS, и генерировать взрывательные измерения. Затем можно экспортировать эти данные синтетического инерционного датчика в MATLAB ® для дальнейшего анализа.

Импорт дорожной сети

Для получения реалистичных данных датчиков INS и GNSS из приложения необходимо использовать дорожную сеть, основанную на реальном географическом местоположении. В этом примере используется дорожная сеть, которая импортируется из OpenStreetMap ®. Это та же дорожная сеть, что и в примере Import OpenStreetMap Data in Driving Scription.

  1. Откройте приложение «Конструктор сценариев управления».

    drivingScenarioDesigner

  2. На панели инструментов приложения выберите Импорт и затем OpenStreetMap.

  3. В диалоговом окне OpenStreetMap Import найдите этот файл, где matlabroot является корнем папки MATLAB:

    matlabroot/examples/driving/data/applehill.osm

    Файл был загружен из https://www.openstreetmap.org, которая обеспечивает доступ к картографическим данным из толпы по всему миру. Данные лицензированы по лицензии Open Data Commons Open Database License (ODbL), https://opendatacommons.org/licenses/odbl/.

    После загрузки файла в разделе «Выбор дорог» диалогового окна отображается дорожная сеть для кампуса MathWorks ® Apple Hill.

    A map displaying the road network for the MathWorks Apple Hill campus. The geographic reference point has a latitude of 42.2997 degrees and a longitude of negative 71.3504 degrees.

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

    Apple Hill campus map with bottom-left road segment selected in blue.

  5. Щелкните Импорт (Import). Приложение импортирует дорогу и создает дорожную сеть.

    The road network of the MathWorks Apple Hill campus in the Driving Scenario Designer app.

Добавление актера и траектории

Для создания траектории, совместимой с показаниями датчиков INS и GNSS, траектория должна быть плавной, с минимальным рывком и без разрывов в ускорении. Создайте актера и укажите траекторию, следующую за дорогой.

  1. На панели инструментов приложения выберите Добавить актера, а затем Автомобиль.

  2. На Холсте сценария щелкните, чтобы добавить автомобиль в правый конец дороги.

    Car added to the right end of the road

  3. Щелкните автомобиль правой кнопкой мыши и выберите Добавить навигационные точки вперед. Затем щелкните, чтобы добавить ППМ вдоль длины дороги. При добавлении последнего ППМ нажмите ENTER, чтобы зафиксировать траекторию дороги.

    Car with trajectory following the length of the road

Сглаживание траектории

Используя значения траектории по умолчанию, автомобиль движется с постоянной скоростью 30 м/с (около 67 миль/ч) через каждый ППМ. Эта скорость подходит для сценария шоссе, но не для географического местоположения, используемого в этом примере. Уменьшите скорость автомобиля до 5 м/с (около 11 миль в час) и укажите более медленные скорости вокруг поворота.

  1. На вкладке «Действующие лица» слева в разделе «Траектория» установите для параметра «Постоянная скорость» (м/с) значение 5. В таблицах «ППМ», «Скорости», «Время ожидания» и «Время ожидания» приложение уменьшает значения v (м/с) с 30 кому 5.

  2. Для ППМ вокруг поворота уменьшите значения v (m/s) до 4. В этом образце траектории автомобиль замедляется до 4 м/с, когда он достигает ППМ 5, поддерживает эту скорость через ППМ 6 и 7 и ускоряется обратно до 5 м/с к моменту достижения ППМ 8.

    Trajectory with waypoints labeled 1 through 8 and the corresponding values in the v (m/s) table overlaid on the scenario canvas. Waypoints 5, 6, and 7 are set to 4 m/s. All other waypoints are set to 5 m/s.

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

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

    • Увеличьте расстояние между ППМ, где автомобиль снижает скорость (между ППМ 4 и 5 на предыдущем изображении). Увеличенное расстояние дает автомобилю больше времени на замедление. Точно так же можно увеличить расстояние между ППМ, где автомобиль увеличивает скорость (между ППМ 7 и 8 на предыдущем изображении).

    • Уменьшите значения скорости и убедитесь, что разница в скорости между ППМ не слишком велика. Используя в качестве примера предыдущее изображение, если бы для последнего ППМ была указана скорость 10 м/с, у автомобиля не было бы достаточно места для разгона до этой скорости от 4 м/с.

    • Увеличьте значение параметра рывка (m/s3). Увеличение этого значения увеличивает количество возможных траекторий, которые приложение может вычислить за счет снижения комфорта для пассажиров-людей.

Добавить датчик INS

Установите датчик ИНС на автомобиль.

  1. На панели инструментов приложения щелкните Добавить INS.

  2. На холсте датчика нажмите, чтобы добавить датчик INS в предварительно определенное расположение заднего окна. При размещении датчика в этом месте датчик устанавливается в начале координат эго-транспортного средства.

    Sensor canvas with INS sensor in green mounted to Rear Window location

  3. (Необязательно) На вкладке «Сенсоры» слева измените параметры измерения сенсора. Например, можно изменить точность показаний рыскания, тангажа и крена или точность измерения положения, скорости и ускорения.

Моделирование сценария

Создайте данные INS из сценария путем моделирования сценария. На панели инструментов приложения нажмите кнопку Выполнить. Bird 's-Eye Plot не показывает данных датчика, поскольку приложение не поддерживает визуализацию датчика INS.

Если моделирование выполняется слишком медленно, учитывая медленные скорости, используемые на траектории, увеличьте время выборки сценария. На панели инструментов приложения нажмите кнопку «Параметры» и настройте параметр «Sample Time (ms)».

Экспорт и просмотр данных датчиков

Приложение «Конструктор сценариев управления» позволяет экспортировать данные из последнего прогона моделирования. Экспортируйте данные датчика сценария в рабочее пространство MATLAB и просмотрите сгенерированные измерения INS.

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

  2. Имя экспортируемой переменной данных датчика sensorData и нажмите кнопку ОК.

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

    sensorData
    sensorData = 
    
      1×89 struct array with fields:
    
        Time
        ActorPoses
        ObjectDetections
        LaneDetections
        PointClouds
        INSMeasurements
  4. Просмотрите данные для первого измерения INS. Измерения INS хранятся в массиве ячеек структур. Поскольку сценарий содержит только один датчик INS, массив ячеек имеет только одну структуру. Поля структуры измерения INS совпадают с полями, создаваемыми при генерации измерений из insSensor object™ системы. Показанное здесь измерение INS будет отличаться от измерения в экспортируемой переменной.

    sensorData(1).INSMeasurements{:}
    ans = 
    
      struct with fields:
    
            Orientation: [0.5389 0.4500 160.6807]
               Position: [-48.1293 -72.3647 0.9084]
               Velocity: [-4.7473 1.6082 -0.0525]
           Acceleration: [7.0945e-11 2.0255e-10 0]
        AngularVelocity: [3.0819e-15 -1.5500e-15 -2.4593e-09]

Также можно экспортировать функцию MATLAB для воспроизведения сценария и датчика INS в командной строке MATLAB, выбрав в приложении команду Экспорт, а затем функцию MATLAB. Датчик INS, возвращаемый этой функцией, является insSensor Системный объект.

См. также

Приложения

Объекты

Функции

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