Slik bruker du en Arduino å skape vakre høyhastighetsfotografering

Annonse

Annonse
Annonse

Smashing vin briller og popping ballonger er åpenbart morsomt i seg selv - det er bare hvordan jeg ruller. Men kombinert med et DSLR-kamera og en Arduino, kan det også gjøre noen interessante fotografier. Det er akkurat det vi skal gjøre i dag.

Prosjekt Grunnleggende

Det er to deler til dette prosjektet virkelig - den første er en lydutløser. Ved hjelp av en piezo summer som en mikrofon og en Arduino, kan vi enkelt oppdage høye lyder og definere en handling. Den andre delen er kameraoppsettet. Siden utløsningen av kameraet direkte ville være for sakte, vil vi forlate kameralukeren åpen i et mørkt rom og bruke en ekstern blits for å gi akkurat nok lys for å fullføre bildet.

Hvis du er helt ny på fotografering, sjekk ut mine 5 beste fotograferingstips for absolutt nybegynnere Topp 5 Fotograferingstips for Absolutt Nybegynnere Topp 5 Fotograferingstips for Absolutt Nybegynnere Hvis du er en absolutt nybegynner på fotografering, er det en håndfull av tips som bør betraktes som "viktig læring". Her er topp fem. Les mer . Hvis dette prosjektet er litt komplisert for deg, hvorfor ikke gå på skråstilling for å gi bildene dine en modelldiorama-effekt. 5 måter å skråstille dine bilder på for modell-tastic mockups. 5 måter å skråstille bilder på for modell -tastic Mockups Les mer i stedet.

Utstyr

  • DSLR kamera med stativ
  • Ekstern blits med manuell utløser
  • Arduino
  • Piezo summer og 1M Ohm motstand
  • 4N35 eller lignende optokobler / opto-isolator og 220 ohm motstand

Koblingsskjema

Den piezo summer skulle være koblet svart wire til GND og rød til A0; plasser 1M motstanden mellom de to pinnene. Motstanden brukes til å gi en strømavstand for spenningen som produseres av piezoen, og beskytter den analoge inngangen.

arduino-kretsen

Vi bruker en optoisolator for å beskytte Arduino fra hvilken som helst spenning den eksterne flashen kan ha. En optoisolator er en LED- og lysfølsom bryter i en liten pakke; slå lysdioden på den ene siden og bryteren på den andre vil bli aktivert. På 4N35 (andre modeller kan variere), bør du se en veldig liten sirkel i ett hjørne - denne pin 1. Koble pin 1 via 220 ohm motstanden til pin 12, og pin 2 til GND. Enheten som utløses går på de to pinnene i motsatt hjørne (5/6). Enden av disse utløserledningene kan enten gå til en faktisk flash-utløserkabel, eller bare jury-rett dem rett inn i kontakten - det kan hende du trenger litt Blu-Tack for å få dem til å holde seg på plass.

flash-trigger

Her er den ferdige kretsen koblet til blitsen.

ferdig-kretsen

Arduino kode

Koden for dette prosjektet er relativt enkelt. I filen nedenfor har jeg forlatt seriell konsollutgang i, selv om du kanskje vil fjerne det når du er sikker på at ting fungerer - bare kommentere linjene Serial.begin og Serial.println når du er klar. Kjør koden og se på konsollutgangen når du klapper hendene dine - du bør få en utgang fra piezo-buzeren. Tallene du har her kan brukes til å bestemme grensen der blitsen brenner, men min piezo var ikke så følsom så jeg forlot den på 1.

I hovedløkken sjekker vi om piezoavlesningen er over terskelen, og hvis det har vært mer enn et sekund siden siste gang vi utløste blitsen. Dette unngår å utløse blitsen mer enn en gang. På noen blinker kan dette ikke være nødvendig, men siden min var i stand til vedvarende utbrudd, var det bare å skyte flere ganger uten at sjekken.

Legg også merke til forsinkelsesverdien før du utløser blitsen - du vil enten leke med dette eller fjerne det helt, avhengig av hva det er som du fotograferer. Uten forsinkelsen ble bildet av et knust glass tatt umiddelbart etter støt, uten knusende effekt. 50ms var litt for treg, så 25ms burde være ideell for å se faktisk splittring.

int ledPin = 13; int cameraPin = 12; int piezo = 0; unsigned long lastMillis = 0; byte val = 0; int threshold= 1; void setup() { pinMode(ledPin, OUTPUT); pinMode(cameraPin, OUTPUT); Serial.begin(9600); } void loop() { val = analogRead(piezo); if(val>0){ Serial.println(val); //used to debug } if (val>= threshold && (millis()-lastMillis>1000)) { delay(25); // change as needed, or remove entirely digitalWrite(ledPin, HIGH); digitalWrite(cameraPin, HIGH); lastMillis = millis(); } else{ digitalWrite(ledPin, LOW); digitalWrite(cameraPin, LOW); } } 

skyting

Først av, du trenger et mørkt rom for å gjøre dette - jo nærmere kan du få det til å tone svart, jo bedre. Hvis du finner at bildene dine er for uklare, kan det skyldes for mye omgivelseslys. Det eneste lyset du vil ha for dette bildet er i øyeblikket blitsen utløses, så sett DSLR-en i manuell modus og sett eksponeringstiden opptil 4 sekunder eller mer . Still blenderen til rundt F8 til F16 ; Jeg trengte en ISO på 1600 for å fange disse bildene, men du bør justere begge disse verdiene for å finne noe som fungerer for deg før du går videre.

Du vil også trenge kameraet på manuell fokus, og deaktivere stabilisering hvis du har den. Spille rundt med flash-tidene dine - jeg brukte 1/128 strøm - noe høyere enn 1/32, og du finner flashen brann for lenge, noe som igjen resulterer i uskarpe bilder. Jeg er absolutt ingen fotografisk ekspert, så det handler egentlig bare om å spille rundt for å finne innstillinger som fungerer for deg.

En enkel måte å teste oppsettet på er å drepe lysene, klikke på lukkeren og klapp - skottet skal komme ut godt opplyst og ikke uklart.

Tilfreds med mine tester, gikk jeg videre og prøvde å poppe en ballong.

hs-balloon2

Koden kan gjøre med å være optimalisert litt - selv om det ikke er programmert forsinkelse, ser det ut til at skuddet var bare 5-10 ms for sakte for å fange øyeblikket. Likevel kom denne ut pent og viser marmorert ballongfarger og en forvirret hund.

hs-ballong-en

Dette var mitt første forsøk på å knuse ting - uten forsinkelse, bildet tatt direkte i øyeblikk av påvirkning og ikke spesielt spennende.

hs-no-forsinkelse-glass

En 10 ms forsinkelse var bare litt for tidlig for denne krus.

hs-10ms-cup

Jeg prøvde igjen med den andre halvdelen av koppen og en forsinkelse på 50 m - bare litt for sent føler jeg meg:

hs-50ms-cup

Jeg ga 50ms en annen sjanse med dette glasset - pass på at du knuser ting i en boks for å gjøre det enklere!

hs-50ms-glass

Den gode tingen med DSLR er at du kan ta en million skudd til du får det riktig, selv om glasset ditt kommer til å bli dyrt. Jeg vil være ærlig, jeg tok hele dagen til tweaking og hundrevis av praktiserende skudd av meg klap for å finne de riktige innstillingene, så ikke gi opp hvis det ikke fungerer riktig første gang.

Når du er lei av ballonger og briller, prøv å eksperimentere med forskjellige typer triggere: kanskje en ping sensor plassert på bakken som fanger fallende gjenstand, eller et laserlys og fotodiode hviler like over vann som utløses når lysstrålen er ødelagt. Ta noen gode skudd? Gi oss beskjed i kommentarene hvordan du har kommet på eller noen problemer du opplevde.

In this article