Innholdsfortegnelse:
- Trinn 1: Planen
- Trinn 2: Liste over komponenter
- Trinn 3: Utforming av kretskortet
- Trinn 4: Å sette ting sammen
- Trinn 5: Arbeid
- Trinn 6: Fremtidige oppgraderinger
- Trinn 7: Kos deg
Video: Bevegelseskontrollert timelapse: 7 trinn (med bilder)
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Timelapses er flotte! De hjelper oss med å ta en titt på den sakte bevegelige verden, som vi kanskje glemmer å sette pris på skjønnheten i den. Men noen ganger kan en jevn timelapse -video være kjedelig, eller det skjer så mange ting rundt at bare en vinkel ikke er tilstrekkelig. La oss krydre det!
I denne instruksen vil jeg vise deg hvordan jeg har laget en enhet som vil legge til bevegelse i timelapse. La oss komme i gang!
Trinn 1: Planen
Jeg ønsket at kameraet skulle bevege seg i to retninger, dvs. i horisontal (X) og vertikal (Y) akse. For det trenger jeg to motorer.
Vi bør kunne velge start- og stopposisjon for begge aksene.
Motorens bevegelse ville være slik at aksene etter hvert foto skulle snu med 1 grad.
For å få så presis kontroll vil jeg bruke Servomotorer.
Vi bør også kunne angi tidsintervallet.
Jeg ville at den skulle være bærbar, så jeg bestemte meg for å kjøre den på et LiPo -batteri, noe som betyr at lading og boostkrets vil være nødvendig.
Og til slutt vil hjernen for å kontrollere alt dette være Arduino. ATMega328p vil bli brukt som en frittstående mikrokontroller.
Jeg gikk med et GoPro -kamera, ettersom det er lite, og det er enkelt å ta timelapses med det. Du kan gå med et annet lite kamera eller mobiltelefonen din.
Trinn 2: Liste over komponenter
1x ATmega328p (med Arduino bootloader)
2x MG995 servomotor
1x MT3608 Boost -omformer
1x TP4056 LiPo batterilademodul
1x SPDT -bryter
1x 16 MHz krystall
2x 22pF kondensator
2x 10k motstand
1x potensiometer (hvilken som helst verdi)
1x trykknapp (normalt åpen)
Valgfri:
3D -skriver
Trinn 3: Utforming av kretskortet
For å gjøre kretsen så liten som mulig, gikk jeg med et kretskort. Du kan etse brettet selv hjemme eller la fagfolkene gjøre det harde arbeidet for deg, og det er det jeg gjorde.
Når alt fungerer rett på brødbrettet, kan vi starte med PCB -designprosessen. Jeg valgte EasyEDA for å designe, da det gjør ting enkelt for nybegynnere som meg.
Sjekk, sjekk og sjekk! Sørg for at du ikke gikk glipp av noe. Når du er helt sikker, klikker du på Generer fabrikasjonsfil for å laste ned Gerber -filene, eller du kan bestille den direkte fra JLCPCB for bare 2 $ ved å bruke alternativet nedenfor.
Når du mottar/lager PCB -en, er det på tide å fylle den ut. Hold kretsdiagrammet klart og begynn å lodde komponentene i henhold til silketrykket.
Rengjør kretskortet etter lodding med Iso Propyl Alcohol for å fjerne fluksresten.
Trinn 4: Å sette ting sammen
Du trenger ikke en fancy 3D -skriver. Delene kan lett bygges med riktige verktøy. Jeg har nylig fått en 3D -skriver og var ivrig etter å bruke den i prosjektet mitt. Jeg fant noen av delene fra Thingiverse.
GoPro Mount:
Servo Horn:
Loddetråder til strømbryteren, gryte og trykknapp med hunnhoder og koble dem til hannhodene på kretskortet.
Last ned og åpne den vedlagte filen i Arduino IDE og last opp koden til Arduino. Etter at du har lastet opp koden, fjerner du IC -en fra Arduino -kortet og setter den inn på PCB -en.
/*Forfatter: IndoorGeek YouTube: www.youtube.com/IndoorGeek Takk for at du lastet ned. Håper du liker prosjektet. */
#inkludere
Servo xServo;
Servo yServo;
int potPin = A0;
int val, xStart, xStop, yStart, yStop; int -knapp = 2; usignert lang tidInterval;
ugyldig oppsett () {
pinMode (knapp, INNGANG); xServo.attach (3); yServo.attach (4); }
void loop () {
xAxis (); forsinkelse (1000); xStart = val; yAxis (); forsinkelse (1000); yStart = val; xAxis (); forsinkelse (1000); xStop = val; yAxis (); forsinkelse (1000); yStop = val; setTimeInterval (); forsinkelse (1000); timelapseStart (); }
void xAxis () {
mens (digitalRead (knapp)! = HIGH) {val = analogRead (A0); val = kart (val, 0, 1023, 0, 180); xServo.write (val); }}
ugyldig yAxis () {
mens (digitalRead (knapp)! = HIGH) {val = analogRead (A0); val = kart (val, 0, 1023, 0, 180); yServo.write (val); }}
void setTimeInterval () {// Endre tidsintervallene i henhold til kameraets timelapse -innstillinger
mens (digitalRead (knapp)! = HIGH) {val = analogRead (A0); hvis (val> = 0 && val = 171 && val = 342 && val = 513 && val = 684 && val = 855 && val <1023) {timeInterval = 60000L; }}}
void timelapseStart () {
usignert lang lastMillis = 0; xServo.write (xStart); yServo.write (yStart); while (xStart! = xStop || yStart! = yStop) {if (millis () - lastMillis> timeInterval) {if (xStart xStop) {xServo.write (xStart); lastMillis = millis (); xStart--; } hvis (yStart xStop) {yServo.write (yStart); lastMillis = millis (); yStart--; }}}}
Trinn 5: Arbeid
Slå PÅ hovedbryteren.
X-aksen vil være aktiv. Vri potten til posisjonen der du vil starte timelapse. Trykk på Select -knappen for å bekrefte startposisjonen. Etter det vil Y-aksen være aktiv. Gjør det samme for å velge startposisjonen for Y-aksen.
Gjenta prosedyren ovenfor for stopp -posisjonen for X- og Y -aksen.
Nå, ved å bruke potten, velg tidsintervallet mellom hvert skudd. Rotasjonen av potten er delt inn i 6 deler i intervaller 1 sek, 2 sek, 5 sek, 10 sek, 30 sek og 60 sek. Du kan endre intervallene i setTimeInterval () -funksjonen som vist på bildet. Trykk på Select -knappen for å bekrefte det.
Servoene kommer til startposisjonen og beveger seg med 1 grad etter tidsintervallet.
Sekvens:
- Angi startposisjon for X-aksen
- Angi startposisjon for Y-aksen
- Angi stoppunktet for X-aksen
- Still inn stoppstilling for Y-aksen
- Angi tidsintervallet
Trinn 6: Fremtidige oppgraderinger
1) For øyeblikket, på grunn av 1 skudd/grad, er det flest antall bilder vi kan få 180 da servoer kan rotere fra 0 til 180 grader. Ved å legge til gir vil oppløsningen øke. Dermed vil vi få flere bilder og dermed jevne tidsforløp. Jeg er ganske komfortabel med elektronikk, men ikke så mye med mekaniske ting. Ser frem til å forbedre den.
2) Potensiometeret kan erstattes av en roterende encoder.
3) Trådløs kontroll, kanskje ?!
Det er mye å lære
Trinn 7: Kos deg
Takk for at du holdt ut til slutten. Håper dere alle liker dette prosjektet og lærte noe nytt i dag. Gi meg beskjed hvis du lager en selv. Abonner på YouTube -kanalen min for flere kommende prosjekter. Takk igjen!
Anbefalt:
Bevegelseskontrollert mus: 6 trinn (med bilder)
Bevegelseskontrollert mus: Du ser på en film med vennene dine på en bærbar datamaskin, og en av gutta får en samtale. Ahh .. du må gå av sted for å sette filmen på pause. Du holder en presentasjon på en projektor og må bytte mellom applikasjoner. Du må flytte
Bevegelseskontrollert bil: 5 trinn (med bilder)
Bevegelseskontrollert bil: Roboter spiller en viktig rolle i automatisering på tvers av alle sektorer som konstruksjon, militær, medisinsk, produksjon, etc. Etter å ha laget noen grunnleggende roboter som den kontrollerte bilen ved hjelp av Bluetooth, har jeg utviklet denne akselerometerbaserte
Bevegelseskontrollert labyrint: 8 trinn (med bilder)
Gesture Controlled Maze: Jeg liker å leke med labyrint labyrint. Jeg har alltid ønsket å kontrollere et av disse labyrint -labyrintspillene ved hjelp av bevegelser eller mobil. Jeg ble inspirert til å lage denne Marble Maze av blic19933s 3D -trykte labyrint kontrollert av din Android -enhet I stedet for bruk
DTMF og bevegelseskontrollert robotrullestol: 7 trinn (med bilder)
DTMF og bevegelseskontrollert robotrullestol: I denne verden er en rekke mennesker funksjonshemmede. Livet deres dreier seg om hjul. Dette prosjektet presenterer en tilnærming for å kontrollere rullestolbevegelser ved hjelp av håndbevegelsesgjenkjenning og DTMF av en smarttelefon
Bevegelseskontrollert kamera ved bruk av MESH SDK: 6 trinn (med bilder)
Bevegelseskontrollert kamera ved hjelp av MESH SDK: Vil du automatisere kameraet ditt for å fange kjæledyrets beste øyeblikk mens du ikke er hjemme? MESH -bevegelsessensoren gjør det mulig for kameraer som støtter SDK. For eksempel har vi plassert en MESH bevegelsessensor ved siden av kattemat og katteleker til