Hier möchte ich meine neueste Errungenschaft vorstellen.

Einleitung

Im Zuge einer Badsanierung musste der Fußboden(Estrich) erneuert werden. Aus deisem Grunde wurde eine neue Fußbodenheizung in Bad und Dusche eingebaut. Ziel war es neben warmen Füßen auch die vorhandene Heizleistung  der "normalen" Heizkörper zu erhöhen. Durch die Brennwerttechnik sinken die Heizwassertemperaturen entsprechend.

Zum hydraulischen Abgleich des gesamten Heizkreislaufs wollte ich im ersten Schritt die Temperaturspreizung der vorhanden Heizkörper und natürlcih auch der neuen Fußbodenheizkreise erfassen.

Hierzu habe ich auf Basis des ESP8266 WLAN Moduls kleine Temperaturmessknoten entwickelt die im Haus verteilt die Vorlauf und Rücklauftemperaturen messen und drahtlos an einen Server übermitteln und in einer eigenen Datenbank ablegen. Jetzt kann man mittels Grafana die Temperaturdaten grafisch anzeigen lassen und auswerten. So habe ich relativ schnell herausgefunden das Heizkreise im Untergeschoss viel zuviel Heizleistung bekamen und dadurch im Obergeschoss zuwenig Heizleistung ankam.

Datenerfassung

 

Hier stelle ich ein kleines Wocheendprojekt zur Messung von Licht, Temperatur und Luftdruck vor. Ursprünglich mal vorgesehen um Lichtabhängig Relais zu schalten, dient es jetzt als kleine Wetterstation. Der Raspberry kommuniziert per I2C mit  einem Lichtsensor TLS2561 sowie mit dem Boschluftdruck und Temperatursensor GY/BM280, konvertiert die Daten in physikalisache Werte und schreibt diese jede Minute in eine SQL Datenbank (MySQL).

Der Raspberry III hat ja einen eingebauten WLAN-Chip, so kann man einen Hotspot aufbauen um per Tablet (HTML, JAVASCRIPT) mal eben die aktuellen und historischen Daten anzeigen zu lassen.

Die Sensoren haben ich als preiswerte Breakoutboards beschaft, wobei die Kosten sehr überschaulich sind. Zusätzlich habe ich dem Raspberry noch eine RTC spendiert, damit die Daten auch bei Stromausfall zeitrichtig erfasst werden.

Im Bild sieht man die 3 Breakout-Boards mit etwas Verkabelung.

Hier jetzt die Details des Aufbaus.

Die Downloads fürs Programm und die Verkabelung folgen noch.

Hier kommt die erste Version meiner Rolladenkontroller deren Entwicklung ich in 2008 angefangen hatte. Diese waren 1-kanalig für einzelne verteilte Jalousien und Rolladen.

Dies war die allererste Platine die ich auf Basis des ATMEGA 644 Prozessors entworfen hatte. Zwar mit separatem CAN Controller, funktioniert aber seit vielen Jahren sehr stabil.

Im Bild sieht man die Kunststoffisolierung um den Berührungsschutz zu verbessern. Die Platine muss allerdings unbedingt in ein allseitig geschlossenenes Kunststoffgehäuse eingebaut werden. Als Feinsicherung darf kein höherer Wert als 4A gewählt werden.

Die Platine ist so gestaltet, dass sie in Gehäuse der Firma Bopla ET206 passen - dazu müssen aber die Kunststoffstehbolzen innerhalb des Gehäuses gekürzt werden.

Nachfolgend die Unterlagen zum Nachbau der Schaltung. (Wie immer sind alle Informationen ohne Gewähr für die Richtigkeit und Vollständigkeit ;-)) Verwendung auf eigene Gefahr, und nur für Elektrofachkräfte.

Hier der Schaltplan der Schaltung.

Die Leiterkarte als BRD-File:

Und noch die Teileliste:

Um Energie zu sparen kann die Schaltung auch mit 9V DC statt mit 12V betrieben werden, dann muss der kleine Linearregler nicht soviel Leistung verbraten.

Das Flashfile zur Programmierung findet sich hier:

 Das Flashfile muss mit AVRdude und einem AVRISP Adapter programmiert werden.

Bevor man das System verwenden kann, muss man noch per RS232-Terminalprogramm die Parameter des Controllers wie z.B. Fahrzeiten, CAN Adressen, Gruppen usw. festlegen und speichern. Dies ist aber nur einmalig erforderlich.

MYSQL Auswertungen

Die Heizungsdaten die das Infrarotinterface der Vitotronicsteuerung im Laufe der Zeit geliefert hat stehen mit eigenem Label und Wert in einer MySQL Datenbank. Diese Daten sollte man aber auch auswerten um zu sehen, wie wirtschaftlich die Heizung arbeitet. Wieviel Energie habe ich verbraucht ? oder wie hoch war der Solarertrag diesen Monat sind interessante Informationen. Hier stelle ich jetzt so nach und nach die notwendigen Auswertungen als kleine PHP-Scripts ein.

SOLARERTRAG

Eine Liste der täglichen Solarerträge bekommt man mit folgender MySQl Abfrage:

  .syntaxhighlighter { 
     overflow-y: hidden !important; 
     overflow-x: auto !important; 
width: 200px !important
  }


>SELECT cast(timestamp as DATE), min(value),max(value),max(value)-min(value) from `vito_values` WHERE  label_id = '0x6560' group by 1 order by 1 LIMIT 0,365

Mit etwas PHP und JPGraph kann man dann die Auswertung erstellen und im Webbrowser darstellen. Man sieht jetzt z.B. dass man innerhalb von 40 Tagen mehr als 1 Megawatt Energie vom Dach in den Speicher holt. Vorausgesetzt die Heizungssteuerung rechnet richtig. Das wäre nur mit dem kleinen Vitotronic Display nur mühsam von Hand auszuwerten.

Hier findet sich der PHP-Quellcode zum Download.

Letzte bzw. neueste Werte auslesen: Die letzten Werte für alle Labels bekommt man mit folgendem Query:

SELECT vito_values.label_id, vito_values.value,vito_values.unit,max(vito_values.timestamp) FROM `vito_values`
group by vito_values.label_id order by label_id
// und hier die letzten Werte mit den dazugehörigen Labelnamen:
SELECT vito_values.label_id, vito_values.value,vito_values.unit,max(vito_values.timestamp) as date, vito_labels.label_name FROM `vito_values` 
left join vito_labels on vito_values.label_id = vito_labels.label_id group by vito_values.label_id

Hier gibts noch ein Beispiel für eine schöne grafische interaktive Darstellung mit dygraphs:

Auswertung Viessmann Heizungsdaten

 

Zur Steuerung einer ganzen Gruppe mit bis zu 4 Jalousien oder Rolladen habe ich jetzt einen Kontroller auf Basis des Microprozessors STM32F103 entwickelt.Diese CPU hat viele IOs, genügend Flashspeicher bis zu 512kB und eingebauten CAN-Bus Controller. Zur zentralen Steuerung per Hausbus/CAN-Bus) ist dies natürlich ideal. Der Ruhestromverbrauch liegt bei ca. 17mA. Die Schaltung verwendet einen kleinen Step-Down Regler LT1933 von Linear Technologies um aus der 12V-Versorgung durch die Buskabel die benötigten 3.3Volt für den Prozessor zu gewinnen.

Die Ansteuerung der 8 Relais efolgt wahlweise über klassische NPN-Transistoren oder über moderne Digitaltransistoren von Infineon BCR135.

Zur lokalen Bedienung hat die Schaltung 4*2 Tastereingänge um jede Jalousie einzeln ab oder auf zu steuern, so kann neben jeder Jalousie ein lokaler Schalter montiert werden um die Jalousien auch bei Ausfall der zentralen Steuerung zu bedienen.

Als Besonderheit habe ich dieser Schaltung neben den vier einzelnen Schaltereingängen noch zwei zusätzliche Master-Eingänge spendiert. Über diesen Mastereingang kann man an einem zentralen Schalter (neben dem Lichtschalter) direkt an der Tür - alle Jalousien gleichzeitig steuern. Dies erschien mir sinnvoll um nicht zu jeder Jalousie einezln hinlaufen zu müssen.

Über den CAN-Bus-Eingang kann die zentrale Haussteuerung jeden Kanal einzeln oder auch als Teil einer Gruppe kommandieren. Die Firmware kann per RS232 bzw. USB-Anschluss parametriert werden. Hierzu ist nur die sogenannte Aktor-Id (also CAN-Bus Adresse) einzustellen. Alle weiteren Parameter kann man dann über den CAN-Bus einstellen - es geht aber auch per RS232/USB. Die wesentlichen Parameter sind die Gruppenadresse, sowie die Fahrzeiten für komplette Auf- oder Abfahrten. Als Besonderheit kann man auch die Zeit programmnieren die eine Rolade oder Jalousie benötigt um zur Häfte zu fahren. Dieser Modus wir verwendet wenn man sowohl Ab- als auch Auf-Taste gleichzeitig drückt. Dies ist sinnvoll wenn man z.B. Rolladen auf gesperrt setzen möchte.

Als Busleitung ist nur GND, +12V, sowie CAN-H und CAN-L anzuschliessen - hier verwende ich wie überall das grüne EIB-Kabel, da es für solche Steuerungsanwendungen perfekt geeignet ist.

Hier folgen die Bilder des Controllers in zwei Versionen. Die kleine Tasterplatine habe ich nur zum Test der Software benötigt.

Durch die Schaltung mit den Sharp-Halbleiterrelais - die im Nulldurchgang schalten - sind die Snubber-Cs aber eigentlich nicht mehr nötig. Diese Schaltung funktioniert auch mit alten Rolladenmotoren da für alle Relaiskontakte auch Snubber-Cs vorgesehen sind. Aber wie gesagt die habe ich am Ende nicht mehr bestückt. Hier gibts noch einen Artikel zum Thema: Halbleiterschalter bei Rolladenmotoren.

Die Downloads für die Schaltung, die Platine und für die Firmware finden sich nachfolgend:

Und hier noch die Firmware im ELF-Format:

Nach dem Flashen erfolgt die Einstellung der Parameter, Adressen etc. über die Terminal-Schnittstelle (38400Baud). Der Einbau der Platine kann in standard Bopla-Gehäuse erfolgen.

Achtung:

Diese Schaltung ist nicht für Anfänger geeignet die keine Ausbildung im Fachbereich Elektrotechnik haben, da hier potentiell mit hohen (Netz-) Spannungen gearbeitet wird. Aufbau und Test daher unbedingt nur mit Trenntrafo. Hier gibts sowas für kleines Geld: