Добавить в корзинуПозвонить
Найти в Дзене
Паяльник и код

Делаем электронный уровень инклинометр с Arduino Nano

В этой статье мы рассмотрим создание цифрового измерителя уровня (инклинометр, креномер, уклономер) своими руками на основе платы Arduino Nano и MPU6050 Основной компонент проекта — датчик MPU6050. Это 3-х осевой акселерометр и 3-х осевой гироскоп, объединенных в одну микросхему. Также он имеет в своем составе датчик температуры и цифровой канал с памятью, что позволяет с его помощью решать достаточно сложные задачи. Этот датчик часто используется при создании дронов и различных роботов с дистанционным управлением, в особенности самобалансирующихся роботов У меня он был в наличии. Был приобретем с набором гайвер кит очень давно. Оказался не рабочим. Проект не хотел откладывать, поэтому заказал дорогой с быстрой доставкой с mm.ru Схема включения Результат выводится на дисплей 0.91" OLED В качестве корпуса на том же сайте купил Алюминиевый строительный уровень, тип Рельс. Самый дешевый в интернете. Размером 40см Все компоненты хорошо на нем умещаются. Сделал дырку для размещения MPU6050.

В этой статье мы рассмотрим создание цифрового измерителя уровня (инклинометр, креномер, уклономер) своими руками на основе платы Arduino Nano и MPU6050

Основной компонент проекта — датчик MPU6050. Это 3-х осевой акселерометр и 3-х осевой гироскоп, объединенных в одну микросхему. Также он имеет в своем составе датчик температуры и цифровой канал с памятью, что позволяет с его помощью решать достаточно сложные задачи. Этот датчик часто используется при создании дронов и различных роботов с дистанционным управлением, в особенности самобалансирующихся роботов

У меня он был в наличии. Был приобретем с набором гайвер кит очень давно. Оказался не рабочим. Проект не хотел откладывать, поэтому заказал дорогой с быстрой доставкой с mm.ru

Схема включения

-2

Результат выводится на дисплей 0.91" OLED

-3

В качестве корпуса на том же сайте купил Алюминиевый строительный уровень, тип Рельс. Самый дешевый в интернете. Размером 40см

-4

Все компоненты хорошо на нем умещаются. Сделал дырку для размещения MPU6050. Плюс добавил аккумулятор с платой зарядки и кнопкой вкл/выкл

-5

Исходный код

Инклинометр.zip — Яндекс Диск

Первое нужно откалибровать устройство. Для этого ставим уровень на заранее выбранное ровное место. Прошиваем устройство прошивкой «InkKolibrovka». Получаем три коэффициента. Полученные данные вставляем в код «Inklinometr»

const float OFFSET_X = 0.6;
const float OFFSET_Y = -0.14;
const float OFFSET_Z = 1.72;

Теперь его можно прошить на устройство

Немного по коду

Библиотеки

#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>

лежат в папке «bibl». Из России они не скачиваются обычным образом

Сложно получить угол в 90 градусов. Поэтому используется поправочный коэффициент 1.011 Выбирается методом подбора из 1.008, 1.011, 1.012

Остальное стандартные вычисления

На дисплей выводится Наклон X, Наклон Y, и текущая температура с датчика на MPU6050

Вот что получилось

На горизонтальной поверхности

-6

На вертикальной

-7

Такое ощущение, что работает)

На две недели уезжаю на дачу, где и протестирую устройство