+7-960-0655211 (Билайн)
+7-987-4207734 (МТС)
интернет-магазин
доставка по России и СНГ
работаем с 2010 года

Гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF

2 845 руб
+ -
В корзину
Есть в наличии ( 1 )
AltIMU-10 v6 Gyro, Accelerometer, Compass, and Altimeter (LSM6DSO, LIS3MDL, and LPS22DF Carrier) /2863/

Pololu AltIMU-10 v6 это инерциальный измерительный блок IMU и высотомер на основе микросхем LSM6DSO 3-осевой гироскоп и 3-осевой акселерометр и LIS3MDL 3-осевой магнитометр как MinIMU-9 и добавлен LPS22DF барометр. По последовательной шине данных I²C передаются данные о 10 независимых измерениях - давлении, вращении, ускорении и магнитных, которые могут быть использованы для определения высоты и абсолютного положения. На плате установлен стабилизатор напряжения 3,3 В и преобразователи логического уровня от 2,5 до 5,5 В. Расстояние между выводами 2,54 мм делает плату простой в использовании со стандартными макетными и монтажными платами.

Описание

Эта компактная (25,4 х 12,7 мм) плата Pololu AltIMU-10 является инерциальным измерительным устройством, содержащая микросхемы: ST LPS22DF барометр, ST LSM6DSO 3-осевой гироскоп и 3-осевой акселерометр и ST LIS3MDL 3-осевой магнитометр формируют инерциальный измерительный блок IMU и высотомер; поэтому мы настоятельно рекомендуем, перед использованием этого продукта, ознакомиться со спецификацией LSM6DSO (3MB pdf), со спецификацией LIS3MDL (2MB pdf) и со спецификацией LPS22DF (1MB pdf). Эти датчики являются великолепными интегральными схемами, но маленький корпус делает их использование затруднительным, особенно для обучения и хобби. Они также работают от напряжения ниже 3,6 В, что затрудняет их подключение к микроконтроллерам работающим от 5 В. Эти проблемы решены в этой плате Pololu, путём добавления дополнительных электронных компонентов, в том числе 3,3 В стабилизатора напряжения и схемы смещения логического уровня, сохраняя при этом компактный размер устройства. На плате полностью установлены SMD компоненты и в том числе LSM6DSO, LIS3MDL и LPS22DF, как это показано на фотографии продукта.

Pololu AltIMU-10 совместим по контактам с Pololu MinIMU-9 и имеет ту же функциональность, плюс дополнен барометром, который может быть использован для получения измерений давления и высоты. Плата имеет дополнительно второе монтажное отверстие и всего на 5,1 мм больше чем Pololu MinIMU-9. Любой код написанный для Pololu MinIMU-9 также должен работать с Pololu AltIMU-10.


У LSM6DSO, LIS3MDL и LPS22DF есть много настраиваемых параметров, включая динамического выбора чувствительности для барометра, гироскопа, акселерометра и магнитометра, а также выбор выходной скорости передачи данных для каждого датчика. Эти три микросхемы могут быть доступны через общий I²C/TWI интерфейс, позволяющий отдельно считывать данные всех четырех датчиков, через одну шину синхронизации и одну шину данных. Кроме того, контакт конфигурации адреса ведомого устройства позволяет пользователям изменять I²C адреса датчиков и получить два Pololu Pololu AltIMU-10 подключенными к одной шине I²C.(Для получения дополнительной информации, смотрите ниже раздел "Передача данных по I²C").

Девять независимых показаний вращения, ускорения и магнитных измерений предоставляют все необходимые данные для системы определения пространственного положения (курсовертикаль) AHRS, а показания с датчика абсолютного давления может быть легко преобразованы в высоту, давая вам в общей сложности десять независимых измерений, иногда называют 10DOF (10 степеней свободы). Используя соответствующий алгоритм, микроконтроллер или компьютер может использовать данные для расчета ориентации платы Pololu AltIMU-10; гироскоп позволяет очень точно отслеживать вращение за короткий промежуток времени, в то время как акселерометр и компас могут помочь компенсировать дрейф данных гироскопа с течением времени, путем предоставления абсолютной системы отсчета. Датчики объединены на плате так, что ориентированность их осей облегчает процесс вычисления. (Пример использования на Arduino, смотрите рисунок ниже и в разделе "Пример Кода" в нижней части этой страницы).


Плата включает в себя стабилизатор с низким падением напряжения, обеспечивающий 3,3 В необходимые для LSM6DSO, LIS3MDL и LPS22DF и позволяет подключать датчик к внешнему источнику питания 2,5 - 5,5 В. Выход стабилизатора доступен на VDD ножке, и может служить источником питания внешних устройств с током потребления до 150 мА. Плата также включает в себя схему, смещающую (подтягивающую) шины синхронизации и данных интерфейса I²C к напряжению логического уровня вывода VIN, что делает её простой для взаимодействия с 5 В устройствами, а 2,54 мм расстояние между штырьками упрощает использование ее со стандартными макетными и монтажными платами.

Спецификация
  • Рабочее напряжение: от 2,5 до 5,5 В
  • Потребляемый ток: 5 мА
  • Выходной формат (I²C):
    • Гироскоп: 16-бит на ось (чтение).
    • Акселерометр: 16-бит на ось
    • Магнитометр: 16-бит на ось
    • Барометр: 24-битное значение давления (4096 LSB/мбар)
  • Диапазон чувствительности (конфигурируемый):
    • Гироскоп: ±125, ±250, ±500, ±1000 или ±2000 °/сек
    • Акселерометр: ±2, ±4, ±8 или ±16 g
    • Магнитометр: ±4, ±8, ±12 или ±16 Гс
    • Барометр: 260-1260 мбар (26-126 кПа)
  • Размеры (без штырьевых разъёмов): 25 х 13 х 3 мм
  • Вес (без штырьевых разъёмов): 0,8 гр
В комплект входят

Вилка штыревая прямая 1x6 шаг 2,54 мм и вилка штыревая угловая 1x5 шаг 2,54 мм. Вы можете припаять разъёмы прямо к плате и использовать со стандартными макетными и монтажными платами с расстоянием между выводами 2,54 мм, либо припаять провода прямо на плату для более компактной конструкции.


Использование

Подключение

Для подключения платы Pololu AltIMU-10 необходимо, по крайней мере, 4 контакта: VIN (питание), GND (земля), SCL и SDA (выводы датчиков). VIN необходимо соединить с источником питания 2,5 - 5,5 В, GND к нулевому потенциалу – "земле", а SCL и SDA подключаются через шину I²C, работающей на том же логическом уровне, что и VIN. (Кроме того, если вы используете плату с питанием в 3,3 В, вы можете оставить разъём VIN отключенным и обойти встроенный стабилизатор, подключив 3,3 В непосредственно к VDD).


Распиновка
Вывод Пояснение
VDD Выход со стабилизатора 3,3 В. Почти 150 мА доступно для питания внешних компонентов. (Если вы хотите, обойти внутренний стабилизатор, вы можете использовать разъём как вход питания 3,3 В, предварительно отключив VIN.)
VIN Входное напряжение 2,5 - 5,5 В. Уровни SCL и SDA "подтягиваются" шиной I²C до этого уровня. (Напряжение питания соответствует высокому логическому уровню на выводах).
GND Земля (0 В) соединяется с нулевым потенциалом (землёй) вашего источника питания. Земля должна быть общей для источника питания и для интерфейса управления платой I²C.
SCL Уровень смещением шины синхронизации SCL I²C: ВЫСОКИМ является уровень VIN, НИЗКИМ = 0 В.
SDA Уровень смещением шины данных SDA I²C: ВЫСОКИМ является уровень VIN, НИЗКИМ = 0 В.
SA0 Вход с логическим уровнем 3,3 В для определения ведомого адреса I²C трех микросхем (см. ниже). Он подтянут по умолчанию через 10 кОм. Этот вывод не "подтягивается" до 5 В.

Контакты CS, data ready, interrupt - LSM6DSO и LIS3MDL не доступны на AltIMU-10. В частности, отсутствие контакта CS означает, что дополнительный интерфейс SPI этих микросхем не доступен. Если вы хотите эти функции, рассмотрите вопрос об использовании отдельных модулей Pololu LSM6DSO, Pololu LIS3MDL и Pololu LPS22DF.

Схема

На схеме продемонстрированы дополнительные компоненты платы, необходимые для упрощения использования LSM6DSO, LIS3MDL и LPS22DF. В их числе стабилизатор напряжения - он позволяет плате работать от питания 2,5 - 5,5 В и схема сдвига уровня, позволяющая I²C связываться на том же логическом уровне напряжения, что и VIN. Эта схема также доступна в виде загружаемого PDF: Схема Pololu AltIMU-10 (107k pdf).

Коммуникация по I²C

Данные с LPS22DF барометр, LSM6DSO гироскоп и акселерометр и LIS3MDL магнитометр могут быть запрошены, и устройство может быть настроено через шину I²C. Четыре датчика выступают в качестве ведомых устройств на той же шине I²C (то есть их синхронизирующие выводы, и линия передачи данных связаны друг с другом, чтобы облегчить связь). Кроме того, сдвиг уровня на I²C синхронизации (SCL) и линии передачи данных (SDA) позволяют I²C взаимодействовать с микроконтроллерами, работающими на таком же напряжении, как и VIN (2,5 - 5,5 В). Более полное описание I²C интерфейса для этих микросхем можно найти в спецификации LSM6DSO (3MB pdf), в спецификации LIS3MDL (2MB pdf) и спецификации LPS22DF (1MB pdf), а также более подробную информацию о I²C в целом можно найти в спецификации NXP шины I²C (1MB pdf).

LSM6DSO, LIS3MDL и LPS22DF имеют отдельные адреса ведомого на шине I²C. На плате соединены вместе контакты "адрес ведомого" SA0 этих микросхем и подтянуты к VDD через резистор 10 кОм. Вы можете подать управляющий низкоуровневый сигнал на контакт SA0, чтобы изменить адрес ведомого. Это позволит подключить два однотипных датчика к одной шине I²C. В следующей таблице приведены адреса ведомых датчиков:

Датчик Адрес ведомого
(по умолчанию)
Адрес ведомого
(SA0 управляющий низкий)
Гироскоп/Акселерометр 1101011b 1101010b
Mагнитометр 0011110b 0011100b
Барометр 1011101b 1011100b

При тестировании платы, была достигнута передача с трех чипов на тактовых частотах до 400 кГц; датчики способен работать и на более высоких частотах, но соответствующие испытания проведены не были. Сами чипы и платы не отвечают некоторым требованиям для создания I²C - совместимых устройств, работающих в быстром режиме. Они пропускают 50 нс импульс на шинах синхронизации и передачи данных, а также требуют дополнительную подтяжку на эти выводы для достижения совместимых характеристик сигнала синхронизации.

Пример кода

Написаны основные библиотеки для работы с Arduino Библиотека LSM6 для Arduino, Библиотека LIS3MDL для Arduino и Библиотека LPS22DF для Arduino, которые позволяют легко взаимодействовать Pololu AltIMU-10 с Arduino. Эти библиотеки сделали плату простой для настройки датчиков и считывания первоначально необработанных данных барометра, гироскопа, акселерометра и магнитометра.

Для демонстрации того, что вы можете сделать с этими данными, вы можете включить Arduino, подключить к Pololu AltIMU-10 систему определения углового пространственного положения с помощью этой программы для Arduino. Она использует данные из Pololu AltIMU-10 для оценки углов курса (рысканья), тангажа и крена, и вы можете наглядно увидеть выходные данные в 3D-программе, на своём компьютере.

Рекомендации

Спецификации предоставляют всю необходимую информацию для использования датчиков на Pololu AltIMU-10, но поиск необходимой информации может занять некоторое время. Вот некоторые советы по соединению и настройке LSM6DSO, LIS3MDL и LPS22DF, которые, помогут вам разобраться немного быстрее:

  • Гироскоп, акселерометр, компас и барометр по умолчанию отключены. Вам необходимо включить их, установив правильную конфигурацию регистров.
  • Вы можете считывать или записывать несколько регистров LIS3MDL или LPS22DF в одной I²C команде, утверждая самый значимый бит адреса регистра для включения автоматического увеличения адреса.
  • Адрес регистра в LSM6DSO автоматически увеличивается во время многобайтового доступа, что позволяет считывать или записывать несколько регистров в одной команде I²C. В отличие, от работы некоторых других типов датчиков ST, автоприращение включено по умолчанию; вы можете отключить его с полем IF_INC в регистре CTRL3_C.
  • Помимо справочных данных, ST предоставляет Руководство по применению для LSM6DSO (2МБ PDF), LIS3MDL (598k PDF) и LPS22DF (519k pdf), содержащих дополнительную информацию и подсказки о их использовании.

  • Данный перевод является собственностью интернет-магазина Robototehnika.ru

    Файлы для скачивания:
    Спецификация LSM6DSO (3MB pdf)
    Техническое описание микросхемы ST LSM6DSO - 3-осевой цифровой гироскоп и 3-осевой акселерометр.

    AN5192: Руководство по применению LSM6DSO (2MB pdf)
    Руководство по применению от ST предоставляет информацию об использовании и рекомендации по применению для LSM6DSO - 3-осевой цифровой гироскоп и 3-х осевой акселерометр.

    Спецификация LIS3MDL (2MB pdf)
    Техническое описание микросхемы ST LIS3MDL - 3-осевой магнетометр.

    AN4602: Руководство по применению LIS3MDL (598k pdf)
    Руководство по применению от ST предоставляет информацию об использовании и рекомендации по применению для LIS3MDL - 3-осевой магнетометр.

    Спецификация LPS22DF (1Мб pdf)
    Техническое описание микросхемы ST LPS22DF - барометр.

    Примечание по применению AN5699: рекомендации по аппаратному обеспечению для системной интеграции LPS22DF (519k pdf)
    Примечание по применению AN5699: рекомендации по аппаратному обеспечению для системной интеграции LPS22DF.

    Спецификация и руководство пользователя NXP шины I²C (1MB pdf)
    Официальная спецификация для шины I²C, разработанной NXP.

    Принципиальная схема датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF (119k pdf)
    Печатаемая принципиальная схема датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF.

    Схема размеров датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF (310k pdf)
    Печатаемая схема размеров датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF.

    Схема отверстий датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF (21k dxf)
    Этот чертеж DXF показывает расположение всех отверстий платы.

    3D модель датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF (4MB step)
    3D модель датчика гироскоп, акселерометр, компас, высотомер Pololu AltIMU-10 v6 на LSM6DSO, LIS3MDL, LPS22DF.

    Рекомендуемые ссылки:
    Библиотека LSM6 для Arduino
    Эта библиотека служит для взаимодействия Arduino с LSM6DSO 3-осевой гироскоп и 3-осевой акселерометр.

    Библиотека LIS3MDL для Arduino
    Эта библиотека служит для взаимодействия Arduino с LIS3MDL 3-осевой магнитометр.

    Библиотека LPS для Arduino
    Эта библиотека служит для взаимодействия Arduino с платой датчика давления/высоты Pololu на LPS22DF, LPS25HB и LPS331AP, а также с высотомером платы Pololu AltIMU-10. Эта библиотека позволяет легко настроить устройство и читать исходные данные, а также предоставили функцию вычисления высоты на основе измеренного давления для тех, кто хочет использовать этот датчик в качестве высотомера.

    Курсовертикаль (AHRS) Pololu MinIMU-9 + Arduino
    Эта программа Arduino (скетч) позволяет Arduino подключить к Pololu MinIMU-9 и AltIMU-10 для работы в качестве системы определения пространственного положения (курсовертикаль), расчета приблизительно крена, тангажа и рыскания углов с показаний датчиков, которые могут быть визуализированы с помощью 3D тестовой программа на ПК.

    Быстрая и грубая калибровка магнетометра в 3-х мерном пространстве.
    Пост в блоге Михаэля Шимниока о калибровке магнитометра в LSM303D и визуализации магнитных искажений. Эта информация как правило может быть применена также и к другим магнитометрам.

    Характеристики

    Артикул 04020207