Sadržaj:

Gimbal osovine s nagibom i nagibom za GoPro pomoću Arduina - servo i žiroskop MPU6050: 4 koraka
Gimbal osovine s nagibom i nagibom za GoPro pomoću Arduina - servo i žiroskop MPU6050: 4 koraka

Video: Gimbal osovine s nagibom i nagibom za GoPro pomoću Arduina - servo i žiroskop MPU6050: 4 koraka

Video: Gimbal osovine s nagibom i nagibom za GoPro pomoću Arduina - servo i žiroskop MPU6050: 4 koraka
Video: Tennessee Trails Jam Day 1 - Part 2 - Outlaw Trails, Pioneer, TN 2024, Novembar
Anonim
Rotacijski i pomak osovine za GoPro pomoću Arduina - Servo i žiroskop MPU6050
Rotacijski i pomak osovine za GoPro pomoću Arduina - Servo i žiroskop MPU6050

Ovo uputstvo nastalo je u skladu sa zahtjevima projekta Makecourse na Univerzitetu Južne Floride (www.makecourse.com)

Cilj ovog projekta bio je izgraditi troosni Gimbal za GoPro upotrebom Arduino nano + 3 servo motora + žiroskop/akcelerometar MPU6050. U ovom projektu kontrolirao sam 2-osi (Roll and yaw) pomoću žiroskopa/akcelerometra MPU6050, trećom osi (yaw) upravlja se daljinski i ručno uz pomoć HC-05 i Arduino BlueControl aplikacije koja se nalazi u Android App Store-u.

Ovaj rad također uključuje sve datoteke 3D dizajna mehaničkih komponenti Gimbala. Podelio sam.stl datoteke za jednostavno 3D štampanje i datoteke za 3D dizajn na dnu.

Na početku mog projekta, moj plan je bio izgraditi troosni gimbal sa 3 motora bez četkica, jer su motori bez četkica glatki i osjetljiviji u usporedbi sa servo motorima. Motori bez četkica koriste se u aplikacijama velike brzine, tako da možemo prilagoditi brzinu motora kupujući ESC (kontroler). Ali da bih mogao koristiti motor bez četkica u projektu Gimbal, shvatio sam da moram voziti motor bez četkica kao servo. U servo motorima položaj motora je poznat. Ali u motoru bez četkica ne znamo položaj motora, pa je to nedostatak motora bez četkica za koji nisam mogao shvatiti kako ga voziti. Na kraju sam odlučio koristiti 3 servo motora MG995 za Gimbal projekt potreban za veliki okretni moment. Kontrolirao sam 2 servo motora za osovinu valjanja i nagiba pomoću žiroskopa MPU6050, a servo motor osi zakretanja upravljao sam pomoću HC-05 bluetooth i Android aplikacije.

Korak 1: Komponente

Komponente
Komponente
Komponente
Komponente
Komponente
Komponente
Komponente
Komponente

Komponente koje sam koristio u ovom projektu;

1- Arduino Nano (1 jedinica) (mikro usb)

2- MG995 Servo motori (3 jedinice)

3- GY-521 MPU6050 troosni akcelerometar/žiroskop (1 jedinica)

4- Bluetooth modul HC-05 (Za daljinsko upravljanje osi zakretanja (Servo3))

Prijenosni punjač 4- 5V micro usb

Korak 2: Implementacija 3 servo motora + MPU6050 žiroskopa + HC-05

Implementacija 3 servo motora + MPU6050 žiroskop + HC-05
Implementacija 3 servo motora + MPU6050 žiroskop + HC-05
Implementacija 3 servo motora + MPU6050 žiroskop + HC-05
Implementacija 3 servo motora + MPU6050 žiroskop + HC-05

Servo ožičenje

Servo1 (Roll), Servo2 (Pitch), Servo3 (Yaw)

Servo motori imaju 3 žice: VCC (crvena), GND (smeđa ili crna), PWM (žuta).

D3 => Servo1 PWM (žuta žica)

D4 => Servo2 PWM (žuta žica)

D5 => Servo3 PWM (žuta žica)

5V PIN za Arduino => VCC (crveni) od 3 servo motora.

GND PIN za Arduino => GND (smeđi ili crni) od 3 servo motora

Ožičenje žiroskopa MPU6050

A4 => SDA

A5 => SCL

3.3 V PIN za Arduino => VCC za MPU6050

GND PIN za Arduino => GND za MPU6050

HC-05 Bluetooth ožičenje

D9 => TX

D10 => RX

3.3 V PIN za Arduino => VCC za HC-05 Bluetooth

GND PIN za Arduino => GND za HC-05 Bluetooth

Korak 3: 3D dizajn i funkcionalnost

3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost
3D dizajn i funkcionalnost

Završio sam 3D dizajn Gimbala uzimajući u obzir ostale Gimbale koji se prodaju na tržištu. Tri su glavne komponente koje se okreću sa servo motorima. Dizajnirao sam GoPro nosač koji odgovara njegovoj veličini.

Datoteka.step svih 3D dizajna dijeli se na dnu radi lakšeg uređivanja.

Korak 4: Mehanizam upravljanja

Image
Image

Glavni algoritam mog projekta Gimbal koristi kvaternionsku rotaciju koja je alternativa Eulerovim kutovima. Koristio sam biblioteku helper_3dmath.h kao referencu kako bih omogućio glatko kretanje koristeći Quaternion algoritam. Iako je odziv na pomak osi gladak, os kotrljanja zaostaje kako bi odgovorila na kretanje štapa. Korištenjem Quaternion algoritma uspio sam kontrolirati Roll i Pitch servo motore. Ako želite koristiti os zakretanja, možda ćete morati upotrijebiti drugi MPU6050 samo za kontrolu osi zakretanja. Kao alternativno rješenje, konfigurirao sam HC-05 i daljinski upravljao osi zakretanja pomoću android aplikacije pomoću gumba. Svakim pritiskom na dugme servo servo ose se okreće za 10 stepeni.

U ovom projektu biblioteke koje sam morao vanjski uvoziti su sljedeće;

1- I2Cdev.h // Koristi se sa wire.h za omogućavanje komunikacije s MPU6050

2- "MPU6050_6Axis_MotionApps20.h" // Biblioteka žiroskopa

3- // Omogućava pretvaranje digitalnih pinova u RX i TX pinove (potrebno je za HC-05 bluetooth modul)

4-

5- // Omogućuje komunikaciju s I2C uređajima koji koriste dva podatkovna pina (SDA i SCL) => MPU6050

Glavni kôd kreira Jeff Rowberg, a ja sam ga izmijenio u skladu sa svojim projektnim funkcionalnostima i komentirao sve funkcije u ino datoteci.

Preporučuje se: