Translate original post with Google Translate
Projekt pilota do NIKON D70.
Pomysł zrobienia projektu pojawił się nagle; rozważałem kupno oryginalnego pilota, ale trochę trzeba zachodu, aby taki zdobyć, poza tym jest duży, drogi i nieporęczny. A gdzie radość z własnoręcznie wykonanego czegoś?
Znalazłem informacje i inne projekty w Internecie (pierwszy potraktowałem bardziej teoretycznie, drugi był dawcą pomysłu o wykorzystaniu połączonych linii kontrolera):
http://www.bigmike.it/ircontrol (po angielsku)
http://www.caxapa.ru/lib/dslr_rem.htm (po rosyjsku ;) )
następnie uprościłem rzeczy (nie budujemy przecież elektrowni atomowej !?) – chciałem zmieścić wszystko w oszukańczym pilocie rozdawanym na lewo i prawo przez sprzedawców samochodów. Posiadacz takiego pilota może sprawdzić, czy wygrał samochód (zapewne nie).
Oszukany pilot ma w środku dość miejsca by ukryć kontroler AtTiny 13 w obudowie DIL, dwie zegarkowe baterie SR41 (7.8×3.6 mm, 45 mAh każda!) oraz diodę podczerwoną.
Mamy tu:
- schemat
- wsad do kontrolera attiny13
- źródło firmware
- Makefile
Pobieraj źródła wybierając “Zapisz na dysku” przy pomocy prawego przycisku myszy. Obrazki do druku są w rozdzielczości 300dpi.
Fuse bity dla AtTiny13: lfuse=0x6a (domyślne), hfuse=0xff (domyślne)
Dioda podczerwona zasilana jest przez 5 linii PORTB procesora pracujących jako źródło prądowe; daje do wystarczającą moc by uruchomić migawkę z dystansu 8m (przetestowanego) 19m maksymalnie(!).
Użyłem wyjść kontrolera jako źródeł prądowych aby zachować czystość schematu (ta, schematu), jako że porty w attiny mają symetryczną charakterystykę w pracy jako źródło, jak i otwarty kolektor.
W ekstremalnych temperaturach możliwe jest, że pilot przestanie działać. Spowodowane jest to zależnością częstotliwości wbudowanego generatora RC od temperatury.
W temperaturze pokojowej działa wyśmienicie.
Obydwa projekty, z których czerpałem ostateczne pomysły (zasilanie 5 liniami) mają firmware zakodowane w asemblerze. Programowałem w asemblerze w latach 80/90, nie muszę sobie udowadniać, że umiem ;) programowanie w C jest znaaaacznie szybsze. Zawsze mogę użyć mikrokontrolera z większą ilością pamięci. Czas mój jest znacznie droższy niż scalak za 3 zł.
Firmware napisałem w C (avr-gcc) w 5 minut(!), po skompilowaniu zajmuje mniej niż 300 bajtów.
Testowanie zajęło ok. godziny. Użyłem timingów ze strony bigmike i zastosowałem sugestię ze skróceniem impulsów i wydłużeniem pauz.
Jedyna wstawka asemblerowa to seria nopów i wdrów aby dostroić nadajnik do 38.4 KHz.
Może się zdarzyć, że twój attiny będzie miał nieco inną częstotliwość. Będzie trzeba wtedy dostroić generowaną częstotliwość przez wstawienie/usunięcie części nopów/wdrów w funkcji “signal”.
Pobór prądu podczas świecenia diody jest duży (nie mierzyłem, wyzerowałem rezystory z projektu sachara ;) ale trwa milisekundy. Obliczyłem że na jednych bateriach można odpalić migawkę tysiące razy.
Biorąc pod uwagę brak rezystorów, dioda może tracić z czasem jasność świecenia. Pożyjemy – zobaczymy.
UŻYJ WYŁĄCZNIE 3 VOLTOWYCH BATERII, W PRZECIWNYM WYPADKU SZYBKO USZKODZISZ PROCESOR I DIODĘ!!!
Testowałem pilota z 2x akku NiMH (2.4V), działał ok (z maksymalnego dystansu około 4 metrów).
Ostatecznie na 3V działa jeszcze lepiej (z maksymalnego dystansu okolo 8 metrów)
Nie odpowiadam za jakiekolwiek uszkodzenia sprzętu powstałe podczas montażu i testowania pilota!
Koszt części – ok. 3 zł – 1 kiepskie piwo!
AtTiny13 – 3-4 zł
dioda podczerwona – walała się gdzieś wokoło. Dobra jest każda o prądzie 20 mA.