Dieser Beitrag ist Teil der Sicherheit von 3D Drucker erhöhen Serie und versteht sich nicht als eine komplett Anleitung mit allen Schritten, sondern gibt nur einen Rahmen vor.
Bei Fragen nutzt einfach die Kommentarfunktion.
Ziel
Ziel dieses Projektes ist es, den Strom für einen 3D Drucker im Fall der Fälle schnell genug zu unterbrechen, bevor Schlimmeres passiert.
Verschiedene Sensoren (Rauch, Luft, Temperatur) werden abgefragt. Sollten bestimmte Schwellenwerte überschritten werden, wird der Strom der schaltbaren Wlan-Steckdose abgeschaltet.
Komponenten
Mikroprozessor
Dreh und Angelpunkt ist ein Mikroprozessor vom Typ ESP8266. Dieser wird die Sensoren abfragen und über WLAN kommunizieren.
Sensoren
Nach längeren Überlegen, habe ich mich für die drei folgenden “Sensoren” entschieden:
Rauchmelder
Nach einigen Recherchen habe ich mich für den Ei Electronics Ei650C(*) entschieden. Der Alarm wird unabhängig vom Mikroprozessor ausgelöst, hat aber einen Ausgang, der von dem Mikroprozessor abgefragt werden kann.
Luftqualität-Sensor
Da der Rauchmelder für diesen Einsatzzweck relativ spät reagiert, habe ich ihn um einen Sensor für Luftqualität ergänzt, der evtl. früher als der Rauchmelder reagiert.
Meine Tests mit MQ-135 und MQ-2(*) waren bislang aber noch nicht wirklich erfolgversprechend.
Temperatur-Sensor
Ergänzt wird die Sensorik durch einen Temperatursensor vom Typ ds18b20(*).
Steckdosen
Als Steckdosen habe ich die folgenden beiden getestet bzw. im Einsatz:
Auf beide habe ich ESP-Easy geflasht. Es gibt im Internet eine Vielzahl von Anleitungen. Hier noch eine Auswahl:
Sonoff S20: jbmedia-Forum, YouTube
BlitzWolf BW-SHP6: YouTube
Statt ESP-Easy kann auch Tasmota. In diesem Fall funktionieren dann aber die unten erwähnten HTTP-Befehle nicht mehr und müssen durch passende Befehle für Tasmota ersetzt werden.
Schaltplan
Der Rauchmelder wird über einen Optokoppler und zwei Widerständen an den ESP8266 angeschlossen. Für den DS18B20 wird nur ein Pull-Up Widerstand benötigt.
Die Schaltung lässt sich relativ leicht auf einer Loch-Raster-Platine zusammen löten.
Nachdem mein Prototyp funktionierte, habe ich eine Platine designt, die auf den D1-Mini passt, und habe sie anschließend für unter 10€ produzieren lassen.
Steuerung
Die relevante Konfigurationen für ESP-Easy sind:
On System#Boot do //When the ESP boots, do
Publish %sysname%/IP,%ip%
endon
On Rauchmelder#Alaram=1 do
Publish %sysname%/log,Rauchalarm
Publish comm/toSven/,[3D Drucker] Rauchalarm
SendToHTTP 192.168.2.215,80,/?cmd=event,switch_off
endon
On Rauchmelder#Airsensor>600 do
Publish %sysname%/log,Airsensor
Publish comm/toSven/,[3D Drucker] Airsensor
SendToHTTP 192.168.2.215,80,/?cmd=event,switch_off
endon
On Temp#Temp>50 do
Publish %sysname%/log,Temp to high
Publish comm/toSven/,[3D Drucker] Temp>50
endon
Die Regeln sind relativ einfach.
Falls der Rauchmelder sich aktiviert (Rauchmelder#Alaram=1), werden zwei Nachrichten per MQTT (Publish) verschickt. Die zweite Nachricht führt bei meinem konfigurierten NodeRed dazu, dass ich eine SMS auf mein Handy erhalte und nochmal per Telegramm informiert werde. Der SendToHttp sorgt dafür, dass die Steckdose ausgeschalten wird.
Die Regel für den Luftsensor funktioniert analog.
Den Temperatursensor sende im Moment mir eine SMS, wenn die Temperatur über 50°C steigt.
Zwischenfazit
Die Lösung mit dem Rauchmelder funktioniert wunderbar.
Meine Hoffnung bzgl. den MQ-135 und MQ-2(*) hat sich bislang noch nicht bewahrheitet.
Und beim Temperatursensor fehlt mir im Moment noch die Idee, wo ich ihn sinnvollerweise montieren soll.