Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Визуализация 3D-движения с датчиком IMU: практическое руководство

Компоненты и материалы

Компонент Количество
Arduino UNO 1
Инерциальный измерительный блок (IMU) 6 степеней свободы (MPU-6050) 1
Перемычки (generic) 1

Приложения и онлайн-сервисы

О проекте

Прежде чем перейти к программной части, соберем наши аппаратные комплекты.

Что такое датчик MPU-6050

Устройства MPU-6050 объединяют 3-осевой гироскоп и 3-осевой акселерометр на одном кристалле кремния, вместе с встроенным Цифровым процессором движения (DMP), который обрабатывает сложные 6-осевые алгоритмы MotionFusion. Теперь вы понимаете значение 6DOF — 6 степеней свободы.

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

Теперь перейдем к программе Processing, которая обеспечит 3D-визуализацию этого датчика движения.

Необходимое ПО:

Учитывая, что у вас уже установлен Arduino IDE, наличие двух отдельных IDE может немного сбить с толку. Не паникуйте. Следуйте шагам ниже, и все сомнения развяжутся!

Processing довольно похож на Arduino IDE за исключением нескольких специализированных функций. Вы увидите влияние/сходство в Processing IDE.

Рисунки 1 и 2 прояснят мои утверждения.

Теперь, когда вы установили Processing IDE, вам нужно загрузить специальную библиотеку «Toxi» для целей обработки. Найти файл «Toxi» в интернете может быть очень утомительно. Поэтому я упростил задачу, загрузив его на свой GitHub. Нажмите на эту ссылку и скачайте файл «toxiclibs-complete-0020». Затем распакуйте папку. Скопируйте папку «toxiclibs-complete-0020» и вставьте её в папку «libraries» Processing. Не можете найти «папку libraries»? Тогда создайте её! Да, если не найдете папку «libraries», создайте папку и назовите её «libraries». Теперь вставьте папку «toxiclibs-complete-0020» внутрь. После выполнения этих шагов запустите Processing IDE. Время кодировать!

Для 3D-визуализации сначала нужно загрузить код Arduino для MPU-6050 (извлеките .ino файл из папки MPU6050_DMP6.rar). После этого внесите следующие изменения:

Закомментируйте строку:

#define OUTPUT_READABLE_YAWPITCHROLL

на:

// #define OUTPUT_READABLE_YAWPITCHROLL

Раскомментируйте строку:

//#define OUTPUT_TEAPOT

на:

#define OUTPUT_TEAPOT

Затем откройте пример Processing для MPU-6050. В панели инструментов нажмите Файл → Открыть. Перейдите в папку, где установлена библиотека MPU-6050 для Arduino. Легко найти пример Processing: MPU6050 → Examples → MPU6050_DMP6 → Processing → MPUTeapot.

Как и в случае с Arduino IDE, проверьте последовательный порт, определенный в коде. По умолчанию строка определяет порт для Linux/Mac пользователей:

String portName = "/dev/ttyUSB1";

Вам нужно изменить String portName на порт, к которому подключен ваш Arduino. Смотрите Рисунок 3.

Для Windows пользователей закомментируйте эту строку:

//String portName = "/dev/ttyUSB1";

Раскомментируйте эту строку:

//String portName = "COM15";

на:

String portName = "COM15";

Замените «COM15» на COM-порт, к которому подключен ваш Arduino (проверьте в Arduino: Инструменты → Порт). Настройка завершена, осталось дело за малым!

Загрузите код Arduino (MPU6050_DMP6) через Arduino. Важно: НЕ ОТКРЫВАЙТЕ МОНИТОР ПОСЛЕДОВАТЕЛЬНОГО ПОРТА во время процесса. (Почему? Потому что мы будем визуализировать код в Processing IDE, а не в Arduino IDE).

Затем запустите код Processing (MPUTeapot), нажав кнопку с символом «play». Вы увидите небольшой самолетообразный объект. Подождите около 10-12 секунд, пока значения MPU-6050 стабилизируются. После этого вы увидите 3D-модель, движущуюся в соответствии с датчиком MPU-6050. Обратитесь к GIF ниже. Для лучшего понимания перейдите на YouTube.

В следующем уроке спроектируйте свои собственные кастомизированные приборы полетного симулятора.

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

Код

Полный код проекта

Скачайте эту папку и следуйте инструкциям, указанным в этом руководстве: https://github.com/AritroMukherjee/MPU5060sensor/blob/master/MPU6050.zip

Схемы

Следуйте моему предыдущему посту в блоге для пошагового руководства по настройке IMU (MPU-6050) с Arduino. Ссылка: https://www.hackster.io/Aritro/getting-started-with-imu-6-dof-motion-sensor-96e066

Производственный процесс

  1. Logic-X запускает новый бренд COTS сенсорной обработки для Edge AI
  2. Датчик движения SmartThings на компьютерном зрении с Raspberry Pi 3
  3. Надёжный домашний мониторинг с Home Assistant на Raspberry Pi: движение, алермы и видеозахват
  4. Построение DIY инфракрасного датчика движения для Raspberry Pi — пошаговое руководство
  5. Управление светодиодом с PIR-датчиком движения на Raspberry Pi
  6. Создайте домашний монитор температуры на Raspberry Pi с MCP9808, InfluxDB и Grafana
  7. Мастерство GPIO Raspberry Pi: подключение PIR-датчика движения на B+/Model 2
  8. Подключение, калибровка и программирование PIR-датчика HC‑SR501 с Raspberry Pi
  9. Датчик эмоций и ЭЭГ: низкобюджетное железо для детекции эмоций в реальном времени
  10. Продвинутый наладонный кожный сенсор переводит движения пальцев в реальный 3D виртуальный рукой