Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. Heidelberg Energy Control / PV-Laden / Modbus / Blockly

NEWS

  • Wartung am 15.11. – Forum ab 22:00 Uhr nicht erreichbar
    BluefoxB
    Bluefox
    12
    2
    279

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.7k

Heidelberg Energy Control / PV-Laden / Modbus / Blockly

Heidelberg Energy Control / PV-Laden / Modbus / Blockly

Scheduled Pinned Locked Moved Hardware
73 Posts 22 Posters 22.1k Views 22 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N nitrox9

    @leonledule Ja, ungefähr so. Ich habe da auch mit "aktualisiere" anstatt "steuere" gearbeitet -- aber das sehe ich pragmatisch 😉

    L Offline
    L Offline
    leonledule
    wrote on last edited by
    #44

    @nitrox9 Alles klar 🙂
    danke.

    1 Reply Last reply
    0
    • N nitrox9

      @leonledule Ja, ungefähr so. Ich habe da auch mit "aktualisiere" anstatt "steuere" gearbeitet -- aber das sehe ich pragmatisch 😉

      L Offline
      L Offline
      leonledule
      wrote on last edited by
      #45

      @nitrox9
      Hallo Nitrox,

      Nun funktioniert alles super durch deine Hilfe. Ich kann alle Werte der Wallbox einlesen und schreiben und habe bereits mein Überschuss Script, welches wunderbar funktioniert. Das Script ist nur zum einphasigen Laden. Könnte man das auch umbasteln, um dreiphasig zu regeln? Meine Frage dazu: Ich habe ja den Maximal Current Command. Kann ich damit die Phasen beim Laden irgendwie einzeln regeln, oder regelt der Maximal Current Command beim dreiphasigen Laden alles Phasen gleichzeitig, sprich wenn ich 6A einstelle lädt er auf allen 3 Phasen mit 6 A ?

      Liebe Grüße
      Leon

      05b3ea32-037b-4f55-94b2-f8d0e6e4543e-grafik.png
      2b3e0cdc-355d-43f1-8287-21aa9c1d8d13-grafik.png
      0a0b73b7-a2d6-4138-8011-d01a31085e9e-grafik.png

      N 2 Replies Last reply
      0
      • L leonledule

        @nitrox9
        Hallo Nitrox,

        Nun funktioniert alles super durch deine Hilfe. Ich kann alle Werte der Wallbox einlesen und schreiben und habe bereits mein Überschuss Script, welches wunderbar funktioniert. Das Script ist nur zum einphasigen Laden. Könnte man das auch umbasteln, um dreiphasig zu regeln? Meine Frage dazu: Ich habe ja den Maximal Current Command. Kann ich damit die Phasen beim Laden irgendwie einzeln regeln, oder regelt der Maximal Current Command beim dreiphasigen Laden alles Phasen gleichzeitig, sprich wenn ich 6A einstelle lädt er auf allen 3 Phasen mit 6 A ?

        Liebe Grüße
        Leon

        05b3ea32-037b-4f55-94b2-f8d0e6e4543e-grafik.png
        2b3e0cdc-355d-43f1-8287-21aa9c1d8d13-grafik.png
        0a0b73b7-a2d6-4138-8011-d01a31085e9e-grafik.png

        N Offline
        N Offline
        nitrox9
        wrote on last edited by
        #46

        @leonledule
        Super!
        Ja, der "Maximal Current Command" gilt für alle drei Phasen gleichzeitig, somit dann 3x6A gleichzeitig.

        L 1 Reply Last reply
        0
        • L leonledule

          @nitrox9
          Hallo Nitrox,

          Nun funktioniert alles super durch deine Hilfe. Ich kann alle Werte der Wallbox einlesen und schreiben und habe bereits mein Überschuss Script, welches wunderbar funktioniert. Das Script ist nur zum einphasigen Laden. Könnte man das auch umbasteln, um dreiphasig zu regeln? Meine Frage dazu: Ich habe ja den Maximal Current Command. Kann ich damit die Phasen beim Laden irgendwie einzeln regeln, oder regelt der Maximal Current Command beim dreiphasigen Laden alles Phasen gleichzeitig, sprich wenn ich 6A einstelle lädt er auf allen 3 Phasen mit 6 A ?

          Liebe Grüße
          Leon

          05b3ea32-037b-4f55-94b2-f8d0e6e4543e-grafik.png
          2b3e0cdc-355d-43f1-8287-21aa9c1d8d13-grafik.png
          0a0b73b7-a2d6-4138-8011-d01a31085e9e-grafik.png

          N Offline
          N Offline
          nitrox9
          wrote on last edited by nitrox9
          #47

          @leonledule sagte in Heidelberg Energy Control / PV-Laden / Modbus / Blockly:

          Ich habe ja den Maximal Current Command. Kann ich damit die Phasen beim Laden irgendwie einzeln regeln,

          Wenn du auf die Idee kommst, die Sicherungen L2+L3 nur bei Bedarf zuzuschalten, dann auf jeden Fall nur (!!!!!) bei ausgestecktem Auto.

          L 1 Reply Last reply
          0
          • N nitrox9

            @leonledule
            Super!
            Ja, der "Maximal Current Command" gilt für alle drei Phasen gleichzeitig, somit dann 3x6A gleichzeitig.

            L Offline
            L Offline
            leonledule
            wrote on last edited by
            #48

            @nitrox9 Ok.

            1 Reply Last reply
            0
            • N nitrox9

              @leonledule sagte in Heidelberg Energy Control / PV-Laden / Modbus / Blockly:

              Ich habe ja den Maximal Current Command. Kann ich damit die Phasen beim Laden irgendwie einzeln regeln,

              Wenn du auf die Idee kommst, die Sicherungen L2+L3 nur bei Bedarf zuzuschalten, dann auf jeden Fall nur (!!!!!) bei ausgestecktem Auto.

              L Offline
              L Offline
              leonledule
              wrote on last edited by leonledule
              #49

              @nitrox9 Ja, das auf jeden Fall! Habe sowieso nicht vor Phasen wegzuschalten.

              mmoeller53M 1 Reply Last reply
              0
              • L leonledule

                @nitrox9 Ja, das auf jeden Fall! Habe sowieso nicht vor Phasen wegzuschalten.

                mmoeller53M Offline
                mmoeller53M Offline
                mmoeller53
                wrote on last edited by
                #50

                Hallo, habe das ganze heute versucht über einen ew11 wifi zu rs485 adapter zu realisieren, leider blickt meine wallbox nur dumm rum direkt nach dem einschalten, per iobroker klappt die verbindung nicht, mit qmodmaster wird ab und zu was ausgelesen aber komme halt nicht wirklich weiter da die wallbox direkt in fehler mode geht...
                auto anstecken zum standbuy vermeiden habe ich versucht aber leider auch erfolgslos, ich hoffe ihr könnt mir irgendwie helfen

                Bild_2023-01-20_172105262.png

                1 Reply Last reply
                0
                • N nitrox9

                  @anselra sagte in Heidelberg Energy Control / PV-Laden / Modbus / Blockly:

                  Eine Frage habe ich zu deinem Script, ziemlich unten prüfts du Wert PVLaden=wahr auf was bezieht sich dieser Datenpunkt? ist das Quasi nur ein "Schalter"?

                  Ja, das ist nur ein Schalter.
                  Im ioBroker kann man sich ja unter Objekte => 0_userdata eigene Datenpunkte, hier als Boolean, anlegen. Somit ist das ein Schalter, den man einfach mit der VIS-GUI auf dem Handy umlegen kann. Bei Bedarf auch irgendwie per Skript.

                  So habe ich das Script schon um einige "Features" mit diesen Datenpunkten erweitert:

                  • So gibt es eine "Abschaltpause", er also 5 min vor dem Abschalten mit Minimalstrom weiter lädt um Hytereseschwankungen abzufangen (schonender für Box und Auto).
                  • ein Schalter, wenn die Ladezicke ZOE geladen wird. Sie braucht mindestens 8A und würde bei den 6A abschalten.

                  Extra für die ZOE habe ich mir jetzt noch eine zweite Heidelberg Energy Control "gebraucht" bestellt. Die gibt es relativ günstig "unbenutzt und in ungeöffneter Originalverpackung", weil wohl kaum jemand diese zum PV-Laden bewegen kann 😂
                  Mal sehen, wie ich Script-mäßig beide Boxen kombiniere 🙂

                  D Offline
                  D Offline
                  dawoern
                  wrote on last edited by
                  #51

                  @nitrox9 Hi Nitrox, danke für deine detaillierte Beschreibung! Zwei Fragen noch zu deinem Blockly-Skript (danke übrigens fürs Veröffentlichen des Skripts! Echt klasse!):

                  1. Grundsätzlich finde ich den Tipp sehr gut, eine Hysterese-Bedingung mit einzubauen, wenn dies schonender für Box und Auto ist. Kannst du diesen Punkt genauer erklären? Ich verstehe einfach nicht, warum das Beenden nach (sagen wir mal) 2h und 5 Minuten besser ist als das Beenden des Ladevorgangs nach 2h. Am Ende gebe ich doch der Wallbox den Befehl, den Ladestrom so oder so von 60 auf 0 runterzufahren (oder auch von z.B. 80 auf 0, wenn auf einmal der PV-Überschuss deutlich sinkt). Sorry für die Laien-Frage, aber ich würde es gerne verstehen.
                  2. Gibt es einen bestimmten Grund, weshalb du die Wallbox in 1A-Schritten steuerst (also bei 1-phasigem Laden in 230W-Schritten)? Grundsätzlich kann die Energy Control doch in 0,1-A-Schritten gesteuert werden und ist somit noch feinfühliger. Klar, das würde das Skript verlängern. Aber man könnte ja auch die Vorgabe nicht in viele Einzelbedingungen, sondern auch als geschickte Formel angeben. Ich muss aber zugeben, dass die beispielhafte Grafik von dir schon echt beeindruckend aussieht. Es scheint also so, als würde eine genauere Einstellung auch nicht viel mehr bringen :-). Vielleicht kannst du es trotzdem kurz kommentieren?
                    Danke!
                  alkA 1 Reply Last reply
                  0
                  • N nitrox9

                    Hallo,

                    meine Lösung für die Aufgabe "PV-Überschussladen mit Wallbox Heidelberg Energy Control über Modbus, ioBroker und Blockly" möchte ich hier vorstellen:

                    Anbindung über RS485
                    Bei Recherchen habe ich mehrere Adapter probiert. Am erfolgversprechendsten war das oft angepriesene Hösi Universalgateway.
                    Nach meinem Verständnis kann diese allerdings gar nicht funktionieren, da die von der Heidelberg geforderten 19200/8E1 nicht in der Hösi einstellbar sind.

                    Am Ende klappte es prima mit einem 2,75€ RS485-USB-Adapter in einer ZWEITEN Raspberry in der Garage.

                    935a2b03-a238-4c8f-8514-4ac158d52ceb-image.png

                    Heidelberg und USB-Adapter werden mit zwei Adern eines geschirmten und verdrillten CATx-Netzwerkkabels verbunden. Auf dem Stick wird ein 120Ohm-Widerstand an den grünen Schraubklemmen mit eingesetzt. Die Heidelberg ist intern terminiert.

                    Einstellungen Heidelberg
                    DIP Schalter Config: Block S4/4 = On (ID1), S6/2 = On (Endwiderstand Ein). Die Wallbox ist somit Follower mit der ID1 ohne Master und intern terminiert.
                    Den Drehschalter S1 (Mitte unten) sollte man von 0 (max 6A) auf 5 (max 16A) stellen.

                    6355287d-990c-492d-afe7-04c64cb1aea1-image.png

                    Einrichtung Modbus RTU im ioBroker
                    Auf der ZWEITEN Raspberry wird ganz normal ein frisches ioBroker installiert. Als Adapter dann modbus. Dem eingesteckten RS485-USB-Stick wird /dev/ttyUSB0 zugewiesen.
                    Einstellungen dann auf /dev/ttyUSB0,19200/8E1 und ID1

                    060a449f-06d3-499c-b2d5-caa6ded02567-image.png

                    Die Eingangsregister wurden schon in anderen Postings gut beschrieben:

                    ab9e9a92-6fb9-4b13-9ccc-642981e55e38-image.png

                    Die Holdingregister funktionieren bei mir (v1.0.7) nur genauso (Haken bei Abfrage) wie beschrieben:

                    7a884f21-6053-4ad8-9a36-88af184e9d7f-image.png

                    Die Tabelle mit den Registern sollte man parat haben:
                    https://www.amperfied.de/wp-content/uploads/2022/06/ModBus-Register-Tabelle.pdf
                    https://www.amperfied.de/wp-content/uploads/2022/06/Erweiterte-ModBus-Registerbeschreibung.pdf
                    https://www.amperfied.de/de/service-support/downloads/
                    Relevant ist auch die Version der Firmware. Bei mir steht unter der Adresse 4/30005 die Decimal 263, somit habe ich die Firmware v1.0.7. Dec264 wäre v1.0.8.

                    Box in Betrieb nehmen
                    Nun Instanz neu starten. Es muss grün werden, sonst weiter suchen (siehe unter Protokolle). Am einfachsten ist es, wenn dabei ein Auto angeschlossen ist, um potentielle Probleme (die ich nicht hatte) mit Standby der Box erstmal auszuschliessen.
                    Auto nur anschliessen, wenn die Box nicht mehr blau blinkt.

                    Wenn man nun in die 40262 z.B. 100 für 10A schreibt, dann sollten die Modbus-Objekte für einphasiges Laden bei angeschlossenem Auto so aussehen (L1 lädt mit 10.1A):

                    e0db5089-5228-4c76-ae9e-39bc86d75b0f-image.png

                    • Erst wenn bis hier alles einwandfrei läuft und das Auto mit den manuell eingestellen Werten lädt, geht es weiter! Blockly ganz am Schluß!
                    • Wenn nun alles auf der zweiten Raspberry funktioniert, dann werden beide Raspberry mit Master/Slave verbunden. Ein klasse Feature von ioBroker!
                      Wie das mit dem Master/Slave --also multihost-- funktioniert, findet man im Internet, z.B. hier:
                      https://www.youtube.com/watch?v=o2AT1E0FDD0

                    Das Blockly zum PV-Überschussladen ist im Gegensatz zur Technik ja eine Spielwiese 🙂

                    Meine Gedanken dazu:

                    • Grafiken werden optional über InfluxdDB und Grafana/eCharts erstellt.
                    • der zur Verfügung stehende Überschussstrom wird bei mir über einen Sensor direkt am Zähler erfasst ==> powerfox/poweropti
                      https://poweropti.powerfox.energy/. Für den powerfox gibt es sogar einen iobroker-Adapter -- sehr einfache Sache.
                      Bei den meisten wird das sicherlich irgendwie über den Wechselrichter gehen.
                    • bei mir hat PV-Überschuss nur einphasig Sinn. Über die Werte von L1/L2/L3 könnte man sich dreiphasiges PV-Laden bauen.
                    • Über VIS kann ich per Smartphone PV-Laden ausschalten, er lädt dann max (siehe weiter unten im Blockly)
                    • Wer will kann sich analog zu openWB noch Features wie Grundladen (Min+PV), also z.B. immer min 10A leicht einbauen
                    • Die Debug-Meldungen sollte man operativ noch ausblenden (rechte Maustaste auf debug und "Bausteine deaktivieren").
                    • Zukünftig kann man so intelligent weitere Features wie Wärmepumpe oder DIY-Solarspeicher leicht integrieren.
                    • Ja, sogar eine Lastverteilung unter mehreren Wallboxen, auch verschiedener Firmen, ist machbar. Die Boxen müssen nur irgendwo im ioBroker Datenpunkte ablegen, egal ob über mqtt, modbus oder sonstwas.

                    Kurzum, eine Spielwiese 🙂 :

                    e562f18d-edf7-440a-bf65-fb49d9a58cb9-image.png

                    c64253a6-5222-4470-b64a-94105cfc5807-image.png

                    Und so sieht dann das alles im Betrieb aus

                    4acf22fd-5bba-48ad-b66e-8922ccaf5285-image.png

                    Rot ist der Hausverbrauch. Orange ist die Heidelberg, die sich sehr feinfühlig bemüht den Hausverbrauch zu stabilisieren.

                    Hauptsache nichts einspeisen 😉

                    F Offline
                    F Offline
                    Finkinho
                    wrote on last edited by
                    #52

                    @nitrox9 danke für die umfangreiche Erklärung und die Links! Ich habe soweit alles entsprechend umgesetzt, bekomme nun aber im Modbus Adapter nicht dev/ttyUSB0, sondern dev/ttyAMA0 angezeigt. Auch wechselt der Adapter ständig von gelb nach grün, Werte sind noch keine angekommen. Weißt du, oder jemand hier aus der Runde, Rat? Danke vorab, Markus

                    R 1 Reply Last reply
                    0
                    • F Finkinho

                      @nitrox9 danke für die umfangreiche Erklärung und die Links! Ich habe soweit alles entsprechend umgesetzt, bekomme nun aber im Modbus Adapter nicht dev/ttyUSB0, sondern dev/ttyAMA0 angezeigt. Auch wechselt der Adapter ständig von gelb nach grün, Werte sind noch keine angekommen. Weißt du, oder jemand hier aus der Runde, Rat? Danke vorab, Markus

                      R Offline
                      R Offline
                      Raducanu
                      wrote on last edited by
                      #53

                      Kurze Frage zum Verhalten der Wallbox:
                      Wie verhältsich die Wallbox zwischen 1 / 3 phasen Laden und dem "max. current command"

                      1phasiges Laden
                      Max Current Command
                      60 - 160 (6-16A) * 240V = 1,4kW - 3,8kW Ladeleistung

                      3phasiges Laden
                      Max Current Command
                      60 - 160 (6-16A) * 240V * 3 = 4,2kW - 11,4kW Ladeleistung

                      Stecke ich nun ein 1-phasen PKW (z.B. PlugIn Hybrid von meinen Vater) an sollte nur einer der Modbus 30007 - 30009 (L1/L2/L3 Current) Register eine Ladeleistung anzeigen. 2/3 bleiben auf 0

                      Stecke ich nun ein 3-phasen PKW an zeigen alle drei Register eine Ladeleistung an.
                      Heißt beim berechnen des "40261 max. current command" Wertes für eine PV-Überschussladung muß ich vorher schauen ob das Auto 1 oder 3 phasig läd?

                      Vielen Dank

                      D 1 Reply Last reply
                      0
                      • D dawoern

                        @nitrox9 Hi Nitrox, danke für deine detaillierte Beschreibung! Zwei Fragen noch zu deinem Blockly-Skript (danke übrigens fürs Veröffentlichen des Skripts! Echt klasse!):

                        1. Grundsätzlich finde ich den Tipp sehr gut, eine Hysterese-Bedingung mit einzubauen, wenn dies schonender für Box und Auto ist. Kannst du diesen Punkt genauer erklären? Ich verstehe einfach nicht, warum das Beenden nach (sagen wir mal) 2h und 5 Minuten besser ist als das Beenden des Ladevorgangs nach 2h. Am Ende gebe ich doch der Wallbox den Befehl, den Ladestrom so oder so von 60 auf 0 runterzufahren (oder auch von z.B. 80 auf 0, wenn auf einmal der PV-Überschuss deutlich sinkt). Sorry für die Laien-Frage, aber ich würde es gerne verstehen.
                        2. Gibt es einen bestimmten Grund, weshalb du die Wallbox in 1A-Schritten steuerst (also bei 1-phasigem Laden in 230W-Schritten)? Grundsätzlich kann die Energy Control doch in 0,1-A-Schritten gesteuert werden und ist somit noch feinfühliger. Klar, das würde das Skript verlängern. Aber man könnte ja auch die Vorgabe nicht in viele Einzelbedingungen, sondern auch als geschickte Formel angeben. Ich muss aber zugeben, dass die beispielhafte Grafik von dir schon echt beeindruckend aussieht. Es scheint also so, als würde eine genauere Einstellung auch nicht viel mehr bringen :-). Vielleicht kannst du es trotzdem kurz kommentieren?
                          Danke!
                        alkA Offline
                        alkA Offline
                        alk
                        wrote on last edited by
                        #54

                        @dawoern Vielleicht hilft Dir diese Beschreibung, um noch ein paar Hintergrundinfos zu sammeln -->

                        Mit E3DC S10E und KEBA P30 C-Serie PV optimiert EV laden
                        https://forum.iobroker.net/topic/65668/mit-e3dc-s10e-und-keba-p30-c-serie-pv-optimiert-ev-laden

                        Grundsätzlich sollte der Weg zum PV optimierten laden nicht sehr unterschiedlich sein.

                        LG
                        alk

                        • DIY Electronics that do their job
                        • EV, WB, PV + Battery and optimized charging ;-)
                        1 Reply Last reply
                        0
                        • R Raducanu

                          Kurze Frage zum Verhalten der Wallbox:
                          Wie verhältsich die Wallbox zwischen 1 / 3 phasen Laden und dem "max. current command"

                          1phasiges Laden
                          Max Current Command
                          60 - 160 (6-16A) * 240V = 1,4kW - 3,8kW Ladeleistung

                          3phasiges Laden
                          Max Current Command
                          60 - 160 (6-16A) * 240V * 3 = 4,2kW - 11,4kW Ladeleistung

                          Stecke ich nun ein 1-phasen PKW (z.B. PlugIn Hybrid von meinen Vater) an sollte nur einer der Modbus 30007 - 30009 (L1/L2/L3 Current) Register eine Ladeleistung anzeigen. 2/3 bleiben auf 0

                          Stecke ich nun ein 3-phasen PKW an zeigen alle drei Register eine Ladeleistung an.
                          Heißt beim berechnen des "40261 max. current command" Wertes für eine PV-Überschussladung muß ich vorher schauen ob das Auto 1 oder 3 phasig läd?

                          Vielen Dank

                          D Offline
                          D Offline
                          dawoern
                          wrote on last edited by
                          #55

                          @raducanu Da du ja (so nehme ich an) ein Skript hast, in dem aus dem aktuellen PV-Überschuss der vorgegebene maximale Ladestrom vorgegeben wird, hast du ja vermutlich auch bereits eine Variable (Anzahl_Phasen oder so), mit der du die Vorgabe machen kannst. Dann hast du meiner Meinung nach zwei Möglichkeiten: 1. Wie du schon schreibst: Vorher entscheiden, wie viele Phasen du brauchst und die globale Variable mit diesem Wert setzen (z.B. auch über einen Schalter in deiner Visualisierung?).
                          2. Komfortabler wäre es, wenn du in deinem Skript eine kleine Logik einbaust, die prüft, wie viele Phasen gerade tatsächlich laufen (natürlich nur dann, wenn auch aktuell geladen wird, erkennbar am Ladestatus, sonst kriegst du eine 0 zurück). Wenn nur eine Phase unter Strom steht, dann setzt du "Anzahl_Phasen" = 1, sonst auf 3. Dabei kann es natürlich passieren, dass du am Anfang des Ladens für kurze Zeit eine zu hohe (hättest zu viel Strom bezogen) oder eine zu niedrige Stromstärke (hättest etwas Strom zu viel eingespeist) vorgibst, aber spätestens beim nächsten Durchlauf (weiß nicht, wie oft dein Skript die Ladeleistung anpasst: jede Minute, Sekunde, etc....) würde dann die Leistung genau passen. Wir reden dann also nur von einer recht kurzen Zeit, in der die Anzahl nicht passen würde.

                          1 Reply Last reply
                          0
                          • G Offline
                            G Offline
                            gonzo1101
                            wrote on last edited by gonzo1101
                            #56

                            Hallo
                            Ich habe eine Heidelberg und den Iobroker etc. & kann alles auslesen. 👏
                            Ich habe zwei anliegen. Mit blockly kenn ich mich null 😧 aus und daher meine bitte eure versionen mir anschauen zu können bzgl laden und PV-überschussladen.
                            die Zweite bitte.. wie kannich mir einen Button zusammen bauen und was muß ich ansprechen damit ich sofort laden kann... zb. nachts..
                            thx im vorraus
                            euch allen eine ruhige Woche

                            1 Reply Last reply
                            0
                            • N nitrox9

                              Hallo,

                              meine Lösung für die Aufgabe "PV-Überschussladen mit Wallbox Heidelberg Energy Control über Modbus, ioBroker und Blockly" möchte ich hier vorstellen:

                              Anbindung über RS485
                              Bei Recherchen habe ich mehrere Adapter probiert. Am erfolgversprechendsten war das oft angepriesene Hösi Universalgateway.
                              Nach meinem Verständnis kann diese allerdings gar nicht funktionieren, da die von der Heidelberg geforderten 19200/8E1 nicht in der Hösi einstellbar sind.

                              Am Ende klappte es prima mit einem 2,75€ RS485-USB-Adapter in einer ZWEITEN Raspberry in der Garage.

                              935a2b03-a238-4c8f-8514-4ac158d52ceb-image.png

                              Heidelberg und USB-Adapter werden mit zwei Adern eines geschirmten und verdrillten CATx-Netzwerkkabels verbunden. Auf dem Stick wird ein 120Ohm-Widerstand an den grünen Schraubklemmen mit eingesetzt. Die Heidelberg ist intern terminiert.

                              Einstellungen Heidelberg
                              DIP Schalter Config: Block S4/4 = On (ID1), S6/2 = On (Endwiderstand Ein). Die Wallbox ist somit Follower mit der ID1 ohne Master und intern terminiert.
                              Den Drehschalter S1 (Mitte unten) sollte man von 0 (max 6A) auf 5 (max 16A) stellen.

                              6355287d-990c-492d-afe7-04c64cb1aea1-image.png

                              Einrichtung Modbus RTU im ioBroker
                              Auf der ZWEITEN Raspberry wird ganz normal ein frisches ioBroker installiert. Als Adapter dann modbus. Dem eingesteckten RS485-USB-Stick wird /dev/ttyUSB0 zugewiesen.
                              Einstellungen dann auf /dev/ttyUSB0,19200/8E1 und ID1

                              060a449f-06d3-499c-b2d5-caa6ded02567-image.png

                              Die Eingangsregister wurden schon in anderen Postings gut beschrieben:

                              ab9e9a92-6fb9-4b13-9ccc-642981e55e38-image.png

                              Die Holdingregister funktionieren bei mir (v1.0.7) nur genauso (Haken bei Abfrage) wie beschrieben:

                              7a884f21-6053-4ad8-9a36-88af184e9d7f-image.png

                              Die Tabelle mit den Registern sollte man parat haben:
                              https://www.amperfied.de/wp-content/uploads/2022/06/ModBus-Register-Tabelle.pdf
                              https://www.amperfied.de/wp-content/uploads/2022/06/Erweiterte-ModBus-Registerbeschreibung.pdf
                              https://www.amperfied.de/de/service-support/downloads/
                              Relevant ist auch die Version der Firmware. Bei mir steht unter der Adresse 4/30005 die Decimal 263, somit habe ich die Firmware v1.0.7. Dec264 wäre v1.0.8.

                              Box in Betrieb nehmen
                              Nun Instanz neu starten. Es muss grün werden, sonst weiter suchen (siehe unter Protokolle). Am einfachsten ist es, wenn dabei ein Auto angeschlossen ist, um potentielle Probleme (die ich nicht hatte) mit Standby der Box erstmal auszuschliessen.
                              Auto nur anschliessen, wenn die Box nicht mehr blau blinkt.

                              Wenn man nun in die 40262 z.B. 100 für 10A schreibt, dann sollten die Modbus-Objekte für einphasiges Laden bei angeschlossenem Auto so aussehen (L1 lädt mit 10.1A):

                              e0db5089-5228-4c76-ae9e-39bc86d75b0f-image.png

                              • Erst wenn bis hier alles einwandfrei läuft und das Auto mit den manuell eingestellen Werten lädt, geht es weiter! Blockly ganz am Schluß!
                              • Wenn nun alles auf der zweiten Raspberry funktioniert, dann werden beide Raspberry mit Master/Slave verbunden. Ein klasse Feature von ioBroker!
                                Wie das mit dem Master/Slave --also multihost-- funktioniert, findet man im Internet, z.B. hier:
                                https://www.youtube.com/watch?v=o2AT1E0FDD0

                              Das Blockly zum PV-Überschussladen ist im Gegensatz zur Technik ja eine Spielwiese 🙂

                              Meine Gedanken dazu:

                              • Grafiken werden optional über InfluxdDB und Grafana/eCharts erstellt.
                              • der zur Verfügung stehende Überschussstrom wird bei mir über einen Sensor direkt am Zähler erfasst ==> powerfox/poweropti
                                https://poweropti.powerfox.energy/. Für den powerfox gibt es sogar einen iobroker-Adapter -- sehr einfache Sache.
                                Bei den meisten wird das sicherlich irgendwie über den Wechselrichter gehen.
                              • bei mir hat PV-Überschuss nur einphasig Sinn. Über die Werte von L1/L2/L3 könnte man sich dreiphasiges PV-Laden bauen.
                              • Über VIS kann ich per Smartphone PV-Laden ausschalten, er lädt dann max (siehe weiter unten im Blockly)
                              • Wer will kann sich analog zu openWB noch Features wie Grundladen (Min+PV), also z.B. immer min 10A leicht einbauen
                              • Die Debug-Meldungen sollte man operativ noch ausblenden (rechte Maustaste auf debug und "Bausteine deaktivieren").
                              • Zukünftig kann man so intelligent weitere Features wie Wärmepumpe oder DIY-Solarspeicher leicht integrieren.
                              • Ja, sogar eine Lastverteilung unter mehreren Wallboxen, auch verschiedener Firmen, ist machbar. Die Boxen müssen nur irgendwo im ioBroker Datenpunkte ablegen, egal ob über mqtt, modbus oder sonstwas.

                              Kurzum, eine Spielwiese 🙂 :

                              e562f18d-edf7-440a-bf65-fb49d9a58cb9-image.png

                              c64253a6-5222-4470-b64a-94105cfc5807-image.png

                              Und so sieht dann das alles im Betrieb aus

                              4acf22fd-5bba-48ad-b66e-8922ccaf5285-image.png

                              Rot ist der Hausverbrauch. Orange ist die Heidelberg, die sich sehr feinfühlig bemüht den Hausverbrauch zu stabilisieren.

                              Hauptsache nichts einspeisen 😉

                              I Offline
                              I Offline
                              iobrokerin
                              wrote on last edited by iobrokerin
                              #57

                              @nitrox9 Hi, ich habe ein Problem - ich kriege es nicht zum Laufen. Die IOBroker Verbdinung zur Box scheint zu stehen. Der Adapter wird grün. Ich kann die Werte alle auslesen und auch schreiben. Soweit so gut.

                              Allerdings blinkt meine Box 6 x weiss und 3 x blau, und zwar nach dem Muster:
                              480cb66b-c341-4e56-abdd-c250b630f805-image.png

                              ich in mir jetzt nicht sicher, aber ich denke am Anfang hat die Box weiss geleuchtet. Ich habe dann natürlich auch mal mein Auto angesteckt, das hat aber dann nicht geladen und ich wollte der Sache auf den Grund gehen und dabei diese Blink-Sequenz entdeckt.

                              Hat jemand oder Du @nitrox9 einen Tipp für mich?

                              So sehen meine Register aus:
                              706393e7-3668-4aa7-8255-4326c339f246-image.png

                              I 1 Reply Last reply
                              0
                              • I iobrokerin

                                @nitrox9 Hi, ich habe ein Problem - ich kriege es nicht zum Laufen. Die IOBroker Verbdinung zur Box scheint zu stehen. Der Adapter wird grün. Ich kann die Werte alle auslesen und auch schreiben. Soweit so gut.

                                Allerdings blinkt meine Box 6 x weiss und 3 x blau, und zwar nach dem Muster:
                                480cb66b-c341-4e56-abdd-c250b630f805-image.png

                                ich in mir jetzt nicht sicher, aber ich denke am Anfang hat die Box weiss geleuchtet. Ich habe dann natürlich auch mal mein Auto angesteckt, das hat aber dann nicht geladen und ich wollte der Sache auf den Grund gehen und dabei diese Blink-Sequenz entdeckt.

                                Hat jemand oder Du @nitrox9 einen Tipp für mich?

                                So sehen meine Register aus:
                                706393e7-3668-4aa7-8255-4326c339f246-image.png

                                I Offline
                                I Offline
                                iobrokerin
                                wrote on last edited by
                                #58

                                @iobrokerin ich bekomme auch folgende Fehlermeldungen im Log (manchmal kommen die nicht, da scheint die Verbindung stabil, aber nach zig Resets und neu anschalten der Box hab ich die ab und zu) - ich denke aber, ich bekomme die Fehlermeldung, wenn ich das Script anhalte und den Adapter neu starte, sonst nicht (wenn das Script läuft):

                                45a2ff69-ea8d-4b72-a5b0-43fbba1df9db-grafik.png

                                Das Script schreibt auch folgendes jede Minute: IMMER nur den Wert 100 als Max Ladestrom. In den Registern wird aber 60 angezeigt. Selbst wenn ich dort manuell 100 reinschreibe, springt er sofort wieder auf 60. Safe Current steht bei 160.

                                Die Verbindung des Adapters ist nach wie vor immer grün, ob ich Fehler im Log sehe oder nicht. Ich habe jetzt auch nochmal alle DIP Schalter geprüft, die stimmen auch. Setze ich den S4 auf 0, dann leuchtet das weisse Licht dauerhaft, ist ja dann auch nicht als Client am Modbus konfiguriert. Ich weiss wirklich nicht, was ich noch tun kann. Wäre für jede Hilfe dankbar.

                                Vasilij RootV 1 Reply Last reply
                                0
                                • T Offline
                                  T Offline
                                  ThoHilde
                                  wrote on last edited by
                                  #59

                                  Hallo zusammen,
                                  zunächst: danke für die Anleitung @nitrox9
                                  Verbindung steht bei mir zur Box und ich kann prinzipiell laden, unterbrechen etc. Allerdings funktioniert mein blockly noch nicht so wie gewünscht und ich erhoffe mir einen kleinen Denkanstoß, woran das liegen könnte:

                                  0bfd2866-9b06-4de2-b30a-3254f9c8dc81-grafik.png

                                  Ich möchte das Laden per iOS-Device starten. Hierfür habe ich unter Userdata einen Datenpunkt angelegt (Wallbox), diesen dann per yahka (Homekit Adapter) schaltbar gemacht über das iOS-Device. Dies funktioniert auch. Allerdings startet das Blockly-Skript den Ladevorgang nicht, wenn ich den Schalten schalte (=true). Er schreibt die 16A nicht. Manuell kann ich es vorgeben.
                                  Wo liegt hier mein Fehler?

                                  1 Reply Last reply
                                  0
                                  • I iobrokerin

                                    @iobrokerin ich bekomme auch folgende Fehlermeldungen im Log (manchmal kommen die nicht, da scheint die Verbindung stabil, aber nach zig Resets und neu anschalten der Box hab ich die ab und zu) - ich denke aber, ich bekomme die Fehlermeldung, wenn ich das Script anhalte und den Adapter neu starte, sonst nicht (wenn das Script läuft):

                                    45a2ff69-ea8d-4b72-a5b0-43fbba1df9db-grafik.png

                                    Das Script schreibt auch folgendes jede Minute: IMMER nur den Wert 100 als Max Ladestrom. In den Registern wird aber 60 angezeigt. Selbst wenn ich dort manuell 100 reinschreibe, springt er sofort wieder auf 60. Safe Current steht bei 160.

                                    Die Verbindung des Adapters ist nach wie vor immer grün, ob ich Fehler im Log sehe oder nicht. Ich habe jetzt auch nochmal alle DIP Schalter geprüft, die stimmen auch. Setze ich den S4 auf 0, dann leuchtet das weisse Licht dauerhaft, ist ja dann auch nicht als Client am Modbus konfiguriert. Ich weiss wirklich nicht, was ich noch tun kann. Wäre für jede Hilfe dankbar.

                                    Vasilij RootV Offline
                                    Vasilij RootV Offline
                                    Vasilij Root
                                    wrote on last edited by
                                    #60

                                    @iobrokerin Ich bekomme auch folgende Fehlermeldungen.
                                    Sprich ich bekomme keine Verbindung hin.

                                    modbus.2
                                    2024-03-27 18:12:04.683 info Disconnected from slave

                                    modbus.2
                                    2024-03-27 18:12:03.682 warn Poll error count: 9 code: {"err":"timeout","timeout":5000}

                                    modbus.2
                                    2024-03-27 18:12:03.682 error Request timed out.

                                    modbus.2
                                    2024-03-27 18:12:03.681 warn Error: undefined

                                    modbus.2
                                    2024-03-27 18:11:58.678 info Connected to slave

                                    Jemand eine Idee woran es liegen könnte?
                                    VG

                                    K 1 Reply Last reply
                                    0
                                    • Vasilij RootV Vasilij Root

                                      @iobrokerin Ich bekomme auch folgende Fehlermeldungen.
                                      Sprich ich bekomme keine Verbindung hin.

                                      modbus.2
                                      2024-03-27 18:12:04.683 info Disconnected from slave

                                      modbus.2
                                      2024-03-27 18:12:03.682 warn Poll error count: 9 code: {"err":"timeout","timeout":5000}

                                      modbus.2
                                      2024-03-27 18:12:03.682 error Request timed out.

                                      modbus.2
                                      2024-03-27 18:12:03.681 warn Error: undefined

                                      modbus.2
                                      2024-03-27 18:11:58.678 info Connected to slave

                                      Jemand eine Idee woran es liegen könnte?
                                      VG

                                      K Offline
                                      K Offline
                                      Karl-Heinz1
                                      wrote on last edited by
                                      #61

                                      @nitrox9

                                      Hallo an alle,

                                      ich kämpfe seit kurzer Zeit mit der Heidelberg. Ich wollte Überschussladen mit evcc einrichten, da habe ich allerdings Probleme.

                                      Ihr macht das ja hier scheinbar anders. Ich habe zwei USB to RS485 Adapter und bekomme keine Verbindung mit der Heidelberg. Daher habe ich jetzt einfach einen Shelly in die Heidelberg gesetzt und schalte damit über die Möglichkeit einen Schlüsselschalter zu verwenden die Box ein uns aus. So kann ich das Auto einfach anschliessen und mein Blockly schaltet die WB von morgens 9:00 Uhr bis 21:00 Uhr ein, solange genug PV Energie da ist und der Batterie-Speicher es zulässt.

                                      Was haltet Ihr von evcc ?
                                      Euere Lösung sieht ja auch Top aus.

                                      Da ich mich mit Modbus und RS 485 nicht auskenne (Interessiert mich aber schon) stellt sich die Frage, ob ich bei meiner Lösung bleibe.

                                      Trotzdem würde ich gerne wissen, warum ich auf dem Raspi, keine Verbindung mit der Heidelberg bekomme.

                                      Ich habe auch den Modbus Adapter geladen, der wird aber nicht grün.

                                      K 1 Reply Last reply
                                      0
                                      • K Karl-Heinz1

                                        @nitrox9

                                        Hallo an alle,

                                        ich kämpfe seit kurzer Zeit mit der Heidelberg. Ich wollte Überschussladen mit evcc einrichten, da habe ich allerdings Probleme.

                                        Ihr macht das ja hier scheinbar anders. Ich habe zwei USB to RS485 Adapter und bekomme keine Verbindung mit der Heidelberg. Daher habe ich jetzt einfach einen Shelly in die Heidelberg gesetzt und schalte damit über die Möglichkeit einen Schlüsselschalter zu verwenden die Box ein uns aus. So kann ich das Auto einfach anschliessen und mein Blockly schaltet die WB von morgens 9:00 Uhr bis 21:00 Uhr ein, solange genug PV Energie da ist und der Batterie-Speicher es zulässt.

                                        Was haltet Ihr von evcc ?
                                        Euere Lösung sieht ja auch Top aus.

                                        Da ich mich mit Modbus und RS 485 nicht auskenne (Interessiert mich aber schon) stellt sich die Frage, ob ich bei meiner Lösung bleibe.

                                        Trotzdem würde ich gerne wissen, warum ich auf dem Raspi, keine Verbindung mit der Heidelberg bekomme.

                                        Ich habe auch den Modbus Adapter geladen, der wird aber nicht grün.

                                        K Offline
                                        K Offline
                                        Karl-Heinz1
                                        wrote on last edited by
                                        #62

                                        @karl-heinz1

                                        Hier zur Info die Fehlermeldung die kommt, wenn ich das mit evcc versuche:

                                        code_ evcc -c evcc.yaml
                                        [main  ] INFO 2024/08/24 12:33:27 evcc 0.129.0
                                        [main  ] INFO 2024/08/24 12:33:27 using config file: evcc.yaml
                                        [db    ] INFO 2024/08/24 12:33:27 using sqlite database: /home/pi/.evcc/evcc.db
                                        [main  ] INFO 2024/08/24 12:33:28 listening at :7070
                                        [main  ] FATAL 2024/08/24 12:33:33 cannot create charger 'wallbox5': cannot create charger type 'template': cannot create charger type 'heidelberg': serial: timeout
                                        [main  ] FATAL 2024/08/24 12:33:33 will attempt restart in: 15m0s
                                        [server] FATAL 2024/08/24 12:33:33 unlinkat /tmp/evcc: operation not permittedtext
                                        
                                        1 Reply Last reply
                                        0
                                        • I Offline
                                          I Offline
                                          iobrokerin
                                          wrote on last edited by
                                          #63

                                          Ich kriege das einfach nicht zum Laufen. Alle Register und Einstellungen aber auch Verkabelung doppelt und dreifach geprüft. Dieses Log hier bekomme ich - vielleicht kann jemand etwas mit anfangen:

                                          modbus.0
                                          2025-01-25 14:27:05.645 error Error response: Slave is engaged in processing a long-duration command. Master should retry later
                                          modbus.0
                                          2025-01-25 14:27:05.645 error Error response for FCx24: Slave Device Busy
                                          modbus.0
                                          2025-01-25 14:27:05.614 error unknown function code: 0x1e, 0x66
                                          modbus.0
                                          2025-01-25 14:27:05.586 error Error response: fe
                                          modbus.0
                                          2025-01-25 14:27:05.555 error unknown function code: 0x60, 0x1e
                                          modbus.0
                                          2025-01-25 14:27:04.950 error unknown function code: 0x1e, 0x98
                                          modbus.0
                                          2025-01-25 14:27:04.942 error unknown function code: 0x78, 0x66
                                          modbus.0
                                          2025-01-25 14:27:04.914 error unknown function code: 0x0, 0x60
                                          modbus.0
                                          2025-01-25 14:27:04.884 error unknown function code: 0x18, 0xfe
                                          modbus.0
                                          2025-01-25 14:27:04.855 error unknown function code: 0x18, 0x86
                                          modbus.0
                                          2025-01-25 14:27:04.825 error unknown function code: 0x66, 0xe6
                                          modbus.0
                                          2025-01-25 14:27:04.796 error Error response: 66
                                          modbus.0
                                          2025-01-25 14:27:04.766 error Error response: 18
                                          modbus.0
                                          2025-01-25 14:27:04.736 error Error response: f8
                                          modbus.0
                                          2025-01-25 14:27:04.705 error unknown function code: 0x66, 0x98
                                          modbus.0
                                          2025-01-25 14:27:04.675 error unknown function code: 0x0, 0x0
                                          modbus.0
                                          2025-01-25 14:27:04.644 error Error response: 98
                                          modbus.0
                                          2025-01-25 14:27:04.613 error unknown function code: 0x1e, 0x86
                                          modbus.0
                                          2025-01-25 14:27:04.586 error Error response: fe
                                          modbus.0
                                          2025-01-25 14:27:04.555 error unknown function code: 0x60, 0x1e

                                          N 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          218

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe