UV-Belichtungstimer

Den wollte ich
mir schon lange bauen, da mein (sehr) altes Belichtungsgerät nur einen
Ein/Aus-Schalter hat. Wie man sieht habe ich mich entschieden den Timer
in ein eigenes Gehäuse einzubauen, das soll aber niemand abhalten die
Schaltung in einen Selbstbaubelichter (Scannergehäuse o.ä.) einzubauen.
Im Gegenteil, ich habe die Schaltung auf 2 gleich große Platinen
(ca.40x100mm) verteilt deren Befestigungslöcher Deckungsgleich sind und
somit Huckepack mit Abstandsrollen (-Bolzen) übereinander
montiert werden können. Im
Gehäuse ist jede Menge Platz sodass der Einbau der Platinen nicht
besonders schwierig ist. Im Foto ist gut zu erkennen wie ich
die Platine an die rote Plexiglas Frontplatte montiert habe. Die
Senkkopfschrauben (M2,5) wurden mit der Frontfolie überklebt
und sind von außen nicht sichtbar. Die LED habe ich wie immer bei
solchen Gelegenheiten zum Schluss, also erst nach Montage der Platine
angelötet. Für den 230V Teil habe ich eine normale 3-Fach
Steckdosenverlängerung in der Mitte getrennt. Das Netzkabel wird über
einen Wippschalter dem Netzteil zugeführt. Die Steckdosenleiste wird
vom Netzteil (Relais) wieder nach außen geführt.
Wichtig:
Unbedingt Kabeldurchführungen mit Zugentlastungen verwenden.
Alle 230V Kabelverbindungen sauber mit Schrumpfschlauch isolieren und
auch das grün/gelbe Erdungskabel durchverbinden.
Soll ein Metallgehäuse verwendet werden (ich rate davon ab), muss das
Erdungskabel mit dem Gehäuse verbunden sein. Auch metallische Bauteile
die aus dem Gehäuse ragen (z.B. Kippschalter) müssen geerdet sein.
Deshalb sind bei meinem Aufbau alle relevanten Bauteile aus Kunststoff.
Schaltung Digitalteil

Die
Anzeige besteht aus 3 LED Siebensegmentanzeigen mit gemeinsamer
Kathode, die im Multiplexbetrieb von einem AT Tiny2313 angesteuert
werden. Das ermöglicht eine maximale Schaltzeit von 9:59 Minuten. Wem
das nicht ausreicht (ich belichte ca. 2 Min.) hat noch die Möglichkeit
die Anzeige auf Sekundenbetrieb umzustellen, dann erreicht man 999
Sekunden (entspricht 16:39 Minuten). Der Piezo-Summer wird bei Betrieb
von PD1 und PD2 gegenphasig angesteuert um die Lautstärke zu erhöhen.
An PD3 angeschlossen, ist der Treibertransistor für das Relais (das auf
der Netzteilplatine sitzt). Gleichzeitig schaltet er LED1 welche
anzeigt, wenn das Relais schaltet. Da mir die I/O Leitungen des
Tiny2313 knapp wurden, musste ich für die Abfrage der 3 Tasten einen
Trick anwenden. Diese sind nämlich nicht wie üblich an einen eigenen
Portpin gegen Masse angeschlossen, sondern über 3 Schottky Dioden
(SB130) mit PortB 0..2 die anderen Anschlüsse des Tasters
gehen anstatt an GND allesamt an PD0 der als Eingang programmiert ist.
Die Dioden sind notwendig damit beim drücken von 2 Tastern
gleichzeitig, keine Ausgänge kurzgeschlossen werden. Die SB130 ist
vielleicht etwas überdimensioniert (die kann 1A in Flussrichtung), aber
die hatte ich gerade zur Hand.
Das Ganze funktioniert folgendermaßen:
Bei jedem Interrupt (alle 4 mS), bevor die nächste Anzeige angesteuert wird, schalte ich die 3 Treibertransistoren aus und ziehe nacheinander einzeln (die auf Ausgang programmierten) PB0..2 auf low und frage PD0 (Pind) ab. Ist z.B S2. gedrückt, wird PD0 low sein wenn ich PB1 auf low schalte. Meine Versuche haben gezeigt, dass sich hier die altbewährte 1N4148 leider nicht benutzen lässt, da es wegen dem 0,7V Spannungsabfall nicht ausreicht PD0 sicher auf Masse zu ziehen. Eine andere Möglichkeit wäre gewesen die Schottkyioden umzupolen und PB0..2 auf High Pegel zu programmieren. Dann währe aber noch ein Pull Down Widerstand an PD0 nötig gewesen. Ausprobiert habe ich das allerdings nicht. Mit dieser Technik lassen sich ohne weiteres 8 Taster anschließen die unabhängig voneinander abgefragt werden können. D.H. auch wenn 2 oder 3 Tasten gleichzeitig gedrückt werden, kann dies ausgewertet werden. Die Genauigkeit des Timers ist abhängig von der Toleranz des verwendeten 4 MHz Quarz und dürfte mehr als ausreichen. In der Firmware wird der 16 Bit Timer des AVR im CTC-Modus betrieben, der die Taktfrequenz (die 4 MHz) soweit herunterteilt bis eine genaue Sekunde entsteht.
Layout

Die >40*100mm Platine ist Einseitig. Es müssen lediglich 6 Drahtbrücken bestückt werden. Beim bestücken muss C3 auf der Lötseite eingebaut werden. Wer dem Tiny2313 eine Fassung spendiert, kann C3 auch von oben in der Mitte der IC-Fassung einbauen (probieren, bei mir hat das gepasst). SV1 ist der ISP-Anschluss. Die Fusebits des Tiny 2313 werden so gesetzt, das der interne Oszillator abgeschaltet und der 4MHz Quarz eingeschaltet wird. (siehe USB-LCD 2)
Hier ein Beispiel mit Ponyprog:
Nach dem Brennen der Fuse Bits kann die Firmware für den At Tiny2313 aufgespielt werden.
SeitenanfangDas Netzteil

Das Relais
befindet sich wie gesagt mit auf der Netzteilplatine um unnötiges
verkabeln mit den gefährlichen 230V Netzspannung zu vermeiden. Der Rest
ist sicher allen bekannt, Trafo, Brückengleichrichter, Siebelko und 5V
Festspannungsregler.
Beim Aufbau UNBEDINGT sorgfältig arbeiten und vor allem Finger weg von der Platine wenn Netzspannung anliegt.
Links auf der Platine befinden sich die 230V Anschlüsse. An Klemme 1...2 wird das Netzkabel angeschlossen. An 3...4 die Steckdose. Wer möchte, kann dem µC7805 einen kleinen Kühlkörper spendieren, bei mir tut es eine Unterlegscheibe, die ich zusammen mit 2 M3 Muttern benutze um den Spannungsregler auf der Platine zu befestigen.Das Netzteil kann natürlich auch mit vorhandenen Bauteilen aus der Bastelkiste (speziell Trafo und Relais) aufgebaut werden.Die Schaltung des Timers zieht bei angezogenem Relais (bei mir) ca. 200 mA. Um sicherzugehen, sollte das Netzteil für 300 mA ausgelegt sein.
Stückliste
Digitalteil: |
||||
R1..R8 | 100R | Alle Widerstände | 0,08 | 0,64 |
R9..R12 | 4.7k | ¼ Watt | 0,08 | 0,32 |
R13 | 10k | 0,08 | 0,08 | |
R14 | 330R | 0,08 | 0,08 | |
C1,C2 | 27pF | KERKO 27P | 0,04 | 0,08 |
C3 | 100nF | Z5U-5 100N | 0,06 | 0,06 |
D1..D3 | SC 52-11 RT | 7 Seg. Anzeige gem. Kathode SC 52-11 RT | 0,59 | 1,77 |
D4 | 1N4148 | 0,02 | 0,02 | |
D5..D7 | SB130 | 0,13 | 0,39 | |
Q3..Q6 | BC547B | 0,03 | 0,12 | |
IC1 | ATTINY 2313 | ATTINY 2313 DIP | 1,30 | 1,30 |
LED1 | 3mm LED | 3mm LED rot | 0,05 | 0,05 |
Summer | SUMMER BM 15B | 0,71 | 0,71 | |
S1..S3 | TASTER | 3301D | 0,13 | 0,39 |
Q1 | Quarz | 4,0000-HC49U-S | 0,24 | 0,24 |
SV1 | Leiste | WSL 10G | 0,07 | 0,07 |
------------ | ||||
Gesamt | 6,32 | |||
Netzteil: |
||||
K1 | Relais | FIN 36.11 5V | 0,82 | 0,82 |
tr1 | Trafo | 3,2VA, 9V, 356mA EI 38/13,5 109 | 3,30 | 3,30 |
C1 | Elko 470µF | RAD 470/35 | 0.14 | 0,14 |
C2..C3 | 100 nF | Z5U-5 100N | 0.06 | 0,12 |
IC1 | µA 7805 | TO-220 | 0.17 | 0,17 |
B1 | DIL-GLEICHRICHTER B40C800DIP | 0.17 | 0,17 | |
------------ | ||||
Gesamt | 4,72 | |||
Optional: |
||||
Gehäuse | TEKO D13 | 4,60 | ||
J1 | PSS 254/3W (2*) | 0,10 | ||
J1 | PSK 254/3W (2*) | 0,06 | ||
J1 | PSK-KONTAKTE 20Stck | 0,31 | ||
Wippschalter, 1-polig AUS |
Daniel Brust hat für die Bauteile des Timers einen Reichelt Warenkorb
zusammenstellt. Vielen Dank dafür.
Im Warenkorb fehlt noch D4 (1N4148). Diese also noch dem
Warenkorb hinzufügen.
Das Gehäuse
ist nicht ganz billig sieht aber mit der roten und 20° abgeschrägten
Frontplatte sehr schick aus. J1 sind
Leiterplattensteckverbinder im 2,54 mm Raster die es in
unterschiedlichen Größen gibt. Zum Stecker, der auf die
Platine gelötet wird,
benötigt man immer das passende Steckergehäuse und die Anzahl von
PSK-Kontakten die (wenn man wie ich die Crimpzange hat ) an das Kabel
gecrimpt werden. Man kann die Kontakte auch löten. Natürlich
lässt sich auch eine der vielen anderen Möglichkeiten nutzen um die
Netzteilplatine mit der Anzeigeplatine zu verbinden. Im einfachsten
Fall einfach die Litzen direkt anlöten. Übrigens sind die verwendeten
Siebensegmentanzeigen auch in anderen Farben erhältlich, das Gehäuse
gibt es aber leider nur mit roter Scheibe.
Frontplatte
Die
Frontfolie wurde wie bei meinen anderen Projekten mit Frontdesigner
von Abacom
erstellt. Die 3 Siebensegmentanzeigen sind natürlich nur symbolisch
abgebildet und werden vor dem aufkleben ausgeschnitten. Die Frontfolie
sowie eine Bohrschablone sind in der Zip Datei enthalten. Man kann sich
auch die Bohrschablone in der Eagle Datei ausdrucken indem man Layer
102 und 20 einschaltet.
Bedienung
Auf der abgebildeten Tabelle der Frontplatte, kann man auch gleich die Funktionen erahnen welche der Timer beinhaltet. Nach dem einschalten des Timers wird die zuletzt eingestellte Zeit aus dem Eeprom geladen und auf dem Display angezeigt, sodass man in den meisten Fällen sofort durch drücken der Start Taste eine neue Belichtung starten kann. Wird eine andere Zeit gewünscht kann durch Drücken der Up / Down Tasten Sekundenweise eine andere Zeit programmiert werden.Um die gewünschte Zeit schneller zu erreichen kann durch gleichzeitiges Drücken von 2 Tasten (Tabelle Preset) der Timer auf 0:00, 2:00 und 4:00 Minuten gestellt werden. Durch Drücken der Start Taste, schaltet wie gesagt das Relais und die LED beginnt zu leuchten bis der Timer bei 0:00 angelangt ist. Während der Timer Läuft haben die Taster Up, Down und Start die Funktionen Pause, Cancel und Continue. Bei Pause (Up) bleibt der Timer stehen und das Relais schaltet aus. Nun kann man mit Cancel (Down) abbrechen oder mit Coninue (Start) das Relais für die Restzeit wieder einschalten. Ist der Zähler bei null angelangt schaltet das Relais aus und eine kleine Animation wird abgespielt (siehe Video). Hierbei werden z.B. die Worte "AUS" und "OFF" über das Display gescrollt (man kann ja leider nicht alle Buchstaben vernünftig auf einem Siebensegment Darstellen). Dieses Gimmick kann im Setup ausgeschaltet werden wenn es nervt .
Eine Ausnahme ist die Eingestellte Zeit 0:00. Wird bei 0:00 auf Start gedrückt schaltet das Relais dauerhaft ein und der Timer zählt aufwärts bis zum Abbruch (siehe oben). Dabei wird jede Minute (100 sec. im sss Modus) ein kurzer Warnton erzeugt.
Das Setup Funktioniert Folgendermaßen:
Man drückt eine oder mehrere Tasten gleichzeitig und schaltet
den Timer ein.
Um z.B. den Summer auszuschalten (auch der kann nerven) hält man Up und
Down gleichzeitig gedrückt und schaltet den Netzschalter des Timers
ein. Auf dem Display erscheint "S-0", zum Einschalten des Summers
drückt man nur Up und "S-1" erscheint.
Folgende Voreinstellungen können im Setup gemacht werden
Funktion | Up | Down | Start | Display |
Summer ein | x | S-1 | ||
Summer aus | x | x | S-0 | |
Animation ein | x | A-1 | ||
Animation aus | x | x | A-0 | |
Uhr M:SS (9:59) | x | U-1 | ||
Uhr SSS (999) | x | x | U-0 | |
Meine Einstellung* | x | x | x | ooo |
*(ich war so frei)
Meine Einstellungen sind Summer ein, Anim ein, M:SS, 2:10
Minuten Belichtungszeit.
Die so gemachten Einstellungen werden Selbstverständlich im Eeprom
gespeichert.
Download
Alle Dateien gezippt downloaden
Die neuste
Hex (Bugfix preset der Zeiten stimmt jetzt mit den
Tastenkombination auf der Frontplatte überein)
Custom Hex
(Anstatt Preset 0.00 2.00 4.00 wird hier 1:35, 2:30 und 3:40 über die
Mehrfachtastenbelegung voreingestellt)
Modifizierte Versionen
Steckergehäuse
Hier noch eine Version für ein Bopla Steckergehäuse die ein feundlicher Bastler (der namendlich nicht gennant werden will) als PDF zur Verfügung stellt.Belichter
Hier eine Sprint-Layout Version von Lothar Jasper die er in seinen Selbstbau Belichter eingebaut hat.
Vielen Dank für die Alternativen Layouts,
Jürgen