Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. InfluxDB mit Tages PV Vorhersage füllen

    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

    InfluxDB mit Tages PV Vorhersage füllen

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

      Hallo
      Vielleicht kennst Du dich mit der InfluxDB bei dieser Anwendung nicht aus.
      Ist nicht böse gemeint.
      Man schreibt im allgemeinen in die DB nur den Wert, die Uhrzeit wird dann
      automatisch von InfluxDB dazu geschrieben.
      Man kann aber auch den Wert und eine Uhrzeit in die DB schreiben.
      So schreibt man in einem Rutsch zB
      06:00 den Wert 0 rein
      07:00 den Wert 100
      08:00 den Wert 200
      09:00 300
      10:00 400
      11:00 500
      12:00 600
      13:00 500
      14:00 400
      15:00 300
      16:00 200
      17:00 100
      18:00 0
      Das ergiebt dann eine Kurve wie ein Berg.
      Mit dem Adapter wird das wohl nicht gehen.
      Das wird warscheinlich nur mit einem Script gehen.
      Gesucht wird ein Script das in die InfluxDB schreiben kann.
      Gruß NetFritz

      BBTown 1 Reply Last reply Reply Quote 0
      • BBTown
        BBTown @NetFritz last edited by

        @NetFritz sagte in InfluxDB mit Tages PV Vorhersage füllen:

        Vielleicht kennst Du dich mit der InfluxDB bei dieser Anwendung nicht aus.

        da wirst Du recht haben 😎

        1 Reply Last reply Reply Quote 0
        • N
          NetFritz last edited by

          Hallo
          Ich bin immer noch dran um die InfuxDB mit values und Time zu füllen.
          Habe mir jetzt mal unter ioBroker.influxdb
          angesehen.
          Da gibt es die Möglichkeit write.Point

          ###writePoint Writes a point to a series - requires database user privileges
          
          var point = { attr : value, time : new Date()};
          writePoint(seriesName, point, options, callback) { }
          

          Kann man mit time ein belibiges Datum-Zeit oder Timstring eintragen?

          Kann man nach der conf vom iobroker-influx dann writePoint aufrufen?
          Gruß NetFritz

          1 Reply Last reply Reply Quote 0
          • N
            NetFritz last edited by

            Hallo
            Habe mal ein Script auf Basis von node-influx erstellt.

            var influx = require('influx')
            
            var client = influx({
            
              // single-host configuration
              host : '192.168.2.107',
              port : 8086, // optional, default 8086
              protocol : 'http', // optional, default 'http'
              database : 'iobroker'
            })
            var value = 1111122331;
            var seriesName = "forecast";
            
            var point = { attr : value, time : new Date('2019-04-22 17:00:00')};
            
            client.writePoint(seriesName, point);
            

            Das Script läuft und trägt die Daten in der InfluxDB ein.
            Auch der Zeitspempel wird so eingetragen.
            Gehe ich aber bei und ändere ich das Datum auf ein Tag in die Zukunft
            dann wird nichts mehr eingetragen.
            Muss man irgendwo was einstellen, das es auch für die Zukunft (nächster Tag) geht?
            Gruß NetFritz

            1 Reply Last reply Reply Quote 0
            • N
              NetFritz last edited by

              Hallo
              Zur Info.
              Die Daten werden nun in die InfluxDB eingetragen.
              Die verflixte DB Abfrage mit Port:8083 hat mich durcheinander gebracht.
              Frage ich mit "SELECT * FROM forecast" die DB ab, dann wird in der Abfrage
              immer nur bis zur aktuellen Uhrzeit angezeigt.
              Als ich die Abfrage in Grafa eingetragen habe ist unter Today der ganze Tag
              zu sehen.
              Stelle ich unter Time range Das Datum von Heute bis Morgen ein,
              Dann sind auch Heute und Morgen in Grafana zu sehen.
              Gruß NetFritz

              1 Reply Last reply Reply Quote 0
              • H
                hofmachr @NetFritz last edited by

                @NetFritz hallo, ich würde gerne die PV Produktion für den nächsten Tag berechnen - bin aber KEIN Techniker. Wie bekommst du diese werte aus dem API von forecast.solar - kannst du das script / blockly sharen ?

                1 Reply Last reply Reply Quote 2
                • H
                  hacki11 last edited by hacki11

                  Ich bin auch gerade dabei die Forecasts von Ertragsberechnungen in die Hausautomatisierung zu integrieren.

                  Ich schreibe die forecast.solar Daten mit Telegraf direkt in die InfluxDB ohne über IOBroker zu gehen.
                  Hier meine Config für die Telegraf Input:

                  [[inputs.http]]
                    urls = [
                      "https://api.forecast.solar/estimate/watts/<lat>/<lon>/<degree>/<az>/<kwp>?time=utc"
                    ]
                  
                    headers = {"accept" = "text/csv", "X-Delimiter" = "|", "X-Separator" = ";"}
                  
                    data_format = "csv"
                    name_override = "pvForecastWatts"
                    interval = "3600s"
                    csv_header_row_count = 0
                    csv_column_names = ["time","value"]
                    csv_delimiter = ";"
                    csv_timestamp_column = "time"
                    csv_timestamp_format = "2006-01-02T15:04:05-07:00"
                  
                  [[inputs.http]]
                    urls = [
                      "https://api.forecast.solar/estimate/watthours/<lat>/<lon>/<degree>/<az>/<kwp>?time=utc"
                    ]
                  
                    headers = {"accept" = "text/csv", "X-Delimiter" = "|", "X-Separator" = ";"}
                  
                    data_format = "csv"
                    name_override = "pvForecastWattHours"
                    interval = "3600s"
                    csv_header_row_count = 0
                    csv_column_names = ["time","value"]
                    csv_delimiter = ";"
                    csv_timestamp_column = "time"
                    csv_timestamp_format = "2006-01-02T15:04:05-07:00"
                  
                  
                  [[inputs.http]]
                    urls = [
                      "https://api.forecast.solar/estimate/watthours/day/<lat>/<lon>/<degree>/<az>/<kwp>?time=utc"
                    ]
                  
                    headers = {"accept" = "text/csv", "X-Delimiter" = "|", "X-Separator" = ";"}
                  
                    data_format = "csv"
                    name_override = "pvForecastWattHoursDay"
                    interval = "3600s"
                    csv_header_row_count = 0
                    csv_column_names = ["time","value"]
                    csv_column_types = []
                    csv_delimiter = ";"
                    csv_timestamp_column = "time"
                    csv_timestamp_format = "2006-01-02T15:04:05-07:00"
                  
                  G 1 Reply Last reply Reply Quote 0
                  • G
                    geka79 @hacki11 last edited by

                    @hacki11
                    leider bekomme ich Telegraf nicht zum laufen... gibt es ein passende Quelle, wo man sich schlau machen könnte?
                    Ich versuchs schon eine Weile, leider ohne Erfolg... 😞

                    danke

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      stenmic @geka79 last edited by

                      @geka79
                      Falls es jemand von euch braucht, ich schreibe mit Java Value und Time in die Datenbank.

                      Hier ein Beispiel:

                      sendTo('influxdb.0', 'storeState', {id: 'Temperaturen.Außen.Tagesdurchschnitt2', state: {ts: (new Date().getTime()) - 86400000, val: getState("javascript.0.Aussentemperaturen.Tagesdurchschnitt.Durchschnitt").val, ack: true, from: "javascript.0", q: 0}});
                      

                      Gruß

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

                        Hallo Leute, ich versuche seit Tagen die Werte aus dem pv.forecast Adapter in grafana darzustellen und schaffe es nicht. Wie bekomm ich die Werte aus dem Adapter in grafana? Gibt es da ein Schritt für Schritt Anleitung?

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        398
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        7
                        16
                        3097
                        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