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

  • 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

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

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

    @iobrokerin Rein technisch brauchst du nur zwei Adern. Also nein, du brauchst nicht zwingend ein geschirmtes und verdrilltes Kabel.
    Von der sauberen und störungsfreien Durchführung her, ist das natürlich zu empfehlen.
    Aber wenn es Probleme in der Datenkommunikation gibt, dann weißt du wenigstens wo du suchen musst 😁

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

    @nitrox9 ok, Spitze. Welchen ModBus 2 USB Adapter hast du gekauft? Abschliessen tue ich das dann mit einem 150 Ohm Widerstand, reingeklemmt zw. die beiden Anschlussklemmen, richtig?

    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
      #34

      @nitrox9 said in Heidelberg Energy Control / PV-Laden / Modbus / Blockly:

      Die if Abfragen könnte man etwas kürzen - hier mal ein Code-Snippet:
      34bef9c4-fceb-4bfa-ab1b-2f395fdcb71b-grafik.png

      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
        #35

        @nitrox9 Hallo nochmal, ich verstehe nicht, warum bei deinem Screenshot alle Adressen eines höher sind, als in der Tabelle von Heidelberg.

        Z. B. ist die Adresse 30005 die "Modbus Register-Layouts Version" in der Heidelbergadresse auf der Bus-Adresse 4 und nicht 5. Hat das einen Grund?

        N 1 Reply Last reply
        0
        • I iobrokerin

          @nitrox9 Hallo nochmal, ich verstehe nicht, warum bei deinem Screenshot alle Adressen eines höher sind, als in der Tabelle von Heidelberg.

          Z. B. ist die Adresse 30005 die "Modbus Register-Layouts Version" in der Heidelbergadresse auf der Bus-Adresse 4 und nicht 5. Hat das einen Grund?

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

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

          @nitrox9 Hallo nochmal, ich verstehe nicht, warum bei deinem Screenshot alle Adressen eines höher sind, als in der Tabelle von Heidelberg.

          Hat was mit dem Modbus-Protokoll, dem Offset und auch den Herstellerangaben zu tun.
          Google mal nach „modbus offset +1“ oder so.

          L 1 Reply Last reply
          1
          • T ttoebbe

            @nitrox9

            Auch bringen die 16A leider nichts. Immer noch der Charging State 4. Ich habe einen E-Golf dran! Ich habe hier einmal den aktuellen Status als Bild und auch die Erklärung zu den ChargingStates. Falls hier noch jemand eine Idee hat...😢
            d3c7c0f8-39d3-429b-af1c-949d3551e7df-image.png

            869c1454-27a6-4ad5-ad3c-57ed58457c55-image.png

            Philipp 2P Offline
            Philipp 2P Offline
            Philipp 2
            wrote on last edited by Philipp 2
            #37

            @ttoebbe
            @nitrox9
            Ich habe das selbige Problem mit einem eGolf mittels HA.
            Muss der Standby-Modus der Wallbox dauerhaft abgeschalten werden ( sprich Wert auf 4 ) oder muss eine kleine Wartezeit zwischen Wallbox aus dem Standby holen und den Ladebefehl vorhanden sein?

            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
              #38

              @nitrox9

              Dem eingesteckten RS485-USB-Stick wird /dev/ttyUSB0 zugewiesen.

              Wie macht man denn die Zuweisung?

              I 1 Reply Last reply
              0
              • I iobrokerin

                @nitrox9

                Dem eingesteckten RS485-USB-Stick wird /dev/ttyUSB0 zugewiesen.

                Wie macht man denn die Zuweisung?

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

                OK, habe es hinbekommen. Ich habe nun das Skript nachgebaut. Ich habe noch folgende Verbesserung eingebaut:
                Bei der Glättung dekrementierst du den Timer immer, wenn der Ladestrom = 0 ist, wenn der integer-Timer-Wert allerdings umbricht, dann lädst du immer mit Ladestrom = 60. Ich weiss jetzt nicht, ob das ein Praxisrelevanter Fall ist, aber eine Abfrage beim Dekrementieren, ob der Timer > 0 ist behebt das Problem...

                1 Reply Last reply
                0
                • N nitrox9

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

                  @nitrox9 Hallo nochmal, ich verstehe nicht, warum bei deinem Screenshot alle Adressen eines höher sind, als in der Tabelle von Heidelberg.

                  Hat was mit dem Modbus-Protokoll, dem Offset und auch den Herstellerangaben zu tun.
                  Google mal nach „modbus offset +1“ oder so.

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

                  @nitrox9 Hallo nitrox,
                  Dein Beitrag ist sehr toll und war mir sehr hilfreich bis jetzt. Danke schonmal hierfür. Ein Problem habe ich aktuell noch. Vielleicht kannst du mir da ja helfen. Ich habe die Heidelberg nun erfolgreich via Modbus TCP im Io Broker eingebunden und kann auch alle Werte einlesen. Problem ist: Ich kann den Maximal Current command nich wirklich regeln. Sobald ich im maximal current command einen Wert setze (z.B. 160) wird dieser zwar kurz grün, springt nach 1 s aber sofort wieder auf den Wert des FailSafe current. Das heißt der maximal current command passt sich immer automatisch an den Failsafe current an. Sprich: was im FailSafe steht, steht auch im maximal current. Sobald ich den FailSafe ändere, ändert sich der maximal Current Wert automatisch mit. Woran könnte das denn liegen? Ich wäre dir sehr dankbar, über eine Antwort!

                  Liebe Grüße, Leon.

                  objects.JPG input.JPG holding.JPG

                  N 1 Reply Last reply
                  0
                  • L leonledule

                    @nitrox9 Hallo nitrox,
                    Dein Beitrag ist sehr toll und war mir sehr hilfreich bis jetzt. Danke schonmal hierfür. Ein Problem habe ich aktuell noch. Vielleicht kannst du mir da ja helfen. Ich habe die Heidelberg nun erfolgreich via Modbus TCP im Io Broker eingebunden und kann auch alle Werte einlesen. Problem ist: Ich kann den Maximal Current command nich wirklich regeln. Sobald ich im maximal current command einen Wert setze (z.B. 160) wird dieser zwar kurz grün, springt nach 1 s aber sofort wieder auf den Wert des FailSafe current. Das heißt der maximal current command passt sich immer automatisch an den Failsafe current an. Sprich: was im FailSafe steht, steht auch im maximal current. Sobald ich den FailSafe ändere, ändert sich der maximal Current Wert automatisch mit. Woran könnte das denn liegen? Ich wäre dir sehr dankbar, über eine Antwort!

                    Liebe Grüße, Leon.

                    objects.JPG input.JPG holding.JPG

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

                    @leonledule
                    Ich habe gerade mal in mein Skript geschaut, offenbar hatte ich da auch mal Probleme, denn ich schalte beides gleichzeitig 😉
                    Also die 160 in die Maximal (40262) UND in die Failsafe (40263) schreiben -- geht 😉

                    L 1 Reply Last reply
                    0
                    • N nitrox9

                      @leonledule
                      Ich habe gerade mal in mein Skript geschaut, offenbar hatte ich da auch mal Probleme, denn ich schalte beides gleichzeitig 😉
                      Also die 160 in die Maximal (40262) UND in die Failsafe (40263) schreiben -- geht 😉

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

                      @nitrox9 Ok, habs jetz mal so:Unbenannt.JPG
                      Ich denke so hast du es gemeint. Das funktioniert auch:
                      Unbenannt2.JPG

                      Danke für deine Hilfe!

                      N 1 Reply Last reply
                      0
                      • L leonledule

                        @nitrox9 Ok, habs jetz mal so:Unbenannt.JPG
                        Ich denke so hast du es gemeint. Das funktioniert auch:
                        Unbenannt2.JPG

                        Danke für deine Hilfe!

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

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

                        L 2 Replies 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
                          #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
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          228

                                          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