Shelly 3EM in Homematic einbinden - mit der Originalfirmware

VPN/Proxy erkannt

Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.

    • Offizieller Beitrag
    • Autor

    Hallo Homematic-Freunde,

    endlich ist es soweit, die Einbindung des Shelly 3EM in die Homematic. Der Shelly 3EM hat ja lange auf sich warten lassen.

    Um den Shelly 3EM in Homematic einzubinden, braucht es wie immer keine Fremdfirmware, die man flashen muß.

    Nachfolgend meine Lösung mit der Originalfirmware:

    techn. Voraussetzungen:

    • kompatibel mit den Homematic-Systemen CCU2, CCU3, Charly, sowie allen Ablegern wie RaspberryMatic und piVCCU.

    • installiertes Addon CUxD in aktueller Version

      (Das Wissen um den Umgang CUxD, wie z.B. Geräte anlegen, setze ich an dieser Stelle voraus, sonst "explodiert" diese Anleitung. Danke für's Verständnis.)


    Folgende Funktionen habe ich auf der Homematic-Seite umgesetzt:

    •  EIN / AUS-Schalten des internen Relais für u.a. externe Steuerungen
    • Aktualisierung des aktuellen Schaltzustandes in frei einstellbarem Intervall, unabhängig davon, ob die Bedienung über Homematic oder Shelly-App oder Taster erfolgt
    • Optionale Überwachung des Onlinestatus (Erreichbarkeit im WLAN)
    • Optionale Überwachung der Leistungsanzeige in W (Watt) je Phase
    • Optionale Überwachung der Spannungsanzeige in V (Volt) je Phase
    • Optionale Überwachung der Stromanzeige in A (Ampere) je Phase
    • Optionale Überwachung der bezogenen Energie in kWh (Kilowattstunden) je Phase
    • Optionale Überwachung der bezogenen Gesamtenergie in kWh (Kilowattstunden)


    Ich möchte Euch an dieser Stelle empfehlen, vor der Umsetzung mal einen Blick in diese Threads zu werfen:

    Aktuell erfolgen die Statusabfragen meiner Shellys mit beiden Möglichkeiten parallel, es läuft problemlos!

    An entsprechender Stelle in der Anleitung muss jeder für sich entscheiden, welchen Weg der Schalt-Statusüberwachung er nutzen möchte. ;)


    Die Ansicht der Anbindung:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Bild 1

    Hinweis!

    An dieser Stelle möchte ich auf Grund der Menge an Messdaten darauf hinweisen, dass es auch möglich ist die einzelnen elektrischen Größen in separaten CUxD-Geräte-Kanäle zu "sortieren". Ein/Aus ist dort ohne Funktion!

    Es muss nur darauf geachtet werden, dass die Kanäle des "CUxD (40) 16-Kanal Universalsteuerung als Schalter" in den Systemvariablen und den Skripten entsprechend zugeordnet werden!!!


    Die Umsetzung:

    (Auf die Beschreibung des Anlegens der CUxD-Geräte verzichte ich an dieser Stelle, dafür gibt es die CUxD-Doku!)


    Falls noch nicht vorhanden, bitte ein Gerät (28) System Exec anlegen! Darüber werden die Befehle abgesetzt. (Im CUxD-Exec werden keine Eintragungen gemacht!)

    Anlegen einer CUxD (40) 16-Kanal Universalsteuerung als Schalter

    (Ich nutze einen freien Kanal der angelegten Fernbedienung des Shelly EM!)

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Mit jedem Kanal des CUxD-Gerätes kann dann 1 Shelly 3EM abgebildet werden.


    Die Einstellungen der Kanäle:

    Der Shelly 3EM besitzt drei Messkanäle an denen je ein Messwandler angeschlossen werden kann.

    Achtung!: Es ist aber nur ein Relais/Schaltausgang für externe Steuerungen integriert.

    Bei der Erstellung von Szenen oder Actions ist die richtige Kanalauswahl (Kanal 0) zu beachten!

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    SWITCH|CMD_EXEC: Häkchen setzen !

    Einstellung für SWITCH|CMD_SHORT:

    Code
    wget -q -O - 'http://192.168.178.32/relay/0?turn~3doff'

    Einstellungen für SWITCH|CMD_LONG:

    Code
    wget -q -O - 'http://192.168.178.32/relay/0?turn~3don'

    IP-Adresse des Shelly 3EM jeweils anpassen !

    Damit ist der Shelly 3EM schon einsatzbereit und das Relais kann ein- und ausgeschalten werden. :)


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2020 SparkyMaster

    • Offizieller Beitrag
    • Autor

    Aktualisierung des Schaltstatus:

    Die Aktualisierung ist wichtig, damit in Homematic der Schaltzustand auch stimmt, wenn z.B. über die Shelly-App geschaltet wird.;) Vor- und Nachteile sind im in #1 verlinkten Thread beschrieben.


    Für die autom. Aktualisierung des Schaltstatus benötigen wir 1 Timer ...

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Aktualisierung alle 60 Sekunden (Zeit variabel)


    ... der das Programm zur Aktualisierung triggert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Alternativ kann auch im WENN auch auf "Timerevent" des Timers ausgelöst werden.


    Fehlt nur noch das Skript für die 1. DANN-Zeile:

    Gemäß den Hinweisen im Skript sind anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal

    CUxD-Kanal des Shelly 3EM

    Nun wird der Schaltzustand des Shelly 3EM auch in Homematic aktualisiert, wenn über die App oder Shelly-Szenen geschaltet wird. :)


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2020 SparkyMaster

    • Offizieller Beitrag
    • Autor

    Optionale Anzeigen:


    1.) Onlinestatus:

    Die optinale Anzeige des Onlinestatus erfolgt wie bei allen anderen Kopplungen auch mittels Systemvariable und CUxD-Ping-Gerät(28) .

    Für die Anzeige des Onlinestatus wird 1 Systemvariable benötigt:

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird wieder mit dem entsprechenden Kanal des CUxD-Gerät verknüpft und somit dort angezeigt.

    Den Onlinestatus überwacht und steuert ein CUxD-Ping Kanal. D.h. mit 1 CUxd-Ping-Gerät (28) können bis zu 16 Shelly 3EM überwacht werden. Natürlich kann auch ein freier Kanal eines schon vorhandenen CUxD-Ping genutzt werden.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    IP anpassen!


    Einstellungen für SWITCH|CMD_EXEC_TRUE:

    Code
    extra/timer.tcl Onlinestatus_Shelly3EM_Hauptzaehler 1


    Einstellungen für SWITCH|CMD_EXEC_FALSE:

    Code
    extra/timer.tcl Onlinestatus_Shelly3EM_Hauptzaehler 0

    Name der Systemvariablen jeweils anpassen! (hier: Onlinestatus_Shelly3EM_Hauptzaehler)

    Im eingestellten Intervall des Timers wird nun der Onlinestatus aktualisiert. :)


    2.) aktuelle Leistungsanzeige:

    wertet die Leistung jedes Shelly 3EM-Kanals aus, zeigt sie im CUxD-Gerät an und natürlich kann der Wert auch in Programmen genutzt werden.

    Dazu brauchen wir 3 Systemvariable (eine je Phase) für den aktuellen Leistungswert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variablen werden dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch werden sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 2. DANN Zeile zur Aktualisierung der Leistungsdaten ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu:

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Leistung1)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal

    Im eingestellten Intervall des Timers wird nun die aktuelle Leistung aktualisiert. :)


    3.) aktuelle Spannungsanzeige:

    wertet die Spannung des Shelly 3EM aus, zeigt sie im CUxD-Gerät an und natürlich kann der Wert auch in Programmen genutzt werden.

    Dazu brauchen wir 3 Systemvariable (eine je Phase) für den aktuellen Spannungswert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 3. DANN Zeile zur Aktualisierung der Spannungsdaten ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu:

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Spannung1)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal

    Im eingestellten Intervall des Timers wird nun die aktuelle Spannung aktualisiert. :)


    4.) aktuelle Stromanzeige:

    wertet den Strom des Shelly 3EM aus, zeigt sie im CUxD-Gerät an und natürlich kann der Wert auch in Programmen genutzt werden.

    Dazu brauchen wir 3 Systemvariable (eine je Phase) für den aktuellen Stromwert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 4. DANN Zeile zur Aktualisierung der Stromdaten ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu:

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Strom1)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal

    Im eingestellten Intervall des Timers wird nun die aktuelle Stromwert aktualisiert. :)


    5.) aktuelle Anzeige der bezogenen Energie:

    wertet die bezogene Energie (von der EVU) jedes Shelly 3EM-Kanals aus, zeigt sie im CUxD-Gerät an.

    Dazu brauchen wir 3 Systemvariablen (eine je Phase) für die aktuellen Energiewerte:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 5. DANN Zeile zur Aktualisierung der bezogenen Energie ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu: (Stefan (66er), Danke für die Unterstützung bei diesem Skript!)

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Energie1_Bezug)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal

    Im eingestellten Intervall des Timers wird nun die aktuelle bezogenen Energie aktualisiert. :)


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2020 SparkyMaster

  • SparkyMaster 18. Februar 2020 um 10:28

    Hat das Thema freigeschaltet.
    • Offizieller Beitrag
    • Autor

    6.) aktuelle Anzeige der bezogenen Gesamtenergie:

    wertet die bezogene Gesamtenergie (von der EVU) des Shelly 3EM aus (Summe der 3 Phasen), zeigt sie im CUxD-Gerät an.

    Dazu brauchen wir 1 Systemvariablen für den aktuellen Energiewert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 6. DANN Zeile zur Aktualisierung der bezogenen Gesamtenergie ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu: (Stefan (66er), Danke für die Unterstützung bei diesem Skript!)

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_EnergieGesamt_Bezug)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal


    Im eingestellten Intervall des Timers wird nun die aktuelle bezogenen Energie aktualisiert. :)


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2020 SparkyMaster

    • Offizieller Beitrag
    • Autor

    7.) aktuelle Anzeige der eingespeisten Energie:

    wertet die eingespeiste Energie (von z.B. Photovoltaik) jedes Shelly 3EM-Kanals aus, zeigt sie im CUxD-Gerät an.

    Dazu brauchen wir 3 Systemvariablen (eine je Phase) für die aktuellen Energiewerte:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 7. DANN Zeile zur Aktualisierung der eingespeiste Energie ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu:

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Energie_Einspeisung1)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal



    Im eingestellten Intervall des Timers wird nun die aktuelle eingespeiste Energie aktualisiert. :)


    8.) aktuelle Anzeige der eingespeisten Gesamtenergie:

    wertet die eingespeiste Gesamtenergie (von z.B. Photovoltaik) des Shelly 3EM aus (Summe der 3 Phasen), zeigt sie im CUxD-Gerät an.

    Dazu brauchen wir 1 Systemvariablen für den aktuellen Energiewert:

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Die Variable wird dem entsprechenden Kanal des Shelly-CUxD-Gerätes zugeordnet. Dadurch wird sie wie im Bild 1 in #1 sichtbar.

    In das Programm zur Statusaktualisierung (siehe Bild in #2) fügen wir nun eine 8. DANN Zeile zur Aktualisierung der eingespeiste Gesamtenergie ein.

    Achtung:

    Die Namen der Systemvariablen dürfen keine Leerzeichen und keine Umlaute enthalten!

    Das Skript dazu:

    Namen der Systemvariablen jeweils anpassen! (hier: Shelly_3EM_Hauptzaehler_Energie_EinspeisungGesamt)

    Gemäß den Hinweisen im Skript sind weiterhin anzupassen:

    IP des Shelly 3EM

    CUxD-Exec-Kanal



    Im eingestellten Intervall des Timers wird nun die aktuelle eingespeiste Gesamtenergie aktualisiert. :)


    ____________________________________________________________

    Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).

    © 2020 SparkyMaster

  • Dieses Thema enthält 63 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.