Arduino L3GD20H
тел. +7(499)347-04-82
Описание Arduino L3GD20H
L3GD20H — Трёхосный цифровой гироскоп (Arduino-совместимый)
Описание
L3GD20H — это малопотребляющий трёхосный цифровой гироскоп (датчик угловой скорости) производства STMicroelectronics. Широко используется в Arduino-проектах благодаря модулям-брейкаутам от Adafruit, Pololu, SparkFun и других производителей.
Датчик измеряет угловую скорость по трём осям (X, Y, Z) и передаёт данные по интерфейсу I²C или SPI. Внутри корпуса совмещены чувствительный элемент (MEMS) и ASIC-схема обработки сигнала с 16-битным АЦП. L3GD20H — улучшенная версия популярного L3GD20 (отличия: больше диапазонов, встроенный FIFO, улучшенные фильтры).
Датчик часто используется вместе с акселерометром LIS3DH или магнитометром LIS3MDL в составе 9-DOF или 10-DOF IMU (например, плата Adafruit 10-DOF IMU).
Технические характеристики
| Параметр | Значение | |---|---| | Тип | Трёхосный гироскоп (MEMS) | | Интерфейсы | I²C (до 400 кГц), SPI (до 10 МГц) | | Напряжение питания | 2.2 … 3.6 В | | Потребление | 6.1 мА (в рабочем режиме), 2 мкА (power-down) | | Измерительные диапазоны | ±245, ±500, ±2000 °/с (dps) | | Разрядность | 16 бит (ADC) | | Чувствительность | 8.75 / 17.50 / 70 мdps/LSB (соответственно диапазонам) | | Нулевой дрейф | ±10 °/ч typ. (при 25 °C) | | Нелинейность | 0.2 % FS | | Плотность шума | 0.011 dps/√Гц (низкий ODR) | | Выходная частота (ODR) | 12.5 … 800 Гц | | Встроенные фильтры | LPF1, LPF2, High-Pass | | FIFO | 32 уровня | | Встроенный температурный датчик | Да | | Прерывания | 2 программируемых (INT1, INT2): data ready, threshold, overrun | | Диапазон рабочих температур | −40 … +85 °C | | Корпус | LGA-16, 3×3×1 мм | | Соответствие | RoHS, Green |
Парт-номера (Part Numbers)
Микросхемы STMicroelectronics
- L3GD20HTR — основной коммерческий парт-номер (LGA-16, tape & reel)
- L3GD20H — базовая маркировка микросхемы при заказе
- L3GD20 — предыдущее поколение (совместим по I²C-адресам, отличается ODR и FIFO)
- STEVAL-MKI132V2 — оценочная плата ST с L3GD20H
Готовые модули / брейкауты
| Производитель | Парт-номер | Примечание | |---|---|---| | Adafruit | 1348 (Board), 1714 | Adafruit L3GD20H Triple-Axis Gyro | | Pololu | 2129, 2128 | Minimu-9 v5 содержит L3GD20H | | Pololu | 2150, 2467 | AltIMU-10 v4/v5 (L3GD20H + LSM303D/LPS25H) | | SparkFun | SEN-12767 | Gyro Breakout (старая ревизия, L3GD20H) | | DFRobot | SEN0224 | 3-Axis Gyro Module |
Совместимые модели и контроллеры
Arduino-платы
- Arduino Uno / Uno R3 / Uno WiFi Rev2
- Arduino Leonardo, Micro, Pro Micro (3.3 В на шине — нужен уровень-шифтер)
- Arduino Mega 2560
- Arduino Due (3.3 В-логика, прямое подключение)
- Arduino Nano 33 IoT / Nano 33 BLE / BLE Sense
- Arduino MKR-серия (MKR1000, MKR WiFi 1010, MKR Zero)
- ESP8266 / ESP32 / ESP32-S3
- Raspberry Pi Pico / RP2040
⚠ Важно: логика микросхемы — 3.3 В. При подключении к 5-В Arduino (Uno, Mega, Leonardo) обязательно используйте Level Shifter или шифтер на модуле Adafruit (у него есть встроенный на I²C-линиях).
Аналоги / взаимозаменяемые датчики
- L3GD20 (совместим по регистрам I²C, но меньше ODR)
- L3G4200D (старший предшественник для 3.3 В систем)
- MPU-6050, MPU-9250 (гироскоп + акселерометр; другие регистры)
- ITG-3200, ITG-3205 (InvenSense)
- BMI160, ICM-20602 (новое поколение, 6-DOF)
Библиотеки для Arduino
- Adafruit_L3GD20_U (в составе Adafruit Unified Sensor)
- Pololu L3G library
- SparkFun L3GD20H Arduino Library
- ST's standard peripheral driver (raw registry-level)
- Работа с любым 6/9-DOF fusion: MadgwickAHRS, MahonyAHRS, RTIMULib
Базовая инициализация через Adafruit_L3GD20_U
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_L3GD20_U.h>
Adafruit_L3GD20_Unified gyro = Adafruit_L3GD20_Unified(20);
void setup() {
Serial.begin(9600);
gyro.enableAutoRange(true);
gyro.begin();
}
void loop() {
sensors_event_t event;
gyro.getEvent(&event);
Serial.print(event.gyro.x); Serial.print(", ");
Serial.print(event.gyro.y); Serial.print(", ");
Serial.println(event.gyro.z);
delay(100);
}
Адрес I²C по умолчанию: 0x6A (можно изменить на 0x6B перемычкой SDO/SA0).