Innehållsförteckning:

Prototyp kamerastabilisator (2DOF): 6 steg
Prototyp kamerastabilisator (2DOF): 6 steg

Video: Prototyp kamerastabilisator (2DOF): 6 steg

Video: Prototyp kamerastabilisator (2DOF): 6 steg
Video: Erste Gehversuche zur Stewart Plattform Berechnung mit Inverser Kinematik 2024, Juli
Anonim
Prototyp kamerastabilisator (2DOF)
Prototyp kamerastabilisator (2DOF)

Författare:

Robert de Mello e Souza, Jacob Paxton, Moises Farias

Erkännanden:

Ett stort tack till California State University Maritime Academy, dess Engineering Technology-program och Dr. Chang-Siu för att vi hjälpt oss att lyckas med vårt projekt under så komplicerade tider.

Introduktion:

En kamerastabilisator, eller kameragimbal, är ett fäste som förhindrar kameraskakningar och andra obefogade rörelser. En av de första stabilisatorerna som någonsin uppfunnit använde stötdämpare/fjädrar för att dämpa plötsliga förändringar i kamerans rörelse. Andra typer av stabilisatorer använder gyroskop eller stödpunkter för att utföra samma uppgift. Dessa enheter stabiliserar oönskade rörelser i upp till tre olika axlar eller dimensioner. Dessa inkluderar x-, y- och z-axeln. Detta innebär att en stabilisator kan dämpa rörelser i tre olika riktningar: rulla, pitcha och gäspa. Detta uppnås vanligtvis med 3 motorer som styrs med ett elektroniskt styrsystem som var och en motverkar en annan axel.

Vi var exceptionellt intresserade av detta projekt av flera skäl. Vi alla tycker om olika utomhusaktiviteter som snowboard och andra sporter. Att få högkvalitativa bilder av dessa aktiviteter är svårt på grund av den rörelse som krävs. Ett par av oss äger en riktig kamerastabilisator köpt från affären, och därför ville vi undersöka vad som krävs för att skapa något sådant. I våra labb- och föreläsningskurser har vi lärt oss hur man interagerar med servomotorer med Arduino, vilken kodning som krävs för att få dem att fungera och teorin bakom elektroniska kretsar som hjälper oss att designa kretsarna.

*OBS: På grund av COVID-19 kunde vi inte slutföra projektet i sin helhet. Denna instruerbara är en guide för kretsarna och koden som krävs för prototypen av stabilisatorn. Vi tänker slutföra projektet när skolan återupptas och vi har tillgång till 3D -skrivare igen. Den färdiga versionen kommer att ha en batterikrets och ett 3D-tryckt hus med stabilisatorarmar (visas nedan). Observera också att det i allmänhet är dåligt att stänga av servomotorerna från Arduino 5v -strömförsörjningen. Vi gör helt enkelt detta för att möjliggöra testning av prototypen. En separat strömförsörjning kommer att ingå i det slutliga projektet och visas i kretsschemat nedan.

Tillbehör

-Arduino UNO mikrokontroller

-Bakbord

-Wire Jumper Kit

-MPU6050 Tröghetsmätningsenhet

-MG995 Servomotor (x2)

-LCD1602 -modul

-Joystick -modul

Steg 1: Projektöversikt

Image
Image

Ovan är en video av vårt projekt och visar också en fungerande demonstration.

Steg 2: Teori och verksamhet

Tillstånd/logiskt diagram
Tillstånd/logiskt diagram

För stabilisering av vår kamera använde vi två servomotorer för att stabilisera stignings- och rullaxeln. En tröghetsmätningsenhet (IMU) känner av acceleration, vinkelacceleration och magnetisk kraft som vi kan använda för att bestämma kamerans vinkel. Med en IMU ansluten till enheten kan vi använda de avkända uppgifterna för att automatiskt motverka förändringen i handtagets rörelse med servon. Dessutom kan vi med en Arduino -joystick manuellt styra två rotationsaxlar, en motor för varje axel.

I figur 1 kan du se att rullen motverkas av rullservomotorn. När handtaget flyttas i rullningsriktningen kommer rullservomotorn att rotera i lika men motsatt riktning.

I figur 2 kan du se stigningsvinkeln styrs av en separat servomotor som fungerar på liknande sätt som rullservomotorn.

Servomotorer är ett bra val för detta projekt eftersom det kombinerar motorn, en positionssensor, en liten inbyggd mikrokontroller och H-brygga som gör att vi manuellt och automatiskt kan styra motorpositionen genom Arduino. Den ursprungliga designen krävde bara en servomotor, men efter en del funderingar bestämde vi oss för att använda två. Ytterligare komponenter tillkom var en Arduino LCD -skärm och joystick. Syftet med LCD -skärmen är att visa vilket tillstånd stabilisatorn för närvarande är i och den aktuella vinkeln för varje servo under manuell kontroll.

För att skapa höljet för alla elektriska komponenter har vi använt Computer-Aided Design (CAD) och kommer att använda en 3D-skrivare. För att hålla de elektriska komponenterna har vi konstruerat en kaross som också fungerar som ett handtag. Det är här IMU -sensorn och joysticken kommer att monteras. För dubbelaxelstyrning konstruerade vi fästen för motorerna.

Steg 3: Status/logikdiagram

Koden består av tre tillstånd, var och en kommer att anges på LCD -skärmen. När Arduino får ström kommer LCD-skärmen att skriva ut "Initialiserar …" och I2C-kommunikation startas med MPU-6050. De initiala data från MPU-6050 registreras för att hitta genomsnittet. Därefter kommer Arduino att gå in i det manuella kontrolläget. Här kan båda servomotorerna justeras manuellt med joysticken. Om joystick -knappen trycks in kommer den sedan att gå in i "Auto Level" -läget och stabiliseringsplattformen håller nivån i förhållande till jorden. Varje rörelse i rullnings- eller stigningsriktningen kommer att motverkas av servomotorerna och därmed hålla plattformen jämn. Med ytterligare ett tryck på joystick -knappen kommer Arduino att gå in i "Gör ingenting -tillstånd" där servomotorerna kommer att låsas. I den ordningen kommer staterna att fortsätta att förändras med varje tryck på joystick -knappen.

Steg 4: Kretsdiagram

Kretsdiagram
Kretsdiagram

Bilden ovan illustrerar vårt projektkretsdiagram i OFF -läge. Arduino mikrokontroller ger nödvändiga anslutningar för att köra MPU-6050 IMU, joystick och LCD-skärmen. LiPo -cellerna är direkt anslutna till växlaren och levererar ström till både Arduino Microcontroller och båda servomotorer. Under detta driftsläge ansluts batterierna parallellt med användning av en 3-punkts dubbelkastare (3PDT). Med omkopplaren kan vi koppla bort lasten samtidigt som vi ansluter laddaren och byter cellerna från en serie till en parallell konfiguration. Detta låter också batteriet ladda samtidigt.

När omkopplaren vänds till ON -läge kommer två 3,7v -celler att ge ström till Arduino- och Servomotorerna. Under detta driftsläge kopplade batterierna i serie med hjälp av en 3-punkts dubbelkastare (3PDT). Detta gör att vi kan få 7,4v från vår strömkälla. Både LCD -skärmen och IMU -sensorn använder I2C -kommunikation. SDA används för att överföra data, medan SCL är klocklinjen som används för att synkronisera dataöverföringar. Servomotorerna har tre ledningar vardera: effekt, jord och data. Arduino kommunicerar med servon genom stiften 3 och 5; dessa stift använder Pulse Width Modulation (PWM) för att överföra data med jämnare övergångar.

*Batteriladdningskrets är från Adafruit.com

Steg 5: Konstruktion

Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion
Konstruktion

Den grundläggande designen för en kameragimbal är ganska enkel, eftersom den i huvudsak bara är ett handtag och fäste för en kamera. Gimbalen består av två servomotorer för att motverka eventuella rörelser i rullnings- och stigningsriktningarna. Att använda en Arduino Uno kräver en betydande mängd utrymme, så vi har också lagt till ett hus i botten av handtaget för att innehålla alla elektriska komponenter. Hus, handtag och servomotorfästen kommer alla att vara 3D -tryckta, så att vi kan minimera kostnaden och den totala storleken, eftersom vi kan ha full kontroll över designen. Det finns flera sätt att utforma gimbalen, men den största faktorn att tänka på är att undvika att en servomotor roterar till en annan. I prototypen är en servomotor väsentligen ansluten till den andra. När vi har tillgång till 3D -skrivare igen, kommer vi att skriva ut 3D -armen och plattformen som visas ovan.

*Designen för armen och plattformen är från

Steg 6: Övergripande resultat och potentiella förbättringar

Den inledande undersökningen som vi gjorde på kamerakardlar var mycket skrämmande. Medan det fanns en uppsjö av källor och information om ämnet, verkade det väldigt mycket som ett projekt som skulle vara utanför vår liga. Vi började långsamt, gjorde så mycket forskning som vi kunde, men absorberade lite. Varje vecka träffades vi och samarbetade. När vi arbetade fick vi mer och mer fart och blev till slut mindre rädda och mer upphetsade inför projektet. Medan vi lade till en extra joystick och LCD -skärm, finns det fortfarande mycket mer vi kan lägga till i projektet. Det finns också några förbättringar som kan läggas till, till exempel begränsningar av den manuella kontrollen som skulle hindra användaren från att rotera en servomotor till den andra. Detta är ett litet problem och kan också åtgärdas med en annan monteringsdesign. Vi diskuterade också möjligheterna att lägga till en pan -funktion. Detta skulle göra det möjligt för användaren att använda servomotorerna för att panorera över ett område under en viss tid.

Som ett team arbetade vi alla väldigt bra tillsammans. Trots omständigheterna och endast möjligheten att mötas praktiskt taget, gjorde vi det bästa av det och fortsatte att kommunicera ofta. Alla delar och komponenter gavs till en person och det gjorde det lite svårare för resten av gruppen att hjälpa till att felsöka eventuella problem som uppstod. Vi kunde arbeta igenom de problem som uppstod, men hade vi alla haft samma material hade det gjort det lite lättare att hjälpa till. Sammantaget var det största bidraget för att slutföra vårt projekt förmågan för varje medlem att ha tillgänglighet och vilja att träffas och chatta om projektet.

Rekommenderad: