Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Umrechung Grad in Windrichtung HTML

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    Umrechung Grad in Windrichtung HTML

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 last edited by

      Es genügt auch ein einfaches Skript.

      const idGrad = '...'; // Datenpunkt-ID für Windrichtung in Grad
      const idDir  = 'Windrichtung'; // Datenpunkt-Name für Windrichtung
      const dirs = ['N','NNO','NO','ONO','O','OSO','SO','SSO','S','SSW','SW','WSW','W','WNW','NW','NNW','N'];
      
      createState(idDir, 'N', {type: 'string'});
      
      on(idGrad, function(dp) {
         var dir = dirs[Math.floor((dp.state.val + 11.25) / 22.5)];
         setState(idDir, dir, true);
      });
      
      

      EDIT: createState für neuen Datenpunkt unter javascript.0 ergänzt.

      A 1 Reply Last reply Reply Quote 1
      • A
        Alero @paul53 last edited by

        @paul53
        Hi Paul,
        kannst du mir als Anfänger sagen was genau die Datenpunkt -id ist? Ist es
        HM-RP2xxxxx:1 und der Dantenpunt name die Wind_Dir_Range?

        Gruß
        Alero

        paul53 1 Reply Last reply Reply Quote 0
        • paul53
          paul53 @Alero last edited by

          @Alero sagte:

          was genau die Datenpunkt -id ist?

          Jedes ioBroker-Objekt hat eine eindeutige ID. Das ist quasi die "Adresse" des Objektes. Datenpunkte sind Objekte vom Typ state und haben eine ID wie z.B. "hm-rpc.0.NEQ1234567.1.STATE".

          A 1 Reply Last reply Reply Quote 0
          • A
            Alero @paul53 last edited by

            @paul53
            Hi,

            Also so wie ich geschrieben habe. Muss bei der ID auch direkt der "State" mit dran? Und aus deinem script "Windrichtung" ist dann was genau?

            Gruß
            Alero

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Alero last edited by

              @Alero sagte:

              Muss bei der ID auch direkt der "State" mit dran?

              Nein, zeige bitte einen Screenshot vom Reiter "Objekte" auf dem der Datenpunkt, auf dem die Windrichtung reinkommt (Datenpunkte Wetterstation) zu sehen ist.

              A 1 Reply Last reply Reply Quote 0
              • A
                Alero @paul53 last edited by Alero

                @paul53

                Hi,

                hier der screenshot:

                a3307406-e39c-4214-98f0-aea1f77aee32-grafik.png

                Hier brauche ich, meiner Meinung nach den WIND_DIR_Range, oder?
                Gruß
                Alero

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Alero last edited by

                  @Alero sagte:

                  den WIND_DIR_Range, oder?

                  Ich nehme an, den hmp-rpc.N.Seriennummer.1.WIND_DIR. (N: Instanznummer)

                  A 1 Reply Last reply Reply Quote 0
                  • sigi234
                    sigi234 Forum Testing Most Active last edited by sigi234

                    const idGrad = 'openweathermap.0.forecast.current.windDirection'; // Datenpunkt-ID für Windrichtung in Grad
                    const idDir  = 'Windrichtung'; // Datenpunkt-Name für Windrichtung
                    const dirs = ['N','NNO','NO','ONO','O','OSO','SO','SSO','S','SSW','SW','WSW','W','WNW','NW','NNW','N'];
                    
                    createState(idDir, 'N', {type: 'string'});
                       
                    on(idGrad, function(dp) {
                       var dir = dirs[Math.floor((dp.state.val + 11.25) / 22.5)];
                       setState(idDir, dir, true);
                    });
                    

                    Bitte löschen..............übersehen schon vorhanden....☺

                    1 Reply Last reply Reply Quote 0
                    • A
                      Alero @paul53 last edited by

                      @paul53
                      Hi, vielen Dank für deinen Mühe. Aber ich stehe auf dem Schlauch (heute schon das 2te mal 😉
                      Was muss ich jetzt hier eintragen?
                      const idGrad = 'Wetterstation:1.WIND_DIR'; ?
                      const idDir = 'WIND_DIR';?

                      Gruß
                      Alero

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Alero last edited by

                        @Alero

                        const idGrad = 'hm-rpc.N.seriennummer.1.WIND_DIR'; // Datenpunkt-ID für Windrichtung in Grad
                        const idDir  = 'Wetter.Windrichtung'; // Datenpunkt-Name für Windrichtung
                        

                        N.seriennummer durch die tatsächlichen Zahlen ersetzen !

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          Alero @paul53 last edited by Alero

                          @paul53
                          Habs so eingetragen.
                          Zeigt aber immer N an obwohl die Wetterstation 130 anzeigt.
                          Sollte doch SO sein, oder?

                          Gruß
                          Alero

                          paul53 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @Alero last edited by

                            @Alero sagte:

                            Zeigt aber immer N an

                            Wird denn getriggert ? Bau zum Test vor setState(idDir, dir, true) ein Log ein:

                            log(dp.state.val + ' --> ' + dir);
                            
                            A 1 Reply Last reply Reply Quote 0
                            • A
                              Alero @paul53 last edited by Alero

                              @paul53
                              Hi,
                              wenn ich die Objekte unter Javascript.0 gehe sehe ich das der Wert immer aktualisiert wird. Nur die Windrichtung (N) ändert sich nicht.

                              Gruß
                              Alero

                              paul53 1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @Alero last edited by

                                @Alero Vielleicht liefert WIND_DIR keine Zahl, was aber bei HomeMatic unwahrscheinlich ist. Füge mal als erstes im Trigger dieses Log ein:

                                log(dp.state.val + ' Typ: ' + typeof dp.state.val);
                                
                                A 1 Reply Last reply Reply Quote 0
                                • A
                                  Alero @paul53 last edited by Alero

                                  @paul53
                                  Hi, ist eingetragen.

                                  const idGrad = 'hm-rpc.2.001858A992B979.WIND_DIR'; // Datenpunkt-ID für Windrichtung in Grad

                                  const idDir = 'Wetter.Windrichtung'; // Datenpunkt-Name für Windrichtung

                                  const dirs = ['N','NNO','NO','ONO','O','OSO','SO','SSO','S','SSW','SW','WSW','W','WNW','NW','NNW','N'];

                                  createState(idDir, 'N', {type: 'string'});

                                  on(idGrad, function(dp) {'{"time":{"start":"00:00","end":"23:59","mode":"hours","interval":1},"period":{"days":1}}'

                                  var dir = dirs[Math.floor((dp.state.val + 11.25) / 22.5)];
                                  log(dp.state.val + ' Typ: ' + typeof dp.state.val);

                                  setState(idDir, dir, true);

                                  });


                                  Komisch, er aktualisiert nicht mehr unter Objekten. letzte Aktualisierung 13:59.

                                  Gruß
                                  Alero

                                  paul53 1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 @Alero last edited by paul53

                                    @Alero sagte:

                                    er aktualisiert nicht mehr unter Objekten

                                    Es wird nur getriggert, wenn sich die Windrichtung ändert. Welche Ausgabe erscheint im Log ?
                                    Was ist das ?

                                    on(idGrad, function(dp) {'{"time":{"start":"00:00","end":"23:59","mode":"hours","interval":1},"period":{"days":1}}'
                                    
                                    A 1 Reply Last reply Reply Quote 0
                                    • A
                                      Alero @paul53 last edited by Alero

                                      @paul53
                                      habs entfernt. War bestimmt der Grund für das nicht aktualisieren.

                                      const idGrad = 'hm-rpc.2.001858A992B979.WIND_DIR'; // Datenpunkt-ID für Windrichtung in Grad

                                      const idDir = 'Wetter.Windrichtung'; // Datenpunkt-Name für Windrichtung

                                      const dirs = ['N','NNO','NO','ONO','O','OSO','SO','SSO','S','SSW','SW','WSW','W','WNW','NW','NNW','N'];

                                      createState(idDir, 'N', {type: 'string'});

                                      on(idGrad, function(dp) {

                                      var dir = dirs[Math.floor((dp.state.val + 11.25) / 22.5)];
                                      log(dp.state.val + ' Typ: ' + typeof dp.state.val);

                                      setState(idDir, dir, true);

                                      });


                                      Im Log vom IOBroker ist nichts dazu gekommen.
                                      Oder gibt es noch ein anderes Log?

                                      Gruß
                                      Alero

                                      paul53 1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Alero last edited by paul53

                                        @Alero sagte:

                                        Im Log vom IOBroker ist nichts dazu gekommen.

                                        Dann wird auch nicht getriggert. Ändert sich die Windrichtung im Datenpunkt 'hm-rpc.2.001858A992B979.WIND_DIR' (Reiter "Objekte") ?

                                        A 1 Reply Last reply Reply Quote 0
                                        • A
                                          Alero @paul53 last edited by Alero

                                          @paul53
                                          Hi, der letzte Zeitstempel an der wetterstation selber ist 14:31.36
                                          Gruß
                                          Alero

                                          paul53 1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @Alero last edited by paul53

                                            @Alero sagte:

                                            der letzte Zeitstempel an der wetterstation selber ist 14:36

                                            Das spielt keine Rolle. Die Windrichtung (Wert von WIND_DIR) muss sich ändern, damit getriggert wird !!

                                            A 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            748
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            62
                                            4237
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo