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. JavaScript
  5. [gelöst] gefühlte Temperatur

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

[gelöst] gefühlte Temperatur

Geplant Angeheftet Gesperrt Verschoben JavaScript
45 Beiträge 5 Kommentatoren 3.2k 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.
  • P Peter666666

    Hallo Leute,

    Ich möchte gerne in Vis die gefühlte Temperatur darstellen wozu ich die Außentemperatur & Windgeschwindigkeit von Netatmo habe. Habe mir aus dem Netz ein Skript kopiert und so gut ich wusste meine ID`s eingetragen und die Formel geändert. Wenn ich nun das Skript starte wird mir aber kein Wert in die Userdata geschrieben. Was fehlt mir da noch damit mir der Wert berechnet wird? Bin leider blutiger Anfänger in JS.

    ****function Start() {
    Berechne();
    }function gefühlteTemperatur(temp, wind){
    var t =temp
    var v = wind
    var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16;
    
    return w;
    }
    
    function Berechne(){
    var t = parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
    var v =parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
    var w = gefühlteTemperatur(t,v);
    setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",w.toFixed(1));
    }
    
    Start();****
    

    LG Peter

    MOD EDIT: Log in Code Tags gesetzt

    wendy2702W Offline
    wendy2702W Offline
    wendy2702
    schrieb am zuletzt editiert von
    #2

    @peter666666 sagte in gefühlte Temperatur:

    setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",w.toFixed(1));

    Bin auch kein Profi aber gibt es diesen Datenpunkt denn ?

    Bitte keine Fragen per PN, die gehören ins Forum!

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

    P 1 Antwort Letzte Antwort
    0
    • wendy2702W wendy2702

      @peter666666 sagte in gefühlte Temperatur:

      setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",w.toFixed(1));

      Bin auch kein Profi aber gibt es diesen Datenpunkt denn ?

      P Offline
      P Offline
      Peter666666
      schrieb am zuletzt editiert von
      #3

      @wendy2702 0_userdata.0.Hausdaten.gefühlte_Temperatur habe ich erstellt.

      LG Peter

      Intel NUC i5 / 16GB RAM / 512GB SSD
      Synology DS220+ 10GB RAM / 8TB

      wendy2702W 1 Antwort Letzte Antwort
      0
      • P Peter666666

        @wendy2702 0_userdata.0.Hausdaten.gefühlte_Temperatur habe ich erstellt.

        wendy2702W Offline
        wendy2702W Offline
        wendy2702
        schrieb am zuletzt editiert von
        #4

        @peter666666 Woher kommen die "****" im Script? Sind die wirklich vorhanden oder hast du die im Thread eingefügt?

        Gib es irgendeine Meldung/Log beim Script aktivieren im Adapter? Ist das Script aktiv? Wie hast du den DP angelegt bzw. was erwartet er? STring, Number, Boolean.... ?

        Bitte keine Fragen per PN, die gehören ins Forum!

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

        P 1 Antwort Letzte Antwort
        0
        • wendy2702W wendy2702

          @peter666666 Woher kommen die "****" im Script? Sind die wirklich vorhanden oder hast du die im Thread eingefügt?

          Gib es irgendeine Meldung/Log beim Script aktivieren im Adapter? Ist das Script aktiv? Wie hast du den DP angelegt bzw. was erwartet er? STring, Number, Boolean.... ?

          P Offline
          P Offline
          Peter666666
          schrieb am zuletzt editiert von Peter666666
          #5

          @wendy2702 **** sind im original nicht vorhanden.

          2023-01-23 12_45_02-javascript - e73f64821262.png

          2023-01-23 12_51_37-objects - e73f64821262.png

          DP sind von dem Netatmo Adapter und stehen als State zur Verfügung wenn ich das richtig verstehe.

          LG Peter

          Intel NUC i5 / 16GB RAM / 512GB SSD
          Synology DS220+ 10GB RAM / 8TB

          CodierknechtC wendy2702W 2 Antworten Letzte Antwort
          0
          • P Peter666666

            @wendy2702 **** sind im original nicht vorhanden.

            2023-01-23 12_45_02-javascript - e73f64821262.png

            2023-01-23 12_51_37-objects - e73f64821262.png

            DP sind von dem Netatmo Adapter und stehen als State zur Verfügung wenn ich das richtig verstehe.

            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #6

            @peter666666 sagte in gefühlte Temperatur:

            **** sind im original nicht vorhanden.

            Doch:
            512752cc-b1ac-4b1f-a8d7-ac09038f4c4d-image.png
            Doppelte Multiplikation wird nicht funktionieren.
            Ob der Rest der Formel stimmt, kann ich nicht beurteilen. Multiplikationen muss man eigentlich nicht klammern - es gilt auch in JS: Punkt- vor Strichrechnung.

            Rücke den Code mal sauber ein - macht das Lesen deutlich einfacher.

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            P paul53P 2 Antworten Letzte Antwort
            0
            • CodierknechtC Codierknecht

              @peter666666 sagte in gefühlte Temperatur:

              **** sind im original nicht vorhanden.

              Doch:
              512752cc-b1ac-4b1f-a8d7-ac09038f4c4d-image.png
              Doppelte Multiplikation wird nicht funktionieren.
              Ob der Rest der Formel stimmt, kann ich nicht beurteilen. Multiplikationen muss man eigentlich nicht klammern - es gilt auch in JS: Punkt- vor Strichrechnung.

              Rücke den Code mal sauber ein - macht das Lesen deutlich einfacher.

              P Offline
              P Offline
              Peter666666
              schrieb am zuletzt editiert von Peter666666
              #7

              @codierknecht sagte in gefühlte Temperatur:

              @peter666666 sagte in gefühlte Temperatur:

              **** sind im original nicht vorhanden.

              Doch:
              512752cc-b1ac-4b1f-a8d7-ac09038f4c4d-image.png
              Doppelte Multiplikation wird nicht funktionieren.
              Ob der Rest der Formel stimmt, kann ich nicht beurteilen. Multiplikationen muss man eigentlich nicht klammern - es gilt auch in JS: Punkt- vor Strichrechnung.

              Rücke den Code mal sauber ein - macht das Lesen deutlich einfacher.

              achso du meinst die doppelten ** . Lt. Netz schreibt man das so wenn ich Potenz rechnen will oder ist das falsch? (V hoch 0,16). Formel ist so im Original: W = 13,12 + 0,6215 x T – 11,37 x V0,16 + 0,3965 x T x V0,16

              LG Peter

              Intel NUC i5 / 16GB RAM / 512GB SSD
              Synology DS220+ 10GB RAM / 8TB

              1 Antwort Letzte Antwort
              0
              • P Peter666666

                @wendy2702 **** sind im original nicht vorhanden.

                2023-01-23 12_45_02-javascript - e73f64821262.png

                2023-01-23 12_51_37-objects - e73f64821262.png

                DP sind von dem Netatmo Adapter und stehen als State zur Verfügung wenn ich das richtig verstehe.

                wendy2702W Offline
                wendy2702W Offline
                wendy2702
                schrieb am zuletzt editiert von
                #8

                @peter666666 was mir noch fehlt, als laie, ist ein trigger um die Berechnung zu starten.

                Da müsste wahrscheinlich zumindest ein Schedule rein

                Bitte keine Fragen per PN, die gehören ins Forum!

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

                1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  @peter666666 sagte in gefühlte Temperatur:

                  **** sind im original nicht vorhanden.

                  Doch:
                  512752cc-b1ac-4b1f-a8d7-ac09038f4c4d-image.png
                  Doppelte Multiplikation wird nicht funktionieren.
                  Ob der Rest der Formel stimmt, kann ich nicht beurteilen. Multiplikationen muss man eigentlich nicht klammern - es gilt auch in JS: Punkt- vor Strichrechnung.

                  Rücke den Code mal sauber ein - macht das Lesen deutlich einfacher.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #9

                  @codierknecht sagte: Doppelte Multiplikation wird nicht funktionieren.

                  Das ist ein Exponent.

                  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

                  CodierknechtC 1 Antwort Letzte Antwort
                  0
                  • P Peter666666

                    Hallo Leute,

                    Ich möchte gerne in Vis die gefühlte Temperatur darstellen wozu ich die Außentemperatur & Windgeschwindigkeit von Netatmo habe. Habe mir aus dem Netz ein Skript kopiert und so gut ich wusste meine ID`s eingetragen und die Formel geändert. Wenn ich nun das Skript starte wird mir aber kein Wert in die Userdata geschrieben. Was fehlt mir da noch damit mir der Wert berechnet wird? Bin leider blutiger Anfänger in JS.

                    ****function Start() {
                    Berechne();
                    }function gefühlteTemperatur(temp, wind){
                    var t =temp
                    var v = wind
                    var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16;
                    
                    return w;
                    }
                    
                    function Berechne(){
                    var t = parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                    var v =parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                    var w = gefühlteTemperatur(t,v);
                    setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",w.toFixed(1));
                    }
                    
                    Start();****
                    

                    LG Peter

                    MOD EDIT: Log in Code Tags gesetzt

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #10

                    @peter666666 sagte: w.toFixed(1)

                    .toFixed(1) macht aus der Zahl einen String! Eine Zahl rundet man so auf eine Nachkommastelle:

                    Math.round(w * 10) / 10
                    

                    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

                    1 Antwort Letzte Antwort
                    1
                    • paul53P paul53

                      @codierknecht sagte: Doppelte Multiplikation wird nicht funktionieren.

                      Das ist ein Exponent.

                      CodierknechtC Online
                      CodierknechtC Online
                      Codierknecht
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #11

                      @paul53
                      Sieht aber äußerst strange aus.
                      Aber Du bist der Fachmann - ich gebe zu: Ich lerne noch.

                      Ich finde das hier durchaus besser lesbar:

                      13.12 + (0.6215 * temp) - Math.pow((11.37 * wind), 0.16) + Math.pow((0.3965 * temp * wind), 0.16)
                      

                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                      HmIP|ZigBee|Tasmota|Unifi
                      Zabbix Certified Specialist
                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                      1 Antwort Letzte Antwort
                      0
                      • P Offline
                        P Offline
                        Peter666666
                        schrieb am zuletzt editiert von
                        #12

                        Was ist noch falsch?

                        function Start() {
                        Berechne();
                        }function gefühlteTemperatur(temp, wind){
                        var t =temp
                        var v = wind
                        var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16;
                        
                        return w;
                        }
                        
                        function Berechne(){
                        var t = parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                        var v =parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                        var w = gefühlteTemperatur(t,v);
                        setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",Math.round(w * 10) / 10);
                        }
                        
                        schedule("*/5 * * * *",function(){
                        
                        Start();
                        
                        });
                        

                        LG Peter

                        Intel NUC i5 / 16GB RAM / 512GB SSD
                        Synology DS220+ 10GB RAM / 8TB

                        CodierknechtC 1 Antwort Letzte Antwort
                        0
                        • P Peter666666

                          Was ist noch falsch?

                          function Start() {
                          Berechne();
                          }function gefühlteTemperatur(temp, wind){
                          var t =temp
                          var v = wind
                          var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16;
                          
                          return w;
                          }
                          
                          function Berechne(){
                          var t = parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                          var v =parseFloat( getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                          var w = gefühlteTemperatur(t,v);
                          setState("0_userdata.0.Hausdaten.gefühlte_Temperatur",Math.round(w * 10) / 10);
                          }
                          
                          schedule("*/5 * * * *",function(){
                          
                          Start();
                          
                          });
                          
                          CodierknechtC Online
                          CodierknechtC Online
                          Codierknecht
                          Developer Most Active
                          schrieb am zuletzt editiert von Codierknecht
                          #13

                          @peter666666
                          Vorschlag:

                          function windchill(temp, wind) {
                              return 13.12 + 0.6215 * temp + (0.3965 * temp - 11.37) * Math.pow(wind, 0.16);
                          }
                          
                          on({id: [].concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature'])
                                    .concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength']), change: "ne"}, async function (obj) {
                              var temp = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                              var wind = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                              setState("0_userdata.0.Hausdaten.gefühlte_Temperatur", Math.round(windchill(temp, wind) * 10) / 10, true);
                          });
                          

                          Vielleicht hat @paul53 ja einen besseren ;-)

                          P.S.: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als auch bei den ID's der Datenpunkte.

                          Edit: Formel korrigiert (Quelle: https://de.wikipedia.org/wiki/Windchill)

                          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                          HmIP|ZigBee|Tasmota|Unifi
                          Zabbix Certified Specialist
                          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                          paul53P P 2 Antworten Letzte Antwort
                          1
                          • CodierknechtC Codierknecht

                            @peter666666
                            Vorschlag:

                            function windchill(temp, wind) {
                                return 13.12 + 0.6215 * temp + (0.3965 * temp - 11.37) * Math.pow(wind, 0.16);
                            }
                            
                            on({id: [].concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature'])
                                      .concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength']), change: "ne"}, async function (obj) {
                                var temp = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                                var wind = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                                setState("0_userdata.0.Hausdaten.gefühlte_Temperatur", Math.round(windchill(temp, wind) * 10) / 10, true);
                            });
                            

                            Vielleicht hat @paul53 ja einen besseren ;-)

                            P.S.: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als auch bei den ID's der Datenpunkte.

                            Edit: Formel korrigiert (Quelle: https://de.wikipedia.org/wiki/Windchill)

                            paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von paul53
                            #14

                            @codierknecht sagte: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als aich bei den ID's der Datenpunkte.

                            Ich auch.

                            In der Berechnung würde ich den Exponenten nur einmal verwenden:

                            return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * Math.pow(v, 0.16);
                            

                            oder

                            return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * v ** 0.16;
                            

                            @Codierknecht Du wirst feststellen, dass Deine Formel anders aussieht.

                            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

                            CodierknechtC paul53P 2 Antworten Letzte Antwort
                            1
                            • CodierknechtC Codierknecht

                              @peter666666
                              Vorschlag:

                              function windchill(temp, wind) {
                                  return 13.12 + 0.6215 * temp + (0.3965 * temp - 11.37) * Math.pow(wind, 0.16);
                              }
                              
                              on({id: [].concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature'])
                                        .concat(['netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength']), change: "ne"}, async function (obj) {
                                  var temp = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.02-00-00-90-bd-80.Temperature.Temperature").val);
                                  var wind = parseFloat(getState("netatmo.0.631f3d2edc4bfdce530a3d09.70-ee-50-90-bd-7e.06-00-00-06-b3-3a.Wind.WindStrength").val);
                                  setState("0_userdata.0.Hausdaten.gefühlte_Temperatur", Math.round(windchill(temp, wind) * 10) / 10, true);
                              });
                              

                              Vielleicht hat @paul53 ja einen besseren ;-)

                              P.S.: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als auch bei den ID's der Datenpunkte.

                              Edit: Formel korrigiert (Quelle: https://de.wikipedia.org/wiki/Windchill)

                              P Offline
                              P Offline
                              Peter666666
                              schrieb am zuletzt editiert von Peter666666
                              #15

                              @codierknecht danke. Habe die Umlaute entfernt und habe das Skript kopiert & mal gestartet - Keine Fehlermeldung aber "0_userdata.0.Hausdaten.gefühlte_Temperatur" noch leer. Mal schauen ob in ein paar Minuten ein Wert unter "0_userdata.0.Hausdaten.gefuehlte_Temperatur" steht.

                              LG Peter

                              Intel NUC i5 / 16GB RAM / 512GB SSD
                              Synology DS220+ 10GB RAM / 8TB

                              CodierknechtC 1 Antwort Letzte Antwort
                              0
                              • P Peter666666

                                @codierknecht danke. Habe die Umlaute entfernt und habe das Skript kopiert & mal gestartet - Keine Fehlermeldung aber "0_userdata.0.Hausdaten.gefühlte_Temperatur" noch leer. Mal schauen ob in ein paar Minuten ein Wert unter "0_userdata.0.Hausdaten.gefuehlte_Temperatur" steht.

                                CodierknechtC Online
                                CodierknechtC Online
                                Codierknecht
                                Developer Most Active
                                schrieb am zuletzt editiert von
                                #16

                                @peter666666 sagte in gefühlte Temperatur:

                                @codierknecht danke. Habe die Umlaute entfernt und habe das Skript mal gestartet - Keine Fehlermeldung aber "0_userdata.0.Hausdaten.gefühlte_Temperatur" noch leer. Mal schauen ob in ein paar Minuten ein Wert unter "0_userdata.0.Hausdaten.gefuehlte_Temperatur" steht.

                                Da sollte etwas stehen, sobald sich einer der beiden Eingangswerte ändert.

                                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                HmIP|ZigBee|Tasmota|Unifi
                                Zabbix Certified Specialist
                                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                P 2 Antworten Letzte Antwort
                                1
                                • CodierknechtC Codierknecht

                                  @peter666666 sagte in gefühlte Temperatur:

                                  @codierknecht danke. Habe die Umlaute entfernt und habe das Skript mal gestartet - Keine Fehlermeldung aber "0_userdata.0.Hausdaten.gefühlte_Temperatur" noch leer. Mal schauen ob in ein paar Minuten ein Wert unter "0_userdata.0.Hausdaten.gefuehlte_Temperatur" steht.

                                  Da sollte etwas stehen, sobald sich einer der beiden Eingangswerte ändert.

                                  P Offline
                                  P Offline
                                  Peter666666
                                  schrieb am zuletzt editiert von
                                  #17

                                  @codierknecht danke, werde berichten. Leider schmiert der Fernzugriff über die Cloud immer ab wegen zu vieler Anfragen oder so. Jetzt muss ich immer 5 Minuten warten bevor ich mich wieder verbinden kann. Den Fehler muss ich erst Googlen.

                                  LG Peter

                                  Intel NUC i5 / 16GB RAM / 512GB SSD
                                  Synology DS220+ 10GB RAM / 8TB

                                  JohGreJ 1 Antwort Letzte Antwort
                                  0
                                  • paul53P paul53

                                    @codierknecht sagte: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als aich bei den ID's der Datenpunkte.

                                    Ich auch.

                                    In der Berechnung würde ich den Exponenten nur einmal verwenden:

                                    return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * Math.pow(v, 0.16);
                                    

                                    oder

                                    return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * v ** 0.16;
                                    

                                    @Codierknecht Du wirst feststellen, dass Deine Formel anders aussieht.

                                    CodierknechtC Online
                                    CodierknechtC Online
                                    Codierknecht
                                    Developer Most Active
                                    schrieb am zuletzt editiert von
                                    #18

                                    @paul53 sagte in gefühlte Temperatur:

                                    Du wirst feststellen, dass Deine Formel anders aussieht.

                                    Solange das Ergebnis stimmt, soll's mir persönlich Wurscht sein.
                                    Ich bin noch dabei herauszufinden, wie und wo Du da gekürzt hast. Mathematik dieser Kategorie hatte ich zuletzt vor vielleicht 30 Jahren - das fluppt nicht mehr so gut :grin:

                                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                                    HmIP|ZigBee|Tasmota|Unifi
                                    Zabbix Certified Specialist
                                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                    1 Antwort Letzte Antwort
                                    0
                                    • JohGreJ Offline
                                      JohGreJ Offline
                                      JohGre
                                      schrieb am zuletzt editiert von JohGre
                                      #19

                                      @peter666666 Hi bei mir funktioniert deine Methode. Der einzige Unterschied den ich zwischen mir und dir entdecken kann sind die doppelten Hochkommas bei der Stateauswahl. Probier's mal mit einfachen Singleticks.

                                      function Start() {
                                      Berechne();
                                      }
                                      
                                      function GefuehlteTemperatur(temp, wind){
                                          var t =temp
                                          var v = wind
                                          var w = 13.12+(0.6215*t)-11.37*v**0.16+0.3965*t*v**0.16;
                                          return w;
                                      }
                                      
                                      function Berechne(){
                                          var t = parseFloat( getState('netatmo.0.xxx.70-ee-50-03-da-44.02-00-00-03-d7-bc.Temperature.Temperature'/*Temperature*/).val);
                                          var v =parseFloat( getState('netatmo.0.xxxc.70-ee-50-03-da-44.06-00-00-00-1e-82.Wind.WindStrength'/*Wind strength*/).val);
                                          var w = GefuehlteTemperatur(t,v);
                                          log('Gefühlte Temperatur: ' + Math.round(w * 10) / 10 + ' °C');
                                      }
                                      
                                      Start();
                                      

                                      nuc i5: RaspberryMatic, ioBroker, pi-hole, SQL-Server, OMV-NAS, Influx-DB & Grafana, OpenHab, tasmoadmin

                                      1 Antwort Letzte Antwort
                                      0
                                      • P Peter666666

                                        @codierknecht danke, werde berichten. Leider schmiert der Fernzugriff über die Cloud immer ab wegen zu vieler Anfragen oder so. Jetzt muss ich immer 5 Minuten warten bevor ich mich wieder verbinden kann. Den Fehler muss ich erst Googlen.

                                        JohGreJ Offline
                                        JohGreJ Offline
                                        JohGre
                                        schrieb am zuletzt editiert von
                                        #20

                                        @peter666666 Versteh ich nicht, der Adapter kriegt doch die Daten geliefert, ich glaub so alle 10 Minuten. Das sollte dann so funktionieren wie @Codierknecht es vorgeschlagen hat.

                                        nuc i5: RaspberryMatic, ioBroker, pi-hole, SQL-Server, OMV-NAS, Influx-DB & Grafana, OpenHab, tasmoadmin

                                        P 1 Antwort Letzte Antwort
                                        0
                                        • paul53P paul53

                                          @codierknecht sagte: Ich würde grundsätzlich auf Umlaute verzichten. Sowohl in JS als aich bei den ID's der Datenpunkte.

                                          Ich auch.

                                          In der Berechnung würde ich den Exponenten nur einmal verwenden:

                                          return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * Math.pow(v, 0.16);
                                          

                                          oder

                                          return 13.12 + 0.6215 * t + (0.3965 * t - 11.37) * v ** 0.16;
                                          

                                          @Codierknecht Du wirst feststellen, dass Deine Formel anders aussieht.

                                          paul53P Offline
                                          paul53P Offline
                                          paul53
                                          schrieb am zuletzt editiert von paul53
                                          #21

                                          Deine Formel ist richtig. Sie wird in verschiedenen Beiträgen im www falsch dargestellt.

                                          EDIT: Formel ist falsch.

                                          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

                                          CodierknechtC 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

                                          292

                                          Online

                                          32.6k

                                          Benutzer

                                          82.3k

                                          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