Cum să folosiți un arduino pentru a fotografia o fotografie frumoasă de mare viteză
Smashing ochelari de vin și baloane popping este evident distractiv în sine - asta e doar cum mă rostogolit. Dar, combinat cu o cameră DSLR și un Arduino, poate face și fotografii interesante. Exact asta vom face astăzi.
Bazele proiectului
Există două părți la acest proiect - primul este un declanșator de sunet. Folosind un buzzer piezo ca un microfon și un Arduino, putem detecta zgomote puternice și definim o acțiune. A doua parte este setarea camerei. Deoarece declanșarea directă a camerei ar fi prea lentă, vom părăsi declanșatorul camerei într-o cameră întunecată și folosind un blitz extern pentru a oferi suficientă lumină pentru a completa fotografia.
Dacă sunteți complet nou în fotografie, consultați primele mele 5 sfaturi de fotografie pentru începători absolut Top 7 sfaturi de fotografie pentru începători absolut Top 7 sfaturi de fotografie pentru începători Absolut Dacă sunteți un începător absolut în fotografie, aici sunt o mână de sfaturi care ar trebui să fie considerate "învățare esențială". Citeste mai mult . În cazul în care acest proiect este un pic complicat pentru tine, de ce nu au un du-te la tilt-shifting pentru a da fotografiilor dvs. un efect diorama model 5 moduri de a tilt-Shift-ul dvs. de fotografii pentru model-tastic Mockups 5 moduri de a tilt-shift-ul dvs. de fotografii pentru Model - Mockups tactice Citește mai mult.
echipament
- Cameră DSLR cu trepied
- Bliț extern cu declanșator manual
- Arduino
- Piezo buzzer și rezistor 1M Ohm
- 4N35 sau un opto-cuplor / opto-izolator similar și un rezistor de 220 Ohm
Schema de conexiuni
Buzzerul piezo trebuie să fie cuplat la firul negru la GND și roșu la A0; plasați rezistența 1M între cele două știfturi. Rezistorul este folosit pentru a furniza un curent de scurgere pentru tensiunea produsă de piezo, protejând intrarea analogică.
Folosim un opto-izolator pentru a proteja Arduino de orice tensiune pe care ar putea-o avea blițul extern. Un optoisolator este un LED și un comutator sensibil la lumină într-un pachet mic; rotiți LED-ul pe o parte și comutatorul pe celălalt va fi activat. La 4N35 (alte modele pot varia), ar trebui să vedeți un cerc foarte mic într-un colț - acest pin 1. Conectați pinul 1 prin rezistența de 220 ohm la pinul 12 și apoi conectați 2 la GND. Dispozitivul declanșat merge pe cele două știfturi în colțul opus (5/6). Sfârșitul acestor conductori de declanșare poate merge fie la un cablu de declanșare efectiv, fie doar la jurarea lor direct în soclu - este posibil să aveți nevoie de unele Blu-Tack pentru a le face să rămână în loc.
Iată circuitul complet conectat la bliț.
Codul Arduino
Codul pentru acest proiect este relativ simplu. În fișierul de mai jos, am lăsat ieșirea consolei Serial, deși poate doriți să o eliminați atunci când sunteți sigur că lucrurile funcționează - doar comentați Serial.begin și Serial.println atunci când sunteți gata. Rulați codul și urmăriți ieșirea din consola pe măsură ce vă bateți mâinile - ar trebui să obțineți o ieșire din buzzerul piezo. Numerele pe care le aveți aici pot fi folosite pentru a determina pragul la care se declanșează blițul, dar piezoelectrul meu nu a fost deloc atât de sensibil, așa că l-am lăsat la 1.
În bucla principală, verificăm dacă citirea piezo-ului este peste prag și dacă a fost mai mult de o secundă de la ultima dată când am declanșat blițul. Acest lucru evită declanșarea blițului mai mult decât o dată. În unele clipuri, s-ar putea să nu fie necesar, dar din moment ce a mea a fost capabil de exploziile susținute, a fost pur și simplu ars de mai multe ori fără această verificare.
De asemenea, rețineți întârziere înainte de declanșarea blițului - veți dori fie să jucați cu acest lucru, fie să îl eliminați complet, în funcție de ceea ce fotografiați. Fără întârziere, fotografia unui geam zdrobit a fost făcută imediat după impact, fără efecte distrugătoare. 50ms a fost un pic prea lent, astfel încât 25ms ar trebui să fie ideal pentru a vedea distrugerea reală.
int ledPin = 13; int cameraPin = 12; int piezo = 0; nesemnate long lastMillis = 0; byte val = 0; int prag = 1; void setup () pinMode (ledPin, OUTPUT); pinMode (cameraPin, OUTPUT); Serial.begin (9600); void loop () val = analogRead (piezo); dacă (val> 0) Serial.println (val); // folosit pentru depanare dacă (val> = prag && (millis () - lastMillis> 1000)) întârziere (25); // modificați după cum este necesar sau eliminați în întregime digitalWrite (ledPin, HIGH); digitalWrite (cameraPin, HIGH); lastMillis = milis (); altceva digitalWrite (ledPin, LOW); digitalWrite (cameraPin, LOW);
Filmare
În primul rând, veți avea nevoie de o cameră întunecată pentru a face acest lucru - cu cât mai aproape puteți ajunge la culoarea neagră, cu atât mai bine. Dacă găsiți că fotografiile dvs. sunt prea neclare, acestea pot fi cauzate de prea multă lumină ambientală. Singura lumină pe care o doriți pentru această fotografie este în momentul declanșării blițului, așa că puneți-vă aparatul DSLR manual și puneți timpul de expunere până la 4 secunde sau mai mult. Stabiliți diafragma în jur F8 până la F16; Am nevoie de un ISO din 1600 pentru a captura aceste fotografii, dar ar trebui să optimizați ambele valori pentru a găsi ceva care să funcționeze pentru dvs. înainte de a merge mai departe.
De asemenea, veți avea nevoie de setarea camerei focalizare manuală, și dezactivați orice stabilizare dacă aveți. Jucați în jur cu cronometrele blițului - am folosit 1/128 putere - oricare este mai mare de 1/32 și veți găsi focul de bliț prea mult, rezultând din nou în fotografii neclare. Cu siguranță nu sunt expert în fotografie, așa că este vorba doar de a juca în jur pentru a găsi setări care să funcționeze pentru dvs..
O modalitate ușoară de a testa configurarea dvs. este de a ucide luminile, faceți clic pe obturator, apoi bateți - ar trebui să ieșiți bine luminate și nu neclare.
Satisfăcut de testele mele, am mers înainte și am încercat să arunc un balon.
Codul ar putea fi ușor optimizat - chiar și fără o întârziere programată, se pare că împușcarea a fost doar de 5-10 ms prea lentă pentru captarea momentului. Totuși, aceasta a ieșit frumos și arată culorile balonului marmorat și un câine ciudat.
Aceasta a fost încercarea mea inițială de a distruge lucrurile - fără întârziere, fotografia făcută direct în momentul impactului și nu este deosebit de interesantă.
O întârziere de 10 ms a fost doar puțin prea devreme pentru această cană.
Am încercat din nou cu cealaltă jumătate a ceștii și o întârziere de 50 ms - doar puțin prea tarziu Simt:
Am dat o altă șansă de 50 de ori cu acest pahar - asigurați-vă că distrugi lucrurile într-o cutie pentru a face mai ușoară curățarea!
Lucrul minunat despre DSLR-uri este că poți să faci un milion de fotografii până când o vei face bine, deși sticla ta va deveni scumpă. Vreau sa fiu sincer, am luat intreaga zi de tweaking si sute de fotografii de practica de la mine bate pentru a gasi setarile potrivite, asa ca nu renuntati daca nu functioneaza corect prima data.
Odată ce vă plictisiți de baloane și ochelari, încercați să experimentați diferite tipuri de declanșatoare: poate un senzor de ping plasat pe teren care captează obiectul care se încadrează sau o lumină laser și o fotodiodă care se odihnește chiar deasupra apei care declanșează atunci când fasciculul de lumină este rupt. Luați focuri bune? Spuneți-ne în comentariile dvs. despre cum ați apărut sau despre problemele pe care le-ați întâlnit.
Explorați mai multe despre: Arduino, Fotografie.