Sisukord:

Arduino filmikaamera katiku kontrollija: 4 sammu
Arduino filmikaamera katiku kontrollija: 4 sammu

Video: Arduino filmikaamera katiku kontrollija: 4 sammu

Video: Arduino filmikaamera katiku kontrollija: 4 sammu
Video: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, Juuli
Anonim
Arduino filmikaamera katiku kontrollija
Arduino filmikaamera katiku kontrollija
Arduino filmikaamera katiku kontrollija
Arduino filmikaamera katiku kontrollija

Hiljuti ostsin kaks kasutatud filmikaamerat. Pärast nende puhastamist mõistsin, et säriaeg võib tolmu, korrosiooni või õlipuuduse tõttu maha jääda, seega otsustasin teha mis tahes kaamera tegeliku ekspositsiooniaja mõõtmiseks midagi, sest palja silmaga ei saa ma seda mõõta täpselt. See projekt kasutab eksponeerimisaja mõõtmise põhikomponendina Arduinot. Teeme optilise paari (IR LED ja IR fototransistor) ja loeme, kui kaua kaamera katik on avatud. Esiteks selgitan kiiret viisi meie eesmärgi saavutamiseks ja lõpuks näeme kogu selle projekti taga olevat teooriat.

Komponentide loend:

  • 1 x filmikaamera
  • 1 x Arduino Uno
  • 2 x 220 Ω süsinikkile takisti
  • 1 x IR LED
  • 1 x fototransistor
  • 2 x väikesed leivalauad (või 1 suur leivaplaat, mis on piisavalt suur, et mahutada kaamera keskele)
  • Paljud džemprid või kaabel

*Seda lisakomponenti on vaja selgituste osas

  • 1 x tavalise värvi LED
  • 1 x hetkeline vajutusnupp

Samm: juhtmestiku ühendamine

Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik

Esiteks kinnitage IR -valgusdiood ühte leivalauale ja IR -fototransistor teise, et saaksime need vastamisi asetada. Ühendage üks 220 Ω takisti LED -anoodiga (pikk jalg või külg ilma lameda piirita) ja ühendage takisti Arduino 5 V toiteallikaga. Ühendage ka LED -katood (lühike jalg või tasase äärisega külg) Arduino ühe GND -pordiga.

Seejärel ühendage fototransistori kollektori tihvt (minu jaoks on see lühike jalg, kuid peaksite kontrollima oma transistori andmelehte, et olla kindel, et ühendate selle õigesti või võite lõpetada transistori õhkimise) 220 Ω takisti ja takisti Arudino tihvtiga A1, seejärel ühendage fototransistori Emitteri tihvt (pikk jalg või see, millel pole tasast äärist). Nii on meil IR -valgusdiood alati sisse lülitatud ja fototransistor seatud valamu lülitiks.

Kui infrapunavalgus jõuab transistorisse, laseb see voolul kollektori tihvtist emitteri tihvti liikuda. Seadistame A1 tihvti sisenditõmbeks, nii et tihvt on alati kõrgel tasemel, kui transistor ei uputa voolu massiks.

2. samm: programmeerimine

Seadistage oma Arduino IDE (port, plaat ja programmeerija), et see vastaks teie Arduino tahvlile vajalikule konfiguratsioonile.

Kopeerige see kood, kompileerige ja laadige üles:

int readPin = A1; // tihvt, kuhu on ühendatud fototransistori 330takisti

int ptVäärtus, j; // analogRead () bool lock'ist loetud andmete salvestuspunkt; // bolean, mida kasutatakse readPin oleku lugemiseks, allkirjastamata pikk taimer, timer2; topeltlugenud; Stringi valimine [12] = {"B", "1", "2", "4", "8", "15", "30", "60", "125", "250", "500", "1000"}; kaua oodatud [12] = {0, 1000, 500, 250, 125, 67, 33, 17, 8, 4, 2, 1}; void setup () {Serial.begin (9600); // seadistame jadakommunikatsiooni kiiruseks 9600 bitti sekundis pinMode (readPin, INPUT_PULLUP); // seame tihvti alati kõrgeks, välja arvatud siis, kui fototransistor on vajumas, nii et me oleksime loogika "ümber pööranud" // see tähendab HIGH = puudub IR -signaal ja LOW = IR -signaali vastuvõtu viivitus (200); // see viivitus on mõeldud süsteemi käivitamiseks ja valede näitude vältimiseks j = 0; // meie loenduri initsialiseerimine} void loop () {lock = digitalRead (readPin); // etteantud tihvti oleku lugemine ja muutujale omistamine, kui (! lukk) {// töötab ainult siis, kui tihvt on LOW timer = micros (); // seadista referentstaimer samal ajal (! lukk) {// tee seda ajal, kui nööpnõel on LOW, teisisõnu, katiku avamise taimer2 = micros (); // võta möödunud aja proovi lukk = digitalRead (readPin); // loe nööpnõela olekut, et teada saada, kas katik on suletud} Serial.print ("Position:"); // see tekst on soovitud teabe kuvamiseks Serial.print (vali [j]); Serial.print ("|"); Serial.print ("Aeg avatud:"); loetud = (taimer2 - taimer); // arvuta, kui kaua oli katik lahti Serial.print (loetud); Serial.print ("meie"); Serial.print ("|"); Serial.print ("Oodatud:"); Seeria.println (eeldatav [j]*1000); j ++; // suurendage katiku asendit, seda saab teha nupuga}}

Pärast üleslaadimist avage jadamonitor (Tools -> Serial monitor) ja valmistage kaamera ette lugemiseks

Tulemused kuvatakse pärast "aeg avatud:" sõnu, kogu muu teave on eelprogrammeeritud.

3. samm: seadistamine ja mõõtmine

Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine
Seadistamine ja mõõtmine

Võtke kaamera objektiivid ära ja avage filmikamber. Kui teil on film juba laaditud, ärge unustage seda enne selle toimingu tegemist lõpetada, vastasel juhul kahjustate tehtud fotosid.

Asetage IR -LED ja IR -fototransistor kaamera vastaskülgedele, üks filmi küljele ja teine küljele, kus olid läätsed. Olenemata sellest, kumba poolt LED -i või transistori jaoks kasutate, veenduge, et katiku vajutamisel puutuvad nad visuaalselt kokku. Selleks seadke katik asendisse "1" või "B" ja kontrollige foto "pildistamisel" jadamonitori. Kui katik töötab kenasti, peaks monitor näitama. Samuti saate nende vahele asetada läbipaistmatu objekti ja liigutada seda mõõtmisprogrammi käivitamiseks.

Lähtestage Arduino lähtestamisnupuga ja pildistage ükshaaval erineva säriajaga, alustades "B" kuni "1000". Seeriamonitor prindib teabe pärast katiku sulgemist. Näitena näete lisatud piltidel Miranda ja Praktica filmikaameratega mõõdetud aegu.

Kasutage seda teavet fotode tegemisel või kaamera oleku diagnoosimisel. Kui soovite oma kaamerat puhastada või häälestada, soovitan need saata asjatundlikule tehnikule.

Samm 4: Geeks Stuff

Naljakad asjad
Naljakad asjad
Naljakad asjad
Naljakad asjad
Naljakad asjad
Naljakad asjad
Naljakad asjad
Naljakad asjad

Transistorid on kogu elektroonilise tehnoloogia alus, mida me täna näeme, need patenteerisid umbes 1925. aastal umbes Austria-Ungari päritolu Saksa-Ameerika füüsik. Neid kirjeldati kui seadet voolu reguleerimiseks. Enne neid pidime kasutama vaakumtorusid, et teha täna transistoride toiminguid (televisioon, võimendid, arvutid).

Transistoril on võime juhtida kollektorist emitterisse voolavat voolu ja me saame seda voolu juhtida tavalistes 3 jalaga transistorides, rakendades voolu transistori väravale. Enamikus transistorides võimendatakse värava voolu, nii et näiteks kui rakendame väravale 1 mA, saame emitterist voolava 120 mA. Võime seda ette kujutada veekraanventiilina.

Fototransistor on tavaline transistor, kuid väravajala asemel on värav ühendatud fototundliku materjaliga. See materjal tekitab väikese voolu, kui seda erutavad footonid, meie puhul IR -lainepikkusega footonid. Seega kontrollime fototransistorit, mis muudab IR -valgusallika võimsust.

Enne elementide ostmist ja ühendamist peame arvestama mõningate spetsifikatsioonidega. Lisatud on transistorilt ja LED -andmelehtedelt saadud teave. Esiteks peame kontrollima transistori rikkepinget, mis on maksimaalne pinge, mida see suudab taluda, näiteks minu rikkepinge emitterist kollektorini on 5 V, nii et kui ma ühendan selle valesti 8 V juhtmega, praadin transistori. Kontrollige ka toite hajumist, see tähendab, kui palju voolu saab enne suremist transistori tarnida. Minu oma ütleb 150mW. 5 V juures tähendab 150 mW 30 mA hankimist (vatt = V * I). Seetõttu otsustasin kasutada piiravat takistit 220 Ω, sest 5 V juures võimaldab 220 Ω takisti edastada ainult maksimaalset voolu 23 mA. (Ohmi seadus: V = I * R). Sama juhtum kehtib ka LED -i kohta, andmelehe info ütleb, et selle maksimaalne vool on umbes 50 mA, seega sobib veel üks 220 Ω takisti, sest meie Arduino tihvti maksimaalne väljundvool on 40 mA ja me ei taha tihvte põletada.

Peame oma seadistuse ühendama pildil olevaga. Kui kasutate minusuguseid nuppe, pange kaks ümmargust väljaulatuvat osa tahvli keskele. Seejärel laadige Arduino alla järgmine kood.

int readPin = A1; // tihvt, kuhu on ühendatud fototransistori 220 pliitresistor ptValue, j; // analogRead () void setup () {Serial.begin (9600) loetud andmete salvestuspunkt } void loop () {ptValue = analogRead (readPin); // loeme pinge väärtust readPin (A1) Serial.println (ptValue); // sel viisil saadame loetud andmed jadamonitorile, et saaksime toimuvat kontrollida viivitusega (35); // lihtsalt viivitus ekraanipiltide lihtsustamiseks}

Pärast üleslaadimist avage jadaplotter (Tööriistad -> Sarjaplotter) ja vaadake, mis juhtub, kui vajutate IR -LED -lüliti nuppu. Kui soovite kontrollida, kas IR -LED töötab (ka teleri kaugjuhtimispuldid), pange oma mobiiltelefoni kaamera LED -i ette ja tehke foto. Kui see on korras, näete LED-ilt sinakas-lillatuld.

Jadaplotteris saate eristada, millal LED põleb ja kustub, kui ei, siis kontrollige juhtmestikku.

Lõpuks saate digitalReadi meetodit analogRead muuta, nii et näete ainult 0 või 1. Soovitan pärast seadistamist () viivitada, et vältida vale LOW lugemist (pilt ühe väikese LOW tipuga).

Soovitan: