Zurueck


Baustelle

Fotocontroller 3 für Nikon D50

und andere Nikon Kameras der D-Serie.


Titelbild

Die Kameras der Nikon D-Serie zeichnen sich dadurch aus, dass sie mit einer Infrarotfernsteuerung ausgelöst werden können. Diesen Effekt kann man nutzen um der Kamera verschiedene andere Funktionen beizubringen, die sie sonst nicht hat. Angeregt durch das Buch von Peter Recktenwald "Hacks für die Digitale Fotografie" [2] und dem Artikel "Bewegungsgesteuerter Fernauslöser - mit Arduino" in der ELEKTOR Heft 9/2013 auf Seite 58 [1] habe ich einen eigenen Fotocontroller entwickelt. Er kann direkt auf den Blitzschuh der Nikon gesteckt werden und steuert die Kamera über eine Infrarot-LED, die in dem Gerät integriert ist. Gesteuert wird der Fotocontroller mit einem Arduino R3, der in BASIC und Assembler programmiert ist.

Der Controller verfügt über folgende Betriebsmodi:

1. Fremdsteuerung über diverse Sensoren
2. Zeitrafferaufnahmen
3. Tropfenfotografie
4. Freie Ablaufsteuerung

Folgende Ein- Ausgänge stehen zu Verfügung:
1 Digitaleingang (5V-9V-Pegel)
1 Ausgang mit dem  z. B. eine LED angesteuert werden kann. (Licht an/aus)
1 Ausgang mit dem ein Magnetventil angesteuert werden kann.
1 Ausgang mit dem ein Elektronenblitz ausgelöst werden kann.


Die für die einzelnen Betriebsmodi benötigten Parameter werden über die USB-Schnittstelle des Arduino, am PC, in einem Terminaluemulationsprogramm, z.B. das kostenfreie Tera Term, eingegeben und anschließend im EEPROM des ATMega 328P gespeichert. Tera Term muss zu diesem Zweck in einer VT100- Emulation betrieben werden, damit die Ansteuerung des Bildschirms funktioniert. Baudrate und Schnittstellenparameter müssen selbstverständlich, sowohl in Tera Term als auch im Gerätemanager, mit den im Programm verwendeten Werten übereinstimmen:
9600 Baud, 8Bit, 1 Stopbit, keine Parität
Um in diesen Konfigurationsmode zu gelangen drücken Sie vor dem Einschalten des Controllers die Taste S1 und halten Sie S1 gedrückt bis in dem Terminalprogramm eine Eingabemaske erscheint:

Terminal

Das Terminalprogramm muss natürlich vorher aktiviert werden. Ist der Controller schon vorher eingeschaltet, so ist bei meinen Geräten auch folgender Ablauf möglich: S1 gedrückt halten, Tera Term aufrufen, warten bis die Eingabemaske in Tera Term erscheint, dann S1 loslassen. Die Eingabemaske enthält drei Bereiche:
* Eingaben für den Zeitraffermodus
  Hier legen Sie die Zeiten für die Dauer der Aufnahmen, die Dauer des später abgespielten Zeitrafferfilms und die Anzahl   der Bilder pro Sekunde beim Abspielen fest.
* Eingaben für die Tropfenfotografie
und
* Eingaben für die freie Ablaufsteuerung

Sind die Eingaben der Parameter abgeschlossen und gespeichert, kann der Controller unabhängig vom PC betrieben werden. Es  werden die vorher eingegebenen Parameter verwendet. Zur Stromversorgung können Sie einen 9V-Block einsetzen, wenn Sie den Controller netzunabhängig betreiben wollen. Den 9V-Block schließen Sie mittels eines DC-Steckers an den 9V-Anschluss des Arduino an. Natürlich geht auch ein 9V-Netzteil. Die Anzeige erfolgt hier mit einem LCD-Display 2 x16 von Anag Vision. Um einen Betriebsmode auszuwählen blättern Sie sich durch kurzes drücken des Tasters S1 durch die gewünschten Betriebsmodi und bestätigen anschließend Ihre Wahl durch langes drücken (mindestens 1 Sekunde) des Taster S1. Der gewählte Betriebsmode wird dann von dem Fotocontroller abgearbeitet

Die Elektronik

Schaltplan

Das Gehirn des Fotocontrollers ist ein Arduino Uno R3. Der darauf befindliche ATMega 328P wird nicht mit der Arduino-IDE als Sketch programmiert, sondern mit dem BASCOM-AVR in BASIC. Wie der BASCOM dazu einzustellen ist entnehmen Sie bitte dem Artikel "Etwas über ARV-Bootloader". Den programmierten Sourcecode können Sie hier [4] downloaden.  Die Verbindung zwischen dem Controller und der Peripherie erfolgt über Audiokabel und 3,5 mm Klinkenstecker und Buchsen.


Das Layout

Layout

Für die Treiberelektronik, der verwendeten Sensoren und Aktoren, habe ich einen Shield entwickelt. Zum Teil wird die Treiberelektronik auch in der externen Peripherie eingebaut. Es werden ausschließlich bedrahtete Bauteile verwendet. Der Shield befindet sich auf einer Lochstreifenrasterplatine. Das oben stehende Layout zeigt den Aufbau. Dabei sind die Leiterbahnen rot, Drahtbrücken und Verbindungen auf der Bestückungsseite grün dargestellt.  Der Maßstab ist in Löchern angegeben. Eine Besonderheit stellen die Stiftleisten dar, die die Verbindung zu der Arduino-Platine schaffen. Sie sind von der Unterseite des Shields her angelötet und ragen nur ganz knapp aus der Bestückungsseite des Shields hervor. Die Pinne IO8 bis SCL müssen etwas verbogen werden. Am Besten man steckt sie auf den Arduino und zwingt sie vorsichtig in die Löcher der Lochrasterplatine.
Da ich standardmäßig eine Buchsenleiste unter das LCD-Display löte und nur eine Buchsenleiste auf dem Shield eine genügende Höhe für die Gehäuseöffnung des  LCD-Displays aufweist, kommt zwischen der Buchsenleiste des Displays und der Buchsenleiste des Shields eine Steckerleiste. Bitte beachten Sie: Das verwendete LCD-Display kommt von Anag Vision und hat seine Anschlüsse unterhalb der Anzeige. Diese Besonderheit ist einzuhalten damit später der Gehäusedeckel passt.


Die Software
Die Software ist eine Kombination von AVR-BASIC und AVR-Assenler. Sie gliedert sich in fünf Teile. Die Erfassung der Parameter mit Tera Term, Der eigentlichen Ablaufsteuerung für das Auslösen einer Aufnahme mit einem digitalen Sensor, wie z.B. einer drahtgebundenen Fernauslösung oder einem Schallsensor oder einem Bewegungssensor (PIR-Sensor) oder… Dann die Ablaufsteuerung für die Zeitrafferaufnahmen. Weiterhin die Ablaufsteuerung für die Tropfenfotografie. Ferner das Abarbeiten der frei konfigurierten Ablaufsteuerung. Und letztlich eine Assemblerroutine die die Ansteuerung der NIKON über eine IR-LED übernimmt. Die Anregung zu dieser Assemblerroutine habe ich von Big Mike [3] übernommen und für meine Zwecke angepasst.

Das Gehäuse
Das Gehäuse wurde mit einem 3D-Drucker erstellt. Das von mir verwendete Filament ist PLA. Die STL-Dateien können Sie hier [4] herunterladen. Das Gehäuse besteht aus mehreren Teilen: Dem Boden mit den Seitenwänden, dem Gehäusedeckel, der Tastenverlängerung, den Stützen für das LCD-Display und dem Adapter für den Blitzschuh. Der Boden ist bei mir in zwei Farben ausgeführt: Schwarz und Rot. Der Gehäusedeckel wird mit vier 3mm-Blechschrauben seitlich an den Boden angeschraubt. Bitte ziehen Sie die Blechschrauben nur "handwarm" an, sonst reißt der Kunststoff aus.  Unter dem Boden wurden 4 Gummifüße geklebt, damit der Fotocontroller einen sicheren Stand hat wenn Sie ihn nicht auf Ihrer Kamera gesteckt haben. Ein halber Gummifuß dient als Puffer zwischen Gehäusedeckel und dem LCD-Display. Die Stützen für das LCD-Display und den Adapter für den Blitzschuh müssen Sie mit einem Kunststoffkleber an den Boden ankleben. Ich verwende dazu den Kunststoffkleber von Pattex. Der Arduino  wird mit zwei Schrauben M3 auf dem Gehäuseboden befestigt. Die Löcher für die M3-Gewinde werden mitgedruckt. Allerdings müssen Sie das  Gewinde M3 noch selbst schneiden. Die Genauigkeit des Drucks reicht nicht aus um das Gewinde ebenfalls zu drucken. Ggf. müssen Sie Sie Löcher und Aussparungen etwas nacharbeiten.

Gehaeuse 1 Gehaese 2 Gehaese 3

Selbstverständlich können Sie alternativ auch ein eigenes Gehäuse entwickeln und mit anderen Fertigungsverfahren herstellen.

[1] ELEKTOR Heft 9/2013 Seite 58
[2} Hacks für die Digitale Fotografie
[3] Seite von Big Mike

[4] Downloads

zurueck