Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. DMP8624 -> iobroker

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    DMP8624 -> iobroker

    This topic has been deleted. Only users with topic management privileges can see it.
    • Wal
      Wal Developer @Ralla66 last edited by

      @ralla66 ,
      da habe ich im Moment die Hardware dazu zum testen. Du musst aber den Skriptspeicher im Auge behalten oder auf einen ESP32 wechseln. Berryscript sollte ich mir auch mal anschauen.

      Ralla66 1 Reply Last reply Reply Quote 0
      • Ralla66
        Ralla66 Most Active @Wal last edited by Ralla66

        @wal

        bestelle schon mal Esp32 falls das zu wenig ist.
        1366 Zeichen sind übrig.
        Im Script fehlt ja nur noch Wert Bezug extrahieren und die Berechnung.
        Denke wird bsp. -> 150 Watt Bezug : Volt Festwert 29 Volt = A <-

        Der Pylontech hat immer zwischen 47 und 52 Volt .
        Schaue heute abend mal die Livedaten ab 19:00 Uhr.

        erster Eindruck, Hoymiles DC eine Seite,

        DPM Messung 1.jpg

        Nachtrag, man könnte auch den Mppt des WR setzen zwischen 25 und 32 Volt, 0 -12 A .
        Dazu müsste der Mppt Point bekannt sein oder eine Var anlegen das jeder Fest Volt
        selbst bestimmt.
        Der Lumentree hat meist bsp. -> 150 Watt Bezug : Volt Festwert 49 Volt Pylon = A <-
        Na ja, Pylontech Spannungswert einlesen ist ja jetzt easy.

        DPM SP.jpg

        Wal 1 Reply Last reply Reply Quote 1
        • Wal
          Wal Developer @Ralla66 last edited by Wal

          @ralla66 ,
          ja das wollte ich so umsetzen, feste Spannung am WR und Ampere regeln.
          Nach dem Einschalten des DPM die Spannung langsam hochfahren auf z.B. 30V und danach je nach Leistungsabnahme den Strom regeln.

          Edit: ich nutze ein APSystems DS3-S den kann man noch nicht regeln.

          Ralla66 1 Reply Last reply Reply Quote 0
          • Ralla66
            Ralla66 Most Active @Wal last edited by Ralla66

            @wal

            dann lass uns doch eine Var einfügen Spannungswert Ausgang. Diese kann dann
            fest sein oder Variable durch Pylon Spannungswerte oder andere Wechselrichterwerte
            beschrieben werden. Festwert würde mir auch reichen, so genau muss das nicht geregelt
            werden.

            Ich mag die alten Analoginstrumente 🙂

            PowerTower.jpg

            Wal 1 Reply Last reply Reply Quote 1
            • Wal
              Wal Developer @Ralla66 last edited by

              @ralla66,
              habe mir jetzt eine einfache Regelung erstellt die schon sehr gut funktioniert.
              Muss mir noch mit Grafana ein Graph erstellen für den Langzeittest.
              Ist mit der Rechnung

              p=pwr-(U*I)
              

              erstellt, da ich noch keine Batterie habe und den aktuellen Verbrauch hole ich mir über eine Globale Variable da das einfach ist.

              >D
              g:pwr=0
              p=0
              timer=0
              Umax=40
              Imax=10
              Ppos=20
              Pneg=-50
              U=40
              I=0.5
              p:SW=0
              rU="01060000"
              vU=""
              rI="01060001"
              vI=""
              rSW="01060002000"
              vSW=""
              >BS
              +>subscribe U, cmnd/%topic%/tvolt
              +>subscribe I, cmnd/%topic%/tampere
              +>subscribe SW, cmnd/%topic%/tpow
              >B
              ->sensor53 r
              tper=10
              >S
              dt [l1c1p10]pwr=%pwr%
              p=pwr-(U*I)
              timer+=1
              if timer>3 {
              if p>Ppos {
              I+=0.5
              }
              if p<Pneg {
              if p<-150 {
              I=0.5
              }
              I-=0.5
              }
              timer=0
              } 
              if chg[SW]>0 {
              vSW=rSW+s(SW)
              sml(1 3 vSW)
              +>publish stat/%topic%/RESULT {"tpow":%0SW%}
              }
              if chg[U]>0 {
              if U>Umax {
              U=Umax
              }
              if U<0 {
              U=0
              }
              vU=rU+sb(hx((U*100)) 4 4)
              sml(1 3 vU)
              +>publish stat/%topic%/RESULT {"tvolt":%2U%}  
              }
              if chg[I]>0 {
              if I>Imax {
              I=Imax
              }
              if I<0.5 {
              I=0.5
              }
              vI=rI+sb(hx((I*1000)) 4 4) 
              sml(1 3 vI)
              +>publish stat/%topic%/RESULT {"tampere":%2I%}  
              }
              >W
              bu(SW "DPM Ein" "DPM Aus")
              nm(0.0 60.0 0.01 U "DPM Ausgang (V)" 200 2)
              nm(0.0 24.0 0.01 I "DPM Ausgang (A)" 200 2)
              Aktuelle Leistung{m} %0pwr% W
              Errechnete Leistung{m} %0p% W
              >M 1
              +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310030001
              1,010302SSssxxxx@i0:100,Spannung,V,sVolt,2
              1,010302SSssxxxx@i1:1000,Strom,A,sCur,2
              1,010302SSssxxxx@i2:1,Ausgang,,sSwitch,0
              1,010302SSssxxxx@i3:1,Temp,°C,tCur,1
              #
              
              Ralla66 2 Replies Last reply Reply Quote 0
              • Ralla66
                Ralla66 Most Active @Wal last edited by

                @wal

                Prima da es so funktioniert. Bin mal gespannt wie es läuft wenn die Batterie da ist.

                Anregungen habe ich hier viele bekommen und werde wenn dann mal Zeit ist
                das für mich umstellen. Bei mir soll ja Tagsüber nur in den Speicher geladen werden
                und erst Abends eine fast Nulleinspeisung erfolgen. Das bedingt ja einen Timer.
                Die globale Variable werde ich wohl auch nicht nutzen. Lese hier weiter mit und
                werde das Projekt weiter unterstützen wenn Bedarf besteht.

                Mal danke an Dich für dieses spannende Projekt.

                Ralla

                1 Reply Last reply Reply Quote 0
                • Ralla66
                  Ralla66 Most Active @Wal last edited by

                  @wal

                  bissl Zeit gehabt
                  Wie wird denn V und C dem DPM übergeben ?
                  Reicht es die Var V und C zu aktuallisieren ?

                  DPM 2017 2309.jpg

                  Wal 1 Reply Last reply Reply Quote 0
                  • Wal
                    Wal Developer @Ralla66 last edited by Wal

                    @ralla66 ,
                    Die Spannung habe ich fest auf 40V eingestellt da mein WR 28V-45V Eingang hat und Strom errechnet er vom aktuellen Verbrauch und nähert sich langsam an bis die errechnete Leitung gegen 0 geht.
                    Ich übergebe kein Spannung/Strom.

                    Ralla66 L 2 Replies Last reply Reply Quote 0
                    • Ralla66
                      Ralla66 Most Active @Wal last edited by

                      @wal

                      Danke,

                      habe es jetzt, Nulleinspeisung per DPM rennt nun.
                      Geilomat 🙂

                      DPM erledigt.jpg

                      wers brauch

                      >D
                      
                      Timer=0
                      p=0
                      
                      bakt=0
                      
                      Zeit=0
                      
                      IAus=0
                      
                      VAus=29
                      
                      WAus=0
                      
                      pwr=0
                      
                      Vmax=60
                      
                      Cmax=24
                      
                      V=0
                      
                      C=0
                      
                      SW=0
                      
                      rV="01060000"
                      
                      vV=""
                      
                      rC="01060001"
                      
                      vC=""
                      
                      rSW="01060002000"
                      
                      vSW=""
                      
                      >BS
                      
                      +>subscribe V, cmnd/%topic%/tvolt
                      
                      +>subscribe C, cmnd/%topic%/tampere
                      
                      +>subscribe SW, cmnd/%topic%/tpow
                      
                      >B
                      
                      ->sensor53 r
                      
                      tper=10
                      
                      >S
                      
                      Timer+=1
                      
                      if Timer>30 {
                      
                      =>websend [192.168xxx.xxx] /cm?cmnd=status 10
                      
                      Timer=0
                      
                      
                      }
                      
                      
                      if chg[SW]>0 {
                      
                      vSW=rSW+s(SW)
                      
                      sml(1 3 vSW)
                      
                      +>publish stat/%topic%/RESULT {"tpow":%0SW%}
                      
                      }
                      
                      if chg[V]>0 {
                      
                      if V>Vmax {
                      
                      V=Vmax
                      
                      }
                      
                      if V<0 {
                      
                      V=0
                      
                      }
                      
                      vV=rV+sb(hx((V*100)) 4 4)
                      
                      sml(1 3 vV)
                      
                      +>publish stat/%topic%/RESULT {"tvolt":%2V%}  
                      
                      }
                      
                      if chg[C]>0 {
                      
                      if C>Cmax {
                      
                      C=Cmax
                      
                      }
                      
                      if C<0 {
                      
                      C=0
                      
                      }
                      
                      vC=rC+sb(hx((C*1000)) 4 4) 
                      
                      sml(1 3 vC)
                      
                      +>publish stat/%topic%/RESULT {"tampere":%2C%}  
                      
                      }
                      
                      >E
                      
                      bakt=WebQuery#StatusSNS#MT175#Bezug_Aktuell
                      
                      IAus=bakt/VAus
                      
                      WAus=IAus*VAus
                      
                      ; V und A setzen
                      
                      V=VAus
                      
                      C=IAus
                      
                      
                      >W
                      
                      bu(SW "DPM Ein" "DPM Aus")
                      
                      bu(Zeit "Timer Ein" "Timer Aus")
                      
                      nm(0.0 60.0 0.01 V "DPM Ausgang (V)" 200 2)
                      
                      nm(0.0 24.0 0.01 C "DPM Ausgang (A)" 200 2)
                      
                      Bezug Zähler{m} %0bakt% W
                      
                      Errechnete Leistung{m} %0WAus% W
                      
                      Aktuelle Leistung{m} %0pwr% W
                      
                      
                      
                      >M 1
                      
                      +1,3,m,16,9600,DC,1,2,010300000001,010300010001,010300020001,010310030001
                      
                      1,010302SSssxxxx@i0:100,Spannung,V,sVolt,2
                      
                      1,010302SSssxxxx@i1:1000,Strom,A,sCur,2
                      
                      1,010302SSssxxxx@i2:1,Ausgang,,sSwitch,0
                      
                      1,010302SSssxxxx@i3:1,Temp,°C,tCur,1
                      
                      #
                      
                      Wal 1 Reply Last reply Reply Quote 0
                      • Wal
                        Wal Developer @Ralla66 last edited by

                        @ralla66 ,
                        das wäre mir zu heikel, wenn du gerade wenig verbrauchst und den Herd einschaltest, reißt du den Stromregler von 0 auf 24.

                        Ralla66 1 Reply Last reply Reply Quote 0
                        • Ralla66
                          Ralla66 Most Active @Wal last edited by Ralla66

                          @wal

                          könnte man ja begrenzen, wobei der HM ja 2 x 12 kann.
                          Ziel der Übung war ja auf Bezug den Ausgang des DPM zu regeln.
                          Was letztendlich am Ausgang des DPM hängt obligt ja dem User.
                          Das im Script bei Balkon WR noch eine Anfahrrampe dazu gehört dürfte
                          bekannt sein. Die C Problematik ist ja bekannt und ausführlich im Forum
                          bei Andreas Schmitz nachlesbar.
                          Na ja, in der Bedienungsanleitung des HM steht ja das der WR nicht
                          mit Batteriebetrieb betrieben werden soll.

                          1 Reply Last reply Reply Quote 0
                          • F
                            fimoknete @Wal last edited by

                            h@wal ICh habe mein esp8266 laut Bild angeschlossen. Firmware ist geflashed. wie bekomme ich denn den code auf den chip? Und ich kann den chip nirgends finden. sollte mit der firmware nicht zugriff auf den chip irgendwo im netz sein?

                            1 Reply Last reply Reply Quote 0
                            • Wal
                              Wal Developer last edited by

                              @fimoknete ,
                              als erstes hier ein Link für das DPM8624 kontrolliert mit dem Modbus-Adapter.

                              Für einen ESP8266 brauchst du eine firmware.bin.gz Tasmota Firmware mit aktiviertem Skript.
                              Falls du ein DPM8624 mit RS485 hast brauchst du noch ein RS485/TTL Wandler, hast du einen mit TTL kannst du den ESP8266 direkt an GPIO1 und GPIO3 anschließen.
                              Unter "Konsolen -> Skript" konfigurieren findest du dann den Skript Editor.

                              F 1 Reply Last reply Reply Quote 1
                              • F
                                fimoknete last edited by fimoknete

                                @wal Also ich habe das 8622 geflashed. Der DMP ist angeschlossen, die blaue Com Leuchte blinkt und transmitted irgendwas.
                                Merkwürdig ist, dass mein Modbus Adapter im IObroker kurz auf grün springt, aber nach kurzer Zeit wieder auf Gelb springt. !

                                Angelegt hat er die Register aus den Modbus Adapter.

                                Die Werte bleiben die ganze Zeit gelb.

                                144648.jpg 144626.jpg 144550.jpg 144531.jpg 144503.jpg

                                Was ist zu tun?

                                Die Adressen sehen in der Anleitung DMP auch anders aus (0000H usw.) aber es gibt kein H bei der Adresseingabe im Modbus Modul IoBroker.

                                Wal 1 Reply Last reply Reply Quote 0
                                • F
                                  fimoknete @Wal last edited by

                                  @wal said in DMP8624 -> iobroker:

                                  @fimoknete ,
                                  als erstes hier ein Link für das DPM8624 kontrolliert mit dem Modbus-Adapter.

                                  Für einen ESP8266 brauchst du eine firmware.bin.gz Tasmota Firmware mit aktiviertem Skript.
                                  Falls du ein DPM8624 mit RS485 hast brauchst du noch ein RS485/TTL Wandler, hast du einen mit TTL kannst du den ESP8266 direkt an GPIO1 und GPIO3 anschließen.
                                  Unter "Konsolen -> Skript" konfigurieren findest du dann den Skript Editor.

                                  Wie komme ich denn auf den Adapter zur Konsole??? Und was ist GPIO?

                                  1 Reply Last reply Reply Quote 0
                                  • Wal
                                    Wal Developer @fimoknete last edited by

                                    @fimoknete ,
                                    der Modbusadapter ist für das mitgelieferte USB-Kabel.

                                    Der ESP mit Tasmota erzeugt ein Access Point mit dem Namen Tasmota......
                                    mit dem verbindest du dich z.B. mit dem Handy. Dann öffnest du den Browser und rufst die Adresse 192.168.4.1 auf.
                                    Da kannst du den ESP mit deinem WLan verbinden, ist der dann verbunden kannst du ihn mit dem Browser erreichen.

                                    F 1 Reply Last reply Reply Quote 0
                                    • F
                                      fimoknete @Wal last edited by fimoknete

                                      @wal Danke. Wirklich cool das du so geduldig mit mir bist.
                                      ich habe jetzt das hier, obwohl der DMP läuft.

                                      0d6e7a38-30bb-4392-b94a-9537841a4f6b-image.png

                                      Wie bekomme ich denn den ESP dazu, mit dem DMP zu sprechen. Die blaue LED blinkt.
                                      Wie bekomme ich später den ESP dazu, mit dem iobroker zu sprechen?

                                      Wal 1 Reply Last reply Reply Quote 0
                                      • Wal
                                        Wal Developer @fimoknete last edited by Wal

                                        @fimoknete ,
                                        in den DPM Setting musst du auf Modbus stellen.
                                        Set lange drücken und danach mit Set durchblättern bis 5-CS und das auf 1 stellen.

                                        F 1 Reply Last reply Reply Quote 0
                                        • F
                                          fimoknete @Wal last edited by fimoknete

                                          @wal Das ist schon aktiviert. KAnn man irgendwo den Datenstrom zwischendurch visualisieren?

                                          Wal 1 Reply Last reply Reply Quote 0
                                          • Wal
                                            Wal Developer @fimoknete last edited by

                                            @fimoknete ,
                                            wenn du ein esp mit usb hast, kannst du den in den PC stecken und ein Terminalprogramm starten.
                                            Die Baudrate vom DPM steht auf 9600 ?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            672
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            235
                                            20797
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo