Назад в библиотеку

Применение акселерометров–гироскопов для регистрации параметров движения мобильной платформы.

Автор: В. В. Филонов, Е. К. Карпов
Источник:moluch.ru

Целью данной работы является изучение возможности одновременного применения двух модулей гироскопов-акселерометров с микроконтроллером Atmega328 или ATmega 32u4 для регистрации данных.


При исследовании процессов управляемого движения и поворота мобильных платформ важно регистрировать большой объём различных параметров. Это и скорость вращения колёс, и угловые ускорения платформы вокруг оси, перпендикулярной к плоскости движения. Для случая, когда движение осуществляется по трассе на наклонной поверхности, необходимо также измерять скорость и направления вращения мобильного робота вокруг его поперечной и продольной осей. В работе используются два модуля GY-521 (рис. 1) с гироскопом, акселерометром и термометром – MPU-6050. Эти модули имеют следующие характеристики:

  1. 16–битный АЦП;
  2. напряжение питания от 3В до 5В;
  3. поддержка протокола I2C;
  4. возможность одновременной передачи информации с встроенного трёхосевого гироскопа, трёхосевого акселерометра и датчика температуры.
Внешний вид модуля GY-521

Рис. 1 – Внешний вид модуля GY-521

На микросхеме расположены следующие контакты:

  1. VCC – напряжение питания;
  2. GND– общий провод;
  3. SCL – тактовый сигнал I2C;
  4. SDA – данные I2C;
  5. XDA – данные шины I2C при работе в режиме мастера;
  6. XCL – тактовый сигнал шины I2C при работе в режиме мастера;
  7. ADO – бит 0 адреса I2C;
  8. INT – выход сигнала о готовности данных для использования как внешнего прерывания микроконтроллера.

Выбранные датчики можно использовать с микроконтроллерами серий Atmega328 и ATmega 32u4, причём применение стандартной библиотеки “Wire.h” значительно упрощает процесс программирования. В качестве платформы для подключения модулей был выбран мобильный двухколёсный робот “Arduino Robot” (Рисунок 2). Информация, получаемая с них, позволила бы рассчитывать мгновенный центр скоростей мобильной платформы при плоскопараллельном движении. Эти данные используются, например, для улучшения тормозных характеристик автомобилей.

Мобильная платформа “Arduino Robot”

Рис. 2 – Мобильная платформа “Arduino Robot”

Для достижения поставленной цели важны следующие его характеристики:

  1. два используемых в платформе микроконтроллера ATmega 32u4;
  2. наличие выходов питания для подключаемых датчиков с напряжением 5В;
  3. наличие входов, поддерживающих протокол I2C;
  4. поддержка библиотек, необходимых для работы с модулями;
  5. наличие флеш-карты памяти объёмом до 2 гигабайт, которую можно в дальнейшем использовать для хранения регистрируемых данных. Для подключения и дальнейшего использования модулей на мобильной платформе необходимо соединить контакты так, как показано на рис.3.
Подключение модулей кмобильной платформе

Рис. 3 – Таблица –Подключение модулей кмобильной платформе.

Отдельно стоит отметить, что контакт ADO у используемых датчиков подключается к разным выходам на платформе. Это делается для того, чтобы оба модуля корректно распознавались в процессе работы.

Для проверки собранной системы в “Arduino IDE” была написана простая программа, сделанная из примера для одного модуля, считывающая данные с двух датчиков и выводящая их на последовательный порт для дальнейшей обработки.

В ходе выполнения работы была собрана схема с микроконтроллером и двумя модулями гироскопов-акселерометров, а также написана программа для одновременной обработки данных, получаемых с них.

Дальнейшим развитием работы будет дополнение программы алгоритмами калибровки датчиков и подпрограммой сохранения полученных данных на флеш-карту.

Литература

  1. MPU-6050 Accelerometer + Gyro [Электронный ресурс] // Arduino [Web-сайт]. – Режим доступа:playground... Дата обращения 16.06.2018.
  2. Getting Started with the Arduino Robot [Электронный ресурс] // Arduino [Web-сайт]. – Режим доступа:www.arduino... Дата обращения 16.06.2018.