Toolbox™ слияния и отслеживания датчиков позволяет моделировать инерциальные единицы измерения (IMU), глобальные системы позиционирования (GPS) и инерциальные навигационные системы (INS). Можно моделировать определенное оборудование, задав для свойств моделей значения из таблиц технических данных оборудования. Можно настроить свойства окружающей среды и шума для имитации реальных сред. Эти модели можно использовать для тестирования и проверки алгоритмов слияния или в качестве заполнителей при разработке более крупных приложений.
В этом учебном пособии представлен обзор моделей инерционных датчиков и GPS в Sensor Fusion and Tracking Toolbox.

Чтобы узнать, как создать движение «земля-истина», которое управляет моделями датчиков, см. раздел waypointTrajectory и kinematicTrajectory. Учебное пособие по плавлению данных инерциальных датчиков см. в разделе Определение ориентации с помощью инерциальных датчиков.
IMU - электронное устройство, установленное на платформе. IMU состоит из отдельных датчиков, которые сообщают различную информацию о движении платформы. IMU объединяют несколько датчиков, которые могут включать акселерометры, гироскопы и магнитометры.

С помощью этой панели инструментов измерения, полученные из модели IMU, используют следующие условные обозначения единиц измерения и координат.
| Продукция | Описание | Единицы | Система координат |
|---|---|---|---|
| Ускорение | Показания текущего акселерометра | м/с2 | Корпус датчика |
| Угловая скорость | Показания текущего гироскопа | рад/с | Корпус датчика |
| Магнитное поле | Показания магнитометра тока | μT | Корпус датчика |
Обычно данные, возвращаемые IMU, сплавляются вместе и интерпретируются как крен, шаг и рыскание платформы. Реальные IMU-датчики могут иметь различные оси для каждого из отдельных датчиков. Модели, поставляемые Sensor Fusion и Tracking Toolbox, предполагают, что отдельные оси датчиков выровнены.

Для создания модели датчика IMU используйте imuSensor object™ системы.
IMU = imuSensor
IMU =
imuSensor with properties:
IMUType: 'accel-gyro'
SampleRate: 100
Temperature: 25
Accelerometer: [1×1 accelparams]
Gyroscope: [1×1 gyroparams]
RandomStream: 'Global stream'Модель IMU по умолчанию содержит идеальный акселерометр и идеальный гироскоп. accelparams и gyroparams объекты определяют конфигурацию акселерометра и гироскопа. Можно задать свойства этих объектов для имитации определенного оборудования и сред. Для получения дополнительной информации об объектах параметров IMU см. accelparams, gyroparams, и magparams.
Для моделирования приема данных датчика IMU вызовите модель IMU с ускорением «земля-истина» и угловой скоростью платформы:
trueAcceleration = [1 0 0]; trueAngularVelocity = [1 0 0]; [accelerometerReadings,gyroscopeReadings] = IMU(trueAcceleration,trueAngularVelocity)
accelerometerReadings =
-1.0000 0 9.8100
gyroscopeReadings =
1 0 0Можно создавать траектории «земля-истина», вводимые в модель IMU с помощью kinematicTrajectory и waypointTrajectory.
Глобальная система позиционирования (GPS) обеспечивает 3-D информацию о местоположении платформ (приемников) на поверхности Земли.

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

Моделирование GPS, обеспеченное моделями Sensor Fusion и Tracking Toolbox платформа (приемник) данные, которые были уже обработаны и интерпретировались как высота, широта, долгота, скорость, groundspeed, и курс.
Измерения, полученные из модели GPS, используют следующие единицы измерения и условные обозначения координат.
| Продукция | Описание | Единицы | Система координат |
|---|---|---|---|
| LLA | Текущее глобальное положение, читающее в геодезических координатах, на основе модели wgs84Ellipsoid Earth | градусы (широта), градусы (долгота), метры (высота) | LLA |
| Скорость | Показания текущей скорости из GPS | м/с | локальный NED |
| Groundspeed | Показания текущей скорости от GPS | м/с | локальный NED |
| Курс | Текущее чтение курса из GPS | степени | локальный NED |
Модель GPS позволяет устанавливать параметры высокого уровня точности и шума, а также скорость обновления приемника и опорное местоположение.
Для создания модели GPS используйте gpsSensor Системный объект.
GPS = gpsSensor
GPS =
gpsSensor with properties:
UpdateRate: 1 Hz
ReferenceLocation: [0 0 0] [deg deg m]
HorizontalPositionAccuracy: 1.6 m
VerticalPositionAccuracy: 3 m
VelocityAccuracy: 0.1 m/s
RandomStream: 'Global stream'
DecayFactor: 0.999 Чтобы смоделировать прием данных GPS-датчика, вызовите модель GPS с положением «земля-истина» и скоростью платформы:
truePosition = [1 0 0]; trueVelocity = [1 0 0]; [LLA,velocity,groundspeed,course] = GPS(truePosition,trueVelocity)
LLA =
0.0000 0.0000 0.3031
velocity =
1.0919 -0.0008 -0.1308
groundspeed =
1.0919
course =
359.9566 Вы можете генерировать траектории «земля-истина», которые вы вводите в модель GPS с помощью kinematicTrajectory и waypointTrajectory.
Инерциальная навигационная система (ИНС) использует инерциальные датчики, подобные обнаруженным на ИМУ: акселерометры, гироскопы, магнитометры. ИНС плавит данные инерциального датчика для вычисления положения, ориентации и скорости платформы. ИНС/GPS использует данные GPS для коррекции ИНС. Обычно показания INS и GPS сплавляются с расширенным фильтром Калмана, где показания INS используются на этапе прогнозирования, а показания GPS используются на этапе обновления. Обычное применение для INS/GPS заключается в неактуальности, когда сигнал GPS ненадежен.
«INS/GPS» относится ко всей системе, включая фильтрацию. Имитация INS/GPS, предоставляемая Sensor Fusion и Tracking Toolbox, моделирует INS/GPS и возвращает положение, скорость и ориентацию, сообщаемые инерционными датчиками и приемником GPS, на основе движения «земля-истина».
Измерения, полученные из INS/GPS, используют следующие единицы измерения и условные обозначения координат.
| Продукция | Описание | Единицы | Система координат |
|---|---|---|---|
| Положение | Показания текущего положения из INS/GPS | метры | локальный NED |
| Скорость | Показания текущей скорости от INS/GPS | м/с | локальный NED |
| Ориентация | Показания текущей ориентации из INS/GPS | матрица кватерниона или вращения | Н/Д |
Для создания модели INS/GPS используйте insSensor Системный объект. Вы можете смоделировать реальную систему INS/GPS, настроив точность плавких данных: крен, тангаж, рыскание, положение и скорость.
INS = insSensor
INS =
insSensor with properties:
RollAccuracy: 0.2 deg
PitchAccuracy: 0.2 deg
YawAccuracy: 1 deg
PositionAccuracy: 1 m
VelocityAccuracy: 0.05 m/s
RandomStream: 'Global stream' Для моделирования приема данных датчиков INS/GPS вызовите модель INS/GPS с положением «земля-истина» и скоростью и ориентацией платформы:
trueMotion = struct( ... 'Position',[0 0 0], ... 'Velocity',[0 0 0], ... 'Orientation',quaternion(1,0,0,0)); measurement = INS(trueMotion)
measurement =
struct with fields:
Orientation: [1×1 quaternion]
Position: [0.2939 -0.7873 0.8884]
Velocity: [-0.0574 -0.0534 -0.0405]gpsSensor | imuSensor | insSensor