Хелпикс

Главная

Контакты

Случайная статья





Навигация при помощи модуля гироскоп-акселерометра (MPU-6050)



Навигация при помощи модуля гироскоп-акселерометра (MPU-6050)

 

       Акселерометр — это прибор, позволяющий измерять ускорение тела под действием внешних сил.

       В основе этого модуля лежит микросхема MPU6050, в которой размещаются сразу два датчика: акселерометр и гироскоп. На плате уже имеется вся необходимая обвязка, а также преобразователь напряжения.


Рисунок 4. Акселерометр

       Модуль датчика помогает определять место и перемещение в пространстве. Измеряются дифферент и углы крена посредством вектора силы тяжести и скорости в процессе вращения. Также включена функция измерения температурного режима. Перемещение определяется линейным ускорением и угловой скоростью. Полная картина рисуется по 3 осям.

Характеристики модуля MPU6050 ROC:

· напряжение питания: от 3,5 до 6 В;

· потребляемый ток: 500 мкА;

· ток в режиме пониженного потребления: 10 мкА при 1,25 Гц, 20 мкА при 5 Гц, 60 мкА при 20 Гц, 110 мкА при 40 Гц;

· диапазон: ± 2, 4, 8, 16g;

· разрядность АЦП: 16;

· интерфейс: I2C (до 400 кГц).

На плате имеется 8 контактов:

· VCC — положительный контакт питания;

· GND — земля;

· SDA — линия данных I2C;

· SCL — линия синхроимпульсов I2C;

· INT — настраиваемое прерывание;

· AD0 — I2C адрес; по-умолчанию AD0 подтянут к земле, поэтому адрес устройства — 0x68; если соединить AD0 к контактом питания, то адрес изменится на 0x69;

· XCL, XDA — дополнительный I2C интерфейс для подключения внешнего магнитометра

Подключение MPU6050 к Ардуино


Рисунок 5. Подключения датчика к плате Arduino

 

       Для работы программы потребуются библиотеки: MPU6050.

       Загружаем программу на Ардуино и открываем окно графика. Поворачиваем датчик вокруг оси X на 90 градусов в одну сторону, потом на 90 в другую. Получится примерно такая картина.

Рисунок 6. Вывод информации от модуля гироскоп-акселерометра

 

       На графике хорошо видно, что при наклоне оси Y вертикально, акселерометр выдает значения близкие к четырём тысячам. Откуда берется это число?

       Дело в том, что датчик MPU6050 позволяет настраивать точность измерений. Можно выбрать один из четырех классов точности: ±2G, 4G, 8G и 16G, где 1G — это одна земная гравитация. Используемая нами библиотека по-умолчанию настраивает датчик на диапазон ±8G (прим. по ссылке внизу статьи библиотека по-умолчанию устанавливает ±2G).

       С другой стороны, MPU6050 имеет 16 разрядный АЦП. 2 в степени 16 даст нам число 65 536. Поскольку датчик может измерять и отрицательное и положительное ускорение, то он будет выдавать нам числа от -32768 до +32768.

       Сложив эти два факта вместе получаем, что при таких настройках 1G будет равен числу 4096 (ну а -1G равен числу -4096). Это вполне совпадает с наблюдаемыми на графике значениями!

       Следующий шаг — преобразование этих странных чисел в привычные нам углы, измеряемые в градусах.


Рисунок 7. Обработанная информации от модуля гироскоп-акселерометра

 

       Ну вот, мы получили уже что-то пригодное для дальнейшего использования. Видно, что датчик поворачивался сначала на 30 с лишним градусов в одну сторону, потом примерно на 60 в другую.

       Для получения координат нужна будет библиотека - Kalman (Gy-521, mpu6050), которая преобразует показания координат X и Y.

Преимущества использования акселерометра:

1. Акселерометр позволяет замерять шаги. Акселерометр способен отслеживать резкие движения устройства, а в зависимости от его настройки и чувствительности, считать некоторые из них за шаг.

2. Измеряет поворот экрана. Здесь уже оба устройства работают в паре. Ведь когда вы поворачиваете смартфон набок, картинка должна изменить свою ориентацию для пользователя, и лишь с помощью гироскопа удаётся определить угол наклона, под которым ПО это должно будет сделать.

3. Компас, карты и навигация. Акселерометр с гироскопом позволяют определить ориентацию устройства в пространстве, что необходимо в различных приложениях для мобильной навигации.



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.