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
    338

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

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.
  • A Offline
    A Offline
    aikonflo
    schrieb am zuletzt editiert von aikonflo
    #25

    Hallöle,

    mein DPM ist gekommen und ich konnte endlich ein bisschen rumspielen.

    Das mit dem Adapter (2 oder 4 Anschlüsse) ist mir jetzt auch klar. :face_with_rolling_eyes:
    Hab mir dann auch gleich einen Elfin-EW11 (RS485 -> Wlan) geholt damit ich ein bisschen flexibler bin.
    Funktioniert Einwand frei.
    shorturl.at/mnzHZ

    Skript mäßig bin ich nun bei folgenden Stand:
    Es ist noch nicht optimal aber es pendelt so bei +-20 W um 0 rum.

    Ich konnte auf jeden Fall den Überschuss von ca. 1,1kWh auf bis 0,02kWh reduzieren.
    Ich glaube damit kann man schon ganz gut leben.

    2ca18ffd-a22f-4617-8752-6640af2ab4e9-image.png

    <xml xmlns="https://developers.google.com/blockly/xml">
     <variables>
       <variable id="|*A4}thOM2fa2sK?_Sz6">max Spannung</variable>
       <variable id="?OY0381F_glDLX+S*%7:">max Ampere</variable>
       <variable id=":~zu]~UcP(Uvn~u*f]2?">Überschuss in Ampere</variable>
     </variables>
     <block type="variables_set" id="`jiWQIN#TOB;U*;$^rjh" x="-137" y="38">
       <field name="VAR" id="|*A4}thOM2fa2sK?_Sz6">max Spannung</field>
       <value name="VALUE">
         <block type="math_number" id="S`4op%,O^|mPYK|)ea,[">
           <field name="NUM">36</field>
         </block>
       </value>
       <next>
         <block type="variables_set" id="DbQo./sutOPnNZ9u-(f9">
           <field name="VAR" id="?OY0381F_glDLX+S*%7:">max Ampere</field>
           <value name="VALUE">
             <block type="math_number" id="4s{t}q,M*(A*IeZcsP4o">
               <field name="NUM">10</field>
             </block>
           </value>
           <next>
             <block type="on_ext" id="tYV0d~),pBkN|zgHn+@c">
               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
               <field name="CONDITION">any</field>
               <field name="ACK_CONDITION"></field>
               <value name="OID0">
                 <shadow type="field_oid" id="#SGp/Ybn9+V|jvRJLey{">
                   <field name="oid">0_userdata.0.Strom.PV_Netzeinspeisung</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="controls_if" id="HMrV2ZQ+^+7AbgnpGB9P">
                   <value name="IF0">
                     <block type="time_compare" id="4cjab1C=RJ_bu77{@uGR">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation>
                       <field name="OPTION">between</field>
                       <field name="START_TIME">08:00</field>
                       <field name="END_TIME">20:00</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="controls_if" id="nCLsu(,X;S(,y8%9JFif">
                       <mutation else="1"></mutation>
                       <value name="IF0">
                         <block type="logic_compare" id="kGzO7Nn4Eol(Z:5.J^Oa">
                           <field name="OP">GT</field>
                           <value name="A">
                             <block type="get_value" id="R-MN6c};TMiD4y-;{r?%">
                               <field name="ATTR">val</field>
                               <field name="OID">0_userdata.0.Strom.PV_Netzeinspeisung</field>
                             </block>
                           </value>
                           <value name="B">
                             <block type="math_number" id="19!B:dYRY+/)f4d3[$;:">
                               <field name="NUM">0</field>
                             </block>
                           </value>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="variables_set" id="ML#U,.h%}8R*sXC+Hfh,">
                           <field name="VAR" id=":~zu]~UcP(Uvn~u*f]2?">Überschuss in Ampere</field>
                           <value name="VALUE">
                             <block type="math_round" id="pL_9uEwy-RyhI2dVn}Mf">
                               <field name="OP">ROUND</field>
                               <value name="NUM">
                                 <shadow type="math_number" id="FJD[+u:,rQp4yMsO+ul~">
                                   <field name="NUM">3.1</field>
                                 </shadow>
                                 <block type="math_arithmetic" id="@`_CtOK~7xTMMO/,ct:S">
                                   <field name="OP">DIVIDE</field>
                                   <value name="A">
                                     <shadow type="math_number" id="%a=7:-Q7d,kS0E.zUE=F">
                                       <field name="NUM">1</field>
                                     </shadow>
                                     <block type="get_value" id="|oLOApbLNoJ~f~Sf*j4Q">
                                       <field name="ATTR">val</field>
                                       <field name="OID">0_userdata.0.Strom.PV_Netzeinspeisung</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <shadow type="math_number" id="rZ9qx^;VLaJrlXGEj4EP">
                                       <field name="NUM">1</field>
                                     </shadow>
                                     <block type="variables_get" id="!M{t:_Jz;U2feqZA-o@D">
                                       <field name="VAR" id="|*A4}thOM2fa2sK?_Sz6">max Spannung</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <next>
                             <block type="controls_if" id="-e{iP_:0adwN/8X/qa/6">
                               <mutation else="1"></mutation>
                               <value name="IF0">
                                 <block type="logic_compare" id="{1ZEdN=!VOxRXF+RhLQ$">
                                   <field name="OP">GT</field>
                                   <value name="A">
                                     <block type="get_value" id="6Bz?I}F=J[[SQNxntKh.">
                                       <field name="ATTR">val</field>
                                       <field name="OID">0_userdata.0.Strom.PV_Netzeinspeisung</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <block type="math_number" id="|kK2:oXZL{Fz^GTjVXaK">
                                       <field name="NUM">10</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <statement name="DO0">
                                 <block type="control" id="~|Cd+#Lk+59YLwiHd}4I">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                   <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="math_arithmetic" id="elaamq@)8Zji~f$`qH:S">
                                       <field name="OP">MINUS</field>
                                       <value name="A">
                                         <shadow type="math_number" id="{Il@^R~n[PehpB0OQ-p@">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="get_value" id="BuPi6!4ur-OyThE@U`Nb">
                                           <field name="ATTR">val</field>
                                           <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <shadow type="math_number" id="T%6!O4Y=$Cl5$[vh+6Q}">
                                           <field name="NUM">100</field>
                                         </shadow>
                                         <block type="math_arithmetic" id="ol!c|S6CFdYd=144/wme">
                                           <field name="OP">MULTIPLY</field>
                                           <value name="A">
                                             <shadow type="math_number" id="(njtj^ce$s[[re#YTlM(">
                                               <field name="NUM">1</field>
                                             </shadow>
                                             <block type="variables_get" id="FWogt[1[b8GM.Pb%_+V!">
                                               <field name="VAR" id=":~zu]~UcP(Uvn~u*f]2?">Überschuss in Ampere</field>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <shadow type="math_number" id="[xZjFPi;Z{1E(/6390OQ">
                                               <field name="NUM">1000</field>
                                             </shadow>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                               <statement name="ELSE">
                                 <block type="control" id="g}P#G2zQ`^wY;~ab6N75">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                   <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="math_arithmetic" id="vOTc;j`z2zlV`P6t)e=!">
                                       <field name="OP">MINUS</field>
                                       <value name="A">
                                         <shadow type="math_number" id="dS~#`;Ye$cnbu|(uu9*L">
                                           <field name="NUM">1</field>
                                         </shadow>
                                         <block type="get_value" id="7`AAc!w(:Pn$O0^At6#E">
                                           <field name="ATTR">val</field>
                                           <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                         </block>
                                       </value>
                                       <value name="B">
                                         <shadow type="math_number" id="zK*4J/Zm/bo]U,pT5p=C">
                                           <field name="NUM">100</field>
                                         </shadow>
                                       </value>
                                     </block>
                                   </value>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                       </statement>
                       <statement name="ELSE">
                         <block type="controls_if" id="nc/o@I6|h@uwmL0CFu/|">
                           <mutation else="1"></mutation>
                           <value name="IF0">
                             <block type="logic_compare" id="2@9FYmjAJUynr@:blc9n">
                               <field name="OP">EQ</field>
                               <value name="A">
                                 <block type="get_value" id=";q/:^uVv4bDLR-Ih6(*P">
                                   <field name="ATTR">val</field>
                                   <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                 </block>
                               </value>
                               <value name="B">
                                 <block type="math_arithmetic" id="X(3-/5HZJ.S{snOw#/_I">
                                   <field name="OP">MULTIPLY</field>
                                   <value name="A">
                                     <shadow type="math_number" id="+Bd[V(KOKxM*qDk8F;j8">
                                       <field name="NUM">1</field>
                                     </shadow>
                                     <block type="variables_get" id="J.STqkqQ3N+5VQY~^*~7">
                                       <field name="VAR" id="?OY0381F_glDLX+S*%7:">max Ampere</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <shadow type="math_number" id="=B,={9iy2itBmK^(,1L`">
                                       <field name="NUM">1000</field>
                                     </shadow>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="ELSE">
                             <block type="control" id="]c0-*VV_$]a`5^w_s#oY">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                               <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                               <field name="WITH_DELAY">FALSE</field>
                               <value name="VALUE">
                                 <block type="math_arithmetic" id="nKfRCV$zpjndMXX|/?x7">
                                   <field name="OP">ADD</field>
                                   <value name="A">
                                     <shadow type="math_number">
                                       <field name="NUM">1</field>
                                     </shadow>
                                     <block type="get_value" id="?E(5?$Ei:CO,@stfmI(m">
                                       <field name="ATTR">val</field>
                                       <field name="OID">modbus.0.holdingRegisters.1_Set_I</field>
                                     </block>
                                   </value>
                                   <value name="B">
                                     <shadow type="math_number" id="e[P#1ju4484H%!EA*Hnx">
                                       <field name="NUM">100</field>
                                     </shadow>
                                   </value>
                                 </block>
                               </value>
                             </block>
                           </statement>
                         </block>
                       </statement>
                     </block>
                   </statement>
                 </block>
               </statement>
             </block>
           </next>
         </block>
       </next>
     </block>
    </xml>
    

    Erklärung:
    max Spannung und max Ampere = sind die max. Wert auf die der DPM eingestellt ist.
    Aktuelle Zeit.. = Programm soll nur zwischen 08:00-20:00 Uhr laufen.
    PV_Netzeinspeisung = ist mein Datenpunkt für den Überschuss
    Überschuss in Ampere = ist der Überschuss in Ampere bei 36V
    Objekt ID I = ist der Datenpunkt des DPM (Set_I) für die Ampere (ist in mA)

    Der Datenpunkt PV_Netzeispeisung ist bei mir ein positiver Wert des wegen die Prüfung ob größer 0
    Die Prüfung auf "größer 10" ist damit es bei großen Änderungen schneller wieder auf 0 geht.
    Ansonsten regle ich in 100er (0,1A) Schritten, da es sonst ein zu großes hin und her wird.
    Mit 1000 wird multipliziert da im DPM die Werte im mA eingegeben werden muss.

    Wie gesagt es ist noch nicht ganz optimal, und bei großen Änderungen kommt es nicht ganz mit.
    Wahrscheinlich ist das System aber auch zu träge um es genauer zumachen.

    Das ganze schaut dann so aus.
    Grün ist mein Stromverbrauch
    Rot was ich aus dem Netzt beziehe bzw. was ins Netzt eingespeist wird (unter 0)

    935c276c-f134-4b21-8031-4f80d2f6ca6d-image.png
    Ab 14:30 war mein PC eingeschaltet und man sieht das sich die Steuerung mit dem unregelmäßigen Strombedarf etwas schwer tut.

    Wenn der Strombedarf konstant ist, schaut es gar nicht so schlecht aus.

    2794e61f-523f-44c4-8e3e-145999861e3f-image.png

    Grüße Flo

    1 Antwort Letzte Antwort
    0
    • ThojoT Offline
      ThojoT Offline
      Thojo
      schrieb am zuletzt editiert von
      #26

      Hallo Flo,
      irgendwie läuft das Skript bei mir nicht, vermutlich hab ich Datenpunkte vertauscht.

      @aikonflo said in Modbus Problem Labornetzteil:

      Objekt ID I = ist der Datenpunkt des DPM für die Spannung (ist in mA)

      Ist das hier so korrekt oder ist das doch der Datenpunkt um den Strom am DPM zu setzten ? Die Spannung ist doch in der Variablen auf 36V eingestellt, oder ?

      A 1 Antwort Letzte Antwort
      0
      • ThojoT Thojo

        Hallo Flo,
        irgendwie läuft das Skript bei mir nicht, vermutlich hab ich Datenpunkte vertauscht.

        @aikonflo said in Modbus Problem Labornetzteil:

        Objekt ID I = ist der Datenpunkt des DPM für die Spannung (ist in mA)

        Ist das hier so korrekt oder ist das doch der Datenpunkt um den Strom am DPM zu setzten ? Die Spannung ist doch in der Variablen auf 36V eingestellt, oder ?

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

        @thorsten-jochem

        Hallöle,
        absolut richtig, da hab ich mich verschrieben.
        Ich bitte um Entschuldigung.:confounded:

        Objekt ID I ist natürlich der Strom.
        Datenpunkt 1_Set_I
        (ich hab es oben auch korigiert)

        CFD9B704-31D9-474E-A299-968B3C5EBDCC.jpeg

        Die Spannung wird über das Skript nicht gesteuert,
        die habe ich am DPM (bzw. über die Objekte im ioBroker) fix eingestellt.
        Sie dient im Skript nur zu Berechnung der Ampere.

        Falls du eine andere Spannung verwendest must du sie im Skript und auf dem DPM ändern.

        Bitte nicht von meinem Bild irritieren lassen.
        Bei der Spannung sind es keine mV.
        Set_U = 36V = 36x100 = 3600
        Set_I = 10 A = 10x1000 = 10000

        Das ist ein bisschen verwirrend.

        Grüße Flo

        ThojoT 1 Antwort Letzte Antwort
        0
        • CarverandiC Offline
          CarverandiC Offline
          Carverandi
          schrieb am zuletzt editiert von Carverandi
          #28

          Hallo,

          ich bin auf der Suche nach einer Lösung mein Labornetzteil von Riden RD6012, wie es auch von Reichelt z.B. unter dem Namen JOY-IT RD6006 verkauft wird, über den ioBroker anzusteuern, genau für den Zweck des Überschussladens. Funktioiniert die hier gezeigte Lösung über USB auch mit diesem Netzeil oder ist bekannt wie ich dieses Ansteuern kann?
          Über die App per WLAN oder der bereitgestellten Herstellersoftware per USB auf einen PC ist es generell möglich dies zu steuern, brauche es aber im ioBroker.

          Gruß Andi

          1 Antwort Letzte Antwort
          0
          • A aikonflo

            @thorsten-jochem

            Hallöle,
            absolut richtig, da hab ich mich verschrieben.
            Ich bitte um Entschuldigung.:confounded:

            Objekt ID I ist natürlich der Strom.
            Datenpunkt 1_Set_I
            (ich hab es oben auch korigiert)

            CFD9B704-31D9-474E-A299-968B3C5EBDCC.jpeg

            Die Spannung wird über das Skript nicht gesteuert,
            die habe ich am DPM (bzw. über die Objekte im ioBroker) fix eingestellt.
            Sie dient im Skript nur zu Berechnung der Ampere.

            Falls du eine andere Spannung verwendest must du sie im Skript und auf dem DPM ändern.

            Bitte nicht von meinem Bild irritieren lassen.
            Bei der Spannung sind es keine mV.
            Set_U = 36V = 36x100 = 3600
            Set_I = 10 A = 10x1000 = 10000

            Das ist ein bisschen verwirrend.

            Grüße Flo

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

            @aikonflo
            Hallo, irgendwie regelt das Script bei mir nicht richtig. Nach einer gewissen Zeit regelt es in 100er Schritten auf 0. Scheinbar mache ich etwas falsch.

            1 Antwort Letzte Antwort
            0
            • L Offline
              L Offline
              Laser
              schrieb am zuletzt editiert von Laser
              #30

              @thorsten-jochem
              Habe jetzt mein DPM8600 und den Modbusadapter bekommen. Am PC mit der NT-Software kann ich verstellen. Gehe davon aus, daß der Adapter funktioniert. Im NT auf Modbus umgestellt. Die Werte "Allgemein" wie auf Deiner Darstellung. Der Adapter wird für etwa 1 Sekunde grün (Verbunden mit Gerät oder Dienst) dann wieder rot. Den Adapter habe ich über einen USB- Switch angeschlossen. Bei Direktanschluss passiert das Gleiche. Wird ja auch erkannt. (übernächste Frage- Kann man den auch mit ID ansprechen?) Wo kann der Fehler liegen?

              EDIT: vermutlich war es ein Problem, daß ich testweise ein Eingangsregister angelegt habe. Wollte damit nur einen Spannungswert anzeigen. Dieses gelöscht, und die Kommunikation steht!

              A 1 Antwort Letzte Antwort
              0
              • L Laser

                @thorsten-jochem
                Habe jetzt mein DPM8600 und den Modbusadapter bekommen. Am PC mit der NT-Software kann ich verstellen. Gehe davon aus, daß der Adapter funktioniert. Im NT auf Modbus umgestellt. Die Werte "Allgemein" wie auf Deiner Darstellung. Der Adapter wird für etwa 1 Sekunde grün (Verbunden mit Gerät oder Dienst) dann wieder rot. Den Adapter habe ich über einen USB- Switch angeschlossen. Bei Direktanschluss passiert das Gleiche. Wird ja auch erkannt. (übernächste Frage- Kann man den auch mit ID ansprechen?) Wo kann der Fehler liegen?

                EDIT: vermutlich war es ein Problem, daß ich testweise ein Eingangsregister angelegt habe. Wollte damit nur einen Spannungswert anzeigen. Dieses gelöscht, und die Kommunikation steht!

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

                @laser
                Was maeinst du mit "ID ansprechen" ?

                @Thorsten-Jochem
                Wenn er runterregelt bis auf 0 klingt es für mich so als würde im Script die aktuelle Netzeinspeisung nicht richtig aktualisiert werden.

                Du kannst dir einen "debug Output" einbauen damit du den Wert sehen kannst mit dem er rechnet.

                Weist du wie das geht ?

                LG Flo

                L ThojoT 2 Antworten Letzte Antwort
                0
                • A aikonflo

                  @laser
                  Was maeinst du mit "ID ansprechen" ?

                  @Thorsten-Jochem
                  Wenn er runterregelt bis auf 0 klingt es für mich so als würde im Script die aktuelle Netzeinspeisung nicht richtig aktualisiert werden.

                  Du kannst dir einen "debug Output" einbauen damit du den Wert sehen kannst mit dem er rechnet.

                  Weist du wie das geht ?

                  LG Flo

                  L Offline
                  L Offline
                  Laser
                  schrieb am zuletzt editiert von
                  #32

                  @aikonflo
                  Mit ID ansprechen, soll heißen, nicht im Adapter die DEV/TTY/USB1 angeben, sondern die mit "ls -l /dev/serial/by-id" ausgelesene ID des angeschlossenen USB-Wandlers. Damit beim Umstecken (falls das getan wird) das Gerät immer wieder erkannt wird.

                  L 1 Antwort Letzte Antwort
                  0
                  • L Laser

                    @aikonflo
                    Mit ID ansprechen, soll heißen, nicht im Adapter die DEV/TTY/USB1 angeben, sondern die mit "ls -l /dev/serial/by-id" ausgelesene ID des angeschlossenen USB-Wandlers. Damit beim Umstecken (falls das getan wird) das Gerät immer wieder erkannt wird.

                    L Offline
                    L Offline
                    Laser
                    schrieb am zuletzt editiert von
                    #33

                    praktisch so:
                    /dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0

                    im Adapter des Victron- Ladegerätes wird das so eingestellt:
                    /dev/serial/by-id/usb-VictronEnergy_BV_VE_Direct_cable_VE675ZLF-if00-port0

                    das im VE-direkt-Adapter des Victron funktioniert, beim Modbus Adapter nicht. Mein Problem ist, daß die Verbindung immer mal gestört ist, spätestens, wenn ich das Ladenetzteil ausschalte.

                    A 1 Antwort Letzte Antwort
                    0
                    • A aikonflo

                      @laser
                      Was maeinst du mit "ID ansprechen" ?

                      @Thorsten-Jochem
                      Wenn er runterregelt bis auf 0 klingt es für mich so als würde im Script die aktuelle Netzeinspeisung nicht richtig aktualisiert werden.

                      Du kannst dir einen "debug Output" einbauen damit du den Wert sehen kannst mit dem er rechnet.

                      Weist du wie das geht ?

                      LG Flo

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

                      @Thorsten-Jochem
                      Wenn er runterregelt bis auf 0 klingt es für mich so als würde im Script die aktuelle Netzeinspeisung nicht richtig aktualisiert werden.

                      Du kannst dir einen "debug Output" einbauen damit du den Wert sehen kannst mit dem er rechnet.

                      Weist du wie das geht ?
                      @aikonflo
                      Nein leider nicht. Und wo würde ich den Wert sehen ? Im Protokoll ?

                      1 Antwort Letzte Antwort
                      0
                      • L Laser

                        praktisch so:
                        /dev/serial/by-id/usb-1a86_USB2.0-Ser_-if00-port0

                        im Adapter des Victron- Ladegerätes wird das so eingestellt:
                        /dev/serial/by-id/usb-VictronEnergy_BV_VE_Direct_cable_VE675ZLF-if00-port0

                        das im VE-direkt-Adapter des Victron funktioniert, beim Modbus Adapter nicht. Mein Problem ist, daß die Verbindung immer mal gestört ist, spätestens, wenn ich das Ladenetzteil ausschalte.

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

                        @laser
                        ahh Ok, versteh was du meinst, aber da bin ich leider raus.
                        Ich hab dieses Thema Thema mit einem einen Elfin-EW11 (RS485 -> Wlan) gelöst.
                        Somit brauch ich keinen USB mehr sondern kann das über die IP ansprechen.

                        @Thorsten-Jochem
                        Sobald ich es schaffe mach ich dir einen Screenshoot wie das gehen würde.

                        Grüße Flo

                        A 1 Antwort Letzte Antwort
                        0
                        • A aikonflo

                          @laser
                          ahh Ok, versteh was du meinst, aber da bin ich leider raus.
                          Ich hab dieses Thema Thema mit einem einen Elfin-EW11 (RS485 -> Wlan) gelöst.
                          Somit brauch ich keinen USB mehr sondern kann das über die IP ansprechen.

                          @Thorsten-Jochem
                          Sobald ich es schaffe mach ich dir einen Screenshoot wie das gehen würde.

                          Grüße Flo

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

                          @Thorsten-Jochem

                          So, hab ein bisschen Zeit gefunden und ein paar Screenshots gemacht.

                          Ich gehe jetzt mal davon aus, dass das Skript so wie bei mir aussieht.

                          So schaut mein Skript ohne Debug aus.
                          b29a6d93-fd27-47f9-bd98-6a120b793d67-image.png

                          Dann hab ich bei jedem Steuerbefehl einen "debug output" + "erstelle Text aus" gesetzt
                          Damit man nach vollziehen kann wann welcher Wert gesetzt wir hab ich das dann einfach mal Wert 1- 3 genannt.
                          an der Stelle wo nix passieren soll hab ich einen "debug output" mit dem Text "mach nix" eingefügt.
                          fb3b23ba-2272-4064-94be-2ee45e903ebd-image.png

                          Als nächster einfach die jeweiligen Wert kopieren und unter bei einfügen.
                          7879c180-eda8-4ad2-8ea7-5194cf2cba30-image.png

                          Auf Speichern klicken und falls notwendig das Skript starten.
                          Im Feld unterhalb wird dann der Wert angezeigt mit dem der DPM gesteuert wird.
                          73135828-4e57-477b-a84e-534c124ca682-image.png

                          Und du würdest es auch im Protokoll sehen.
                          35dcf625-f6a6-4aa2-91b4-78a7ee8d6b1b-image.png

                          Wenn man dann weis wann welcher Wert ausgegeben wird kann man dann natürlich nachvollziehen wo der Fehler liegt.
                          Ich hoffe ich konnte das einigermaßen verständlich zusammen fassen.

                          Du kannst aber auch gerne mal deinen Skript posten vielleicht kann ich etwas entdecken.

                          Was mir auch gerade einfällt:
                          Du schreibst

                          Nach einer gewissen Zeit regelt es in 100er Schritten auf 0...

                          Das würde bei meinen Skript bedeuten das er mit einer Netzeispeisung von kleiner 10W rechnet
                          c1357bc6-27de-45f1-a060-802f3069bc95-image.png

                          Wenn das passiert schau mal nach was der Datenpunkt PV_Netzeinspeisung anzeigt.
                          Wenn der nicht 0 ist regelt das Skript so lange runter bis der DPM auf 0 steht.

                          Grüße Flo

                          ThojoT 1 Antwort Letzte Antwort
                          0
                          • A aikonflo

                            @Thorsten-Jochem

                            So, hab ein bisschen Zeit gefunden und ein paar Screenshots gemacht.

                            Ich gehe jetzt mal davon aus, dass das Skript so wie bei mir aussieht.

                            So schaut mein Skript ohne Debug aus.
                            b29a6d93-fd27-47f9-bd98-6a120b793d67-image.png

                            Dann hab ich bei jedem Steuerbefehl einen "debug output" + "erstelle Text aus" gesetzt
                            Damit man nach vollziehen kann wann welcher Wert gesetzt wir hab ich das dann einfach mal Wert 1- 3 genannt.
                            an der Stelle wo nix passieren soll hab ich einen "debug output" mit dem Text "mach nix" eingefügt.
                            fb3b23ba-2272-4064-94be-2ee45e903ebd-image.png

                            Als nächster einfach die jeweiligen Wert kopieren und unter bei einfügen.
                            7879c180-eda8-4ad2-8ea7-5194cf2cba30-image.png

                            Auf Speichern klicken und falls notwendig das Skript starten.
                            Im Feld unterhalb wird dann der Wert angezeigt mit dem der DPM gesteuert wird.
                            73135828-4e57-477b-a84e-534c124ca682-image.png

                            Und du würdest es auch im Protokoll sehen.
                            35dcf625-f6a6-4aa2-91b4-78a7ee8d6b1b-image.png

                            Wenn man dann weis wann welcher Wert ausgegeben wird kann man dann natürlich nachvollziehen wo der Fehler liegt.
                            Ich hoffe ich konnte das einigermaßen verständlich zusammen fassen.

                            Du kannst aber auch gerne mal deinen Skript posten vielleicht kann ich etwas entdecken.

                            Was mir auch gerade einfällt:
                            Du schreibst

                            Nach einer gewissen Zeit regelt es in 100er Schritten auf 0...

                            Das würde bei meinen Skript bedeuten das er mit einer Netzeispeisung von kleiner 10W rechnet
                            c1357bc6-27de-45f1-a060-802f3069bc95-image.png

                            Wenn das passiert schau mal nach was der Datenpunkt PV_Netzeinspeisung anzeigt.
                            Wenn der nicht 0 ist regelt das Skript so lange runter bis der DPM auf 0 steht.

                            Grüße Flo

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

                            @aikonflo
                            Hi Flo,
                            danke für die ausführliche Anleitung und die Mühe, die du dir damit gemacht hast.
                            Ich denke am WE komme ich dazu das zu testen.
                            Ich werde dann wieder hier berichten.

                            Vielen Dank !!!!!

                            1 Antwort Letzte Antwort
                            0
                            • 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.

                              D Offline
                              D Offline
                              duddsig
                              schrieb am zuletzt editiert von duddsig
                              #38

                              Hier kann man die Werte der Register 0,1 und 2 direkt ändern.

                              Vielen Dank erst mal für die Mühe, das hat mir sicher viel Arbeit gespart. Habe es praktisch direkt übernommen (nur andere Texte), und es hat mit Zweidraht und dem beigelegten Modul sofort funktioniert. Habe später dann ein Ethernet>485/Modbus-Converter gekauft, da hat es einige Zeit gedauert.
                              Modbus1.jpg Modbus2.jpg Modbus3.jpg

                              Momentan schreibe ich die Werte manuell in die Register, dabei ist mir aufgefallen, daß sich das Modul häufig nicht ausschalten läßt, während sich die Werte I+U aber immer schreiben lassen, wenn die Schnittstelle nicht gerade stehengeblieben ist.

                              Des Weiteren ist mir aufgefallen, daß bei den Holding-Registern bei Dir eine ID auftaucht. Wie hat Du denn das geschafft? Die würde ich mit Sicherheit benötigen, wenn ich einen 2. Regler an den Modbus anschließen möchte.

                              Was ich machen möchte:
                              Meine Balkonkraftwerke stehen in einiger Entfernung auf der Wiese, und an unterschiedlichen Stellen. Ich möchte natürlich auch den Strom einsammeln wenn das Smartmeter beginnt einzuspeisen. Dazu benutze ich abgelegte Bleiakkus 4x2x65Ah, die so ein 2.Leben bekommen. Momentan Lade ich die händisch über den Regler abends klemme ich um und entlade über den Regler an einem Wechselrichter. Alles noch Testphase und manuell.

                              Bisher habe ich den überschüssigen Strom abhängig von der Menge an einem 500W-Heizkörper in der Übergangsphase, und Teilweise mit einem 500W-Campingkocher verheizt. Habe dazu mit 8 Relais eine Phasenanschnittsteuerung gesteuert. Funktionierte schon mal recht gut. Jetzt sollen die Batterien halt geladen werden. Dazu brauche ich natürlich eine entsprechende Steuerung (Blockly), die "einfach nur" Werte in die Register schreibt und somit die Einspeisung bei 0 hält. Leider bin auch ich Anfänger und habe bisher nichts passendes gefunden und benötige Hilfe.

                              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

                              718

                              Online

                              32.5k

                              Benutzer

                              81.7k

                              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