Three-axis Accelerometer

Реализуйте акселерометр с тремя осями

  • Библиотека:
  • Aerospace Blockset / GNC / Навигация

  • Three-axis Accelerometer block

Описание

Блок Three-Axis Accelerometer реализует акселерометр на каждой из этих трех осей. Для получения дополнительной информации об измеренных ускорениях идеала см. Алгоритмы.

Опционально, чтобы применить дискретизации к входным параметрам блока Three-Axis Accelerometer и динамике наряду с нелинеаризацией измеренных ускорений, используйте блок Saturation.

Значок блока Three-axis Accelerometer отображает модули ввода и вывода, выбранные из параметра Units.

Ограничения

  • Ошибка Vibropendulous и гистерезисные эффекты не составляются в этом блоке.

  • Этот блок не предназначается, чтобы смоделировать внутреннюю динамику различных форм инструмента.

Порты

Входной параметр

развернуть все

Фактические ускорения в зафиксированных телом осях в виде трехэлементного вектора, в модулях заданы в параметре Units.

Типы данных: double

Угловые уровни в зафиксированных телом осях в виде трехэлементного вектора, в радианах в секунду.

Типы данных: double

Угловые ускорения в зафиксированных телом осях в виде трехэлементного вектора, в радианах в секунду придали квадратную форму.

Типы данных: double

Местоположение центра тяжести в виде трехэлементного вектора, в модулях задано в параметре Units.

Типы данных: double

Сила тяжести в связанной оси в виде трехэлементного вектора, в модулях задана в параметре Units.

Типы данных: double

Вывод

развернуть все

Измеренные ускорения от акселерометра, возвращенного как трехэлементный вектор, в модулях, заданы в параметре Units.

Типы данных: double

Параметры

развернуть все

Модули ввода и вывода в виде:

МодулиУскорениеДлина
Metric (MKS) Метры в секунду придали квадратную формуМетры
English Ноги в секунду придали квадратную формуФуты

Программируемое использование

Параметры блоков: units
Ввод: символьный вектор
Значения: 'Metric (MKS)' | 'English'
Значение по умолчанию: 'Metric (MKS)'

Местоположение группы акселерометра в виде трехэлементного вектора, измеренного из нулевой данной величины (обычно нос) к в кормовой части, справа от вертикальной средней линии, и выше горизонтальной средней линии. Эта ссылка измерений является тем же самым для входа центра тяжести. Модули являются модулями, заданными в параметре Units.

Программируемое использование

Параметры блоков: acc
Ввод: символьный вектор
Значения: трехэлементный вектор
Значение по умолчанию: '[0 0 0]'

Чтобы вычесть силу тяжести из ускоряющих показаний, установите этот флажок.

Программируемое использование

Параметры блоков: gtype
Ввод: символьный вектор
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Чтобы применить динамику второго порядка к ускоряющим показаниям, установите этот флажок.

Программируемое использование

Параметры блоков: dtype_a
Ввод: символьный вектор
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Собственная частота акселерометра в виде двойного скаляра, в радианах в секунду.

Программируемое использование

Параметры блоков: w_a
Ввод: символьный вектор
Значения: двойной скаляр
Значение по умолчанию: '190'

Коэффициент затухания акселерометра в виде двойного скаляра, без размерностей.

Программируемое использование

Параметры блоков: z_a
Ввод: символьный вектор
Значения: двойной скаляр
Значение по умолчанию: '0.707'

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

Программируемое использование

Параметры блоков: a_sf_cc
Ввод: символьный вектор
Значения: 3х3 матрица
Значение по умолчанию: '[1 0 0; 0 1 0; 0 0 1]'

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

Программируемое использование

Параметры блоков: a_bias
Ввод: символьный вектор
Значения: 3х3 матрица
Значение по умолчанию: '[0 0 0]'

Частота обновления акселерометра в виде двойного скаляра, в секундах. Частота обновления 0 создает непрерывный акселерометр. Если флажок Noise on устанавливается, и частота обновления 0, блок обновляет шум на уровне 0,1.

Совет

Если вы:

  • Обновите это значение параметров к 0 (непрерывный)

  • Сконфигурируйте решатель фиксированного шага для модели

необходимо также установить флажок Automatically handle rate transition for data transfer в панели Solver. Этот флажок позволяет программному обеспечению обработать переходы уровня правильно.

Программируемое использование

Параметры блоков: a_Ts
Ввод: символьный вектор
Значения: двойной скаляр
Значение по умолчанию: '0'

Чтобы применить белый шум к ускоряющим показаниям, установите этот флажок.

Программируемое использование

Параметры блоков: a_rand
Ввод: символьный вектор
Значения: 'on' | 'off'
Значение по умолчанию: 'on'

Скалярные seed для Гауссова шумового генератора для каждой оси акселерометра в виде трехэлементного вектора.

Зависимости

Чтобы включить этот параметр, выберите Noise on.

Программируемое использование

Параметры блоков: a_seeds
Ввод: символьный вектор
Значения: трехэлементный вектор
Значение по умолчанию: '[23093 23094 23095]'

Высота степени спектральной плотности (PSD) белого шума для каждой оси акселерометра в виде трехэлементного вектора, в:

  • (m/s2) / Гц, когда Units установлен в Metric (MKS)

  • (ft/s2) / Гц, когда Units установлен в English

Зависимости

Чтобы включить этот параметр, выберите Noise on.

Программируемое использование

Параметры блоков: a_pow
Ввод: символьный вектор
Значения: трехэлементный вектор
Значение по умолчанию: '[0.001 0.001 0.001]'

Три минимальных значения и три максимальных значения ускорения в каждой из осей акселерометра в виде вектора с шестью элементами, в модулях заданы в параметре Units.

Программируемое использование

Параметры блоков: a_sat
Ввод: символьный вектор
Значения: вектор с шестью элементами
Значение по умолчанию: '[-inf -inf -inf inf inf inf]'

Алгоритмы

Идеал измерил ускорения (A¯imeas) включайте ускорение в оси тела в центре тяжести (A¯b) и эффекты руки рычага из-за акселерометра, не находящегося в центре силы тяжести. Опционально, сила тяжести в осях тела может быть удалена. Это представлено уравнением:

A¯imeas=A¯b+ω¯b×(ω¯b×d¯)+ω¯˙b×d¯g¯

где ω¯b зафиксированы телом угловые уровни, ω¯˙b зафиксированы телом угловые ускорения, и d¯ рука рычага. Рука рычага (d¯) задан как расстояния, что группа акселерометра вперед, право, и ниже центра тяжести:

d¯=[dxdydz]=[(xaccxCG)yaccyCG(zacczCG)]

Ориентация осей раньше определяла местоположение группы акселерометра (xacc, yacc, zacc), и центр тяжести (xCG, yCG, zCG) из нулевой данной величины (обычно нос) к в кормовой части, справа от вертикальной средней линии и выше горизонтальной средней линии. Ось X и ось z этих осей измерения напротив зафиксированных телом осей, которые производят знаки минус в руках рычага для оси X и оси z.

Измеренные ускорения (A¯meas) выведите этим блоком, содержат ошибочные источники и заданы как

A¯meas=A¯imeas×A¯SFCC+A¯bias+noise,

где A¯SFCC 3х3 матрица масштабных коэффициентов на диагонали и условиях неточного совмещения в недиагональном, и A¯bias смещения.

Ссылки

[1] Роджерс, R. M. прикладная математика в интегрированных системах навигации, образовательном ряду AIAA, 2000.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью Simulink® Coder™.

Представлено до R2006a