Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Einmaliger Trigger, wenn ein Wert unter eine Schwelle fällt

    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

    Einmaliger Trigger, wenn ein Wert unter eine Schwelle fällt

    This topic has been deleted. Only users with topic management privileges can see it.
    • SmartStuffCoyote
      SmartStuffCoyote last edited by

      Hallo,

      ich brauche noch etwas Erläuterung zum "change"-Parameter im Javascript. ich meiner Homematic-CCU3 habe ich ein Skript, das eine Pushover-Nachricht schickt, sobald der von der Waschmaschine an der Messsteckdose gezogene Strom unter 10 mA fällt, die Wama also in den Standby geht und mit dem Lauf fertig ist. Sieht so aus:

      • Wenn Steckdose.Strom im Wertebereich > 10 mA, dann bei Änderung auslösen
      • Dann (nichts)
      • Sonst (Pushover-Nachricht versenden)

      Ich hab offen gesagt keine Ahnung mehr, warum ich das über das "sonst" gemacht habe - dürfte aber meine Gründe gehabt haben. (Ich muss mal ein zweites Programm "richtig rum" anlegen und schauen, wann das triggert.)

      Jedenfalls hätte ich das gerne in den ioBroker ausgelagert. Ich suche da nach einer Bedingung, die beschreibt, dass ein Wert von "> 10" auf "<= 10" fällt, ohne über einen Datenpunkt gehen zu müssen:

      on ... change "lt":

      • wenn Strom > 10, Datenpunkt-Flag aktiv setzen
      • wenn Strom <= 10 und Datenpunkt aktiv, dann Nachricht schreiben und Datenpunkt-Flag inaktiv setzen

      Geht das vielleicht einfacher? Da der Verbrauch unter 10 mA ja immer noch leicht schwanken kann im Standby, soll das nicht jedes Mal erneut eine Nachricht auslösen. Das mit den Datenpunkten um mir diesen Umstand zu merken ist aber auch irgendwie unpraktisch.

      Homoran paul53 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @SmartStuffCoyote last edited by

        @smartstuffcoyote sagte in Einmaliger Trigger, wenn ein Wert unter eine Schwelle fällt:

        Ich suche da nach einer Bedingung, die beschreibt, dass ein Wert von "> 10" auf "<= 10" fällt, ohne über einen Datenpunkt gehen zu müssen:

        welcher Wert soll sich denn ändern wenn nicht der eines Datenpunkts?

        Natürlich geht das auch mit einer Variablen

        1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @SmartStuffCoyote last edited by paul53

          @smartstuffcoyote sagte: Wert von "> 10" auf "<= 10" fällt

          on(idStrom, function(dp) {
             if(dp.state.val <= 10 && dp.oldState.val > 10) Nachricht();
          });
          

          Oder als Blockly:

          Bild_2022-07-14_132800716.png

          Auswertung nur im Trigger:

          const gw = 10; // Grenzwert
          on({id: idStrom, valLe: gw, oldValGt: gw}, Nachricht);
          
          SmartStuffCoyote 1 Reply Last reply Reply Quote 1
          • SmartStuffCoyote
            SmartStuffCoyote @paul53 last edited by

            @paul53 Danke dir, das scheint die Lösung zu sein. 🙂

            (An Blockly scheitert mein Verständnis irgendwie. Ich nehm lieber den Code.)

            @Homoran Sorry, hab mich unklar ausgedrückt. Ich wollte nicht extra nochmal einen User-Datenpunkt definieren müssen, nur um mir den Ein-/Aus-Zustand der Waschmaschine zu speichern.

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

            Support us

            ioBroker
            Community Adapters
            Donate

            919
            Online

            31.9k
            Users

            80.1k
            Topics

            1.3m
            Posts

            3
            4
            197
            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