Obsah:

Kĺbový a osový kardan pre GoPro pomocou Arduina - servo a gyroskop MPU6050: 4 kroky
Kĺbový a osový kardan pre GoPro pomocou Arduina - servo a gyroskop MPU6050: 4 kroky

Video: Kĺbový a osový kardan pre GoPro pomocou Arduina - servo a gyroskop MPU6050: 4 kroky

Video: Kĺbový a osový kardan pre GoPro pomocou Arduina - servo a gyroskop MPU6050: 4 kroky
Video: Обзор FeiyuTech SPG PL 2024, November
Anonim
Kĺbový a osový kardanový os pre GoPro pomocou Arduina - servo a gyroskop MPU6050
Kĺbový a osový kardanový os pre GoPro pomocou Arduina - servo a gyroskop MPU6050

Tento pokyn bol vytvorený ako splnenie projektovej požiadavky Makecourse na University of South Florida (www.makecourse.com)

Cieľom tohto projektu bolo postaviť 3-osový kardan pre GoPro pomocou Arduino nano + 3 servomotorov + gyroskopu/akcelerometra MPU6050. V tomto projekte som ovládal 2-osové (rolovanie a vybočenie) pomocou gyroskopu/akcelerometra MPU6050, tretiu os (vybočenie) je možné ovládať diaľkovo a ručne pomocou aplikácie HC-05 a Arduino BlueControl, ktorá je v obchode Android App Store.

Táto práca tiež obsahuje všetky 3D návrhové súbory mechanických komponentov Gimbalu. V spodnej časti som zdieľal súbory.stl pre jednoduchú 3D tlač a súbory s 3D dizajnom.

Na začiatku môjho projektu som mal v pláne postaviť 3-osový kardan s 3 bezkartáčovými motormi, pretože bezkartáčové motory sú v porovnaní so servomotormi hladké a pohotovejšie. Bezkartáčové motory sa používajú vo vysokorýchlostných aplikáciách, takže môžeme prispôsobiť rýchlosť nákupu motora ESC (regulátor). Ale aby som mohol používať bezkartáčový motor v projekte Gimbal, uvedomil som si, že musím bezkartáčový motor poháňať ako servo. U servomotorov je poloha motora známa. Ale v bezkartáčovom motore nepoznáme polohu motora, takže je to nevýhoda bezkartáčového motora, pre ktorý som nevedel prísť na to, ako ho poháňať. Nakoniec som sa rozhodol použiť 3 servomotory MG995 na projekt Gimbal s vysokým krútiacim momentom. Ovládal som 2 servomotory pre os naklápania a nakláňania pomocou gyroskopu MPU6050 a servomotor pre os otáčania som ovládal pomocou bluetooth a Android aplikácie HC-05.

Krok 1: Komponenty

Komponenty
Komponenty
Komponenty
Komponenty
Komponenty
Komponenty
Komponenty
Komponenty

Komponenty, ktoré som použil v tomto projekte;

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

2- servomotory MG995 (3 jednotky)

3- GY-521 MPU6050 3-osový akcelerometer/gyroskop (1 jednotka)

4- Modul Bluetooth HC-05 (na diaľkové ovládanie osi vychyľovania (Servo3))

4- 5V mikro usb prenosná nabíjačka

Krok 2: Implementácia 3 servomotorov + gyroskop MPU6050 + HC-05

Implementácia 3 servomotorov + gyroskop MPU6050 + HC-05
Implementácia 3 servomotorov + gyroskop MPU6050 + HC-05
Implementácia 3 servomotorov + gyroskop MPU6050 + HC-05
Implementácia 3 servomotorov + gyroskop MPU6050 + HC-05

Servo vedenie

Servo1 (zvitok), Servo2 (rozstup), Servo3 (vybočenie)

Servomotory majú 3 vodiče: VCC (červený), GND (hnedý alebo čierny), PWM (žltý).

D3 => Servo1 PWM (žltý vodič)

D4 => Servo2 PWM (žltý vodič)

D5 => Servo3 PWM (žltý vodič)

5V PIN Arduina => VCC (červený) z 3 servomotorov.

PIN GND Arduina => GND (hnedý alebo čierny) 3 servomotorov

Gyroskopické vedenie MPU6050

A4 => SDA

A5 => SCL

3,3 V PIN pre Arduino => VCC pre MPU6050

PIN GND pre Arduino => GND pre MPU6050

Zapojenie Bluetooth HC-05

D9 => VY

D10 => RX

3,3 V PIN pre Arduino => VCC Bluetooth HC-05

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

Krok 3: 3D dizajn a funkčnosť

3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť
3D dizajn a funkčnosť

Dokončil som 3D návrh Gimbalu odkazom na ďalšie Gimbals, ktoré sa predávajú na trhu. Existujú tri hlavné komponenty, ktoré sa otáčajú so servomotormi. Navrhol som držiak GoPro, ktorý zodpovedá jeho veľkosti.

Súbor.step všetkých 3D návrhov je zdieľaný v spodnej časti, aby bolo možné jednoduchšie úpravy.

Krok 4: Riadiaci mechanizmus

Image
Image

Hlavný algoritmus môjho projektu Gimbal používa rotáciu Quaternion, ktorá je alternatívou k Eulerovým uhlom. Knižnicu helper_3dmath.h som použil ako referenciu, aby som umožnil plynulý pohyb pomocou algoritmu Quaternion. Aj keď je reakcia osi Pitch hladká, os rolky reaguje na pohyb páčky oneskorením. Použitím algoritmu Quaternion som mohol ovládať servomotory Roll a Pitch. Ak chcete používať os otáčania, možno budete musieť použiť druhý MPU6050 iba na ovládanie osi vybočenia. Ako alternatívne riešenie som nakonfiguroval HC-05 a diaľkovo ovládal os zatáčania pomocou aplikácie pre Android pomocou tlačidiel. Pri každom stlačení tlačidla sa servo osi otáčania otočí o 10 stupňov.

V tomto projekte sú knižnice, ktoré som musel externe importovať, nasledujúce:

1- I2Cdev.h // Používa sa s wire.h na povolenie komunikácie s MPU6050

2- "MPU6050_6Axis_MotionApps20.h" // knižnica gyroskopu

3- // Umožňuje prevádzať digitálne piny na piny RX a TX (je to potrebné pre modul bluetooth HC-05)

4-

5- // Umožňuje komunikovať so zariadeniami I2C, ktoré používajú dva dátové piny (SDA a SCL) => MPU6050

Hlavný kód vytvoril Jeff Rowberg a ja som ho upravil podľa funkcionality svojho projektu a komentoval všetky funkcie v súbore ino.

Odporúča: