Mit Wago, EnOcean und Android eine eigene Smart Home Anwendung erstellen

EnOcean Smart Home

Das umfangreiche Smart Home Tutorial

Aktuell in Kotlin und Codesys3!

enocean logo

In meinem neuen 3 teiligen EnOcean Smart Home Tutorial zeige ich Ihnen, wie Sie mit der EnOcean Funktechnologie, einem Wago Controller, Android Studio und natürlich viel Spaß am Programmieren und Basteln, Ihre eigene Smart Home Anwendung erstellen können. Ihr Smart Home Selbstbausatz!

 

Die Funktion

Energiewerte erfassen

Um sinnvoll mit dem Energiesparen beginnen zu können, ist es nötig zu wissen, wie mein aktueller Energieverbrauch aussieht. Diesen Überblick erhalte ich einmal im Jahr in Form einer Abrechnung oder ich gehe mit Zettel und Stift in den Keller und notiere meine Stromzählerwerte. Besser wäre es den Verbrauch unmittelbar abzulesen und die Werte mit anderen Tagen vergleichen zu könnenZusammenfassung Energieverbrauch.

Ansicht EnergiezaehlerMit meiner Smart Home Anwendung sehen Sie sofort den aktuellen Zählerstand und erhalten eine tägliche Zusammenfassung der Zählerstände. Das hat den Vorteil, dass Sie ihr Verhalten gezielt anpassen können, da Sie sofort erkennen was zu einem hohen Stromverbrauch geführt hat. Dann nehmen Sie vielleicht beim nächsten Mal den Besen, anstatt den Staubsauger anzuschmeißen oder machen den Wasserkocher nur so voll wie nötig.

Ein weiterer Vorteil ist, Sie sehen den Stromverbaruch gleich in Euro. Das schärft das Verständnis für den aktuellen Verbrauch. Eine Angabe in kWh ist erstmal nur eine Zahl die man noch nicht gleich mit einer Geldausgabe verbindet.

Natürlich können Sie auch aus dem Urlaub verfolgen wo der aktuelle Stromverbrauch liegt und können noch einem Nachbarn bescheid geben, mit der bitte noch das Licht in der Wäschekammer auszuschalten.

Lassen Sie sich an offene Fenster erinnern!

Durch die Anwendung erkennen Sie offene Fenster, bevor Sie das Haus verlassen. Mit einem Blick auf Ihr Handy oder das fest installierte Tablet können Sie sehen ob sich im Haus noch offene oder angekippte Fenster befinden. So sorgen Sie für mehr Sicherheit, verschwenden keine Energie und schonen die Umwelt.

Update: In der aktuellen Version erhalten Sie eine Pushnachricht auf Ihr Handy falls noch ein Fenster geöffnet ist und Sie das Haus verlassen haben.

Das ist aber noch nicht alles!

Ich bin mir sicher, es ist Ihnen oder Ihren Bekannten bereits so ergangen: Sie gehen Duschen und öffnen wie gewohnt nach dem Duschen Ihr Fenster, um für eine ordentliche Belüftung zu sorgen und die Luftfeuchtigkeit aus dem Raum zu bekommen. Nach mehreren Stunden fällt Ihnen mit Schrecken ein, dass das Fenster bei 2°C Außentemperatur immer noch geöffnet ist. Somit hat Ihr Bad jetzt eine ähnliche Zimmertemperatur wie die Außentemperatur und die Heizung arbeitet auf Anschlag, bis die Normaltemperatur wiederhergestellt ist. Die Anwendung alarmiert Sie daher zuverlässig nach der von Ihnen eingestellten individuellen Öffnungszeit für die Fenster und verhindert so das ungewollte Auskühlen der Räume.

Die EnOcean Smart Home Anwendung beinhaltet einen Wochenschaltplan den Sie individuell für jeden Wochentag anpassen können. Haben Sie z.B. einen Raum, der tagsüber zum Arbeiten oder zum Spielen benutzt wird und in der Nacht zum Schlafen? Dann legen Sie sich Ihre Wohlfühltemperatur tagsüber auf z.B. 22,5°C fest und lassen die Temperatur ab 22:00 Uhr auf 19°C absenken. So haben Sie eine angenehm kühle Schlaftemperatur und können zum Schlafen auch das Fenster ankippen.

Genauso kann die Temperatur abgesenkt werden, wenn der letzte die Wohnung am Morgen verlassen hat und wird 1 Stunde bevor der erste wieder eintrifft hochgeheizt.

Sie können den Zustand Ihrer Wohnung auf einen Blick erfassen und behalten so stets den Überblick. Auch von Unterwegs!

Apropos Sicherheit!

Falls Sie mal nicht daheim sind und es wird ein Fenster geöffnet, erhalten Sie eine Pushnachricht auf Ihr Smartphone und können so schnell reagieren und entsprechende Maßnahmen einleiten.

Einstellungen auswerten

Die besten Einstellungen nützen aber wenig, wenn Sie nicht sehen ob Ihre Maßnahmen Wirkung zeigen. Ihre vorgenommenen Einstellungen (Solltemperaturen, Anwesenheitszeiten etc.) können Sie täglich auswerten und erfassen die Heizdauer und die Einschalthäufigkeit der Heizung. So können Sie sehen ob die Änderungen wirken oder ob Sie eventuell Anpassungen vornehmen sollten und müssen nicht bis zur Jahresabrechnung warten.

Der Einbau

Der Einbau erfolgt mühelos auch in bereits vorhandenem Wohnraum. Der Einsatz der EnOcean Funktechnologie erspart Ihnen das Verlegen der Busleitungen. Es ist (je nach Aufbau) kein Schlitzen oder Bohren notwendig. Falls Sie Ihr Eigentum verkaufen oder Mieter sind, können Sie die Anlage auch wieder sauber zurückbauen. Sie müssen nur die Funksensoren von der Wand entfernen und die originalen Stellventile des Heizkreisverteilers wieder aufsetzen.

Durch die batterielosen Funksensoren ersparen Sie sich den ständigen Austausch der Batterien und haben so nur geringe Wartungskosten.

Der Weg

Bis Ihre EnOcean Smart Home Anwendung das alles kann, ist noch ein bisschen Arbeit nötig. Die SPS muss (elektrisch) zum Leben erweckt werden und Sie dürfen noch ein paar Stunden Programmierarbeit investieren. Doch das Ergebnis, da bin ich mir sicher, wird Sie für all diese Mühen entschädigen.

Der Start

wago enocean smarthome

Keine Angst die Hardwareanforderungen, um mit mir gemeinsam das Projekt zu erstellen, sind geringer als Sie glauben. Stellen Sie sich folgende Fragen:

  • Müssen Sie im ersten Schritt bereits alle Räume überwachen?
  • Ist es nötig, die Heizung gleich anzusteuern?
  • Kann es ein wenig warten bis Sie die Daten außerhalb Ihrer Wohnung abrufen können?
  • Wird die Benachrichtigung per Pushnachricht denn gleich benötigt?

In den meisten Fällen können Sie alle Fragen mit ‚Nein‘ beantworten. Es reicht erst einmal alles lokal zu testen und die Heizungssteuerung so zu belassen wie diese aktuell ist. Nehmen Sie sich Zeit für Ihr Projekt.

Dafür benötigen sie:

Für die ersten 3 Positionen kostet das einen mittleren 3-stelligen Betrag. Es gibt aber viele Angebote auf diversen online Auktionshäusern. Die beiden letzten Positionen dürften Sie eventuell im Haushalt finden und die Software ist frei verfügbar.

Die digitale Ausgangskarte sowie die analoge Eingangskarte können Sie zum Start beruhigt weglassen und schauen sich im Programm an, ob die Schaltausgänge schalten. Den Analogwert können Sie durch einen Ersatzwert simulieren.

Der PHP-Teil kann lokal programmiert werden und Sie können sich in aller Ruhe nach einem Hosting Anbieter umschauen.

Sie sehen Sie können ganz individuell mit dem Projekt beginnen und es je nach Bedarf weiter aufrüsten.

Die Programmiertechnik

In der neusten Version ist die Anwendung mit Kotlin für die Android Darstellung, sowie im e!COCKPIT, welches auf Codesys3 basiert, programmiert. So ist die Anwendung fit für zukünftige Anpassungen.

Wenn aber noch eine ältere Wago Steuerung aus der 750 Reihe zum Einsatz kommt, ist es auch kein Problem, die Originalversion habe ich mit einer 750-881 Steuerung im Codesys2.3 erstellt und diese läuft seit ca. 5 JAhren völlig problemslos.

Teil 1 SPS

  • Wago eCOCKPIT!

  • Codesys3

  • Codesys2.3 Programmierumgebung

  • Modbus TCP/IP Kommunikation

  • Wiedervervendbare Bausteine

  • Strukturierter Text (SCL, ST)

  • Kontaktplan (Ladder Logic)

  • EnOcean Empfang

  • EnOcean Raumtemperatur- und Feuchtefühler

  • Enocan Fenstergriffe

  • EnOcean Diagnosesoftware

  • Kalenderfunktion

  • Daten per HTTP an Server senden

  • uvm.

Teil 2 PHP

  • MySQL

  • PHP

  • Modbus Daten empfangen

  • Empfangsdaten formatieren

  • Mittelwerte und gewichteten Mittelwert

  • Min- und Maxwerte ermitteln

  • Zusammenfassung erstellen

  • uvm.

Teil 3 Android

  • Java

  • Kotlin

  • Android Studio 4

  • Constraint Layout

  • Mit Menüs arbeiten

  • Fragments einsetzen

  • Sliden mit dem ViewPager2

  • RecyclerView einsetzen

  • Modbus lesen und in die SPS schreiben

  • Wochenkalender anlegen

  • HTTP-Abrufe der Severdaten

  • uvm

Der Kurs

Wenn Sie mehr über diese Anwendung erfahren möchten, können Sie bereits hier ein paar Lektionen anschauen. In dem sehr wahrscheinlichen Fall, dass Sie jetzt die Anwendung unbedingt programmieren möchten, haben Sie mehere Möglichkeiten:

1. Sie buchen den kompletten Kurs. Also von der SPS Programmierung über PHP zur Androis Anwendung. Oder..

2. Sie können sich gezielt Themenschwerpunkte heraussuchen und einzelne Zeitpakete buchen.

Nur eins möchte ich noch erwähnen. Ich sehe mich selbst als praktischen Programmierer. Das heißt, dass ich nicht auf alle Programmiertechniken eine fachgerechte Hintergrundinformation habe. Besonderes in der Android Entwicklung. Wer schon selbst Erfahrung mit der Andtroid Programmierung sammlen konnte, weiß, dass von einem Tag auf den anderen Sachen veraltet (deprecated) sind und einen neuen Ansatz benötigen. Dazu nutze ich häufig Codeschnipsel die ich in Foren finde und die für meine Zwecke funktionieren.

Ein KFZ Meister weiß ja auch nicht zu 100% wie eine Steuergerät im Auto zuammen gelötet wurde. Es funktioniert und er nutzt es 😉