Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Modbus Problem Labornetzteil

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    492

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

Modbus Problem Labornetzteil

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
38 Beiträge 10 Kommentatoren 7.2k Aufrufe 8 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ThojoT Thojo

    @michael2142
    Ich stehe vor dem gleichen Problem, nur bei mir klappt schon das Schreiben der Werte in das Netzteil nicht. Ich habe vermutlich die Holdingregister falsch angelegt. Auslesen der Werte aus dem Netzteil klappt, die Werte stehen in den Objekten. Ich habe schon viel versucht leider ohne Erfolg. Kannst du mir sagen wie du die HoldingRegister angelegt hast, vielleicht ein Screenshot ?
    Vielen Dank.

    Ralla66R Offline
    Ralla66R Offline
    Ralla66
    Most Active
    schrieb am zuletzt editiert von Ralla66
    #4

    @thorsten-jochem

    wäre auch daran Interessiert, DPM ist da, hast du ein Programm für Windows Modbus Rtu / Usb RS485 -> PC ?
    Dann würde ich mittesten.

    Ralla

    ThojoT 1 Antwort Letzte Antwort
    0
    • Ralla66R Ralla66

      @thorsten-jochem

      wäre auch daran Interessiert, DPM ist da, hast du ein Programm für Windows Modbus Rtu / Usb RS485 -> PC ?
      Dann würde ich mittesten.

      Ralla

      ThojoT Offline
      ThojoT Offline
      Thojo
      schrieb am zuletzt editiert von Thojo
      #5

      Ich habe keine Software für Windows, ich teste direkt im iobroker.

      Ralla66R 1 Antwort Letzte Antwort
      0
      • ThojoT Thojo

        Ich habe keine Software für Windows, ich teste direkt im iobroker.

        Ralla66R Offline
        Ralla66R Offline
        Ralla66
        Most Active
        schrieb am zuletzt editiert von Ralla66
        #6

        @thorsten-jochem

        ok habs mit hterm hin bekommen, kann jetzt testen.

        wurde mal das Beispiel write gesendet, also
        --> 01 10 00 00 00 02 04 09 60 05 DC F2 E4 <--
        sollte der Host die CRC berechnen und anfügen sende nur
        --> 01 10 00 00 00 02 04 09 60 05 DC <--

        Modbus CRC16 Online Rechner

        Eingabe CRC-16/Modbus Rechner : 01 10 00 00 00 02 04 09 60 05 DC Ausgabe: E4 F2
        Drehen: aus E4 F2 wird F2 E4

        01 Adresse
        10 Write
        00 00 Startregister
        00 02 Registeradresse
        04 zu schreibende Byte 4 Stück
        09 60 Volt hex, dec 2400 --> 24.00 Volt
        05 DC Ampere hex, dec 1500 --> 1.5 Ampere
        F2 E4 CRC

        ThojoT 1 Antwort Letzte Antwort
        0
        • Ralla66R Ralla66

          @thorsten-jochem

          ok habs mit hterm hin bekommen, kann jetzt testen.

          wurde mal das Beispiel write gesendet, also
          --> 01 10 00 00 00 02 04 09 60 05 DC F2 E4 <--
          sollte der Host die CRC berechnen und anfügen sende nur
          --> 01 10 00 00 00 02 04 09 60 05 DC <--

          Modbus CRC16 Online Rechner

          Eingabe CRC-16/Modbus Rechner : 01 10 00 00 00 02 04 09 60 05 DC Ausgabe: E4 F2
          Drehen: aus E4 F2 wird F2 E4

          01 Adresse
          10 Write
          00 00 Startregister
          00 02 Registeradresse
          04 zu schreibende Byte 4 Stück
          09 60 Volt hex, dec 2400 --> 24.00 Volt
          05 DC Ampere hex, dec 1500 --> 1.5 Ampere
          F2 E4 CRC

          ThojoT Offline
          ThojoT Offline
          Thojo
          schrieb am zuletzt editiert von
          #7

          @ralla66
          Die Frage ist jetzt für mich, wie werden die HoldingRegister im modbus Adapter angelegt?
          Welche Einstellungen sind nötig?

          1 Antwort Letzte Antwort
          0
          • ThojoT Thojo

            @michael2142
            Ich stehe vor dem gleichen Problem, nur bei mir klappt schon das Schreiben der Werte in das Netzteil nicht. Ich habe vermutlich die Holdingregister falsch angelegt. Auslesen der Werte aus dem Netzteil klappt, die Werte stehen in den Objekten. Ich habe schon viel versucht leider ohne Erfolg. Kannst du mir sagen wie du die HoldingRegister angelegt hast, vielleicht ein Screenshot ?
            Vielen Dank.

            M Offline
            M Offline
            Michael2142
            schrieb am zuletzt editiert von
            #8

            @thorsten-jochem
            Servus sorry das ich mich jetzt erst melde mein Netzteil (E-Aton Server) hat den geist aufgegeben und heute is endlich das neue gekommen und das Projekt kann weiter gehen. Also die HoldinRegister habe ich gans einfach so angelegt siehe Foto bin da kein Profi aber es funkioniert :D Screenshot 2022-12-27 at 16-48-56 instances - raspberrypi.png

            Hoff du kannst mir sagen wie du es geschafft hast die Werte aus dem netzteil zu lesen wo hast du die eingetragen und was genau :)
            hab jetzt mal 4096-4105 ausprobiert da kommt leider nicht bei mir raus nur unschlüssige Zahlen :D

            ThojoT I 2 Antworten Letzte Antwort
            0
            • M Michael2142

              @thorsten-jochem
              Servus sorry das ich mich jetzt erst melde mein Netzteil (E-Aton Server) hat den geist aufgegeben und heute is endlich das neue gekommen und das Projekt kann weiter gehen. Also die HoldinRegister habe ich gans einfach so angelegt siehe Foto bin da kein Profi aber es funkioniert :D Screenshot 2022-12-27 at 16-48-56 instances - raspberrypi.png

              Hoff du kannst mir sagen wie du es geschafft hast die Werte aus dem netzteil zu lesen wo hast du die eingetragen und was genau :)
              hab jetzt mal 4096-4105 ausprobiert da kommt leider nicht bei mir raus nur unschlüssige Zahlen :D

              ThojoT Offline
              ThojoT Offline
              Thojo
              schrieb am zuletzt editiert von
              #9

              @michael2142
              Ich habe das Ganze so in den HoldingRegister gelöst:iobroker_instance_HoldingRegister.JPG

              Unter Allgemein so:
              iobroker_instance_allgemein_1-3.JPG

              und so:
              iobroker_instance_allgemein_3-3.JPG

              Heimtückisch sind die Settings im DPM8624, hier muss folgendes eingestellt werden:
              5-CS _1
              6-bd 009.6
              7-Ad 01
              8-CH 01
              4110 (46.40 (dieser Wert ändert sich ständig)) keine Ahnung für was das ist oder ob man das braucht???

              ... und dann musst du das Ding ausschalten und wieder einschalten, erst dann greifen die Settings. Dafür habe ich Tage gebraucht.

              Unter den Objekten sieht das dann so bei mir aus:
              iobroker_objekte.JPG
              Hier kann man die Werte der Register 0,1 und 2 direkt ändern.

              Ich bin kein Programmierer, das fällt mir echt schwer aber das, was ich jetzt brauche ist ein blocklySkript das die Werte U und I entsprechend dem aktuellen Leistungsverbrauch aus dem Stromnetz (gemessen über ein Smartmeter) anpasst. Kann hier jemand unterstützen ? Ich hab kein Plan wie ich hier starte oder wo ich mit welcher Logik beginne.

              Vielen Dank schon mal vorab für Lösungsansätze.

              M D 2 Antworten Letzte Antwort
              3
              • ThojoT Thojo

                @michael2142
                Ich habe das Ganze so in den HoldingRegister gelöst:iobroker_instance_HoldingRegister.JPG

                Unter Allgemein so:
                iobroker_instance_allgemein_1-3.JPG

                und so:
                iobroker_instance_allgemein_3-3.JPG

                Heimtückisch sind die Settings im DPM8624, hier muss folgendes eingestellt werden:
                5-CS _1
                6-bd 009.6
                7-Ad 01
                8-CH 01
                4110 (46.40 (dieser Wert ändert sich ständig)) keine Ahnung für was das ist oder ob man das braucht???

                ... und dann musst du das Ding ausschalten und wieder einschalten, erst dann greifen die Settings. Dafür habe ich Tage gebraucht.

                Unter den Objekten sieht das dann so bei mir aus:
                iobroker_objekte.JPG
                Hier kann man die Werte der Register 0,1 und 2 direkt ändern.

                Ich bin kein Programmierer, das fällt mir echt schwer aber das, was ich jetzt brauche ist ein blocklySkript das die Werte U und I entsprechend dem aktuellen Leistungsverbrauch aus dem Stromnetz (gemessen über ein Smartmeter) anpasst. Kann hier jemand unterstützen ? Ich hab kein Plan wie ich hier starte oder wo ich mit welcher Logik beginne.

                Vielen Dank schon mal vorab für Lösungsansätze.

                M Offline
                M Offline
                Michael2142
                schrieb am zuletzt editiert von
                #10

                @thorsten-jochem
                Super danke dir das Probiere ich gleich mal aus :)

                Wegen dem Blocky bin ich gerade am arbeiten. Wie bekommst du die Werte vom Aktuellen PV-überschuss?

                Gruß
                Michael

                ThojoT 1 Antwort Letzte Antwort
                0
                • M Michael2142

                  @thorsten-jochem
                  Super danke dir das Probiere ich gleich mal aus :)

                  Wegen dem Blocky bin ich gerade am arbeiten. Wie bekommst du die Werte vom Aktuellen PV-überschuss?

                  Gruß
                  Michael

                  ThojoT Offline
                  ThojoT Offline
                  Thojo
                  schrieb am zuletzt editiert von
                  #11

                  @michael2142
                  Hallo Michael,
                  ein frohes neues Jahr wünsche ich. Ich versuche mal meinen Aufbau zu beschreiben, so fern das schon klappt.
                  Ich habe drei 400W Panels, die sind in Reihe mit einem Laderegler verbunden. Der LR lädt einen 4,5kWh Akku (36V, 12x3V/125Ah, LiFePO4). Daran angeschlossen ist der DMP8624 und weiter ein 700 W Wechselrichter.
                  Mein Vorhaben ist den DMP8624 so zu steuern, dass er soviel einspeist wie ich gerade aus dem Netz ziehe bis zu max. 700 W. Diesen Wert (oder etwas darunter) soll er nicht überschreiten. Den aktuellen Leistungsverbrauch bekomme ich über ein Smartmeter, der Wert ist ebenfalls im iob.
                  Ich stelle mir ein Skript vor, dass diese Steuerung übernimmt und auf 0W regelt, oder besser noch auf einen einstellbaren Wert, den ich über einen weiteren Datenpunkt angebe. Die Obergrenze von 700W sollte auch über einen Datenpunkt einstellbar sein um hier mit den Einstellungen noch etwas testen zu können.

                  Die Leistung, die ich aus der PV-Anlage einspeise, messe ich mit einer Fritz!DECT210, die ich über den FritzDECT-Adapter auslese.

                  Ich hoffe mein Vorhaben habe ich verständlich ausgedrückt. Danke schon mal für die Mühen.

                  Gruß

                  1 Antwort Letzte Antwort
                  0
                  • M Michael2142

                    @thorsten-jochem
                    Servus sorry das ich mich jetzt erst melde mein Netzteil (E-Aton Server) hat den geist aufgegeben und heute is endlich das neue gekommen und das Projekt kann weiter gehen. Also die HoldinRegister habe ich gans einfach so angelegt siehe Foto bin da kein Profi aber es funkioniert :D Screenshot 2022-12-27 at 16-48-56 instances - raspberrypi.png

                    Hoff du kannst mir sagen wie du es geschafft hast die Werte aus dem netzteil zu lesen wo hast du die eingetragen und was genau :)
                    hab jetzt mal 4096-4105 ausprobiert da kommt leider nicht bei mir raus nur unschlüssige Zahlen :D

                    I Offline
                    I Offline
                    io-taster
                    schrieb am zuletzt editiert von
                    #12

                    @michael2142

                    Hallo zusammen,

                    ich bin gerade an der selben Aufgabenstellung dran. Seit ihr inzwischen weiter gekommen?

                    M 1 Antwort Letzte Antwort
                    0
                    • I io-taster

                      @michael2142

                      Hallo zusammen,

                      ich bin gerade an der selben Aufgabenstellung dran. Seit ihr inzwischen weiter gekommen?

                      M Offline
                      M Offline
                      Michael2142
                      schrieb am zuletzt editiert von Michael2142
                      #13

                      @io-taster

                      Servus bin aktuell noch am testen bin da nicht so ein Profi in Blockly :D und ist bei mir jetzt doch ein wenig aufweniger geworden als gedacht. Wie betreibt ihr das Dmp also mit welcher Spannungsquelle.

                      I ThojoT 2 Antworten Letzte Antwort
                      0
                      • M Michael2142

                        @io-taster

                        Servus bin aktuell noch am testen bin da nicht so ein Profi in Blockly :D und ist bei mir jetzt doch ein wenig aufweniger geworden als gedacht. Wie betreibt ihr das Dmp also mit welcher Spannungsquelle.

                        I Offline
                        I Offline
                        io-taster
                        schrieb am zuletzt editiert von
                        #14

                        @michael2142
                        Hallo, ich betreibe 3 Balkonkraftwerke, 2*1,5kW und eins mit 2kW.
                        Um die effektiver zu nutzen bin ich im Dezember auf den IO-Broker gekommen.
                        Z.Zt. speisen die noch direkt ins Netz ein, sobald mehr als 400Watt ins Netz gehen schalten sich Heizungen zu 400Watt ein.
                        Insgesammt 4 Stück, die über ein Blockly laufen.

                        Ziel soll sein:
                        Ein Stromspeicher von 10-15kW, der über 3 PowMr geladen wird.
                        Die Regelung soll über 3 DPM8624 erfolgen, die in vorhandenen 3 Wechselrichter einspeisen.
                        Die dafür benötigten Teile sind da, bis auf den/die Akkus.
                        Jetzt bin ich halt auch am gucken wie man das Ganze umsetzt.
                        Es wäre schön wenn wir uns da austauschen könnten.

                        1 Antwort Letzte Antwort
                        0
                        • M Michael2142

                          @io-taster

                          Servus bin aktuell noch am testen bin da nicht so ein Profi in Blockly :D und ist bei mir jetzt doch ein wenig aufweniger geworden als gedacht. Wie betreibt ihr das Dmp also mit welcher Spannungsquelle.

                          ThojoT Offline
                          ThojoT Offline
                          Thojo
                          schrieb am zuletzt editiert von
                          #15

                          @michael2142
                          Der DMP8624 wird direkt vom Akku versorgt und kann auch nur max. bis zur Spannung vom Akku regeln. In meinem Fall 36V, also kann der DMP8624 nur bis max. 36 V regeln (tatsächlich knapp darunter, etwas Leistung benötigt er auch für den Betrieb).

                          I 1 Antwort Letzte Antwort
                          0
                          • ThojoT Thojo

                            @michael2142
                            Der DMP8624 wird direkt vom Akku versorgt und kann auch nur max. bis zur Spannung vom Akku regeln. In meinem Fall 36V, also kann der DMP8624 nur bis max. 36 V regeln (tatsächlich knapp darunter, etwas Leistung benötigt er auch für den Betrieb).

                            I Offline
                            I Offline
                            io-taster
                            schrieb am zuletzt editiert von
                            #16

                            @thorsten-jochem
                            Hallo,

                            hast du den DPM8624 direkt per usb am Rasperry pi angeschlossen?
                            Falls ja, was für einen usb - modbus Stecker verwendest du da?
                            Ich hatte bei beiden DPM8624 jeweils andere Stecker dabeiliegen aber keiner hat eine Verbindung mit der Joy-IT Sofware aufgebaut.
                            Von daher hab ich auch noch den nächsten Schritt mit dem iobroker gemacht.

                            M ThojoT 2 Antworten Letzte Antwort
                            0
                            • I io-taster

                              @thorsten-jochem
                              Hallo,

                              hast du den DPM8624 direkt per usb am Rasperry pi angeschlossen?
                              Falls ja, was für einen usb - modbus Stecker verwendest du da?
                              Ich hatte bei beiden DPM8624 jeweils andere Stecker dabeiliegen aber keiner hat eine Verbindung mit der Joy-IT Sofware aufgebaut.
                              Von daher hab ich auch noch den nächsten Schritt mit dem iobroker gemacht.

                              M Offline
                              M Offline
                              Michael2142
                              schrieb am zuletzt editiert von
                              #17

                              @io-taster

                              Hab einfach einen günstigen Rs485 zu usb genkommen und den dirket angesteckt am pi4. hat eigendlich auf anhieb funktioniert. Nur mit den Werten hatte ich anfangs Probleme darum dieser Forumgsbeitrag.
                              Converter habe ich diesen hier : https://www.amazon.de/DSD-TECH-SH-U10-Konverter-Kompatibel/dp/B078X5H8H7/ref=sxin_15_pa_sp_search_thematic_sspa?content-id=amzn1.sym.433505b2-cb41-4afd-b8ac-996325a82a2b%3Aamzn1.sym.433505b2-cb41-4afd-b8ac-996325a82a2b&crid=1CGB7P29JZT9X&cv_ct_cx=usb+zu+rs485&keywords=usb+zu+rs485&pd_rd_i=B078X5H8H7&pd_rd_r=ec9c9788-6ac1-4b44-a296-e77dae4ab09c&pd_rd_w=rpz5P&pd_rd_wg=5vPOn&pf_rd_p=433505b2-cb41-4afd-b8ac-996325a82a2b&pf_rd_r=CEJRD6T4ABRRWC43YJYQ&qid=1673977467&sprefix=usb+zu+rs%2Caps%2C411&sr=1-2-6e6ea531-5af4-4866-af75-1ef299d1c279-spons&sp_csd=d2lkZ2V0TmFtZT1zcF9zZWFyY2hfdGhlbWF0aWM&psc=1

                              1 Antwort Letzte Antwort
                              0
                              • I io-taster

                                @thorsten-jochem
                                Hallo,

                                hast du den DPM8624 direkt per usb am Rasperry pi angeschlossen?
                                Falls ja, was für einen usb - modbus Stecker verwendest du da?
                                Ich hatte bei beiden DPM8624 jeweils andere Stecker dabeiliegen aber keiner hat eine Verbindung mit der Joy-IT Sofware aufgebaut.
                                Von daher hab ich auch noch den nächsten Schritt mit dem iobroker gemacht.

                                ThojoT Offline
                                ThojoT Offline
                                Thojo
                                schrieb am zuletzt editiert von
                                #18

                                @io-taster
                                Ich hab den genommen, der dabei war. Der hat auch auf einem WindowsPC mit der Software vom Hersteller funktioniert.
                                https://www.ebay.de/itm/255283310832?mkcid=16&mkevt=1&mkrid=707-127634-2357-0&ssspo=kSLcqpXwSAK&sssrc=2349624&ssuid=x3j_1EfySsS&var=&widget_ver=artemis&media=WHATS_APP

                                ThojoT 1 Antwort Letzte Antwort
                                0
                                • ThojoT Thojo

                                  @io-taster
                                  Ich hab den genommen, der dabei war. Der hat auch auf einem WindowsPC mit der Software vom Hersteller funktioniert.
                                  https://www.ebay.de/itm/255283310832?mkcid=16&mkevt=1&mkrid=707-127634-2357-0&ssspo=kSLcqpXwSAK&sssrc=2349624&ssuid=x3j_1EfySsS&var=&widget_ver=artemis&media=WHATS_APP

                                  ThojoT Offline
                                  ThojoT Offline
                                  Thojo
                                  schrieb am zuletzt editiert von
                                  #19

                                  Hat denn jemand eine Idee oder einen Lösungsansatz für ein Script?
                                  Ich brauche kein fertiges Script, die Feinheiten bekomme ich schon irgendwie hin. Wichtig wäre mir ein Grundgerüst.
                                  Ich habe einen Leistungswert vom Stromzähler den ich an den DC/DC-Wandler weiterleite. Vor der Weiterleitung muss er in Spannung und Strom geteilt werden. Ich dachte, um es einfach zu halten, nimmt man die Spannung vom Akku, also 36V. Dann muss nur der Wert des Stromes durchgerechnet werden. Danke schon mal vorab für eine Idee!!!

                                  I 1 Antwort Letzte Antwort
                                  0
                                  • ThojoT Thojo

                                    Hat denn jemand eine Idee oder einen Lösungsansatz für ein Script?
                                    Ich brauche kein fertiges Script, die Feinheiten bekomme ich schon irgendwie hin. Wichtig wäre mir ein Grundgerüst.
                                    Ich habe einen Leistungswert vom Stromzähler den ich an den DC/DC-Wandler weiterleite. Vor der Weiterleitung muss er in Spannung und Strom geteilt werden. Ich dachte, um es einfach zu halten, nimmt man die Spannung vom Akku, also 36V. Dann muss nur der Wert des Stromes durchgerechnet werden. Danke schon mal vorab für eine Idee!!!

                                    I Offline
                                    I Offline
                                    io-taster
                                    schrieb am zuletzt editiert von
                                    #20

                                    @thorsten-jochem

                                    Hallo,

                                    gucke dir mal den link an:
                                    https://forum.iobroker.net/topic/46948/leistungssteuerung-pv-wechselrichter-0-einspeisung/9

                                    A 1 Antwort Letzte Antwort
                                    0
                                    • I io-taster

                                      @thorsten-jochem

                                      Hallo,

                                      gucke dir mal den link an:
                                      https://forum.iobroker.net/topic/46948/leistungssteuerung-pv-wechselrichter-0-einspeisung/9

                                      A Offline
                                      A Offline
                                      aikonflo
                                      schrieb am zuletzt editiert von
                                      #21

                                      Hallo Zusammen,

                                      das Thema klingt sehr interessant....,
                                      aber ganz blick ich da noch nicht durch. :thinking_face:

                                      Welcher Adapter wird den da jetzt gebraucht ?

                                      @michael2142 sagte in Modbus Problem Labornetzteil:

                                      @io-taster

                                      Hab einfach einen günstigen Rs485 zu usb genkommen und den dirket angesteckt am pi4. hat eigendlich auf anhieb funktioniert. Nur mit den Werten hatte ich anfangs Probleme darum dieser Forumgsbeitrag.
                                      Converter habe ich diesen hier : shorturl.at/hlGR0

                                      Der hat 4 Klemmern

                                      @thorsten-jochem sagte in Modbus Problem Labornetzteil:

                                      @io-taster
                                      Ich hab den genommen, der dabei war. Der hat auch auf einem WindowsPC mit der Software vom Hersteller funktioniert.
                                      shorturl.at/fqyEJ

                                      Der hat nur 2 Klemmen.

                                      Ich möchte mir den DPM8620 holen und laut Beschreibung ist da kein Adapter dabei.

                                      Welchen Adapter habt ihr im ioBroker verwendet ?
                                      War das der:
                                      38ca1af7-2ea2-4b28-bfc7-3dfdfca2abb5-image.png

                                      Gibt es beim konfigurieren irgendetwas zu beachten oder kann ich mich da and die Bilder
                                      von @thorsten-jochem halten.

                                      Sorry für die fragen, aber mit "Modbus" hab ich hier zum ersten mal zu tun... da blick ich überhaut noch nicht durch.

                                      Zum Thema Skript hätte ich mir folgendes gedacht.
                                      2947a17c-83af-4dbf-95e7-73f873eab27a-image.png

                                      <xml xmlns="https://developers.google.com/blockly/xml">
                                       <variables>
                                         <variable id="#Y~|dVd0]wJ*Kg[b@+=+">Spannung Wechselrichter</variable>
                                         <variable id="]dTt{X.V]6@Bd,*?FtfR">max Einspeisung (Watt)</variable>
                                         <variable id="E.akL_3P2[PY7Dl=X6q_">max Ampere</variable>
                                         <variable id="o=ET6W5z6taM.gI!-CLo">Überschuss</variable>
                                         <variable id="62%O+/Q2o;:1DUb)~[DD">Bedarf</variable>
                                         <variable id="GuT#)C%8q`Vrq$y;ak_C">DC/DC Ampere</variable>
                                       </variables>
                                       <block type="variables_set" id="e|Aw]U5T5dFXtxLQMu-/" x="-313" y="38">
                                         <field name="VAR" id="#Y~|dVd0]wJ*Kg[b@+=+">Spannung Wechselrichter</field>
                                         <value name="VALUE">
                                           <block type="math_number" id="j/d;IXyt!UicW$_CgWo?">
                                             <field name="NUM">36</field>
                                           </block>
                                         </value>
                                         <next>
                                           <block type="variables_set" id="}0F1(ZVR9rQh2O:~Bv86">
                                             <field name="VAR" id="]dTt{X.V]6@Bd,*?FtfR">max Einspeisung (Watt)</field>
                                             <value name="VALUE">
                                               <block type="math_number" id="C=Zx]Iy_?yP!f(!OuBwU">
                                                 <field name="NUM">432</field>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="variables_set" id="%Z[H*:^NV-V?Je+mbL#I">
                                                 <field name="VAR" id="E.akL_3P2[PY7Dl=X6q_">max Ampere</field>
                                                 <value name="VALUE">
                                                   <block type="math_rndfixed" id="*qxiUuWMjGGH/jy2nm5A">
                                                     <field name="n">1</field>
                                                     <value name="x">
                                                       <shadow type="math_number" id="?*~QY#-zvtcfw0]Km(EU">
                                                         <field name="NUM">3.1234</field>
                                                       </shadow>
                                                       <block type="math_arithmetic" id="Q[*As#2r?$Iif;^]7?%#">
                                                         <field name="OP">DIVIDE</field>
                                                         <value name="A">
                                                           <shadow type="math_number" id="EBkUF=ZWzf5JK//,LIEJ">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                           <block type="variables_get" id="_~x50k3AG!+LJRy?gE-(">
                                                             <field name="VAR" id="]dTt{X.V]6@Bd,*?FtfR">max Einspeisung (Watt)</field>
                                                           </block>
                                                         </value>
                                                         <value name="B">
                                                           <shadow type="math_number" id="Fzea;+WGzPE1)5PkQh,W">
                                                             <field name="NUM">1</field>
                                                           </shadow>
                                                           <block type="variables_get" id="mn]ffDU[o!@uL,/(Z|%q">
                                                             <field name="VAR" id="#Y~|dVd0]wJ*Kg[b@+=+">Spannung Wechselrichter</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="on_ext" id="egBaJA9gWKR-tP$]z^PU">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                     <field name="CONDITION">ne</field>
                                                     <field name="ACK_CONDITION"></field>
                                                     <value name="OID0">
                                                       <shadow type="field_oid" id="vhKdy*6|7UPYZ/;9x[4*">
                                                         <field name="oid">0_userdata.0.Strom.Shelly_3EM_gesamt</field>
                                                       </shadow>
                                                     </value>
                                                     <statement name="STATEMENT">
                                                       <block type="variables_set" id="l0X$[%9Vmt;F^AlH6zMn">
                                                         <field name="VAR" id="o=ET6W5z6taM.gI!-CLo">Überschuss</field>
                                                         <value name="VALUE">
                                                           <block type="get_value" id="7`RV}t;*OWu]{A=l=4@m">
                                                             <field name="ATTR">val</field>
                                                             <field name="OID">0_userdata.0.TEST.Netzeinspeisung</field>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="controls_if" id="vqa-4aIg~Xe!n5|65Deq">
                                                             <mutation else="1"></mutation>
                                                             <value name="IF0">
                                                               <block type="logic_compare" id="puD,ubbz}.US/+s*jXGH">
                                                                 <field name="OP">GT</field>
                                                                 <value name="A">
                                                                   <block type="get_value" id="[,J6d_;#l(Fb8MnssJil">
                                                                     <field name="ATTR">val</field>
                                                                     <field name="OID">0_userdata.0.Strom.Shelly_3EM_gesamt</field>
                                                                   </block>
                                                                 </value>
                                                                 <value name="B">
                                                                   <block type="variables_get" id=",zeANbt(VJ,qx3/KO8M-">
                                                                     <field name="VAR" id="]dTt{X.V]6@Bd,*?FtfR">max Einspeisung (Watt)</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </value>
                                                             <statement name="DO0">
                                                               <block type="variables_set" id=")t!DCN|?B]?Zh(Pxk1Aj">
                                                                 <field name="VAR" id="62%O+/Q2o;:1DUb)~[DD">Bedarf</field>
                                                                 <value name="VALUE">
                                                                   <block type="variables_get" id="c;3n4Hu(Tz+ak.!X?_F^">
                                                                     <field name="VAR" id="]dTt{X.V]6@Bd,*?FtfR">max Einspeisung (Watt)</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </statement>
                                                             <statement name="ELSE">
                                                               <block type="variables_set" id="}eD88PA|UsRx-R0MNwf/">
                                                                 <field name="VAR" id="62%O+/Q2o;:1DUb)~[DD">Bedarf</field>
                                                                 <value name="VALUE">
                                                                   <block type="get_value" id="b9sMELx!8dG3.y4)}aq!">
                                                                     <field name="ATTR">val</field>
                                                                     <field name="OID">0_userdata.0.Strom.Shelly_3EM_gesamt</field>
                                                                   </block>
                                                                 </value>
                                                               </block>
                                                             </statement>
                                                             <next>
                                                               <block type="controls_if" id="}#]j^7InM?+/KcTx`$tl">
                                                                 <mutation else="1"></mutation>
                                                                 <value name="IF0">
                                                                   <block type="logic_compare" id="+mw$6piz(._{}BU9ei2f">
                                                                     <field name="OP">LT</field>
                                                                     <value name="A">
                                                                       <block type="variables_get" id="W]HQ/Mj,uBOp{ac.r-9#">
                                                                         <field name="VAR" id="62%O+/Q2o;:1DUb)~[DD">Bedarf</field>
                                                                       </block>
                                                                     </value>
                                                                     <value name="B">
                                                                       <block type="math_number" id="F09NvMlK8(EP0*00`3n,">
                                                                         <field name="NUM">1</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </value>
                                                                 <statement name="DO0">
                                                                   <block type="update" id="Gw,l~lJi,ax.hT_YlKHg">
                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                     <field name="OID">0_userdata.0.TEST.DC_DC_Wandler_Ampere</field>
                                                                     <field name="WITH_DELAY">FALSE</field>
                                                                     <value name="VALUE">
                                                                       <block type="math_number" id="x2MW~/gU~{HTv0l%G{w4">
                                                                         <field name="NUM">0</field>
                                                                       </block>
                                                                     </value>
                                                                   </block>
                                                                 </statement>
                                                                 <statement name="ELSE">
                                                                   <block type="controls_if" id="W;9f~HbV?;4pS}[_z_bo">
                                                                     <value name="IF0">
                                                                       <block type="logic_compare" id="r0jk%+?:waAASyIe2s)%">
                                                                         <field name="OP">GT</field>
                                                                         <value name="A">
                                                                           <block type="variables_get" id="T:Wv0Q6S/U9n;BQ/YIa@">
                                                                             <field name="VAR" id="62%O+/Q2o;:1DUb)~[DD">Bedarf</field>
                                                                           </block>
                                                                         </value>
                                                                         <value name="B">
                                                                           <block type="math_number" id="Kpl,@r|lU-NH_G#wNEXI">
                                                                             <field name="NUM">1</field>
                                                                           </block>
                                                                         </value>
                                                                       </block>
                                                                     </value>
                                                                     <statement name="DO0">
                                                                       <block type="variables_set" id="DC,lyE,me]DE}b6!53lC">
                                                                         <field name="VAR" id="GuT#)C%8q`Vrq$y;ak_C">DC/DC Ampere</field>
                                                                         <value name="VALUE">
                                                                           <block type="math_rndfixed" id="oOhYAElc:Y65sx~p?DIB">
                                                                             <field name="n">1</field>
                                                                             <value name="x">
                                                                               <shadow type="math_number" id="pfLO;o)sTnr21{X+nm;D">
                                                                                 <field name="NUM">3.1234</field>
                                                                               </shadow>
                                                                               <block type="math_arithmetic" id=")(*+V$LI-HK759wE9;86">
                                                                                 <field name="OP">DIVIDE</field>
                                                                                 <value name="A">
                                                                                   <shadow type="math_number">
                                                                                     <field name="NUM">1</field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="TzrT8mz0U@/RAncgIi|@">
                                                                                     <field name="VAR" id="62%O+/Q2o;:1DUb)~[DD">Bedarf</field>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="B">
                                                                                   <shadow type="math_number" id="X_nd$/8dl4f1YpcT7f|Z">
                                                                                     <field name="NUM">36</field>
                                                                                   </shadow>
                                                                                   <block type="variables_get" id="vn@`PWwaM5(m)mEH^e)$">
                                                                                     <field name="VAR" id="#Y~|dVd0]wJ*Kg[b@+=+">Spannung Wechselrichter</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                           </block>
                                                                         </value>
                                                                         <next>
                                                                           <block type="controls_if" id="6uC+6X0sSvhT~^yZ@)/8">
                                                                             <mutation else="1"></mutation>
                                                                             <value name="IF0">
                                                                               <block type="logic_compare" id="enR{ayF1E-A0c*4b_{%M">
                                                                                 <field name="OP">LT</field>
                                                                                 <value name="A">
                                                                                   <block type="variables_get" id="vkiGa}w|Kt=;S2[D78RA">
                                                                                     <field name="VAR" id="GuT#)C%8q`Vrq$y;ak_C">DC/DC Ampere</field>
                                                                                   </block>
                                                                                 </value>
                                                                                 <value name="B">
                                                                                   <block type="math_number" id="TZ6%kj?Md)SIYMFb@TO~">
                                                                                     <field name="NUM">1</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </value>
                                                                             <statement name="DO0">
                                                                               <block type="update" id=":lNGpqOL7y}!YaV7?5GW">
                                                                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                                 <field name="OID">0_userdata.0.TEST.DC_DC_Wandler_Ampere</field>
                                                                                 <field name="WITH_DELAY">FALSE</field>
                                                                                 <value name="VALUE">
                                                                                   <block type="math_number" id="84z+9AvqEQ.bpyb9l6eb">
                                                                                     <field name="NUM">0</field>
                                                                                   </block>
                                                                                 </value>
                                                                               </block>
                                                                             </statement>
                                                                             <statement name="ELSE">
                                                                               <block type="controls_if" id="Venyc/X#4]iBG%QIZ-+{">
                                                                                 <mutation else="1"></mutation>
                                                                                 <value name="IF0">
                                                                                   <block type="logic_compare" id="G)J|3_3B`-CVL$Y[!?~]">
                                                                                     <field name="OP">GT</field>
                                                                                     <value name="A">
                                                                                       <block type="variables_get" id="5|t]YMkxq+~cc}Ya?X~D">
                                                                                         <field name="VAR" id="GuT#)C%8q`Vrq$y;ak_C">DC/DC Ampere</field>
                                                                                       </block>
                                                                                     </value>
                                                                                     <value name="B">
                                                                                       <block type="variables_get" id="[k.I$Nz!pO|4;?L70}oT">
                                                                                         <field name="VAR" id="E.akL_3P2[PY7Dl=X6q_">max Ampere</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </value>
                                                                                 <statement name="DO0">
                                                                                   <block type="update" id=":7oI-tlAyHz5Jf3y*m1h">
                                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                                     <field name="OID">0_userdata.0.TEST.DC_DC_Wandler_Ampere</field>
                                                                                     <field name="WITH_DELAY">FALSE</field>
                                                                                     <value name="VALUE">
                                                                                       <block type="variables_get" id="J}3d^fm0h1u7--ngl$?A">
                                                                                         <field name="VAR" id="E.akL_3P2[PY7Dl=X6q_">max Ampere</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </statement>
                                                                                 <statement name="ELSE">
                                                                                   <block type="update" id="ex/nnNCZbdFgK;JFC_~?">
                                                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                                     <field name="OID">0_userdata.0.TEST.DC_DC_Wandler_Ampere</field>
                                                                                     <field name="WITH_DELAY">FALSE</field>
                                                                                     <value name="VALUE">
                                                                                       <block type="variables_get" id="mm=0{T+w|*g5a[)$E_Je">
                                                                                         <field name="VAR" id="GuT#)C%8q`Vrq$y;ak_C">DC/DC Ampere</field>
                                                                                       </block>
                                                                                     </value>
                                                                                   </block>
                                                                                 </statement>
                                                                               </block>
                                                                             </statement>
                                                                           </block>
                                                                         </next>
                                                                       </block>
                                                                     </statement>
                                                                   </block>
                                                                 </statement>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </statement>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                      </xml>
                                      


                                      Konnte es aber nur theoretisch mit selbst erstellten Datenpunkten testen; da ich noch keinen DPM habe.
                                      Gedanke ist das die Spannung im Bereich vom MPP liegt und die Ampere dann angepasst werden .
                                      Vielleicht hilft es ja trotzdem jemanden

                                      Gruß
                                      Flo

                                      1 Antwort Letzte Antwort
                                      0
                                      • Thorsten Jochem 0T Offline
                                        Thorsten Jochem 0T Offline
                                        Thorsten Jochem 0
                                        schrieb am zuletzt editiert von
                                        #22

                                        Hallo aikonflo,

                                        ja es ist der ModBus-Adapter, orientiere dich an meinen Bildern, dann wird es funktionieren. Als USB zu RS485-Konverter habe ich folgenden verwendet.
                                        https://www.ebay.de/itm/255283310832?hash=item3b701230f0:g:k~oAAOSw-HRb4LD7&amdata=enc%3AAQAHAAAA4CgLe%2BCVwna%2BWJnCPFUbIGQYhDWnaqQFAmazP97Poa1iUQc%2FGKo6t1kYTcN0XJZk9TJ647qmmZa6kQSX5ZenZgHTZ8rs2NgFxYLN314LFgILLT6A5r5jl7Qebq6XV1AAAgOMOKY7zOmQ15JgUio%2Fl2RDZ420wWrqaXY8x40%2BpJyuOfJQkER1%2FmJ4wIPOw6EO5lmyfRTAPNk5GV%2BGm7q1Fx8Nz56xaNdNt04o%2FXgZL44I4Wr%2BDNL7%2FpuoLMcqiA35JbtktH0QeFeA2KiPY9d18wyG6x15XTwoiRaE30EEaYLm|tkp%3ABFBMgOmV7Mth

                                        Der gleiche lag auch in der Verpackung von meinem "DPM8624".

                                        Danke für dein Skript, das ist für mich eine große Hilfe. Vielleicht kann du mir deine Datenpunkte noch etwas beschreiben. Ich weiß nicht genau welche Datenpunkte im Skript ich zu meinen DPM-Datenpunkten bzw. Smartmeter-Datenpunkt zuweisen soll.

                                        A 1 Antwort Letzte Antwort
                                        0
                                        • Thorsten Jochem 0T Thorsten Jochem 0

                                          Hallo aikonflo,

                                          ja es ist der ModBus-Adapter, orientiere dich an meinen Bildern, dann wird es funktionieren. Als USB zu RS485-Konverter habe ich folgenden verwendet.
                                          https://www.ebay.de/itm/255283310832?hash=item3b701230f0:g:k~oAAOSw-HRb4LD7&amdata=enc%3AAQAHAAAA4CgLe%2BCVwna%2BWJnCPFUbIGQYhDWnaqQFAmazP97Poa1iUQc%2FGKo6t1kYTcN0XJZk9TJ647qmmZa6kQSX5ZenZgHTZ8rs2NgFxYLN314LFgILLT6A5r5jl7Qebq6XV1AAAgOMOKY7zOmQ15JgUio%2Fl2RDZ420wWrqaXY8x40%2BpJyuOfJQkER1%2FmJ4wIPOw6EO5lmyfRTAPNk5GV%2BGm7q1Fx8Nz56xaNdNt04o%2FXgZL44I4Wr%2BDNL7%2FpuoLMcqiA35JbtktH0QeFeA2KiPY9d18wyG6x15XTwoiRaE30EEaYLm|tkp%3ABFBMgOmV7Mth

                                          Der gleiche lag auch in der Verpackung von meinem "DPM8624".

                                          Danke für dein Skript, das ist für mich eine große Hilfe. Vielleicht kann du mir deine Datenpunkte noch etwas beschreiben. Ich weiß nicht genau welche Datenpunkte im Skript ich zu meinen DPM-Datenpunkten bzw. Smartmeter-Datenpunkt zuweisen soll.

                                          A Offline
                                          A Offline
                                          aikonflo
                                          schrieb am zuletzt editiert von
                                          #23

                                          @thorsten-jochem-0

                                          Hi,

                                          Ja stimmt die Datenpunkte wären auch hilfreich ....Sorry.

                                          Zur Strommessung verwende ich einen Shelly 3EM.
                                          Dieser zeigt positive und negative Wert an.

                                          Datenpunkte:

                                          "Shelly 3EM gesamt (Watt)"

                                          • ist größer 0 (positiv) -> Strom wird vom Netz bezogen
                                          • ist kleiner 0 (negativ) -> Strom wird in das Netz eingespeist (Überschuss)

                                          Das wäre quasi der Stromzahler (Smartmeter)

                                          "Netzeinspeisung" (wird nicht benötigt)

                                          • ist der negative Wert von "Shelly 3EM gesamt (Watt)" x (-1)

                                          Wobei ich grade selber nicht versteh warum das da drinnen steht, das ist eine Altlast vom debugen und kann gelöscht werden

                                          "DC DC Wandler Ampere"

                                          • ist die Ampere Zahl auf die der DPM eingestellt werden soll

                                          Variablen:

                                          "Spannung Wechselrichtet"

                                          • ist die Spannung mit der du den Wechselrichter betreiben willst.

                                          Sollte meiner Meinung nach im Bereich des MPP des Wechselrichter liegen. (Ausgangsspannung DPM)
                                          Achtung: Laut Betriebsanleitung des DPM´s muss diese um 0,5 V niedriger sein als die Eingangsspannung

                                          "max Einspeisung (Watt)"

                                          • max Watt Zahl des Wechselrichters Eingangs

                                          "max Ampere"

                                          • Ergibt sich durch die anderen 2 Variablen.

                                          Sollte aber kontrolliert werden ob das mit den "max Amper" des Wechselrichter Einganges zusammen passt.

                                          "Bedarf"

                                          • max Einspeisung damit nichts ins Netz geht.

                                          "DC/DC Ampere"

                                          • sind die Ampere auf die der DPM eingestellt werden soll.

                                          Ich hoffe ich konnte das einigermaßen verständlich zusammen fassen.
                                          Wie schon gesagt ist das bis jetzt nur Theorie, ich bekommen meinen DPM erst Mitte nächster Woche
                                          Dann kann ich erst selber testen.

                                          Grüße
                                          Flo

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          488

                                          Online

                                          32.5k

                                          Benutzer

                                          81.8k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe