gyroparams

Параметры датчика гироскопа

Описание

gyroparams класс создает объект параметров датчика гироскопа. Можно использовать этот объект смоделировать гироскоп при симуляции IMU с imuSensor. Смотрите раздел Algorithms imuSensor для деталей gyroparams моделирование.

Создание

Описание

params = gyroparams возвращает идеальный объект параметров датчика гироскопа со значениями по умолчанию.

params = gyroparams(Name,Value) конфигурирует gyroparams свойства объектов с помощью одного или нескольких Name,Value парные аргументы. Name имя свойства и Value соответствующее значение. Name должен появиться в одинарных кавычках (''). Можно задать несколько аргументов пары "имя-значение" в любом порядке как Name1,Value1,...,NameN,ValueN. Любые незаданные свойства берут значения по умолчанию.

Свойства

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

Максимальный датчик, читающий в rad/s в виде действительной положительной скалярной величины.

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

Разрешение измерений датчика в (rad/s) / LSB в виде действительного неотрицательного скаляра. Здесь, LSB является акронимом для младшего значащего бита.

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

Постоянное смещение датчика смещает в rad/s в виде действительного скалярного или вектора-строки с 3 элементами. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Оси датчика скашиваются в проценте в виде скаляра, вектора-строки с 3 элементами или 3х3 матрицы со значениями в пределах от 0 к 100. Диагональные элементы матрицы составляют эффекты неточного совмещения для каждого, исключает. Недиагональные элементы составляют эффекты неточного совмещения перекрестных осей. Измеренный v состояния measure получен из истинного v состояния measure через матрицу неточного совмещения как:

vmeasure=1100Mvtrue=1100[m11m12m13m21m22m23m31m32m33]vtrue

  • Если вы задаете свойство как скаляр, то все недиагональные элементы матрицы принимают, значение заданного скаляра и всех диагональных элементов равняется 100.

  • Если вы задаете свойство как вектор [a b c], то m 21 = m 31 = a, m 12 = m 32 = b и m 13 = m 23 = c. Все диагональные элементы равняются 100.

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

Спектральная плотность мощности шума датчика в (rad/s) / √Hz в виде действительного скалярного или вектора-строки с 3 элементами. Это свойство соответствует углу случайному обходу (ARW). Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Нестабильность смещения возмещена в rad/s в виде действительного скалярного или вектора-строки с 3 элементами. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Интегрированный белый шум датчика в (rad/s) (√Hz) в виде действительного скалярного или вектора-строки с 3 элементами. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Смещение датчика от температуры в ((rad/s) / ℃) в виде действительного скалярного или вектора-строки с 3 элементами. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Ошибка масштабного коэффициента от температуры в (% / ℃) в виде действительного скалярного или вектора-строки с 3 элементами со значениями в пределах от от 0 до 100. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Смещение датчика от линейного ускорения в (rad/s) / (m/s2) в виде действительного скалярного или вектора-строки с 3 элементами. Любой скалярный вход преобразован в действительный вектор-строку с 3 элементами, где каждый элемент имеет входное скалярное значение.

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

Примеры

свернуть все

Сгенерируйте данные о гироскопе для объекта imuSensor от стационарных входных параметров.

Сгенерируйте объект параметра гироскопа чтение датчика имеющее 4,363 rad/s и разрешение 1.332e-4 (rad/s)/LSB. Постоянное смещение смещения 0.349 rad/s. Датчик имеет спектральную плотность мощности 8.727e-4 rad/s/Hz.  смещение от температура  0.349 rad/s/0C. Смещение от температуры 0.349 (rad/s2)/0C. Ошибка масштабного коэффициента от температуры составляет 0,2%/0C. Оси датчика скашиваются на 2%. Смещение датчика от линейного ускорения является 0.178e-3 (rad/s)/(m/s2)

params = gyroparams('MeasurementRange',4.363,'Resolution',1.332e-04,'ConstantBias',0.349,'NoiseDensity',8.727e-4,'TemperatureBias',0.349,'TemperatureScaleFactor',0.02,'AxesMisalignment',2,'AccelerationBias',0.178e-3);

Используйте частоту дискретизации 100 Гц, растянутых более чем 1 000 выборок. Создайте объект imuSensor использование объекта параметра гироскопа.

Fs = 100;
numSamples = 1000;
t = 0:1/Fs:(numSamples-1)/Fs;

imu = imuSensor('accel-gyro','SampleRate', Fs, 'Gyroscope', params);

Сгенерируйте данные о гироскопе из объекта imuSensor.

orient = quaternion.ones(numSamples, 1);
acc = zeros(numSamples, 3);
angvel = zeros(numSamples, 3);
 
[~, gyroData] = imu(acc, angvel, orient);

Отобразите результирующие данные о гироскопе на графике.

plot(t, gyroData)
title('Gyroscope')
xlabel('s')
ylabel('rad/s')

Figure contains an axes object. The axes object with title Gyroscope contains 3 objects of type line.

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

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

Смотрите также

| |

Введенный в R2018b