Subscribe via RSS

1A. Declansator foto cu ajutorul razei laser

By admin

Avand in vedere ca fotografia este prima si cea mai mare pasiune a mea, unele poze putand fi vazute pe www.fotomagica.ro, am vrut sa realizez o aplicatie si pentru acest domeniu. “Creierul” acestui declansator este un Arduino realizat cu  microcontrolerul ATmega328. Mai multe date despre aceasta platforma open source puteti gasi aici.   In principiu, se poate actiona orice fel de dispozitiv prin intreruparea unei raze laser. In acest proiect, eu am ales sa declansez un aparat foto atunci cand raza laser va fi intrerupta, dar in loc de aparatul foto se poate actiona, prin intermediul unui releu, orice dispozitiv. Aplicatiile pot fi diverse, incepand de la cele simple cum este cea de fata si terminand cu unele mai complexe, cum ar fi protectia unor perimetre.

In schema atasata se poate observa modul de conectare, care este foarte simplu. Am ales ca acea dioda laser sa o alimentez de la pinul de 3,3 V de pe placa Arduino, avand in vedere consumul foarte redus, de cativa mA. Puteti folosi orice dioda laser, fie ca aveti un dispozitiv, tip breloc sau pix, fie ca folositi una recuperata dintr-un CDWriter. Imi fac datoria si atrag atentia asupra folosirii acestor dispozitive… Sub nicio forma nu va uitati direct la raza laser generata de dioda, mai ales la cele recuperate din CDWriter, deoarece puterea acestora depaseste 5mW si nici nu indreptati lumina laser generata de acestea asupra ochilor altor persoane (sau alte fiinte), nici macar in joaca !

Raza laser ajunge, direct sau prin reflexie, pe un fotorezistor. Rezistenta unui fotorezistor la intuneric este de cateva sute de Ko. La lumina, aceasta scade proportional cu cantitatea de lumina care ajunge pe fotorezistor. In cazul razei laser, rezistenta ajunge la cativa zeci de Ohmi. Reflexia o puteti realiza fie cu o oglinda, fie cu o bucata de sticla sau plexiglas.

Mai jos aveti codul :

int flashPin = 7;   //pinul pentru declansator
int flashTime = 1;  //timpul in ms pentru actionarea declansatorului
int flashLed;
int photoresistorPin = 0;  //pinul analogic pentru fotorezistor
int Threshold = 500;  //nivelul intrarii analogice pentru pragul declansarii
int level = 0;

void setup() {
pinMode(flashPin, OUTPUT);
pinMode(flashLed, OUTPUT);
pinMode(photoresistorPin, INPUT);
Serial.begin(9600);
}

void loop() {

level = analogRead(photoresistorPin);
Serial.println(level);
if (level >= Threshold) {
digitalWrite(flashPin, HIGH);
digitalWrite(flashLed, HIGH);
delay(flashTime);
digitalWrite(flashPin,LOW);
digitalWrite(flashLed,LOW);
}
}

Este de observat ca nivelul la care se declanseaza depinde de acel int Threshold = 500. Valoarea poate fi mult diferita de “500” cat am ales eu aici. Totul depinde de pozitia rezistorului semireglabil, care impreuna cu fotorezistorul formeaza un divizor de tensiune. Practic, veti observa ca la aceasta valoare se produce declansarea. De aceea, dupa ce ati fixat raza laser pe fotorezistor, uitati-va pe “Serial monitor” si vedeti ce valori apar. Vor aparea valori constante care depind, pe langa pozitia semireglabilului si de cat de bine este centrata raza laser pe fotorezistor. Urmatorul pas este sa fixati o valoare mai mica pentru “int Threshod” decat cea care apare pe “serial monitor”.  Am incercat sa descriu acest procedeu si in filmulet. Deci trebuie retinut ca valoarea de “500” care apare in cod este doar cu titlu exemplificativ si mai mult ca sigur va fi diferita de ceea ce veti obtine Dvs. Jucandu-ma putin cu montajul am obtinut valori cuprinse in intervalul 50 -1000 !

Pentru comanda unui aparat foto se poate folosi orice fel de tranzistor NPN, deoarece curentul din colector, Ic, este foarte mic. In cazul in care veti dori ca in locul aparatului foto sa folositi un blitz, obligatoriu veti folosi un optocuplu, pentru a nu exista cuplaj galvanic direct intre patina blitzului si Arduino, avand in vedere ca sunt blitzuri la care tensiunea pe patina ajunge pentru scurt timp si la tensiuni de 4-500 Vcc.

In cazul in care veti dori sa declansati un releu, trebuie sa aveti grija sa folositi un tranzistor cu un curent de colector suficient de mare, de genul BD 135, BD137 sau orice alt echivalent. De asemenea, nu uitati sa montati si acea dioda, de genul 1N4007, care are rolul de a proteja tranzistorul de eventualele tensiuni de autoinductie ce pot aparea in bobina releului. Nu mai trebuie sa amintesc si faptul ca trebuie sa alegeti releul astfel incat contactele acestuia sa suporte curentul care actioneaza dispozitivul.

Atentie !

Pentru rezultate optime, comanda trebuie sa se faca asupra flash-ului si nu asupra aparatului foto !

Sistemului de declansare are intarzieri foarte mari in raport cu actiunea in sine, mai ales atunci cand se doreste declansarea de la sunete puternice sau cand viteza subiectului este foarte mare. Asa ca, fixati aparatul pe trepied, faceti intuneric total, fixati aparatul pe B (bulb) mentinand astfel obturatorul deschis, iar comanda in sine va fi transmisa flash-ului !

Aveti grija ca in acest caz, datorita tensiunilor mari existente pe contactele flash-urilor este necesar sa folositi pentru comanda acestuia un tiristor…

Pentru exemplificare atasez un filmulet. In viitor doresc sa modific montajul in sensul ca declansarea aparatului sa se faca cu ajutorul unui senzor de miscare, ori cu un microfon sau a unui fototranzistor.

============================================================

Daca doriti sa vedeti inregistrarea unor emisiuni despre fotografie realizate de mine pe postul local de TV, click AICI !

 

3 Raspunsuri la 1A. Declansator foto cu ajutorul razei laser

  1. claudiu

    salut,
    cand incarc programul pe arduino imi da eroarea la
    int flashTim=1;

    zice :expected unqualified-id bwfore numeric constant

    Ma poti ajuta?

  2. admin

    Nu va pot ajuta ca partea de programare nu am facut-o eu, dar pot sa va spun ca a functionat pe cateva bucati !

  3. claudiu

    am vazut in filmarea atasata ca la dumneavoastra a functionat, trebuie sa realizez si eu ceva in genul asta si credeam ca m-ati fi putut ajuta

Postati un comentariu