Beiträge von Ewald Lais

    Die Lösung:

    Es war kein Problem der Szenen, sondern ein "Hardware"-Problem.
    In den Szenen sind die Ausgangszustände von Shellys abgefragt und in den Verknüpfungen verwendet worden.
    Dabei wurden auch die Ausgangszustände eines Shelly Plus 2PM verknüpft.
    Der 1. Ausgang hat dabei einwandfrei funktioniert. Wenn er "Ein" war, wurde auch "Ein" gemeldet.
    Beim 2. Ausgang ergab die Abfrage aber grundsätzlich nur ein "Aus". Auch wenn der Schalter "Ein" war.

    Die Prüfung der Einstellungen des Shelly ergab keinen Grund für dieses Fehlverhalten.

    Der Shelly wurde dann zurückgesetzt und neu eingebunden.
    Danach funktionierte er wieder einwandfrei.
    Sowohl Ausgang 1 als auch Ausgang 2 meldeten den Ausgangszustand wieder korrekt.

    Seither funktionieren alle Verknüpfungen wie geplant.

    Als Trigger für die Sequenzen wurde übrigens "wiederholt" gewählt.

    Die Ursache für das Fehlverhalten konnte nicht gefunden werden.
    Zeitlich passt es im Nachhinein aber in die Phase als ein Firmware-Update durchgeführt wurde.


    Der Thread kann jetzt geschlossen werden.

    Habe jetzt einen 2. Shelly Plus 2PM auf Werkseinstellung zurückgesetzt und auf aktuelle Firmware geupdated.
    Dann habe ich den statt Freigabe1 und Freigabe2 eingebunden -> FUNKTIONIERT

    Da scheint was am 2. Kanal des "alten" Shelly schräg zu sein.
    Ich habe die Parameter des 1. und 2. Kanals verglichen. Sind identisch. Da ist mir nichts aufgefallen.

    Wie kann ich den zurücksetzen und wieder einbinden ohne alle Szenen neu schreiben zu müssen?

    Gut, nachdem das geklärt ist, wollte ich der Magie des Nichtfunktionierens doch noch näher auf den Grund gehen.

    Dazu habe ich die komplette Szene gelöscht und von Grund auf neu aufgebaut (nur die erste Sequenz) und schrittweise getestet.
    Dazu die Lampe "händisch" eingeschalten und dann die Ausschalt-Szene wirken lassen.

    Stufe 1: "Leistung ist Trigger" -> "Lampe Aus" > FUNKTIONIERT
    Stufe 2: "Leistung ist Trigger" und "Grundladung aus Bedingung" -> "Lampe Aus" > FUNKTIONIERT
    Stufe 3: "Leistung ist Trigger" und "Grundladung aus Bedingung" und "Freigabe1 aus Bedingung" -> "Lampe Aus" > FUNKTIONIERT
    Stufe 4: "Leistung ist Trigger" und "Grundladung aus Bedingung" und "Freigabe1 aus Bedingung" und "Freigabe2 aus Bedingung" -> "Lampe Aus" > FUNKTIONIERT NICHT

    Freigabe1 und Freigabe2 sind 2 Kanäle eines Shelly Plus 2PM

    Nun stellt sich die Frage, weshalb die Szene nicht mehr funktioniert, wenn ich Freigabe2 einbinde.
    Freigabe 2 ist der 2. Kanal (1) eines 2PM.
    Hat das damit zu tun? Wird dieser nicht korrekt abgefragt?

    Hier sind die aktuellen Schaltzustände und Leistungen beim Test:
    Grundladung, Freigabe1 und Freigabe2 sind aus. Die Leistung ist über 0W.
    Status Ausgänge.jpg   Status Messung.jpg


    Und nun die Szene in ihren Iterationen:

    Stufe 1 (funktioniert)
    Stufe 1 - funktioniert.jpg

    Stufe 2 (funktioniert)
    Stufe 2 - funktioniert.jpg

    Stufe 3 (funktioniert)
    Stufe 3 - funktioniert.jpg

    Stufe 4 (funktioniert nicht)
    Stufe 4 - funktioniert nicht.jpg

    Hm, die Szene funktioniert aber, wenn ich sie von Hand starte.
    Was hindert sie daran automatisch ausgeführt zu werden?

    Jede Sequenz hat einen Trigger. Ist das nicht ok?
    Die Alternative wäre daraus 4 separate Szenen zu machen.
    Nur, warum braucht es dann "oder"-Verknüpfungen?

    Na ja, der Vollständigkeit halber füge ich mal alle Sequenzen der Szene bei.

    241120 Lampe Aus 1.jpg   241120 Lampe Aus 2.jpg

    241120 Lampe Aus 3.jpg   241120 Lampe Aus 4.jpg

    Nun habe ich doch noch ein Problem.
    Nachdem viele Tage schlechtes Wetter war, kam zu wenig vom Himmel um die Batterie zu laden.
    Nun hat aber mal wieder zwischendurch die Sonne geschienen und dadurch wurde die Lampe eingeschalten.

    Allerdings wird sie nicht mehr ausgeschaltet.
    Die Szene sollte in Ordnung sein.
    Wenn ich sie von Hand auslöse, dann wird die Lampe ausgeschaltet, nur automatisch scheint sie nicht ausgeführt zu werden.

    Ich füge einen Auszug der Szene als Screenshot an.
    Allerdings sollte das Problem nicht die Szene selbst sein.
    Die Frage ist eher: warum wird die, eigentlich funktionierende, Szene nicht ausgeführt sondern muß händisch gestartet werden.

    241120 Lampe Aus.jpg

    So, heute war´s mal endlich wieder sonnig und ich hatte etwas Zeit.
    Also habe ich mal beide oben angesprochenen Varianten ausprobiert:
    a) Trigger eines digitalen Zustands: wiederholt
    b) Trigger eines analogen Werts: bei jeder Änderung
    Für die Variante b) habe ich die Sequenzen so umgeschrieben, daß der Trigger am Anfang der Sequenz stand.

    Variante a) hat im Prinzip funktioniert.
    Allerdings war sie sehr träge und die Anzeige (Farbe Blau/Gelb/Grün/Rot/aus) manchmal nicht ganz nachvollziehbar.

    Variante b) brachte dann den Erfolg.
    Die Farbwechsel erfolgen sehr schnell (fast zu schnell) und sind nachvollziehbar.

    241103 neutraler Ausschnitt aus Szene.jpg

    Ja, das ist einsichtig.
    Ich habe auch nicht mit mehreren Triggern innerhalb einer Sequenz gearbeitet.
    Am sinnvollsten erscheint mir ein Triggern auf wiederholter Basis auf die erste Bedingung.

    Im Beispiel des Screenshots:
    "Freigabe Ladegerät 1 = an"; wiederholt.
    Das müsste dazu führen, daß diese Sequenz wiederkehrend ausgeführt wird und wenn das Ergebnis "True" ist, die Lampe entsprechend befeuert.

    Ich war mir nur nicht klar darüber wie ein Trigger zu sehen ist:
    - Muß er am Anfang stehen, damit die Sequenz überhaupt bearbeitet wird
    oder
    - ist er eine besondere Art von Verknüpfung, die nur unter speziellen Bedingungen "True" oder "False" ist.

    Im Falle von "wiederholt": wie ist die Frequenz der Wiederholung?
    Alternativ könnte ich auch die Leistungsmessung an den Anfang stellen und dann "bei Änderung" triggern.

    ^^

    Nun ja, ich wollte eigentlich nicht so sehr ins Detail gehen, was die Gesamtfunktion anbelangt.
    Um alle Szenen mit ihren Sequenzen offenzulegen hätte ich etwa 30 Bildschirmkopien anlegen müssen.
    Und das hätte auch nicht geholfen.
    Das Gestückel hat sich nur aus den Nachfragen nach weiteren Details ergeben, die gestellt wurden.

    Gehen wir doch nochmal auf die Ausgangsfrage zurück:
    Welchen Trigger würdet ihr empfehlen um so eine Sequenz zu aktivieren?
    Beispiel:
    "Freigabe Ladegerät 1" auf "Wiederholt"?
    oder "Leistungsmessung Shelly" auf "Wiederholt"?
    oder "Leistungsmessung Shelly" auf "Einmal"?

    Muß der Trigger immer am Anfang der Sequenz stehen oder darf der auch mittendrin sein?

    ?thumbnail=1


    Krauskopp
    Auf deine Fragen:
    Die Ansteuerung der Ladegeräte erfolgt bedämpft über die Leistungsmessung mit verzögerten Triggern.
    (z.B. Leistungsmessung, Trigger: mehr als 100W einmal, 2 Minuten gültig)
    So passen sie sich (gemächlich) an die Leistungssprünge der Waschmaschine etc. an.

    Die Anzeige braucht keine Bedämpfung. Sie orientiert sich rein an der Leistungsmessung und den Schaltzuständen.
    Dementsprechend wird je nachdem eine andere Farbe angezeigt.
    Sie hat im übrigen schon mal in einer einfacheren Variante (1 Ladegerät) funktioniert.
    Erst mit dem Aufbohren auf 3 Ladegeräte und der Zunahme an Verknüpfungen ist da was kollabiert.
    Deshalb dachte ich: back to the roots und abklären welche Trigger hier am Besten einzusetzen sind und ob sie überall in der Sequenz stehen können oder an den Anfang gehören.

    Ja, richtig.
    "Freigabe ein" bedeutet, daß die Ladegeräte aktiviert sind.
    Die Ansteuerung der Ladegeräte erfolgt in anderen Szenen.
    Die damit versorgte Batterie funktioniert bereits über ein Jahr problemlos.
    Sie wird geladen, wenn mehr Leistung von der PV zur Verfügung gestellt wird, als im Haus verbraucht wird.
    Dabei orientiert sie sich an der Messung des 3EM.
    Entsprechend der Messung werden 3 separate Ladegeräte zu- oder abgeschaltet.
    Wenn jetzt z.B. die Waschmaschine oder der Kühlschrank oder... mehr Strom verbraucht und deshalb nichts oder
    weniger übrig ist, dann schalten sich die Lader auch wieder sequentiell ab.

    Dem Nutzer soll aber angezeigt werden, welche Leistung ihm zur Verfügung stünde, wenn die Batterie nicht laden würde.

    Der 3EM misst die Leistung der Hauseinspeisung.
    Der Wert 100 bedeutet, daß 100W aus dem Netz bezogen werden.
    Der Wert - 100 bedeutet, daß 100W ins Netz eingespeist werden.
    Größer als - 100 und kleiner als 100 ist durchaus legitim.
    Das ist der Bereich des Bezugs zwischen 0 und 100W, sowie der Einspeisung zwischen 0 und 100W.

    Die anderen Sequenzen decken dann weitere Bereiche ab. Hier im Beispiel sind zufällig alle "Bezug", also positiv.

    Bitte beachtet, daß sich die Meßbereiche zwar scheinbar überschneiden, der Sequenz allerdings andere Schaltzustände zu Grunde liegen.
    Von daher passen die 220W (siehe oben) nur bei einem entsprechenden Schaltzustand.
    Die Abstufung zwischen den einzelnen Sequenzen bzw. Schaltzuständen ergeben sich durch die Leistungsaufnahme der Ladegeräte.
    Lader1 = 150W
    Lader2= 150W
    Lader3 = 100W

    Zur Verdeutlichung versuche ich mal die dazu gehörende Grafik zu digitalisieren.
    Ich dachte nur, daß das nicht notwendig sei.
    Ich wollte eigentlich nur fragen, was für einen Trigger ich sinnvoller Weise verwenden soll um so eine Sequenz zu aktivieren.

    Farbzuordnung.pdf

    Nun, das ist nur eine Sequenz.
    Insgesamt sind es 5 dieser Sequenzen pro Szene.
    Die 5 Sequenzen sind per "ODER" miteinander verknupft.

    Diese Sequenz soll aussagen:
    Wenn
    "Freigabe1=aus" UND "Freigabe2=aus" UND "Freigabe3=ein"
    UND "die vom Netz bezogene Leistung<100W"
    UND "die ins Netz eingespeiste Leistung>100W"
    Dann "Lampe - > Blau"

    Sie soll also aktiviert werden wenn der 3EM zwischen 100W Einspeisung und 100W Verbrauch misst.
    Das entspricht dem 3EM-Meßwert von "Größer -100" UND "Kleiner 100".

    Die nächste Sequenz ist mit der obigen mit ODER verknüpft und lautet dann in etwa wie folgt:
    Wenn
    "Freigabe1=an" UND "Freigabe2=aus" UND "Freigabe3=an"
    UND "Leistung<250"
    UND "Leistung>50"
    Dann "Lampe -> Blau"

    Die dritte Sequenz lautet dann:
    Wenn
    "Freigabe1=an" UND "Freigabe2=an" UND "Freigabe3=an"
    UND "Leistung<400"
    UND "Leistung>200"
    Dann "Lampe -> Blau"

    Und so weiter...

    Es ist also immer ein Schaltzustand mit einem Leistungsbereich verknüpft und dann einer Lampenfarbe zugeordnet.

    Funktion: Anzeige von Stromüberschuß, wenn die PV einspeist.

    Problem: die Szenen funktionieren nicht wie gedacht. Wahrscheinlich liegt es an den Triggern.

    Eigentlich wäre es ja ganz einfach:
    Eine Shelly Color Bulb hängt im Wohnzimmer und zeigt mir und meinen Mitbewohnern grob an, wieviel überschüssiger Strom gerade ins Netz eingespeist wird.
    Und daß es jetzt eine gute Idee wäre z.B. die Waschmaschine oder den Geschirrspüler laufen zu lassen.

    Nun ist es aber so, daß bereits 3 Verbraucher in Abhängigkeit der Überschußleistung geschaltet werden.
    Diese Verbraucher schalten aber selbstständig wieder ab, wenn sich der Verbrauch (des Hauses) verändert, weil z.B Waschmaschine oder Geschirrspüler oder Kühlschrank eingeschaltet werden.

    Deshalb gibt es dafür recht umfangreiche Szenen um den ´"Nutzern" anzuzeigen wieviel Leistung ihnen zur Verfügung stünde, wenn die Ladegeräte ausgeschaltet wären.

    Für die Lampe gibt es 5 Szenen:
    Einschalten der Farbe "Blau", "Gelb", "Grün", "Rot", "Aus"
    Blau = 0-200W Einspeisung ins Netz
    Gelb = 200-400W Einspeisung ins Netz
    Grün = 300-600W Einspeisung ins Netz
    Rot = mehr als 600W Einspeisung ins Netz
    Aus = Lampe aus, wenn keine Einspeisung ins Netz

    3 variable Verbraucher: Ladegeräte für eine Batterie.
    Diese werden, orientiert an dem aktuellen Verbrauch/Einspeisung des Hauses zu bzw. abgeschaltet.
    Dies läuft in separaten Szenen und funktioniert schon über ein Jahr problemlos.
    Ladegerät 3 = 100W (Grundladung)
    Ladegerät 1 = 150W (1. volle Ladestufe)
    Ladegerät 2 = 150W (2. volle Ladestufe)

    Nun soll bei der Farbwahl für die Lampe der aktuelle Verbrauch der Ladegeräte berücksichtigt werden.

    Beispiel 1:
    Nur die Grundladung ist aktiv, die Ladegeräte sind aus. Der Shelly 3EM misst 50W Verbrauch; Wert = 50 (Bezug aus dem Netz)
    -> 50W Bezug - 100W Grundladung = effektiv wären 50W Einspeisung gegeben, wenn die Grundladung nicht wäre.
    Da sich die Grundladung automatisch abschalten würde, wenn der Bezug längere Zeit über 50W wäre, soll dem Nutzer durch
    die "blaue" Lampe angezeigt werden, daß zwischen 0W und 200W Strom "über" wäre.

    Beispiel 2:
    Nur die Grundladung ist aktiv, die Ladegeräte sind aus. Der Shelly 3EM misst 250W Einspeisung; Wert = -250 (Einspeisung ins Netz)
    -> 250W Einspeisung - 100W Grundladung = effektiv wären 350W Einspeisung gegeben, wenn die Grundladung nicht wäre.
    Da sich die Grundladung automatisch abschalten würde, wenn der Bezug längere Zeit über 50W wäre, soll dem Nutzer durch
    die "gelbe" Lampe angezeigt werden, daß zwischen 200W und 400W Strom "über" wäre.

    Die Ansteuerung der Lampe funktioniert, lediglich die Abarbeitung der Szenen klemmt.

    Die Hardware besteht aus:
    1x "Shelly 3EM" für die Messung der Gesamtleistung: positive Werte = Bezug aus dem Netz, negative Werte = Einspeisung ins Netz
    3x "Shelly Schalter" für die Ansteuerung von Ladegeräten
    1x Shelly Color Bulb zur Anzeige des potentiellen Stromüberschusses

    Aber jetzt Schluß mit dem Rahmenprogramm und ab geht´s zur eigentlichen Frage:

    Das Folgende kann getrost übersprungen werden. Die bisherige Lösung steckt im letzten Post.

    Als Beispiel füge ich mal einen Ausschnitt aus so einer Sequenz als Bild bei.
    Dieser Ausschnitt beinhaltet keine Trigger, die die Sequenz auslösen, da ich schon alles ausprobiert habe, was mir eingefallen ist.
    Deshalb habe ich den Ausschnitt "neutralisiert".

    Die Zustände "Freigabe Ladegerät 1-3" sind binär kodiert in den einzelnen Abschnitten der jeweiligen Szenen durchdekliniert.
    Per "Leistungsmessung" wird mit einer oberen und unteren Grenze der Bereich selektiert.

    Der unten abgebildete Ausschnitt ist eine von 5 entsprechenden Sequenzen in der Szene für das Umschalten auf blau.
    Die Sequenzen unterscheiden sich nur durch die Kombination der Zustände der "Freigabe-Schalter" und der Leistungsbereiche.

    Nun zur Frage: welchen Trigger sollte man hier verwenden, damit die Sequenz "durchschaltet".

    241101 neutraler Ausschnitt aus Szene.jpg

    @SaschaBr

    Ah, ok. Da hast du Recht. Danke für den Hinweis. Steht jetzt, nach dem Reset, auch auf Toggle.

    Muß ich gleich ändern.

    Scheint aber nicht die Ursache gewesen zu sein.

    Nach dem Reset ist wieder alles gut. Der Shelly schaltet wieder wie gewünscht.

    Genauer: das Ausgangsrelais fällt nicht mehr, anscheinend grundlos, ab.

    DIYROLLY: der Download der Szenen sind was über 2.100Zeilen.

    Aktueller Stand:

    Alle Szenen, die das Relais ausschalten könnten deaktiviert -> trotzdem hat das Relais unmotiviert abgeschaltet

    Alle ADC-Verknüpfungen nochmal deaktiviert -> trotzdem hat das Relais unmotiviert abgeschaltet

    Als Standarteinstellung beim Einschalten "Relais Ein" gewählt, falls der UNI zwischendurch booten sollte -> trotzdem hat das Relais unmotiviert abgeschaltet

    Neu gebootet -> trotzdem hat das Relais unmotiviert abgeschaltet

    UNI geresetet -> seither kein Ausfall mehr. (Allerdings brauche ich für eine sichere Aussage besseres Wetter. :) )

    Mögliche Ursache könnte sein:

    Ich habe den ADC-Schwellwert mal verstellt und versehentlich statt 28.800mV 28,8V eingegeben.

    Die Übernahme des Werts hat nicht geklappt und ich habe abgebrochen.

    Erst danach (am nächsten Tag) ist es dann passiert.

    Ich nehme mal an, daß die ADC-Routinen auf dem UNI lokal laufen.

    Falls da was falsch gespeichert wird, sieht man das nicht in der Cloud.

    Kann dem so sein?

    Also erstmal auf die Sonne warten (dann wird das Relais geschalten um die Batterie zu laden).

    Ich geb Bescheid wie es dann aussieht.

    @SaschaBr: Welche Einstellung der Inputs meinst du?

    Gestern hat es mich auch erwischt.

    Plötzlich war der UNI offline und hat vor sich her geblinkt.

    Ich konnte ihn dann wieder neu verbinden. So wie es aussah waren alle Einstellungen auch wieder da.

    Alles lief wie zuvor.

    Aber nur anscheinend.

    Bis heute einer der UNI-Ausgänge zwischendurch unmotiviert abgeschaltet wurde.

    An den Szenen kann es nicht liegen.

    Die dafür verantwortliche Szene schaltet 2 Aktoren: den UNI Ausgang und einen externen Shelly 1.

    Das heißt: wäre der Ausgang über die Szene abgeschaltet worden, so wäre auch der Shelly 1 abgeschaltet worden.

    So wurde aber nur der UNI-Ausgang abgeschaltet.

    Anscheinend hat sich da irgendwas eingeschlichen.

    Die ADC-Automatisierung habe ich geprüft: die Über- und Unter-Aktionen sind deaktiviert.

    Vor längerer Zeit habe ich mal gelesen, daß man die Verknüpfungen (Szenen) irgendwie in der Cloud auslesen und prüfen kann.

    Vielleicht hat sich da was verstellt.

    Aber ich finde die Vorgehensweise nicht mehr.

    Falls mir da jemand einen Tip geben könnte wäre ich dankbar für.