Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Azimut und Elevation für den Mond

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Azimut und Elevation für den Mond

    This topic has been deleted. Only users with topic management privileges can see it.
    • bahnuhr
      bahnuhr Forum Testing Most Active last edited by

      Guten Morgen,

      es gibt ja hier verschiedene Scripte um den Azimut sowie die Elevation für die Sonne zu ermitteln.

      Gibt es sowas auch für den Mond ?

      Auf der Seite "mondverlauf.de" gibt es diese Daten. Im Seitenquelltext stehen sie aber nicht. Ich hätte mich dann mal am parser probiert.

      Frage:
      Habt ihr ein Scriptschnipsel für diese Daten des Mondes ?

      mfg
      Dieter

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

        @bahnuhr Das bereits im JS-Adapter integrierte NPM-Modul "suncalc" liefert die Mondphasen.

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

          Hallo Paul,

          dein Script zeigt die Mondphasen.
          Die habe ich aber schon.

          Ich möchte ja die Werte für Azimut und Elevation.

          Oder sind die dort auch drin?

          mfg

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

            @bahnuhr sagte:

            Oder sind die dort auch drin?

            Moon position.

            1 Reply Last reply Reply Quote 1
            • bahnuhr
              bahnuhr Forum Testing Most Active last edited by

              Danke Paul,

              ich habe mal dein Script (hast du hier irgendwo mal gepostet) erweitert um die Mond Daten.

              
              // Sonnenstand Script von pix
              // erweitert mit Moon durch bahnuhr
              
              const suncalc = require('suncalc');
              const result = getObject("system.adapter.javascript.0");
              const lat = result.native.latitude;
              const long = result.native.longitude;
              const idSonneEle = 'javascript.0.Status.System.Sonne_Elevation';
              const idSonneAzi = 'javascript.0.Status.System.Sonne_Azimut';
              const idMondEle = 'javascript.0.Status.System.Mond_Elevation';
              const idMondAzi = 'javascript.0.Status.System.Mond_Azimut';
               
              createState(idSonneEle, 0, {type: 'number', unit: '°'});
              createState(idSonneAzi, 0, {type: 'number', unit: '°'});
              createState(idMondEle, 0, {type: 'number', unit: '°'});
              createState(idMondAzi, 0, {type: 'number', unit: '°'});
              
              function Stand_berechnen () {
                  var now = new Date();
                  var sunpos = suncalc.getPosition(now, lat, long);
                  var h = sunpos.altitude * 180 / Math.PI;
                  var a = sunpos.azimuth * 180 / Math.PI + 180;
                  setState(idSonneEle, Math.round(10 * h) / 10, true);
                  setState(idSonneAzi, Math.round(Math.round(10 * a) / 10), true);
                  log ("Sonne: Azimut: " + Math.round(10 * a) / 10 + "°");
                  log ("Sonne: Elevation: " + Math.round(10 * h) / 10 + "°");
              
                  var moonpos = suncalc.getMoonPosition(now, lat, long);
                  var h = moonpos.altitude * 180 / Math.PI;
                  var a = moonpos.azimuth * 180 / Math.PI + 180;
                  setState(idMondEle, Math.round(10 * h) / 10, true);
                  setState(idMondAzi, Math.round(Math.round(10 * a) / 10), true);
                  log ("Mond: Azimut: " + Math.round(10 * a) / 10 + "°");
                  log ("Mond: Elevation: " + Math.round(10 * h) / 10 + "°");
              }
               
              schedule('23 */4 * * * *', Stand_berechnen); // jede Minute
              
              Stand_berechnen();
              
              

              Die Daten passen mit den Seiten "mondverlauf.de" und "Sonnenverlauf.de" fast überein.

              Lediglich die Elevation beim Mond scheint abzuweichen (Script: -13,5° und mondverlauf.de -15,1°).
              Warum auch immer.

              Vielleicht siehst du ja den Fehler.

              Nochmals Danke.

              mfg
              Dieter

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

                @bahnuhr sagte:

                Vielleicht siehst du ja den Fehler.

                Nein, ich kann keinen Fehler erkennen. Muss ein Fehler im NPM-Modul oder auf der Seite mondverlauf.de sein:

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

                  Ok, dann lass ich es jetzt so.

                  Danke nochmals.

                  1 Reply Last reply Reply Quote 0
                  • JB_Sullivan
                    JB_Sullivan last edited by JB_Sullivan

                    Sorry wenn ich mal ganz blöd nachfrage - aber wo wird das Ergebniss hin geschrieben.

                    Ich habe das Skript aktiviert und bekomme im Log folgendes angezeigt:

                    javascript.0	2020-07-06 08:48:23.011	info	(7376) script.js.Aktiv.Sonnenverlauf: Mond: Elevation: -19.8°
                    javascript.0	2020-07-06 08:48:23.011	info	(7376) script.js.Aktiv.Sonnenverlauf: Mond: Azimut: 259.3°
                    javascript.0	2020-07-06 08:48:23.010	info	(7376) script.js.Aktiv.Sonnenverlauf: Sonne: Elevation: 30.5°
                    javascript.0	2020-07-06 08:48:23.010	info	(7376) script.js.Aktiv.Sonnenverlauf: Sonne: Azimut: 91.8°
                    

                    Ich hätte erwartet das dass Ergebnis zur Weiterverarbeitung unter den JavaSkript Objekten auftaucht. Leider ist da nix.

                    Könnt ihr mir auf die Sprünge helfen?

                    EDIT: Vergesst es - ich war BLIND - alles da - ist zu früh am Morgen 😉

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    489
                    Online

                    31.9k
                    Users

                    80.2k
                    Topics

                    1.3m
                    Posts

                    3
                    8
                    1634
                    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