Բովանդակություն:

Roll and Pitch Axis Gimbal GoPro- ի համար Arduino - Servo և MPU6050 Gyro- ի միջոցով. 4 քայլ
Roll and Pitch Axis Gimbal GoPro- ի համար Arduino - Servo և MPU6050 Gyro- ի միջոցով. 4 քայլ

Video: Roll and Pitch Axis Gimbal GoPro- ի համար Arduino - Servo և MPU6050 Gyro- ի միջոցով. 4 քայլ

Video: Roll and Pitch Axis Gimbal GoPro- ի համար Arduino - Servo և MPU6050 Gyro- ի միջոցով. 4 քայլ
Video: GoPro Power ամբողջ օրը սաղավարտի վրա տեղադրված տեսախցիկի համար: 2024, Դեկտեմբեր
Anonim
Roll and Pitch Axis Gimbal GoPro- ի համար Arduino- ի միջոցով `Servo և MPU6050 Gyro
Roll and Pitch Axis Gimbal GoPro- ի համար Arduino- ի միջոցով `Servo և MPU6050 Gyro

Այս հրահանգը ստեղծվել է Հարավային Ֆլորիդայի համալսարանի Makecourse- ի նախագծի պահանջի կատարման համար (www.makecourse.com)

Այս նախագծի նպատակն էր կառուցել 3 առանցք ունեցող Gimbal GoPro- ի համար `օգտագործելով Arduino nano + 3 սերվո շարժիչներ + MPU6050 կինոմատոգրաֆիա/արագացուցիչ: Այս նախագծում ես վերահսկում էի 2 առանցք (գլորել և շեղել) ՝ օգտագործելով MPU6050 ժիրո/արագացուցիչ, երրորդ առանցքը (yaw) կառավարվում է հեռակա և ձեռքով ՝ HC-05- ի և Arduino BlueControl հավելվածի օգնությամբ, որը գտնվում է Android App Store- ում:.

Այս աշխատանքը ներառում է նաև Gimbal- ի մեխանիկական բաղադրիչների 3D ձևավորման բոլոր ֆայլերը: Ես կիսեցի.stl ֆայլերը հեշտությամբ 3D տպագրության և 3D ձևավորման ֆայլերի համար ներքևում:

Նախագծի սկզբում իմ պլանն էր կառուցել 3 առանցք ունեցող գիմբալ `3 առանց շարժիչի շարժիչներով, քանի որ առանց խոզանակի շարժիչները սահուն են և ավելի արագ արձագանքում սերվո շարժիչների հետ: Անխոզանակ շարժիչները օգտագործվում են բարձր արագությամբ ծրագրերում, այնպես որ մենք կարող ենք հարմարեցնել ESC (վերահսկիչ) շարժիչի արագությունը: Բայց Gimbal նախագծում առանց խոզանակի շարժիչ օգտագործելու կարողության համար ես հասկացա, որ ես պետք է առանց վրձին շարժիչ վարեմ սերվոյի պես: Servo շարժիչներում շարժիչի դիրքը հայտնի է: Բայց առանց խոզանակի շարժիչի, մենք չգիտենք շարժիչի դիրքը, այնպես որ դա անխոզանակ շարժիչի թերություն է, որը ես չէի կարող հասկանալ, թե ինչպես վարել այն: Վերջում ես որոշեցի օգտագործել 3 MG995 սերվո շարժիչներ `մեծ ոլորող մոմենտի պահանջվող Gimbal նախագծի համար: Ես վերահսկում էի 2 servo շարժիչ ՝ պտտման և թեքության առանցքի համար ՝ օգտագործելով MPU6050 գիրո, և ես վերահսկում էի yaw առանցքի servo շարժիչը ՝ օգտագործելով HC-05 bluetooth և Android հավելված:

Քայլ 1: Բաղադրիչներ

Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ

Այն բաղադրիչները, որոնք ես օգտագործել եմ այս նախագծում.

1- Arduino Nano (1 միավոր) (միկրո USB)

2- MG995 Servo շարժիչներ (3 միավոր)

3- GY-521 MPU6050 3 առանցքի արագացուցիչ/գիրոսկոպ (1 միավոր)

4- HC-05 Bluetooth մոդուլ (հորանջը (Servo3) առանցքը հեռակա կարգով կառավարելու համար)

4- 5V միկրո USB շարժական լիցքավորիչ

Քայլ 2. Իրականացնել 3 Servo Motors + MPU6050 Gyro + HC-05

Իրականացնում է 3 Servo Motors + MPU6050 Gyro + HC-05
Իրականացնում է 3 Servo Motors + MPU6050 Gyro + HC-05
Իրականացնում է 3 Servo Motors + MPU6050 Gyro + HC-05
Իրականացնում է 3 Servo Motors + MPU6050 Gyro + HC-05

Servo էլեկտրամոնտաժ

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

Servo շարժիչներն ունեն 3 լար `VCC (կարմիր), GND (շագանակագույն կամ սև), PWM (դեղին):

D3 => Servo1 PWM (դեղին մետաղալար)

D4 => Servo2 PWM (դեղին մետաղալար)

D5 => Servo3 PWM (դեղին մետաղալար)

Arduino- ի 5V PIN => VCC (կարմիր) 3 servo շարժիչներից:

GND PIN Arduino => GND (շագանակագույն կամ սև) 3 servo շարժիչներից

MPU6050 գիրո լարեր

A4 => SDA

A5 => SCL

3.3 V Arduino- ի PIN => MPU6050 VCC

Arduino- ի GND PIN => MPU6050 GND

HC-05 Bluetooth միացում

D9 => TX

D10 => RX

Arduino- ի 3.3 V PIN => HCC-05 Bluetooth- ի VCC

GND PIN Arduino => GND HC-05 Bluetooth

Քայլ 3: 3D ձևավորում և ֆունկցիոնալություն

3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն
3D դիզայն և ֆունկցիոնալություն

Ես ավարտեցի Gimbal- ի եռաչափ դիզայնը ՝ հաշվի առնելով շուկայում վաճառվող այլ Gimbals- ը: Գոյություն ունեն երեք հիմնական բաղադրիչ, որոնք պտտվում են servo շարժիչներով: Ես նախագծեցի GoPro լեռ, որը համապատասխանում է իր չափսերին:

Բոլոր եռաչափ դիզայնի.քայլ ֆայլը կիսվում է ներքևում ՝ խմբագրումն ավելի հեշտ դարձնելու համար:

Քայլ 4: Վերահսկողության մեխանիզմ

Image
Image

Իմ Gimbal նախագծի հիմնական ալգորիթմը օգտագործում է Quaternion ռոտացիան, որն այլընտրանք է Էյլերի անկյուններին: Ես օգտագործել եմ helper_3dmath.h գրադարանը ՝ որպես հղում ՝ Quaternion ալգորիթմի կիրառմամբ սահուն շարժում ապահովելու համար: Չնայած սկիպիդար առանցքի պատասխանը սահուն է, գլորման առանցքը հետ է մնում `արձագանքելու փայտերի շարժմանը: Օգտագործելով Quaternion ալգորիթմը, ես կարողացա վերահսկել Roll և Pitch servo շարժիչները: Եթե ցանկանում եք օգտագործել yaw առանցքը, գուցե անհրաժեշտ լինի օգտագործել երկրորդ MPU6050- ը ՝ պարզապես yaw առանցքը կառավարելու համար: Որպես այլընտրանքային լուծում, ես կազմաձևեցի HC-05- ը և հեռակա կարգով վերահսկեցի yaw առանցքը android հավելվածի միջոցով `օգտագործելով կոճակներ: Յուրաքանչյուր սեղմելիս կոճակը սեղմելու համար շեղման առանցքի սերվոն պտտվում է 10 աստիճանով:

Այս նախագծում գրադարանները, որոնք ես ստիպված էի ներմուծել արտաքինից, հետևյալն են.

1- I2Cdev.h // Օգտագործվում է wire.h- ով MPU6050- ի հետ հաղորդակցությունը միացնելու համար

2- «MPU6050_6Axis_MotionApps20.h» // yrիրոսկոպի գրադարան

3- // Թույլ է տալիս թվային կապերը փոխարկել RX և TX կապերի (անհրաժեշտ է HC-05 bluetooth մոդուլի համար)

4-

5- // Այն թույլ է տալիս շփվել I2C սարքերի հետ, որոնք օգտագործում են երկու տվյալների կապ (SDA և SCL) => MPU6050

Հիմնական ծածկագիրը ստեղծվել է ffեֆ Ռոուբերգի կողմից, և ես այն փոփոխել եմ ըստ իմ նախագծի ֆունկցիոնալության և մեկնաբանել եմ ino ֆայլի բոլոր գործառույթները:

Խորհուրդ ենք տալիս: