Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly zählt zu schnell!

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    15
    1
    213

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Blockly zählt zu schnell!

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
10 Beiträge 5 Kommentatoren 1.2k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • B Offline
    B Offline
    Brunoz
    schrieb am zuletzt editiert von
    #1

    Guten Morgen,

    ich versuche mich an einem einfachen (dachte ich zumindest) Blockly-Script zur Zeitmessung.

    Die Laufzeit nach dem Einschalten meiner Geräte (PC Kids, Waschmaschine, Trockner) möchte ich gerne visuell auf der VIS anzeigen lassen.

    Sollte ja, denke ich kein Problem sein - machte mich heran, mein erstes eigenes Blockly-Script zu schreiben - und …. scheitere jetzt an folgendem Problem.

    Hier erstmal mein Script:

    16387_bild1.jpg

    (ich weiß auch, das es ähnliche Scripte gibt, aber ich wollte einfach zur Einarbeitung, mein eigenes schreiben) :)

    Zum eigentlichem Problem.

    In diesem Fall, habe ich eine Lampe zum Start des Script herangenommen.

    Lampe an …. Script fängt an zu zählen .... 1,2,3, funktioniert auch so weit - nur nach ein paar Sekunden, läuft der Zähler zu schnell - es ignoriert quasi den Intervall. (nach ein paar Sekunden ist schon die erste Minute erreicht. Er zählt aber fleissig bis 59 hoch!)

    Könnt ihr mir sagen, wo mein Denkfehler in dem Script ist?

    Danke vorab.

    Gruß

    Brunoz

    1 Antwort Letzte Antwort
    0
    • DutchmanD Offline
      DutchmanD Offline
      Dutchman
      Developer Most Active Administrators
      schrieb am zuletzt editiert von
      #2

      Interessant sieht aus alsob er 100ms nimmt anstatt 1000ms.

      Oben rechts kannste von blockly nach JavaScript, stell das Mal drauf und poste den Code.

      Sent from my iPhone using Tapatalk

      1 Antwort Letzte Antwort
      0
      • B Offline
        B Offline
        Brunoz
        schrieb am zuletzt editiert von
        #3

        Klar mach ich! :)

        
        var Intervall, LichtzaehlerSekunde, LichtzaehlerMinute, LichtzaehlerStunde;
        
        on({id: "tuya.0.002007555ccf7f53378d.1"/*switch_on*/, change: "ne"}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          if (getState("tuya.0.002007555ccf7f53378d.1").val == true) {
            LichtzaehlerSekunde = 0;
            LichtzaehlerMinute = 0;
            LichtzaehlerStunde = 0;
          }
        });
        
        on({id: "tuya.0.002007555ccf7f53378d.1"/*switch_on*/, val: true}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          Intervall = setInterval(function () {
            LichtzaehlerSekunde = (typeof LichtzaehlerSekunde == 'number' ? LichtzaehlerSekunde : 0) + 1;
            if (LichtzaehlerSekunde > 59) {
              LichtzaehlerMinute = (typeof LichtzaehlerMinute == 'number' ? LichtzaehlerMinute : 0) + 1;
              LichtzaehlerSekunde = 0;
            }
            if (LichtzaehlerMinute > 59) {
              LichtzaehlerStunde = (typeof LichtzaehlerStunde == 'number' ? LichtzaehlerStunde : 0) + 1;
              LichtzaehlerMinute = 0;
            }
            console.log(([LichtzaehlerStunde,' Stunde(n) ',LichtzaehlerMinute,' Minute(n)',LichtzaehlerSekunde,' Sekunde(n)'].join('')));
            setState("javascript.0.Zeit.DauerLicht"/*DauerLicht*/, ([LichtzaehlerStunde,' Stunde(n) ',LichtzaehlerMinute,' Minute(n)',LichtzaehlerSekunde,' Sekunde(n)'].join('')));
          }, 1000);
        });
        on({id: "tuya.0.002007555ccf7f53378d.1"/*switch_on*/, val: false}, function (obj) {
          var value = obj.state.val;
          var oldValue = obj.oldState.val;
          (function () {if (Intervall) {clearInterval(Intervall); Intervall = null;}})();
        });
        
        
        1 Antwort Letzte Antwort
        0
        • DutchmanD Offline
          DutchmanD Offline
          Dutchman
          Developer Most Active Administrators
          schrieb am zuletzt editiert von
          #4

          Das Script ist OK, triggerr er eventuell öfter wodurch es mehrfach läuft?

          Sent from my iPhone using Tapatalk

          1 Antwort Letzte Antwort
          0
          • B Offline
            B Offline
            Brunoz
            schrieb am zuletzt editiert von
            #5

            Danke für den Tipp!

            Da dran lags!

            Vielen Dank.

            1 Antwort Letzte Antwort
            0
            • NashraN Offline
              NashraN Offline
              Nashra
              Most Active Forum Testing
              schrieb am zuletzt editiert von
              #6

              @Brunoz:

              Danke für den Tipp!

              Da dran lags!

              Vielen Dank. `

              Moin, wie hast du das gelöst?

              Da ich genau sowas gesucht habe, dein Blockly mal nachgebaut.

              Aber bei mir fängt er auch an zu rennen.

              Gruß Ralf
              Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              1 Antwort Letzte Antwort
              0
              • K Offline
                K Offline
                Kueppert
                schrieb am zuletzt editiert von
                #7

                Ich würde vor dem Intervall ein Stop Intervall setzen. Damit verhindert man die mehrfach Ausführung vom Intervall…

                Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

                UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

                1 Antwort Letzte Antwort
                0
                • NashraN Offline
                  NashraN Offline
                  Nashra
                  Most Active Forum Testing
                  schrieb am zuletzt editiert von
                  #8

                  @Kueppert:

                  Ich würde vor dem Intervall ein Stop Intervall setzen. Damit verhindert man die mehrfach Ausführung vom Intervall…

                  Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk `
                  Jow und wieder was gelernt, Danke

                  Jetzt rennt er nicht mehr und zählt sauber hoch.

                  Gruß Ralf
                  Mir egal, wer Dein Vater ist! Wenn ich hier angel, wird nicht übers Wasser gelaufen!!

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  1 Antwort Letzte Antwort
                  0
                  • crunchipC Offline
                    crunchipC Offline
                    crunchip
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #9

                    eine Frage hätte ich,

                    1.) wenn man so ein script laufen lässt, wie bekommt man das hin, das nicht das ganze log zugemüllt wird?

                    2.) wie bekomm ich das hin, das am Ende der Laufzeit ein Datenpunkt gesetzt wird, den ich z.b. in sql schreiben, um mir eine Statistik zu erstellen?

                    Gruss

                    umgestiegen von Proxmox auf Unraid

                    1 Antwort Letzte Antwort
                    0
                    • K Offline
                      K Offline
                      Kueppert
                      schrieb am zuletzt editiert von
                      #10

                      @crunchip:

                      eine Frage hätte ich,

                      1.) wenn man so ein script laufen lässt, wie bekommt man das hin, das nicht das ganze log zugemüllt wird?

                      2.) wie bekomm ich das hin, das am Ende der Laufzeit ein Datenpunkt gesetzt wird, den ich z.b. in sql schreiben, um mir eine Statistik zu erstellen?

                      Gruss ` Zu 1) du nutzt den Block "debug output" der soll das Log vollmüllen ;D

                      Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

                      UDM Pro, Intel NUC - ioBroker in Proxmox-VM, PiHole+Grafana&Influx+TasmoAdmin in LXCs, Raspberry Pi3 (als CCU), Zigbee-Stick Sonoff, Synology DS918+

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      556

                      Online

                      32.7k

                      Benutzer

                      82.4k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2025
                      logo
                      • Anmelden

                      • Du hast noch kein Konto? Registrieren

                      • Anmelden oder registrieren, um zu suchen
                      • Erster Beitrag
                        Letzter Beitrag
                      0
                      • Home
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe