Moderne Wechselrichter verfügen über eine standardisierte Modbus TCP Schnittstelle nach dem Sunspec Protokoll. In diese Kategorie fallen z.B. die Wechselrichter der Tripower oder Sunny Boy Serien von SMA oder Fronius Symo. Um z.B. die Erzeugung der PV Anlage auszulesen und für eine weitere Verwendung bei z.B. der Eigenverbrauchsberechnung zu nutzen, sind analog zum Modbus RTU die Konfigurationen auf 3 Ebenen notwendig:

  • Modbus TCP Gateway: Hier muss lediglich die IP Adresse des Gerätes angegeben werden und der Port (Standard 502)
  • Modbus Slave: Identisch mit der Konfiguration für Modbus RTU, dahinter verbergen sich zwei wesentliche Parameter:
    • Slave ID (analog zu Modbus RTU ist das die Adresse des Busteilnehmers) oder Unit ID
    • Counter Type: Verweis auf eine Datei, die die Requests entsprechend dem Zähler/Modbusgerät enthalten im json-Format (siehe weiter unten), Dateiformat _ABCD.json

Modbus Kanal: Die Messkanal-Konfiguration analog zur allgemeinen Vorgehensweise, ergänzt um die Parameter Gateway und Register, sowie ein Umrechnungsfaktor und der Datentyp

Beispiele:

Gerät Hersteller Typ Register Kanaleinstellung Faktor Slave ID / Unit
Webbox SMA   30581 Zählerstand Netzbezugs-Zähler (Wh) [GdCsm-pEgyMtr] 2 U32 FIX0 RO30581 30581 0,001 3
Wechselrichter SMA Sunny Boy 4.0 (SB4.0-1AV-40) 40210 Total yield (WH), in Wh*10 (40212). 40209 0,01 126
Webbox SMA SunnBoy 3000TL-21 40210 Total yield (WH), in Wh*10 (40212). 40209 0,01 126
Symo 6… Fronius Symo 40196 40198 0,001 1
SMA Tripower SMA Tripower 40210 Total yield (WH), in Wh*10 (40212). 40209 0,01 126

 

Beispiel json-Datei (_Fronius_Symo.json)
{„configuration“ :
{„device“:“Fronius Symo“,
„protocol“:“modbus“,
„method“:“TCP“,
„description“:““,
„_comment“:“SunSpec_Modbus-TI-en-15.pdf“},

„requests“ :[

{„name“:“zaehler 4″, „address“:“40196″ , „count“:“20″, „channelFrom“:“1″ , „channelTo“:“1″ , „active“:“1″, „description“:“counter“,“Type“:“long“,“FunctionCode“:“3″},
{„name“:“voltage 5″, „address“:“40081″ , „count“:“20″, „channelFrom“:“1″ , „channelTo“:“1″ , „active“:“1″, „description“:“counter“,“Type“:“float“,“FunctionCode“:“3″}

]}