Satura rādītājs:

Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 žiroskopu: 4 soļi
Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 žiroskopu: 4 soļi

Video: Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 žiroskopu: 4 soļi

Video: Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 žiroskopu: 4 soļi
Video: Best Drone With 4K Camera Under Rs.5000/- #shorts 2024, Novembris
Anonim
Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 Gyro
Roll un Pitch Axis Gimbal GoPro, izmantojot Arduino - Servo un MPU6050 Gyro

Šī pamācība tika izveidota, izpildot Dienvidfloridas Universitātes Makecourse projekta prasības (www.makecourse.com)

Šī projekta mērķis bija izveidot 3 asu Gimbal GoPro, izmantojot Arduino nano + 3 servomotorus + MPU6050 žiroskopu/akselerometru. Šajā projektā es kontrolēju 2 asis (rullīti un pagriešanos), izmantojot MPU6050 žiroskopu/akselerometru, trešo asi (pagriezienu) kontrolē attālināti un manuāli, izmantojot HC-05 un lietotni Arduino BlueControl, kas atrodas Android App Store.

Šis darbs ietver arī visus Gimbal mehānisko komponentu 3D dizaina failus. Es koplietoju.stl failus, lai viegli drukātu 3D, un 3D dizaina failus apakšā.

Projekta sākumā mans plāns bija izveidot 3 asu kardānvārpstu ar 3 motoriem bez birstēm, jo motori bez birstēm ir gludi un atsaucīgāki salīdzinājumā ar servodzinējiem. Motori bez sukām tiek izmantoti ātrgaitas lietojumos, tāpēc mēs varam pielāgot motoru iegādes ātrumu ESC (kontrolieris). Bet, lai Gimbal projektā varētu izmantot bezsuku motoru, es sapratu, ka man ir jābrauc ar motoru bez birstēm kā servo. Servo motoros motora stāvoklis ir zināms. Bet bezsuku motorā mēs nezinām motora stāvokli, tāpēc tas ir bezsuku motora trūkums, un es nevarēju saprast, kā to vadīt. Beigās es nolēmu izmantot 3 MG995 servodzinējus lielajam griezes momentam, kas vajadzīgs Gimbal projektam. Es kontrolēju 2 servodzinējus rites un slīpuma asij, izmantojot MPU6050 žiroskopu, un es kontrolēju pagriešanās ass servomotoru, izmantojot HC-05 Bluetooth un Android lietotni.

1. darbība: sastāvdaļas

Sastāvdaļas
Sastāvdaļas
Sastāvdaļas
Sastāvdaļas
Sastāvdaļas
Sastāvdaļas
Sastāvdaļas
Sastāvdaļas

Komponenti, kurus izmantoju šajā projektā;

1- Arduino Nano (1 vienība) (Micro usb)

2- MG995 Servo motori (3 vienības)

3- GY-521 MPU6050 3 asu akselerometrs/žiroskops (1 vienība)

4- HC-05 Bluetooth modulis (lai attālināti kontrolētu pagrieziena (Servo3) asi)

4- 5V pārnēsājams mikro usb lādētājs

2. darbība: 3 servomotoru + MPU6050 Gyro + HC-05 ieviešana

Īstenojot 3 servomotorus + MPU6050 žiroskopu + HC-05
Īstenojot 3 servomotorus + MPU6050 žiroskopu + HC-05
Īstenojot 3 servomotorus + MPU6050 žiroskopu + HC-05
Īstenojot 3 servomotorus + MPU6050 žiroskopu + HC-05

Servo vadi

Servo1 (rullis), servo2 (piķis), servo3 (pagrieziens)

Servomotoriem ir 3 vadi: VCC (sarkans), GND (brūns vai melns), PWM (dzeltens).

D3 => Servo1 PWM (dzeltens vads)

D4 => Servo2 PWM (dzeltens vads)

D5 => Servo3 PWM (dzeltens vads)

Arduino 5V PIN => 3 servomotoru VCC (sarkans).

Arduino GND PIN => 3 servomotoru GND (brūns vai melns)

Žiroskopa elektroinstalācija MPU6050

A4 => SDA

A5 => SCL

3.3 V Arduino PIN => MPU6050 VCC

Arduino GND PIN => MPN6050 GND

HC-05 Bluetooth vadi

D9 => TX

D10 => RX

3.3 V Arduino PIN => HC-05 Bluetooth VCC

Arduino GND PIN => GND no HC-05 Bluetooth

3. darbība: 3D dizains un funkcionalitāte

3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte
3D dizains un funkcionalitāte

Es pabeidzu Gimbal 3D dizainu, atsaucoties uz citiem tirgū pārdotajiem Gimbals. Ir trīs galvenās sastāvdaļas, kas rotē ar servo motoriem. Es izveidoju GoPro stiprinājumu, kas atbilst tā izmēram.

Visu 3D dizainu.step fails tiek koplietots apakšā, lai atvieglotu rediģēšanu.

4. solis: kontroles mehānisms

Image
Image

Mana Gimbal projekta galvenais algoritms izmanto Quaternion rotāciju, kas ir alternatīva Eulera leņķiem. Es izmantoju bibliotēku helper_3dmath.h kā atsauci, lai nodrošinātu vienmērīgu kustību, izmantojot Quaternion algoritmu. Lai gan piķa ass reakcija ir vienmērīga, ruļļa ass nobīde reaģē uz nūjas kustību. Izmantojot Quaternion algoritmu, es varēju kontrolēt Roll un Pitch servomotorus. Ja vēlaties izmantot pagriešanās asi, iespējams, jums būs jāizmanto otrā MPU6050 tikai, lai kontrolētu pagrieziena asi. Kā alternatīvu risinājumu, izmantojot pogas, es konfigurēju HC-05 un attālināti vadīju pagrieziena asi, izmantojot Android lietotni. Katru reizi nospiežot pogu, pagriešanās ass servo pagriežas par 10 grādiem.

Šajā projektā bibliotēkas, kuras man bija jāimportē ārēji, ir šādas;

1- I2Cdev.h // Izmanto kopā ar wire.h, lai iespējotu saziņu ar MPU6050

2- "MPU6050_6Axis_MotionApps20.h" // Žiroskopa bibliotēka

3- // Tas ļauj pārvērst digitālās tapas RX un TX tapās (nepieciešams HC-05 Bluetooth modulis)

4-

5- // Tas ļauj sazināties ar I2C ierīcēm, kurās tiek izmantotas divas datu tapas (SDA un SCL) => MPU6050

Galveno kodu izveidoja Džefs Roubergs, un es to mainīju atbilstoši savai projekta funkcionalitātei un komentēju visas funkcijas ino failā.

Ieteicams: