Электронный компонент:Плата Xadow с компасом

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Плата Xadow с компасом

Эта плата оснащена 3-осевым цифровым компасом, чья точность составляет 1-2 градуса. Основной компонент платы – это датчик магнитных полей HMC5883, и он коммуницирует с микроконтроллером через шину I2C.

Купить плату Xadow с компасом можно по этой ссылке.

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

  • Рабочее напряжение – 3.3 вольта
  • Линейность – не более 0.1% от полной шкалы (в диапазоне ±2 гаусс)
  • Разрешение – 10 мГс (миллигаусс)
  • Диапазон измерения – от ±1 до ±8 гаусс
  • I2C-адрес:
    • 7 бит – 0x1E
    • 8 бит (чтение) – 0x3D
    • 8 бит (запись) – 0x3C
  • Рабочая температура – от -30°C до +85°C
  • Размеры – 25.43 мм х 20.35 мм

Демо-проект

Давайте сделаем проект, который будет считывать с компаса «сырые» данные, калибровать эти данные, используя магнитное склонение для вашего региона, и, наконец, указывать направление (в градусах и радианах).

Как найти магнитное склонение

Перед тем, как продолжить, нам нужно рассчитать магнитное склонение для места, в котором вы находитесь. В градусах его можно узнать по этой ссылке. К примеру, магнитное склонение для места, в котором нахожусь я – это -2°37’, что в переводе на градусы означает -2.617˚. Теперь эти градусы нужно преобразовать в радианы, и это рассчитывается так: -2.617 / (2 x π) = -0.0456752665 рад. Но нам будет достаточно и 4 цифр после точки, поэтому сокращаем это значение до -0.0456 рад. Это значение вы должны будете задать для переменной declinationAngle, которая находится в самом начале демо-скетча.

Примечание: Подключая кабель, следите за тем, чтобы одна его сторона была подключена к порту, который находится на стороне со срезанными углами, а другая – к порту, который находится на стороне с целыми углами. Пример показан на картинке выше.

Код

Теперь загрузите библиотеку «Grove 3-Axis Digital Compass» и установите ее в IDE Arduino. О том, как устанавливать библиотеки в IDE Arduino, читайте здесь или здесь.

Откройте в IDE Arduino демо-скетч «HMC5883L_Example», кликнув на Файл > Примеры > Digital Compass > HMC5883L_Example (Файл > Примеры > Digital Compass > HMC5883L_Example). Замените значение в переменной declinationAngle на то, что рассчитали выше.

Загрузите код и откройте монитор порта, чтобы посмотреть результаты.

Полезные ссылки

См.также

Внешние ссылки