Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. E3DC Hauskraftwerk steuern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    E3DC Hauskraftwerk steuern

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

      Hier noch mal ein Hinweis:

          if (nDachflaechen == 2 && ForecastDach1_heute != 0 && ForecastDach2_heute !=0 ){
              PrognoseForecas_kWh_heute = ForecastDach1_heute + ForecastDach2_heute;
              PrognoseForecas_kWh_morgen = ForecastDach1_morgen + ForecastDach1_morgen;
              
          }
      

      In der Zeile Prognose_kwh_morgen muss es da nicht am Ende ForecastDach2_morgen heißen

      A 1 Reply Last reply Reply Quote 0
      • A
        ArnoD @michael74 last edited by

        @michael74 sagte in E3DC Hauskraftwerk steuern:

        Dann habe ich die Zeile mit Dachfläche in folgende geändert, jetzt läuft es

        Kannst du mal die Zeilen die du geändert hast hier posten. Bin mir nicht sicher ob ich deine Änderung richtig verstanden habe.

        1 Reply Last reply Reply Quote 0
        • A
          ArnoD @michael74 last edited by

          @michael74 sagte in E3DC Hauskraftwerk steuern:

          In der Zeile Prognose_kwh_morgen muss es da nicht am Ende ForecastDach2_morgen heißen

          👍 Ja da hast du recht, ist ein Kopierfehler. Habe ich geändert.
          Danke.

          M 1 Reply Last reply Reply Quote 0
          • M
            michael74 @ArnoD last edited by

            @ArnoD Wollte den Code eigentlich kopiert haben...

                // Daten Forecast einmal beim Programmstart aktualisieren
                if(getState(sID_PrognoseAnwahl).val != 1) {
                    switch (nDachflaechen){
                    case 1:
                        InterrogateForecast (1,2);
                        setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                        break;
                    case 2:
                        //InterrogateForecast (1,2);
                        setTimeout(function(){InterrogateForecast (1,2);;}, 2000);
                        InterrogateForecast (2,2);
                        setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                        break;
                    };
            

            Änderung nur in Zeile 10. Muss jetzt noch in dem Bereich Timer die gleiche Änderung machen.

            A 1 Reply Last reply Reply Quote 0
            • A
              ArnoD @michael74 last edited by

              @michael74
              OK konnte den Fehler reproduzieren.
              Würde gerne beide Aufrufe etwas verzögern.
              Kannst du mal bei dir folgende Änderung testen:

              // Daten Forecast einmal beim Programmstart aktualisieren
                  if(getState(sID_PrognoseAnwahl).val != 1) {
                      switch (nDachflaechen){
                      case 1:
                          InterrogateForecast (1,2);
                          setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                          break;
                      case 2:
                          setTimeout(function(){InterrogateForecast (1,2);},1000);
                          setTimeout(function(){InterrogateForecast (2,2);},2000);
                          setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                          break;
                      };
                  }
              
              S M 2 Replies Last reply Reply Quote 0
              • S
                stevie77 @ArnoD last edited by

                @ArnoD sagte in E3DC Hauskraftwerk steuern:

                @michael74
                OK konnte den Fehler reproduzieren.
                Würde gerne beide Aufrufe etwas verzögern.
                Kannst du mal bei dir folgende Änderung testen:

                // Daten Forecast einmal beim Programmstart aktualisieren
                    if(getState(sID_PrognoseAnwahl).val != 1) {
                        switch (nDachflaechen){
                        case 1:
                            InterrogateForecast (1,2);
                            setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                            break;
                        case 2:
                            setTimeout(function(){InterrogateForecast (1,2);},1000);
                            setTimeout(function(){InterrogateForecast (2,2);},2000);
                            setTimeout(function(){main();},5000);//Zeit geben bevor main ausgeführt wird
                            break;
                        };
                    }
                

                Mit dieser Lösung sehe ich jetzt auch erstmals Dachfläche 1 im Log ("Gespeichert wurde Dachfläche =1/2 : 29494 :64200")...

                1 Reply Last reply Reply Quote 0
                • M
                  michael74 @ArnoD last edited by

                  @ArnoD Ja so funktioniert es.

                  1 Reply Last reply Reply Quote 0
                  • A
                    ArnoD last edited by

                    Danke euch beiden für die Rückmeldung.

                    Neue Version: 0.2.14 hochgeladen.

                    Änderungen: Fehler in der Function Prognosen_kWh_Berechnen() korrigiert. Verzögerung für Aufruf der Function InterrogateForecast(). Danke an michael74.

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      stevie77 @ArnoD last edited by

                      @ArnoD Heute mal endlich wieder mit 73,3 kWh ne nennenswerte Produktion. Es zeigt sich: Auch bei 3/4 der möglichen maximalen Erzeugung meiner PV-Anlagen geht der Produktionszähler über dein Skript mit nur 0,3 kWh Abweichung gegenüber dem Portal verdammt genau. Bei 100 kWh erwarte ich dann nicht mehr als 0,4 kWh Abweichung. Naja, nächstes Jahr dann wieder. 🙂

                      Das führt mich zu der Frage, ob es für dich vielleicht Sinn macht evtl. auch die Netzeinspeisung (modbus.0.holdingRegisters.40074_Netz_Leistung) und den Hausverbrauch (modbus.0.holdingRegisters.40072_Hausverbrauch_Leistung) über die entsprechenden Modbus-Register aufzusummieren, auch wenn sie nicht direkt nötig sind zur Steuerung von E3DC-Control. Ich würde die beiden Werte gerne in meiner immer sichtbaren Statuszeile visualisieren.

                      Falls diese Zusatzfunktion am Rande Sinn macht in dein Skript aufzunehmen, würde ich mich freuen, ansonsten müsste ich wohl on(sID_PvLeistungLM0_W, function(obj) {..} und function Wh_Leistungsmesser0(){..} kopieren und adaptieren, korrekt?

                      A smartboart 2 Replies Last reply Reply Quote 0
                      • A
                        ArnoD @stevie77 last edited by

                        @stevie77

                        Der Scriptteil Produktionszähler kommt von smartboart, habe ich nur übernommen.
                        Ich will nicht zu viel in das Script integrieren, um es nicht unnötig aufzublasen.
                        Das Script soll ja nicht sourceanalytix ersetzen, was generell für genau diese Aufgabe gedacht ist und auch dafür besser geeignet ist.

                        Aber es steht natürlich jedem frei das Script nach seinen Wünschen anzupassen.

                        ansonsten müsste ich wohl on(sID_PvLeistungLM0_W, function(obj) {..} und function Wh_Leistungsmesser0(){..} kopieren und adaptieren, korrekt?

                        Ja das ist richtig.

                        1 Reply Last reply Reply Quote 0
                        • smartboart
                          smartboart @stevie77 last edited by

                          @stevie77
                          https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern/393
                          hier kannst es rauskopieren... Dann musst du es nicht aus Arnos Script entflechten.

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            stevie77 @smartboart last edited by

                            @smartboart Hi, danke für den Extrakt. 🙂
                            Ich habe es jetzt eben mal eingepflegt und leicht angepasst (Variablennamen zum Anwendungszweck passend und die Pfade für das Modbus-Register etc.). Dabei fiel mir mal wieder folgendes auf, vielleicht kann mir das jemand beantworten.

                            Im Menüpunkt Log des ioBrokers funktioniert das Logging (debug und logging true). In der Konsole zum Skript funktioniert das oft nicht. Jetzt war es eben so, dass lange nichts geloggt wurde, und dann habe ich wohl den Fokus ein paar Mal innerhalb ioBroker gewechselt und irgendwann fing es an unterhalb des Skripts zu loggen. Ist aber manchmal eher zufällig. Eben hatte ich das Gefühl es ging los, nachdem ich ein anderes Skript geöffnet und wieder geschlossen hatte. Kennt ihr das auch oder woran kann das liegen?

                            smartboart 1 Reply Last reply Reply Quote 0
                            • smartboart
                              smartboart @stevie77 last edited by

                              @stevie77 ich kenne das auch... Denke das hat mim Browser zu tun... Neu laden dann geht's meistens oder mal den Browser Cache leeren.. Ist nicht wirklich nachvollziehbar....

                              G 1 Reply Last reply Reply Quote 0
                              • G
                                goelectric @smartboart last edited by

                                Guten Abend!
                                Ich bin durch Zufall auf diesen Faden gestossen und beeindruckt mit welcher Qualität hier diskutiert und Lösungen angeboten werden.
                                Da meine E3DC-Anlage auf dem Transportweg ist und ich einiges vorbereiten möchte, habe ich folgende Frage:
                                Meine PC-Anlage liegt auf 4 Dächern mit jeweils einem String. Wie kann ich die Ertragsberechnung (Vorhersage) auf diese 4 Dächer erweitern? Reicht es im Scriptteil die Abfrage nach Anzahl der Dächer auf 4 zu erweitern und entsprechende Variablen hinzufügen? Falls ja, wird durch folgende Updates dieser Scriptpart überschrieben?

                                Für Eure Bemühungen dankend.

                                smartboart M A 3 Replies Last reply Reply Quote 0
                                • smartboart
                                  smartboart @goelectric last edited by

                                  @goelectric
                                  die Frage müsstest du an Arno stellen, da er der Entwickler des Projekts ist.

                                  Du müsstest, grob drüber geschaut, die Einstellung forcast solar , Create states , user eingabe prüfen , InterrogateForecast und die function Prognosen_kWh_Berechnen erweitern.

                                  Da die Dachfläschen im Userteil konfigurierbar sind , wäre es auch bei Updates des scriptes kein Problem...

                                  Da Arno das Script geschrieben hat , kann er das im Detail bestimmt schneller beantworten und mich korriegieren wenn ich Käse erzähle...

                                  1 Reply Last reply Reply Quote 0
                                  • smartboart
                                    smartboart @ArnoD last edited by

                                    @ArnoD sagte in E3DC Hauskraftwerk steuern:

                                    Habe jetzt eine Rückmeldung von E3DC wegen den Batterieaussetzer.
                                    Sie haben bei mir ein Update aufgespielt und beobachten das Ganze die nächsten Tage.

                                    Hi Arno, wie verhält sich dein neues Update? Noch Batterieaussetzer? Welcher Version hast du?

                                    A 1 Reply Last reply Reply Quote 0
                                    • M
                                      michael74 @goelectric last edited by

                                      @goelectric hatte mein Script auf 5 Dachflächen erweitert sind mehrere Bereiche die erweitert werden müssen. Könnte die Änderungen dir zukommen lassen, oder hier hochladen.

                                      S A 2 Replies Last reply Reply Quote 0
                                      • S
                                        stevie77 @michael74 last edited by

                                        @michael74 sagte in E3DC Hauskraftwerk steuern:

                                        @goelectric hatte mein Script auf 5 Dachflächen erweitert sind mehrere Bereiche die erweitert werden müssen. Könnte die Änderungen dir zukommen lassen, oder hier hochladen.

                                        Könnte mich auch interessieren. Ich habe ja auch 4 Dachflächen; ich habe halt die beiden Süd-Flächen mit unterschiedlichen Winkeln zusammengefasst und dann Ost-West mit den Werten von West, da Ost nur 5 Module sind. Die Frage ist halt, ob man durch genauere Dachflächenwerte so viel gewinnt, weil die Prognosen ja sowieso eher ungenau sind?

                                        A 1 Reply Last reply Reply Quote 0
                                        • A
                                          ArnoD @goelectric last edited by

                                          @goelectric
                                          Hallo goelectric,
                                          hast du bei allen vier Dächer eine unterschiedliche Dachneigung und Ausrichtung ?

                                          Ich werde das Script für 4 Dachflächen in der nächsten Version erweitern, da dieser Wunsch jetzt schon öfter geäußert wurde.
                                          Es muss für jede Dachfläche eine eigene Anfrage der Daten bei forecast ausgelöst werden und die Anzahl der Abfragen ist pro IP Adresse begrenzt.

                                          M 1 Reply Last reply Reply Quote 0
                                          • A
                                            ArnoD @smartboart last edited by

                                            @smartboart sagte in E3DC Hauskraftwerk steuern:

                                            Hi Arno, wie verhält sich dein neues Update? Noch Batterieaussetzer? Welcher Version hast du?

                                            Bis jetzt hatte ich keine Batterieaussetzer mehr. Werde das aber noch eine Weile beobachten, da dieser Fehler sehr sporadisch war.
                                            Ich habe die Version P10_2020_066

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            793
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            70
                                            3331
                                            1363283
                                            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