Indholdsfortegnelse:

Prototype kamerastabilisator (2DOF): 6 trin
Prototype kamerastabilisator (2DOF): 6 trin

Video: Prototype kamerastabilisator (2DOF): 6 trin

Video: Prototype kamerastabilisator (2DOF): 6 trin
Video: 3DoF wrist prototype for robot arm 2024, Juli
Anonim
Prototype kamerastabilisator (2DOF)
Prototype kamerastabilisator (2DOF)

Forfattere:

Robert de Mello e Souza, Jacob Paxton, Moises Farias

Anerkendelser:

En stor tak til California State University Maritime Academy, dets Engineering Technology-program og Dr. Chang-Siu for at hjælpe os med at lykkes med vores projekt i så komplicerede tider.

Introduktion:

En kamerastabilisator eller kameragimbal er en holder, der forhindrer kamerarystelser og andre uberettigede bevægelser. En af de første stabilisatorer nogensinde opfundet brugte støddæmpere/fjedre til at dæmpe pludselige ændringer i kameraets bevægelse. Andre typer stabilisatorer bruger gyroskoper eller støttepunkter til at udføre den samme opgave. Disse enheder stabiliserer uønskede bevægelser i op til tre forskellige akser eller dimensioner. Disse inkluderer x-, y- og z-aksen. Det betyder, at en stabilisator kan dæmpe bevægelser i tre forskellige retninger: rul, pitch og gab. Dette opnås normalt ved hjælp af 3 motorer, der styres med et elektronisk kontrolsystem, der hver modvirker en anden akse.

Vi var usædvanligt interesserede i dette projekt af flere grunde. Vi alle nyder forskellige udendørs aktiviteter såsom snowboarding og andre sportsgrene. Det er svært at få optagelser i høj kvalitet af disse aktiviteter på grund af den nødvendige bevægelse. Et par af os ejer en rigtig kamerastabilisator købt fra butikken, og derfor ville vi undersøge, hvad der skal til for at skabe sådan noget. I vores laboratorie- og foredragstimer har vi lært om, hvordan man interagerer med servomotorer ved hjælp af Arduino, den kodning, der kræves for at få dem til at fungere, og teorien bag elektroniske kredsløb til at hjælpe os med at designe kredsløbene.

*BEMÆRK: På grund af COVID-19 kunne vi ikke fuldføre dette projekt i sin helhed. Denne instruerbare er en vejledning til kredsløb og kode, der kræves til prototypen af stabilisatoren. Vi agter at gennemføre projektet, når skolen genoptages, og vi har adgang til 3D -printere igen. Den færdige version vil have et batterikredsløb og et 3D-printet hus med stabilisatorarme (vist nedenfor). Bemærk også, at det generelt er dårlig praksis at slukke Servomotorerne for Arduino 5v -strømforsyningen. Vi gør simpelthen dette for at muliggøre test af prototypen. En separat strømforsyning vil blive inkluderet i det endelige projekt og er vist i kredsløbsdiagrammet herunder.

Forbrugsvarer

-Arduino UNO mikrokontroller

-Brødbræt

-Wire Jumper Kit

-MPU6050 Inertial måleenhed

-MG995 Servomotor (x2)

-LCD1602 modul

-Joystick -modul

Trin 1: Projektoversigt

Image
Image

Ovenfor er en video af vores projekt og viser også en fungerende demonstration.

Trin 2: Teori og operation

Stat/logisk diagram
Stat/logisk diagram

Til stabilisering af vores kamera brugte vi to servomotorer til at stabilisere pitch og roll -aksen. En inertial måleenhed (IMU) registrerer acceleration, vinkelacceleration og magnetisk kraft, som vi kan bruge til at bestemme kameraets vinkel. Med en IMU knyttet til samlingen kan vi bruge de registrerede data til automatisk at modvirke ændringen i håndtagets bevægelse med servoerne. Desuden kan vi med et Arduino Joystick manuelt styre to rotationsakser, en motor for hver akse.

I figur 1 kan du se, at rullen modvirkes af rulleservomotoren. Når håndtaget bevæges i rulleretningen, vil rulleservomotoren rotere i en lige, men modsat retning.

I figur 2 kan du se stigningsvinklen styres af en separat servomotor, der fungerer på samme måde som rulleservomotoren.

Servomotorer er et godt valg til dette projekt, fordi det kombinerer motoren, en positionssensor, en lille indbygget mikrokontroller og H-bro, der giver os mulighed for manuelt og automatisk at styre motorposition gennem Arduino. Det oprindelige design krævede kun en servomotor, men efter en del overvejelser besluttede vi at bruge to. Yderligere komponenter tilføjet var en Arduino LCD -skærm og joystick. Formålet med LCD -skærmen er at vise, hvilken tilstand stabilisatoren er i øjeblikket og den aktuelle vinkel på hver servo, mens den er i manuel kontrol.

For at skabe huset til at rumme alle de elektriske komponenter har vi brugt Computer-Aided Design (CAD) og vil bruge en 3D-printer. For at holde de elektriske komponenter har vi designet en krop, der også vil fungere som et håndtag. Det er her IMU -sensoren og joysticket monteres. Til dobbeltakset styring designede vi beslag til motorerne.

Trin 3: Stat/logisk diagram

Koden består af tre tilstande, som hver især vil blive angivet på LCD -skærmen. Når Arduino modtager strøm, udskriver LCD-skærmen "Initialiserer …", og I2C-kommunikation startes med MPU-6050. De første data fra MPU-6050 registreres for at finde gennemsnittet. Derefter går Arduino ind i manuel kontroltilstand. Her kan begge servomotorer justeres manuelt med joysticket. Hvis der trykkes på joystick -knappen, går den derefter i tilstanden "Auto Level", og stabiliseringsplatformen vil holde niveauet i forhold til Jorden. Enhver bevægelse i rulle- eller stigningsretningen vil blive modvirket af servomotorer og dermed holde platformen plan. Med endnu et tryk på joystick -knappen vil Arduino gå ind i en "Do Nothing State", hvor servomotorer vil blive låst. I den rækkefølge vil staterne fortsat ændre sig ved hvert tryk på joystick -knappen.

Trin 4: Kredsløbsdiagram

Kredsløbsdiagram
Kredsløbsdiagram

Billedet ovenfor illustrerer vores projektkredsløbsdiagram i OFF -tilstand. Arduino mikrokontroller giver de nødvendige forbindelser til at køre MPU-6050 IMU, joystick og LCD-displayet. LiPo -cellerne er direkte forbundet til skifteren og leverer strøm til både Arduino Microcontroller og begge servomotorer. Under denne driftsmåde tilsluttes batterierne parallelt med brugen af en 3-punkts dobbeltkast (3PDT) -kontakt. Kontakten giver os mulighed for at afbryde belastningen, samtidig med at laderen tilsluttes og cellerne skiftes fra en serie til en parallel konfiguration. Dette lader også batteriet oplades samtidigt.

Når kontakten vendes til ON -tilstand, vil to 3,7v -celler levere strøm til Arduino og Servo Motors. Under denne driftsmåde blev batterierne forbundet i serie med brug af en 3-punkts dobbeltkast (3PDT) -kontakt. Dette giver os mulighed for at få 7,4v fra vores strømkilde. Både LCD -skærmen og IMU -sensoren bruger I2C -kommunikation. SDA bruges til at overføre dataene, mens SCL er urlinjen, der bruges til at synkronisere dataoverførsler. Servomotorerne har hver tre afledninger: strøm, jord og data. Arduino kommunikerer med servoerne gennem stifter 3 og 5; disse ben bruger Pulse Width Modulation (PWM) for at overføre dataene med glattere overgange.

*Batteriopladningskredsløb er fra Adafruit.com

Trin 5: Konstruktion

Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion

Det grundlæggende design af en kameragimbal er ret simpelt, da det i det væsentlige bare er et håndtag og montering til et kamera. Gimbal består af to servomotorer til at modvirke enhver bevægelse i rullens og stigningsretningerne. Brug af en Arduino Uno kræver en betydelig mængde plads, så vi tilføjede også et hus i bunden af håndtaget for at indeholde alle de elektriske komponenter. Hus, håndtag og servomotorbeslag vil alle være 3D -printede, så vi kan minimere omkostningerne og den samlede størrelse, da vi kan have fuld kontrol over designet. Der er flere måder man kan designe gimbal på, men den største faktor at overveje er at undgå at en servomotor roterer til en anden. I prototypen er den ene servomotor i det væsentlige fastgjort til den anden. Når vi har adgang til 3D -printere igen, vil vi 3D udskrive armen og platformen vist ovenfor.

*Designene til armen og platformen er fra

Trin 6: Overordnede fund og potentielle forbedringer

Den indledende undersøgelse, som vi lavede om kamerabeslag, var meget skræmmende. Selvom der var en overflod af kilder og oplysninger om emnet, virkede det meget som et projekt, der ville være ude af vores liga. Vi startede langsomt, lavede så meget research som vi kunne, men absorberede lidt. Hver uge mødtes vi og samarbejdede. Efterhånden som vi arbejdede, fik vi mere og mere fart og blev i sidste ende mindre bange og mere begejstrede for projektet. Selvom vi tilføjede et ekstra joystick og LCD -skærm, er der stadig meget mere, vi kunne tilføje til projektet. Der er også et par forbedringer, der kan tilføjes, såsom begrænsninger i den manuelle kontrol, der ville forhindre brugeren i at rotere den ene servomotor til den anden. Dette er et lille problem og kan også rettes med et andet monteringsdesign. Vi diskuterede også mulighederne for at tilføje en pan -funktion. Dette ville gøre det muligt for brugeren at bruge servomotorer til at panorere over et område på en bestemt tid.

Som et team arbejdede vi alle sammen meget godt. På trods af omstændighederne og kun evnen til at mødes virtuelt, gjorde vi det bedste ud af det og holdt i hyppig kommunikation. Alle dele og komponenter blev givet til en person, og det gjorde det lidt sværere for resten af gruppen at hjælpe med at fejlfinde eventuelle problemer, der opstod. Vi var i stand til at arbejde igennem de problemer, der opstod, men havde vi alle haft de samme materialer, ville det have gjort det lidt lettere at hjælpe. Samlet set var det største bidrag til at gennemføre vores projekt evnen for hvert medlem til at have tilgængelighed og vilje til at mødes og chatte om projektet.

Anbefalede: