Gefrierschranküberwachung V2
Inhaltsverzeichnis:
2.1 12V-Anschluss (ab gepuffertem Netzteil)
2.2 Zu überwachender 230V-Anschluss
3 Steckerbelegung Display und LED
4.1 Befehle für das Display 128x160 mit ST7735
Versionsverfolgung:
Version |
Datum |
Bemerkung |
|
V0.1 |
17.12.20 |
Initialversion |
|
V1.0 |
24.12.20 |
Erste Version |
|
V1.0 |
15.01.21 |
Filename korrigiert, letzte Ergänzungen |
|
V2.0 |
22.01.21 |
Anstelle 230V-Speisung Speisung mit 12V gepuffert |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Die Gefrierschranküberwachung soll die Temperatur im Gefrierschrank sowie das Netz überwachen. Die Temperatur sowie der Netzzustand werden auf einer WEB-Seite ausgegeben. Bei Netzausfall oder Unterschreitung der Mindesttemperatur wird eine Warn-email gesendet.
Der Zustand des
Gefrierschranks wird auch auf einem grafischen TFT-Display (128x160) dargestellt.
Ist die Temperatur unter -15°C wird der Hintergrund bei der Temperaturangabe
grün dargestellt, ansonsten rot.
Der Hintergrund der Netzüberwachung wird bei vorhandenem Netz ebenfalls grün
dargestellt, ansonsten rot.
Eine grüne LED zeigt an dass die 3.3V vorhanden sind; die gelbe LED zeigt an dass die überwachte 230V-Speisung in Ordnung ist.
Um auf eine Fehlfunktion aufmerksam zu machen wird bei Statusänderungen (zu hohe Temperatur oder Netzausfall) eine email gesendet. Um das richtige Funktionieren dieser Funktion zu gewährleisten wird ca. alle 24 Stunden eine Kontroll-email gesendet.
Verwendet wird ein Wemos D1 (ESP8266). Als Temperatursensor dient ein DS18B20. Die Netzspannung wird mit einem Optokoppler überwacht.
Die Speisung erfolgt mit 12V. Diese Spannung ist gepuffert und versorgt auch die Fritzbox.
Es sind 4 Anschlüsse vorhanden.
Regler auf 3.3V einstellen!
Der Anschluss ist als 4-poliger Western-Stecker ausgeführt.
|
Signal |
4-poliges Flachkabel |
Anschluss DS18B20 |
1 |
1-wire |
weiss |
2 |
2 |
3.3V |
braun |
3 |
3 |
GND |
grün |
1 |
4 |
GND |
gelb |
1 |
Dieser befindet sich auf dem WEMOS-Board und ist direkt erreichbar. Er wird über ein Micro-USB-Kabel am PC angeschlossen. Der Anschluss dient zum Programmieren und Monitoren.
Pin |
Signal |
Wemos D1 |
Kabelfarbe |
Display |
Pin |
|
1 |
GND |
|
|
gu |
GND |
2 |
2 |
3.3V |
|
|
rosa |
VCC |
1 |
3 |
---- |
|
|
|
|
--- |
4 |
Beleuchtung |
D3 |
GPIO0 |
gn |
LED |
8 |
5 |
MOSI |
D6 |
GPIO12 |
gb |
SDA |
6 |
6 |
SCK |
D5 |
GPIO14 |
bn |
SCK |
7 |
7 |
CS |
D8 |
GPIO15 |
w |
CS |
3 |
8 |
D/C |
D4 |
GPIO2 |
rosa |
A0 |
5 |
9 |
Reset |
D0 |
GPIO16 |
bn |
Reset |
4 |
10 |
---- |
---- |
----- |
|
|
--- |
11 |
GND |
--- |
--- |
gu |
GND |
--- |
12 |
3.3V |
--- |
--- |
bn |
LED grün |
--- |
13 |
Speisungsüberwachung |
--- |
--- |
w |
LED gelb |
--- |
Verwendete Bibliotheken für die Arduino-IDE:
https://github.com/adafruit/Adafruit-ST7735-Library
https://github.com/adafruit/Adafruit-GFX-Library
sowie für e-mail:
Esp8266 E-Mail Tab (fipsok.de)
Aus: All pages - Microduino Wiki (microduinoinc.com) (nach: tft.xyz suchen)
Befehl: |
Beschreibung |
|||
tft.fillScreen(FARBE) |
Bildschirm füllen mit Farbe |
|||
tft.setCursor(x, y) |
Cursor setzen (x, y) x = 0…159 ; y = 0…127 |
|||
tft.setTextColor(FARBE) |
Textfarbe setzen (Farbe) |
|||
tft.setTextSize(1) |
Textgrösse setzen |
|||
tft.setTextWrap(false) |
Text ohne Zeilenumbruch |
|||
tft.setTextWrap(true) |
Text mit Zeilenumbruch |
|||
tft.println(" " |
|
Textausgabe („Ausgabetext“); Cursorposition ist unten (ohne Unterschneidung)! |
||
tft.drawPixel(x, y, Farbe) |
Setzt Pixel auf x / y mit Farbe |
|||
tft.drawLine(x0, y0, x1, y1, Farbe) |
Zeichnet Linie von x0 / y0 nach x1 / y1 mit Farbe |
|||
tft.drawFastHLine(x, y, w, Farbe) |
horizontale Linie ab x/y und Länge w mit Farbe |
|||
tft.drawFastVLine(x, y, w, Farbe) |
vertikale Linie ab x/y und Länge w mit Farbe |
|||
tft.drawRect(x, y, w, h, Farbe) |
Zeichnet Rechteck mit Eckpunkt |
|||
tft.fillRect(x, y, w, h, Farbe) |
Füllt Rechteck mit Eckpunkt oben links x / y und |
|||
tft.drawRoundRect(x, y, w, h, radius, Farbe) |
Zeichnet gerundetes Rechteck mit Eckpunkt |
|||
tft.fillRoundRect(x, y, w, h, radius, Farbe) |
Füllt gerundetes Rechteck mit Eckpunkt |
|||
tft.drawCircle(x, y, r, Farbe) |
Zeichnet Kreis mit Mittelpunkt x / y und |
|||
tft.fillCircle(x, y, r, Farbe) |
Füllt Kreis mit Mittelpunkt x / y und Radius r mit Farbe |
|||
tft.drawTriangle(x0, y0, x1, y1, x2, y2, Farbe) |
Zeichnet Dreieck mit den Ecken oben: x0 / y0, |
|||
tft.fillTriangle(x0, y0, x1, y1, x2, y2, Farbe) |
Füllt Dreieck mit den Ecken oben: x0 / y0, |
|||
|
|
|||
FARBEN: |
||||
ST7735_BLACK |
Schwarz |
ST7735_CYAN |
Cyan |
|
ST7735_WHITE |
Weis |
ST7735_MAGENTA |
Magenta |
|
ST7735_RED |
Rot |
ST7735_YELLOW |
Gelb |
|
ST7735_GREEN |
Grün |
ST7735_ORANGE |
|
|
ST7735_BLUE |
Blau |
|
|
|
Grossschreibung beachten! Cursorposition für Text ist unten (ohne Unterschneidung!)