четверг, 23 мая 2024 г.

Магнетометр hmc5883 GY-271

Магнетометр hmc5883 GY-271 можно использовать например для квадрокоптера чтобы он не крутился или например для радиоуправляемого кораблика чтобы он мог знать в какую сторону плыть если потерял сигнал чтобы не пришлось нырять в воду за ним. Акселерометр с гироскопом не подходят т.к. их основная задача - это показывать в каком направлении нахдиться земля т.е. где низ а где верх т.е. ориентировать по вертикальной оси. Магнетометр же ориентирует по оставшимся двум осям. При заказе может попастя орининальный модуль HMC5883 либо не оригинальный QMC5883 для них нужны разнные библиотеки. Если попался QMC5883 то думаю последовательность действий будет примерно такой же. Заходим в менеджер библиотек среды ардуино. Скетчь -> Подключить библиотеку -> Управлять библиотеками

Далее вписываем в строке поиска hmc588
и для оригинала выбираем библиотеку adafruit HMC5883 unified
для не оригинала можно поискать другую библиотеку
Если появилось окно для выбора установки дополнительных библиотек то
нужно нажать кнопку установить все
после установки можно закрыть менеджер библиотек
и найти пример по вкладкам
файл->примеры->adafruit HMC5883 unified->magsensor
который можно открыть и загрузить в плату
После можно открыть монитор последовательного порта
выбрать скорость 9600 бод
и увидеть стартовую информацию 
и магнитные индукции в микротеслах по всем трем осям
а также угол компаса в градусах
если держать модуль осью Z вверх от земли
Теперь немного про скетчь вначале подключаются заголовочные файлы
потом назначается уникальный идентификатор
Потом есть функция для вывода стартовой информации

в функции setup() инициализируется последовательный порт и модуль магнетометра

после выводиться стартовая информация
в основном цикле у модуля беруться данные
и выводяться магнитные индукции по всем 3м осям в микроТеслах

Та ось по которой показывается больше тесел 
и есть более параллельна силовым линиям магнитного поля земли
если конечно рядом с датчиком нет магнитов создающих помехи
далее, насколько я понял, делается рассчет угла стрелки компаса
в градусах если держать датчик осью Z наверх
для удобства. И в конце основного цикла задержка.


Видео по теме данного магнетометра-

Адрес биткоин кошелька для поддержки - bc1qlhrmmkh77x2lzhqe4lt9qwkglswj64tsqt2l5g