home Inhaltsverzeichnis
erste Version am 04.10.2020
letzte Änderung am 08.11.2020
Ausschalttimer Seite 2
Gehäuse-Design
Diesen Sonntag habe ich mich mit dem Gehäuse beschäftigt. Wenn alles
final ist, werde ich es samt OpenSCAD-Source auf Thingiverse
veröffentlichen.
Das Unterteil mit durchsichtigen Platzhalter-Objekten für das
Netzteil und Relais:
Und das Oberteil mit Aussparungen für das OLED und den Drehgeber:
Für die beiden Aussparungen werde ich voraussichtlich erstmal kleine
Test-Drucke machen.
Das Unterteil soll bei 25% Infill 2:47h und 43g Filament brauchen,
das Oberteil 2:31h und 41g Filament.
Da wäre es schon ziemlich ärgerlich, wenn sich das OLED nicht sicher
fixieren ließe oder sich die Drehgeber-Halterung letztendlich als zu
instabil erweisen würde.
Uuups.... gerade fällt mir auf, dass der Taster zum Einschalten ja
noch fehlt....
Der sollte ursprünglich links neben dem OLED sitzen. Jedoch hätte
ich damit eine 230V-Komponente am Gehäuse-Oberteil - und das möchte
ich aus Verdrahtungs-technischen Gründen jetzt eigentlich nicht mehr
so haben. Das Oberteil soll ausschließlich mit 5V-Strippen über
Molex-Kupplungen mit dem Unterteil verbunden sein.
Der Taster hat samt Kontakten eine Tiefe von 25mm. Also kommt er
wohl notgedrungen an die Seite gegenüber vom Netzteil und das
Gehäuseunterteil bekommt eine entsprechende Ausbuchtung.
Test-Drucke und
Gehäuse-Druck
Gestern habe ich zuerst das Gehäuse-Design noch etwas optimiert und
nebenbei auch einen Drehknopf entworfen.
Danach kamen die Test-Drucke für die Taster-, OLED- und
Drehgeber-Halterungen an die Reihe.
Taster- und OLED-Halterung waren auf Anhieb passend, die Halterung
für den Drehgeber hat erst beim zweiten Anlauf die richtigen Maße
gehabt.
Den Drehknopf bzw. speziell dessen Verbinder zum Drehgeber habe ich
viermal drucken müssen, bis er endlich schön stramm passte.
Dann kam das Unterteil dran und hat den Drucker knappe drei Stunden
beschäftigt.
Heute habe ich das Oberteil gedruckt. Das war etwas schneller fertig
- aber 2:45h waren es auch.
So sieht es derzeit aus (Bild anklicken für die volle Größe):
Mal schauen, ob ich nächstes Wochenende Lust habe, mich mit der
Verdrahtung und der Lochrasterplatte zu befassen.....
Weil die Werkbank derzeit aber total zugemüllt ist, muss ich mich
erstmal überwinden, die soweit aufzuräumen, dass man wieder daran
arbeiten kann.
BTW: im Schaltplan auf der vorigen Seite fehlt [mindestens] noch die
durchgeschleifte Erdleitung.
erste Verkabelungen und
Erweiterungsideen
Es sind mal wieder zwei Wochenenden vergangen, an denen ich nur ein
kleinbischen am Ausschalttimer weitergemacht habe.
Mittlerweile ist die 230V-Verkabelung installiert und per
Durchgangsprüfer getestet (erstes Wochenende). Letztes Wochenende
habe ich die Verkabelung des Oberteils verlötet.
Es laufen jetzt acht Strippen zu einem Molex-Stecker. Dessen
Belegung will ich hier mal dauerhaft notieren...falls das
Kladde-PostIt irgendwann/irgendwie wegkommt.
Das OLED hat vier Kontakte. Von der Rückseite aus gesehen sind sie
(von links nach rechts) folgendermaßen belegt: SDA, SCK, VDD,
GND
Der Drehgeber hat fünf Kontakte. Der mittlere Pin des Drehgebers
(DG) ist mit einem Pin des Tasters (TT) verbunden. Beide gehen
letztendlich an Masse (bzw. Pin 5 des Molex-Steckers).
Pin
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
Farbe
|
SW
|
BR
|
RT
|
OR
|
GE
|
GR
|
BL
|
VI
|
Funktion
|
OLED-GND
|
OLED-SCK
|
OLED-VDD
|
OLED-SDA
|
DG+TT-GND
|
DG-1
|
DG-2
|
TT-1
|
Der Test am ArduinoUNO war erfolgreich und hat direkt dazu geführt,
dass ich die Firmware noch um einen Timeout für den Setup-Mode
erweitert habe.
Nach dem Power-On befindet man sich im Setup-Modus und die
voreingestellte Ausschaltzeit steht auf zwei Stunden. Würde man
jetzt nie den Taster des Drehgebers betätigen, würde der
Ausschalttimer nie in den Run-Modus wechseln und das eingeschaltete
Relais würde nie abgeschaltet werden. Daher nun also der Timeout von
20 Sekunden, der bei jeder Aktivität am Drehgeber neu getriggert
wird. Ohne Aktivität am Drehgeber läuft nach 20 Sekunden der
Countdown zur Umschaltung ab (alias Wechsel in den Run-Mode).
Zwei kleine Erweiterungen könnten sein:
- Änderung der voreingestellten Ausschaltzeit (Speicherung im
EEPROM des ATmega328) und
- manuelles Ausschalten.
Wobei sich dabei die Frage stellt, wie mit nur einem Taster zwei
Funktionen eingeleitet werden können.
Vielleicht so:
- Wenn der Taster eine Sekunde lang gedrückt gehalten wird,
landet die aktuell eingestellte Zeit als neuer
Ausschalt-Initialwert im EEPROM.
Und weil sowas wie ein Doppel- oder (etwas sicherer) sogar
Dreifach-Klick regelmäßig als Drehgeber-Step interpretiert wird:
- Die minimal einstellbare Ausschalt-Dauer wird von fünf Minuten
auf 10 Sekunden geändert - und erlaubt somit ein zeitnahes
Abschalten durch Runterdrehen der Ausschaltzeit.
Das ist m.E. bedien-technisch weitaus intuitiver, als etwa ein
Dreifach-Klick.
Wie schön...dann kann ich ja noch ein bischen an der Software rumfeilen,
bevor ich die Lochrasterplatte final verlöten muss :-)
finaler
Schaltplan und Leiterplatte
Es ist wieder mal Sonntag und die Firmware enthält die angedachten
Änderungen. Um den Drehgeber-Taster von digital auf die drei
Zustände <offen>, <kurz betätigt> und <lange
betätigt> umzustellen, waren dann doch einige Änderungen nötig -
zumal ja auch noch das EEPROM-Schreiben samt Bestätigungs-Dialog
dazu kam.
Aber nun lässt sich das Löten nicht mehr vermeiden. Daher brauche
ich jetzt erstmal einen Schaltplan, der statt des ArduinoUNO den
nackigen ATmega328 enthält.
Sieht dann so aus:
Einen Pin habe ich verändert. Der Transistor, der das Relais
schaltet, wird jetzt von D8 statt vorher D13 angesteuert. Auch ist
die Erdleitung nun enthalten.
Nachtrag: parallel zum 100 nF Kondensator braucht es
noch einen kleinen Elko mit 22 µF! (und als Freilaufdiode habe
ich eine 1N4007 eingesetzt)
Die Leiterplatte ist schon zurechtgeschnitten und die zwei
Befestigungs-Löcher sind gebohrt. Bemaßt habe ich sie innerhalb
meines 3D-Modells bzw. in der SCAD-Datei.
Allerdings enthält sie eine Sperrzone für hohe Bauteile:
Über der großen Sperrzone befindet sich der Drehgeber. Und um die
Bohrungen herum muss es auf der Leiterbahn-Seite frei bleiben.
So. Die Leiterplatte ist verlötet. Aber irgendwas klappt da noch
nicht.
Die Anzeige zeigt zunächst die korrekte Ausschalt-Dauer - die ich
noch per ArduinoUNO auf 4:00:00 gestellt hatte.
Aber sobald der Drehgeber bedient wird, kommt der Inhalt der Anzeige
völlig durcheinander.
Und selbst wenn nach PowerOn auf den Timeout für den Run-Modus
gewartet wird, läuft der Countdown zwar erstmal los, verreckt dann
aber nach ein paar Minuten.
So ein Scheiß. Und dabei befand sich die Leiterplatte bei diesem
Test nicht mal im Gehäuse - und damit direkt neben dem 12V-Netzteil.
Für den Betrieb in der Ziel-Umgebung hatte ich ja fast schon sowas
erwartet. Also dass es womöglich Abschirm-Bleche braucht.
Für heute hat mir das jedenfalls die Motivation genommen, noch
irgendwas an dem Ding zu machen.
Die Fortsetzung folgt dann irgendwann auf der dritten Seite.