Kazalo:

Prototip stabilizatorja kamere (2DOF): 6 korakov
Prototip stabilizatorja kamere (2DOF): 6 korakov

Video: Prototip stabilizatorja kamere (2DOF): 6 korakov

Video: Prototip stabilizatorja kamere (2DOF): 6 korakov
Video: Свидание в 16 vs 26 лет 😨😳 2024, November
Anonim
Prototip stabilizatorja kamere (2DOF)
Prototip stabilizatorja kamere (2DOF)

Avtorji:

Robert de Mello e Souza, Jacob Paxton, Moises Farias

Zahvala:

Ogromna hvala Kalifornijski državni pomorski akademiji, njenemu programu inženirske tehnologije in dr. Chang-Siu, ki sta nam pomagala uspeti pri našem projektu v tako zapletenih časih.

Uvod:

Naprava za stabilizacijo kamere ali gimbal kamere je nosilec, ki preprečuje tresenje fotoaparata in druge neupravičene premike. Eden prvih stabilizatorjev, ki so kdajkoli izumili, je uporabil amortizerje/vzmeti za blaženje nenadnih sprememb v gibanju kamere. Druge vrste stabilizatorjev za opravljanje iste naloge uporabljajo žiroskope ali opore. Te naprave stabilizirajo neželene premike do treh različnih osi ali dimenzij. Sem spadajo osi x, y in z. To pomeni, da lahko stabilizator oslabi gibanje v treh različnih smereh: kot, nagib in nihanje. Običajno se to doseže s pomočjo 3 motorjev, krmiljenih z elektronskim krmilnim sistemom, od katerih vsak deluje proti različni osi.

Ta projekt nas je izredno zanimal iz več razlogov. Vsi uživamo v različnih aktivnostih na prostem, kot so deskanje na snegu in drugi športi. Kakovost posnetkov teh dejavnosti je težka zaradi količine gibanja. Nekaj nas ima pravi stabilizator kamere, kupljen v trgovini, zato smo želeli raziskati, kaj je potrebno za ustvarjanje česa takega. V naših laboratorijih in predavanjih smo se naučili, kako komunicirati s servo motorji z uporabo Arduina, kodiranje, ki je potrebno za njihovo delovanje, in teorijo elektronskih vezij, ki nam pomagajo pri načrtovanju vezij.

*OPOMBA: Zaradi COVID-19 tega projekta nismo mogli dokončati v celoti. Ta navodila so navodila za vezja in kode, potrebne za prototip stabilizatorja. Projekt nameravamo zaključiti vsakič, ko se šola nadaljuje in imamo spet dostop do 3D tiskalnikov. Dokončana različica bo imela baterijsko vezje in 3D-natisnjeno ohišje s stabilizatorskimi rokami (prikazano spodaj). Upoštevajte tudi, da je napajanje servo motorjev iz napajalnika Arduino 5v na splošno slaba praksa. To preprosto počnemo, da omogočimo testiranje prototipa. V končni projekt bo vključeno ločeno napajanje, ki je prikazano na spodnji shemi vezja.

Zaloge

-Mikrokontroler Arduino UNO

-lesena deska

-Komplet žičnih mostov

-Merilna enota za inercialno merjenje MPU6050

-MG995 servo motor (x2)

-LCD1602 modul

-Modul igralne palice

1. korak: Pregled projekta

Image
Image

Zgoraj je videoposnetek našega projekta in prikazuje tudi delovno predstavitev.

2. korak: teorija in delovanje

Stanje/logični diagram
Stanje/logični diagram

Za stabilizacijo naše kamere smo uporabili dva servo motorja za stabilizacijo osi nagiba in nagiba. Inercialna merilna enota (IMU) zazna pospešek, kotni pospešek in magnetno silo, s katero lahko določimo kot kamere. Z IMU, pritrjenim na sklop, lahko s pomočjo zaznanih podatkov samodejno preprečimo spremembo gibanja ročaja s servomotorji. Poleg tega lahko z igralno palico Arduino ročno upravljamo dve osi vrtenja, po en motor za vsako os.

Na sliki 1 lahko vidite, da valju nasprotuje valjčni servo motor. Ko se ročaj premakne v smeri kotaljenja, se bo servo motor z rolo vrtel v enaki, a nasprotni smeri.

Na sliki 2 lahko vidite, da kot nagiba nadzira ločen servo motor, ki deluje na podoben način kot servo motor.

Servo motorji so dobra izbira za ta projekt, saj združujejo motor, senzor položaja, majhen vgrajen mikrokrmilnik in H-most, ki nam omogoča ročno in samodejno krmiljenje položaja motorja prek Arduina. Prvotna zasnova je zahtevala le en servo motor, vendar smo se po premisleku odločili za uporabo dveh. Dodane dodatne komponente so bili Arduino LCD zaslon in igralna palica. Namen LCD zaslona je prikazati stanje, v katerem je stabilizator trenutno, in trenutni kot vsakega servomotorja med ročnim upravljanjem.

Za izdelavo ohišja za vse električne komponente smo uporabili računalniško podprto oblikovanje (CAD) in uporabili bomo 3D tiskalnik. Za držanje električnih komponent smo oblikovali ohišje, ki bo delovalo tudi kot ročaj. Tu bodo nameščeni senzor IMU in igralna palica. Za dvoosno krmiljenje smo zasnovali nosilce za motorje.

3. korak: Stanje/logični diagram

Koda je sestavljena iz treh stanj, od katerih bo vsako prikazano na LCD zaslonu. Ko Arduino prejme napajanje, bo na LCD-zaslonu natisnjeno »Inicializacija…« in komunikacija I2C se začne z MPU-6050. Začetni podatki iz MPU-6050 so zabeleženi, da bi našli povprečje. Po tem bo Arduino prešel v način ročnega upravljanja. Tu lahko oba servo motorja ročno nastavite s krmilno palčko. Če pritisnete gumb krmilne palice, bo prešel v stanje »Samodejna raven« in stabilizacijska platforma bo ohranila raven glede na Zemljo. Servo motorji bodo preprečili vsako gibanje v smeri kotaljenja ali nagiba, s čimer bo ploščad ostala ravna. Z naslednjim pritiskom gumba krmilne palice bo Arduino vstopil v stanje "ne delaj nič", kjer bodo zaklenjeni servo motorji. V tem vrstnem redu se bodo stanja še naprej spreminjala z vsakim pritiskom na gumb krmilne palice.

4. korak: Shema vezja

Shema vezja
Shema vezja

Zgornja slika prikazuje naš diagram projekta v načinu OFF. Mikrokrmilnik Arduino zagotavlja potrebne povezave za zagon MPU-6050 IMU, igralno palico in LCD zaslon. Celice LiPo so neposredno povezane z izmenjevalnikom in napajajo tako mikrokrmilnik Arduino kot oba servo motorja. Med tem načinom delovanja so baterije vzporedno povezane s 3-točkovnim stikalom z dvojnim metom (3PDT). Stikalo nam omogoča, da odklopimo obremenitev, hkrati pa priključimo polnilnik in preklopimo celice iz serije v vzporedno konfiguracijo. To omogoča tudi polnjenje baterije hkrati.

Ko stikalo preklopite v način VKLOP, bosta dve celici 3,7 V napajali Arduino in Servo motorje. V tem načinu delovanja so baterije zaporedno povezane s 3-točkovnim stikalom z dvojnim metom (3PDT). To nam omogoča, da dobimo 7,4V iz našega vira energije. Tako LCD zaslon kot senzor IMU uporabljata komunikacijo I2C. SDA se uporablja za prenos podatkov, medtem ko je SCL linija ure, ki se uporablja za sinhronizacijo prenosa podatkov. Servo motorji imajo po tri vodi: moč, ozemljitev in podatke. Arduino komunicira s servomotorji preko nožic 3 in 5; ti zatiči uporabljajo pulzno širinsko modulacijo (PWM) za prenos podatkov z bolj gladkimi prehodi.

*Vezje za polnjenje baterije je iz Adafruit.com

5. korak: Gradnja

Gradnja
Gradnja
Gradnja
Gradnja
Gradnja
Gradnja

Osnovna zasnova okvirja za kamero je precej preprosta, saj je v bistvu le ročaj in nosilec za fotoaparat. Gambal je sestavljen iz dveh servo motorjev, ki preprečujeta vsako gibanje v smeri valjanja in nagiba. Uporaba Arduino Uno zahteva veliko prostora, zato smo na dnu ročaja dodali tudi ohišje, ki vsebuje vse električne komponente. Nosilec ohišja, ročaja in servo motorja bo 3D natisnjen, kar nam omogoča, da zmanjšamo stroške in celotno velikost, saj imamo lahko popoln nadzor nad zasnovo. Obstaja več načinov za oblikovanje kardanske gredi, vendar je največji dejavnik, ki ga je treba upoštevati, izogibanje vrtenju enega servo motorja v drugega. V prototipu je en servo motor v bistvu pritrjen na drugega. Ko bomo spet imeli dostop do 3D tiskalnikov, bomo 3D natisnili zgornjo roko in platformo.

*Modeli za roko in platformo so na

6. korak: Splošne ugotovitve in možne izboljšave

Začetne raziskave, ki smo jih opravili na gimbalih kamere, so bile zelo zastrašujoče. Čeprav je bilo na to temo ogromno virov in informacij, se je zelo zdelo, da bi bil projekt izven naše lige. Začeli smo počasi, raziskovali smo kolikor se je dalo, a malo absorbirali. Vsak teden smo se dobivali in sodelovali. Ko smo delali, smo pridobivali vse več zagona in na koncu postali manj strah in bolj navdušeni nad projektom. Čeprav smo dodali dodatno igralno palico in LCD zaslon, lahko projektu dodamo še veliko več. Dodati je treba tudi nekaj izboljšav, na primer omejitve ročnega upravljanja, ki bi uporabniku preprečile vrtenje enega servo motorja v drugega. To je majhen problem in ga je mogoče odpraviti tudi z drugačno zasnovo montaže. Razpravljali smo tudi o možnostih dodajanja funkcije pan. To bi uporabniku omogočilo uporabo servo motorjev za premikanje po območju v določenem času.

Kot ekipa smo vsi zelo dobro sodelovali. Kljub okoliščinam in le zmožnosti virtualnega srečanja smo to najbolje izkoristili in ohranili pogosto komunikacijo. Vsi deli in komponente so bili dani eni osebi, kar je preostalim članom skupine nekoliko otežilo pomoč pri odpravljanju morebitnih težav, ki so se pojavile. Lahko smo rešili nastala vprašanja, toda če bi imeli vsi enako gradivo, bi nam bilo nekoliko lažje pomagati. Na splošno je največji prispevek k zaključku našega projekta bila sposobnost vsakega člana, da ima na voljo in pripravljenost, da se o projektu sreča in poklepeta.

Priporočena: