Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Intelligentere Lösung gesucht - exakter Cronjob

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Intelligentere Lösung gesucht - exakter Cronjob

Geplant Angeheftet Gesperrt Verschoben Blockly
8 Beiträge 5 Kommentatoren 145 Aufrufe 4 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.
  • M Offline
    M Offline
    MJAS
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    ich benötige bitte Hilfe bei einem Skript, welches mir exakt jede Viertelstunde einen Verbrauchswert, evtl. in separaten Objektpunkten, erfasst.
    Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.
    Zudem möchte ich die Möglichkeit haben, die Werte in einer Google Sheets Tabelle zu archivieren, d.h. die Objektpunkte sollen zum Tageswechsel in genannter Tabelle archiviert werden.

    Mein Weg ist bisher:
    Ich hab 96 Objektpunkte angelegt und hab 96 einzelne Cronjobs (00:00, 00:15, 00:30...) in einem Skript, die mir die Objektpunkte mit Daten befüllen.
    Ist natürlich ein wahnsinniger Aufwand.

    Gibt es eine intelligentere Lösung, vielleicht mit einer Liste oder Array, die Objektpunkte zu speichern und auch für den "exakten" Cronjob ?

    Danke schonmal im voraus.
    Gruß
    Martin

    HomoranH AsgothianA arteckA 3 Antworten Letzte Antwort
    0
    • M MJAS

      Hallo zusammen,

      ich benötige bitte Hilfe bei einem Skript, welches mir exakt jede Viertelstunde einen Verbrauchswert, evtl. in separaten Objektpunkten, erfasst.
      Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.
      Zudem möchte ich die Möglichkeit haben, die Werte in einer Google Sheets Tabelle zu archivieren, d.h. die Objektpunkte sollen zum Tageswechsel in genannter Tabelle archiviert werden.

      Mein Weg ist bisher:
      Ich hab 96 Objektpunkte angelegt und hab 96 einzelne Cronjobs (00:00, 00:15, 00:30...) in einem Skript, die mir die Objektpunkte mit Daten befüllen.
      Ist natürlich ein wahnsinniger Aufwand.

      Gibt es eine intelligentere Lösung, vielleicht mit einer Liste oder Array, die Objektpunkte zu speichern und auch für den "exakten" Cronjob ?

      Danke schonmal im voraus.
      Gruß
      Martin

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #2

      @MJAS said in Intelligentere Lösung gesucht - exakter Cronjob:

      exakt jede Viertelstunde

      aber

      @MJAS said in Intelligentere Lösung gesucht - exakter Cronjob:

      Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.

      wo ist da der Unterschied?

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • M MJAS

        Hallo zusammen,

        ich benötige bitte Hilfe bei einem Skript, welches mir exakt jede Viertelstunde einen Verbrauchswert, evtl. in separaten Objektpunkten, erfasst.
        Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.
        Zudem möchte ich die Möglichkeit haben, die Werte in einer Google Sheets Tabelle zu archivieren, d.h. die Objektpunkte sollen zum Tageswechsel in genannter Tabelle archiviert werden.

        Mein Weg ist bisher:
        Ich hab 96 Objektpunkte angelegt und hab 96 einzelne Cronjobs (00:00, 00:15, 00:30...) in einem Skript, die mir die Objektpunkte mit Daten befüllen.
        Ist natürlich ein wahnsinniger Aufwand.

        Gibt es eine intelligentere Lösung, vielleicht mit einer Liste oder Array, die Objektpunkte zu speichern und auch für den "exakten" Cronjob ?

        Danke schonmal im voraus.
        Gruß
        Martin

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #3

        @MJAS said in Intelligentere Lösung gesucht - exakter Cronjob:

        Hallo zusammen,

        ich benötige bitte Hilfe bei einem Skript, welches mir exakt jede Viertelstunde einen Verbrauchswert, evtl. in separaten Objektpunkten, erfasst.
        Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.
        Zudem möchte ich die Möglichkeit haben, die Werte in einer Google Sheets Tabelle zu archivieren, d.h. die Objektpunkte sollen zum Tageswechsel in genannter Tabelle archiviert werden.

        Was ist an dem 'normalen' Cron nicht genau genug ? Wie ungenau ist das denn aktuell.

        Mein Weg ist bisher:
        Ich hab 96 Objektpunkte angelegt und hab 96 einzelne Cronjobs (00:00, 00:15, 00:30...) in einem Skript, die mir die Objektpunkte mit Daten befüllen.
        Ist natürlich ein wahnsinniger Aufwand.

        Aufwand, und letztendlich auch witzlos, weil der Eintrag */15 * * * * letztendlich genau das gleiche Ergebnis hat wie deine 96 Datenpunkte. Die Ungenauigkeiten kommen aus der Laufzeit im System, sprich der Zeit zwischen das OS erkennt das der Zeitpunkt erreicht ist und der Wert ist im DP gespeichert.

        Gibt es eine intelligentere Lösung, vielleicht mit einer Liste oder Array, die Objektpunkte zu speichern und auch für den "exakten" Cronjob ?

        Gibt es: Nutz den normalen Cron mit */15 * * * *, stell sicher dass:

        • der Aktuelle Verbrauchswert bereits im Speicher ist (so das du den nicht aus dem Objektbaum oder sogar vom Gerät holen musst)
        • sämtliche notwendigen Berechnungen bereits erfolgt sind
        • das System ansonsten möglichst wenig Zeit-basierte Aktionen macht (sprich idealerweise genau einen cron-Job der zur vollen 1/4 Stunde aktiv wird.
        • Die Systemzeit auf die µs exakt ist (viel Spass dabei)
        • Das System sich zu dem Zeitpunkt idealerweise langweilt, und nicht mit shared resources arbeitet. (Also auf dedizierter Hardware nativ läuft, ohne Docker, VM, Proxxmox, etc, und auch nicht auf einem NAS)

        Unterm Strich stellt sich die Frage wozu das ganze ? Was muss mit so genauen Heartbeats geschehen das Verzögerungen im 100-300 ms Bereich (und das sollte hoch gegriffen sein) problematisch sind ?

        Danke schonmal im voraus.
        Gruß
        Martin

        A.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        1 Antwort Letzte Antwort
        1
        • M MJAS

          Hallo zusammen,

          ich benötige bitte Hilfe bei einem Skript, welches mir exakt jede Viertelstunde einen Verbrauchswert, evtl. in separaten Objektpunkten, erfasst.
          Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.
          Zudem möchte ich die Möglichkeit haben, die Werte in einer Google Sheets Tabelle zu archivieren, d.h. die Objektpunkte sollen zum Tageswechsel in genannter Tabelle archiviert werden.

          Mein Weg ist bisher:
          Ich hab 96 Objektpunkte angelegt und hab 96 einzelne Cronjobs (00:00, 00:15, 00:30...) in einem Skript, die mir die Objektpunkte mit Daten befüllen.
          Ist natürlich ein wahnsinniger Aufwand.

          Gibt es eine intelligentere Lösung, vielleicht mit einer Liste oder Array, die Objektpunkte zu speichern und auch für den "exakten" Cronjob ?

          Danke schonmal im voraus.
          Gruß
          Martin

          arteckA Offline
          arteckA Offline
          arteck
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @MJAS said in Intelligentere Lösung gesucht - exakter Cronjob:

          Der normale Cronjob "alle 15 Minuten" ist mir hierfür nicht exakt genug.

          hääää.. definiere nicht exakt genug ...

          zigbee hab ich, zwave auch, nuc's genauso und HA auch

          1 Antwort Letzte Antwort
          0
          • M Offline
            M Offline
            MJAS
            schrieb am zuletzt editiert von
            #5

            Mit "nicht exakt" war gemeint, dass ich dann Werte um 00:17 (anstatt 00:15) oder 00:46 (anstatt 00:45) hatte, was ich mir nicht durch eine Systemlatenz erklären konnte.
            Ich hab jetzt auf einem Cronjob [ 0,15,30,45 * * * * ] umgebaut.

            Die Datenpunkte hab ich gelöscht und einen JSON-Datenpunkt angelegt.

            HomoranH 1 Antwort Letzte Antwort
            0
            • M MJAS

              Mit "nicht exakt" war gemeint, dass ich dann Werte um 00:17 (anstatt 00:15) oder 00:46 (anstatt 00:45) hatte, was ich mir nicht durch eine Systemlatenz erklären konnte.
              Ich hab jetzt auf einem Cronjob [ 0,15,30,45 * * * * ] umgebaut.

              Die Datenpunkte hab ich gelöscht und einen JSON-Datenpunkt angelegt.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #6

              @MJAS said in Intelligentere Lösung gesucht - exakter Cronjob:

              dass ich dann Werte um 00:17 (anstatt 00:15) oder 00:46 (anstatt 00:45)

              Das liegt definitiv nicht am Cronjob selbst.

              Lies dir mal den Post von @Asgothian genau durch, vielleicht trifft da etwas auf dich zu

              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              1 Antwort Letzte Antwort
              1
              • MartinPM Online
                MartinPM Online
                MartinP
                schrieb am zuletzt editiert von
                #7

                Es geht wahrscheinlich darum, nicht nur den Messwert exakt alle Viertelstunde zu erfassen, sondern er sollte nicht durch Zwischenspeicherung veraltet sein.
                Vielleicht muss man da nicht nur den letzten Wert in einer Variablen im Skript speichern, sondern auch noch Zeitstempel des letzten und vorletzten Wertes ablegen, und daraus den Wert für die vollen Viertelstunden interpoliert.

                Interessant wäre auch, ob die Viertelstundenwerte sofort, oder auch etwas später vorliegen können.

                Dazu müsste man wissen, ob es um Aufzeichnung oder irgendwelche Regelschleifen geht.

                Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.13)
                kernel Linux pve 6.8.12-15-pve
                6 GByte RAM für den Container
                Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                Remote-Access über Wireguard der Fritzbox

                AsgothianA 1 Antwort Letzte Antwort
                0
                • MartinPM MartinP

                  Es geht wahrscheinlich darum, nicht nur den Messwert exakt alle Viertelstunde zu erfassen, sondern er sollte nicht durch Zwischenspeicherung veraltet sein.
                  Vielleicht muss man da nicht nur den letzten Wert in einer Variablen im Skript speichern, sondern auch noch Zeitstempel des letzten und vorletzten Wertes ablegen, und daraus den Wert für die vollen Viertelstunden interpoliert.

                  Interessant wäre auch, ob die Viertelstundenwerte sofort, oder auch etwas später vorliegen können.

                  Dazu müsste man wissen, ob es um Aufzeichnung oder irgendwelche Regelschleifen geht.

                  AsgothianA Offline
                  AsgothianA Offline
                  Asgothian
                  Developer
                  schrieb am zuletzt editiert von
                  #8

                  @MartinP
                  Alles Spekulation. Die entscheidenden Informationen liegen uns nicht vor. Weder wo die Verzögerungen her kommen, noch warum sie so problematisch sein sollen.

                  Bevor da nicht mehr Informationen kommen macht es wenig Sinn sich den Kopf an der Glaskugel aufzureiben. 🙂

                  A.

                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

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


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  354

                  Online

                  32.4k

                  Benutzer

                  81.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
                  • Aktuell
                  • Tags
                  • Ungelesen 0
                  • Kategorien
                  • Unreplied
                  • Beliebt
                  • GitHub
                  • Docu
                  • Hilfe