Оптимізація продуктивності за допомогою MPU-6050: Налаштування, калібрування та додатки
2024-04-25 9270

MPU-6050 -перший в світі інтегрований 6-осі-компонент обробки руху, який інтегрує 3-осі гіроскоп, 3-осі акселерометр та масштабований цифровий процесор руху (DMP).Мета його використання полягає в тому, щоб отримати кут нахилу об'єкта, який слід виміряти (наприклад, квадрокоптер, балансуючий автомобіль) на осях X, Y та Z, тобто кут кроку, кут кочення та кут позіхання.Ми прочитали шість даних MPU-6050 (тривісний значення AD прискорення та значення AD з трьома осі AD) через інтерфейс I2C.Після обробки синтезу постави можна обчислити кути кроку, кочення та поєднання.В якості спрямованого посилання для значень вимірювання визначення напрямку координат датчика є таким, як показано на малюнку нижче, що слідує за принципом правої системи координат (тобто правий палець вказує на позитивне напрямок X-Вісь, вказівний палець вказує на позитивний напрямок осі y, а середній палець вказує на позитивний напрямок Z-осі).

Каталог


MPU-6050

Завдяки виділеній шині датчика I2C, MPU-6050 здатний отримувати вхід безпосередньо із зовнішнього 3-осі-компаса, забезпечуючи повний вихідний вихід MotionFusion ™.Це виключає проблему невідповідності між комбінованим гіроскопом та часовою шкалою прискорювача та значно зменшує простір упаковки порівняно з багатокомпонентними рішеннями.При підключенні до триосевого магнітометра, MPU-60x0 здатний забезпечити повний 9-осічний синтез руху до його основного порту I2C або SPI (зауважте, що порт SPI доступний лише на MPU-6000).

Альтернативи та еквіваленти







Виробник MPU-6050


Виробник MPU-6050-TDK.Після двох засновників TDK, доктора Йогоро Като та Такеї Теей, винайшов ферит у Токіо, вони заснували Токіо Денкікагаку Когьо К.К.У 1935 р. Як бренд глобальної електроніки, TDK завжди зберігав домінуюче положення в галузі електронної сировини та електронних компонентів.Комплексний та інноваційний портфель продуктів TDK охоплює пасивні компоненти, такі як керамічні конденсатори, алюмінієві електролітичні конденсатори, плівкові конденсатори, магнітні продукти, високочастотні компоненти, п'єзоелектричні та захисні пристрої, а також датчики та сенсорні системи (наприклад, температура та тиск,,Датчики магнітних та MEMS) тощо. Крім того, TDK також забезпечує джерела живлення та енергетичні пристрої, магнітні головки та інші продукти.Його бренди продуктів включають TDK, EPCOS, Invensense, Micronas, Tronics та TDK-Lambda.

Внутрішня блок-схема MPU-6050


Internal Block Diagram of MPU-6050

Серед них SCL та SDA-IIC інтерфейси, пов'язані з MCU, і MCU контролює MPU-6050 через цей IIC-інтерфейс.Також є інтерфейс IIC, а саме AUX_CL та AUX_DA.Цей інтерфейс може бути використаний для підключення зовнішніх підлеглих пристроїв, таких як магнітні датчики, для формування датчика дев'яти осі.Vlogic - це напруга порту IO.Цей PIN -код може підтримувати мінімум 1,8 В.Зазвичай ми підключаємо його безпосередньо до VDD.AD0 - штифт керування адресою рабського інтерфейсу IIC (підключений до MCU).Цей PIN -код контролює найнижчий біт IIC -адреси.Якщо він підключений до GND, IIC-адреса MPU-6050 становить 0x68;Якщо він підключений до VDD, це 0x69.Зверніть увагу, що адреса тут не включає найнижчий біт передачі даних (найнижчий біт використовується для представлення операцій зчитування та запису).На MWBALANDSTC15 AD0 підключений до GND, тому IIC-адреса MPU-6050 становить 0x68 (за винятком найнижчого бета).

Ініціалізуйте інтерфейс IIC


MPU-6050 використовує IIC для спілкування зі STC15, тому нам потрібно спочатку ініціалізувати лінії даних SDA та SCL, підключені до MPU-6050.

Скинути MPU-6050


Цей крок відновлює всі регістри всередині MPU-6050 до їх значень за замовчуванням, що досягається шляхом написання 1 до Bit7 реєстру управління живленням 1 (0x6b).Після скидання регістр управління живленням 1 буде відновлений до значення за замовчуванням (0x40), і цей регістр згодом повинен бути встановлений на 0x00, щоб розбудити MPU-6050 і поставити його у звичайний робочий стан.

Встановіть повномасштабний діапазон датчика кутової швидкості (Gyro) та датчика прискорення


На цьому кроці ми встановлюємо повномасштабний діапазон (FSR) двох датчиків через регістр конфігурації гіроскопа (0x1b) та регістр конфігурації датчика прискорення (0x1c) відповідно.Як правило, ми встановлюємо повномасштабний діапазон гіроскопа до ± 2000 дпс та повномасштабного діапазону акселерометра до ± 2G.

Встановіть інші параметри


Тут нам також потрібно налаштувати такі параметри: вимкніть переривання, вимкніть інтерфейс AUX I2C, вимкніть FIFO, встановіть швидкість вибірки гіроскопа та налаштуйте цифровий фільтр з низьким вмістом прохідного періоду (DLPF).Оскільки ми не використовуємо переривання для читання даних у цій главі, функцію переривання потрібно вимкнути.У той же час, оскільки ми не використовуємо інтерфейс AUX I2C для підключення інших зовнішніх датчиків, нам також потрібно закрити цей інтерфейс.Ці функції можна керувати через регістр entive inblect (0x38) та регістр управління користувачами (0x6a).MPU-6050 може використовувати FIFO для зберігання даних датчиків, але ми не використовували їх у цій главі, тому всі канали FIFO потрібно закрити.Це можна керувати через реєстр FIFO Enable (0x23).За замовчуванням значення цього реєстру становить 0 (тобто FIFO відключено), тому ми можемо використовувати значення за замовчуванням безпосередньо.Швидкість відбору проб гіроскопа контролюється реєстром подільника вибірки (0x19).Зазвичай ми встановлюємо цю швидкість вибірки на 50. Конфігурація цифрового фільтра з низьким пропуском (DLPF) завершується через регістр конфігурації (0x1a).Взагалі кажучи, ми встановимо DLPF на половину пропускної здатності, щоб збалансувати точність даних та швидкість відповіді.

Налаштуйте джерело системного годинника та ввімкніть датчик кутової швидкості та датчик прискорення


Налаштування джерела системного годинника залежить від регістра управління живленням 1 (0x6b), де найнижчі три біти цього реєстру визначають вибір джерела годинника.За замовчуванням ці три біти встановлюються на 0, а це означає, що система використовує внутрішній генератор RC 8 МГц як джерело годинника.Однак для підвищення точності годинника ми часто встановлюємо його на 1 і вибираємо PLL Gyroscope Gyroscope як джерела годинника.Крім того, дозволення датчика кутової швидкості та датчика прискорення також є важливим кроком у процесі ініціалізації.Обидві операції реалізуються через регістр управління живленням 2 (0x6c).Просто встановіть відповідний біт на 0, щоб активувати відповідний датчик.Після завершення вищезазначених кроків MPU-6050 може ввести нормальний робочий стан.Ті регістри, які не є спеціально встановленими, приймуть попередньо встановлені значення за замовчуванням система.

Як працює MPU-6050?


Датчик гіроскоп


Датчик оснащений гіроскопом всередині, який завжди залишатиметься паралельним початковому напрямку через гіроскопічний ефект.Тому ми можемо обчислити напрямок і кут обертання, виявляючи відхилення гіроскопа з початкового напрямку.

Датчик акселерометра


Датчик акселерометра - це пристрій, який може виміряти прискорення, і він працює на основі принципу п'єзоелектричного ефекту.Під час прискорення датчик вимірює інерційну силу, застосовану до масового блоку, а потім обчислює значення прискорення за допомогою другого закону Ньютона.

Цифровий процесор руху (DMP)


DMP-це модуль обробки даних у мікросхемі MPU6050, який має вбудований алгоритм фільтрації Kalman для отримання даних з датчиків гіроскопа та акселерометра та обробки вихідних кватерніонів.Ця функція значно знижує навантаження периферичного мікропроцесора та уникає стомлюючої фільтрації та процесу злиття даних.

Примітки:

Кватерніони: кватерніони - це прості числа суперкомплексу.Складні числа складаються з реальних чисел плюс уявного одиниці I, де i^2 = -1.

Де використовується MPU-6050?


- іграшки

- телефон та портативні ігри

- Контролери ігор на основі руху

- Технологія Blurfree ™ (для стабілізації відео/нерухомого зображення)

- Технологія AirSign ™ (для безпеки/аутентифікації)

- Розпізнавання жестів IG ™ IG ™

- Носимі датчики для здоров'я, фітнесу та спорту

- Рамка з підтримкою руху та програми

- Технологія MotionCommand ™ (для жестів коротких вирізів)

- Послуги на основі місцезнаходження, цікаві місця та мертві рахунки

- 3D дистанційні керування для підключених до Інтернету DTV та встановіть верхні поля, 3D миші

- Технологія Touchany Shere ™ (для контролю/навігації програми "без дотику")/навігація)

Пакет MPU-6050


Package of MPU-6050

Як зменшити шум MPU-6050?


Ми можемо прийняти наступні способи зменшити шум MPU-6050.

Використовуйте калібровані датчики


Калібрування акселерометра та гіроскоп MPU-6050 може усунути зміщення та помилку самих датчиків, тим самим зменшуючи ефект шуму.Процес калібрування зазвичай складається з двох етапів: статична калібрування та калібрування руху.

Процес фільтрації обладнання


Додавання конденсаторів фільтрів до лінії електропередачі MPU-6050 може зменшити вплив шуму живлення на датчик.Тим часом, під час компонування друкованої плати, ми повинні намагатися утримати MPU-6050 від потенційних джерел перешкод, таких як високочастотні сигнальні лінії та компоненти високої потужності.

Обробка фільтрації програмного забезпечення


Після збору необроблених даних з MPU-6050 ми можемо додати посилання на фільтрацію програмного забезпечення до попереднього процесу початкових даних для усунення перешкод, спричинених шумом.Загально використовувані методи фільтрації програмного забезпечення включають середню фільтрацію, середину фільтрацію, фільтрацію Калмана тощо.

Використовуйте внутрішній фільтр з низьким пропуском


MPU-6050 має внутрішній інтегрований цифровий фільтр з низьким пропуском, який може бути використаний для зменшення високочастотного шуму, встановивши свою частоту відсічення.Зокрема, ми можемо встановити частоту відсічення цифрового фільтра, змінивши конфігураційний регістр MPU-6050 для усунення високочастотного шуму, спричиненого вибірковою пробкою.

Розрахунок траєкторії руху на основі MPU-6050


MPU-6050-це шестикусний акселерометр та датчик гіроскопа, який можна використовувати для вимірювання руху та ставлення об'єктів.Розрахунок траєкторії руху на основі MPU-6050 може бути реалізований наступними кроками:

Перший крок - прочитати дані датчиків.Нам потрібно прочитати дані акселерометра та гіроскоп із датчиків MPU-6050, використовуючи відповідні драйвери та бібліотечні функції.Ці дані зазвичай виводяться в цифровому форматі, тому для перетворення їх у фактичні вимірювання у фізичних одиницях необхідні деякі роботи з перетворення та калібрування.

Другий крок - обчислення прискорення.По -перше, нам потрібно обробити дані з акселерометра для отримання прискорення об'єкта на кожній осі.Згодом для обчислення швидкості та зміщення об'єкта на кожній осі нам потрібно інтегрувати дані про прискорення.Числові методи інтеграції, такі як метод Ейлера або метод Лунгер-Кутта, часто використовуються в цьому процесі для забезпечення точності обчислень переміщення.

Третій крок - обчислення кутової швидкості.Використовуючи дані гіроскопа, можна обчислити кутову швидкість об'єкта в кожній осі.Знову ж таки, ці дані потрібно відкалібрувати та перетворити для отримання кутової швидкості у фактичних фізичних одиницях.

Четвертий крок - обчислення обертання.Інтегруючи дані кутової швидкості, можна обчислити кут обертання об'єкта в кожній осі.Це можна зробити за допомогою чисельних методів інтеграції, таких як метод Ейлера або метод Лонге-Кутта для обчислення кута.

П'ятий крок - об'єднати дані.Ми поєднуємо дані з акселерометрів та гіроскопів, щоб отримати повне ставлення та інформацію про положення об'єкта.Це можна зробити за допомогою таких алгоритмів, як розв'язувач ставлення на основі кватерніону або розчинник кута Ейлера.

Шостий крок - візуалізувати результати.Ми перетворюємо обчислювану траєкторію руху об'єкта в набір точок у системі 3D -координат та відображати її за допомогою відповідних інструментів візуалізації для більш інтуїтивного розуміння траєкторії руху об'єкта та змін ставлення.






Часті запитання [FAQ]


1. Наскільки точний MPU6050?


Набуті результати показали достатню точність менше 1 % та надійність, забезпечуючи належне вимір валу ліфта та високі стандарти підйомної промисловості.

2. Як читати дані з MPU6050?


Щоб прочитати внутрішні регістри MPU6050, майстер надсилає початок умову з подальшою адресою рабів I2C та бітом запису, а потім адресою реєстру, яка буде прочитати.

3. Де використовується MPU6050?


У носійних відстеженнях для здоров'я пристроїв відстеження фітнесу.У безпілотниках та квадрокоптерах MPU6050 використовується для управління положенням.Використовується для контролю робототехнічної руки.Пристрої управління жестом рук.

4. Чи є MPU6050 - ІМУ?


Блок датчика IMU MPU6050 зчитує дані з датчика MPU-6050, який підключений до обладнання.Блок виводить прискорення, кутову швидкість та температуру вздовж осей датчика.

5. Яка обробка MPU6050?


Це бортовий процесор MPU6050, який поєднує дані, що надходять з акселерометра та гіроскопа.DMP - це ключ до використання MPU6050 і детально пояснюється пізніше.Як і у всіх мікропроцесорів, DMP потребує прошивки для запуску.

Про нас Задоволення клієнтів кожного разу.Взаємна довіра та загальні інтереси. ARIAT Tech встановив довгострокові та стабільні співпраці з багатьма виробниками та агентами. "Поводячи клієнтів реальними матеріалами та приймати послуги як основну", вся якість буде перевіряти без проблем та передавати професіонал
тест функції.Найвища економічно ефективна продукція та найкраща послуга-це наше вічне зобов'язання.

Електронна пошта: Info@ariat-tech.comHK TEL: +00 852-30501966ДОДАТИ: Rm 2703 27F Ho King Comm Center 2-16,
Fa Yuen St MongKok Kowloon, Гонконг.