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. Sonnenwinkel berechnen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Sonnenwinkel berechnen

Geplant Angeheftet Gesperrt Verschoben JavaScript
17 Beiträge 3 Kommentatoren 1.2k 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.
  • P Offline
    P Offline
    Pistus
    schrieb am zuletzt editiert von Pistus
    #1

    Mit diesem Skript ändert sich Azimuth innerhalb 3h von -47° bis 221° 11:30 bis 14:30Uhr

    const suncalc = require('suncalc2');
    const result = getObject("system.adapter.javascript.0");
    const lat = result.native.latitude;
    const long = result.native.longitude;
    const idEle = 'Sonnenstand.Elevation';
    const idAzi = 'Sonnenstand.Azimuth';
    
    createState(idEle, 0, {type: 'number', unit: '°'});
    createState(idAzi, 0, {type: 'number', unit: '°'});
    
    function Sonnenstand_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 + 100;
    	setState(idEle, Math.round(10 * h) / 10, true);
    	setState(idAzi, Math.round(a), true);
    }
    schedule("* * * * *", Sonnenstand_berechnen);
    

    Was ist falsch an dem Skrpt?

    paul53P bahnuhrB 3 Antworten Letzte Antwort
    0
    • P Pistus

      Mit diesem Skript ändert sich Azimuth innerhalb 3h von -47° bis 221° 11:30 bis 14:30Uhr

      const suncalc = require('suncalc2');
      const result = getObject("system.adapter.javascript.0");
      const lat = result.native.latitude;
      const long = result.native.longitude;
      const idEle = 'Sonnenstand.Elevation';
      const idAzi = 'Sonnenstand.Azimuth';
      
      createState(idEle, 0, {type: 'number', unit: '°'});
      createState(idAzi, 0, {type: 'number', unit: '°'});
      
      function Sonnenstand_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 + 100;
      	setState(idEle, Math.round(10 * h) / 10, true);
      	setState(idAzi, Math.round(a), true);
      }
      schedule("* * * * *", Sonnenstand_berechnen);
      

      Was ist falsch an dem Skrpt?

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

      @pistus sagte: Was ist falsch an dem Skrpt?

      Zeile 15:

      	var a = sunpos.azimuth * 180 / Math.PI + 180;
      

      Stimmen die Werte von lat und long?

      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
      • P Pistus

        Mit diesem Skript ändert sich Azimuth innerhalb 3h von -47° bis 221° 11:30 bis 14:30Uhr

        const suncalc = require('suncalc2');
        const result = getObject("system.adapter.javascript.0");
        const lat = result.native.latitude;
        const long = result.native.longitude;
        const idEle = 'Sonnenstand.Elevation';
        const idAzi = 'Sonnenstand.Azimuth';
        
        createState(idEle, 0, {type: 'number', unit: '°'});
        createState(idAzi, 0, {type: 'number', unit: '°'});
        
        function Sonnenstand_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 + 100;
        	setState(idEle, Math.round(10 * h) / 10, true);
        	setState(idAzi, Math.round(a), true);
        }
        schedule("* * * * *", Sonnenstand_berechnen);
        

        Was ist falsch an dem Skrpt?

        bahnuhrB Online
        bahnuhrB Online
        bahnuhr
        Forum Testing Most Active
        schrieb am zuletzt editiert von bahnuhr
        #3

        @pistus

        probier dies:

        https://forum.iobroker.net/topic/733/gesucht-script-sonnenwinkel-berechnen/92?_=1712058556266


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
        ScreenToGif :https://www.screentogif.com/downloads.html

        1 Antwort Letzte Antwort
        0
        • P Pistus

          Mit diesem Skript ändert sich Azimuth innerhalb 3h von -47° bis 221° 11:30 bis 14:30Uhr

          const suncalc = require('suncalc2');
          const result = getObject("system.adapter.javascript.0");
          const lat = result.native.latitude;
          const long = result.native.longitude;
          const idEle = 'Sonnenstand.Elevation';
          const idAzi = 'Sonnenstand.Azimuth';
          
          createState(idEle, 0, {type: 'number', unit: '°'});
          createState(idAzi, 0, {type: 'number', unit: '°'});
          
          function Sonnenstand_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 + 100;
          	setState(idEle, Math.round(10 * h) / 10, true);
          	setState(idAzi, Math.round(a), true);
          }
          schedule("* * * * *", Sonnenstand_berechnen);
          

          Was ist falsch an dem Skrpt?

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

          @pistus
          Alternative aus der System-Konfiguration:

          const suncalc = require('suncalc');
          const result = getObject('system.config');
          const lat = result.common.latitude;
          const long = result.common.longitude;
          

          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

          P 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @pistus
            Alternative aus der System-Konfiguration:

            const suncalc = require('suncalc');
            const result = getObject('system.config');
            const lat = result.common.latitude;
            const long = result.common.longitude;
            
            P Offline
            P Offline
            Pistus
            schrieb am zuletzt editiert von Pistus
            #5

            @paul53 ich habe die Daten der Systemconfiguration genommen
            Jetzt ist Azimuth139° und
            Elevation 37° um 15:40
            Wenn man sich das Bild betrachtet ist Azimuth immer noch daneben

            Was ist falsch an Zeile 15?

            azimutwinkel.png

            bahnuhrB paul53P 2 Antworten Letzte Antwort
            0
            • P Pistus

              @paul53 ich habe die Daten der Systemconfiguration genommen
              Jetzt ist Azimuth139° und
              Elevation 37° um 15:40
              Wenn man sich das Bild betrachtet ist Azimuth immer noch daneben

              Was ist falsch an Zeile 15?

              azimutwinkel.png

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von bahnuhr
              #6

              @pistus
              Zeile 15 und 17 ist falsch
              Mein Script hast du offensichtlich nicht verglichen.


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              P 1 Antwort Letzte Antwort
              0
              • P Pistus

                @paul53 ich habe die Daten der Systemconfiguration genommen
                Jetzt ist Azimuth139° und
                Elevation 37° um 15:40
                Wenn man sich das Bild betrachtet ist Azimuth immer noch daneben

                Was ist falsch an Zeile 15?

                azimutwinkel.png

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

                @pistus sagte: Was ist falsch an Zeile 15?

                Es müssen 180 (nicht 100) addiert werden (Nord = 0°, Ost = 90°).

                @pistus sagte in Sonnenwinkel berechnen:

                Jetzt ist Azimuth139°

                Das sind 80° zu wenig.

                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
                • bahnuhrB bahnuhr

                  @pistus
                  Zeile 15 und 17 ist falsch
                  Mein Script hast du offensichtlich nicht verglichen.

                  P Offline
                  P Offline
                  Pistus
                  schrieb am zuletzt editiert von
                  #8

                  @bahnuhr Ich finde Dein Skript mit der Visualisierung top.
                  Aber ich bin nicht so fit im Skripten, ich muss verstehen und klein anfangen.
                  In Deiner Visualisierung habe ich für März nicht die -XX° für Azimuth verstanden.
                  Siehe mein Sonnenwinkelbild mit Etwawerten.
                  Was ist falsch in Zeile 17.

                  P 1 Antwort Letzte Antwort
                  0
                  • P Pistus

                    @bahnuhr Ich finde Dein Skript mit der Visualisierung top.
                    Aber ich bin nicht so fit im Skripten, ich muss verstehen und klein anfangen.
                    In Deiner Visualisierung habe ich für März nicht die -XX° für Azimuth verstanden.
                    Siehe mein Sonnenwinkelbild mit Etwawerten.
                    Was ist falsch in Zeile 17.

                    P Offline
                    P Offline
                    Pistus
                    schrieb am zuletzt editiert von Pistus
                    #9

                    @bahnuhr
                    @paul53
                    So sieht das Skript jetzt aus. Bitte noch einmal um Überprüfung.

                    const suncalc = require('suncalc2');
                    const result = getObject('system.config');
                    const lat = result.common.latitude;
                    const long = result.common.longitude;
                    
                    //const result = getObject("system.adapter.javascript.0");
                    //const lat = result.native.latitude;
                    //const long = result.native.longitude;
                    const idEle = 'Sonnenstand.Elevation';
                    const idAzi = 'Sonnenstand.Azimuth';
                    
                    createState(idEle, 0, {type: 'number', unit: '°'});
                    createState(idAzi, 0, {type: 'number', unit: '°'});
                    
                    function Sonnenstand_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(idEle, Math.round(10 * h) / 10, true);
                    	//setState(idAzi, Math.round(a), true);
                    
                        setState(idAzi, Math.round(Math.round(10 * a) / 10), true);
                    }
                    schedule("* * * * *", Sonnenstand_berechnen);
                    
                    bahnuhrB 1 Antwort Letzte Antwort
                    0
                    • P Pistus

                      @bahnuhr
                      @paul53
                      So sieht das Skript jetzt aus. Bitte noch einmal um Überprüfung.

                      const suncalc = require('suncalc2');
                      const result = getObject('system.config');
                      const lat = result.common.latitude;
                      const long = result.common.longitude;
                      
                      //const result = getObject("system.adapter.javascript.0");
                      //const lat = result.native.latitude;
                      //const long = result.native.longitude;
                      const idEle = 'Sonnenstand.Elevation';
                      const idAzi = 'Sonnenstand.Azimuth';
                      
                      createState(idEle, 0, {type: 'number', unit: '°'});
                      createState(idAzi, 0, {type: 'number', unit: '°'});
                      
                      function Sonnenstand_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(idEle, Math.round(10 * h) / 10, true);
                      	//setState(idAzi, Math.round(a), true);
                      
                          setState(idAzi, Math.round(Math.round(10 * a) / 10), true);
                      }
                      schedule("* * * * *", Sonnenstand_berechnen);
                      
                      bahnuhrB Online
                      bahnuhrB Online
                      bahnuhr
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #10

                      @pistus

                      geb doch mal was ein und vergleichen die Werte mit dem Internet.
                      Dann siehst du doch gleich ob die Werte passen.


                      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                      Danke.
                      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                      ScreenToGif :https://www.screentogif.com/downloads.html

                      P 1 Antwort Letzte Antwort
                      0
                      • bahnuhrB bahnuhr

                        @pistus

                        geb doch mal was ein und vergleichen die Werte mit dem Internet.
                        Dann siehst du doch gleich ob die Werte passen.

                        P Offline
                        P Offline
                        Pistus
                        schrieb am zuletzt editiert von
                        #11

                        @bahnuhr
                        Für Mülheim an der Ruhr um 16:00 Uhr beträgt das Azimut etwa 220 Grad.
                        Elevation: Dies ist der vertikale Winkel, der den Winkel über dem Horizont angibt. Um 16:00 Uhr in Mülheim an der Ruhr beträgt die Elevation etwa 30 Grad.
                        Jetzt um 16:50
                        aziel.png

                        bahnuhrB 1 Antwort Letzte Antwort
                        0
                        • P Pistus

                          @bahnuhr
                          Für Mülheim an der Ruhr um 16:00 Uhr beträgt das Azimut etwa 220 Grad.
                          Elevation: Dies ist der vertikale Winkel, der den Winkel über dem Horizont angibt. Um 16:00 Uhr in Mülheim an der Ruhr beträgt die Elevation etwa 30 Grad.
                          Jetzt um 16:50
                          aziel.png

                          bahnuhrB Online
                          bahnuhrB Online
                          bahnuhr
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von
                          #12

                          @pistus
                          Also ein bisschen schwerfällig bist du schon.
                          Warum gibts du deine Daten nicht im Internet ein.
                          Dann siehst du doch genau, dass diese fast stimmen !
                          e8136f96-621c-4642-847a-194228db09fe-image.png


                          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                          Danke.
                          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                          ScreenToGif :https://www.screentogif.com/downloads.html

                          P 1 Antwort Letzte Antwort
                          1
                          • bahnuhrB bahnuhr

                            @pistus
                            Also ein bisschen schwerfällig bist du schon.
                            Warum gibts du deine Daten nicht im Internet ein.
                            Dann siehst du doch genau, dass diese fast stimmen !
                            e8136f96-621c-4642-847a-194228db09fe-image.png

                            P Offline
                            P Offline
                            Pistus
                            schrieb am zuletzt editiert von
                            #13

                            @bahnuhr Danke, passt doch super.
                            Mit 82 ist man halt nicht mehr so drahtig. Könntest Du bitte mir den Link Link von Deinem Beispiel, Berechnung Sonnenverlauf, weitergeben.

                            bahnuhrB 1 Antwort Letzte Antwort
                            0
                            • P Pistus

                              @bahnuhr Danke, passt doch super.
                              Mit 82 ist man halt nicht mehr so drahtig. Könntest Du bitte mir den Link Link von Deinem Beispiel, Berechnung Sonnenverlauf, weitergeben.

                              bahnuhrB Online
                              bahnuhrB Online
                              bahnuhr
                              Forum Testing Most Active
                              schrieb am zuletzt editiert von
                              #14

                              @pistus
                              gleich der 1. Treffer in google
                              6674eedd-752e-4f89-9702-4f8ed20b151b-image.png

                              für Mond gibts auch sowas.


                              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                              Danke.
                              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                              ScreenToGif :https://www.screentogif.com/downloads.html

                              P 1 Antwort Letzte Antwort
                              1
                              • bahnuhrB bahnuhr

                                @pistus
                                gleich der 1. Treffer in google
                                6674eedd-752e-4f89-9702-4f8ed20b151b-image.png

                                für Mond gibts auch sowas.

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

                                @bahnuhr Danke.
                                Der nächste Schritt, ich würde gerne den Sonnenverlauf mittels Sonnenbild im Halbkreis darstellen . Im Hintergrund mein Solardach in Ost- West Ausrichtung, zwei Stränge.
                                Die Sonne soll sich stündlich weiter bewegen und dabei soll die abgeführte Leistung vom Solardach angezeigt werden. Jeder Strang.
                                solardach.jpg
                                Dach hinten ist Osten.
                                sonnenstand10.png
                                So ungfähr

                                bahnuhrB 1 Antwort Letzte Antwort
                                0
                                • P Pistus

                                  @bahnuhr Danke.
                                  Der nächste Schritt, ich würde gerne den Sonnenverlauf mittels Sonnenbild im Halbkreis darstellen . Im Hintergrund mein Solardach in Ost- West Ausrichtung, zwei Stränge.
                                  Die Sonne soll sich stündlich weiter bewegen und dabei soll die abgeführte Leistung vom Solardach angezeigt werden. Jeder Strang.
                                  solardach.jpg
                                  Dach hinten ist Osten.
                                  sonnenstand10.png
                                  So ungfähr

                                  bahnuhrB Online
                                  bahnuhrB Online
                                  bahnuhr
                                  Forum Testing Most Active
                                  schrieb am zuletzt editiert von
                                  #16

                                  @pistus
                                  Da muss jemand anders helfen.


                                  Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                  Danke.
                                  gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                                  ScreenToGif :https://www.screentogif.com/downloads.html

                                  P 1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB bahnuhr

                                    @pistus
                                    Da muss jemand anders helfen.

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

                                    @bahnuhr Die Leistung je Strang bekomme ich schon jetzt mittels Modbus vom Wechselrichter und kann in den Objekten abgeholt werden.
                                    Wie bekommt man die Daten von Azimuth in VIS und kann diese dann im Halbkreis darstellen.

                                    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

                                    664

                                    Online

                                    32.6k

                                    Benutzer

                                    82.1k

                                    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