Смещение нуля гироскопа
Неподвижный гироскоп показывает не ноль, а небольшую угловую скорость. Эта ошибка — смещение нуля — сама по себе мала, но при вычислении угла она складывается и за минуты превращается в десятки градусов.
Обновлено Редакция GAW
Смещение нуля гироскопа (zero-rate offset, gyro bias) — угловая скорость, которую показывает неподвижный гироскоп. Это аналог напряжения смещения усилителя: постоянная ошибка, которая есть даже без сигнала.
Значения из даташитов Bosch:
| Датчик | Смещение нуля | Условия |
|---|---|---|
| BMI160 | ±3 °/с | 25 °C, без быстрой компенсации |
| BMI270 | ±0,5 °/с | после пайки, за срок службы |
Почему это важно. Угол поворота по гироскопу получают интегрированием угловой скорости. Постоянное смещение интегрируется вместе с ней и растёт линейно:
При 0,5 °/с ошибка за минуту — 30°, при 3 °/с — 180°. Поэтому «просто проинтегрировать гироскоп» можно лишь на коротких отрезках времени.
Шум и смещение — разные вещи. Шум — быстрые случайные колебания; у BMI160 при плотности 0,007 °/с/√Гц и фильтре 74,6 Гц это 0,07 °/с среднеквадратично. Он уменьшается усреднением. Смещение — сдвиг среднего значения, и усреднение его не трогает.
Как бороться:
- Калибровка в покое. При включении держат устройство неподвижным, усредняют показания гироскопа и вычитают результат из последующих.
- Встроенная компенсация. У BMI160 по даташиту есть быстрая компенсация смещения (FOC), настраиваемая регистром FOC_CONF.
- Учёт температуры. Bosch отдельно нормирует изменение смещения с температурой — значит, калибровка при одной температуре со временем устаревает.
- Слияние данных. В долгой работе угол наклона корректируют по акселерометру, курс — по магнитометру, и смещение гироскопа перестаёт накапливаться.
Подробнее о выборе датчиков — в статье об акселерометрах и гироскопах.
Частые вопросы
Почему угол по гироскопу уходит, даже когда датчик неподвижен?
Из-за смещения нуля. Гироскоп в покое показывает небольшую скорость поворота, а угол получают интегрированием скорости, поэтому ошибка растёт линейно со временем. При смещении 0,5 °/с, как у BMI270 по даташиту, через минуту угол уйдёт на 30°, через 10 минут — на 300°.
Как уменьшить смещение нуля?
Измерить его в покое и вычесть. Простейший способ — при старте усреднить показания неподвижного гироскопа за секунду-другую. У BMI160 по даташиту есть встроенная быстрая компенсация смещения (FOC), которая делает это аппаратно. Смещение меняется с температурой, поэтому в долгой работе его уточняют с помощью акселерометра — слиянием данных.
Чем смещение нуля отличается от шума?
Шум — быстрые случайные колебания вокруг среднего, он уменьшается усреднением и узкой полосой фильтра: у BMI160 0,07 °/с при фильтре 74,6 Гц. Смещение — постоянная ошибка среднего значения, усреднение его не убирает. Для угла смещение опаснее: оно накапливается при интегрировании.
Источники
- Bosch Sensortec. BMI160 Data Sheet (BST-BMI160-DS000-09, Revision 1.0, November 2020) — смещение нуля гироскопа ±3 °/с при 25 °C без быстрой компенсации; шум 0,007 °/с/√Гц, 0,07 °/с ср. кв. при фильтре 74,6 Гц; быстрая компенсация смещения FOC настраивается регистром FOC_CONF
- Bosch Sensortec. BMI270 Data Sheet (BST-BMI270-DS000-08, Revision 1.6) — смещение нуля гироскопа ±0,5 °/с после пайки за срок службы; отдельно задано изменение смещения с температурой; шум 0,007 °/с/√Гц в режиме производительности
Нашли ошибку?
Смотрите также
- Акселерометры и гироскопыBMI160, BMI270, BMI323, BNO055: параметры, дрейф гироскопа, слияние, подключение
- Слияние данных датчиковОбъединение акселерометра, гироскопа и магнитометра в оценку ориентации
- Спектральная плотность шуманВ/√Гц: шум усилителя в полосе 1 Гц
- Напряжение смещения нуляVos: постоянная ошибка ОУ, усиленная шумовым усилением