Гироскоп акселерометр GY-521

278 руб.

2 в наличии

Артикул: 20 Категория:

Описание

GY-521 (рис. 1) – модуль с гироскопом, акселерометром и термометром на базе микросхемы MPU-6050 используется в любительской робототехнике для  определения положения в пространстве.

mpu-6050-01.jpg

 

Рисунок 1. Модуль GY521.

Модуль GY-521 построен на базе микросхемы MPU6050. На плате модуля также расположена необходимая обвязка MPU6050, включая подтягивающие резисторы интерфейса I2C. Гироскоп используется для измерения линейных ускорений, а акселерометр – угловых скоростей. Совместное использование акселерометра и гироскопа позволяет определить движение тела в трехмерном пространстве.


Характеристики модуля GY-521 (MPU6050)

 

  • Питание: 3,5 – 6 В;
  • Ток потребления: 500 мкА;
  • Акселерометр диапазон измерений: ± 2 ± 4 ± 8 ± 16g,
  • Гироскоп диапазон измерений: ± 250 500 1000 2000 ° / s,
  • Интерфейс: I2C.

Подключение к плате Arduino

Подключение к плате Arduino по интерфейсу I2C. Схема подключения показана на рис. 2.

mpu-6050-02.jpg

 

Рисунок 2.

Загрузив на плату Arduino скетч сканирования I2C-устройств (Листинг 1), в мониторе последовательного порта увидим I2C-адрес модуля MPU6050 – 0x68 (рис. 3).

Листинг 1

mpu-6050-03.jpg

 

Рисунок 3.


Получение показаний датчика MPU6050

Для работы с датчиком MPU6050 будем использовать библиотеки I2Cdev и MPU6050. После установки библиотек загрузим на плату Arduino скетч для отображения показаний акселерометра по одной из осей – оси x. Содержимое скетча показано в листинге 2.

Листинг 2

Для отображения данных выбираем в настройках Плоттер по последовательному соединению (рис. 4). Смотрим показания вращая датчик по оси x в одну и другую стороны.

mpu-6050-04.jpg

 

Рисунок 4.

Библиотека MPU6050 по умолчанию настраивает датчик на диапазон ±8g (возможные значения ±2g, 4g, 8g и 16g). для 16 разрядного АЦП датчика это значения от -215 до 215 , поэтому возможные значения на графике ±215/16*8 (-16384 до 16384).

Скетч из листинга 3 преобразует сырые показания датчика MPU6050 в угол наклона датчика относительно оси x.

Листинг 3

И смотрим показания угла наклона, вращая датчик по оси x в одну и другую стороны (рис. 5).

mpu-6050-05.jpg

 

Рисунок 5.


Пример использования

В качестве примера рассмотрим проект по созданию пульта на MPU6050 для удаленного управления движущейся платформой.

Нам потребуются следующие компоненты. Для пульта управления:

 

  • Плата Arduino Nano – 1;
  • Плата прототипирования – 1;
  • Модуль MPU6050 – 1;
  • передатчик FS1000A – 1;
  • Провода.

 

Для движущейся платформы:

 

  • Плата Arduino Nano – 1;
  • Двухколесная движущаяся платформа – 1;
  • Модуль драйвера L298N – 1;
  • приемник MX-RM-5V – 1;
  • Блок батарей 18650 – 1;
  • Провода.

Схема соединения элементов пульта управления показана на рис. 6.

mpu-6050-06.jpg

 

Рисунок 6.

Схема соединений для компонентов для движущейся платформы показана на рис. 7.

mpu-6050-07.jpg

 

Рисунок 7.

Приступим к написанию скетчей. Передатчик отправляет 3 значения – начальный байт отправки B11111111 и 2 значения наклона датчика – по оси x и по оси y.

Содержимое скетча показано в листинге 4.

Листинг 4

Плата Arduino на движущейся платформе должна получать данные и преобразовывать их в команды установки скорости для двух моторов.

Содержимое скетча показано в листинге 5.

Листинг 5

mpu-6050-08.jpg

 

Рисунок 8. Пульт

mpu-6050-09.jpg

 

Рисунок 9. Движущаяся платформа


Часто задаваемые вопросы

 

Вопрос: Нет данных с датчика MPU6050
Ответ: Проверьте правильность подключения датчика к плате Arduino.