Sadržaj:

Arduino filmska kamera Provjera zatvarača: 4 koraka
Arduino filmska kamera Provjera zatvarača: 4 koraka

Video: Arduino filmska kamera Provjera zatvarača: 4 koraka

Video: Arduino filmska kamera Provjera zatvarača: 4 koraka
Video: Olympus PEN-F/FT How to use a film camera. Shot on GH4 2024, Srpanj
Anonim
Arduino Alat za provjeru zatvarača filmske kamere
Arduino Alat za provjeru zatvarača filmske kamere
Arduino Alat za provjeru zatvarača filmske kamere
Arduino Alat za provjeru zatvarača filmske kamere

Nedavno sam kupio dvije polovne, stare filmske kamere. Nakon što sam ih očistio, shvatio sam da brzina zatvarača može biti manja zbog prašine, korozije ili nedostatka ulja, pa sam odlučio napraviti nešto za mjerenje stvarnog vremena ekspozicije bilo koje kamere, jer je golim očima ne mogu izmjeriti precizno. Ovaj projekt koristi Arduino kao glavnu komponentu za mjerenje vremena izlaganja. Napravit ćemo opto par (IR LED i IR foto-tranzistor) i pročitati koliko je vremena zatvarač fotoaparata otvoren. Prvo ću objasniti brzi način postizanja našeg cilja i na kraju ćemo vidjeti svu teoriju koja stoji iza ovog projekta.

Popis komponenti:

  • 1 x Filmska kamera
  • 1 x Arduino Uno
  • 2 x 220 Ω otpornik od ugljičnog filma
  • 1 x IR LED
  • 1 x fototranzistor
  • 2 x male ploče (ili 1 velika ploča, dovoljno velika da fotoaparat stane u sredinu)
  • Mnogi kratkospojnici ili kabel

*Ove dodatne komponente potrebne su za odjeljak s objašnjenjima

  • 1 x LED u normalnoj boji
  • 1 x Tipka za trenutak

Korak 1: Ožičenje

Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje
Ožičenje

Prvo, pričvrstite IR LED u jednu ploču, a IR fototranzistor u drugu kako bismo ih mogli postaviti jedan prema drugom. Spojite jedan otpornik od 220 Ω na LED anodu (dugu nogu ili stranu bez ravne ivice) i spojite otpornik na 5V napajanje na Arduinu. Također spojite LED katodu (kratka noga ili strana sa ravnom ivicom) na jedan od GND portova u Arduinu.

Zatim ožičite kolektorski pin na foto tranzistoru (za mene je kratka noga, no trebali biste provjeriti podatkovnu tablicu tranzistora kako biste bili sigurni da ste ga ožičili na ispravan način ili ćete možda završiti s miniranjem tranzistora) na otpornik od 220 Ω i otpornik na pin A1 na Arudinu, zatim spojite pin emitera foto tranzistora (dugačka noga ili ona bez ravne obrubljene strane). Na ovaj način imamo uvijek uključenu IR LED diodu i foto tranzistor postavljen kao prekidač za sudoper.

Kad IC svjetlo stigne na tranzistor, dopustit će struju da pređe s kolektorskog pina na pin emitera. Postavit ćemo pin A1 na ulazno povlačenje prema gore, pa će pin uvijek biti u visokom stanju, osim ako tranzistor ne potopi struju u masu.

Korak 2: Programiranje

Postavite svoj Arduino IDE (priključak, ploču i programator) tako da odgovara konfiguraciji potrebnoj za vašu Arduino ploču.

Kopirajte ovaj kôd, sastavite i prenesite:

int readPin = A1; // pin gdje je spojen 330 otpornik s fototranzistora

int ptValue, j; // mjesto za pohranu podataka pročitanih iz analogRead () bool lock; // bolean koji se koristi za očitavanje stanja readPin nepotpisani dugi mjerač vremena, timer2; dvostruko čitanje; Odabir niza [12] = {"B", "1", "2", "4", "8", "15", "30", "60", "125", "250", "500", "1000"}; dugo očekivano [12] = {0, 1000, 500, 250, 125, 67, 33, 17, 8, 4, 2, 1}; void setup () {Serial.begin (9600); // serijsku komunikaciju postavljamo na 9600 bitova u sekundi pinMode (readPin, INPUT_PULLUP); // pin ćemo postaviti uvijek visoko, osim kad foto tranzistor tone, pa smo "preokrenuli" logiku // to znači HIGH = nema IC signala i LOW = IC signal prima kašnjenje (200); // ovo kašnjenje služi za dopuštanje pokretanja sustava i izbjegavanje lažnih očitanja j = 0; // inicijalizacija našeg brojača} void loop () {lock = digitalRead (readPin); // čitanje stanja zadanog pina i njegovo dodjeljivanje varijabli if (! lock) {// pokretanje samo kada je pin LOW timer = micros (); // postavljanje referentnog timera while (! lock) {// to činite dok je pin LOW, drugim riječima, timer open shutter2 = micros (); // uzimajte proteklo vrijeme lock sample = digitalRead (readPin); // čita stanje pin -a kako bi se znalo je li zatvarač zatvoren} Serial.print ("Položaj:"); // ovaj tekst služi za prikaz traženih informacija Serial.print (odaberite [j]); Serial.print ("|"); Serial.print ("Otvoreno vrijeme:"); očitano = (timer2 - mjerač vremena); // izračunati koliko je vremena zatvarač bio otvoren Serial.print (pročitano); Serial.print ("mi"); Serial.print ("|"); Serial.print ("Očekivano:"); Serial.println (očekivano [j]*1000); j ++; // povećajte položaj zatvarača, to se može učiniti pritiskom na gumb}}

Nakon što se učitavanje otvori, otvorite serijski monitor (Alati -> Serijski monitor) i pripremite kameru za očitanje

Rezultati se prikazuju nakon riječi "time open:", sve ostale informacije su unaprijed programirane.

Korak 3: Postavljanje i mjerenje

Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje
Postavljanje i mjerenje

Skinite objektive fotoaparata i otvorite pretinac za film. Ako imate već umetnuti film, ne zaboravite ga završiti prije nego što učinite ovaj postupak jer ćete inače oštetiti snimljene fotografije.

Postavite IR LED i IC foto tranzistor na suprotne strane fotoaparata, jedan sa strane filma, a drugi sa strane gdje su leće. Bez obzira koju stranu koristite za LED ili tranzistor, pazite da vizualno dodirnu kad se pritisne okidač. Da biste to učinili, postavite okidač na "1" ili "B" i provjerite serijski monitor prilikom "snimanja" fotografije. Ako okidač dobro radi, monitor bi trebao pokazati očitanje. Također, možete postaviti neprozirni objekt između njih i premjestiti ga da pokrene mjerni program.

Resetirajte Arduino tipkom za poništavanje i fotografirajte jednu po jednu pri različitim brzinama zatvarača počevši od "B" do "1000". Serijski monitor ispisat će informacije nakon zatvaranja zatvarača. Kao primjer možete vidjeti vremena izmjerena iz filmskih kamera Miranda i Praktica na priloženim slikama.

Pomoću ovih podataka izvršite ispravke pri fotografiranju ili dijagnosticirajte stanje fotoaparata. Ako želite očistiti ili prilagoditi fotoaparat, toplo preporučujem da ih pošaljete stručnom tehničaru.

Korak 4: Geeks stvari

Geeks stvari
Geeks stvari
Geeks stvari
Geeks stvari
Geeks stvari
Geeks stvari
Geeks stvari
Geeks stvari

Tranzistori su baza svih elektroničkih tehnologija koje danas vidimo, prvi ih je patentirao oko 1925. njemačko-američki fizičar podrijetlom iz Austro-Ugarske. Opisani su kao uređaj za kontrolu struje. Prije njih morali smo koristiti vakuumske cijevi za obavljanje operacija koje danas rade tranzistori (televizija, pojačala, računala).

Tranzistor ima mogućnost upravljanja strujom koja teče od kolektora do emitera, a mi možemo kontrolirati tu struju, u zajedničkim tranzistorima s 3 kraka, primjenjujući struju na vrata tranzistora. U većini tranzistora struja vrata je pojačana, pa, primjerice, ako primijenimo 1 mA na vrata, dobivamo 120 mA koja teče iz odašiljača. Možemo ga zamisliti kao ventil za slavinu za vodu.

Foto tranzistor je normalni tranzistor, ali umjesto nožice vrata, vrata su spojena na materijal osjetljiv na fotografije. Ovaj materijal stvara malu struju kada ga pobuđuju fotoni, u našem slučaju fotoni IR valne duljine. Dakle, kontroliramo foto tranzistor koji mijenja snagu izvora IC svjetlosti.

Postoje neke specifikacije koje bismo trebali uzeti u obzir prije kupnje i ožičenja naših elemenata. U privitku se nalaze informacije preuzete iz podatkovnih tablica tranzistora i LED dioda. Prvo moramo provjeriti napon proboja tranzistora koji je maksimalni napon koji može podnijeti, na primjer, moj napon proboja od emitera do kolektora je 5V, pa ću, ako ga povežem pogrešnim izvorom 8V, ispržiti tranzistor. Također, provjerite rasipanje snage, to znači koliko struje može isporučiti tranzistor prije nego što umre. Moj kaže 150mW. Na 5V 150mW znači izvor 30 mA (Watts = V * I). Zato sam odlučio koristiti granični otpornik od 220 Ω, jer na 5V otpornik od 220 Ω dopušta samo propuštanje maksimalne struje od 23 mA. (Ohmov zakon: V = I * R). Isti slučaj vrijedi i za LED, podaci u podatkovnom listu kažu da je njegova maksimalna struja oko 50mA, pa će drugi otpornik od 220 Ω biti u redu, jer je naša maksimalna izlazna struja na Arduino pin -u 40 mA i ne želimo spaliti pinove.

Moramo spojiti naše postavljanje kao ono na slici. Ako koristite gumbe poput moga, pazite da postavite dvije okrugle izbočine u središte ploče. Zatim prenesite sljedeći kôd na Arduino.

int readPin = A1; // pin gdje je spojen 220 otpornik s fototransistorinta ptValue, j; // spremište podataka pročitanih iz analogRead () void setup () {Serial.begin (9600); } void loop () {ptValue = analogRead (readPin); // očitavamo vrijednost napona na readPin (A1) Serial.println (ptValue); // na ovaj način šaljemo pročitane podatke na serijski monitor, tako da možemo provjeriti što se događa odgoda (35); // samo odgoda za olakšavanje snimki zaslona}

Nakon prijenosa otvorite serijski ploter (Alati -> Serijski ploter) i gledajte što se događa kada pritisnete prekidač za IC LED LED. Ako želite provjeriti radi li IR LED (također i daljinski upravljači za televizore), samo stavite kameru mobitela ispred LED diode i fotografirajte. Ako je u redu, vidjet ćete plavo-ljubičasto svjetlo koje dolazi iz LED-a.

U serijskom ploteru možete razlikovati kada je LED uključena i isključena, ako nije, provjerite ožičenje.

Konačno, možete promijeniti metodu analogRead za digitalRead, tako da možete vidjeti samo 0 ili 1. Predlažem da odgodite nakon Setup () kako biste izbjegli lažno LOW očitanje, (slika s jednim malim LOW vrhom).

Preporučeni: