Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Dynamische Kennlinie in IOBroker umsetzen? Blocky?

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    389

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

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

Dynamische Kennlinie in IOBroker umsetzen? Blocky?

Scheduled Pinned Locked Moved Blockly
6 Posts 3 Posters 665 Views 4 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Offline
    C Offline
    CKassiopaia
    wrote on last edited by
    #1

    Re: Kurve vom Thyristorsteller angleichen

    Ich habe eine Frage, welche vielleicht an diesem alten Thema anküpft.

    Ich habe diverse Anwendungsfälle, in denen ich gerne eine dynamische Kennlinie (z.B. im 0_userdata gespeichert) mit einer variablen Anzahl an Stützstellen in einem Script (z.B. Blockly) in einen Ausgangswert umrechnen... Also so ähnlich, wie in dem alten Thread zur Kurve vom Thyristorsteller... nur halt dynamisch und nicht mit festen Werten im Blockly-Script.

    Als Beispiel möchte ich z.B. eine dynamische Anpassung der Vorlauftemperatur der Fußbodenheizung in Abhängigkeit der Außentemperatur hinterlegen ("witterungsgeführte Heizkennlinie").

    z.B. mit diesen (ausgedachten) Werten:
    Außentemperatur: [-10.01, -10, 0, 10, 10.01] °C
    Vorlauftemperatur: [35, 35, 30, 20, 20] °C
    ... d.h. die Kennlinie ist stetig und in den Abschnitten linear. Z.-B. soll bei -10°C Außentemperatur eine Vorlauftemperatur von 35 °C eingestellt werden., bei -5 °C Außentemperatur soll dann 32,5 °C eingestellt werden.

    In C, Matlab oder sonstigen Programmiersprachen wüsste ich auf Anhieb wie ich das umsetze, aber wie wäre in IOBroker ein idealer Weg für eine solche Aufgabe? Bei JS und Blockly bin ich kein Profi...

    Wie (als was?) muss/kann ich in 0_userdata eine derartige Kennlinie speichern? Als JSON? Als Objekt? Als Liste?
    Wie könnte ich das in Blockly abfragen bzw. Umrechnen? Hat jemand eine Idee oder Hilfen? Oder gibt es gar eine viel einfachere Möglichkeit in IOBroker eine solche Aufgabe zu bearbeiten?

    MartinPM paul53P 2 Replies Last reply
    0
    • C CKassiopaia

      Re: Kurve vom Thyristorsteller angleichen

      Ich habe eine Frage, welche vielleicht an diesem alten Thema anküpft.

      Ich habe diverse Anwendungsfälle, in denen ich gerne eine dynamische Kennlinie (z.B. im 0_userdata gespeichert) mit einer variablen Anzahl an Stützstellen in einem Script (z.B. Blockly) in einen Ausgangswert umrechnen... Also so ähnlich, wie in dem alten Thread zur Kurve vom Thyristorsteller... nur halt dynamisch und nicht mit festen Werten im Blockly-Script.

      Als Beispiel möchte ich z.B. eine dynamische Anpassung der Vorlauftemperatur der Fußbodenheizung in Abhängigkeit der Außentemperatur hinterlegen ("witterungsgeführte Heizkennlinie").

      z.B. mit diesen (ausgedachten) Werten:
      Außentemperatur: [-10.01, -10, 0, 10, 10.01] °C
      Vorlauftemperatur: [35, 35, 30, 20, 20] °C
      ... d.h. die Kennlinie ist stetig und in den Abschnitten linear. Z.-B. soll bei -10°C Außentemperatur eine Vorlauftemperatur von 35 °C eingestellt werden., bei -5 °C Außentemperatur soll dann 32,5 °C eingestellt werden.

      In C, Matlab oder sonstigen Programmiersprachen wüsste ich auf Anhieb wie ich das umsetze, aber wie wäre in IOBroker ein idealer Weg für eine solche Aufgabe? Bei JS und Blockly bin ich kein Profi...

      Wie (als was?) muss/kann ich in 0_userdata eine derartige Kennlinie speichern? Als JSON? Als Objekt? Als Liste?
      Wie könnte ich das in Blockly abfragen bzw. Umrechnen? Hat jemand eine Idee oder Hilfen? Oder gibt es gar eine viel einfachere Möglichkeit in IOBroker eine solche Aufgabe zu bearbeiten?

      MartinPM Online
      MartinPM Online
      MartinP
      wrote on last edited by
      #2

      @ckassiopaia Ist das nicht vielleicht eher ein Fall für Javascript?

      Ansonsten muss man da wohl eine Intervallabfrage mit Wenn/Dann/Sonst über die Außentemperatur machen, und dann die Vorlauftemperatur mit Mathematik-Blöcken entsprechend berechnen.

      TA1, TA2,TA3,TA4
      und
      TV1, TV2, TV3, TV4

      Intervall [TA1 ... TA2] TV=TV1 + (TV2-TV1)* (TA-TA1) / (TA2-TA1);
      usw...

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

      1 Reply Last reply
      0
      • C CKassiopaia

        Re: Kurve vom Thyristorsteller angleichen

        Ich habe eine Frage, welche vielleicht an diesem alten Thema anküpft.

        Ich habe diverse Anwendungsfälle, in denen ich gerne eine dynamische Kennlinie (z.B. im 0_userdata gespeichert) mit einer variablen Anzahl an Stützstellen in einem Script (z.B. Blockly) in einen Ausgangswert umrechnen... Also so ähnlich, wie in dem alten Thread zur Kurve vom Thyristorsteller... nur halt dynamisch und nicht mit festen Werten im Blockly-Script.

        Als Beispiel möchte ich z.B. eine dynamische Anpassung der Vorlauftemperatur der Fußbodenheizung in Abhängigkeit der Außentemperatur hinterlegen ("witterungsgeführte Heizkennlinie").

        z.B. mit diesen (ausgedachten) Werten:
        Außentemperatur: [-10.01, -10, 0, 10, 10.01] °C
        Vorlauftemperatur: [35, 35, 30, 20, 20] °C
        ... d.h. die Kennlinie ist stetig und in den Abschnitten linear. Z.-B. soll bei -10°C Außentemperatur eine Vorlauftemperatur von 35 °C eingestellt werden., bei -5 °C Außentemperatur soll dann 32,5 °C eingestellt werden.

        In C, Matlab oder sonstigen Programmiersprachen wüsste ich auf Anhieb wie ich das umsetze, aber wie wäre in IOBroker ein idealer Weg für eine solche Aufgabe? Bei JS und Blockly bin ich kein Profi...

        Wie (als was?) muss/kann ich in 0_userdata eine derartige Kennlinie speichern? Als JSON? Als Objekt? Als Liste?
        Wie könnte ich das in Blockly abfragen bzw. Umrechnen? Hat jemand eine Idee oder Hilfen? Oder gibt es gar eine viel einfachere Möglichkeit in IOBroker eine solche Aufgabe zu bearbeiten?

        paul53P Offline
        paul53P Offline
        paul53
        wrote on last edited by paul53
        #3

        @ckassiopaia sagte: variablen Anzahl an Stützstellen ... "witterungsgeführte Heizkennlinie"

        Das geht auch ohne "Stützstellen" mit der richtigen Formel.

        EDIT: Teste mal mit Steilheit = 0.7 und Exp = 1.1.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        C 1 Reply Last reply
        0
        • paul53P paul53

          @ckassiopaia sagte: variablen Anzahl an Stützstellen ... "witterungsgeführte Heizkennlinie"

          Das geht auch ohne "Stützstellen" mit der richtigen Formel.

          EDIT: Teste mal mit Steilheit = 0.7 und Exp = 1.1.

          C Offline
          C Offline
          CKassiopaia
          wrote on last edited by
          #4

          @paul53 Danke für die Links und Hilfen...
          Tatsächlich geht es für die Witterungsgeführte Vorlauftemperatur mit einer entsprechenden Formel... Das war von mir aber hier an der Stelle nur als Beispiel für eine derartige Umrechnung...

          Also Zwei Kennlinien mit variabler Anzahl an Stützstellen... In C würde ich dazu ein Array für den Eingangsvektor verwenden und die nächstgelegene Stützstelle suchen... Und dann im Ausgangsvektor entsprechend lienear interpolieren. Oder in Matlab einfach mit interp1 als lookup table...

          In IObroker wüsste ich aber gerade nicht mal wie ich die Vektoren anlegen sollte und wie man sie dann unkompliziert verarbeitet...

          paul53P 1 Reply Last reply
          0
          • C CKassiopaia

            @paul53 Danke für die Links und Hilfen...
            Tatsächlich geht es für die Witterungsgeführte Vorlauftemperatur mit einer entsprechenden Formel... Das war von mir aber hier an der Stelle nur als Beispiel für eine derartige Umrechnung...

            Also Zwei Kennlinien mit variabler Anzahl an Stützstellen... In C würde ich dazu ein Array für den Eingangsvektor verwenden und die nächstgelegene Stützstelle suchen... Und dann im Ausgangsvektor entsprechend lienear interpolieren. Oder in Matlab einfach mit interp1 als lookup table...

            In IObroker wüsste ich aber gerade nicht mal wie ich die Vektoren anlegen sollte und wie man sie dann unkompliziert verarbeitet...

            paul53P Offline
            paul53P Offline
            paul53
            wrote on last edited by paul53
            #5

            @ckassiopaia sagte: Array für den Eingangsvektor verwenden und die nächstgelegene Stützstelle suchen... Und dann im Ausgangsvektor entsprechend lienear interpolieren.

            Das geht auch in Blockly mit 2 korrespondierenden Listen. Beispiel:

            Blockly_temp.JPG

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            C 1 Reply Last reply
            1
            • paul53P paul53

              @ckassiopaia sagte: Array für den Eingangsvektor verwenden und die nächstgelegene Stützstelle suchen... Und dann im Ausgangsvektor entsprechend lienear interpolieren.

              Das geht auch in Blockly mit 2 korrespondierenden Listen. Beispiel:

              Blockly_temp.JPG

              C Offline
              C Offline
              CKassiopaia
              wrote on last edited by
              #6

              Vielen Dank @paul53 !
              Das hat funktioniert. Ich habe noch die Grenzwerte abgefangen, aber sonst scheint es zu funktionieren...

              Vielleicht bin ich nur von C verwöhnt, wo das in einem Zwei-Zeiler umsetzbar ist :)

              1 Reply Last reply
              0
              Reply
              • Reply as topic
              Log in to reply
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes


              Support us

              ioBroker
              Community Adapters
              Donate

              726

              Online

              32.7k

              Users

              82.5k

              Topics

              1.3m

              Posts
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
              ioBroker Community 2014-2025
              logo
              • Login

              • Don't have an account? Register

              • Login or register to search.
              • First post
                Last post
              0
              • Home
              • Recent
              • Tags
              • Unread 0
              • Categories
              • Unreplied
              • Popular
              • GitHub
              • Docu
              • Hilfe