Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
В этом руководстве я хочу показать, как использовать датчик LSM303 для создания компаса с компенсацией наклона. После первой (неудачной) попытки разобрался с калибровкой датчика. Благодаря этому показатели магнитометра значительно улучшились. Комбинация откалиброванных значений магнитометра и акселерометра привела к созданию компаса с компенсацией наклона.
Что вам нужно:
1 Arduino Uno
1 LSM303DHLC Прорыв
1 макетная плата
1 резистор 220 Ом
1 потенциометр 10k
1 ЖК-дисплей 2x16 в 4-битном режиме
1 картонный футляр
1 компас
1 транспортир
Некоторые провода
Шаг 1: Создание исходных данных для калибровки
Калибровка выполняется отдельно для магнитометра и акселерометра каждый раз одинаково. На первом этапе необработанные данные датчика считываются в 12 определенных положениях (Рисунок 5.2). Затем данные коррекции рассчитываются с помощью Magmaster 1.0 (Рисунок 5.3) и могут быть оценены в соответствующем скетче. Вы можете найти здесь очень хорошее руководство
www.instructables.com/id/Easy-hard-and-soft-iron-magnetometer-calibration/
Спасибо, ЮрийМат!
Скетч Arduino «LSM303DHLC_Acc_andMag_Raw_Measurements_201218.ino» предоставляет необходимые необработанные данные. Для этого вы можете выбрать источник в строке 17.
Для работы с Magmaster 1.0 закройте окно Serial Monitor.
Шаг 2: Создание калиброванных измерений
Чтобы получить калиброванные измерения магнитометра и акселерометра, передайте значения в матрице преобразования и смещения в эскизе Arduino «LSM303DHLC_Tilt_compensated_Compas_211218», строки 236–246 для магнитометра, 268–278 для акселерометра.
В качестве проверки в эскизе также приводится сравнение необработанных данных и калиброванных значений датчика. Кроме того, вы можете проверить показания с помощью компаса и транспортира.
Шаг 3: Добавление ЖК-дисплея
ЖК-дисплей используется для отображения текущего положения относительно магнитного поля Земли. Ось X датчика указывает на север, где 0 ° соответствует магнитному северу. Значение увеличивается при повороте по часовой стрелке до 360 °. Наклон датчика хорошо компенсируется, но не должен превышать 45 °.
Подключение ЖК-дисплея 16x2 является стандартным и хорошо объяснено в следующем руководстве по Arduino:
www.arduino.cc/en/Tutorial/HelloWorld
Я надеюсь, что смогу вдохновить вас на новые инструкции, и я с нетерпением жду ваших проектов.