Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Trigger oder Impuls mit einem Funktionsblock programmieren

    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

    Trigger oder Impuls mit einem Funktionsblock programmieren

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

      Hallo Leute,

      ich bin gerade mit einem privaten Projekt beschäftigt. Im Projekt benötige ich ein Impuls, der bisschen mehr kann als der Standard Trigger.

      So nun zu meiner Frage: Kann ich mit einem Funktionsblock einen Trigger erstellen der im Code eingestellt wird, z.B. auf 5s und jedesmal wenn ich einen Button drücke, sollte die Zeit auf z.B. 1s erhöht werden.

      Also einmal Button drücken –> Impuls schaltet 5 Sekunden einen Output

      2. mal Button drücken --> Impuls schaltet 6 einen Output

      usw.

      Da muss ich noch einen Counter mit einbauen, aber das Ganze gelingt mir nicht. Es scheitert schon am Trigger selbst 😞

      Vielleicht kann mir einer einen Tipp geben? Vielen Dank im Voraus.

      1 Reply Last reply Reply Quote 0
      • apollon77
        apollon77 last edited by

        Zeig doch mal den Code den du machen würdest der nicht tut.

        Du kannst lokale Variablen wie einen Zähler haben den du immer im trigger erhöhst und aufaddierst. Musst die Variable nur außerhalb des triggers definieren.

        Und die Logik wann das zurückgesetzt wird fehlt noch.

        Gesendet vom Handy …

        1 Reply Last reply Reply Quote 0
        • P
          Partyarti777 last edited by

          Hallo, danke für deine Antwort. Mein Code sieht bisher wie folgt aus:

          var trigger = context.get("trigger") || 5; //Zeit

          if(msg.payload == "var1"){ //Button1

          for(var i = 0; i < trigger; i++){

          node.send({payload:1});

          }

          trigger +=1; //Zeit verlängern

          msg.payload = trigger;

          context.set("trigger", trigger);

          }

          else if(msg.payload == "res1"){ //Reset-Button

          trigger = 5;

          msg.payload = trigger;

          context.set("trigger", trigger);

          }

          return msg;

          den Counter habe ich schonmal. Allerdings komme ich beim Trigger einfach nicht weiter…

          Gruß

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

          Support us

          ioBroker
          Community Adapters
          Donate

          946
          Online

          31.7k
          Users

          79.9k
          Topics

          1.3m
          Posts

          2
          3
          1376
          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