Kazalo:
- 1. korak: Komponente
- 2. korak: Izvedba 3 servo motorjev + žiroskop MPU6050 + HC-05
- 3. korak: 3D oblikovanje in funkcionalnost
- 4. korak: Nadzorni mehanizem
Video: Rolo in nagib osi za GoPro z uporabo Arduina - servo in žiroskop MPU6050: 4 koraki
2024 Avtor: John Day | [email protected]. Nazadnje spremenjeno: 2024-01-30 12:05
Ta pouk je bil ustvarjen v skladu z zahtevami projekta Makecourse na Univerzi v Južni Floridi (www.makecourse.com)
Cilj tega projekta je bil z uporabo Arduino nano + 3 servo motorjev + žiroskop/merilnik pospeška MPU6050 zgraditi 3-osni Gimbal za GoPro. V tem projektu sem z žiroskopom/merilnikom pospeška MPU6050 nadzoroval dvoosno (vrtenje in zavijanje), tretjo os (nihanje) pa daljinsko in ročno upravljam s pomočjo HC-05 in aplikacije Arduino BlueControl, ki je v trgovini Android App Store.
To delo vključuje tudi vse datoteke 3D oblikovanja mehanskih komponent Gimbala. Spodaj sem dal datoteke.stl za enostavno 3D -tiskanje in datoteke 3D -oblikovanja.
Na začetku mojega projekta je bil moj načrt zgraditi 3-osni kardan s 3 brezkrtačnimi motorji, ker so brezkrtačni motorji gladki in bolj odzivni v primerjavi s servo motorji. Brezkrtačni motorji se uporabljajo v aplikacijah za visoke hitrosti, zato lahko prilagodimo hitrost nakupa motorja ESC (krmilnik). Da pa sem lahko v projektu Gimbal uporabljal motor brez krtač, sem spoznal, da moram motor brez krtač voziti kot servo. Pri servo motorjih je položaj motorja znan. Toda pri brezkrtačnem motorju ne poznamo položaja motorja, zato je to pomanjkljivost brezkrtačnega motorja, za katero nisem mogel ugotoviti, kako ga poganjati. Na koncu sem se odločil uporabiti 3 servo motorje MG995 za projekt Gimbal z visokim navorom. Z žiroskopom MPU6050 sem krmilil 2 servo motorja za rotacijsko in nagibno os, s pomočjo bluetooth-a HC-05 in aplikacije za Android pa sem krmilil servo motor z osjo nihanja.
1. korak: Komponente
Komponente, ki sem jih uporabil pri tem projektu;
1- Arduino Nano (1 enota) (mikro usb)
2- Servo motorji MG995 (3 enote)
3- GY-521 MPU6050 3-osni merilnik pospeška/žiroskop (1 enota)
4- Modul Bluetooth HC-05 (Za daljinsko upravljanje osi (Servo3) osi)
Prenosni polnilnik 4- 5V micro usb
2. korak: Izvedba 3 servo motorjev + žiroskop MPU6050 + HC-05
Servo ožičenje
Servo1 (Roll), Servo2 (Pitch), Servo3 (Yaw)
Servo motorji imajo 3 žice: VCC (rdeča), GND (rjava ali črna), PWM (rumena).
D3 => Servo1 PWM (rumena žica)
D4 => Servo2 PWM (rumena žica)
D5 => Servo3 PWM (rumena žica)
5V PIN za Arduino => VCC (rdeč) treh servo motorjev.
GND PIN Arduino => GND (rjava ali črna) treh servo motorjev
Giro ožičenje MPU6050
A4 => SDA
A5 => SCL
3,3 V PIN za Arduino => VCC za MPU6050
GND PIN za Arduino => GND za MPU6050
Ožičenje Bluetooth HC-05
D9 => TX
D10 => RX
3,3 V PIN za Arduino => VCC za HC-05 Bluetooth
GND PIN za Arduino => GND za HC-05 Bluetooth
3. korak: 3D oblikovanje in funkcionalnost
Dokončal sem 3D oblikovanje Gimbala, pri čemer sem upošteval druge Gimbale, ki se prodajajo na trgu. S servo motorji se vrtijo tri glavne komponente. Oblikoval sem GoPro nosilec, ki ustreza njegovi velikosti.
Datoteka.step celotnega 3D oblikovanja se deli na dnu, kar olajša urejanje.
4. korak: Nadzorni mehanizem
Glavni algoritem mojega projekta Gimbal uporablja kvaternionsko rotacijo, ki je alternativa Eulerjevim kotom. Knjižnico helper_3dmath.h sem uporabil kot referenco za nemoteno gibanje z uporabo algoritma Quaternion. Čeprav je odziv osi nagiba nemoten, os valjanja zaostaja, da se odzove na premik palice. Z uporabo algoritma Quaternion sem lahko nadzoroval servo motorje Roll in Pitch. Če želite uporabiti os nihanja, boste morda morali uporabiti drugo MPU6050 samo za nadzor osi nihanja. Kot alternativno rešitev sem nastavil HC-05 in na daljavo z aplikacijo za Android z gumbi upravljal os ogibanja. Pri vsakem pritisku na gumb se servo servo zavrtite za 10 stopinj.
V tem projektu so knjižnice, ki sem jih moral uvoziti zunaj, naslednje;
1- I2Cdev.h // Uporablja se z wire.h za omogočanje komunikacije z MPU6050
2- "MPU6050_6Axis_MotionApps20.h" // Knjižnica žiroskopa
3- // Omogoča pretvorbo digitalnih zatičev v zatiče RX in TX (potrebno je za modul bluetooth HC-05)
4-
5- // Omogoča komunikacijo z napravami I2C, ki uporabljajo dva podatkovna zatiča (SDA in SCL) => MPU6050
Glavno kodo je ustvaril Jeff Rowberg, jaz pa sem jo spremenil glede na funkcionalnost projekta in komentiral vse funkcije v datoteki ino.
Priporočena:
Nagib toplih slušalk Bluetooth: 4 koraki
Tople slušalke Bluetooth Tuque: Ta Tugue (A.K.A. a Toque, Touque ali Canadian Hat) je brezžična slušalka za tiste, ki se v mrzlih zimskih mesecih veliko gibljejo, sedijo zunaj spomladanskega jutra ali uživajo v tem jesenskem popoldnevu. So lahki in skoraj ne opazite zvočnika
Nagib diferencialnega senzorja: 3 koraki
Nagib diferencialnega senzorja: Ta navodila vam pokažejo, kako lahko naredite vezje za premikanje diferencialnega senzorja. Diferencialno odmikanje omogoča napajanje in odpravljanje hrupa EMI za dva vhoda. To vezje je zastarelo. Na i … prodajajo ujemajoče se mostove z upori IC
Nadzor vodite po vsem svetu z uporabo interneta z uporabo Arduina: 4 koraki
Nadzorujte po vsem svetu z uporabo interneta z uporabo Arduina: Živjo, jaz sem Rithik. Z vašim telefonom bomo naredili LED pod vodstvom interneta. Uporabljali bomo programsko opremo, kot sta Arduino IDE in Blynk. Preprosto je, in če vam je uspelo, lahko nadzirate toliko elektronskih komponent, kot jih želite. Stvari, ki jih potrebujemo: Strojna oprema:
Avto za upravljanje s kretnjami z uporabo Mpu6050 in Arduina: 7 korakov (s slikami)
Avto za upravljanje s kretnjami z uporabo Mpu6050 in Arduina: tukaj je avtomobil za upravljanje gest z ročnim krmilnikom, izdelan z uporabo mpu6050 in arduina. Za brezžično povezavo uporabljam RF modul
Dvigalo za nagib tipkovnice: 3 koraki
Tipkovnica za nagib tipkovnice: pred kratkim sem kupil Belkinovo "light up" tipkovnico, vendar sem bil malo zaskrbljen, ko sem ugotovil, da majhne nogice, ki jih običajno uporabljate za prilagajanje nagiba tipkovnice, niso bile vključene v zasnovo. Ker sovražim tipkanje na ravni tipkovnici, se odločim