Ankündigung

Einklappen
Keine Ankündigung bisher.

Wallbox Kaufempfehlung PV-Überschussladesteuerung mit smarthomeng

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Wallbox Kaufempfehlung PV-Überschussladesteuerung mit smarthomeng

    Hallo,

    ich habe meinen Förderantrag für eine Wallbox noch offen. Hat jemand eine Empfehlung für eine Wallbox, die sich einfach und gut in smarthomeNG integrieren lässt? Ich möchte PV-Überschussladesteuerung realisieren. Meine Wechselrichter/Zählerwerte sind schon alle in smarthomeNG verfügbar.

    #2
    Moin
    Willst du die komplette PV Überschuss Regelung selbst in SHNG implementieren, oder geht es dir nur um Anzeige und ein paar Steuerungsmöglichkeiten (sofort Laden, Stop, nur PV, min+PV)?
    Fertige Plugins für SHNG, die die Regelung übernehmen, gibt es nicht. Möglicherweise hat der eine oder andere eine Logik dafür gebaut, für ganz bestimmte Boxen.
    Wenn es nur um grundsätzliche Anzeige und Steuerung geht, bieten sich Boxen an, die über MQTT eingebunden werden können.
    Übliche Verdächtige sind

    OpenWB
    Go.e
    SmartWB

    Regelungssoftware dazwischen z.B. OpenWB oder evcc.

    Eine ganz gute Übersicht über Boxen, die überhaupt für PV Überschuss Regelung geeignet sind, findest du auf der evcc Seite oder im OpenWB Forum.

    Wäre natürlich klasse, wenn man die komplette Anbindung und Regelung einer bestimmten Box in SHNG abbilden würde, aber die Regelung ist nicht ganz ohne. Das sieht im ersten Moment simpel aus, ist es in der Praxis aber nicht. Daher bietet sich zumindest anfangs an, z.B. evcc oder OpenWB dazwischen zu schalten.
    Wobei evcc eine reine Softwarelösung zum Regeln von Boxen ist, OpenWB gibt es als fertige Box, die Software selber kann aber auch andere Boxen regeln.
    OpenWB war lange Zeit konkurrenzlos. In der Zwischenzeit ist sie vor allem eins: teuer.

    Willst du eine Regelung selber implementieren, kommt es darauf an, eine Box zu nehmen, die eine vernünftig dokumentierte API anbietet. Wirklich gut ist keine. Für den go.e gibt es eine API Beschreibung. Für die smartWB sollte es was geben. Für andere weiß ich grad nicht. Da können hier andere evtl. mehr sagen.

    Die Ausstattung ist natürlich auch ein Kriterium. Willst du CP Unterbrechung haben, um eingeschlafene Fahrzeuge aufzuwecken? Willst du 1-Phasen/3-Phasen Umschaltung haben, um bei wenig PV Überschuss feiner regeln zu können?

    Ich selbst verwende aktuell eine ältere go.e Box, mit OpenWB Software zum Regeln und MQTT, um das über SHNG/smartVISU zu steuern. Will aber weg von OpenWB und hin zu evcc.

    Gruß, Martin

    Kommentar


      #3
      Danke für die Zusammenfassung Martin.
      Warum willst du weg von OpenWB?

      Ich vermisse da noch cFos auf der Liste... Bin aber auch neu in der Materie

      Kommentar


        #4
        Ich habe das mit SmarthomeNG, Weinzierl Modbus Gateway, Enertex Smartmeter und Heidelberger WB umgesetzt. Ob ich es empfehlen kann? Geht so. 1p-3p Umschaltung könnte man noch über einen Schaltaktor realisieren habe ich noch nicht....

        Die Logik die man braucht ist supereinfach. Lässt sich mit 3-4 Items ohne extra Logik realisieren.
        Zapft ihr Narren der König hat Durst

        Kommentar


          #5
          Zitat von Sipple Beitrag anzeigen
          Willst du eine Regelung selber implementieren, kommt es darauf an, eine Box zu nehmen, die eine vernünftig dokumentierte API anbietet. Wirklich gut ist keine.
          Habe mich auch noch nicht wirklich damit beschäftigt, habe auch in nächster Zeit noch nicht vor ein E-Auto zu kaufen. Bisher habe ich eine simple Logik um mit dem PV-Überschuss einen Heizstab anzusteuern. Ähnlich hatte ich mir das auch für das Auto vorgestellt. Sprich ich sage der Wallbox zyklisch alle 30 Sek oder so wie viel Leistung da ist und dann wird damit geladen. Und dann gibt es noch einen Modus um immer zu laden, den ich entweder an der Wallbox oder mit KNX-Taster anwähle.

          Zitat von Sipple Beitrag anzeigen
          Die Ausstattung ist natürlich auch ein Kriterium. Willst du CP Unterbrechung haben, um eingeschlafene Fahrzeuge aufzuwecken? Willst du 1-Phasen/3-Phasen Umschaltung haben, um bei wenig PV Überschuss feiner regeln zu können?
          Wäre schon wenn ein Energiezähler drin ist, den man dann in SmarthomeNG einbinden kann. Keine Ahnung was CP Unterbrechung ist. Ausstattung brauch ich sonst nicht viel.

          Kommentar


            #6
            Wallbox WARP:
            Shop | Tinkerforge

            Spricht MQTT, Anleitung mit OpenSource Lösung EVCC: WARP Charger (warp-charger.com)

            Davon, einen Schaltaktor unter Last zu schalten (bin mir nicht sicher, ob ich das hier im Thread gelesen hatte) sollte man bei den Leistungen beim Auto-Laden eher Abstand nehmen...

            Kommentar


              #7
              Ja, die Tinkerforge passt auch gut zu der Liste und wenn man die Preise mal anschaut, liegen die bis auf die OpenWB alle im gleichen Rahmen.

              Mal kurz die eine oder andere Erläuterung.

              CP Unterbrechung: Es gibt Fahrzeuge, die gerne mal "einschlafen", wenn die Ladung von der Wallboxseite her unterbrochen wird, was ja gerade bei PV-Überschuss Ladung häufig vorkommt (Wolken...). Einschlafen bedeutet dann, dass das Fahrzeug beleidigt ist und trotz Wiedereinschalten auf der Wallboxseite die Ladung verweigert. Je nach Fahrzeug hilft da z.B. kurz Aufsperren/Zusperren mit einem Funkschlüssel. Auch Stecker abziehen und anstecken hilft. Nur, wer will das? Manche Wallboxen haben daher einen Trick implementiert. Nach einer Ladepause wird das sog. CP Signal zwischen Box und Fahrzeug kurz unterbrochen. Daher denkt das Fahrzeug, der Stecker wurde abgezogen und wieder angesteckt und fängt wieder an zu laden. Das kann die Lösung sein, muss aber nicht. Hängt vom Fahrzeug ab. Mein e-up z.B. hat einen Zähler in der Software, der nach einigen Ein-Aus-Zyklen dicht macht. Dann hilft nur Kabel raus oder Aufsperren mit dem Funkschlüssel. Die OpenWB Hardware kann das, die smartWB auch. Andere evtl. auch, weiß ich aber grad nicht.

              1Ph/3Ph Umschaltung: Die Ladeströme von Elektrofahrzeugen können nicht beliebig niedrig sein. In der Regel gilt mindestens 5 oder 6 Ampere pro Phase. Hat man ein Fahrzeug, das 3-phasig lädt, heisst das, dass PV laden erst ab einem ÜBERSCHUSS von über 4kW klappt. Bei 2-phasig entsprechend rund 2,7kW. Das ist bei schlechterem Wetter und vor allem im Winter mit den wenigsten PV Anlagen zu machen. Daher schalten intelligente Wallboxen in dem Fall erstmal auf eine Phase und können daher schon ab knapp 1400W PV Überschuss laden. Wenn möglich, schalten sie dann auf 3 Phasen um. Wobei viele Fahrzeuge nur 1 oder 2-phasig laden können, macht nix, funktioniert entsprechend. Boxen, die das können, sind die OpenWB Hardware und der neuere go.e (HW v3 oder so). Andere mag es geben, weiß ich aber grad nicht.

              Bitte nicht das simple Zuschalten eines Heizstabs mit einem E-Auto Vergleichen. Ja, theoretisch kann man das mit einem Dreizeiler machen. Überschuss über 1400/2800/4200W (siehe oben), Wallbox ein. Wenn nicht, Wallbox aus. Da fällt mir dann aber der alte Spruch ein: "Das kannst du schon so machen, aber dann ist es halt scheisse". Je nach z.B. Bewölkung, hast du dann ständig Ein Aus Ein Aus... Siehe CP Unterbrechung, manche Fahrzeuge mögen das gar nicht. Gewisse Regelintervalle, die sowas abmildern, sollten schon sein. Bin aber für alles offen. Wenn jemand tatsächlich mit einer ganz einfachen Logik solche Fälle und ähnliche gut handeln kann, Hut ab!
              Die reine Laderegelung ist damit aber auch nicht alles. Sinnvoll sind schon noch einige Lademodi. Manchmal will man eben sofort und auch ohne PV Überschuss laden. Und manchmal macht es auch Sinn, dass man immer mit einem Mindestladestrom lädt, auch ohne PV, den Ladestrom aber dann erhöht, wenn die PV-Leistung steigt.
              Alles machbar, gibt hier genug Leute, die das drauf haben. Ich würde das evtl. auch hinbekommen, aber hab da momentan einfach die Zeit nicht.

              Hochpass Deine Lösung interessiert mich sehr, denn da geht es mir wie Elton: "Das ist mir zu einfach"
              Kannst du das näher erläutern?

              Gruß, Martin

              Kommentar


                #8
                auto_ladestrom_calc:
                Berechnung des Ladestroms aus dem Überschuss ohne Begrenzung auf 6A-16A

                auto_ladestrom_min:
                begrenzung des Ladestroms nach unten weniger als 6A geht nicht, habe ich getestet.
                (hier könnte man ganz einfach min PV laden als Funktion ergänzen)

                auto_ladestrom:
                Begrenzung des Ladestroms nach oben

                manuel_ladestrom:
                Item für den manuellen Ladestrom wenn nachts geladen werden muss

                max_current_command:
                Item in dem der Strom ans das Modbus Interface gesendet wird. Je nach mode Manuell oder Auto

                wallbox_rechts.reserve:
                hier habe ich den Abstand konfigurierbar gemacht wie groß der Abstand ist. Ob ich auf 0W am Zähler steuere oder noch 400W reserve haben möchte. Kann man auch fest eintragen.

                Aktuell habe ich im Winter einfach 1-2 Sicherungen rausgemacht. Dies wird automatisch erkannt ob 1p, 2p, 3p zur Verfügung steht und der Ladestrom wird automatisch angepasst.
                Der ID3 kommt damit klar und ich kann während des Ladens mehrfach auf 0A runtergehen und wieder starten. Ich kann auch während des Ladens eine Sicherung rausmahen und der ID macht weiter. Nur zuschalten geht nicht, dann muss man den Strom kurzfristig auf 0A setzten und dann wieder automatisch starten, dann gehts ohne Stecker ziehen oder sonstwas.
                Funktioniert für mich erstmal soweit ohne Probleme und ist für mich ausreichend. Aktuell habe ich 2 WB aber Lastmanagement geht damit noch nicht. Aber das 2. E-Auto kommt frühestens in 2 Jahren.


                max_power_set
                max_current_set
                werden nur für die Visu zum Anzeigen benötigt



                Code:
                garage:
                    wallbox:
                        wirkgleistung_gesamt:
                            type: num
                            database: 'init'
                            visu_acl: rw
                            knx_dpt: 14
                            knx_listen: 4/6/0
                            knx_init: 4/6/0
                
                        zaehler_gesamt:
                            type: num
                            database: 'init'
                            visu_acl: rw
                            knx_dpt: 13
                            knx_listen: 4/6/1
                            knx_init: 4/6/1
                            eval: (value/1000) #Umrechnung in kWh
                
                        zwischenzaehler_gesamt:
                            type: num
                            database: 'init'
                            visu_acl: rw
                            knx_dpt: 13
                            knx_listen: 4/6/2
                            knx_init: 4/6/2
                
                        U1:
                            type: num
                            database: 'init'
                            visu_acl: r
                            knx_dpt: 14
                            knx_listen: 4/6/5
                            knx_init: 4/6/5
                            eval: value if (value >200) else 0
                
                        U2:
                            type: num
                            database: 'init'
                            visu_acl: r
                            knx_dpt: 14
                            knx_listen: 4/6/6
                            knx_init: 4/6/6
                            eval: value if (value >200) else 0
                
                        U3:
                            type: num
                            database: 'init'
                            visu_acl: r
                            knx_dpt: 14
                            knx_listen: 4/6/7
                            knx_init: 4/6/7
                            eval: value if (value >200) else 0            
                        
                        UGES:
                            type: num
                            database: 'init'
                            knx_dpt: 14
                            eval_trigger:
                                - garage.wallbox.U1
                                - garage.wallbox.U2
                                - garage.wallbox.U3
                            eval: (sh.garage.wallbox.U1()+sh.garage.wallbox.U2()+sh.garage.wallbox.U3())/10
                            
                    wallbox_rechts:
                        mode:
                            type: bool
                            visu_acl: rw
                            cache: yes
                        
                        reserve:
                            type: num
                            visu_acl: rw
                            cache: yes
                            
                        auto_ladestrom_calc:
                            type: num
                            database: 'init'
                            visu_acl: rw
                            knx_dpt: 7
                            eval_trigger:
                                - garage.wallbox.wirkgleistung_gesamt
                                - ug.smartmeter.wirkleistung.drehstrom
                                - garage.wallbox.UGES
                                - garage.wallbox_rechts.reserve
                            eval: round((((-sh.ug.smartmeter.wirkleistung.drehstrom()+sh.garage.wallbox.wirkgleistung_gesamt()-sh.garage.wallbox_rechts.reserve())/sh.garage.wallbox.UGES() )),0)
                
                        auto_ladestrom_min:
                            type: num
                            database: 'init'
                            visu_acl: rw
                            knx_dpt: 7
                            eval_trigger: garage.wallbox_rechts.auto_ladestrom_calc
                            eval: sh.garage.wallbox_rechts.auto_ladestrom_calc() if (sh.garage.wallbox_rechts.auto_ladestrom_calc() >60) else 0
                
                        auto_ladestrom:
                            type: num
                            visu_acl: rw
                            knx_dpt: 7
                            eval_trigger: garage.wallbox_rechts.auto_ladestrom_min
                            eval: sh.garage.wallbox_rechts.auto_ladestrom_min() if (sh.garage.wallbox_rechts.auto_ladestrom_min() <160) else 160
                
                        manuel_ladestrom:
                            type: num
                            visu_acl: rw
                            knx_dpt: 7
                            cache: yes
                            
                        
                        modbus_register_layouts_vers:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/0
                            knx_init: 4/3/0
                        charging_state:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/1
                            knx_init: 4/3/1
                        L1_current_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/2
                            knx_init: 4/3/2
                        L2_current_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/3
                            knx_init: 4/3/3
                        L3_current_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/4
                            knx_init: 4/3/4
                        pcb_temperature:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/5
                            knx_init: 4/3/5
                        L1_voltage_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/6
                            knx_init: 4/3/6
                        L2_voltage_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/7
                            knx_init: 4/3/7
                        L3_voltage_rms:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/8
                            knx_init: 4/3/8
                        extern_lock_state:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/9
                            knx_init: 4/3/9
                        power_l1_l2_l3:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/10
                            knx_init: 4/3/10
                        energy_since_power_on_high:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/11
                            knx_init: 4/3/11
                        energy_since_power_on_low:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/12
                            knx_init: 4/3/12
                        energy_since_installation_high:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/13
                            knx_init: 4/3/13
                        energy_since_installation_low:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/14
                            knx_init: 4/3/14
                        hw_config_max_current:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/15
                            knx_init: 4/3/15
                        hw_config_min_current:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/16
                            knx_init: 4/3/16
                        mdbus_master_watchdog:
                            type: num
                            visu_acl: rw
                            knx_dpt: 7
                            knx_listen: 4/3/17
                            knx_init: 4/3/17
                            knx_send: 4/3/18
                        standby_function_control:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            knx_listen: 4/3/19
                            knx_init: 4/3/19
                        max_current_command:
                            type: num
                            visu_acl: rw
                            knx_dpt: 7
                            cache: yes
                            eval_trigger:
                                - garage.wallbox_rechts.manuel_ladestrom
                                - garage.wallbox_rechts.auto_ladestrom
                                - garage.wallbox_rechts.mode
                            #eval: sh.garage.wallbox_rechts.auto_ladestrom() if (sh.garage.wallbox_rechts.mode()==1) else value
                            eval: sh.garage.wallbox_rechts.auto_ladestrom() if (sh.garage.wallbox_rechts.mode()==1) else sh.garage.wallbox_rechts.manuel_ladestrom()
                            #knx_listen: 4/3/20
                            #knx_init: 4/3/20
                            knx_send: 4/3/21
                        max_current_set:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            eval_trigger: garage.wallbox_rechts.max_current_command   
                            eval: sh.garage.wallbox_rechts.max_current_command()/10 if (sh.garage.wallbox_rechts.max_current_command() >= 60) else 0   # 0A if curren <6A
                        max_power_set:
                            type: num
                            visu_acl: r
                            knx_dpt: 7
                            eval_trigger:
                                - garage.wallbox_rechts.max_current_command   
                                - garage.wallbox.UGES
                            eval: sh.garage.wallbox_rechts.max_current_command()*sh.garage.wallbox.UGES() if (sh.garage.wallbox_rechts.max_current_command() >= 60) else 0   # 0A if curren <6A
                            
                        failsafe_curent_config:
                            type: num
                            visu_acl: rw
                            knx_dpt: 7
                            knx_listen: 4/3/22
                            knx_init: 4/3/22
                            knx_send: 4/3/23
                Angehängte Dateien
                Zapft ihr Narren der König hat Durst

                Kommentar


                  #9
                  Übrigens muss man nichts Regeln. Es sind alle Informationen bekannt, deshalb kann man steuern.
                  Zapft ihr Narren der König hat Durst

                  Kommentar


                    #10
                    Zitat von android Beitrag anzeigen
                    Hat jemand eine Empfehlung für eine Wallbox, die sich einfach und gut in smarthomeNG integrieren lässt?
                    Ich verwende auch die Tinkerforge WARP2 Charger Smart. Ist über eine HTTP API (https://www.warp-charger.com/api.html) an SmarthomeNG angebunden. PV-Überschusssteuerung z.B. mit EVCC lässt sich wohl einrichten. Lastmanagement ist möglich. Ich kann die Box nur empfehlen. Auch hat der Hersteller ein gut funktionierendes Forum, das einen direkten Kontakt mit den Entwicklern ermöglicht. Aktuell wird auf User-Wunsch die Firmware um ein monatliches Abrechnungsprotokoll erweitert, das zur Vorlage beim Finanzamt dient.

                    Ich bin nicht wirklich fit im Plugin-Erstellen, deshalb mache ich die API-Kommunikation über eine Logik. Klappt aber bisher einwandfrei. Muss aber dazusagen, daß ich das bisher nur eingeschränkte testen kann da das passende Auto zur Wallbox noch nicht vorhanden ist.

                    Gruß
                    Marcus
                    Zuletzt geändert von SMarcus; 12.03.2022, 20:19.

                    Kommentar

                    Lädt...
                    X