Съдържание:

Arduino Nano и Visuino: Преобразуване на ускорението в ъгъл от акселерометър и жироскоп MPU6050 I2C сензор: 8 стъпки (със снимки)
Arduino Nano и Visuino: Преобразуване на ускорението в ъгъл от акселерометър и жироскоп MPU6050 I2C сензор: 8 стъпки (със снимки)

Видео: Arduino Nano и Visuino: Преобразуване на ускорението в ъгъл от акселерометър и жироскоп MPU6050 I2C сензор: 8 стъпки (със снимки)

Видео: Arduino Nano и Visuino: Преобразуване на ускорението в ъгъл от акселерометър и жироскоп MPU6050 I2C сензор: 8 стъпки (със снимки)
Видео: Как использовать гироскоп, акселерометр, магнитометр MPU-9250 для Arduino 2024, Ноември
Anonim
Image
Image

Преди малко публикувах урок за това как можете да свържете MPU9250 акселерометър, жироскоп и компасов сензор към Arduino Nano и да го програмирате с Visuino, за да изпращате пакетни данни и да ги показвате на обхват и визуални инструменти.

Акселерометърът изпраща ускорителни сили X, Y и Z. Често обаче трябва да преобразуваме силите в 3D, ъгъл X, Y, Z, за да определим 3D ориентацията на сензора. Доста хора поискаха такъв урок и накрая намерих време да го направя.

Някои хора също попитаха как можете да свържете и използвате MPU6050 акселерометър и сензор за жироскоп, затова реших да използвам този модул за урока вместо по -сложния и скъп MPU9250.

В този урок ще ви покажа колко лесно е да свържете MPU6050 акселерометър и сензор за жироскоп към Arduino Nano и да го програмирате с Visuino, за да преобразувате ускорението в 3D X, Y, Z ъгъл.

Стъпка 1: Компоненти

Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
  1. Една съвместима с Arduino платка (използвам Arduino Nano, защото имам такава, но всяка друга ще бъде добре)
  2. Един модул за сензор за ускоряване на ускорението MPU6050
  3. 4 женско-женски джъмпера

Стъпка 2: Свържете акселерометъра и жироскопа MPU6050 към Arduino

Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
Свържете акселерометъра MPU6050 и жироскопа към Arduino
  1. Свържете 5V VCC захранване (червен проводник), заземяване (черен проводник), SCL (жълт проводник) и SDA (зелен проводник) към модула MPU6050 (снимка 1)
  2. Свържете другия край на заземяващия проводник (черен проводник) към заземителен щифт на платката Arduino Nano (Снимка 2)
  3. Свържете другия край на 5V VCC захранващия проводник (червен проводник) към 5V захранващия щифт на платката Arduino Nano (Снимка 2)
  4. Свържете другия край на SDA проводника (зелен проводник) към SDA/аналоговия щифт 4 на платката Arduino Nano (Снимка 3)
  5. Свържете другия край на SCL проводника (жълт проводник) към SCL/аналоговия щифт 5 на платката Arduino Nano (Снимка 3)
  6. Снимка 4 показва къде са земята, 5V захранване, SDA/аналогов щифт 4 и SCL/аналогов щифт 5, щифтове на Arduino Nano

Стъпка 3: Стартирайте Visuino и изберете Тип платка Arduino

Стартирайте Visuino и изберете Тип платка Arduino
Стартирайте Visuino и изберете Тип платка Arduino
Стартирайте Visuino и изберете Тип платка Arduino
Стартирайте Visuino и изберете Тип платка Arduino

За да започнете да програмирате Arduino, ще трябва да имате инсталирана Arduino IDE от тук:

Уверете се, че сте инсталирали 1.6.7 или по -нова версия, в противен случай тази инструкция няма да работи!

Visuino: https://www.visuino.com също трябва да бъде инсталиран.

  1. Стартирайте Visuino, както е показано на първата снимка
  2. Кликнете върху бутона „Инструменти“на компонента Arduino (Снимка 1) във Visuino
  3. Когато се появи диалоговият прозорец, изберете Arduino Nano, както е показано на снимка 2

Стъпка 4: Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти

Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти
Във Visuino: Добавете и свържете MPU9650 и ускорение към ъглови компоненти

Първо трябва да добавим компоненти за управление на сензора MPU6050 и да преобразуваме ускорението X, Y, Z в 3D X, Y, Z ъгъл:

  1. Въведете „6050“в полето Филтър на кутията с инструменти за компоненти, след което изберете компонента „Акселерометър жироскоп MPU6000/MPU6050 I2C“(Снимка 1) и го пуснете в областта за проектиране (Снимка 2)
  2. Въведете „ъгъл“в полето „Филтър“на инструментариума за компоненти, след което изберете компонента „Ускоряване до ъгъл“(Снимка 2) и го пуснете в областта за проектиране (Снимка 3)
  3. Щракнете в полето "Out" на полето "Accelerometer", съдържащо пиновете за ускорение X, Y, X на компонента AccelerometerGyroscope1, за да започнете да свързвате всички изводи на изхода наведнъж (Снимка 3)
  4. Преместете мишката върху входния щифт "X" на полето "In" на компонента AccelerationToAngle1. Visuino автоматично ще разпространи проводниците, така че те да се свържат правилно с останалите щифтове (Снимка 3)
  5. Свържете "Out" щифта на AccelerometerGyroscope1 компонента към "In" щифта на I2C канала на Arduino компонент (Снимка 4)

Стъпка 5: Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката

Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката
Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката
Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката
Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката
Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката
Във Visuino: Добавете компонент на пакет и задайте маркер на заглавката

За да изпратим всички канални данни през сериен порт от Arduino, можем да използваме компонента Packet, за да пакетираме каналите заедно и да ги покажем в Scope и Gauges във Visuino:

  1. Въведете „пакет“в полето Филтър на инструментариума за компоненти, след това изберете компонента „Синусоидален аналогов генератор“(Снимка 1) и го пуснете в областта за проектиране
  2. В свойствата разгънете свойството "Маркер на главата" (Снимка 2)
  3. В свойствата щракнете върху бутона "…" (Снимка 2)
  4. В редактора на байтове въведете някои числа, като например 55 55 (Снимка 3)
  5. Щракнете върху бутона OK, за да потвърдите и затворите редактора

Стъпка 6: Във Visuino: Добавете 3 бинарни аналогови елемента към компонента на пакета и ги свържете

Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
Във Visuino: Добавете 3 двоични аналогови елемента към компонента на пакета и ги свържете
  1. Щракнете върху бутона „Инструменти“на компонента Packet1 (Снимка 1)
  2. В редактора „Елементи“изберете елемента „Двоичен аналогов“и след това щракнете върху бутона „+“3 пъти (Снимка 2), за да добавите 3 Аналогови елемента (Снимка 3)
  3. Щракнете в полето "Out" на полето "Accelerometer", съдържащо щифтовете на компонента AccelerationToAngle1, за да започнете да свързвате всички изводи на изхода наведнъж (Снимка 4)
  4. Преместете мишката върху щифта "In" на елемента "Elements. Analog (Binary) 1" на компонента Packet1. Visuino автоматично ще разпространи проводниците, така че те да се свържат правилно с останалите щифтове (Снимка 4)
  5. Свържете изходния извод "Out" на компонента Packet1 към входния щифт "In" на канала "Serial [0]" на компонента "Arduino" (Снимка 5)

Стъпка 7: Генерирайте, компилирайте и качете кода на Arduino

Генерирайте, компилирайте и качете кода на Arduino
Генерирайте, компилирайте и качете кода на Arduino
Генерирайте, компилирайте и качете кода на Arduino
Генерирайте, компилирайте и качете кода на Arduino
  1. Във Visuino натиснете F9 или щракнете върху бутона, показан на снимка 1, за да генерирате кода на Arduino, и отворете Arduino IDE
  2. В IDE на Arduino кликнете върху бутона Качване, за да компилирате и качите кода (Снимка 2)

Стъпка 8: И играйте …

Image
Image
И играйте…
И играйте…
И играйте…
И играйте…

Можете да видите свързания и работещ акселерометър MPU6050 и сензор за жироскоп на снимка 1.

  1. Във Visuino изберете серийния порт и след това щракнете върху падащото поле "Формат:" и изберете Packet1 (Снимка 2)
  2. Кликнете върху бутона „Свързване“(Снимка 2)
  3. Ако изберете раздела „Обхват“, ще видите Обхвата, нанасящ ъглите X, Y, Z във времето (Снимка 3)
  4. Ако изберете раздела "Инструменти", ще видите измервателните уреди, показващи същата информация (Снимка 4)

Можете да видите сензора в действие във видеото.

Честито! Създали сте проект на Visuino, който преобразува ускорението в ъгъл от акселерометър MPU6050 и сензор за жироскоп.

На снимка 5 можете да видите пълната диаграма на Visuino.

Приложен е и проектът Visuino, който създадох за този Instructable. Можете да го изтеглите и отворите във Visuino:

Препоръчано: