Arduino GY-2561
тел. +7(499)347-04-82
Описание Arduino GY-2561
Отличный выбор датчика! GY-2561 — это популярный модуль на базе магнитометра HMC5883L от Honeywell. Он используется для измерения магнитного поля Земли (определения направления) и обнаружения ферромагнитных объектов.
Вот подробное описание, характеристики и совместимость.
Описание модуля GY-2561
Модуль GY-2561 — это компактная плата с 3-осевым цифровым магнитометром. Он предназначен для применения в электронных компасах, системах навигации, системах ориентации (например, в роботах, дронах), детекторах металла и системах с фиксированным положением.
Ключевые особенности:
- Цифровой интерфейс: Общение по I2C, что упрощает подключение к Arduino и другим микроконтроллерам.
- Высокая чувствительность: Способен обнаруживать изменения магнитного поля менее 1 градуса.
- Низкое энергопотребление.
- На плате присутствуют: необходимые обвязочные компоненты, подтягивающие резисторы для I2C, стабилизатор напряжения и светодиод питания.
- Недостаток (важно!): Чувствителен к помехам от других электронных компонентов и внешних магнитных полей. Требует калибровки для точных измерений.
Технические характеристики
Характеристики приведены для основного чипа HMC5883L:
| Параметр | Значение / Описание | | :--- | :--- | | Основной чип | Honeywell HMC5883L | | Интерфейс связи | I2C (адрес по умолчанию: 0x1E) | | Напряжение питания | 3.3В (ВАЖНО! Вход VCC модуля рассчитан на 3.3В. На многих платах GY-2561 есть встроенный стабилизатор, позволяющий подавать и 5В, но логические уровни остаются 3.3В). | | Диапазон измерений | Программно настраиваемый: ±0.88, ±1.3, ±1.9, ±2.5, ±4.0, ±4.7, ±5.6, ±8.1 Гаусса | | Разрешение | До 5 миллигаусс (0.5 микротесла) при диапазоне ±1.3 Гаусса | | Частота обновения | До 160 Гц (программно настраивается) | | Количество осей | 3 (X, Y, Z) | | Тип датчика | Магниторезистивный | | Рабочая температура | -40°C ~ +85°C | | Размеры модуля | Примерно 15.5мм x 12.5мм |
Парт-номера и совместимые модели
1. Основная микросхема (Part Number)
- HMC5883L — оригинальный чип от Honeywell. Это главный компонент, который определяет все характеристики модуля.
- QMC5883L / QMC5883 — популярный совместимый по выводам и протоколу аналог от китайской компании SinoWealth. Часто встречается на модулях, маркированных как GY-271 или даже под старым названием GY-2561. Имеет некоторые отличия в регистрах, но многие библиотеки поддерживают оба чипа.
- HMС5883 — более старая версия (аналог).
2. Совместимые модули (физически и функционально)
Эти модули практически идентичны по распиновке и назначению выводов, но могут быть основаны на разных чипах:
- GY-271 — самый распространенный современный аналог. Чаще всего основан на QMC5883L. Функционально полный аналог GY-2561.
- HMC5883L Breakout Board (от Adafruit, SparkFun и др.) — оригинальные отладочные платы от известных производителей. Имеют лучшее качество и документацию.
- CMPS11, CMPS12 — готовые компасные модули от Robot Electronics, которые используют HMC5883L в составе вместе с акселерометром и процессором, выполняющим калибровку и вычисление угла.
3. Совместимые библиотеки для Arduino
Для работы с модулем используются библиотеки, которые часто поддерживают оба чипа (HMC5883L и QMC5883L):
- Adafruit_HMC5883_U — библиотека от Adafruit для HMC5883L.
- QMC5883LCompass — популярная и простая библиотека, изначально для QMC5883L, но часто работает и с HMC5883L после указания правильного адреса I2C.
- HMC5883L — другие библиотеки с прямым названием чипа.
Важное примечание для подключения к Arduino
- Напряжение: Если на вашем модуле нет стабилизатора (или вы не уверены), НИКОГДА не подавайте 5В на вывод VCC. Используйте вывод 3.3V на Arduino.
- Логические уровни: Поскольку датчик работает на 3.3В, его выводы SDA и SCL также используют логику 3.3В. Большинство современных плат Arduino (Uno, Nano, Mega) имеют 5В-толерантные входы, поэтому прямое подключение обычно работает. Но для надежности лучше использовать преобразователь логических уровней (Level Shifter).
- Адрес I2C: Стандартный адрес HMC5883L — 0x1E. Адрес QMC5883L — 0x0D. Проверьте это с помощью сканера I2C-адресов.
Пример подключения (прямого, на свой риск) к Arduino Uno:
- VCC → 3.3V (на Arduino)
- GND → GND
- SCL → A5 (или SCL на новых платах)
- SDA → A4 (или SDA на новых платах)
Рекомендация: Перед покупкой или использованием уточните, на каком именно чипе (HMC5883L или QMC5883L) сделан ваш конкретный модуль GY-2561, так как от этого зависит выбор библиотеки и адрес I2C. В 90% случаев сегодня это QMC5883L.