Cuprins:
- Pasul 1: Componente
- Pasul 2: Implementarea a 3 servomotoare + MPU6050 Gyro + HC-05
- Pasul 3: Proiectare 3D și funcționalitate
- Pasul 4: Mecanismul de control
Video: Rotiți și înclinați cardanul axei pentru GoPro folosind Arduino - Servo și giroscopul MPU6050: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:45
Acest instructable a fost creat pentru a îndeplini cerința de proiect a Makecourse la Universitatea din Florida de Sud (www.makecourse.com)
Scopul acestui proiect a fost de a construi un cardan cu 3 axe pentru GoPro utilizând Arduino nano + 3 servo motoare + girometru / accelerometru MPU6050. În acest proiect, am controlat 2 axe (Roll and yaw) folosind girometru / accelerometru MPU6050, a treia axă (yaw) este controlată de la distanță și manual cu ajutorul aplicației HC-05 și Arduino BlueControl care se află în Android App Store.
Această lucrare include, de asemenea, toate fișierele de proiectare 3D ale componentelor mecanice ale Gimbal. Am partajat fișiere.stl pentru imprimare 3D ușoară și fișiere de proiectare 3D în partea de jos.
La începutul proiectului meu, planul meu era să construiesc cardan cu 3 axe cu 3 motoare fără perii, deoarece motoarele fără perii sunt netede și mai receptive în comparație cu servomotorii. Motoarele fără perii sunt utilizate în aplicații de mare viteză, astfel încât să putem regla viteza de cumpărare a motorului ESC (controler). Dar pentru a putea folosi motorul fără perii în proiectul Gimbal, mi-am dat seama că trebuie să conduc un motor fără perii ca un servo. La servomotoare, este cunoscută poziția motorului. Dar la motorul fără perii, nu cunoaștem poziția motorului, deci este un dezavantaj al motorului fără perii, pe care nu mi-am dat seama cum să-l conduc. La sfârșit, am decis să folosesc 3 servomotoare MG995 pentru cuplul ridicat necesar proiectului Gimbal. Am controlat 2 servo-motoare pentru rulare și pitch ax folosind MPU6050 giroscop și am controlat servo motor ax axial folosind HC-05 bluetooth și aplicația Android.
Pasul 1: Componente
Componentele pe care le-am folosit în acest proiect;
1- Arduino Nano (1 unitate) (Micro USB)
2- Servomotoare MG995 (3 unități)
3- Accelerometru / giroscop 3 axe GY-521 MPU6050 (1 unitate)
4- Modulul Bluetooth HC-05 (Pentru a controla de la distanță axa falcii (Servo3))
4- 5V încărcător portabil micro usb
Pasul 2: Implementarea a 3 servomotoare + MPU6050 Gyro + HC-05
Cablare servo
Servo1 (Roll), Servo2 (Pitch), Servo3 (Yaw)
Servomotorele au 3 fire: VCC (roșu), GND (maro sau negru), PWM (galben).
D3 => Servo1 PWM (fir galben)
D4 => Servo2 PWM (fir galben)
D5 => Servo3 PWM (fir galben)
PIN de 5V al Arduino => VCC (roșu) a 3 servo-motoare.
PIN GND al Arduino => GND (maro sau negru) a 3 servo-motoare
Cablare giroscopică MPU6050
A4 => SDA
A5 => SCL
3,3 V PIN al Arduino => VCC al MPU6050
PIN GND al Arduino => GND din MPU6050
Cablare Bluetooth HC-05
D9 => TX
D10 => RX
3,3 V PIN al Arduino => VCC al HC-05 Bluetooth
PIN GND al Arduino => GND al HC-05 Bluetooth
Pasul 3: Proiectare 3D și funcționalitate
Am finalizat proiectarea 3D a Gimbal luând referință la alte Gimbals care sunt vândute pe piață. Există trei componente principale care se rotesc cu servomotoare. Am proiectat o montură GoPro care se potrivește cu dimensiunea sa.
Fișierul.step al tuturor proiectelor 3D este partajat în partea de jos pentru a permite editarea mai ușor.
Pasul 4: Mecanismul de control
Principalul algoritm al proiectului meu Gimbal folosește rotația cuaternionului, care este alternativă la unghiurile lui Euler. Am folosit biblioteca helper_3dmath.h ca referință pentru a permite mișcarea lină utilizând algoritmul Quaternion. Deși răspunsul axului pitch este neted, axa de rulare este întârziată pentru a răspunde mișcării bățului. Folosind algoritmul Quaternion, am reușit să controlez servo-motoarele Roll și Pitch. Dacă doriți să utilizați axa de girație, poate fi necesar să utilizați al doilea MPU6050 doar pentru a controla axa de girație. Ca o soluție alternativă, am configurat HC-05 și am controlat de la distanță axa falcii cu aplicația Android folosind butoane. La fiecare apăsare pentru a apăsa butonul, servo axa girației se rotește cu 10 grade.
În acest proiect, bibliotecile pe care a trebuit să le import extern sunt următoarele;
1- I2Cdev.h // Folosit cu wire.h pentru a permite comunicarea cu MPU6050
2- "MPU6050_6Axis_MotionApps20.h" // Biblioteca de giroscop
3- // Permite conversia pinilor digitali în pinii RX și TX (Este nevoie de modulul bluetooth HC-05)
4-
5- // Permite comunicarea cu dispozitive I2C care utilizează doi pini de date (SDA și SCL) => MPU6050
Codul principal este creat de Jeff Rowberg și l-am modificat în funcție de funcționalitatea proiectului meu și am comentat toate funcțiile din fișierul ino.
Recomandat:
Rotiți CLOCK NISP la fiecare minut folosind servomotor - Arduino: 8 pași
Rotiți CLOCK Sand în fiecare minut folosind Servo Motor - Arduino: În acest tutorial vom învăța cum să rotiți un ceas de nisip mic (1 minut) la fiecare 60 de ani folosind servo motor și Visuino, Urmăriți un videoclip demonstrativ
Rotiți afișajul și ecranul tactil Raspberry Pi: 4 pași
Rotiți afișajul și ecranul tactil Raspberry Pi: acesta este un instrument instructiv de bază pentru a vă arăta cum să rotiți intrarea afișajului și a ecranului tactil pentru orice Raspberry Pi care rulează sistemul de operare Buster Raspbian, dar am folosit această metodă încă de la Jessie. Imaginile folosite în aceasta sunt de pe un Raspberry Pi
Rotiți sau pivotați monitorul LCD: 6 pași
Rotire sau pivotare a monitorului LCD: acest dispozitiv este foarte util pentru rotirea monitorului cu 90 de grade pentru a vedea sau citi documentele în mod portret, există drivere pentru placă video care acceptă acest mod, în cazul meu îl folosesc pentru a citi pdf-uri
Înclinați-vă tastatura Apple din aluminiu: 4 pași
Tilt Your Aluminum Apple Keyboard: De la prima, m-am îndrăgostit de noua tastatură Apple aluminiu. Este elegant, are o senzație de laptop excelentă pentru acțiunea cheie și are suficiente taste funcționale pentru a ateriza o navetă spațială. Trebuia să am una! La sosire, nu am fost dezamăgit de un singur
Măsurarea unghiului utilizând giroscopul, accelerometrul și Arduino: 5 pași
Măsurarea unghiului folosind Gyro, Accelerometer și Arduino: Dispozitivul este un prototip dur al ceea ce va deveni în cele din urmă un robot de auto-echilibrare, aceasta este a doua parte a lucrului cu gauri (citiți accelerometrul și controlați un motor pentru a vă echilibra). Prima parte cu doar giroscopul poate fi găsită aici. În acest moment