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. Windrichtung kommt mit 0-5V an soll in Windrichtung N/S/W/O

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Windrichtung kommt mit 0-5V an soll in Windrichtung N/S/W/O

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
12 Beiträge 4 Kommentatoren 782 Aufrufe 3 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.
  • A Offline
    A Offline
    acidsubway
    schrieb am zuletzt editiert von
    #1

    Hallo zusammen,

    wie ihr gleich seht bin ich nicht der beste im scripten :/
    Ich bekommen eine Windrichtung von 0-5V mit MQTT, dieser soll dann umgewandelt werden in Begrifflichkeiten.

    // Original-Datenpunkt
    const idOrigin = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
     
    // Alias-Datenpunkt
    const idAlias = 'Windrichtung.Windrichtung';
    var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
    // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
    // nameAlias = 'Batterie Deckenlicht';
    desc = 'per Script erstellt';
    // typeAlias = 'boolean'; // oder 'number'
    // read = "val < 20 ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
    // write = "val ? 'Ein' : 'Aus'";
    // role = 'indicator';
    // min = 0; // nur Zahlen
    // max = 100; // nur Zahlen
    // unit = '%'; // nur für Zahlen
    let between = (x, min, max) => x >= min && x <= max; 
    const direction = value => {
        switch (true) {
            case between(value, 2.3408, 2.9658) || between(value, 12.0,12.0): 
                console.log("NORD");
                return "NORD";
            case between(value, 2.9659, 3.5908):
                console.log("NORD-OST");
                return "NORD-OST";
            case between(value, 3.5909, 3.9158):
                console.log("OST");
                return "OST";
            case between(value, 3.9159, 4.5408):
                console.log("SÜD-OST");
                return "SÜD-OST";
            case between(value, 4.5409, 5.0000):
                console.log("SÜD");
                return "SÜD";
            case between(value, 0.0000, 0.4658):
                console.log("SÜD");
                return "SÜD";
            case between(value, 0.4659, 1.0908):
                console.log("SÜD-WEST");
                return "SÜD-WEST";
            case between(value, 1.0909, 1.7158):
                console.log("WEST");
                return "WEST";
            case between(value, 1.7158, 2.3407):
                console.log("NORD-WEST");
                return "NORD-WEST";
    
        }
    }
    
    console.log(`Die Himmelsrichtung ist: ${(direction(12.0))}`); // direction liefert dann die Himmelsrichtung
    
    // custom = []; // verhindert doppelte Ausführung von history, ...
    // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
    // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
     
    function createAlias(idSrc, idDst) {
       if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
       else {
          var obj = {};
          obj.type = 'state';
          obj.common = getObject(idSrc).common;
          obj.common.alias = {};
          obj.common.alias.id = idSrc;
          if(typeAlias) obj.common.type = typeAlias;
          if(obj.common.read !== false && read) obj.common.alias.read = read;
          if(obj.common.write !== false && write) obj.common.alias.write = write;
          if(nameAlias) obj.common.name = nameAlias;
          if(role) obj.common.role = role;
          if(desc) obj.common.desc = desc;
          if(min !== undefined) obj.common.min = min;
          if(max !== undefined) obj.common.max = max;
          if(unit) obj.common.unit = unit;
          if(states) obj.common.states = states;
          if(custom && obj.common.custom) obj.common.custom = custom;
          obj.native = {};
          setObject(idDst, obj);
          if(raum && getObject('enum.rooms.' + raum)) {
             let obj = getObject('enum.rooms.' + raum)
             obj.common.members.push(idDst);
             setObject('enum.rooms.' + raum, obj);
          }
          if(gewerk && getObject('enum.functions.' + gewerk)) {
             let obj = getObject('enum.functions.' + gewerk)
             obj.common.members.push(idDst);
             setObject('enum.functions.' + gewerk, obj);
          }
       } 
    }
     
    createAlias(idOrigin, 'alias.0.' + idAlias);
    

    es will einfach nicht, kann einer Helfen?

    MfG

    A CodierknechtC 2 Antworten Letzte Antwort
    0
    • A acidsubway

      Hallo zusammen,

      wie ihr gleich seht bin ich nicht der beste im scripten :/
      Ich bekommen eine Windrichtung von 0-5V mit MQTT, dieser soll dann umgewandelt werden in Begrifflichkeiten.

      // Original-Datenpunkt
      const idOrigin = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
       
      // Alias-Datenpunkt
      const idAlias = 'Windrichtung.Windrichtung';
      var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
      // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
      // nameAlias = 'Batterie Deckenlicht';
      desc = 'per Script erstellt';
      // typeAlias = 'boolean'; // oder 'number'
      // read = "val < 20 ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
      // write = "val ? 'Ein' : 'Aus'";
      // role = 'indicator';
      // min = 0; // nur Zahlen
      // max = 100; // nur Zahlen
      // unit = '%'; // nur für Zahlen
      let between = (x, min, max) => x >= min && x <= max; 
      const direction = value => {
          switch (true) {
              case between(value, 2.3408, 2.9658) || between(value, 12.0,12.0): 
                  console.log("NORD");
                  return "NORD";
              case between(value, 2.9659, 3.5908):
                  console.log("NORD-OST");
                  return "NORD-OST";
              case between(value, 3.5909, 3.9158):
                  console.log("OST");
                  return "OST";
              case between(value, 3.9159, 4.5408):
                  console.log("SÜD-OST");
                  return "SÜD-OST";
              case between(value, 4.5409, 5.0000):
                  console.log("SÜD");
                  return "SÜD";
              case between(value, 0.0000, 0.4658):
                  console.log("SÜD");
                  return "SÜD";
              case between(value, 0.4659, 1.0908):
                  console.log("SÜD-WEST");
                  return "SÜD-WEST";
              case between(value, 1.0909, 1.7158):
                  console.log("WEST");
                  return "WEST";
              case between(value, 1.7158, 2.3407):
                  console.log("NORD-WEST");
                  return "NORD-WEST";
      
          }
      }
      
      console.log(`Die Himmelsrichtung ist: ${(direction(12.0))}`); // direction liefert dann die Himmelsrichtung
      
      // custom = []; // verhindert doppelte Ausführung von history, ...
      // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
      // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
       
      function createAlias(idSrc, idDst) {
         if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
         else {
            var obj = {};
            obj.type = 'state';
            obj.common = getObject(idSrc).common;
            obj.common.alias = {};
            obj.common.alias.id = idSrc;
            if(typeAlias) obj.common.type = typeAlias;
            if(obj.common.read !== false && read) obj.common.alias.read = read;
            if(obj.common.write !== false && write) obj.common.alias.write = write;
            if(nameAlias) obj.common.name = nameAlias;
            if(role) obj.common.role = role;
            if(desc) obj.common.desc = desc;
            if(min !== undefined) obj.common.min = min;
            if(max !== undefined) obj.common.max = max;
            if(unit) obj.common.unit = unit;
            if(states) obj.common.states = states;
            if(custom && obj.common.custom) obj.common.custom = custom;
            obj.native = {};
            setObject(idDst, obj);
            if(raum && getObject('enum.rooms.' + raum)) {
               let obj = getObject('enum.rooms.' + raum)
               obj.common.members.push(idDst);
               setObject('enum.rooms.' + raum, obj);
            }
            if(gewerk && getObject('enum.functions.' + gewerk)) {
               let obj = getObject('enum.functions.' + gewerk)
               obj.common.members.push(idDst);
               setObject('enum.functions.' + gewerk, obj);
            }
         } 
      }
       
      createAlias(idOrigin, 'alias.0.' + idAlias);
      

      es will einfach nicht, kann einer Helfen?

      MfG

      A Offline
      A Offline
      acidsubway
      schrieb am zuletzt editiert von
      #2

      @acidsubway

      2024_01_24_21_57_40_objects_iobroker_Mozilla_Firefox.jpg

      CodierknechtC 1 Antwort Letzte Antwort
      0
      • A acidsubway

        Hallo zusammen,

        wie ihr gleich seht bin ich nicht der beste im scripten :/
        Ich bekommen eine Windrichtung von 0-5V mit MQTT, dieser soll dann umgewandelt werden in Begrifflichkeiten.

        // Original-Datenpunkt
        const idOrigin = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
         
        // Alias-Datenpunkt
        const idAlias = 'Windrichtung.Windrichtung';
        var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
        // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
        // nameAlias = 'Batterie Deckenlicht';
        desc = 'per Script erstellt';
        // typeAlias = 'boolean'; // oder 'number'
        // read = "val < 20 ? true : false"; // Erkennung "Aus" --> false erfolgt automatisch  
        // write = "val ? 'Ein' : 'Aus'";
        // role = 'indicator';
        // min = 0; // nur Zahlen
        // max = 100; // nur Zahlen
        // unit = '%'; // nur für Zahlen
        let between = (x, min, max) => x >= min && x <= max; 
        const direction = value => {
            switch (true) {
                case between(value, 2.3408, 2.9658) || between(value, 12.0,12.0): 
                    console.log("NORD");
                    return "NORD";
                case between(value, 2.9659, 3.5908):
                    console.log("NORD-OST");
                    return "NORD-OST";
                case between(value, 3.5909, 3.9158):
                    console.log("OST");
                    return "OST";
                case between(value, 3.9159, 4.5408):
                    console.log("SÜD-OST");
                    return "SÜD-OST";
                case between(value, 4.5409, 5.0000):
                    console.log("SÜD");
                    return "SÜD";
                case between(value, 0.0000, 0.4658):
                    console.log("SÜD");
                    return "SÜD";
                case between(value, 0.4659, 1.0908):
                    console.log("SÜD-WEST");
                    return "SÜD-WEST";
                case between(value, 1.0909, 1.7158):
                    console.log("WEST");
                    return "WEST";
                case between(value, 1.7158, 2.3407):
                    console.log("NORD-WEST");
                    return "NORD-WEST";
        
            }
        }
        
        console.log(`Die Himmelsrichtung ist: ${(direction(12.0))}`); // direction liefert dann die Himmelsrichtung
        
        // custom = []; // verhindert doppelte Ausführung von history, ...
        // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
        // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
         
        function createAlias(idSrc, idDst) {
           if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
           else {
              var obj = {};
              obj.type = 'state';
              obj.common = getObject(idSrc).common;
              obj.common.alias = {};
              obj.common.alias.id = idSrc;
              if(typeAlias) obj.common.type = typeAlias;
              if(obj.common.read !== false && read) obj.common.alias.read = read;
              if(obj.common.write !== false && write) obj.common.alias.write = write;
              if(nameAlias) obj.common.name = nameAlias;
              if(role) obj.common.role = role;
              if(desc) obj.common.desc = desc;
              if(min !== undefined) obj.common.min = min;
              if(max !== undefined) obj.common.max = max;
              if(unit) obj.common.unit = unit;
              if(states) obj.common.states = states;
              if(custom && obj.common.custom) obj.common.custom = custom;
              obj.native = {};
              setObject(idDst, obj);
              if(raum && getObject('enum.rooms.' + raum)) {
                 let obj = getObject('enum.rooms.' + raum)
                 obj.common.members.push(idDst);
                 setObject('enum.rooms.' + raum, obj);
              }
              if(gewerk && getObject('enum.functions.' + gewerk)) {
                 let obj = getObject('enum.functions.' + gewerk)
                 obj.common.members.push(idDst);
                 setObject('enum.functions.' + gewerk, obj);
              }
           } 
        }
         
        createAlias(idOrigin, 'alias.0.' + idAlias);
        

        es will einfach nicht, kann einer Helfen?

        MfG

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

        @acidsubway

        Du wendest das switch völlig falsch an.
        https://www.w3schools.com/js/js_switch.asp

        true ist eine Konstante - die ändert sich nicht und daher kann die auch nie zwischen x und y sein.

        Versuch's mal zunächst so:

        if (between(value, 2.3408, 2.9658) || between(value, 12.0,12.0)) {
                    console.log("NORD");
                    return "NORD";
        } else if (between(value, 2.9659, 3.5908)) {
                    console.log("NORD-OST");
                    return "NORD-OST";
        } else if (between(value, 3.5909, 3.9158)) {
                    console.log("OST");
                    return "OST";
        }
        

        "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
        • A acidsubway

          @acidsubway

          2024_01_24_21_57_40_objects_iobroker_Mozilla_Firefox.jpg

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

          @acidsubway
          Ein Alias repräsentiert einen anderen DP.
          So wie Du das machen willst, wird das nix.
          Da schreibt man nicht per Script rein.

          Lege den von Dir gewünschten DP nicht als Alias, sondern unterhalb von 0_userdata an.

          "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 1 Antwort Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @acidsubway
            Ein Alias repräsentiert einen anderen DP.
            So wie Du das machen willst, wird das nix.
            Da schreibt man nicht per Script rein.

            Lege den von Dir gewünschten DP nicht als Alias, sondern unterhalb von 0_userdata an.

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

            @codierknecht sagte: DP nicht als Alias, sondern unterhalb von 0_userdata an.

            ... und prüfe die Spannungen in der passenden Reihenfolge.

            const idVolt = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
            const idDir = '0_userdata.0.Wetter.Wind.Richtung';
            
            on(idVolt, function(dp) {
                const v = dp.state.val;
                let dir = 'SÜD';
                if(v <= 0.4658) dir = 'SÜD';
                else if(v <= 1.0908) dir = 'SÜD-WEST';
                else if(v <= 1.7158) dir = 'WEST';
                // usw. 
                setState(idDir, dir, true); 
            });
            

            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

            A 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @codierknecht sagte: DP nicht als Alias, sondern unterhalb von 0_userdata an.

              ... und prüfe die Spannungen in der passenden Reihenfolge.

              const idVolt = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
              const idDir = '0_userdata.0.Wetter.Wind.Richtung';
              
              on(idVolt, function(dp) {
                  const v = dp.state.val;
                  let dir = 'SÜD';
                  if(v <= 0.4658) dir = 'SÜD';
                  else if(v <= 1.0908) dir = 'SÜD-WEST';
                  else if(v <= 1.7158) dir = 'WEST';
                  // usw. 
                  setState(idDir, dir, true); 
              });
              
              A Offline
              A Offline
              acidsubway
              schrieb am zuletzt editiert von
              #6

              @paul53
              Danke

              Auch allen anderen ein dank erst mal.

              hab das nun so umgeändert

              const idVolt = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
              const idDir = '0_userdata.0.Wetter.Windrichtung';
               
              on(idVolt, function(dp) {
                  const v = dp.state.val;
                  let dir = 'SÜD';
                  if(v <= 0.4658) dir = 'SÜD';
                  else if(v <= 1.0908) dir = 'SÜD-WEST';
                  else if(v <= 1.7158) dir = 'WEST';
                  else if(v <= 2.3407) dir = 'NORD-WEST';
                  else if(v <= 2.9658) dir = 'NORD';
                  else if(v <= 3.5908) dir = 'NORD-OST';
                  else if(v <= 3.9158) dir = 'OST';
                  else if(v <= 4.5408) dir = 'SÜD-OST';
                  else if(v <= 5.0000) dir = 'SÜD';
                  setState(idDir, dir, true); 
              });
              

              kommt aber ein komische fehler:

              251	2024-01-26 12:25:07.005	warn	Object of state "0_userdata.0.Wetter.Windrichtung" is missing the required property "common.type"
              

              ich mach sier was falsch :/

              CodierknechtC paul53P 2 Antworten Letzte Antwort
              0
              • A acidsubway

                @paul53
                Danke

                Auch allen anderen ein dank erst mal.

                hab das nun so umgeändert

                const idVolt = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
                const idDir = '0_userdata.0.Wetter.Windrichtung';
                 
                on(idVolt, function(dp) {
                    const v = dp.state.val;
                    let dir = 'SÜD';
                    if(v <= 0.4658) dir = 'SÜD';
                    else if(v <= 1.0908) dir = 'SÜD-WEST';
                    else if(v <= 1.7158) dir = 'WEST';
                    else if(v <= 2.3407) dir = 'NORD-WEST';
                    else if(v <= 2.9658) dir = 'NORD';
                    else if(v <= 3.5908) dir = 'NORD-OST';
                    else if(v <= 3.9158) dir = 'OST';
                    else if(v <= 4.5408) dir = 'SÜD-OST';
                    else if(v <= 5.0000) dir = 'SÜD';
                    setState(idDir, dir, true); 
                });
                

                kommt aber ein komische fehler:

                251	2024-01-26 12:25:07.005	warn	Object of state "0_userdata.0.Wetter.Windrichtung" is missing the required property "common.type"
                

                ich mach sier was falsch :/

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

                @acidsubway
                Zeig mal, wie Dein DP 0_userdata.0.Wetter.Windrichtung definiert ist.

                "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

                A 1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  @acidsubway
                  Zeig mal, wie Dein DP 0_userdata.0.Wetter.Windrichtung definiert ist.

                  A Offline
                  A Offline
                  acidsubway
                  schrieb am zuletzt editiert von
                  #8

                  @codierknecht

                  2024-01-26 12_52_10-objects - iobroker – Mozilla Firefox.jpg 2024-01-26 12_52_16-objects - iobroker – Mozilla Firefox.jpg

                  CodierknechtC 1 Antwort Letzte Antwort
                  0
                  • A acidsubway

                    @codierknecht

                    2024-01-26 12_52_10-objects - iobroker – Mozilla Firefox.jpg 2024-01-26 12_52_16-objects - iobroker – Mozilla Firefox.jpg

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

                    @acidsubway
                    Das ist ein "folder" - da kann man nix reinschreiben.
                    Lege Dir darunter einen DP vom Typ "Zeichenfolge" an. Den kannst Du dann beschreiben.

                    "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

                    A 1 Antwort Letzte Antwort
                    0
                    • CodierknechtC Codierknecht

                      @acidsubway
                      Das ist ein "folder" - da kann man nix reinschreiben.
                      Lege Dir darunter einen DP vom Typ "Zeichenfolge" an. Den kannst Du dann beschreiben.

                      A Offline
                      A Offline
                      acidsubway
                      schrieb am zuletzt editiert von
                      #10

                      Hat geklappt, Danke Dir, euch allen ein DANKE!!!

                      1 Antwort Letzte Antwort
                      0
                      • A acidsubway

                        @paul53
                        Danke

                        Auch allen anderen ein dank erst mal.

                        hab das nun so umgeändert

                        const idVolt = 'mqtt.0.WindJet.Windrichtung_Nord.Windrichtung';
                        const idDir = '0_userdata.0.Wetter.Windrichtung';
                         
                        on(idVolt, function(dp) {
                            const v = dp.state.val;
                            let dir = 'SÜD';
                            if(v <= 0.4658) dir = 'SÜD';
                            else if(v <= 1.0908) dir = 'SÜD-WEST';
                            else if(v <= 1.7158) dir = 'WEST';
                            else if(v <= 2.3407) dir = 'NORD-WEST';
                            else if(v <= 2.9658) dir = 'NORD';
                            else if(v <= 3.5908) dir = 'NORD-OST';
                            else if(v <= 3.9158) dir = 'OST';
                            else if(v <= 4.5408) dir = 'SÜD-OST';
                            else if(v <= 5.0000) dir = 'SÜD';
                            setState(idDir, dir, true); 
                        });
                        

                        kommt aber ein komische fehler:

                        251	2024-01-26 12:25:07.005	warn	Object of state "0_userdata.0.Wetter.Windrichtung" is missing the required property "common.type"
                        

                        ich mach sier was falsch :/

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

                        @acidsubway sagte: hab das nun so umgeändert

                        Das letzte else if (Zeile 15) kann wegfallen, da dir mit "SÜD" vordefiniert ist.

                        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
                        0
                        • SchmakusS Offline
                          SchmakusS Offline
                          Schmakus
                          Developer
                          schrieb am zuletzt editiert von
                          #12

                          Wieso überhaupt ein script und nicht einen echten Alias mit einer read formel?

                          val <= 0.4658 ? 'SÜD' :
                                val <= 1.0908 ? 'SÜD-WEST' :
                                val <= 1.7158 ? 'WEST' :
                                val <= 2.3407 ? 'NORD-WEST' :
                                val <= 2.9658 ? 'NORD' :
                                val <= 3.5908 ? 'NORD-OST' :
                                val <= 3.9158 ? 'OST' :
                                val <= 4.5408 ? 'SÜD-OST' :
                                val <= 5.0000 ? 'SÜD' : 'SÜD';
                          

                          Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                          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

                          736

                          Online

                          32.6k

                          Benutzer

                          82.2k

                          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