Beiträge von SeRef
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.
-
-
-
Ist es richtig, dass du die Meldung vom Input, also vom Eingang, an die CCU gemeldet bekommen möchtest?
--> umstellen von "wenn Eingang ist an" auf den Zustand des Ausgang!
siehe auch Anleitung.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. -
Hallo Andy,
und willkommen im Forum.
Vorausgesetzt, die IP und die CUxD Adresse ist richtig eingetragen, sehen die Zeilen gut aus. Hast du schon mal die Befehle in der Adressleiste eines Browsers eingegeben?
Im Falle das auch nicht funktioniert, könnte es auch mit den Firewalleinstellungen der CCU zusammenhängen.
Ist es richtig, dass du die Meldung vom Input, also vom Eingang, an die CCU gemeldet bekommen möchtest?
Gruß
SeRef
Edit: Mir fällt gerade auf, dass dein WLAN und AP aktiv sind. Ist das so gewollt?
-
Danke für den Hinweis. Daher schrieb ich auch seit der 0.10.3-beta1.
Aber mit Hinsicht darauf, dass Allterco offiziell keine Möglichkeit zum Downgraden mehr anbietet, finde ich es schon schade, dass der Bug (ich nenne es jetzt mal so) ihnen in der Beta nicht aufgefallen ist und es mit in die RC geschafft hat.
-
Vergleich der Werte, die ich zeitgleich am Wechselrichter (684 Watt), einem Hutschienenzähler in meiner Anschlußbox (690 Watt) und auf
der Shelly App (752 Watt) ablese. Das ist leider reproduzierbar ...
Hast du eventuell noch die Firmware 0.10.2 auf dem PM? Da gab es Probleme mit der Spannungsmessung, was dann auch eine falsche Leistungsanzeige zur Folge hatte. Dies soll seit der 0.10.3-beta1 behoben sein. Siehe hier. In dem Thema geht es im weiteren Verlauf mittlerweile auch um die Problematik der zu hoch angegebenen Arbeit.
-
Hallo Rolf,
da die gemessene Leistung plausibel ist, gehe ich davon aus, dass die Strom- und Spannungsmessung so weit in Ordnung ist. Erst wenn daraus die Arbeit ermittelt wird, also der Faktor Zeit dazu kommt, wird es fehlerhaft.
Ich glaube zwar nicht, dass es einen Unterschied macht, aber interessant wäre es schon, ob der Fehler auch bei Verbrauch und nicht nur bei Einspeisung auftritt.
Gruß
SeRef
-
-
Der Shelly plus 1PM misst die Leistung ja (WIMRE) ungerichtet: Das heißt, was die PV-Anlage erzeugt, wird (positiv) gerechnet - und was die PV-Anlage verbraucht (Eigenverbrauch) ebenfalls positiv. Wir können Verbrauch von Erzeugung nicht unterscheiden, richtig? Nun wären 175W Eigenverbrauch in einer Stunde sehr sehr viel. Aber nachdenken kann man darüber schon einmal...
Ich weiß nicht, ob es alle Mikrowechselrichter so machen, aber mein AP600 versorgt sich von der DC Seite her. Was auch meiner Meinung nach Sinn macht. Warum sollte er erst wechselrichten, um sich dann seine eigene Versorgungsspannung wieder aus dem Netz gleichzurichten?
Aber selbst wenn dem so wäre, würde der PM es nicht mitbekommen, da der Eigenverbrauch nicht über ihn fließt. Der Wechselrichter würde seinen eigenen erzeugten Strom verbrauchen, der nicht über den PM fließt. Die gemessene Leistung wäre dann erzeugte Leistung minus Eigenverbrauch. - Wenn ich nicht einen Denkfehler habe
-
-
Es gibt die Möglichkeit eines Downgrade. Es lässt sich eine ältere Firmware als die Momentane installieren (getestet mit 0.10.2 -> 0.10.1). Infos dazu gibt es hier >klick<.
Dort ist ein Link, unter dem man die jeweils aktuelle Firmware downloaden kann. Ob es auch einen Server mit älteren Firmwareständen gibt, weiß ich leider nicht.
Gruß
SeRef
-
-
Um ein Schalten am Schalter zu verhindern, kann man aus der Homematic den Button Type auf detached umstellen:
Codestring vIp = "192.168.xxx.xxx"; ! hier die IP des Shelly eintragen string vTyp = "detached"; ! mögliche Werte für Button Typ: momentary, toggle, edge, detached, action, momentary_on_release string stdout = ""; string stderr = ""; system.Exec("wget -q -O - -t 1 -T 10 'http://" # vIp # "/settings/relay/0?btn_type=" # vTyp # "'", &stdout, &stderr);
Wenn der Wasserstand wieder hoch genug ist, einfach wieder auf den ursprünglichen Typ zurückstellen.
Hat aus meiner Sicht den Vorteil, dass ein Bedienen am Schalter auch bei offline/Ausfall der CCU (sofern der Wasserstand bei Eintritt offline hoch genug war) weiterhin möglich ist.
Gruß
SeRef
-
Ich hatte in diesem Beitrag schon mal beschrieben, wie man einen 2.5 so einrichtet, dass man ihn über die Homematic mit einer Prozentangabe steuern kann. Da ich vor ein paar Tagen meinen ersten Plus 2PM erhalten und erfolgreich in der Homematic eingebunden habe, will ich hier mal meine Vorgehensweise vorstellen.
Der hauptsächliche Unterschied liegt darin, dass beim 2.5 die aktuelle Position des Rollos von der CCU per http geholt werden muss und beim Plus 2PM die Position von ihm an die CCU übertragen wird.
1. Wenn noch nicht geschehen, muss CUxD installiert werden. Ich habe für diese Anleitung Version 2.8 in Verbindung mit piVCCU 3.61.7 verwendet. Auf dem Shelly ist die Firmware 0.10.1.
2. Erstellen eines neuen CUxD-Gerätes:
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Gerätetyp: (28) System
Funktion: Exec
Control: Jalousie
Seriennummer, Name und Geräte-Icon können frei gewählt werden. Die Angaben/Auswahl hat keinen Einfluss auf die Funktion.
Wer die App Home24 verwenden möchte, muss bei Geräte-Icon einen Jalousieaktor auswählen (lässt sich auch nachträglich ändern). Ansonsten wird er in der App nicht angezeigt.
3. Das eben erstellte CUxD-Gerät muss noch eingestellt werden:
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Die nicht vollständig sichtbaren Einträge sind
BLIND|CMD_SHORT:
wget -q -O - -t 1 -T 10 'http://$C1$/rpc/Cover.Stop?id~3d0'
BLIND|CMD_LONG:
wget -q -O - -t 1 -T 10 'http://$C1$/rpc/Cover.GoToPosition?id~3d0~26pos~3d$VALUE$/10'
Bei BLIND|CH_PARAM1 muss die IP-Adresse des Shelly eingetragen werden.
4. Der erste Test.
Wenn alles richtig eingestellt ist, sollte der Rollladen sich jetzt unter Status und Bedienung > Geräte bedienen lassen.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Damit aber auch der Status der CCU bekannt ist, wenn von anderer Stelle (Shelly APP, Schalter/Taster, WebUI, …) gesteuert wurde, ist noch ein weiterer Schritt notwendig.
5. Im Shelly ist ein Skript hinzuzufügen.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen. Das Skript:
Code
Alles anzeigen// ************************************* let vIpCcu = "192.168.69.14"; // IP der CCU let vCuxd = "Rollo%20Kinderzimmer"; // Name des CUxD Aktors // ************************************* Shelly.addStatusHandler( function (event) { if (typeof event.delta.current_pos !== 'undefined') { let vPos = JSON.stringify(event.delta.current_pos / 100); let vUrl = 'http://' + vIpCcu + ':8181/x.exe?y=dom.GetObject(%22' + vCuxd + '%22).DPByHssDP(%22SET_STATE%22).State(%22' + vPos + '%22)'; Shelly.call("http.get", {url: vUrl}, null, null); } } );
IP der CCU und Name des Rollladenaktors muss angepasst werden!
Ist im Namen des verwendeten Kanales vom CUxD ein Leerzeichen, muss dieses wie in meinem Beispiel durch <%20> ersetzt werden.
Das sollte so weit alles sein, um den Rollladen steuern zu können und auch den aktuellen Stand in der CCU zu haben. Möglich wäre noch eine zusätzliche zyklische Abfrage der Position. Ob das aber überhaupt nötig ist, wird sich im Laufe der Zeit herausstellen. Mein Ziel ist es, auf das Polling gänzlich zu verzichten.
Zum Schluss noch etwas Rechtliches:
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).
© 2022 SeRef
Alle Rechte vorbehalten
-
Hallo Commander_1971,
ich zitiere mal aus dem ersten Beitrag:
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!)
Dieses CUxD-Exec-Gerät, das du da angelegt hast, hat insgesamt 16 Kanäle. Jeder Kanal hat eine eigene Adresse und im Skript ist die Adresse des Kanals anzugeben, den du beabsichtigst zu verwenden.
Gruß
SeRef
-
Also, wenn ich das hier richtig lese, gibt es genau drei Möglichkeiten:
- Ich pfeiffe auf die internen Timer (dann brauche ich allerdings auch keinen NTP-Server)
- Ich erlaube dem Shelly Internetzugang (dann ist der eigene, lokale NTP-Server auch nicht so richtig notwendig)
- Ich nutze NTP-Server und verbiete Internet, muss dann aber 2x im Jahr bei allen Shellies den Haken für Sommer-/Winterzeit umstellen?!
Es gibt noch eine 4. Möglichkeit:
Der Shelly reagiert nicht auf die Einstellungen der Zeitzone und Daylite on/off/auto und zeigt immer die gleiche Zeit.
Ich vermute, es liegt daran, dass er noch nie Verbindung zum Internet hatte.
-
-
Hallo und willkommen im Forum!
Ich habe das Skript etwas angepasst.
Code
Alles anzeigen!Skript zur Leistungsaktualisierung Shelly PM mit Originalfirmware (by SeRef vom 20.03.2022) !basiert auf: !Skript zur Leistungsaktualisierung Shelly PM mit Originalfirmware (by MarcR V1.0.1) !basiert auf : !Skript zur Leistungsaktualisierung Shelly PlugS mit Originalfirmware (by 66er V1.0) !Angepasste Version. Originalversion: !https://shelly-forum.com/forum/index.php?thread/649-shelly-pm-leistungsmessung-in-homematic-einbinden-mit-der-originalfirmware/&postID=6006#post6006 !Waschmaschine (nur zur Orientierung, ggf anpassen) !****Abfrage des Shelly PlugPM***** !In der folgenden Zeile IP des Shelly PlugPM anpassen! var url = "http://192.168.0.58/status"; !In den folgenden Zeilen die CUxD-Exec-Kanal anpassen (hier: 2801002:2) dom.GetObject("CUxD.CUX2801002:2.CMD_SETS").State("wget -q -O - '"#url#"'"); dom.GetObject("CUxD.CUX2801002:2.CMD_QUERY_RET").State(1); string Antwort = dom.GetObject("CUxD.CUX2801002:2.CMD_RETS").State(); string t = dom.GetObject("CUxD.CUX2801002:2.CMD_RETS").State(); dom.GetObject("CUxD.CUX2801002:2.CMD_SETS").State("0"); !WriteLine(Antwort); !WriteLine(t); !****Auswertung des Antwortstrings **** !Hier NICHTS ändern string s; string p = "-1"; foreach (s,t.Split (",")) { if (s.LTrim ("{").Contains ('"power"')) { p = (s.StrValueByIndex (":",2).RTrim ("}")); !WriteLine(p); } } !**** Variable setzen**** real rep = p.ToFloat(); if (rep > -1.0) { !Variablennamen anpassen (hier: Leistung_Waschmaschine) dom.GetObject("Leistung_Waschmaschine").State(p); } !Ende Skript
Änderungen zum Skript aus #2 sind in den Zeilen 51, 59, 72, 73 und 78.
Damit sollte verhindert werden, dass ein Wert eingetragen wird, der nicht aus der Antwort vom PM ausgelesen wurde.
Bei Problemen melde dich bitte noch mal.
Gruß
SeRef
-
Zum einen speichert der 1PM den Wert nicht dauerhaft, zum anderen ist der Wert unter "total" in Wattminuten angegeben.
-