DSLR IR DO Infračervené dálkové ovládání pro fotoaparáty značky Nikon
Úvodwww.elweb.cz
K digitálním zrcadlovkám (DSLR) se jako standardní příslušenství prodává jednoduché infračervené dálkové ovládání. Toto dálkové ovládání (alespoň v případě firmy Nikon) slouží pouze pro spuštění expozice (vyfocení snímku) nebo spuštění zpožděné expozice a má tedy jen jedno tlačítko. Takové dálkové ovládání se hodí pro focení autoportrétů a skupin lidí, mezi kterými je i sám fotograf. Focení je pak pohodlnější než v případě použití samospouště. Dálkové ovládání lze využít však například i při focení zvěře. Fotoaparát upevníme na stativ v těsné blízkosti ptačího hnízda, nory nebo jiného zvířecího obydlí. Zamaskujeme jej a sami se schováme o pár metrů dále za strom nebo do křoví s připraveným dálkovým ovladačem v ruce. Tak jako většina ostatního drobného příslušenství pro digitální zrcadlovky je i originální dálkové ovládání relativně drahé. Stojí běžně přes 500,-Kč (rok 2009). Rozhodně je to cena vyšší, než podstatně složitější univerzální dálkové ovladače k televizi a ostatním přístrojům. Přitom jej lze poměrně snadno vyrobit.
www.elweb.czwww.elweb.cz
Signálwww.elweb.cz
Nejprve bylo potřeba zjistit, jaký signál je pro spuštění expozice potřeba vyslat, respektive datovou sekvenci a způsob modulace. Vzhledem k tomu, že originální ovladač vlastním, zkusil jsem signál jednoduše zobrazit na osciloskopu. Pro toto měření jsem zkonstruoval jednoduchou pomůcku sestávající se pouze z odporového děliče fototranzistor-rezistor.
www.elweb.cz
www.elweb.czwww.elweb.cz
Nejprve jsem pomocí osciloskopu zjistil, že je signál modulován frekvencí přibližně 40kHz, což není nic překvapivého. Standardně se používají modulační frekvence IR dálkových ovladačů především 30, 33, 36, 36.7, 38, 40 a 56kHz. Vzhledem k nepřesnému odečítání frekvence z analogového osciloskopu se v našem případě může jednat například i o 38kHz – Zkusíme a uvidíme...
www.elweb.cz
www.elweb.czwww.elweb.cz
Dále jsem pomocí osciloskopu (při jiném rozsahu času na dílek) zjistil vysílanou datovou sekvenci. Při tomto měření velmi pomohla dvojitá časová základna osciloskopu (OX 803B - Chauvin Arnoux), díky níž bylo možné časy odečíst poměrně přesně.
www.elweb.cz
Naměřená datová sekvence:
www.elweb.cz
ON 2,2ms
OFF 27ms
ON 0,7ms
OFF 1,4ms
ON 0,6ms
OFF 3,4ms
ON 0,7ms
OFF 62ms
ON 2,2ms
OFF 27ms
ON 0,7ms
OFF 1,4ms
ON 0,6ms
OFF 3,4ms
ON 0,7ms
www.elweb.cz
Realizacewww.elweb.cz
K vyslání takovéhoto modulovaného signálu infračervenou svítivou diodou je vhodné použít mikrokontrolér. Respektive, pokud nejste fandové FPGA a podobných obvodů, je to jediné racionální řešení. Měl jsem po ruce zrovna dsPIC30F2010 firmy Microchip. Přiznávám, že není zcela optimální používat 16-bitový procesor s DSP jádrem pro takto jednoduchou aplikaci, ale na vyzkoušení postačí. Program jsem napsal v jazyce C za použití velmi příjemného vývojového prostředí PCWHD firmy CCS.
Schéma je zobrazeno na následujícím obrázku. Napájecí napětí ze 3V lithiové knoflíkové baterie G1 je přes tlačítko S1 připojeno k napájecím vývodům mikrokontroléru. K jeho vstupně-výstupnímu pinu GP5 je pak připojena infračervená dioda. (Ve schématu je použit PIC12F675 – viz dále.)
IR LED je připojena bez sériového rezistoru. Vzhledem k tomu, že pracuje v pulzním provozu s velmi nízkou střídou a lithiová baterie i výstupní obvod mikrokontroléru mají nezanedbatelný sériový odpor, její destrukce přetížením nehrozí.
www.elweb.cz
První zkouškawww.elweb.cz
Na první zapojení dálkové ovládání bohužel nefungovalo. Po proměření výstupu osciloskopem jsem si opět uvědomil jisté výhody assembleru. Výsledná reálná modulační frekvence byla totiž pouze 20kHz namísto teoreticky vypočtených 40kHz. V jazyce C lze sice napsat například příkaz delay_us(6); nicméně skutečný čas může být jiný, protože jednotky mikro sekund jsou srovnatelné s časem provedení jedné instrukce a je tedy potřeba počítat i s časem provádění ostatních instrukcí. Na rozdíl od assembleru ve vyšších programovacích jazycích lze jen těžko odhadovat, jaká operace mikrokontroléru jak dlouho potrvá. Takže jsem příkazy delay_us nahradil částí asm kódu a s pomocí příkazů „NOP“ se po chvíli slepého zkoušení dostal k reálné modulační frekvenci 38,6kHz.
www.elweb.cz
www.elweb.czwww.elweb.cz
Druhá zkouškawww.elweb.cz
Hned po třetím pokusu, respektive po třetím nahrání programu do dsPICu programátorem Asix Presto, začal fotoaparát položený na stole fotit jeden snímek za druhým. Dálkové ovládání tedy funguje. Dále jsem testoval dosah, který byl v ideálních podmínkách (v interiéru na přímou viditelnost) bohužel pouze cca 4m. Infračervená LED by dle specifikace měla mít výkon 180mW (což je poměrně hodně) a vzhledem k tomu, že je připojena bez sériového rezistoru, zvýšit její výkon při tomto zapojení a tomto napájení zřejmě již nepůjde. Kratší dosah dálkového ovládání by se dal vysvětlit použitím nesprávné vlnové délky (Použitá LED má vlnovou délku 1250nm). V budoucnu tedy vyzkouším použití jiných IR LED.
www.elweb.cz
www.elweb.czwww.elweb.cz
Hardwarewww.elweb.cz
Potřeba jsou pouze čtyři součástky. Mikrokontrolér, IR LED, baterie a tlačítko. Po velmi krátké úvaze docházím k názoru, že deska plošných spojů nebude potřeba, přestože jsem odpůrcem jakéhokoli pájení ve vzduchu. V tomto případě však použití desky plošných spojů opravdu ztrácí smysl.
www.elweb.cz
www.elweb.czwww.elweb.cz
www.elweb.czwww.elweb.cz
Udělal jsem tedy alespoň její návrh v programu Eagle – viz následující obrázek.
www.elweb.cz
www.elweb.czwww.elweb.cz
Seznam použitých součástek a náklady
www.elweb.cz
D1 IR LED 4,-Kč
G1 CR2032 + pouzdro 23,-Kč
S1 tlačítko 1,-Kč
IC1 PIC12F675 22,-Kč
krabička 12,-Kč
Celkové náklady: 62,-Kč
www.elweb.cz
Namísto dsPICu jsem zapátral v katalogu nejmenovaného maloobchodu se součástkami a vybral dle ceny nejlevnější PIC, jaký měli. Za 22,-Kč s DPH byl PIC16F675. Ne, že bych chtěl snad šetřit na školním projektu, ale internet jsem zrovna neměl k dispozici, malé PICy příliš neznám a dalo se předpokládat, že ten nejlevnější bude v pouzdře PDIP8. A také byl. A teď se dostáváme k jedné veliké výhodě programovacího jazyku C a vývojového prostředí CCS – program není potřeba nijak upravovat. Pouze jsem přepsal název výstupního pinu, nahrál přes programátor Asix PRESTO a dálkové ovládání opět funguje. Všechny čtyři součástky jsem naskládal do opět nejlevnější a nejmenší plastové krabičky, jakou jsem ve zmíněném obchodě sehnal a spájel za použití mikropáječky Diametral a PbSn pájky. Zařízení vzhledem k použité pájce nevyhovuje RoHS směrnici. Nicméně PbSn pájka má ve všech ostatních ohledech lepší vlastnosti než její bezolovnaté ekologické náhražky a především se s ní v amatérských podmínkách lépe pracuje – Pro výrobu jednoho kusu prototypu tedy postačí. Obvod jsem po vložení do krabičky zalil lepidlem z tavicí pistole, čímž se značně zvýší jeho dlouhodobá spolehlivost a odolnost.
www.elweb.cz
Programwww.elweb.cz
Jak jsem již uvedl výše, program je velmi jednoduchý a je napsán v jazyce C - ve vývojovém prostředí CCS. Kód programu je uveden na konci této práce.
www.elweb.cz
Závěrwww.elweb.cz
Podařilo se vytvořit funkční infračervené dálkové ovládání pro spouštění expozice digitálních zrcadlovek značky Nikon. Dálkové ovládání je funkčností i rozměry srovnatelné s originálním příslušenstvím a finanční náklady na jeho výrobu byly desetinové oproti ceně originálu.
www.elweb.cz
www.elweb.cz
Program:
www.elweb.cz
#include "C:\_elektro\ir_Nikon\12F\main.h"
unsigned int16 i;
void x40kHz() {
output_high(PIN_A5);
#asm
nop
nop
#endasm
output_low(PIN_A5);
#asm
nop
#endasm
}
void main()
{
setup_adc_ports(NO_ANALOGS|VSS_VDD);
setup_adc(ADC_OFF);
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_comparator(NC_NC);
setup_vref(FALSE);
while(1) {
for(i=0;i<9000;i++) {
x40kHz();
}
delay_ms(28);
for(i=0;i<26;i++) {
x40kHz();
}
delay_us(1375);
for(i=0;i<23;i++) {
x40kHz();
}
delay_us(3350);
for(i=0;i<26;i++) {
x40kHz();
}
delay_ms(63);
for(i=0;i<90;i++) {
x40kHz();
}
delay_ms(28);
for(i=0;i<26;i++) {
x40kHz();
}
delay_us(1375);
for(i=0;i<23;i++) {
x40kHz();
}
delay_us(3350);
for(i=0;i<26;i++) {
x40kHz();
}
delay_ms(1000);
}
}
Poznámka: Jedná se o semestrální práci předmětu NEZ na
FEL ČVUT.
obrázek/schéma ve formátu gifobrázek/schéma ve formátu gifplošný spoj ve formátu gif (spodní strana)rozložení součástek na plošném spoji ve formátu giffotografie/obrázek ve formátu jpgfotografie/obrázek ve formátu jpgfotografie/obrázek ve formátu jpgfotografie/obrázek ve formátu jpgfotografie/obrázek ve formátu jpgfotografie/obrázek ve formátu jpgprogram pro mikrokontrolér ve formátu hex (stažení: pravé tlačítko > uložit cíl jako)
V některých prodejnách s elektro součástkami vám podle tohoto souboru doneseného na disketě mikrokontrolér naprogramují (např. GM el.
www.gme.cz)