Steuerung für eine Zentrale Lüftungsanlage (KWL Kontrollierte Wohnraumlüftung)

Begonnen von SvenJust, 24 Januar 2018, 11:16:05

Vorheriges Thema - Nächstes Thema

SvenJust

Hallo!

Auf github liegt eine fehlerkorrigierte Version der Steuerung. Jetzt werden der CO2 und VOC Wert regelmäßig per Mqtt übertragen. Die Versionsnummer auf dem Display ist auf v0.16 hochgezählt.

https://github.com/svenjust/room-ventilation-system/tree/v0.16

VG Sven

FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

Starsurfer

Moin,
mal wieder eine kleine Rückmeldung. Die Anlage läuft immer noch zufriedenstellend, allerdings ist der Einsatz eines TFT nicht optimal. Bei mir haben sich mittlerweile die Texte, die sich selten ändern ins Display gebrannt  ;D
Ich bin außerdem am überlegen, die Steuerung auf einen nodemcu umzubauen.
Grüße Sascha
FHEM Server: Fujitsu Esprimo q920 + LaCrosseGateway + HM-MOD-RPI-PCB WLAN + ConBee
HomeMatic HM-CC-RT-DN - Sonoff Tasmota
LaCrosse TX29DTH - Innr SP120 - Osram Smart+ Plug
Arduino Mega - MQTT - Pluggit 300
https://www.diy-robot-lawn-mower.com

SvenJust

Hallo Sascha!

Zitat von: Starsurfer am 19 Juli 2018, 07:35:31
Bei mir haben sich mittlerweile die Texte, die sich selten ändern ins Display gebrannt  ;D
Das schreit nach einem Bildschirmschoner  ::). Die Beleuchtung des Displays lässt sich mit Software leider nicht anpassen (hat aber auch nichts mit dem Einbrennen zu tun). Den Inhalt könnte man vom Display nehmen oder nach festen Zeiten invertieren, quasi ein Negativ anzeigen. Bei Berührung des Touch könnte die normale Anzeige wieder kommen. Ich schaue mir das bei Gelegenheit mal an.

Wie stark ist denn der Einbrenneffekt? Kannst Du ein Foto machen?

Zitat von: Starsurfer am 19 Juli 2018, 07:35:31
Ich bin außerdem am überlegen, die Steuerung auf einen nodemcu umzubauen.
Das hört sich interessant an. Aktuell ist ein weiterer Mitstreiter dabei, den aktuellen Code umzubauen und zu modularisieren. Bevor Du den Code auf einen nodemcu portierst, könnte eine Absprache sinnvoll sein. Aktuell sind aber noch keine neuen Funktionen implementiert. Wenn Du möchtest, kann ich Dir per PN das Repository mit dem aktuellen Code nennen.

VG Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

Starsurfer

Foto kann ich bei Gelegenheit mal machen, bin aber zur Zeit im Urlaub. Wenn du mir das schicken könntest, wäre das super, man muss das Rad ja nicht doppelt erfinden.
FHEM Server: Fujitsu Esprimo q920 + LaCrosseGateway + HM-MOD-RPI-PCB WLAN + ConBee
HomeMatic HM-CC-RT-DN - Sonoff Tasmota
LaCrosse TX29DTH - Innr SP120 - Osram Smart+ Plug
Arduino Mega - MQTT - Pluggit 300
https://www.diy-robot-lawn-mower.com

schreter

Hi,

Zitat von: SvenJust am 19 Juli 2018, 09:12:08
Das hört sich interessant an. Aktuell ist ein weiterer Mitstreiter dabei, den aktuellen Code umzubauen und zu modularisieren. Bevor Du den Code auf einen nodemcu portierst, könnte eine Absprache sinnvoll sein. Aktuell sind aber noch keine neuen Funktionen implementiert. Wenn Du möchtest, kann ich Dir per PN das Repository mit dem aktuellen Code nennen.

Ich nehme an, dabei meinte Sven mich. Die Repository mit momentan funktionierendem Code ist hier: https://github.com/schreter/room-ventilation-system/tree/develop (Fork von Sven's Repo, mit dem Umbau/Modularisierung). Ich habe dort ebenfalls die Kommunikation des VOC Sensors eingebaut, da sie fehlte.

Gerade bin ich dabei, TFT Modul noch etwas umzubauen. Es wird allerdings dauern, da ich ab 27. für drei Wochen im Urlaub bin. Das mit Hintergrundbeleuchtung, könnte man es vielleicht irgendwie bastelmäßig von aussen ansteuern (z.B., extra Pin löten oder so)? Meins ist auch immer sehr hell und es wird vor allem heiss. Einbrennen sollten sich TFTs eigentlich nicht.

In dem Code ist ausser Refactoring, diversen Verbesserungen, Compilerwarnungen fixen, Watchdog um im Fall des Falles die Anlage durchzustarten, usw., bisher nur eine grosse neue Feature implementiert - der ProgramManager um die Zeitprogrammierung zu ermöglichen (Docs sind ebenfalls in dem Repo). Ich bastle noch an dem letzten Feature für ProgramManager um die Urlaubsprogrammierung zu erleichtern. Die Zeit wird dabei von NTP Server geholt (ebenfalls schon drin). Das Ganze läuft bei mir schon seit ca. 2 Wochen zuverlässig, der neueste Stand seit gestern.

Und, man kann auch per UserConfig entscheiden, ob die Werte in MQTT Broker retained werden oder nicht (aber das ist für FHEM und andere Automatisierungssysteme eher weniger relevant). Ich nutze es um die Werte schön in einem App auf dem Telefon anzuzeigen und die Lüftungsstufe von dort aus steuern zu können.

Gruss,

Ivan

SvenJust

FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

schreter

Hi,

FYI, ich habe das Refactoring grossteils abgeschlossen und das aktuelle Stand der Software ist unter https://github.com/schreter/room-ventilation-system zu finden (master und develop Branch, momentan beide gleich). Da sind auch einige Screenshots von TFT Display der Steuerung. Alle Änderungen von Sven's master Branch sind da auch integriert.

Zusätzlich gibt es da einiges Neues, z.B. Programmmanager, um mehrere Sätze an Zeitprogrammen zu definieren (z.B., normal/Urlaub). Zeit wird von NTP Server synchronisiert. Die meisten Einstellungen kann man jetzt auch über TFT machen. Und generell, TFT Anzeige ist überarbeitet, um die Messwerte alle auf Hauptbildschirm grafisch zu zeigen. Nach 5m Timeout wird das Display schwarz geschaltet (leider kann man nicht die Hintergrundbeleuchtung ausschalten).

Ich habe auch Watchdog Timer eingebaut. Falls die Steuerung sich aus irgendwelchen Grund aufhängen sollte, wird sie einfach neu gestartet (und Crashreport in EEPROM gespeichert, den man dann per MQTT lesen kann).

Intern sind die Regeln für die Steuerung der Ventilatoren und Bypasses gleich geblieben (nur mit Zusatz des Programmmanagers).

Also, falls jemand testen möchte, nur zu. Bei mir läuft die neueste Version ohne TFT Änderungen seit mehr als 1 Monat problemlos, mit TFT Refactoring seit ein paar Tagen.

Noch eine Kleinigkeit: ich habe bei mir das Auslesen des DHT Sensors korrigiert. Die Originallib hat ein 250ms + 20ms Delay, was um Größenordnungen mehr ist als notwendig. Ich habe es bei mir in DHT::read() runtergesetzt auf 5ms und 2ms, was immer noch reichlich über Minimalanforderungen des DHT Sensors liegt und trotzdem sicher funktioniert.

Gruss,

Ivan

herr_frei

Hi,

ich bin gerade dabei, mein Pluggit-Anlage (P300) auf die neue Steuerung umzurüsten. Erst einmal vielen Dank an alle, die das Projekt vorangetrieben haben!

Meine Hardware sieht etwas anders aus, da ich die Steuerung ohne TFT im inneren des Gerätes betreiben will. Anbei ein paar Fotos meiner zwei Platinen (1x für 220V->12V/5V plus Lüfter/Bypass-Anschluss, 1x für den Arduino für Signaleingänge und Relaisausgänge). Ich habe auch einen Anschluss für die Drucksensoren vorgesehen und getestet. Die Software von Ivan läuft mit ein paar Änderungen (Drucksensoren hinzugefügt, TFT per ifdef "entfernt"). Frage: Soll ich diese Änderungen als Pull Request bereitstellen?

Vor dem Einbau habe ich noch eine grundlegende Frage zu  Positionierung und Einbau der Temperatursensoren: In meinem Gerät sind die Kabel im hinteren Teil verlegt, an den man nur mit Verrenkungen herankommt. Habt ihr die Kabel ohne Abbau der Rückwand dort entlang verlegt und durch die Tüllen der vorhandenen Sensoren mit durchgeführt? Scheint für mich ziemlich schwierig zu werden. Oder gibt einen einfacheren Weg, den ich wegen Betriebsblindheit nur nicht sehe?

Torsten

SvenJust

Hallo Torsten!

Zitat von: herr_frei am 22 Oktober 2018, 09:31:13
Anbei ein paar Fotos meiner zwei Platinen (1x für 220V->12V/5V plus Lüfter/Bypass-Anschluss, 1x für den Arduino für Signaleingänge und Relaisausgänge).
Die Fotos von Deinem Aufbau sehen sehr interessant aus. Kannst Du für Deine Platinen den Schaltplan und die Gerber-Files hier bereitstellen?

Zitat von: herr_frei am 22 Oktober 2018, 09:31:13
Hi,
Ich habe auch einen Anschluss für die Drucksensoren vorgesehen und getestet.
Welche Drucksensoren hast Du verwendet?

Zitat von: herr_frei am 22 Oktober 2018, 09:31:13
Oder gibt einen einfacheren Weg, den ich wegen Betriebsblindheit nur nicht sehe?
Ich habe Löcher an geeignete Stellen gebohrt und die Temperatursensoren in die Nähe der vorhandenen Sensoren gebaut, es schien mir einfacher.

VG Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

herr_frei

Hallo Sven,

Schaltplan, Platinenentwurf und Gerber-Dateien werde ich bei Github einstellen. Wobei noch ein paar kleinere Änderungen notwendig sind (z.B. sind die von mir vorgesehenen I2C-Pins durch das Ethernet-Shield nicht zugänglich, mancher Bestückungsaufdruck ist durch die verwendeten Buchsen tlw. verdeckt und die Löcher für den AC/DC-Wandler für 12V musste ich etwas aufbohren). Ich habe auch noch einige der Platinen, falls jemand trotzdem Interesse hat...

Die Drucksensoren sind die Originalsensoren der Anlage, über einen einfachen Spannungsteiler (der die Messwerte aber etwas verfälscht) sind die Werte in den Bereich 1..5V herunterskaliert.

Zu den Sensoren: Hast du neue Tüllen eingezogen oder die Sensoren eingeklebt? Und die Kabel hinten lang ziehen können?

Grüße,
Torsten

SvenJust

Zitat von: herr_frei am 22 Oktober 2018, 11:11:05
Ich habe auch noch einige der Platinen, falls jemand trotzdem Interesse hat...
Ich habe Interesse...


Zitat von: herr_frei am 22 Oktober 2018, 11:11:05
Hast du neue Tüllen eingezogen oder die Sensoren eingeklebt?
Ich habe Löcher gebohrt, Gummitüllen eingesteckt und anschließend die Sensoren eingeschoben. Heute Abend kann ich Fotos hochladen.

VG Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

herr_frei

Zitat von: SvenJust am 22 Oktober 2018, 11:44:50
Ich habe Interesse...

Sehr schön. Ich habe auch noch ein paar Bauteile, die verbaut sind, für die übrigen Platinen da (Sammelbestellungen eben...). Ich suche das mal raus und stelle es in den Thread.

Zitat von: SvenJust am 22 Oktober 2018, 11:44:50
Ich habe Löcher gebohrt, Gummitüllen eingesteckt und anschließend die Sensoren eingeschoben. Heute Abend kann ich Fotos hochladen.

Ein paar Fotos wären wirklich hilfreich, Danke schon mal!

Torsten

schreter

Zitat von: herr_frei am 22 Oktober 2018, 09:31:13
Meine Hardware sieht etwas anders aus, da ich die Steuerung ohne TFT im inneren des Gerätes betreiben will. Anbei ein paar Fotos meiner zwei Platinen (1x für 220V->12V/5V plus Lüfter/Bypass-Anschluss, 1x für den Arduino für Signaleingänge und Relaisausgänge). Ich habe auch einen Anschluss für die Drucksensoren vorgesehen und getestet. Die Software von Ivan läuft mit ein paar Änderungen (Drucksensoren hinzugefügt, TFT per ifdef "entfernt"). Frage: Soll ich diese Änderungen als Pull Request bereitstellen?

Gerne. Ich habe auch überlegt, Drucksensoren einzubauen. Allerdings bin ich noch nicht dazu gekommen. Ich würde aber lieber neuere Art Sensoren einsetzen (die analogen in meiner Anlage sind kaputt, zumindest einer davon, und sie werden nicht mehr hergestellt).

Zitat von: herr_frei am 22 Oktober 2018, 09:31:13
Vor dem Einbau habe ich noch eine grundlegende Frage zu  Positionierung und Einbau der Temperatursensoren: In meinem Gerät sind die Kabel im hinteren Teil verlegt, an den man nur mit Verrenkungen herankommt. Habt ihr die Kabel ohne Abbau der Rückwand dort entlang verlegt und durch die Tüllen der vorhandenen Sensoren mit durchgeführt? Scheint für mich ziemlich schwierig zu werden. Oder gibt einen einfacheren Weg, den ich wegen Betriebsblindheit nur nicht sehe?

Bei mir wurden ganz am Anfang die Platine und Sensoren getauscht. Dabei hat der Techniker den Wärmetauscher ausgebaut und einfach in hinterer Wand in dem Schaumstoff ein Loch ca. in der Größe des Wärmetauschers ausgeschnitten. Da ist offensichtlich kein Blech dahinter. Dadurch kommt man recht Komfortabel an die Löcher von hinten und kann einfach die vorhandenen Sensoren austauschen. So habe ich das auch gemacht. Die von Sven empfohlene Sensoren passen perfekt in die vorhandene Löcher.

BTW, meine Platine ist auch in der Anlage eingebaut. Ich habe es an einer Experimentierplatine zusammengelötet, auch so schön gestackt. TFT habe ich dann über ein 20-adriges Kabel verbunden und diesen durch einer der Löcher oben durchgeführt (sowie auch USB zum programmieren und Ethernet). TFT klebt dann von aussen magnetisch auf der Anlage.

Ivan

SvenJust

Zitat von: schreter am 22 Oktober 2018, 21:46:15
Dabei hat der Techniker den Wärmetauscher ausgebaut

BTW, der Wärmetauscher sollte jährlich ausgebaut und in der Dusche oder Badewanne mit Wasser durchgespült werden. Die evtl. vorhandenen Staubpartikel oder kleinen Tiere (Fliegen) werden so ausgespült und der Wärmetauscher kann sich nicht zusetzen... Der Aus- und Wiedereinbau ist einfach. Gehäuse öffnen, oben die Schiene mit Schaumstoff entfernen, dann den Wärmetauscher durch leichte Bewegung lockern und anschließend vorsichtig rausziehen. Reinigen und trocken schütteln, Einbau umgekehrte Reihenfolge.

Die Lüftungsanlage vor dem Öffnen und insbesondere vor den Arbeiten an der Elektronik unbedingt vom Netz trennen, an der Originalplatine liegt bei geöffneter Anlage 230V Spannung an.

VG Sven
FTUI, Raspberry PI/SSD, CUL CC1101, HMLAN, 10x HM-LC-Bl1PBU-FM, HM-LC-Sw4-WM (KWL Pluggit P300), HM-WDS30-OT2-SM (Sonnensensor), HM-Sec-SCo, LW-12 Wifi LED, CUL Selbstbau nanoCUL 433 (IT), Arduino (S0-Stromverbrauch), OW DS2480 (OWX_ASYNC) 8x DS18B20, MQTT (Fröling P4), MYSENSORS (Roto Rollläden)

herr_frei

Zitat von: schreter am 22 Oktober 2018, 21:46:15
Gerne. Ich habe auch überlegt, Drucksensoren einzubauen. Allerdings bin ich noch nicht dazu gekommen. Ich würde aber lieber neuere Art Sensoren einsetzen (die analogen in meiner Anlage sind kaputt, zumindest einer davon, und sie werden nicht mehr hergestellt).
Ich habe in meinem Fork drei Commits gemacht, wobei die letzten zwei für die Drucksensoren sind und der erste ist für den TFT-losen Betrieb. Habe aber nur einen Pull Request anlegen können (bin mit Github nicht so vertraut...).

Zitat von: schreter am 22 Oktober 2018, 21:46:15
Bei mir wurden ganz am Anfang die Platine und Sensoren getauscht. Dabei hat der Techniker den Wärmetauscher ausgebaut und einfach in hinterer Wand in dem Schaumstoff ein Loch ca. in der Größe des Wärmetauschers ausgeschnitten. Da ist offensichtlich kein Blech dahinter. Dadurch kommt man recht Komfortabel an die Löcher von hinten und kann einfach die vorhandenen Sensoren austauschen. So habe ich das auch gemacht. Die von Sven empfohlene Sensoren passen perfekt in die vorhandene Löcher.
Danke, das werde ich mir bei Gelegenheit mal anschauen!

Zitat von: SvenJust am 23 Oktober 2018, 08:57:57
BTW, der Wärmetauscher sollte jährlich ausgebaut und in der Dusche oder Badewanne mit Wasser durchgespült werden. Die evtl. vorhandenen Staubpartikel oder kleinen Tiere (Fliegen) werden so ausgespült und der Wärmetauscher kann sich nicht zusetzen... Der Aus- und Wiedereinbau ist einfach. Gehäuse öffnen, oben die Schiene mit Schaumstoff entfernen, dann den Wärmetauscher durch leichte Bewegung lockern und anschließend vorsichtig rausziehen. Reinigen und trocken schütteln, Einbau umgekehrte Reihenfolge.
Wusste ich auch nicht, danke!

Ich habe die KiCad-Dateien meiner Platinen unter https://github.com/herrfrei/pluggit-ctrl abgelegt. Wird bestimmt noch etwas fehlen, aber als Anfang reicht es hoffentlich.

Torsten