Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst] Farbwechsel bei verschiedenen Verbräuchen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Farbwechsel bei verschiedenen Verbräuchen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      @bahnuhr:

      Nur was machst du wenn die Linie nach links kommt. `
      Habe ich bei meinen Cahrts schon durch die Legende.

      Die wichtigen Teile sind ja rechts, deswegen ist die Legende bei mir links oben.

      Allerdings kann man die Overlays ja auch transparent gestalten.

      Gruß

      Rainer

      1 Reply Last reply Reply Quote 0
      • S
        SigiMOE last edited by

        so schlecht finde ich es nicht…. So sieht es aktuell aus, hab noch einen weiteren Wert hinzugefügt ( WATT )

        1121_2017-03-18_18-08-27.jpg

        Hast Du noch einen anderen Vorschlag ?

        1 Reply Last reply Reply Quote 0
        • S
          SigiMOE last edited by

          ok jetzt habe ich es noch etwas "verschönert"
          1121_2017-03-18_19-49-38.jpg

          Wie findest Du es jetzt ?

          1 Reply Last reply Reply Quote 0
          • bahnuhr
            bahnuhr Forum Testing Most Active last edited by

            für mich siehts so viel besser aus.

            Ich mache auch Bilder, Texte, Legende so, dass sie eben nicht stören (siehe oben).

            mfg

            1 Reply Last reply Reply Quote 0
            • bahnuhr
              bahnuhr Forum Testing Most Active last edited by

              nochwas:

              kann man die y-achse nicht auch farbig gestalten

              (damit man weiß welche y-achse zu welcher linie passt)

              Und die x-achse nur 1x darstellen

              (steht ja das gleiche drin)

              1 Reply Last reply Reply Quote 0
              • S
                SigiMOE last edited by

                Prima vielen Dank für die Hilfestellung.

                Jetzt habe ich tatsächlich was zum Waschen gehabt und dachte mir, kontrolliere gleich ob alles wunschgemäß funktioniert.

                Aber leider ist dies nicht der Fall….

                Die Anzeige "Waschmaschine ist fertig!" ändert sich zwar aber nicht in die gewünschte Farbe bzw. Schrift ?!

                Es wird "weiß"

                1121_2017-03-19_10-21-40.jpg
                Habe folgende Einstellungen :
                1121_2017-03-19_10-22-29.jpg

                In IOBROKER zeigt es folgende Werte an :
                1121_2017-03-19_10-24-34.jpg

                Programm Entscheidungsdummy erstellt :
                1121_2017-03-19_10-25-57.jpg

                Geräte Werte eingetragen :
                1121_2017-03-19_10-26-48.jpg
                1121_2017-03-19_10-27-35.jpg
                1121_2017-03-19_10-28-01.jpg
                1121_2017-03-19_10-28-29.jpg

                Noch eine Idee was bei mir falsch eingestellt ?

                So sollte es eigentlich aussehen :
                1121_2017-03-19_10-50-08.jpg

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators last edited by

                  Müsste ich mich mal reindenken, wie das widget funktioniert.

                  Ich fürchte dass es die Werte 0, 1 und 2 benötigt.

                  Während der Entscheidungswert immer 0 oder 200 zurückgibt.

                  Du kannst diesen aber in den Expertenparametern ändern.

                  Aber ob du da drei verschiedene Werte schaffst…..

                  Ich habe da schon mal rumexperimentiert und den Entscheidungswert bei Strom anders als bei Leistung eingestellt.

                  Aber ob das bei dem Widget hilft??.

                  Gruß

                  Rainer

                  1 Reply Last reply Reply Quote 0
                  • S
                    SigiMOE last edited by

                    Ich denke "bahnuhr" könnte die Lösung bringen, bei Ihm läuft es ja…

                    1 Reply Last reply Reply Quote 0
                    • Y
                      ykuendig last edited by

                      Ich weiss, Eigenlob stinkt. Aber mein Skript kann das auch (http://forum.iobroker.net/viewtopic.php … 733#p58979) :roll:

                      1 Reply Last reply Reply Quote 0
                      • S
                        SigiMOE last edited by

                        ok , ich kenne mich mit Skript´s null aus, wo muss ich was einfügen ?

                        Kannst DU mir mal ein Screenshot zusenden ?

                        1 Reply Last reply Reply Quote 0
                        • Y
                          ykuendig last edited by

                          Als Erstes brauchst Du den Javascript Adapter. Hast Du den schon? sonst installieren… (ich mach dann in der Zwischenzeit mal das Foto)

                          1 Reply Last reply Reply Quote 0
                          • S
                            SigiMOE last edited by

                            habe ich schon und läuft auch ( grün )

                            1121_2017-03-19_11-37-46.jpg

                            1 Reply Last reply Reply Quote 0
                            • Y
                              ykuendig last edited by

                              Dann, Register 'Scripte' öffnen: 452_javascript01.png
                              Oben links beim Plus einen Ordner erstellen zB Keller (optional) und ein neues Script öffnen (Blatt mit Eselsohr)

                              Oben mitte einen Namen geben und

                              Oben rechts Engine Javascript wählen.

                              Ganzes Script in den Rahmen einkopieren…..
                              452_javascript02.png
                              Die Adressen deiner Geräte einfügen. Dazu am besten jeweils den roten Bereich markieren und oben rechts 'ID Einfügen' klicken. Im folgenden Dialog den Datenpunkt des Geräts auswählen (müsste etwas wie hm-rpc.0.XYZ1234567.2.POWER sein). Für das zweite Gerät wiederholen…

                              ACHTUNG: Die Semikolons am Ende der Zeile sind Notwendig!

                              Speichern -> und beim roten Playbutton aktivieren...

                              Anschliessend solltest Du im Reiter 'Objekte' folgende Datenpunkte haben, welche Du überall im ioBroker, auch in .vis verwenden kannst:
                              452_javascript03.png
                              Habe Fertig.

                              1 Reply Last reply Reply Quote 0
                              • S
                                SigiMOE last edited by

                                sieht bis jetzt ganz gut aus….
                                1121_2017-03-19_12-00-07.jpg
                                1121_2017-03-19_12-05-18.jpg

                                1 Reply Last reply Reply Quote 0
                                • Y
                                  ykuendig last edited by

                                  Die 'Schwierigkeit' ist nun, durch beobachten herauszufinden, welche Schwellenwerte für Deine Maschine richtig sind und diese im Script anzupassen.

                                  Es gilt herauszufinden ab welcher Leistung die Maschine sicher läuft: zB 200W und jeweils, wie wenig wenn Sie aus ist zB <2W sowie der Standby zB <4W

                                  Dazu muss im Script die Schwellen angepasst werden

                                  UND ev. musst Du auch (wie ich) in der CCU die Schwelle ändern, wann ein Leistungswechsel signalisiert wird. Dazu auf der CCU 'Einstellunge' dann 'Geräte' dann 'Das Gerät' und nun rechts aussen Button 'Einstellen' Beim CH:2 "Ein Wert wird gesendet, wenn sich…" Leistung Werteingabe musste ich auf 3 reduzieren, damit ich genug Werte bekam um eine vernünftige Auswertung zu machen. Das sowohl beim Trockner als auch be der Maschine.
                                  452_javascript04.png

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    SigiMOE last edited by

                                    zumindest klappt es bisher schon einmal. Freu mich auf mehr Details… 🙂
                                    1121_2017-03-19_12-10-57.jpg

                                    1 Reply Last reply Reply Quote 0
                                    • Y
                                      ykuendig last edited by

                                      Und wie schwer wars 😉

                                      1 Reply Last reply Reply Quote 0
                                      • S
                                        SigiMOE last edited by

                                        also, eigentlich war es ganz einfach, aber nur weil Du so viel Geduld mit mir hattest und es für meinen Geschmack mir

                                        sehr gut erklärt hast. Vielen Dank dafür.

                                        Wenn ich jetzt noch meine 2. Waschmaschine einbinden möchte, wie müsste dann das Script lauten ?

                                        So in etwa : ?

                                        ! ````
                                        // Im Keller nach 2 Waschmaschinen und einem Trockner sehen
                                        //
                                        // Status der Waschmaschine und des Trockners führen
                                        // Stati: 0 = aus/Standby, 1 = Maschine aus/fertig / 2 = Maschine läuft
                                        ! // Erstellen der Datenpunkte
                                        createState("javascript.0.Keller.Waschmaschine1.State", 0, {"type": "number", "role": "state"});
                                        createState("javascript.0.Keller.Waschmaschine1.Farbe", "white", {type: "string"});
                                        createState("javascript.0.Keller.Waschmaschine1.OptinSayit", false, { name: 'Optin Waschmaschine Sayit',
                                        desc: 'Soll der Waschmaschinenstatus gesprochen werden??', type: 'boolean', role: "state.enabled" });
                                        ! createState("javascript.0.Keller.Waschmaschine2.State", 0, {"type": "number", "role": "state"});
                                        createState("javascript.0.Keller.Waschmaschine2.Farbe", "white", {type: "string"});
                                        createState("javascript.0.Keller.Waschmaschine2.OptinSayit", false, { name: 'Optin Waschmaschine Sayit',
                                        desc: 'Soll der Waschmaschinenstatus gesprochen werden??', type: 'boolean', role: "state.enabled" });

                                        createState("javascript.0.Keller.Trockner.State", 0, {"type": "number", "role": "state"});
                                        createState("javascript.0.Keller.Trockner.Farbe", "white", {type: "string"});
                                        createState("javascript.0.Keller.Trockner.OptinSayit", false, { name: 'Optin Trockner Sayit',
                                        desc: 'Soll der Trocknerstatus gesprochen werden??', type: 'boolean', role: "state.enabled" });

                                        ! var WattWaschmaschine = "hm-rpc.0.XYZ7654321.2.POWER"/Waschmaschine Energy.POWER/;
                                        var StateWaschmaschine = "javascript.0.Keller.Waschmaschine1.State";
                                        var FarbeWaschmaschine = "javascript.0.Keller.Waschmaschine1.Farbe";
                                        var OptinSayitW = "javascript.0.Keller.Waschmaschine1.OptinSayit";
                                        ! var WattWaschmaschine = "hm-rpc.0.XYZ7654321.2.POWER"/Waschmaschine Energy.POWER/;
                                        var StateWaschmaschine = "javascript.0.Keller.Waschmaschine2.State";
                                        var FarbeWaschmaschine = "javascript.0.Keller.Waschmaschine2.Farbe";
                                        var OptinSayitW = "javascript.0.Keller.Waschmaschine2.OptinSayit";
                                        ! var WattTrockner = "hm-rpc.0.XYZ1234567.2.POWER"/Trockner Energy.POWER/;
                                        var StateTrockner = "javascript.0.Keller.Trockner.State";
                                        var FarbeTrockner = "javascript.0.Keller.Trockner.Farbe";
                                        var OptinSayitT = "javascript.0.Keller.Trockner.OptinSayit";
                                        ! var SayitID = "sayit.1.tts.text";
                                        ! subscribe ({id: WattWaschmaschine1, change: "ne"}, checkState);
                                        subscribe ({id: WattWaschmaschine2, change: "ne"}, checkState);
                                        subscribe ({id: WattTrockner, change: "ne"}, checkState);
                                        ! function checkState() { // Abfrage ob Waschmaschine oder Tumbler laufen
                                        // Waschmaschine1
                                        var StatusWaschmaschine1 = getState(StateWaschmaschine1).val;
                                        var LeistungWaschmaschine1 = getState(WattWaschmaschine1).val;
                                        if (StatusWaschmaschine1 < 2) { // Maschine aus
                                        if (LeistungWaschmaschine1 > 200) {
                                        setState(StateWaschmaschine1, 2, true);
                                        setState(FarbeWaschmaschine1, "red", true);
                                        log('Script Keller-Geräte; Status: Waschmaschine läuft. (' + LeistungWaschmaschine1 + "W)", "info");
                                        } else if (LeistungWaschmaschine1 < 4) {
                                        if (LeistungWaschmaschine1 < 2) {
                                        setState(StateWaschmaschine1, 0, true);
                                        setState(FarbeWaschmaschine1, "blue", true);
                                        log("Script Keller-Geräte; Status: Waschmaschine ist ausgeschaltet. (" + LeistungWaschmaschine1 + "W)", "info");
                                        } else {
                                        setState(StateWaschmaschine1, 1, true);
                                        setState(FarbeWaschmaschine1, "green", true);
                                        log("Script Keller-Geräte; Status: Waschmaschine ist im Standby. (" + LeistungWaschmaschine1 + "W)", "info");
                                        }
                                        }
                                        } else if (StatusWaschmaschine1 === 2 || StatusWaschmaschine1 === null) {
                                        if (LeistungWaschmaschine1 < 4) {
                                        setState(StateWaschmaschine1, 1, true);
                                        setState(FarbeWaschmaschine1, "green", true);
                                        if (getState(OptinSayitW).val) {
                                        setState(SayitID, "Die Waschmaschine ist fertig.");
                                        }
                                        log("Script Keller-Geräte; Status: Waschmaschine ist fertig. (" + LeistungWaschmaschine1 + "W)", "info");
                                        }
                                        }
                                        ! // Waschmaschine2
                                        var StatusWaschmaschine2 = getState(StateWaschmaschine2).val;
                                        var LeistungWaschmaschine2 = getState(WattWaschmaschine2).val;
                                        if (StatusWaschmaschine2 < 2) { // Maschine aus
                                        if (LeistungWaschmaschine2 > 200) {
                                        setState(StateWaschmaschine2, 2, true);
                                        setState(FarbeWaschmaschine2, "red", true);
                                        log('Script Keller-Geräte; Status: Waschmaschine läuft. (' + LeistungWaschmaschine2 + "W)", "info");
                                        } else if (LeistungWaschmaschine2 < 4) {
                                        if (LeistungWaschmaschine2 < 2) {
                                        setState(StateWaschmaschine2, 0, true);
                                        setState(FarbeWaschmaschine2, "blue", true);
                                        log("Script Keller-Geräte; Status: Waschmaschine ist ausgeschaltet. (" + LeistungWaschmaschine2 + "W)", "info");
                                        } else {
                                        setState(StateWaschmaschine2, 1, true);
                                        setState(FarbeWaschmaschine2, "green", true);
                                        log("Script Keller-Geräte; Status: Waschmaschine ist im Standby. (" + LeistungWaschmaschine2 + "W)", "info");
                                        }
                                        }
                                        } else if (StatusWaschmaschine2 === 2 || StatusWaschmaschine2 === null) {
                                        if (LeistungWaschmaschine2 < 4) {
                                        setState(StateWaschmaschine2, 1, true);
                                        setState(FarbeWaschmaschine2, "green", true);
                                        if (getState(OptinSayitW).val) {
                                        setState(SayitID, "Die Waschmaschine ist fertig.");
                                        }
                                        log("Script Keller-Geräte; Status: Waschmaschine ist fertig. (" + LeistungWaschmaschine2 + "W)", "info");
                                        }
                                        }

                                        // Trockner
                                        var StatusTrockner =    getState(StateTrockner).val;
                                        var LeistungTrockner =  getState(WattTrockner).val;
                                        if (StatusTrockner < 2) {
                                            if (LeistungTrockner > 200) {
                                                setState(StateTrockner, 2, true);
                                                setState(FarbeTrockner, "red", true);
                                                log("Script Keller-Geräte; Status: Trockner läuft. (" + LeistungTrockner + "W)", "info");
                                            } else if (LeistungTrockner < 4) {
                                                if (LeistungTrockner < 2) {
                                                setState(StateTrockner, 0, true);
                                                setState(FarbeTrockner, "blue", true);
                                                log("Script Keller-Geräte; Status: Trockner ist ausgeschaltet. (" + LeistungTrockner + "W)", "info");
                                                } else {
                                                setState(StateTrockner, 1, true);
                                                setState(FarbeTrockner, "green", true);
                                                log("Script Keller-Geräte; Status: Trockner ist im Standby. (" + LeistungTrockner + "W)", "info");
                                                }
                                            }
                                        } else if (StatusTrockner === 2 || StatusTrockner === null) {
                                            if (LeistungTrockner < 4) {
                                                setState(StateTrockner, 1, true);
                                                setState(FarbeTrockner, "green", true);
                                                if (getState(OptinSayitW).val) {
                                                    setState(SayitID, "Der Trockner ist fertig.");
                                                }
                                                log("Script Keller-Geräte; Status: Trockner ist fertig. (" + LeistungTrockner + "W)", "info");
                                            }
                                        }
                                        

                                        }

                                        ! checkState(); // Beim Script-Start einmal durchlaufen lassen

                                        1 Reply Last reply Reply Quote 0
                                        • Y
                                          ykuendig last edited by

                                          Im Prinzip FAST 😄 Die Deklaration der Variablen (der Teil mit den var am Anfang) muss natürlich auch durchgehend mit 1 und 2 ergänzt sein.

                                          Hast Du mittelfristig vor über Lautsprecher Ansagen zu machen? Sonst könnte man den sayit Teil noch wegmachen. Auch den Farbteil könnte man weg machen, wenn Du willst.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            SigiMOE last edited by

                                            Ich habe es probiert, aber irgendwas mache ich noch etwas falsch.

                                            Ich bekomme den Datenpunkt für die 2. Waschmaschine nicht erzeugt ?

                                            Könntest Du mir das Skript auf 2 Waschmaschinen und 1 Trockner erweitern ?

                                            Say it habe ich noch nicht probiert, würde es aber irgendwann gerne mal nachholen. Zur Zeit lasse ich mir über dem MP3 Gong

                                            die Nachricht ansagen, wenn Waschmaschine oder Trockner fertig ist.

                                            Grüße

                                            Sigi

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            918
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            44
                                            4540
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo