Turinys:

Judėjimo valdomas laikas: 7 žingsniai (su nuotraukomis)
Judėjimo valdomas laikas: 7 žingsniai (su nuotraukomis)

Video: Judėjimo valdomas laikas: 7 žingsniai (su nuotraukomis)

Video: Judėjimo valdomas laikas: 7 žingsniai (su nuotraukomis)
Video: Svoris, grožis ir kiti stereotipai | Nusirenk iki pusės #7 2024, Lapkritis
Anonim
Image
Image
Planas
Planas

Laiko pertraukos puikios! Jie padeda pažvelgti į lėtai judantį pasaulį, kurį galime pamiršti įvertinti jo grožį. Tačiau kartais nuolatinis vaizdo įrašas gali būti nuobodus arba aplinkui vyksta tiek daug dalykų, kad nepakanka vieno kampo. Pagardinkime!

Šioje instrukcijoje aš jums parodysiu, kaip sukūriau įrenginį, kuris jūsų judesiui pridės judesio. Pradėkime!

1 žingsnis: planas

Norėjau, kad fotoaparatas judėtų dviem kryptimis, t.y. horizontalia (X) ir vertikalia (Y) ašimi. Tam man reikės dviejų variklių.

Turėtume turėti galimybę pasirinkti abiejų ašių pradžios ir sustojimo padėtį.

Variklių judėjimas būtų toks, kad po kiekvienos nuotraukos ašys turėtų pasisukti 1 laipsniu.

Norėdami gauti tokį tikslų valdymą, naudosiu „Servo Motors“.

Be to, turėtume sugebėti nustatyti laiko intervalą.

Norėjau, kad jis būtų nešiojamas, todėl nusprendžiau jį naudoti su „LiPo“baterija, o tai reiškia, kad reikės įkrauti ir padidinti grandinę.

Ir galiausiai smegenys, valdančios visa tai, bus „Arduino“. „ATMega328p“bus naudojamas kaip atskiras mikrovaldiklis.

Aš nuėjau su „GoPro“fotoaparatu, nes jis yra mažas ir su juo padaryti laiko tarpų yra paprasta. Galite eiti su bet kuria kita maža kamera ar mobiliuoju telefonu.

2 žingsnis: komponentų sąrašas

Komponentų sąrašas
Komponentų sąrašas
Komponentų sąrašas
Komponentų sąrašas
Komponentų sąrašas
Komponentų sąrašas

1x ATmega328p (su „Arduino“įkrovos įkrovikliu)

2x MG995 servo variklis

1x MT3608 stiprintuvo keitiklis

1x TP4056 LiPo akumuliatoriaus įkrovimo modulis

1x SPDT jungiklis

1x 16 MHz kristalas

2x 22pF kondensatorius

2x 10k rezistorius

1x potenciometras (bet kokia vertė)

1x mygtukas (paprastai atidarytas)

Neprivaloma:

3D spausdintuvas

3 žingsnis: PCB projektavimas

PCB projektavimas
PCB projektavimas
PCB projektavimas
PCB projektavimas
PCB projektavimas
PCB projektavimas

Kad grandinė būtų kuo mažesnė, aš nuėjau su spausdintine plokšte. Galite išgraviruoti lentą patys namuose arba leisti profesionalams atlikti sunkų darbą už jus, ir aš tai padariau.

Kai viskas veikia teisingai, galime pradėti nuo PCB projektavimo proceso. Projektuodamas pasirinkau „EasyEDA“, nes tai palengvina pradedantiesiems, tokiems kaip aš.

Patikrinkite, patikrinkite ir patikrinkite! Įsitikinkite, kad nieko nepraleidote. Kai būsite visiškai tikri, spustelėkite „Generuoti gamybos failą“, kad atsisiųstumėte „Gerber“failus, arba galite tiesiogiai užsisakyti jį iš JLCPCB tik už 2 USD, naudodami toliau pateiktą parinktį.

Kai gausite/pagaminsite savo PCB, laikas ją užpildyti. Paruoškite savo schemą ir pradėkite lituoti komponentus pagal šilkografijos žymėjimą.

Po litavimo izopropilo alkoholiu išvalykite PCB, kad pašalintumėte srauto likučius.

4 žingsnis: Sujunkite dalykus

Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas
Daiktų sujungimas

Jums nereikės įmantraus 3D spausdintuvo. Dalys gali būti labai lengvai pagamintos naudojant tinkamus įrankius. Neseniai gavau 3D spausdintuvą ir norėjau jį naudoti savo projekte. Radau kai kurias dalis iš „Thingiverse“.

„GoPro“laikiklis:

Servo ragas:

Lituokite laidus prie maitinimo jungiklio, puodo ir mygtuko su moteriškomis antraštėmis ir prijunkite juos prie PCB antgalių.

Atsisiųskite ir atidarykite pridėtą failą „Arduino IDE“ir įkelkite kodą į „Arduino“. Įkėlę kodą, pašalinkite IC iš „Arduino“plokštės ir įdėkite ją į savo PCB.

/*Autorius: IndoorGeek YouTube: www.youtube.com/IndoorGeek Dėkojame, kad atsisiuntėte. Tikiuosi, kad jums patinka projektas. */

#įtraukti

Servo xServo;

Servo yServo;

int potPin = A0;

int val, xStart, xStop, yStart, yStop; int mygtukas = 2; unsigned long timeInterval;

void setup () {

pinMode (mygtukas, INPUT); xServo.attach (3); yServo.attach (4); }

void loop () {

xAšis (); vėlavimas (1000); xPradėti = val; yAšis (); vėlavimas (1000); yPradėti = val; xAšis (); vėlavimas (1000); xStop = val; yAšis (); vėlavimas (1000); yStop = val; setTimeInterval (); vėlavimas (1000); timelapseStart (); }

void xAxis () {

while (digitalRead (mygtukas)! = HIGH) {val = analogRead (A0); val = žemėlapis (val, 0, 1023, 0, 180); xServo.write (val); }}

void yAxis () {

while (digitalRead (mygtukas)! = HIGH) {val = analogRead (A0); val = žemėlapis (val, 0, 1023, 0, 180); yServo.write (val); }}

void setTimeInterval () {// Pakeiskite laiko intervalus pagal fotoaparato timelapse nustatymus

while (digitalRead (mygtukas)! = HIGH) {val = analogRead (A0); jei (val> = 0 && val = 171 && val = 342 && val = 513 && val = 684 && val = 855 && val <1023) {timeInterval = 60000L; }}}

void timelapseStart () {

unsigned long lastMillis = 0; xServo.write (xStart); yServo.write (yStart); while (xStart! = xStop || yStart! = yStop) {if (millis () - lastMillis> timeInterval) {if (xStart xStop) {xServo.write (xStart); lastMillis = milis (); xStart--; } if (yStart xStop) {yServo.write (yStart); lastMillis = milis (); yPradėti--; }}}}

5 žingsnis: darbas

Dirba
Dirba
Dirba
Dirba

Įjunkite pagrindinį jungiklį.

X ašis bus aktyvi. Pasukite puodą į tą vietą, nuo kurios norite pradėti timelapse. Paspauskite pasirinkimo mygtuką, kad patvirtintumėte pradinę padėtį. Po to Y ašis bus aktyvi. Atlikite tą patį, kad pasirinktumėte Y ašies pradžios padėtį.

Pakartokite aukščiau aprašytą procedūrą X ir Y ašių sustojimo padėčiai.

Dabar, naudodami puodą, pasirinkite laiko intervalą tarp kiekvieno šūvio. Puodo sukimasis padalintas į 6 dalis 1 sek., 2 sek., 5 sek., 10 sek., 30 sek. Ir 60 sek. Galite pakeisti intervalus funkcijoje setTimeInterval (), kaip parodyta paveikslėlyje. Norėdami tai patvirtinti, paspauskite pasirinkimo mygtuką.

Servai pasieks pradinę padėtį ir pasibaigs 1 laipsniu po laiko intervalo.

Seka:

  1. Nustatykite X ašies pradžios padėtį
  2. Nustatykite Y ašies pradžios padėtį
  3. Nustatykite X ašies stabdymo padėtį
  4. Nustatykite Y ašies stabdymo padėtį
  5. Nustatykite laiko intervalą

6 žingsnis: būsimi atnaujinimai

Būsimi atnaujinimai
Būsimi atnaujinimai

1) Šiuo metu dėl vieno kadro/laipsnio daugiausia nuotraukų, kurias galime gauti, yra 180, nes servos gali pasukti nuo 0 iki 180 laipsnių. Pridedant krumpliaračius, skiriamoji geba padidės. Taigi turėsime daugiau kadrų, taigi ir sklandžių laiko tarpų. Man labai patinka elektronika, bet nelabai su mechaniniais dalykais. Laukiam, kada tai patobulinsime.

2) Potenciometrą galima pakeisti rotaciniu kodavimo įrenginiu.

3) Belaidis valdymas, gal ?!

Yra daug ko išmokti

7 žingsnis: mėgaukitės

Ačiū, kad laikėtės iki galo. Tikiuosi, kad jums visiems patinka šis projektas ir šiandien sužinojote kažką naujo. Praneškite man, jei padarysite vieną sau. Prenumeruokite mano „YouTube“kanalą, kad gautumėte daugiau būsimų projektų. Dar kartą ačiū!

Rekomenduojamas: