+ Antworten
Ergebnis 1 bis 4 von 4
  1. #1
    Registriert seit
    Dec 2008
    Ort
    Weinheim
    Beiträge
    23

    Standard PV Inverter Sunspec Protokoll lesen - hier ein einigermaßen universeller Ansatz

    Hallo zusammen,
    mit der Symcon Modbus Unterstützung kann man sich ja einzelne Daten aus PV Invertern einfach ziehen, inkl. eventuell angeschlossener Meßgeräte. Ich wollte aber unbedingt alle Daten haben - und dafür Feld für Feld eine Definition anzulegen, war mir zu viel Arbeit. Das sind über 200 Felder.

    Deswegen habe ich mir einmal ein recht universelles Script gebaut, um mit Hilfe des sog. Sunspec Protokolls die Inverter und Meßgerätedaten auszulesen. Viele PV Solar Inverter unterstützen das. Mein Inverter ist von Solaredge, aber das schöne an diesem Skript ist, es sollte sich leicht auf andere Inverter (Fronius, SMA, etc.), welche dieses Protokoll unterstützen, umbauen lassen. Das Script legt auch gleich die Variablen an. Eine Stunde Arbeit zur Anpassung müsst ihr sicher einkalkulieren.

    Vorgehensweise:

    1. Die zu Eurem Inverter gehörige Sunspec Dokumentation laden - in der Regel ein PDF file, in dem alle Sunspec Felder zu den Inverter-Registern aufgelistet sind. Google z.b "Solaredge Sunspec". Wie wir daraus die Struktur isolieren, siehe weiter unten.
    2. Von phpmodbus/Phpmodbus at master · adduc/phpmodbus · GitHub die 5 Dateien "PhpModbusMaster ... usw" in das symcon Skripte Verzeichnis laden
    3. Aus dem beigefügten ZIP file die Datei Sunspec_load.ips.php in ein beliebiges Script laden (Copy-Paste). Das ist das Hauptprogramm.
    4. Einen Kategorie-Einstiegsbaum anlegen - bei mir eine Kategorie Sunspec, und darunter 3 Kategorien "Common Model", "Inverter Model" und "Meter 1 Model". Ggfs. weitere, falls euer Inverter mehr unterstützt.
    5. Nun brauchen wir die Sunspec Definitionen. Mein Ansatz war, aus dem PDF file aus Punkt 1 die Definitionen zu isolieren. Das ging ganz einfach - PDF nach Word importieren, die entsprechenden Sektionen nach Excel kopieren und von dort ein csv file erzeugen. Siehe als Beispiel das beigefügte CSV file. Das laden wir nun in ein Script (copy-paste), und mißbrauchen dieses Script als Eingabe für das Hauptprogramm, um die notwendigen Variablen alle zu erzeugen. Ggfs. müsst ihr eure csv Ausgabe an die Einlese-Funktion anpassen oder umgekehrt.
    6. Zuguterletzt durch die Anfangssektion im Programm gehen, und eure Kategorie-ID's eintragen, die Start-/Stop Addressen für die Sektionen anpassen (z.B. Start des Meter 1 Models ab Addresse 40121, usw). Diese aus der Sunspec Doku eures Inverters entnehmen.


    Dann das Hauptprogramm alle z.b. 30sek laufen lassen. Das erzeugt die Sunspec Struktur (beim ersten Mal) sowie lädt alle Daten. Im Programm selbst sind viele print_r's und echo's eingestreut, um das zu debuggen. Das Ergebnis sind dann so ähnlich aus wie im angefügten Bild. Weiteres Post-Processing ist nötig - da z.B. einzelne Variablen mit Skale-Faktors belegt sind - d.h. man muß nochmal durch 100 oder 10 teilen, um auf die Watt Zahl o.ä. zu kommen. Sicherlich alles noch nicht perfekt.

    In der Hoffnung, daß dies mal wer brauchen kann - viel Spass.

    Grüsse


    Sunspec_Symcon.zipKlicken Sie auf die Grafik für eine größere Ansicht 

Name:	bild.png 
Hits:	186 
Größe:	106.4 KB 
ID:	48887

  2. #2
    Registriert seit
    Feb 2008
    Ort
    Düsseldorf
    Beiträge
    465

    Danke für die Skripte!
    Ich hänge mich hier mal mit meinen gesammelten Infos dran. Das ist eher die "zu Fuß" Methode. Das Auslesen mit den Skripten aus dem ersten Beitrag ist natürlich eleganter :-)
    Hier sind z.B. auch die Infos für einen LG Chem Resu 10H Speicher enthalten:

    Meine Anlagenkonfiguration:
    Wechselrichter: Solaredge SE5000H
    Speicher: LG Chem Resu 10H
    6,5 kWp


    Hier die Adressen die ich verwende mit ein paar Zusatzinfos zum Umrechnen. Die Skripte sind wohl etwas stümperhaft... funktionieren aber.

    Zum Ablauf der Umrechnung:
    Zu fast jedem Wert gibt es einen Skalierungsfaktor der ebenfalls über Modbus ausgelesen wird. Mit diesem Skalierungsfaktor muss der eigentliche Wert umgerechnet werden. Hierzu habe ich unter jedem Modbus Device eine neue Float Variable erstellt und mit entsprechendem Profil versehen. Dann noch ein Script für das jeweilige Modbus Device erstellt das mit einem Ereignis aufgerufen wird. (Immer wenn der Skalierungsfaktor aktualisiert wird -> Script ausführen) Wichtig ist das nur die Modbus Devices für den Skalierungsfaktor zyklisch abgerufen werden. Also z. B. alle 30 Sekunden. Die Modbus Devices mit den eigentlichen Werten werden nur beim ausführen des Skripts ausgelesen. Werden beide zyklisch gelesen kommt es teilweise zu falschen Ergebnissen weil dann der Skalierungsfaktor z.B. nicht zum Wert passt. Man erhält dann z.B. nicht 450 Watt sondern 4500 Watt...

    Die unten aufgeführten Adressen sind nicht komplett sondern enthalten nur die Werte die für mich relevant sind. Wenn was fehlt müsst ihr euch die Werte aus der Sunspec Dokumentation ziehen!

    Falls hier jetzt jemand, angesichts meiner Skripte, die Hände über dem Kopf zusammenschlägt bin ich natürlich für elegantere Lösungen offen :-)

    Die IDs in den Skripten müssen natürlich entsprechend angepasst werden!

    Solaredge Modbus Adressen:

    Name: AC - Netzfrequenz (Herz)
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 85
    • Factor: Dividiere durch 1000





    Name: AC - Gesamte Produktion (kWh)
    • Einheit: DWord (32Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 93
    • Factor: keinen


    Name: AC - Gesamte Produktion (kWh) SKALIERUNGSFAKTOR
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 95
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (11487); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(30961);
    $scalefactor GetValueInteger(49750);
    $data $original ** $scalefactor;
    $data2 $data 1000;
    SetValueFloat(42127$data2);
    ?>



    Name: AC - Leistung (Watt)
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 83
    • Factor: keinen


    Name: AC - Leistung (Watt) SKALIERUNGSFAKTOR
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 84
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (21222); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(53191);
    $scalefactor GetValueInteger(52040);
    $data $original 10 ** $scalefactor;
    SetValueFloat(27462$data);
    ?>



    Name: AC - Strom (Ampere)
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 71
    • Factor: keinen


    Name: AC - Strom (Ampere) SKALIERUNGSFAKTOR
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 75
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (27901); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(32725);
    $scalefactor GetValueInteger(24015);
    $data $original 10 ** $scalefactor;
    SetValueFloat(51954$data);
    ?>



    Name: DC - Leistung (Watt) die vom Wechselrichter in AC umgewandelt wird
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 100
    • Factor: keinen


    Name: DC - Leistung (Watt) SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 101
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (43139); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(22196);
    $scalefactor GetValueInteger(48284);
    $data $original 10 ** $scalefactor;
    SetValueFloat(21176$data);
    ?>



    Name: DC - Spannung (Volt)
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 98
    • Factor: keinen


    Name: DC - Spannung (Volt) SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 99
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (53508); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(10607);
    $scalefactor GetValueInteger(20091);
    $data $original 10 ** $scalefactor;
    SetValueFloat(11695$data);
    ?>



    Name: DC - Strom (Ampere)
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 96
    • Factor: keinen


    Name: DC - Strom (Ampere) SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 97
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (55900); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(46616);
    $scalefactor GetValueInteger(38686);
    $data $original 10 ** $scalefactor;
    SetValueFloat(44619$data);
    ?>



    Name: Eingespeiste kWh
    • Einheit: DWord (32Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 226
    • Factor: keinen


    Name: Eingespeiste kWh SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 242
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (41873); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(22211);
    $scalefactor GetValueInteger(43041);
    $data $original 10 ** $scalefactor;
    $data2 $data 1000;
    SetValueFloat(58001$data2);
    ?>



    Name: Bezogene kWh
    • Einheit: DWord (32Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 234
    • Factor: keinen


    Name: Bezogene kWh SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 242
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (36015); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(39392);
    $scalefactor GetValueInteger(12867);
    $data $original 10 ** $scalefactor;
    $data2 $data 1000;
    SetValueFloat(52819$data2);
    ?>



    Name: Status Wechselrichter
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 107
    • Factor: keinen



    Variablenprofil:
    1 = Off
    2 = Sleeping
    3 = Grid Monitoring
    4 = On
    5 = Produktion
    6 = Shutting Down
    7 = Fault
    8 = Setup




    Name: Einspeisung/Bezug (kW)
    Minuswerte = Strombezug aus dem Netz, Pluswerte = Einspeisung in das Netz)
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 206
    • Factor: keinen


    Name: Einspeisung/Bezug (kW) SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 210
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (12237); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(44899);
    $scalefactor GetValueInteger(54001);
    $data $original 10 ** $scalefactor;
    $data2 $data 1000;
    SetValueFloat(29957$data2);
    ?>



    Name: Temperatur Wechselrichter (°C)
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 103
    • Factor: keinen


    Name: Temperatur Wechselrichter (°C) SKALIERUNGSFAKTOR
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 106
    • Factor: keinen


    PHP-Code:
    <?
    ModBus_RequestRead
    (58998); //ID des Modbus Device welches ausgelesen werden soll
    $original GetValueInteger(10287);
    $scalefactor GetValueInteger(32574);
    $data $original 10 ** $scalefactor;
    SetValueFloat(23899$data);
    ?>



    Name: Wechselrichter Typ
    • Einheit: Word (16Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 69
    • Factor: keinen



    Variablenprofil:
    101 = single phase
    102 = split phase
    103 = three phase






    Speicher (LG Chem Resu 10H)

    Name: Ladezustand in Prozent
    • Einheit: DWord (32Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 62852
    • Factor: keinen


    PHP-Code:
    <?
    $ips_data 
    GetValueInteger(40344); 
    $ips_data_WordSwapped = (($ips_data>>16)&0xFFFF) | (($ips_data&0xFFFF)<<16); 
    $float_value u32ToFloat($ips_data_WordSwapped); 
    SetValueFloat(54116$float_value); 

    function 
    u32ToFloat($u32

      
    $sign = ($u32&0x80000000)? -1:1
      
    $exponent = (($u32&0x7F800000)>>23) - 127
      
    $base = (float)(($u32 0x007FFFFF)|0x00800000)/0x00800000 
      return ((float) 
    $sign pow(2$exponent) * $base); 


    ?>



    Name: Speicherleistung in Watt (Negative Werte = Speicher Entladen, Positiv = Speicher laden...)
    • Einheit: DWord (32Bit - vorzeichenlos)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 62836
    • Factor: keinen


    PHP-Code:
    <?
    $ips_data 
    GetValueInteger(52988); 
    $ips_data_WordSwapped = (($ips_data>>16)&0xFFFF) | (($ips_data&0xFFFF)<<16); 
    $float_value u32ToFloat($ips_data_WordSwapped); 
    SetValueFloat(16893$float_value); 

    function 
    u32ToFloat($u32

      
    $sign = ($u32&0x80000000)? -1:1
      
    $exponent = (($u32&0x7F800000)>>23) - 127
      
    $base = (float)(($u32 0x007FFFFF)|0x00800000)/0x00800000 
      return ((float) 
    $sign pow(2$exponent) * $base); 


    ?>



    Name: Speicherstatus
    • Einheit: Short (16Bit - vorzeichenbehaftet)
    • Funktion (Lesen): Holding Register auslesen (03)
    • Modbus Adresse: 62854
    • Factor: keinen



    Variablenprofil:
    1 = Aus
    3 = Laden
    4 = Entladen
    6 = Erhaltungsladung


    Und so sieht die Struktur bei mir aus:
    Klicken Sie auf die Grafik für eine größere Ansicht 

Name:	struktur.jpg 
Hits:	73 
Größe:	96.9 KB 
ID:	49408

    Sonnige Grüße
    Stephan
    Geändert von da8ter (05.06.19 um 08:49 Uhr)
    ___________________________________________
    Wago SPS 750-881 mit Dali Klemme 753-647 und den üblichen DI`s und DO`s
    IP-Symcon Unlimited, letzte Beta...

  3. #3
    Registriert seit
    Jul 2019
    Beiträge
    1

    Standard Modbus-Adressen für LG 10H

    Hallo

    Ich versuche, eine Verbindung zu Modbus TCP meines SolarEdge 5000 HD Wave mit einem LG 10H-Akku herzustellen. Alles gemäß https://www.solaredge.com/sites/defa...nical-note.pdf funktioniert, aber die Batterieadressen fehlen.

    Kennt Ihr zufällig die richtigen Adressen?

    Vielen Dank im Voraus.

    [edit durch DrNiels: Einladung ein unbekanntes Tool auszuführen und die Ausgabe zu posten entfernt]
    Geändert von Dr. Niels (29.07.19 um 08:52 Uhr)

  4. #4
    Registriert seit
    Nov 2011
    Ort
    Leonberg
    Beiträge
    276

    Probiere es seit zwei Tagn, ich komme aber nicht weiter, irgendwie krankt es an dem modbus master, wenn ich mir das script sunspec_load.ips anschaue wird aber auch in den Zeile ab 50 create modbus nichts erzeugt, kann hier der Fehler liegen ??

    HTML-Code:
    
    
    
    
    
      
        
      
      
      
      
      
      
      
    
    
    
      
      
        
        
        
        
        
    
    
      
      
      phpmodbus/ModbusMasterTcp.php at master · adduc/phpmodbus · GitHub
        
        
      
      
    
        
        
    
      
      
      
    
      
    
    
    
      
    
      
    
      
    
        
      
      
    
    
    
    
    
    
        
    
    
    
    
    
    
      
    
          
        
    
          
    
    
        
    
      
      
    
          
    
      
    
      
    
    
        
    
    
      
    
      
    
      
      
    
    
    
    
      
    
      
    
      
        
    
      
        Skip to content
        
          
        
    
        
        
    
    
    
            
      
        
            
              
            
    
              
                
                  
        adduc
        /
        phpmodbus
    
    
              
    
            
                <a href="/join?source=header-repo"
                  class="d-inline-block d-lg-none f5 text-white no-underline border border-gray-dark rounded-2 px-2 py-1 mr-3 mr-sm-5"
                  data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/adduc/phpmodbus/blob/master/Phpmodbus/ModbusMasterTcp.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="ba223b43688a2acdb0847f4e2d30ca81a1b14e4e4cda2cdf3e47a490c12e91b7"
                  data-ga-click="(Logged out) Header, clicked Sign up, text:sign-up">
                  Sign&nbsp;up
                
    
              
                
              
            
        
    
        
          
            
              
            
          
    
            
              
                  
                    
                      
                        Why GitHub?
                        
                          
                        
                      
                      
                        Features &rarr;
                        
                          Code review
                          Project management
                          Integrations
                          Actions
                              Packages
                          Security
                          Team management
                          Hosting
                        
    
                        
                          Customer stories &rarr;
                          Security &rarr;
                        
                      
                    
                  
                  
                    Enterprise
                  
    
                  
                    
                      
                        Explore
                        
                          
                        
                      
    
                      
                        
                          Explore GitHub &rarr;
                        
    
                        Learn &amp; contribute
                        
                          Topics
                            Collections
                          Trending
                          Learning Lab
                          Open source guides
                        
    
                        Connect with others
                        
                          Events
                          Community forum
                          GitHub Education
                        
                      
                    
                  
    
                  
                    Marketplace
                  
    
                  
                    
                      
                        Pricing
                        
                           
                        
                      
    
                      
                        Plans &rarr;
    
                        
                          Compare plans
                          Contact Sales
                        
    
                        
                          Nonprofit &rarr;
                          Education &rarr;
                        
                      
                    
                  
              
            
    
          
              
                <div class="header-search flex-self-stretch flex-lg-self-auto mr-0 mr-lg-3 mb-3 mb-lg-0 scoped-search site-scoped-search js-site-search position-relative js-jump-to"
      role="combobox"
      aria-owns="jump-to-results"
      aria-label="Search or jump to"
      aria-haspopup="listbox"
      aria-expanded="false"
    >
      
         -->
          
            <input type="text"
              class="form-control input-sm header-search-input jump-to-field js-jump-to-field js-site-search-focus js-site-search-field is-clearable"
              data-hotkey="s,/"
              name="q"
              value=""
              placeholder="Search"
              data-unscoped-placeholder="Search GitHub"
              data-scoped-placeholder="Search"
              autocapitalize="off"
              aria-autocomplete="list"
              aria-controls="jump-to-results"
              aria-label="Search"
              data-jump-to-suggestions-path="/_graphql/GetSuggestedNavigationDestinations"
              spellcheck="false"
              autocomplete="off"
              >
              
              
                
    
                
                  
    
      
    
    
      
        
          
          
          
        
    
        
    
        
        
    
        
          
            In this repository
          
          
            All GitHub
          
          ↵
        
    
        
          Jump to
          ↵
        
      
    
    
    
    
    
      
        No suggested jump to results
      
    
    
    
      
    
    
      
        
          
          
          
        
    
        
    
        
        
    
        
          
            In this repository
          
          
            All GitHub
          
          ↵
        
    
        
          Jump to
          ↵
        
      
    
    
      
    
    
      
        
          
          
          
        
    
        
    
        
        
    
        
          
            In this repository
          
          
            All GitHub
          
          ↵
        
    
        
          Jump to
          ↵
        
      
    
    
    
    
    
                
          
      
    
    
              
    
            <a href="/login?return_to=%2Fadduc%2Fphpmodbus%2Fblob%2Fmaster%2FPhpmodbus%2FModbusMasterTcp.php"
              class="HeaderMenu-link no-underline mr-3"
              data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/adduc/phpmodbus/blob/master/Phpmodbus/ModbusMasterTcp.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="95992cb419d9ef87846da65744b2b773bf6e509212bd8a6d216ed8140315c736"
              data-ga-click="(Logged out) Header, clicked Sign in, text:sign-in">
              Sign&nbsp;in
            
              <a href="/join?source=header-repo&amp;source_repo=adduc%2Fphpmodbus"
                class="HeaderMenu-link d-inline-block no-underline border border-gray-dark rounded-1 px-2 py-1"
                data-hydro-click="{&quot;event_type&quot;:&quot;authentication.click&quot;,&quot;payload&quot;:{&quot;location_in_page&quot;:&quot;site header menu&quot;,&quot;repository_id&quot;:null,&quot;auth_type&quot;:&quot;SIGN_UP&quot;,&quot;originating_url&quot;:&quot;https://github.com/adduc/phpmodbus/blob/master/Phpmodbus/ModbusMasterTcp.php&quot;,&quot;user_id&quot;:null}}" data-hydro-click-hmac="95992cb419d9ef87846da65744b2b773bf6e509212bd8a6d216ed8140315c736"
                data-ga-click="(Logged out) Header, clicked Sign up, text:sign-up">
                Sign&nbsp;up
              
          
        
      
    
    
      
    
      
    
    
        
    
    
    
    
          
    
      
    
    
    
    
      
            
        
          
    
      
    
    
    
    
    
    
    
    
    
    
    
      
    
        
    
          
            
        
      
        adduc
      
      /
      
        phpmodbus
      
      
    
    
    
          
    
          
    
    
    
    
      
        
      
        
        Watch
        <a class="social-count" href="/adduc/phpmodbus/watchers"
           aria-label="14 users are watching this repository">
          14
        
    
      
    
      
        
      
    
      
          
            
            Fork
    
        <a href="/adduc/phpmodbus/network/members" class="social-count"
           aria-label="42 users forked this repository">
          42
        
      
    
    
        
          
    <nav class="hx_reponav reponav js-repo-nav js-sidenav-container-pjax clearfix container-lg p-responsive d-none d-lg-block"
         itemscope
         itemtype="http://schema.org/BreadcrumbList"
        aria-label="Repository"
         data-pjax="#js-repo-pjax-container">
    
      
        
          
          Code
          
      
    
        
          
            
            Issues
            1
            
        
    
      
        
          
          Pull requests
          1
          
      
    
    
        
          
            
            Actions
    
        
    
        
          
          Projects
          0
    
    
        
          
          Security
    
        
          
          Insights
    
    
    
    
      
      <nav class="reponav js-reponav text-center no-wrap"
           itemscope
           itemtype="http://schema.org/BreadcrumbList">
    
        
          
            Code
            
        
    
          
            
              Issues
              1
              
          
    
        
          
            Pull requests
            1
            
        
    
    
          
            
              Projects
              0
              
          
    
          
            
              Actions
              
          
    
    
          
            Security
            
    
          
            Pulse
    
    
      
    
    
    
      
    
      
    
      
    
    
    
      
    
        
        
    
    
      
    
    
        Permalink
    
        
          
        
          
            
              Dismiss
            
            Join GitHub today
            GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
            Sign up
          
        
      
    
    
        
          
            
    
      <summary class="btn btn-sm css-truncate"
               data-hotkey="w"
               title="Switch branches or tags">
        Branch:
        master
        
      
    
      
        
          
            
          
        
      
    
    
            
              <a href="/adduc/phpmodbus/find/master"
                    class="js-pjax-capture-input btn btn-sm BtnGroup-item"
                    data-pjax
                    data-hotkey="t">
                Find file
              
              
                Copy path
              
            
          
          
              phpmodbus/Phpmodbus/ModbusMasterTcp.php /
    
      
          
        Jump to
        
      
      
        
          
            Code definitions
            
              
            
          
          
              
                
                  No definitions found in this file.
                
              
            
              
            
          
          
            
              Unable to determine state of code navigation
              
            
          
        
      
    
    
          
    
          
            <a href="/adduc/phpmodbus/find/master"
                  class="js-pjax-capture-input btn btn-sm BtnGroup-item"
                  data-pjax
                  data-hotkey="t">
              Find file
            
            
              Copy path
            
          
        
    
    
    
        
          
            Fetching contributors&hellip;
          
    
          
            
            Cannot retrieve contributors at this time
          
    
    
    
    
    
    
        <div class="Box mt-3 position-relative
          ">
          
    
      
    
          49 lines (47 sloc)
          
        1.25 KB
      
    
      
    
        
          Raw
            Blame
          History
        
    
    
        
              <a class="btn-octicon tooltipped tooltipped-nw js-remove-unless-platform"
                 data-platforms="windows,mac"
                 href="https://desktop.github.com"
                 aria-label="Open this file in GitHub Desktop"
                 data-ga-click="Repository, open with desktop">
                  
              
    
              <button type="button" class="btn-octicon disabled tooltipped tooltipped-nw"
                aria-label="You must be signed in to make or propose changes">
                
              
              <button type="button" class="btn-octicon btn-octicon-danger disabled tooltipped tooltipped-nw"
                aria-label="You must be signed in to make or propose changes">
                
              
        
      
    
    
    
    
          
    
      
          
    
          
            
            &lt;?php
          
          
            
            /**
          
          
            
             * Phpmodbus Copyright (c) 2004, 2012 Jan Krakora
          
          
            
             *  
          
          
            
             * This source file is subject to the &quot;PhpModbus license&quot; that is bundled
          
          
            
             * with this package in the file license.txt.
          
          
            
             *   
          
          
            
             *
          
          
            
             * @copyright  Copyright (c) 2004, 2012 Jan Krakora
          
          
            
             * @license PhpModbus license 
          
          
            
             * @category Phpmodbus
          
          
            
             * @tutorial Phpmodbus.pkg 
          
          
            
             * @package Phpmodbus 
          
          
            
             * @version $id$
          
          
            
             *  
          
          
            
             */
          
          
            
            
    
          
          
            
            require_once dirname(__FILE__) . '/ModbusMaster.php'; 
          
          
            
            
    
          
          
            
            /**
          
          
            
             * ModbusMasterTcp
          
          
            
             *
          
          
            
             * This class deals with the MODBUS master using TCP. Extends ModbusMaster class.
          
          
            
             *  
          
          
            
             * Implemented MODBUS functions:
          
          
            
             *   - FC  1: read coils
          
          
            
             *   - FC  3: read multiple registers
          
          
            
             *   - FC 15: write multiple coils 
          
          
            
             *   - FC 16: write multiple registers
          
          
            
             *   - FC 23: read write registers
          
          
            
             *   
          
          
            
             * @author Jan Krakora
          
          
            
             * @copyright  Copyright (c) 2004, 2012 Jan Krakora
          
          
            
             * @package Phpmodbus  
          
          
            
             *
          
          
            
             */
          
          
            
            class ModbusMasterTcp extends ModbusMaster {
          
          
            
              /**
          
          
            
               * ModbusMasterTcp
          
          
            
               *
          
          
            
               * This is the constructor that defines {@link $host} IP address of the object. 
          
          
            
               *     
          
          
            
               * @param String $host An IP address of a Modbus TCP device. E.g. &quot;192.168.1.1&quot;.
          
          
            
               */         
          
          
            
              function ModbusMasterTcp($host){
          
          
            
                $this-&gt;host = $host;
          
          
            
                $this-&gt;socket_protocol = &quot;TCP&quot;;
          
          
            
              }
          
          
            
            }
          
    
    
      
        
          
        
        
          
            
              
                Copy lines
              
            
            
              
                Copy permalink
              
            
            View git blame
              Reference in new issue
          
        
      
    
      
    
        
    
      
    
      
        
        
           -->
            
            Go
        
      
    
    
    
      
    
    
        
      
      
    
      
    
            
    
      
        
          &copy; 2020 GitHub, Inc.
            Terms
            Privacy
            Security
            Status
            Help
    
        
    
        
          
    
       
            Contact GitHub
            Pricing
          API
          Training
            Blog
            About
        
      
      
        
      
    
    
    
    
      
        
        
          
        
        You can’t perform that action at this time.
      
    
    
        
        
        
        
        
        
        
        
        
      <div class="js-stale-session-flash flash flash-warn flash-banner" hidden
        >
        
        You signed in with another tab or window. Reload to refresh your session.
        You signed out in another tab or window. Reload to refresh your session.
      
      
      
        
        
          
            
          
          
        
      
    
    
      
      
      
    
    
      
    
      
    
    
    
    Fatal error:  Uncaught Error: Class 'ModbusMasterTcp' not found in /mnt/data/symcon/scripts/52230.ips.php:171
    Stack trace:
    #0 /mnt/data/symcon/scripts/52230.ips.php(62): ReadCommonModel()
    #1 {main}
      thrown in /mnt/data/symcon/scripts/52230.ips.php on line 171
    Gruß
    Richard

Ähnliche Themen

  1. Neu hier und gleich ein paar (Sicherlich auch alte Fragen)
    Von daMeier im Forum Allgemeine Diskussion
    Antworten: 10
    Letzter Beitrag: 29.12.18, 02:00
  2. IPS Module, hier mein Ansatz zum "Lüftungmodul"
    Von tomgr im Forum Allgemeine Diskussion
    Antworten: 0
    Letzter Beitrag: 31.05.15, 21:13
  3. Enocean protokoll lesen und senden
    Von test2011 im Forum EnOcean
    Antworten: 0
    Letzter Beitrag: 12.10.14, 09:30
  4. die Suche hier ist ein Krampf
    Von BeLo im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 9
    Letzter Beitrag: 25.10.13, 11:54
  5. Bitte lesen, bevor ein Thema eröffnet wird
    Von paresy im Forum Externe Zusatzsoftware
    Antworten: 0
    Letzter Beitrag: 12.03.12, 11:40