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, Juli
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 Ovaj projekt koristi Arduino kao glavnu komponentu za mjerenje vremena izlaganja. Napravit ćemo opto par (IR LED i IC foto-tranzistor) i pročitati koliko je vremena zatvarač kamere otvoren. Prvo ću objasniti brzi način postizanja našeg cilja i na kraju ćemo vidjeti svu teoriju koja stoji iza ovog projekta.

Lista 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 stavi kameru u sredinu)
  • Mnogo kratkospojnika ili kabela

*Ove dodatne komponente su potrebne za odjeljak objašnjenja

  • 1 x LED u normalnoj boji
  • 1 x Trenutno dugme

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 tako da ih možemo postaviti jedan prema drugom. Spojite jedan otpornik od 220 Ω na LED anodu (dugačka noga ili strana 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 povežite kolektorski pin na foto tranzistoru (za mene je to kratka noga, ali 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 ivice). Na ovaj način imamo infracrvenu LED diodu uvijek uključenu, a foto tranzistor postavljen kao prekidač za umivaonik.

Kada IC svjetlo stigne na tranzistor, to će omogućiti struji da pređe sa kolektorskog pina na pin emitera. A1 pin ćemo postaviti na ulazno povlačenje, tako da će pin uvijek biti u visokom stanju, osim ako tranzistor ne potopi struju u masu.

Korak 2: Programiranje

Postavite svoj Arduino IDE (port, 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; // memorijska točka za podatke pročitane iz analogRead () bool lock; // bolean koji se koristi za čitanje stanja readPin nepotpisanog dugog tajmera, 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); // postavljamo serijsku komunikaciju na 9600 bita u sekundi pinMode (readPin, INPUT_PULLUP); // pin ćemo postaviti uvijek visoko, osim kada foto tranzistor tone, pa smo "preokrenuli" logiku // to znači HIGH = nema IC signala i LOW = IR signal prima kašnjenje (200); // ovo kašnjenje služi za dopuštanje pokretanja sistema i izbjegavanje lažnih očitanja j = 0; // inicijalizacija našeg brojača} void loop () {lock = digitalRead (readPin); // čitanje stanja datog pina i njegovo dodeljivanje promenljivoj if (! lock) {// radi samo kada je pin LOW timer = micros (); // postavljamo referentni tajmer while (! lock) {// radimo ovo dok je pin LOW, drugim riječima, tajmer za otvaranje zatvarača2 = micros (); // uzimamo proteklo vrijeme za zaključavanje uzorka = digitalRead (readPin); // čita stanje pin -a kako bi se znalo je li zatvarač zatvoren} Serial.print ("Pozicija:"); // ovaj tekst služi za prikaz traženih informacija Serial.print (odaberite [j]); Serial.print ("|"); Serial.print ("Otvoreno vrijeme:"); očitano = (timer2 - tajmer); // izračunati koliko je vremena zatvarač bio otvoren Serial.print (pročitano); Serial.print ("nas"); 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 pomoću dugmeta}}

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

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 film koji je već umetnut, 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 na kojem su leće. Bez obzira koju stranu koristite za LED ili tranzistor, samo pazite da vizualno dodirnu kad se pritisne okidač. Da biste to učinili, postavite zatvarač 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 s gumbom za poništavanje i fotografirajte jednu po jednu pri različitim brzinama zatvarača počevši od "B" do "1000". Serijski monitor će odštampati informacije nakon zatvaranja zatvarača. Kao primjer možete vidjeti vremena mjerena iz filmskih kamera Miranda i Praktica na priloženim slikama.

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

Korak 4: Stvari za štrebere

Geeks Stuff
Geeks Stuff
Geeks Stuff
Geeks Stuff
Geeks Stuff
Geeks Stuff
Geeks Stuff
Geeks Stuff

Tranzistori su osnova sve elektroničke tehnologije koju danas vidimo, prvi put ih je patentirao oko 1925. njemačko-američki fizičar rođen u Austro-Ugarskoj. Opisani su kao uređaji za kontrolu struje. Prije njih morali smo koristiti vakuumske cijevi za obavljanje operacija koje danas rade tranzistori (televizija, pojačala, računari).

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 kapije je pojačana, pa, na primjer, 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 kapije, kapija je spojena na materijal osjetljiv na fotografije. Ovaj materijal stvara malu struju kada ga pobuđuju fotoni, u našem slučaju fotoni IR talasne dužine. 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 prilogu se nalaze informacije preuzete iz tranzistorskih i LED tablica s podacima. 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 ako napajam napajanjem iz izvora 8V, ispržit ću 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 (vati = 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, tako da ć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 povezati naše postavljanje kao ono na slici. Ako koristite dugmad poput moga, pazite da postavite dvije okrugle izbočine u sredinu ploče. Zatim prenesite sljedeći kod na Arduino.

int readPin = A1; // zakačite gdje je 220 otpornik spojen sa fototransistorinte ptValue, j; // memorijska točka za podatke pročitane 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 šta se dešava odgoda (35); // samo odlaganje radi lakšeg snimanja ekrana}

Nakon učitavanja otvorite serijski ploter (Alati -> Serijski ploter) i gledajte šta se dešava kada pritisnete dugme prekidača za IR LED. Ako želite provjeriti radi li IR LED (također i daljinski upravljači za televizore), samo postavite kameru mobitela ispred LED diode i snimite fotografiju. 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čen i isključen, ako nije, provjerite ožičenje.

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

Preporučuje se: