Obsah:

Kontrola závěrky filmové kamery Arduino: 4 kroky
Kontrola závěrky filmové kamery Arduino: 4 kroky

Video: Kontrola závěrky filmové kamery Arduino: 4 kroky

Video: Kontrola závěrky filmové kamery Arduino: 4 kroky
Video: Behind scene steadicam operator Cooke optics 2024, Červenec
Anonim
Kontrola závěrky filmové kamery Arduino
Kontrola závěrky filmové kamery Arduino
Kontrola závěrky filmové kamery Arduino
Kontrola závěrky filmové kamery Arduino

Nedávno jsem si koupil dvě použité staré filmové kamery. Po jejich vyčištění jsem si uvědomil, že rychlost závěrky může být zpožděna prachem, korozí nebo nedostatkem oleje, a tak jsem se rozhodl udělat něco pro měření skutečné doby expozice jakéhokoli fotoaparátu, protože mýma očima to nedokážu změřit Tento projekt používá Arduino jako hlavní komponentu pro měření času expozice. Uděláme opto pár (IR LED a IR fototranzistor) a přečteme si, jak dlouho je závěrka fotoaparátu otevřená. Nejprve vysvětlím rychlý způsob, jak dosáhnout našeho cíle, a nakonec uvidíme veškerou teorii tohoto projektu.

Seznam součástí:

  • 1 x filmová kamera
  • 1 x Arduino Uno
  • 2 x 220 Ω rezistor z uhlíkové fólie
  • 1 x IR LED
  • 1 x fototranzistor
  • 2 x malé prkénko (nebo 1 velké prkénko, dostatečně velké, aby se do něj vešla kamera uprostřed)
  • Mnoho propojek nebo kabelu

*Tyto další součásti jsou potřebné pro část s vysvětlením

  • 1 x normální barevná LED
  • 1 x Momentální tlačítko

Krok 1: Zapojení

Věci elektroinstalace
Věci elektroinstalace
Věci elektroinstalace
Věci elektroinstalace
Věci elektroinstalace
Věci elektroinstalace

Nejprve připojte IR LED do jednoho prkénka a IR fototranzistor do druhého, abychom je mohli postavit proti sobě. Připojte jeden 220 Ω odpor k LED anodě (dlouhá noha nebo strana bez plochého okraje) a připojte odpor k 5V napájecímu zdroji na Arduinu. Připojte také katodu LED (krátká noha nebo strana s plochým okrajem) k jednomu z portů GND v Arduinu.

Dále připojte kolíkový kolektor k fototranzistoru (pro mě je krátká noha, ale měli byste zkontrolovat datový list tranzistoru, abyste se ujistili, že jej zapojujete správným způsobem, jinak můžete tranzistor odpálit) na odpor 220 Ω a odpor na pin A1 na Arudinu, poté připojte pin vysílače fototranzistoru (dlouhá noha nebo ten bez ploché ohraničující strany). Tímto způsobem máme IR LED vždy zapnutou a fototranzistor nastavený jako přepínač.

Když infračervené světlo dorazí do tranzistoru, umožní průchod proudu z kolíku kolektoru do kolíku vysílače. Nastavíme pin A1 na vstup, takže pin bude vždy ve vysokém stavu, pokud tranzistor nepotopí proud na hmotnost.

Krok 2: Programování

Nastavte si Arduino IDE (port, deska a programátor) tak, aby odpovídalo konfiguraci potřebné pro vaši desku Arduino.

Zkopírujte tento kód, zkompilujte a nahrajte:

int readPin = A1; // pin, kde je připojen rezistor 330 z fototranzistoru

int ptValue, j; // bod úložiště pro data načtená z analogRead () bool lock; // bolean používaný ke čtení stavu readPin dlouhý nepodepsaný časovač, timer2; dvakrát přečteno; Vyberte řetězec [12] = {"B", "1", "2", "4", "8", "15", "30", "60", "125", "250", "500", "1000"}; dlouho očekávané [12] = {0, 1000, 500, 250, 125, 67, 33, 17, 8, 4, 2, 1}; neplatné nastavení () {Serial.begin (9600); // nastavíme sériovou komunikaci na 9600 bitů za sekundu pinMode (readPin, INPUT_PULLUP); // nastavíme pin vždy vysoko, kromě případů, kdy se fototranzistor potápí, takže bychom "obrátili" logiku // to znamená HIGH = žádný IR signál a LOW = IR zpoždění přijatého signálu (200); // toto zpoždění je umožněno spuštění systému a zamezení falešných hodnot j = 0; // inicializace našeho čítače} void loop () {lock = digitalRead (readPin); // čtení stavu daného pinu a jeho přiřazení k proměnné if (! lock) {// spustit pouze v případě, že pin je LOW timer = micros (); // nastavit referenční časovač while (! lock) {// to udělat, když je pin LOW, jinými slovy, časovač otevření závěrky2 = micros (); // vzít uplynulý čas ukázkový zámek = digitalRead (readPin); // přečtěte si stav pinu, abyste věděli, zda se závěrka zavřela} Serial.print ("Position:"); // tento text je pro zobrazení požadovaných informací Serial.print (vyberte [j]); Serial.print ("|"); Serial.print ("Čas otevření:"); readed = (timer2 - časovač); // vypočítat, kolik času byla závěrka otevřena Serial.print (přečteno); Serial.print („my“); Serial.print ("|"); Serial.print ("Očekávané:"); Serial.println (očekávané [j]*1000); j ++; // zvětšit polohu závěrky, lze to provést tlačítkem}}

Po dokončení nahrávání otevřete sériový monitor (Nástroje -> Sériový monitor) a připravte kameru na čtení

Výsledky se zobrazí po slovech „čas otevřen:“, všechny ostatní informace jsou předem naprogramovány.

Krok 3: Nastavení a měření

Nastavení a měření
Nastavení a měření
Nastavení a měření
Nastavení a měření
Nastavení a měření
Nastavení a měření
Nastavení a měření
Nastavení a měření

Sundejte čočky fotoaparátu a otevřete přihrádku na film. Pokud již máte vložený film, nezapomeňte jej před tímto postupem dokončit, jinak poškodíte pořízené fotografie.

Umístěte IR LED a IR foto tranzistor na opačné strany kamery, jednu na stranu filmu a druhou na stranu, kde byly čočky. Bez ohledu na to, kterou stranu použijete pro LED nebo tranzistor, ujistěte se, že při stisknutí spouště vytvoří vizuální kontakt. Chcete -li to provést, nastavte závěrku na „1“nebo „B“a při „pořizování“fotografie zkontrolujte sériový monitor. Pokud závěrka funguje dobře, monitor by měl ukazovat hodnotu. Také mezi ně můžete umístit neprůhledný předmět a jeho pohybem spustit měřicí program.

Resetujte Arduino tlačítkem reset a pořizujte fotografie jeden po druhém při různých rychlostech závěrky od „B“do „1000“. Sériový monitor vytiskne informace po zavření závěrky. Jako příklad můžete na připojených obrázcích vidět časy naměřené z filmových kamer Miranda a Praktica.

Tyto informace použijte k provádění oprav při fotografování nebo diagnostice stavu fotoaparátu. Pokud chcete vyčistit nebo vyladit fotoaparát, vřele doporučuji zaslat jej odbornému technikovi.

Krok 4: Geeks Stuff

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

Tranzistory jsou základem všech elektronických technologií, které dnes vidíme, byly poprvé patentovány kolem roku 1925 rakousko-uherským německo-americkým fyzikem. Byly popsány jako zařízení pro ovládání proudu. Před nimi jsme museli pomocí elektronek provádět operace, které dnes dělají tranzistory (televize, zesilovače, počítače).

Tranzistor má schopnost řídit proud tekoucí z kolektoru do emitoru a tento proud můžeme ovládat ve společných tranzistorech se 3 nohami, přičemž na tranzistorovou bránu aplikujeme proud. Ve většině tranzistorů je proud brány zesílen, takže například v případě, že na bránu aplikujeme 1 mA, dostaneme 120 mA tekoucí z emitoru. Můžeme si to představit jako ventil vodovodního kohoutku.

Foto tranzistor je normální tranzistor, ale místo toho, aby měl bránu, je brána připojena k fotograficky citlivému materiálu. Tento materiál vydává malý proud, když je buzen fotony, v našem případě fotony infračervené vlnové délky. Řídíme tedy fototranzistor upravující výkon zdroje infračerveného světla.

Před nákupem a zapojením našich prvků bychom měli vzít v úvahu určité specifikace. V příloze jsou informace načtené z datových listů tranzistoru a LED. Nejprve musíme zkontrolovat průrazné napětí tranzistoru, což je maximální napětí, které může zvládnout, například moje průrazné napětí z emitoru do kolektoru je 5V, takže pokud jej zapojím špatně při zdroji 8V, tranzistor usmažím. Zkontrolujte také ztrátový výkon, to znamená, kolik proudu může dodávat tranzistor před smrtí. Můj říká 150 mW. Při 5 V znamená 150 mW zdroj 30 mA (W = V * I). Proto jsem se rozhodl použít omezovací odpor 220 Ω, protože při 5 V odpor 220 Ω umožňuje procházet pouze maximálním proudem 23 mA. (Ohmův zákon: V = I * R). Stejný případ platí pro LED, informace v listu uvádějí, že jeho maximální proud je asi 50 mA, takže další odpor 220 Ω bude v pořádku, protože náš maximální výstupní proud pro pin Arduino je 40 mA a nechceme vypalovat kolíky.

Musíme zapojit naše nastavení jako na obrázku. Pokud používáte knoflíky jako já, dávejte pozor, abyste dva kulaté výčnělky vložili doprostřed desky. Poté nahrajte následující kód do Arduina.

int readPin = A1; // pin, kde je připojen rezistor 220 z fototranzistoru ptValue, j; // bod úložiště pro data načtená z analogRead () void setup () {Serial.begin (9600); } void loop () {ptValue = analogRead (readPin); // načteme hodnotu napětí na readPin (A1) Serial.println (ptValue); // tímto způsobem odešleme načtená data na sériový monitor, abychom mohli zkontrolovat zpoždění (35); // jen zpoždění pro snazší pořízení snímků obrazovky}

Po nahrání otevřete sériový plotter (Nástroje -> Sériový plotter) a sledujte, co se stane, když stisknete tlačítko IR LED spínače. Chcete -li zkontrolovat, zda IR LED funguje (také dálkové ovladače televizoru), jednoduše umístěte kameru mobilního telefonu před LED a pořiďte fotografii. Pokud je to v pořádku, uvidíte modrofialové světlo vycházející z LED.

V sériovém plotru můžete rozlišit, kdy LED svítí a nesvítí, pokud ne, zkontrolujte zapojení.

Nakonec můžete změnit metodu analogRead pro digitalRead, abyste viděli pouze 0 nebo 1. Doporučuji provést zpoždění po nastavení (), abyste se vyhnuli falešnému LOW čtení (obrázek s jedním malým LOW vrcholem).

Doporučuje: