Fronius Fronius Datamanager - Modbus TCP and RTU Operating Instruction [DE, EN]

Page 1
Operating Instructions
Fronius Datamanager Modbus TCP & RTU
DE
EN-US
Bedienungsanleitung
42,0410,2049 028-24102022
Page 2
Page 3
Inhaltsverzeichnis
Das Modbus Protokoll 5
Allgemeines 5 Aufbau von Modbus Nachrichten 6 Modbus TCP – MBAP Header 6 Unterstützte Funktionscodes 7 03 (0x03) Read Holding Registers 7 06 (0x06) Write Single Register 7 16 (0x10) Write Multiple Registers 8 Exception Codes 9 CRC Berechnung für Modbus RTU 9 CRC Prüfsumme berechnen 10 CRC Prüfsumme zur Nachricht hinzufügen 11
Allgemeines 12
Verwendete Abkürzungen 12 Kommunikation mit dem Modbus Master 12 Register Maps 13 Kommunikation mit dem Modbus Master 14 Antwortzeiten 15 Modbus Geräte-ID für Wechselrichter 15 Modbus Geräte-ID für Fronius String Controls 16 Modbus Geräte-ID für Energiezähler 16 Modbus Geräte-ID für Fronius Sensor Cards 17 Event Flags 17 Registeradressen 17 Nicht vorhandene Datensätze 20 Zeitverhalten der unterstützten Betriebsarten 21 Vorzeichenkonvention für den Power Factor 22 Auf der Karte gespeicherte Werte 22 Skalierungsfaktoren 23 Nicht beschreibbare Register 23 Schreiben ungültiger Werte 24
Einstellungen - Modbus 25
Allgemeines 25 Einstellungen - Modbus öffnen 25 Einstellungen - Modbus öffnen 26 Datenausgabe über Modbus 26 Steuerung einschränken 29 Änderungen speichern oder verwerfen 29
Fronius Register 30
Fronius Register 30 Status-Code des Wechselrichters 30 Löschen der Event Flags und des Status-Codes 30 Daten speichern und löschen 30 Datentyp ändern 30 Anlagensummen 31
Common & Inverter Model 32
Common Block Register 32 Inverter Model Register 32 SunSpec Operating Codes 32 Fronius Operating Codes 32
Nameplate Model (120) 34
Allgemeines 34 Nameplate Register 34
Basic Settings Model (121) 35
Basic Settings Register 35 Referenzspannung 35 Abweichung zur Referenzspannung 35
Extended Measurements & Status Model (122) 36
Allgemeines 36 Extended Measurements & Status Register 36
DE
3
Page 4
Immediate Controls Model (123) 37
Allgemeines 37 Immediate Controls Register 37 Standby 37 Leistungsreduktion 37 Beispiel: Leistungsreduktion einstellen 38 Beispiel: Ändern der Rückkehrzeit bei aktiver Leistungsreduktion 39 Auswirkungen der Blindleistungs-Vorgaben auf die Wirkleistung 39 Konstanter Power Factor 40 Beispiel: Konstanten Power Factor vorgeben 40 Konstante relative Blindleistung 41 Beispiel: Konstante Blindleistung vorgeben 41
Multiple MPPT Inverter Extension Model (160) 42
Allgemeines 42 Multiple MPPT Inverter Extension Register 42
Basic Storage Control Model (124) 44
Allgemeines 44 Bereitgestellte Informationen 44 Leistungsfenster-Vorgaben 44 Vorgabe des minmalen Ladestandes 46 Laden des Energiespeichers vom Netz 46 Basic Storage Controls Register 46 Register- und Batteriestatusänderungen in Fronius Solar.web 46
String Combiner Model (403) 48
String Combiner Register 48
Meter Model 49
Meter Model Register 49
End Block 50
Allgemeines 50 End Block 50
String Combiner Event Flags 51
String Combiner Event Flags 51
4
Page 5
Das Modbus Protokoll
Allgemeines Die Beschreibung des Protokolls entstammt zum größten Teil den Modbus Spezi-
fikationen, die öffentlich auf www.modbus.org/specs.php erhältlich sind.
Modbus ist ein einfaches, offenes Kommunikationsprotokoll, mit dem eine Mas­ter-Slave- oder Client-Server-Kommunikation zwischen den am Netzwerk ange­schlossenen Geräten realisiert werden kann. Das Grundprinzip von Modbus ist: Ein Master sendet eine Anfrage und ein Slave antwortet darauf. Bei Modbus TCP wird der Master als Client, ein Slave als Server bezeichnet. Die Funktion ist die­selbe. In weiterer Folge werden für die Beschreibungen der Funktionen des Pro­tokolls unabhängig von den Varianten RTU und TCP nur die gebräuchlicheren Na­men Master und Slave verwendet. In Fällen, wo Unterschiede bei zwischen RTU und TCP auftreten, wird speziell darauf hingewiesen.
Am Fronius Datamanager kann Modbus auf 2 Arten benutzt werden:
Modbus TCP
-
Mittels TCP/IP über Ethernet (kabelgebunden oder über WLAN) Modbus RTU
-
Mittels asynchroner serieller Übertragung über RS-485 (EIA/TIA-485-A), nur bei Fronius Datamanager 2.0
DE
Im Fall von Modbus RTU kann es immer nur einen Master im System geben. Grundsätzlich gilt, dass nur ein Master Anforderungen (Requests) initiieren darf. Ein Slave darf nur antworten (Response), wenn dieser vom Master angesprochen wurde; untereinander dürfen die Slaves nicht kommunizieren. Wird ein Broadcast Request (Anforderung an alle vorhandenen Slaves per Slave ID oder Unit ID 0) ausgesendet, darf keiner der Slaves antworten. Daher können Broadcasts nur für Schreibbefehle verwendet.
Wenn ein Master eine Anforderung an einen Slave sendet, dann erwartet dieser eine Antwort. Bei einer Anforderung eines Masters gibt es eine von fünf Möglich­keiten:
Erhält der Slave die Anforderung ohne Kommunikationsfehler und kann die-
-
ser die Anforderung fehlerfrei bearbeiten, dann wird eine normale Antwort mit den gewünschten Daten zurückgesendet. Erhält der Slave die Anforderung wegen eines Kommunikationsfehlers nicht,
-
dann wird keine Antwort gesendet. Das führt zu einem Timeout am Master. Erhält der Slave die Anforderung, entdeckt aber einen Kommunikationsfeh-
-
ler (Parity, CRC, …), wird keine Antwort gesendet. Das führt zu einem Time­out am Master. Erhält der Slave die Anforderung ohne Kommunikationsfehler, kann aber die-
-
se nicht fehlerfrei bearbeiten (z. B. wenn ein nicht vorhandenes Register aus­gelesen werden soll), wird eine Fehlernachricht (Exception Response) mit dem Grund für den Fehler zurückgesendet. Erhält der Slave eine Broadcast Anforderung, die auch an alle anderen
-
Geräte geht, so wird weder im Fehlerfall noch wenn die Anforderung erfolg­reich bearbeitet wurde, eine Antwort gesendet. Daher sind Broadcast Anfor­derungen nur für Schreibbefehle geeignet.
Modbus Geräte stellen Daten in 16 Bit großen Datenblöcken (Register) zur Verfügung. In bestimmten Fällen können einzelne Datenpunkte auch mehrere Datenblöcke umfassen (z. B. 2 Register = 32 Bit Wert).
5
Page 6
Aufbau von Mod­bus Nachrichten
Eine Modbus Nachricht besteht grundsätzlich aus der Protokolldateneinheit (protocol data unit, PDU). Diese ist von darunter liegenden Kommunikations­schichten unabhängig. Abhängig von dem verwendeten Bus oder Netzwerk können noch weitere Felder hinzukommen. Diese Struktur wird dann Anwendungsdateneinheit (application data unit, ADU) genannt.
ADU
Adressfeld Funktionscode Daten CRC
PDU
Struktur einer Modbus Nachricht bei Modbus RTU
ADU
MBAP Header Funktionscode Daten
PDU
Struktur einer Modbus Nachricht bei Modbus TCP
Für Modbus TCP wird ein eigener Header verwendet, um die Anwendungsdaten­einheit zu identifizieren. Dieser Header heißt MBAP Header (MODBUS Applicati­on Protocol Header).
Die Größe der Protokolldateneinheit (PDU) ist limitiert, bedingt durch die ersten Modbus Implementierungen in einem seriellen Netzwerk (max. RS485 ADU = 256 Bytes). Dadurch ergibt sich für die Größe der Protokolldateneinheit PDU: PDU = 256 – Slave ID (1 Byte) – CRC (2 Bytes) = 253 Bytes Damit ergibt sich:
Modbus RTU ADU = 253 + Slave ID (1 Byte) + CRC (2 Bytes) = 256 Bytes
-
Modbus TCP ADU = 253 Bytes + MBAP (7 Bytes) = 260 Bytes
-
Modbus TCP – MBAP Header
Der MBAP Header umfasst 7 Bytes:
Transaction ID (2 Bytes): Wird benutzt, um Anfrage und Antwort zu syn-
-
chronisieren. Der Slave übernimmt die Transaction ID von der Anfrage in die Antwort. Protocol ID (2 Bytes): Ist immer 0 (Modbus Protokoll).
-
Länge (2 Bytes): Das Längenfeld enthält die Anzahl der Bytes der nachkom-
-
menden Felder, einschließlich Unit ID und Datenfelder. Unit ID (1 Byte): Dieses Feld wird zur Adressierung der an den Fronius Data-
-
manager angeschlossenen Geräte verwendet (Gateway-Funktion des Fronius Datamanagers). Die Unit ID entspricht der Slave ID bei Modbus RTU. Der Wert wird vom Master vorgegeben und wird vom Slave unverändert mit der Antwort zurückgegeben. Für Details über die Adressierung der Geräte siehe:
Modbus Geräte-ID für Wechselrichter auf Seite 15
-
Modbus Geräte-ID für Fronius String Controls auf Seite 16
-
Modbus Geräte-ID für Energiezähler auf Seite 16
-
WICHTIG! Die richtige Unit ID muss immer angegeben werden, auch wenn der Fronius Datamanager nur mit einem einzelnen Wechselrichter verbunden ist.
6
Page 7
Unterstützte Funktionscodes
Der Funktionscode bestimmt die am Slave auszuführende Aktion. Drei Funkti­onscodes für Lese- und Schreiboperationen werden unterstützt:
-
-
-
03 (0x03) 06 (0x06) 16 (0x10)
1)
Read Holding Registers
1)
Write Single Register
1)
Write Multiple Registers
Tritt am Slave bei der Bearbeitung einer Anforderung ein Fehler auf, so wird eine Fehlernachricht als Antwort (Exception Response) gesendet. Bei einer solchen Antwort wird beim Funktionscode das höchstwertige Bit auf 1 gesetzt (ent-
spricht einer Addition des Funktionscodes mit 0x80)
1)
und ein Exception Code
hinzugefügt, der den Grund des Fehlers angibt.
1)
Das Prefix "0x" steht für hexadezimale Zahlen
DE
03 (0x03) Read Holding Regis­ters
Dieser Funktionscode wird dazu verwendet, den Inhalt eines oder mehrerer auf­einanderfolgenden Register eines Gerätes auszulesen. Die Anforderung enthält die Adresse des ersten auszulesenden Registers und die Anzahl der zu lesenden Register. In der Anforderung werden Register beginnend bei 0 adressiert. Das be­deutet, dass die Register 1 bis 16 über die Adressen 0 bis 15 angesprochen wer­den.
Anforderung
Funktionscode 1 Byte 0x03
Startadresse 2 Bytes 0x0000 bis 0xFFFF (0 bis
65535)
Anzahl der Register 2 Bytes 1 bis 125
Antwort
Funktionscode 1 Byte 0x03
Anzahl der Bytes 1 Byte 2 x N*
Registerwerte N* x 2 Bytes
*N = Anzahl der Register
Fehler
06 (0x06) Write Single Register
Fehlercode 1 Byte 0x83
Exception Code 1 Byte 01 oder 02 oder 03 oder 04 oder
11
Dieser Funktionscode wird dazu verwendet, ein einzelnes Register zu beschrei­ben. Die Anforderung enthält nur die Adresse des zu beschreibenden Registers. Register werden beginnend bei 0 adressiert. Das bedeutet, dass das Register 1 über die Adresse 0 angesprochen. Die normale Antwort ist eine Kopie der Anfor­derung, die nach dem erfolgreichen Beschreiben des Registers gesendet wird.
7
Page 8
Anforderung
Funktionscode 1 Byte 0x06
Registeradresse 2 Bytes 0x0000 bis 0xFFFF (0 bis
65535)
Registerwert 2 Bytes
Antwort
Funktionscode 1 Byte 0x06
Registeradresse 2 Bytes 0x0000 bis 0xFFFF (0 bis
65535)
Registerwert 2 Bytes
Fehler
Fehlercode 1 Byte 0x86
Exception Code 1 Byte 01 oder 02 oder 03 oder 04 oder
11
16 (0x10) Write Multiple Regis­ters
Dieser Funktionscode wird dazu verwendet, einen Block von aufeinanderfolgen­den Registern zu beschreiben. Die Anforderung enthält die Adresse des ersten zu beschreibenden Registers, die Anzahl der zu beschreibenden Register, die An­zahl der zu schreibenden Bytes und die zu schreibenden Werte (2 Bytes pro Re­gister). Die normale Antwort enthält den Funktionscode, die Startadresse und die Anzahl der beschriebenen Register.
Anforderung
Funktionscode 1 Byte 0x10
Startadresse 2 Bytes 0x0000 bis 0xFFFF (0 bis
65535)
Anzahl der Register 2 Bytes 1 bis 123
Anzahl der Bytes 1 Byte 2 x N*
Registerwerte N* x 2 Bytes
*N = Anzahl der Register
Antwort
Funktionscode 1 Byte 0x10
Startadresse 2 Bytes 0x0000 bis 0xFFFF (0 bis
65535)
Anzahl der Register 2 Bytes 1 bis 123
Fehler
Fehlercode 1 Byte 0x90
Exception Code 1 Byte 01 oder 02 oder 03 oder 04 oder
11
8
Page 9
Exception Codes Eine Fehlernachricht (Exception Response) besitzt zwei Felder, die sie von einer
normalen Antwort unterscheidet:
Feld Funktionscode
-
In einer normalen Antwort wird der Funktionscode der Anforderung in das Funktionscode Feld der Antwort übernommen. Bei allen Funktionscodes ist das höchstwertige Bit (MSB) 0 (die Werte der Funktionscodes sind alle klei­ner als 0x80). In einer Fehlernachricht wird das MSB auf 1 gesetzt. Das be­deutet eine Addition des Wertes für den Funktionscode mit 0x80. Aufgrund des gesetzten MSB kann der Master die Antwort als Fehlernachricht identifi­zieren.
Datenfeld
-
Eine normale Antwort enthält Daten oder Statistikwerte im Datenfeld. Bei ei­ner Fehlernachricht wird ein Exception Code im Datenfeld zurückgeliefert. Dieser Exception Code zeigt den Grund für die Fehlernachricht an.
Modbus Exception Codes
Code Name Bedeutung
01 ILLEGAL FUNCTION Der Funktionscode in der Anforderung
wird vom Slave nicht unterstützt.
DE
02 ILLEGAL DATA AD-
DRESS
03 ILLEGAL DATA VALUE Ein Wert in der Anforderung ist außerhalb
04 SLAVE DEVICE FAILU-REWährend des Versuchs, ein oder mehrere
11 GATEWAY TARGET DE-
VICE FAILED TO RE­SPOND
Es werden ungültige Registeradressen ab­gefragt.
des gültigen Bereichs. Dies gilt sowohl für die Felder einer Anforderung (z. B. ungülti­ge Anzahl an Registern) als auch für ungültige Einstellungswerte der SunSpec Inverter Control Models.
Register zu beschreiben, ist ein Fehler auf­getreten.
Nur bei Modbus TCP. Das angesprochene Gerät kann nicht ge­funden werden:
das Gerät befindet sich nicht im Solar-
a)
Net Ring oder das Gerät ist ausgeschaltet
b)
oder der SolarNet Ring ist offen
c)
CRC Berech­nung für Modbus RTU
Jede Modbus RTU Nachricht wird mit einer Prüfsumme (CRC, Cyclic Redundan­cy Check) versehen, um Übertragungsfehler erkennen zu können. Die Prüfsum­me ist 2 Bytes groß. Sie wird vom sendenden Gerät berechnet und an die zu sen­dende Nachricht angehängt. Der Empfänger berechnet seinerseits über alle Bytes der erhaltenen Nachricht (ohne CRC) die Prüfsumme und vergleicht diese mit der empfangenen Prüfsumme. Wenn diese beiden Prüfsummen unterschied­lich sind, ist ein Fehler aufgetreten.
Die Berechnung der Prüfsumme beginnt mit dem Setzen aller Bits eines 16 Bit Registers (CRC Register) auf 1 (0xFFFF). Danach werden alle Bytes der Nach­richt einzeln mit dem CRC Register verarbeitet. Nur die Datenbytes einer Nach­richt werden zur Berechnung herangezogen. Start-, Stopp- und Paritätsbits wer­den nicht berücksichtigt.
9
Page 10
Während der Berechnung der CRC wird jedes Byte mit dem CRC Register XOR­verknüpft. Danach wird das Ergebnis in Richtung des niederwertigsten Bits (LSB) verschoben und das höchstwertige Bit (MSB) auf 0 gesetzt. Das LSB wird be­trachtet. Wenn das LSB vorhin 1 war, wird das CRC Register mit einem fix vorge­gebenen Wert XOR-verknüpft. War das LSB 0, dann ist nichts zu tun.
Dieser Prozess wird so oft wiederholt, bis das CRC Register 8 Mal verschoben wurde. Nach dem letzten (achten) Schiebevorgang, wird das nächste Byte ge­nommen und mit dem aktuellen CRC Register XOR-verknüpft. Danach beginnt der Schiebeprozess von vorne; wieder wird 8 Mal verschoben. Nach Abhandlung aller Bytes der Nachricht ist der Wert des CRC Registers die Prüfsumme.
CRC Prüfsumme berechnen
10
Berechnungsalgorithmus der CRC16
Initialisierung eines 16 Bit Registers (2 Bytes) mit 0xFFFF. Dieses Register
1
wird als CRC16 Register bezeichnet. XOR-Verknüpfung des ersten Bytes der Nachricht mit dem niederwertigen
2
Byte des CRC16 Registers. Das Ergebnis wird im CRC16 Register gespei­chert.
Verschieben des CRC16 Registers um 1 Bit nach rechts (in Richtung LSB),
3
MSB mit 0 auffüllen. LSB betrachten.
Page 11
LSB Wert überprüfen
4
War das LSB 0: Gehe zu Schritt 3 (neuerlich verschieben).
-
War das LSB 1: XOR Verknüpfung des CRC16 Registers mit dem CRC
-
Polynom 0xA001 (1010 0000 0000 0001).
Wiederholung der Schritte 3 und 4 bis 8 Schiebeoperationen durchgeführt
5
worden sind. Wenn diese durchgeführt wurden, wurde ein komplettes Byte der Nachricht bearbeitet.
Wiederholung der Schritte 3 bis 5 für das nächste Byte der Nachricht. Das
6
ganze wiederholen bis alle Bytes der Nachricht abgearbeitet wurden. Nach dem letzten Byte enthält das CRC16 Register die Prüfsumme.
7
Wenn die Prüfsumme an die zu sendende Nachricht angehängt wird, dann
8
müssen die beiden Bytes wie unten beschreiben vertauscht werden.
DE
CRC Prüfsumme zur Nachricht hinzufügen
Wenn die 16 Bit (2 Bytes) CRC Prüfsumme mit einer Nachricht versendet wird, dann wird das niederwertige vor dem höherwertigen Byte übertragen.
Zum Beispiel, wenn die CRC Prüfsumme 0x1241 (0001 0010 0100 0001) ist:
Addr Func Data
Count
Data Data Data Data CRC
Lo
CRC Hi
0x41 0x12
11
Page 12
Allgemeines
Verwendete Abkürzungen
AC Wechselstrom
DC Gleichstrom
FW Firmware
PF
PV Photovoltaik
RTC Echtzeit-Uhr
SF Skalierungsfaktor
SW Software
V Spannung (Volt)
VA Scheinleistung
VAr Blindleistung
VMax Maximale Spannung
VMin Minimale Spannung
VRef Referenzspannung
W Leistung (Watt)
WR Wechselrichter
Power Factor (cos j)
Kommunikation mit dem Modbus Master
Die Kommunikation des Fronius Datamanager mit dem Modbus-Master erfolgt über Registeradressen entsprechend der Spezifikationen der SunSpec Alliance. (http://www.sunspec.org/)
HINWEIS!
Der Fronius Datamanager unterstützt auch die Anbindung von Fronius String Controls über Fronius Solar Net.
Fronius String Controls werden durch einen eigenen Common Block und das darauffolgende String Combiner Model dargestellt. Zusätzlich bietet der Fronius Datamanager die Möglichkeit, die Daten eines über Modbus RTU angeschlossenen Energiezählers via Modbus TCP zur Verfügung zu stellen. Der Zähler wird durch einen eigenen Common Block und das darauffol­gende Meter Model dargestellt.
12
Page 13
Die Zuordnung der Registeradressen zur entsprechenden Funktion ist folgenden Tabellen zu entnehmen:
Für alle Geräte:
-
Common Block (1)
-
Für Wechselrichter:
-
Fronius Register
-
Inverter Model (101, 102, 103, 111, 112 oder 113)
-
Inverter Controls:
-
- Nameplate (120)
- Basic Settings (121)
- Extended Measurements & Status (122)
- Immediate Controls (123) Multiple MPPT Inverter Extension (160)
-
Basic Storage Control (124)
-
nur bei Fronius Hybrid Wechselrichtern verfügbar
Für String Controls:
-
String Combiner Model (403)
-
Für Energiezähler:
-
Meter Model (201, 202, 203, 211, 212 oder 213)
-
HINWEIS!
gilt nur für Modbus RTU und nur wenn kein Energiezähler angeschlossen ist: Wenn kein Datenaustausch am RS-485 Bus stattfindet, können Rauschen und Störungen die Leitungen beeinflussen.
Damit ein Empfänger in einem definierten Zustand bleibt wenn keine Datensigna­le anliegen, sollten Vorspannungswiderstände verwendet werden, um einen defi­nierten Ruhezustand auf den Datenleitungen zu erhalten. Der Fronius Datamanager verfügt über keine Vorspannungswiderstände. Detail­lierte Informationen über die Verwendung solcher Widerstände finden sich im Dokument „MODBUS over serial line specification and implementation guide V1.02" (http://modbus.org/docs/Modbus_over_serial_line_V1_02.pdf).
DE
Register Maps
Wechselrichter String Control Energiezähler Sensor Card
SID
Identifizierung als SunSpec Gerät
Common Block
Geräteinformatio­nen
Inverter Model
Wechselrichter­Daten
Nameplate Model End Block End Block
Basic Settings Model
Ext. Measure­ment Model
SID
Identifizierung als SunSpec Gerät
Common Block
Geräteinformatio­nen
String Combiner Model
String Control Daten
SID
Identifizierung als SunSpec Gerät
Common Block
Geräteinfor­mationen
Meter Model
Energiezähler­Daten
SID
Identifizierung als SunSpec Gerät
Common Block
Geräteinfor­mationen
Irradiance Mo­del
Back of Modu­le Temperatu­re Model
Base Meteoro­logical Model
End Block
13
Page 14
Immediate Con­trols Model
Kommunikation mit dem Modbus Master
Multi. MPPT Inv. Ext. Model
Basic Storage Control (nur bei
Fronius Hybrid Wechselrichter)
End Block
Die Registerlisten können von der Fronius Homepage heruntergeladen werden:
https://www.fronius.com/de/downloads / Solar Energy / Modbus Sunspec Maps, State Codes und Events
Die Kommunikation mit dem Modbus-Master erfolgt über Registeradressen ent­sprechend der Spezifikationen der SunSpec Alliance. (http://www.sunspec.org/)
Die Daten eines über Modbus RTU angeschlossenen Energiezählers können via Modbus TCP oder über Modbus RTU (2. Schnittstelle) zur Verfügung gestellt werden. Der Zähler wird durch einen eigenen Common Block und das darauffol­gende Meter Model dargestellt.
Die Zuordnung der Registeradressen zur entsprechenden Funktion ist folgenden Tabellen zu entnehmen:
Für alle Geräte:
-
Common Block (1)
-
Für Wechselrichter:
-
Inverter Model (101, 102, 103, 111, 112 oder 113)
-
Inverter Controls:
-
- Nameplate (120)
- Basic Settings (121)
- Extended Measurements & Status (122)
- Immediate Controls (123) Multiple MPPT Inverter Extension (160)
-
Basic Storage Control (124)
-
Für Energiezähler:
-
Meter Model (201, 202, 203, 211, 212 oder 213)
-
HINWEIS!
gilt nur für Modbus RTU und nur wenn kein Energiezähler angeschlossen ist: Wenn kein Datenaustausch am RS-485 Bus stattfindet, können Rauschen und Störungen die Leitungen beeinflussen.
Damit ein Empfänger in einem definierten Zustand bleibt wenn keine Datensigna­le anliegen, sollten Vorspannungswiderstände verwendet werden, um einen defi­nierten Ruhezustand auf den Datenleitungen zu erhalten. Der Fronius Datamanager verfügt über keine Vorspannungswiderstände. Detail­lierte Informationen über die Verwendung solcher Widerstände finden sich im Dokument „MODBUS over serial line specification and implementation guide V1.02" (http://modbus.org/docs/Modbus_over_serial_line_V1_02.pdf).
14
Page 15
Antwortzeiten Die Antwortzeiten hängen unter anderem von der Anzahl der Geräte im Froni-
us Solar Net Ring ab. Je mehr Geräte verwendet werden, desto größer muss das Timeout für Antworten sein.
HINWEIS!
Bei mehreren Geräten im Fronius Solar Net Ring sollte für Abfragen von Wech­selrichterdaten ein Timeout von mindestens 10 Sekunden verwendet werden.
Empfehlung für Timeout-Werte
Modbus-Abfragen sollten nur sequenziell und nicht parallel ausgeführt werden. Die Abfragen mit einem Timeout von mindestens 10 Sekunden durchführen. Ab­fragen im Millisekunden-Takt können zu langen Antwortzeiten führen. Multiple Registerabfragen in einer Nachricht sind schneller als mehrere Abfragen einzelner Register.
Da bei Fronius String Controls eine einzige Modbus-Abfrage zwei Abfragen über Fronius Solar Net bewirken kann, sind etwas längere Antwortzeiten als bei Wech­selrichteranfragen möglich. Wenn Fronius String Controls vorhanden sind, sollte daher ein größerer Timeout-Wert für Antworten verwendet werden.
Bei der ersten Abfrage der Common Block Daten nach einem Neustart des Fro­nius Datamanagers müssen die Informationen über die Fronius String Control einmalig über Fronius Solar Net abgefragt werden. Daher benötigt diese erste Abfrage ein wenig mehr Zeit als die darauffolgenden.
DE
Modbus Geräte­ID für Wechsel­richter
Bei einer größeren Anzahl von Geräten in einem Fronius Solar Net Ring, wird empfohlen diese auf mehrere Fronius Solar Net Ringe mit jeweils einem eigenen Fronius Datamanager aufzuteilen, um noch vertretbare Antwortzeiten zu erhal­ten. Fronius empfiehlt maximal 6 Wechselrichter mit einem Datamanager zu steuern.
Die Modbus Geräte-ID des Wechselrichters entspricht seiner Wechselrichter­Nummer, welche über das Bedienpanel des Wechselrichters eingestellt werden kann. (siehe Bedienungsanleitung des Wechselrichters)
HINWEIS!
Hierbei gibt es nur eine einzige Ausnahme: Die Wechselrichter-Nummer 00 wird auf Geräte-ID 100 umgelegt, da bei Mod­bus die Geräte-ID 0 für Broadcast Nachrichten reserviert ist.
Beispiel:
Wechselrichter-Nummer Modbus Geräte-ID
00 100
01 001
02 002
03 003
99 099
15
Page 16
Modbus Geräte­ID für Fronius String Controls
Die Modbus Geräte-ID einer Fronius String Control ergibt sich aus
ihrer Adresse im Fronius Solar Net
-
einem String Control Offset-Wert
-
Der Standardwert für den String Control Offset ist 101 da für die Wechselrich­ter der Bereich bis Modbus Geräte-ID 100 reserviert ist. Der Offset-Wert kann jedoch über die Webseite des Fronius Datamanager verändert werden. => siehe Abschnitt “Datenausgabe über Modbus“
Beispiel 1: String Control Offset = 101 (Standardwert)
Fronius String Control Adres­se Modbus Geräte-ID
0 101
1 102
2 103
99 200
Ein Fronius Solar Net Ring erlaubt bis zu 100 Wechselrichter und bis zu 200 Fro­nius String Controls. Die verfügbaren Modbus Geräte-IDs sind ab 240 für andere Funktionen reserviert (z. B. für Energiezähler). Mit dem Standard String Control Offset von 101 wären also Fronius String Con­trol Adressen ab 139 (entspricht Modbus ID 240) nicht möglich.
Modbus Geräte­ID für Ener­giezähler
Daher kann der String Control Offset über die Website des Fronius Datamanager verändert werden, wenn weniger als 100 Wechselrichter zum Einsatz kommen.
Beispiel 2: 30 Wechselrichter, 200 Fronius String Controls, String Control Off-
set = 40
Fronius String Control Adres­se Modbus Geräte-ID
0 40
1 41
2 42
199 239
Ist ein Energiezähler (z. B. Fronius Smart Meter 63A) per Modbus RTU an den Fronius Datamanager angeschlossen, kann dieser per Modbus TCP über die fixe Modbus Geräte-ID ausgelesen werden.
Fronius Smart Meter Adresse Modbus Geräte-ID
16
1 240
2 241
3 242
4 243
Page 17
5 244
DE
Modbus Geräte­ID für Fronius Sensor Cards
Event Flags Zustandsänderungen und Fehler der Wechselrichter und Fronius String Controls
Ist eine Fronius Sensor Card per Solar Net an den Fronius Datamanager ange­schlossen, kann diese über eine fixe Modbus Geräte-ID ausgelesen werden.
Die Modbus Geräte-ID einer Fronius Sensor Card ergibt sich aus
ihrer Adresse im Fronius Solar Net
-
dem Sensor Card Offset-Wert 245
-
Fronius Sensor Card­Adresse Modbus Geräte-ID
0 245
1 246
2 247
werden als Event Flags dargestellt.
Detaillierte Informationen und Listen in verschiedenen Dateiformaten (xlsx, csv, json) können von der Fronius Homepage heruntergeladen werden:
https://www.fronius.com/de/downloads / Solar Energy / Modbus SunSpec Maps, State Codes and Events
HINWEIS!
Es können auch mehrere State Codes zu einem Ereignis zusammengefasst sein.
Für Wechselrichter gilt:
Eine genaue Beschreibung der State Codes ist in der Bedienungsanleitung des betreffenden Wechselrichters zu finden. Wenn der Wechselrichter einen State Code erzeugt, wird im Fronius Datamana­ger das entsprechende Event Flag gesetzt.
HINWEIS!
Zusätzlich wird der entsprechende State Code auch in Register F_Active_Sta­te_Code (214) angezeigt.
Event Flag und State Code bleiben so lange aktiv, wie auch der State Code am Wechselrichter anliegt. Tritt ein weiterer State Code auf, wird dieser ebenfalls in den Event Flags dargestellt. In diesem Fall kann es passieren, dass das vorherige Event Flag nicht gelöscht wird. Daher ist es möglich, die Event Flags und den State Code manuell zu löschen: durch Schreiben von 0xFFFF in Register F_Reset_All_Event_Flags (215)
Registeradres­sen
WICHTIG!
17
Page 18
Registeradressen bleiben nicht konstant.
-
Die tatsächlichen Registeradressen sind abhängig von der Zusammensetzung
-
der dynamischen Sunspec Registerliste.
Richtige Vorgehensweise:
das Model per Abfrage suchen (Startadresse ermitteln)
-
dann mit Offsets arbeiten
-
Um ein Register auszulesen muss in der Modbus-Anfrage die Startadresse des Registers angegeben werden.
Fronius Basis Register: 212 SunSpec Basis Register: 40001
Register beginnen bei 1 und stellen keinen Funktionscode dar.
Register nicht mit dem Modicon Adress-Schema verwechseln: Beim Modicon Adress-Schema wird 40001 als 4x40001 dargestellt. Um Register 40001 auszulesen, die Adresse 40000 (0x9C40) verwenden.
Die ausgesendete Registeradresse ist also immer um 1 geringer als die eigentli­che Registernummer.
WICHTIG!
Aufgrund der verwendeten Datentypen können sich die Längen von einzelnen Models verändern.
Daher werden bei einigen Registertabellen für SunSpec Models Startadressen angegeben. Diese Startadresse zusammen mit dem Offset aus der Tabelle ergibt dann den Wert der tatsächlichen Registernummer. Beispiel: Tabelle Nameplate Model (120) auf Seite 34: Das Register WRtg des Nameplate Model hat einen Offset von 4. Die Startadres­se ist bei der Einstellung „float“ mit 40131 angegeben. Somit ist die korrekte Registernummer: 40131 + 4 = 40135.
Beispiele für Modbus RTU:
1. Abfrage von 4 Registern ab Register 40005 (Mn, Manufacturer)
Senden (Bytes in Hexadezimal)
01 03 9C 44 00 04 2A 4C
Gerät
e-ID
Func-
tion
Code
Adresse
40004 (ent-
spricht
Register
40005)
Anzahl der
auszulesen-
den Register
Checksum-
Low
Byte
me
High Byte
Empfangen (Bytes in Hexadezimal)
18
01 03 08 46 72 6F 6E 69 75 73 00 8A 2A
Gerät
e-ID
Func-
tion
Code
An-
zahl
der
Bytes
Adresse
40005
“F“ und “r“
Adresse
40006
“o“ und “n“
Adresse
40007
“i“ und “u“
Adresse
40008
“s“ und 0
Checksum-
Low
Byte
me
High Byte
Page 19
2. Schreiben von 1 Register ab Register 40242 (WmaxLimPct)
01 10 9D 32 00 01 02 13 88 E3 DD
Gerät
e-ID
01 10 9D 32 00 01 8F AA
Gerät
e-ID
Func-
tion
Code
Func-
tion
Code
Adresse
40242
Adresse
40242
Anzahl der
zu schrei-
benden Re-
gister
Anzahl der geschriebe­nen Register
Anzahl Daten-
bytes, die
noch fol-
gen
Checksum­me “i“ und “u“
Low
High
Byte
Byte
zu schrei-
bender
Register-
wert
0x1388 =
5000
400
08 “s“
und
0
Check-
summe
Low
Byte
Beispiele für Modbus TCP:
DE
High Byte
1. Abfrage von 4 Registern ab Register 40005 (Mn, Manufacturer)
Senden (Bytes in Hexadezimal)
MBAP Hea­der
Details siehe Beschreibung MBAP Header
03 9C 44 00 04
Func-
tion
Code
Adresse 40004
(entspricht
Register 40005)
Anzahl der
auszulesen-
den Register
Empfangen (Bytes in Hexadezimal)
MBAP Hea­der
Details siehe Beschreibung MBAP Header
03 08 46 72 6F 6E 69 75 73 00
Func-
tion
Code
Anzahl
der
Bytes
Adresse
40005
“F“ und “r“
Adresse
40006
“o“ und “n“
Adresse
40007
“i“ und “u“
Adresse
40008
“s“ und 0
19
Page 20
2. Schreiben von 1 Register ab Register 40242 (WmaxLimPct)
Nicht vorhande­ne Datensätze
MBAP Hea­der
Details siehe Beschreibung MBAP Header
MBAP Hea-
10 9D 32 00 01 02 13 88
Func-
tion
Code
Adresse 40242 Anzahl der
zu schrei-
benden Re-
gister
Anzahl Da-
tenbytes,
die noch fol-
gen
zu schrei-
bender Re-
gisterwert
0x1388 =
5000
10 9D 32 00 01
der
Details siehe Beschreibung MBAP Header
Func-
tion
Code
Adresse 40242 Anzahl der
geschiebe-
nen Register
Fronius Wechselrichter können nicht immer alle Daten, die in den SunSpec-
Datenmodellen spezifiziert sind, zur Verfügung stellen. Diese Daten werden je nach Datentyp laut SunSpec Spezifikation durch folgende Werte dargestellt:
int16 (-32767 bis 32767):
-
uint16 (0 bis 65534):
-
acc16 (0 bis 65535):
-
enum16 (0 bis 65534):
-
bitfield16 (0 bis 0x7FFF):
-
pad (0x8000):
-
int32 (-2147483647 bis 2147483647) :
-
uint32 (0 bis 4294967294):
-
acc32 (0 bis 4294967295 ):
-
enum32 (0 bis 4294967294):
-
bitfield32 (0 bis 0x7FFFFFFF):
-
int64 (-9223372036854775807 bis
-
9223372036854775807): uint64 (0 bis 18446744073709551615):
-
acc64 (0 bis 18446744073709551615):
-
stringX:
-
0x8000 0xFFFF 0 0xFFFF 0xFFFF immer 0x8000 0x80000000 0xFFFFFFFF 0 0xFFFFFFFF 0xFFFFFFFF 0x8000000000000 000 0xFFFFFFFFFFFFF FFF 0 alle X Register mit
float32 (Bereich siehe IEEE 754):
-
sunssf (Skalierungsfaktoren; -10 bis 10):
-
0x0000 gefüllt 0x7FC00000 (NaN) 0x8000
1)
20
1)
Das Prefix "0x" steht für hexadezimale Zahlen
HINWEIS!
Nicht unterstützte Datenpunkte sind in den Registertabellen in der Spalte „Range of values“ mit „Not supported“ gekennzeichnet.
In diesem Fall erhält man beim Auslesen je nach Datentyp den entsprechenden Wert aus der obigen Liste. In bestimmten Fällen kann es vorkommen, dass grundsätzlich als unterstützt an­geführte Register ebenfalls einen solchen Wert zurückliefern. Der Grund dafür ist, dass einige Werte vom Gerätetyp abhängig sind, z.B. die Ströme AphB und AphC bei einem einphasigen Wechselrichter.
Page 21
Zeitverhalten der unterstütz­ten Betriebsar­ten
Zeitverhalten am Beispiel einer Leistungsreduktion
Das Zeitverhalten des Wechselrichters in einer Betriebsart kann durch mehrere Zeitwerte festgelegt werden. In der Abbildung “Zeitverhalten am Beispiel einer Leistungsreduktion“ sind die drei möglichen Zeitwerte dargestellt:
WinTms 0 - 300 [Sekunden]
-
gibt ein Zeitfenster an, in dem die Betriebsart zufällig gestartet wird. Das Zeitfenster beginnt mit dem Startbefehl der Betriebsart (z.B. OutPF- Set_Ena = 1). Mit WinTms kann verhindert werden, dass alle Wechselrichter in der Anlage die Änderungen gleichzeitig übernehmen. Bei 0 (Standardwert) startet die Betriebsart sofort.
RvrtTms 0 - 28800 [Sekunden]
-
bestimmt, wie lange die Betriebsart aktiv sein soll. Mit jeder empfangenen Modbus Nachricht wird der Timer neu gestartet. Wenn während der Fall­back-Zeit (= RvrtTms) keine neue Modbus Nachricht empfangen wurde, wird die Betriebsart automatisch beendet und auf die Betriebsart mit der nächs­ten Priorität (Datamanager Webinterface - Einstellungen - EVU Editor) zurückgeschaltet, beispielsweise auf dynamische Leistungsreduzierung. Ist RvrtTms = 0 (Standardwert) bleibt die Betriebsart so lange aktiv, bis diese manuell über das entsprechende Register wieder deaktiviert wird. Die Fall­back Option steht in diesem Fall nicht zur Verfügung. RmpTms (wird ab Version 1.11.3-2 (Hybridmanager) / 3.13.3-2 (Datamanager)
-
unterstützt) gibt vor, wie schnell die Änderungen durchgeführt werden sollen. Der ent­sprechende Wert wird in der angegebenen Zeit schrittweise vom alten zum neuen Wert hin verändert. Ist RmpTms = 0 (Standardwert) oder wird dieser Wert gar nicht unterstützt, wird sofort der neue Wert aktuell.
DE
21
Page 22
Vorzeichenkon-
(+kVAr, +kVArh)
(-kW,
-kWh)
(+kW, +kWh)
(-kVAr, -kVArh)
90°
180°
270°
Quadrant 1
Quadrant 4
Quadrant 2
Quadrant 3
Power factor sign
convention
EEI: +
(Leading, capacitive)
Power factor sign
convention
EEI: +
(Leading, capacitive)
Power factor sign
convention
EEI: -
(Lagging, inductive)
Power factor sign
convention
EEI: -
(Lagging, inductive)
ϕ
ϕ
ϕ
ϕ
Apparent Power (VA)
Apparent Power (V
A
)
Apparent Power (VA)
Ap
par
ent
P
ower (VA)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
vention für den Power Factor
Auf der Karte gespeicherte Werte
Die EEI-Vorzeichenkonvention1) für den Power Factor entspricht der SunSpec Spezifikation, und basiert auf den Angaben aus dem “Handbook for Electricity Metering“ und der IEC 61557-12 (2007).
Der Power Factor ist:
negativ bei positiver Blindleistung (übererregt, Quadrant 1)
-
positiv bei negativer Blindleistung (untererregt, Quadrant 4)
-
1)
EEI = Edison Electrical Institute
Nameplate Model (IC120):
WRtg
-
-
AC Nennleistung des Wechselrichters
VARtg
AC Nennscheinleistung des Wechselrichters Standardwert = WRtg
VArRtgQ1
-
Maximale AC Blindleistung im 1. Quadranten (übererregt). Standardwert wird anhand von verfügbarem cos Phi (0.85) und der Nenn­scheinleistung berechnet. Skalierungsfaktor VArRtg_SF beachten
VArRtgQ4
-
Maximale AC Blindleistung im 4. Quadranten (untererregt). Standardwert wird anhand von verfügbarem cos Phi (0.85) und der Nenn­scheinleistung berechnet. Skalierungsfaktor VArRtg_SF beachten
ARtg
-
AC Nennstrom des Wechselrichters
22
Page 23
Basic Settings Model (IC121):
WMax
-
Maximale AC Leistung Standardwert = WRtg
VRef
-
Referenzspannung am Einspeisepunkt
VRefOfs
-
Abweichung zur Referenzspannung
VMax
-
Maximale AC Spannung
VMin
-
Minimale AC Spannung
VAMax
-
Maximale AC Scheinleistung Standardwert = VARtg
Werte speichern
Bei nicht vorhandenen oder falsch angezeigten Daten können die oben angeführ­ten Werte angepasst und am Datamanager gespeichert werden. Änderungen haben derzeit keinen Einfluss auf die Funktionsweise des Datama­nagers oder der Wechselrichter und dienen ausschließlich zur Anzeige von gerätespezifischen Informationen. Um die Werte zu speichern, muss das Register F_Store_Data (213) eines beliebi- gen Wechselrichters mit 0xFFFF beschrieben werden. Anschließend sind die Werte für alle Wechselrichter permanent gespeichert und auch nach einem AC Reset des Datamanagers verfügbar.
DE
Skalierungsfak­toren
Werte löschen
Es können nur die Werte für einen einzelnen Wechselrichter gelöscht werden. Dazu ist Register F_Delete_Data (212) des Wechselrichters mit 0xFFFF zu be- schreiben.
WICHTIG! Skalierungsfaktoren (auch bei Auswahl von "Float" möglich!) sind nicht statisch, auch wenn diese als Fixwert in dieser BA angeben werden. Skalierungsfaktoren können sich bei jeder Firmware-Änderung verändern (z.B.: Skalierungsfaktor für Leistungsvorgabe).
Skalierungsfaktoren mit unveränderlichen Werten sind in den Tabellen in der Spalte "Range of values" angeführt. Aktuelldaten (Daten von Wechselrichtern, String Controls und Energiezählern) können veränderliche Skalierungsfaktoren haben. Diese müssen aus den entspre­chenden Registern ausgelesen werden.
Der Datentyp „sunssf“ ist ein signed integer mit 16bit. Rechenbeispiel: (Model 160): 1_DCW = 10000, DCW_SF = -1 -> Leistung = 10000 x 10^(-1) = 1000 W
Nicht beschreib­bare Register
Folgende Register können nicht beschrieben werden:
Read-Only (R) Register
-
aktuell nicht unterstützte Register
-
23
Page 24
HINWEIS!
Wird versucht solche Register zu beschreiben, gibt der Wechselrichter keinen Exception Code zurück! Die in diese Register geschriebenen Werte werden ohne Fehlermeldung igno­riert. Im Model 123 und 124 kommt eine Exception beim Schreibzugriff, wenn die Steuerungsmöglichkeit im lokalen Webinterface deaktiviert wurden.
Schreiben ungültiger Werte
Einige Register lassen nur bestimmte Werte zu. Die gültigen Werte sind der je­weiligen Register-Tabelle zu entnehmen. Wird ein ungültiger Wert in ein Register geschrieben, so gibt der Fronius Datama­nager den Exception Code 3 (Illegal Data Value) zurück. Der ungültige Wert wird ignoriert. Werden mehrere Register auf einmal beschrieben, werden alle gültigen Werte bis zu dem Register mit dem ungültigen Wert geschrieben. Anschließend wird der Schreibvorgang abgebrochen.
24
Page 25
Einstellungen - Modbus
(1)
(2)
Allgemeines Über die Web-Schnittstelle des Fronius Datamanager können via Internet-Brow-
ser Einstellungen für die Modbus Anbindung vorgenommen werden, welche über das Modbus-Protokoll nicht ansprechbar sind.
HINWEIS!
Bei Datenübertragung über Modbus RTU ist die Verwendung der Web-Schnitt­stelle nicht erforderlich, da Modbus RTU werkseitig aktiviert ist, außer bei Symo Hybrid.
DE
Einstellungen ­Modbus öffnen
Fronius Datamanager installieren
1
=> siehe Bedienungsanleitung Fronius Datamanager Internet-Browser öffnen
2
Im Adressfeld des Internet-Browsers eingeben:
3
die IP Adresse des Fronius Datamanager (unter Systeminformationen
-
abrufbar) oder Hostnamen und Domainnamen des Fronius Datamanager
-
Die Startseite der Web-Schnittstelle wird angezeigt Den Bereich “Einstellungen“ (1) auswählen
4
Den Menüpunkt “Modbus“ (2) öffnen
5
HINWEIS!
Beim Fronius Datamanager 2.
0 ist die ‘Datenausgabe über Modbus‘ werkseitig auf rtu eingestellt. Die Auswahlmöglichkeit rtu ist beim Datamanager 1 nicht vorhanden.
25
Page 26
Einstellungen -
(1) (2) (3)
(4)
(5) (6)
Modbus öffnen
Datenausgabe über Modbus
Die Weboberfläche des Wechselrichters öffnen
1
Den Bereich “Kommunikation“ (1) auswählen
2
Den Menüpunkt “Modbus“ (2) öffnen
3
Datenausgabe über Modbus
Hinweis! Befindet sich ein unter Einstellungen / Zähler konfigurierter Modbus
Energiezähler (z. B. Fronius Smart Meter) im System, kann die Einstellung „rtu“ nicht verwendet werden. Bei Auswahl von „rtu“ wird in diesem Fall die Datenaus­gabe per Modbus automatisch deaktiviert. Diese Änderung ist erst nach einem erneuten Laden der Datamanager Web-Seite sichtbar.
Ein über RS485 an den Datamanager angeschlossener Energiezähler kann auch per Modbus TCP über die entsprechenden SunSpec Modelle ausgelesen werden. Die Modbus ID für den Zähler ist 240.
(1) aus
Aktivierung des Modbus Dienstes und Auswahl des Übertragungs-Pro­tokolles. Wird der Modbus Dienst aktiviert, stehen weitere Eingabefelder zur Verfügung.
Das Übertragungs-Protokoll Modbus rtu ist nur beim Fronius Datama­nager 2.0 verfügbar.
keine Datenausgabe über Modbus
Ist die Datenausgabe über Modbus deaktiviert, werden über Modbus an die Wechselrichter übertragene Steuerungsbefehle zurückgesetzt, z.B. keine Leistungsreduktion oder keine Blindleistungs-Vorgabe.
26
(2) tcp
Datenausgabe über Modbus tcp
Page 27
(2)
(2a) (2b)
(2c)
(2d)
(2e)
(2f)
(2g)
(2h)
(2a) Modbus Port
Nummer des TCP Ports, der für die Modbus-Kommunikation zu verwen­den ist.
Voreinstellung: 502 Port 80 kann hierfür nicht verwendet werden.
(2b) String Control Adress-Offset
Offset-Wert für die Adressierung von Fronius String Controls per Mod­bus. Für weitere Details siehe Abschnitt "Modbus Geräte-ID für Fronius String Controls".
Sunspec Model Type
zum Auswählen des Datentyps von Datenmodellen für Wechselrichter und von Datenmodellen für Energiezähler
DE
(2c) float
Darstellung als Gleitkommazahlen SunSpec Inverter Model 111, 112 oder 113 SunSpec Meter Model 211, 212 oder 213
(2d) int+SF
Darstellung als ganze Zahlen mit Skalierungsfaktoren SunSpec Inverter Model 101, 102 oder 103 SunSpec Meter Model 201, 202 oder 203
WICHTIG! Da die verschiedenen Modelle über unterschiedliche Anzah-
len an Registern verfügen, ändern sich durch den Wechsel des Daten­typs auch die Registeradressen aller nachfolgenden Modelle.
(2e) Demo Modus
Der Demo Modus dient zur Implementierung oder Validierung eines Modbus Masters. Er ermöglicht es, Wechselrichter-, Energiezähler- und String Control Daten auszulesen, ohne dass ein Gerät wirklich ange­schlossen oder aktiv ist. Es werden für alle Register immer dieselben Daten zurückgeliefert.
(2f) Wechselrichter-Steuerung über Modbus
Wenn diese Option aktiviert ist, können die Wechselrichter über Mod­bus gesteuert werden. Das Auswahlfeld Steuerung einschränken wird angezeigt. Zur Wechselrichter-Steuerung gehören folgende Funktionen:
Ein / Aus
-
Leistungsreduktion
-
Vorgabe eines konstanten Leistungs-Faktors cos Phi
-
Vorgabe einer konstanten Blindleistung
-
Batteriesteuerungsvorgaben bei Symo Hybrid mit Batterie
-
(3) rtu
Datenausgabe über Modbus rtu
27
Page 28
(3a)
(3b)
(3)
(3c)
(3d)
(3e)
(3f) (3g)
(3a) Baudrate
zum Eingeben der Baudrate,
(3b) Parität
Auswahlfeld zum Eingeben der Parität
(3c) String Control Adress-Offset
Offset-Wert für die Adressierung von Fronius String Controls per Mod­bus. Für weitere Details siehe Abschnitt "Modbus Geräte-ID für Fronius String Controls".
Sunspec Model Type
zum Auswählen des Datentyps von Datenmodellen für Wechselrichter
(3d) float
Darstellung als Gleitkommazahlen SunSpec Inverter Model 111, 112 oder 113
(3e) int+SF
Darstellung als ganze Zahlen mit Skalierungsfaktoren SunSpec Inverter Model 101, 102 oder 103
WICHTIG! Da die verschiedenen Modelle über unterschiedliche Anzah-
len an Registern verfügen, ändern sich durch den Wechsel des Daten­typs auch die Registeradressen aller nachfolgenden Modelle.
28
(3f) Demo Modus
Der Demo Modus dient zur Implementierung und Validierung eines Modbus Masters. Er ermöglicht es, Wechselrichter-, Energiezähler- und String Control Daten auszulesen, ohne dass ein Gerät wirklich ange­schlossen oder aktiv ist. Es werden für alle Register immer dieselben Daten zurückgeliefert.
(3g) Wechselrichter-Steuerung über Modbus
Wenn diese Option aktiviert ist, erfolgt die Wechselrichter-Steuerung über Modbus. Zur Wechselrichter-Steuerung gehören folgende Funktionen:
Ein / Aus
-
Leistungsreduktion
-
Vorgabe eines konstanten Power Factors (cos Phi)
-
Vorgabe einer konstanten Blindleistung
-
Batteriesteuerungsvorgaben bei Symo Hybrid mit Batterie
-
Page 29
(4) Steuerungs-Prioritäten
Die Steuerungs-Prioritäten legen fest, welcher Dienst bei der Wechsel­richtersteuerung priorisiert wird.
1 = höchste Priorität, 3 = niedrigste Priorität
Die Steuerungs-Prioritäten können nur im Menüpunkt EVU EDITOR geändert werden.
(5) Schaltfläche Übernehmen / Speichern
(6) Schaltfläche Abbrechen / Eingaben verwerfen
DE
Steuerung ein­schränken
Die Option “Steuerung einschränken“ ist nur beim Übertragungsprotokollen tcp verfügbar. Sie dient dazu Wechselrichter-Steuerungsbefehle durch Unbefugte zu verhin­dern, indem die Steuerung nur für bestimmte Geräte erlaubt wird.
Steuerung einschränken
Wenn diese Option aktiviert ist, dürfen nur bestimmte Geräte Steuerungsbefehle schicken.
IP-Adresse
Um die Wechselrichter-Steuerung auf ein oder mehrere Geräte zu beschränken, werden in diesem Feld die IP-Adressen jener Geräte eingetragen die Befehle an den Wechselrichter senden dürfen. Mehrere Einträge werden durch Beistriche getrennt.
Beispiele:
eine IP-Adresse: 98.7.65.4
-
Steuerung nur durch IP Adresse 98.7.65.4 zulässig
-
mehrere IP-Adressen: 98.7.65.4,222.44.33.1
-
Steuerung nur durch IP Adressen 98.7.65.4 und 222.44.33.1 zulässig
-
IP-Adressbereich z.B. von 98.7.65.1 bis 98.7.65.254 (CIDR Notation):
-
98.7.65.0/24 Steuerung nur durch IP Adressen 98.7.65.1 bis 98.7.65.254 zulässig
-
Änderungen speichern oder verwerfen
Speichert die Einstellungen und zeigt eine Meldung an, dass die Speiche­rung erfolgreich war. Wird der Menüpunkt “Modbus“ verlassen ohne zu speichern, so werden alle vor­genommenen Änderungen verworfen.
Stellt eine Sicherheitsabfrage ob die vorgenommenen Änderungen tatsächlich verworfen werden sollen, und stellt dann die zuletzt gespeicherten Werte wieder her.
29
Page 30
Fronius Register
Fronius Register Diese Register gelten nur für Wechselrichter. Für Fronius String Controls und
Energiezähler sind diese Register nicht relevant.
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
Status-Code des Wechselrichters
Löschen der Event Flags und des Status­Codes
Das Register F_Active_State_Code (214) zeigt den Status-Code des Wechsel- richter an der gerade aufgetreten ist. Dieser wird eventuell auch am Display des Wechselrichter angezeigt. Dieser Code wird auch als Event Flag im Inverter Mo­dell dargestellt. Der angezeigte Code bleibt so lange aktiv bis der entsprechende Status nicht mehr am Wechselrichter anliegt. Alternativ kann der Status auch per Register F_Reset_All_Event_Flags gelöscht werden.
Die Event Flags in den Inverter Models (101, 102, 103 und 111, 112, 113) bleiben so lange aktiv bis der entsprechende Status nicht mehr am Wechselrichter an­liegt. Es gibt einige wenige Ausnahmen, wo die Event Flags nicht mehr gelöscht werden. Daher können die Event Flags und der angezeigte Status-Code per Mod­bus-Befehl zurückgesetzt werden.
0xFFFF in das Register F_Reset_All_Event_Flags (215) schreiben
1
Der Inhalt folgender Register wird gelöscht:
F_Active_State_Code (214)
-
Evt1
-
Evt2
-
EvtVnd1 bis EvtVnd4
-
Daten speichern und löschen
Datentyp ändern Über das Register F_ModelType(216) kann der Datentyp für die Datenmodelle
Schreibt man in das Register F_Store_Data(213) den Wert 0xFFFF werden alle Nennwerte (Ratings) für alle Wechselrichter am Fronius Datamanager gespei­chert. Diese Werte können in den entsprechenden Registern des Nameplate Mo­dels und des Basic Settings Models verändert werden. Dies kann nützlich sein, wenn z. B. für ein Gerät keine Nennwerte automatisch ermittelt werden konnten und man die Werte manuell eintragen will.
Will man die gespeicherten Werte für einen bestimmten Wechselrichter löschen, muss man in das Register F_Delete_Data(212) den Wert 0xFFFF schreiben. Dann werden die Werte nur für diesen Wechselrichter gelöscht. Das Löschen kann im­mer nur auf den Wechselrichter angewendet werden, mit dem gerade kommuni­ziert wird.
für Wechselrichter und Energiezähler ausgewählt werden. Entweder kann die Darstellung als Gleitkommazahlen (float, Standard) oder als ganze Zahlen mit Skalierungsfaktoren (int+SF) ausgewählt werden.
30
Page 31
HINWEIS!
Diese Einstellung betrifft nur das Inverter Model (Wechselrichter) und das Me­ter Model (Energiezähler).
Alle anderen Models verwenden weiterhin ganze Zahlen und Skalierungsfakto­ren. Diese Einstellung funktioniert gleich wie die über das Webinterface Modbus Ein­stellungen - SunSpec Model Type.
Einstellmöglichkeiten:
Float = 1 (Standard): Inverter Model 111, 112 oder 113; Meter Model 211,
-
212 oder 213 int+SF = 2: Inverter Model 101, 102 oder 103; Meter Model 201, 202 oder
-
203
HINWEIS!
Da die verschiedenen Models über eine unterschiedliche Anzahl an Registern verfügen, ändern sich durch den Wechsel des Datentyps auch die Register­adressen aller nachfolgenden Models.
HINWEIS!
Um irrtümlichen Ändern vorzubeugen, muss eine Änderung der Einstellung in Register F_ModelType unmittelbar nach Schreiben des Registers durch erneu­tes Schreiben des Wertes 0x06 bestätigt werden.
Erfolgt dies nicht wird die Änderung nach einigen Sekunden zurückgesetzt.
DE
Anlagensummen Über die folgenden Register können Leistungs- und Energiedaten von allen per
Solar Net mit diesem Fronius Datamanager verbundenen Wechselrichtern, abge­fragt werden. Die Werte werden in Watt (W) bzw. Wattstunden (Wh) abgebildet und benötigen keine Skalierungsfaktoren.
F_Site_Power(500-501): Leistung
-
F_Site_Energy_Day(502-505): Tagesenergie
-
F_Site_Energy_Year(506-509): Jahresenergie
-
F_Site_Energy_Total(510-513): Gesamtenergie der gesamten Anlage
-
31
Page 32
Common & Inverter Model
Common Block Register
Inverter Model Register
Die Beschreibung des Common Block inklusive der SID Register (Register 40001-40002) zur Identifizierung als SunSpec Gerät gilt für jeden Gerätetyp (Wechselrichter, String Control, Energiezähler). Jedes Gerät besitzt einen eige­nen Common Block, in dem Informationen über das Gerät (Modell, Seriennum­mer, SW Version, etc.) aufgeführt sind.
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
Für die Wechselrichter-Daten werden zwei verschiedene SunSpec Models un­terstützt:
das standardmäßig eingestellte Inverter Model mit Gleitkomma-Darstellung
-
(Einstellung „float“; 111, 112 oder 113) das Inverter Model mit ganzen Zahlen und Skalierungsfaktoren
-
(Einstellung „int+SF“; 101, 102 oder 103)
Die Registeranzahl der beiden Model-Typen ist unterschiedlich!
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
SunSpec Opera­ting Codes
Fronius Opera­ting Codes
Name Wert Beschreibung
I_STATUS_OFF 1 Wechselrichter ist aus
I_STATUS_SLEEPING 2 Auto-Shutdown
I_STATUS_STARTING 3 Wechselrichter startet
I_STATUS_MPPT 4 Wechselrichter arbeitet normal
I_STATUS_THROTTLED 5 Leistungsreduktion aktiv
I_STATUS_SHUT­TING_DOWN
I_STATUS_FAULT 7 Ein oder mehr Fehler existieren,
I_STATUS_STANDBY 8 Standby
* Inverter Model Register
Name Wert Beschreibung
I_STATUS_OFF 1 Wechselrichter ist aus
6 Wechselrichter schaltet ab
siehe St *oder Evt * Register
32
I_STATUS_SLEEPING 2 Auto-Shutdown
I_STATUS_STARTING 3 Wechselrichter startet
Page 33
Name Wert Beschreibung
I_STATUS_MPPT 4 Wechselrichter arbeitet normal
I_STATUS_THROTTLED 5 Leistungsreduktion aktiv
I_STATUS_SHUTTING_DOWN 6 Wechselrichter schaltet ab
I_STATUS_FAULT 7 Ein oder mehr Fehler existieren,
siehe St * oder Evt * Register
I_STATUS_STANDBY 8 Standby
I_STATUS_NO_BUSINIT 9 Keine SolarNet Kommunikation
I_STATUS_NO_COMM_INV 10 Keine Kommunikation mit
Wechselrichter möglich
I_STATUS_SN_OVERCURRENT 11 Überstrom an SolarNet Stecker
erkannt
I_STATUS_BOOTLOAD 12 Wechselrichter wird gerade up-
gedatet
I_STATUS_AFCI 13 AFCI Event (Arc-Erkennung)
* Inverter Model Register
DE
33
Page 34
Nameplate Model (120)
Allgemeines Dieses Modell entspricht einem Leistungsschild. Folgende Daten können ausge-
lesen werden:
DERType (3)
-
Art des Geräts. Das Register liefert den Wert 4 zurück (PV-Gerät)
WRtg (4)
-
Nennleistung des Wechselrichters
VARtg (6)
-
Nenn-Scheinleistung des Wechselrichters
VArRtgQ1 (8) - VArRtgQ4 (11)
-
Nenn-Blindleistungswerte für die vier Quadranten
ARtg (13)
-
Nennstrom des Wechselrichters
PFRtgQ1 (15) – PFRtgQ4 (18)
-
Minimale Werte für den Power Factor für die vier Quadranten
Nameplate Re­gister
Startadresse:
bei Einstellung „float“: 40131
-
bei Einstellung „int+SF“: 40121
-
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
34
Page 35
Basic Settings Model (121)
Local Bus
Utility Power System
Local Power System with
Line Resistors
DER interconnections
Point of Common
Coupling (PCC)
Example Settings
VRef = 120V
VRefOfs = 2V
VRefOfs = 4V
VRefOfs = 3V
= Electrical Connection Point (ECP)
DE
Basic Settings Register
Referenzspan­nung
Startadresse:
bei Einstellung „float“: 40159
-
bei Einstellung „int+SF“: 40149
-
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
VRef (4)
Die Referenzspannung ist die Spannung an jenem gemeinsamen Anschlusspunkt, an welchem das lokale Netz mit dem öffentlichen Stromnetz verknüpft ist, und entspricht der Nennspannung des Wechselrichters. => siehe Abbildung “Gemeinsamer Anschlusspunkt“
Die Angabe erfolgt in Volt im Bereich von 0 (0x0000) bis 400 (0x0190).
Abweichung zur Referenzspan­nung
Gemeinsamer Anschlusspunkt
VRefOfs (5)
Je nach Verschaltung des lokalen Netzes kann es am Anschlusspunkt jedes ein­zelnen Wechselrichters an das lokale Netz zu einer Abweichung zur Referenz­spannung kommen (siehe Abbildung “Gemeinsamer Anschlusspunkt“).
Die Angabe erfolgt in Volt im Bereich -20 (0xFFEC) bis 20 (0x0014).
35
Page 36
Extended Measurements & Status Model (122)
Allgemeines Dieses Modell liefert einige zusätzliche Mess- und Statuswerte, die das normale
Inverter Model nicht abdeckt:
PVConn (3)
-
Dieses Bitfeld zeigt den Status des Wechselrichter an
Bit 0: Verbunden
-
Bit 1: Ansprechbar
-
Bit 2: Arbeitet (Wechselrichter speist ein)
-
ECPConn (5)
-
Dieses Register zeigt den Verbindungsstatus zum Netz an
ECPConn = 1: Wechselrichter speist gerade ein
-
ECPConn = 0: Wechselrichter speist nicht ein
-
ActWH (6 - 9)
-
Wirkenergiezähler
StActCtl (36 - 37)
-
Bitfeld für zurzeit aktive Wechselrichter-Modi
Bit 0: Leistungsreduktion (FixedW; entspricht WMaxLimPct Vorgabe)
-
Bit 1: konstante Blindleistungs-Vorgabe (FixedVAR; entspricht VAr-
-
MaxPct) Bit 2: Vorgabe eines konstanten Power Factors (FixedPF; entspricht Out-
-
PFSet)
Extended Mea­surements & Status Register
TmSrc (38 - 41)
-
Quelle für die Zeitsynchronisation. Das Register liefert den String „RTC“ zurück.
Tms (42 - 43)
-
Aktuelle Uhrzeit und Datum der RTC Angegeben werden die Sekunden vom 1. Jänner 2000 00:00 (UTC) bis zur aktuellen Zeit
Startadresse:
bei Einstellung „float“: 40191
-
bei Einstellung „int+SF“: 40181
-
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
36
Page 37
Immediate Controls Model (123)
Allgemeines Mit den Immediate Controls können folgende Einstellungen am Wechselrichter
vorgenommen werden:
Unterbrechung des Einspeisebetriebs des Wechselrichters (Standby)
-
Konstante Reduktion der Ausgangsleistung
-
Vorgabe eines konstanten Power Factors
-
Vorgabe einer konstanten relativen Blindleistung
-
Am Webinterface des Wechselrichters muss in den Einstellungen unter Modbus die Einstellung „Wechselrichter-Steuerung über Modbus“ aktiviert sein, um hier schreibend aktiv werden zu können. Je nach eingestellter Steuerungs-Priorität (IO-Steuerung, Dynamische Leistungsreduzierung oder Steuerung über Modbus) werden Modbus Kommandos eventuell nicht angenommen.
DE
Immediate Con­trols Register
Standby Conn_WinTms (3) bis Conn (5)
Startadresse:
bei Einstellung „float“: 40237
-
bei Einstellung „int+SF“: 40227
-
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
Diese Register dienen zur Steuerung des Standby Modus (kein Einspeisebetrieb) des Wechselrichters.
Conn_WinTms (3) und Conn_RvrtTms (4) Mit diesen Registern kann das Verhalten des Wechselrichters zeitlich gesteuert werden. => siehe Abschnitt “Zeitverhalten der unterstützten Betriebsarten“. Als Standard ist für alle Register 0 vorgegeben.
Conn (5)
Register Conn zeigt an, ob der Wechselrichter aktuell einspeist (0 = Standby, 1 = Einspeisebetrieb).
Um den Wechselrichter in den Standby zu schalten schreibt man in dieses
-
Register den Wert 0 Um den Wechselrichter wieder zu aktivieren schreibt man in dieses Register
-
den Wert 1
Leistungsreduk­tion
HINWEIS!
Ob der Wechselrichter einspeist oder nicht kann auch über das Register ECP­Conn aus dem Extended Measurements and Status Model ausgelesen werden.
WMaxLimPct (6) bis WMaxLim_Ena (10) Über diese Register kann beim Wechselrichter eine Reduktion der Ausgangsleis­tung eingestellt werden.
WMaxLimPct (6) In Register WMaxLimPct können Werte zwischen 0% und 100% eingetragen wer-
37
Page 38
den. Abhängig von der Software-Version des Wechselrichters können Werte klei­ner als 10 zu einem erzwungenen Standby des Wechselrichters führen (kein Ein­speisebetrieb). Die Werte beschränken die maximal mögliche Ausgangsleistung des Gerätes, und haben daher nicht unbedingt eine Auswirkung auf die aktuelle Leistung.
WICHTIG! Den Skalierungsfaktor für dieses Register beachten! Weitere Informationen unter: http://sunspec.org/wp-content/uploads/2015/06/SunSpec-Information-Mo­dels-12041.pdf
WMaxLimPct_WinTms (7), WMaxLimPct_RvrtTms (8)
Mit diesen Registern kann das Verhalten des Wechselrichters für diese Betriebs­art zeitlich gesteuert werden. => siehe Abschnitt “Zeitverhalten der unterstütz­ten Betriebsarten“. Als Standard ist für alle Register 0 vorgegeben.
WMaxLim_Ena (10)
Zum Starten und Beenden diese Betriebsart
Wert 1 in das Register WMaxLim_Ena schreiben = Betriebsart starten
-
Wert 0 in das Register WMaxLim_Ena schreiben = Betriebsart beenden
-
HINWEIS!
Um bei einer aktiven Betriebsart Werte zu verändern (z.
B. ein anderes Leistungslimit oder eine andere Rückkehrzeit einstellen), folgen­dermaßen vorgehen:
neuen Wert in das entsprechende Register schreiben
die Betriebsart über Register WMaxLim_Ena erneut starten
Beispiel: Leistungsreduk­tion einstellen
Wenn mit Funktionscode 0x10 (write multiple registers) gearbeitet wird, kann ei­ne Performance-Verbesserung bei den Leistungsvorgaben erreicht werden. Es kann mit nur einem statt zwei Modbusbefehlen die Leistung und das Enable gleichzeitig vorgegeben werden. Es können alle 5 Register (WMaxLimPct, WMaxLimPct_WinTms, WMaxLimPct_RvrtTms, WMaxLimPct_RmpTms, WMaxLim_Ena) mit einem Befehl geschrieben werden. Das Schreiben auf das nicht-unterstützte "Read Only"-Register WMaxLimPct_RmpTms erfolgt ohne Rückgabe eines sonst üblichen Exception-(Fehler)-Codes. Z.B. Registerwerte für 80% Vorgabe ohne Timingvorgaben: 8000, 0, 0, 0, 1
Wert für die Reduktion der Ausgangsleistung in Register WMaxLimPct
1
schreiben (z. B. 30 für 30%)
Optional die Start- und Rückkehrzeit über Register WMaxLimPct_WinTms
2
und WMaxLimPct_RvrtTms einstellen Durch Schreiben von 1 in Register WMaxLim_Ena die Betriebsart starten
3
WICHTIG! Den Skalierungsfaktor für dieses Register beachten!
Weitere Informationen unter: http://sunspec.org/wp-content/uploads/2015/06/SunSpec-Information-Mo­dels-12041.pdf
38
Page 39
Beispiel: Ändern der Rückkehrzeit bei aktiver Leis­tungsreduktion
Leistungsreduktion ursprünglich mit WMaxLimPct_RvrtTms = 0 gestartet, das heißt die Betriebsart muss manuell beendet werden.
WMaxLimPct_RvrtTms auf z.B. 30 setzen
1
Durch Schreiben von 1 in Register WMaxLim_Ena Änderung übernehmen
2
Betriebsart wird nach 30 Sekunden selbständig beendet und auf die
-
nächste Priorität zurückgestellt (z.B.: Dynamische Leistungsreduzierung)
DE
Auswirkungen der Blindleis­tungs-Vorgaben auf die Wirkleis­tung
Der Blindleistungs-Betrieb wird grundsätzlich durch den maximalen Ausgangs­strom (die maximale Scheinleistung) sowie durch die operative Blindleistungs­Grenze des Wechselrichters begrenzt:
Fronius Galvo cos phi = 0,85, VArrel = 53 %
-
Fronius Symo cos phi = 0,7, VArrel = 71 %
-
HINWEIS!
Aufgrund der aktuellen technischen Gegebenheiten kann per Modbus nur ein cos phi bis zu maximal ±0,80 vorgegeben werden.
VAr
Vorgaben können unter Umständen aber einen niedrigeren Wert erzwin-
rel
gen.
Die folgende Abbildung zeigt den möglichen Arbeitsbereich des Wechselrichters. Alle durch Wirkleistung P und Blindleistung Q definierten gültigen Arbeitspunkte sind innerhalb des grauen Bereiches.
untererregt (induktiv) übererregt (kapazitiv)
Blindleistung und Power Factor
Legende:
W Leistung VAr
x
W VAr
max
Nennleistung Blindleistung
VAr
Nenn-Blindleistung
ma
relative Blindleistung
rel
(VAr/VArmax)
39
Page 40
Konstanter Power Factor
OutPFSet (11) bis OutPFSet_Ena (15) Über diese Register kann beim Wechselrichter ein konstanter Power Factor vor­gegeben werden.
OutPFSet (11)
In Register OutPFSet können positive und negative Werte für den Power
-
Factor eingegeben werden Die Werte sind mit Faktor im Register OutPFSet_SF zu skalieren
-
Die minimal möglichen Werte hängen vom Wechselrichter-Typ ab und
-
können dem Nameplate Model entnommen werden
HINWEIS!
Der Wert für den Power Factor muss mit dem korrekten Vorzeichen eingegeben werden, siehe Abschnitt “Vorzeichenkonvention für den Power Factor“
positiv für untererregt
negativ für übererregt
OutPFSet_WinTms (12), OutPFSet_RvrtTms (13) Mit diesen Registern kann das Verhalten des Wechselrichters für diese Betriebs­art zeitlich gesteuert werden. => siehe Abschnitt “Zeitverhalten der unterstütz­ten Betriebsarten“. Als Standard ist für alle Register 0 vorgegeben.
Beispiel: Konstanten Power Factor vorgeben
OutPFSet_Ena (15)
Zum Starten und Beenden dieser Betriebsart
Wert 1 in das Register OutPFSet_Ena schreiben = Betriebsart starten
-
Wert 0 in das Register OutPFSet_Ena schreiben = Betriebsart beenden
-
HINWEIS!
Um bei einer aktiven Betriebsart Werte zu verändern (z.B. ein anderen Power Factor oder eine andere Rückkehrzeit einstellen), folgendermaßen vorgehen:
neuen Wert in das entsprechende Register schreiben
die Betriebsart über Register OutPFSet_Ena erneut starten
Wert für den Power Factor in Register OutPFSet schreiben
1
(z. B. 950 für 0,95) Optional die Start- und Rückkehrzeit über Register OutPFSet_WinTms und
2
OutPFSet_RvrtTms einstellen Durch Schreiben von 1 in Register OutPFSet_Ena die Betriebsart starten
3
40
Page 41
Konstante relati­ve Blindleistung
VArMaxPct (17) bis VArPct_Ena (23) Über diese Register kann am Wechselrichter ein konstanter Wert für die Blind­leistung eingestellt werden, die der Wechselrichter liefern soll.
VArMaxPct (17)
zum Einstellen eines Wertes für die konstante Blindleistung
-
Die minimal und maximal möglichen Werte hängen vom Wechselrichter-Typ
-
ab
HINWEIS!
Im praktischen Betrieb wird die tatsächlich verfügbare Blindleistung durch die Betriebsgrenzen des Wechselrichters vorgegeben.
Deshalb kann die Blindleistungs-Vorgabe nur dann erreicht werden, wenn ausrei­chend Wirkleistung eingespeist wird. Wird zu wenig Wirkleistung eingespeist, arbeitet der Wechselrichter an der Be­triebsgrenze.
VArPct_WinTms (19), VArPct_RvrtTms (20)
Mit diesen Registern kann das Verhalten des Wechselrichters für diese Betriebs­art zeitlich gesteuert werden. => siehe Abschnitt “Zeitverhalten der unterstütz­ten Betriebsarten“. Als Standard ist für alle Register 0 vorgegeben.
DE
Beispiel: Konstante Blind­leistung vorge­ben
VArPct_Mod (22)
dieses Register kann nicht verändert werden
-
liefert die (derzeit) unterstützte Betriebsart zurück
-
Blindleistung in Prozent der maximal möglichen Blindleistung
VArPct_Ena (23)
Zum Starten und Beenden dieser Betriebsart
Wert 1 in das Register VArPct_Ena schreiben = Betriebsart starten
-
Wert 0 in das Register VArPct_Ena schreiben = Betriebsart beenden
-
HINWEIS!
Um bei einer aktiven Betriebsart Werte zu verändern (z.
B. ein andere Blindleistung oder eine andere Rückkehrzeit einstellen), folgender­maßen vorgehen:
neuen Wert in das entsprechende Register schreiben
die Betriebsart über Register VArPct_Ena erneut starten
Wert für die relative Blindleistung in Register VArMaxPct schreiben
1
(z. B. 80 für 80%) Optional die Start- und Rückkehrzeit über Register VArPct_WinTms und
2
VArPct_RvrtTms einstellen Durch Schreiben von 1 in Register VArPct_Ena den Betriebsart starten
3
41
Page 42
Multiple MPPT Inverter Extension Model (160)
Allgemeines Das Multiple MPPT Inverter Extension Model beinhaltet die Werte von bis zu
zwei DC Eingängen des Wechselrichters.
Verfügt der Wechselrichter über zwei DC Eingänge, so werden Strom, Spannung, Leistung, Energie und Statusmeldungen der einzelnen Eingänge hier aufgelistet. Im Inverter Model (101 -103 oder 111 - 113) wird in diesem Fall nur die gesamte DC Leistung beider Eingänge ausgegeben. DC Strom und DC Spannung werden als "not implemented" angezeigt.
Sollte der Wechselrichter nur über einen DC Eingang verfügen, werden alle Wer­te des zweiten Strings auf "not implemented" gesetzt (ab Register 2_DCA). Die Bezeichnung des zweiten Eingangs (Register 2_IDStr) lautet in diesem Fall "Not supported". Die Werte des ersten (und einzigen) Eingangs werden normal ange­zeigt.
Multiple MPPT Inverter Extensi­on Register
Start Offset
40 40 1 R 0x032_DCA uint16 A DCA_SFDC Current
41 41 1 R 0x032_DCV uint16 V DCV_SFDC Voltage
42 42 1 R 0x032_DCW uint16 W DCW_SFDC Power
1)
Summenwerte
Size
End Offset
Startadresse:
bei Einstellung „float“: 40263
-
bei Einstellung „int+SF“: 40253
-
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
R/W
Function codes
Name
Type
Units
Scale factor
Description
Range of values
1)
1)
1)
DCW = Summe der DC-Leistungen
Bei Hybrid-Systemen: String 1 = PV-Eingang String 2 = Storage
Bei Entladung des Storage: DCW = 1_DCW + 2_DCW Bei Ladung des Storage: DCW = 1_DCW - 2_DCW
Beispiele
42
Page 43
a) PV-Eingang: 2000 W Produktion
==>
Storage: 1000 W Entladen ==> 2_DCW = 1000 W
DCW = 1_DCW + 2_DCW = 1000 W + 2000 W = 3000 W
1_DCW = 2000 W
DE
b) PV-Eingang: 2000 W Produktion
==>
Storage: - 1000 W Laden ==> 2_DCW = 1000 W
DCW = 1_DCW + 2_DCW = 2000 W + (- 1000 W) = 1000 W
1_DCW = 2000 W
(nur der Absolutwert kann über dieses Register an­gezeigt werden)
43
Page 44
Basic Storage Control Model (124)
Allgemeines Dieses Model ist nur für Wechselrichter mit einer Speicherlösung verfügbar.
Mit dem Basic Storage Control Model können folgende Einstellungen am Wech­selrichter vorgenommen werden:
Vorgabe eines Leistungsfensters, in dem sich die Lade-/Entladeleistung vom
-
Energiespeicher bewegen soll. Vorgabe eines minimalen Ladestandes, den der Energiespeicher nicht unter-
-
schreiten soll Ladung des Energiespeichers vom Netz erlauben/verbieten
-
HINWEIS!
Alle Vorgaben verstehen sich als Empfehlungen! Der Wechselrichter kann von den Vorgaben abweichen, wenn dies aus Gründen der Betriebssicherheit erforderlich ist.
Bereitgestellte Informationen
Das Basic Storage Control Model stellt folgende Informationen lesend zu Verfügung:
WChaMax
Wenn ein Energiespeicher verfügbar ist liefert dieses Register den Bezugs-
-
wert für die Register OutWRte und InWRt zurück. WChaMax := max(MaxChaRte, MaxDisChaRte) Wenn kein Energiespeicher verfügbar ist liefert das Register den Wert 0
-
zurück.
ChaState
Ladestand des Energiespeicher in %:
-
Estimated_Capacity_Remaining [Wh] / Estimated_Capacity_Maximum [Wh]
ChaSt Betriebsstatus des Energiespeichers
OFF: Energiespeicher ist nicht verfügbar
-
EMPTY: Energiespeicher ist derzeit vollständig entladen
-
DISCHARGING: Energiespeicher wird derzeit entladen
-
CHARGING: Energiespeicher wird derzeit geladen
-
FULL: Energiespeicher ist derzeit vollständig geladen
-
HOLDING: Energiespeicher wird derzeit weder geladen noch entladen
-
TESTING: wird während Kalibrations- oder Service-Ladung benutzt
-
Leistungsfens­ter-Vorgaben
44
Am Webinterface des Wechselrichters muss in den Einstellungen unter Modbus die Einstellung „Wechselrichter-Steuerung über Modbus“ aktiviert sein, um hier schreibend aktiv werden zu können. Je nach eingestellter Steuerungs-Priorität (IO-Steuerung, Dynamische Leistungsreduzierung oder Steuerung über Modbus) werden Modbus Kommandos eventuell nicht angenommen.
Für die folgenden Beispiele wird WchaMax = 3300 W angenommen.
Für resultierende Leistungsfenster gilt:
negative Leistungswerte entsprechen einer Ladung des Energiespeichers
-
positive Werte entsprechen einer Entladung des Energiespeichers
-
Page 45
HINWEIS!
Die Werte in den folgenden Beispielen müssen nach dem Lesen und vor dem Schreiben entsprechend ihren Skalierungsfaktoren in den angegebenen Skalie­rungsregistern skaliert werden.
Die Manipulation der Register InWRte, OutWRte und StorCtl_Mod führt zu Änderungen des Batteriestatus in Fronius Solar.web, zum Beispiel „Erzwungene Nachladung“ und „Energiesparmodus“, abhängig von den Benutzereinstellungen und dem aktuellen Status der Batterie.
Beispiel 1: Nur Laden des Energiespeichers erlauben
Dieses Verhalten kann durch Limitierung der maximalen Entladeleistung auf 0% erreicht werden => resultiert in Fenster [-3300 W, 0 W]
OutWRte = 0% (setze Entladelimit auf 0% von WchaMax)
-
StorCtl_Mod = 2 (schaltet Entladegrenzwert aktiv, Bit-Muster: 10)
-
InWRte ist in diesem Fall nicht relevant
-
Beispiel 2: Nur Entladen des Energiespeichers erlauben
Dieses Verhalten kann durch Limitierung der maximalen Ladeleistung auf 0% er­reicht werden => resultiert in Fenster [0 W, 3300 W]
InWRte = 0% (setze Ladelimit auf 0% von WchaMax)
-
StorCtl_Mod = 1 (Bit 1 schaltet Ladegrenzwert aktiv, Bit-Muster: 01)
-
OutWRte ist in diesem Fall nicht relevant
-
DE
Beispiel 3: Weder Laden noch Entladen erlauben
Dieses Verhalten kann durch Limitierung der maximalen Ladeleistung auf 0% und Limitierung der maximalen Entladeleistung auf 0% erreicht werden => resultiert in Fenster [0 W, 0 W]
InWRte = 0% (setze Ladelimit auf 0% von WchaMax)
-
OutWRte = 0% (setze Entladelimit auf 0% von WchaMax)
-
StorCtl_Mod = 3 (schalte beide Grenzwerte aktiv, Bit-Muster: 11)
-
Beispiel 4: Laden und Entladen mit maximal 50% der nominalen Leistung
Dieses Verhalten kann durch Limitierung der maximalen Ladeleistung auf 50% und Limitierung der maximalen Entladeleistung auf 50% erreicht werden => resultiert in Fenster [-1650 W, 1650 W]
InWRte = 50% (setze Ladelimit auf 50% von WchaMax)
-
OutWRte = 50% (setze Entladelimit auf 50% von WchaMax)
-
StorCtl_Mod = 3 (schalte beide Grenzwerte aktiv, Bit-Muster: 11)
-
Beispiel 5: Laden im Bereich von 50% bis 75% der nominalen Leistung
Dieses Verhalten kann durch Limitierung der maximalen Ladeleistung auf 75% und Limitierung der maximalen Entladeleistung auf -50% erreicht werden => resultiert in Fenster [1650 W, 2475 W]
InWRte = 75% (setze Ladelimit auf 75% von WchaMax)
-
OutWRte = -50% (setze Entladelimit auf -50% von WchaMax)
-
StorCtl_Mod = 3 (schalte beide Grenzwerte aktiv, Bit-Muster: 11)
-
Der Batteriestatus in Fronius Solar.web wechselt zu „Erzwungene Nachla-
-
dung“
Beispiel 6: Entladen mit 50% der nominalen Leistung
Dieses Verhalten kann durch Limitierung der maximalen Ladeleistung auf -50% und Limitierung der maximalen Entladeleistung auf 50% erreicht werden => resultiert in Fenster [-1650 W, -1650 W]
45
Page 46
InWRte = -50% (setze Ladelimit auf -50% von WchaMax)
-
OutWRte = 50% (setze Entladelimit auf 50% von WchaMax)
-
StorCtl_Mod = 3 (schalte beide Grenzwerte aktiv, Bit-Muster: 11)
-
Beispiel 7: Laden mit 50% bis 100% der nominalen Leistung
Dieses Verhalten kann durch Limitierung der maximalen Entladeleistung auf
-50% erreicht werden => resultiert in Fenster [1650 W, 3300 W]
OutWRte = -50% (setze Entladelimit auf -50% von WchaMax)
-
StorCtl_Mod = 2 (schaltet Entladegrenzwert aktiv, Bit-Muster: 10)
-
InWRte ist in diesem Fall nicht relevant
-
Der Batteriestatus in Fronius Solar.web wechselt zu „Erzwungene Nachla-
-
dung“
Vorgabe des minmalen Lade­standes
Laden des Ener­giespeichers vom Netz
Basic Storage Controls Regis­ter
Durch Setzen von Register MinRsvPct kann ein minimal zu erhaltender Ladezu­stand des Speichers festgelegt werden. Beispielsweise kann durch Setzen von MinRsvPct=20% eine Reserve von 20% des Ladezustandes reserviert werden, die der Ladezustand nicht unterschreiten soll.
Mit dem Register ChaGriSet kann es dem Wechselrichter erlaubt oder verboten werden, den Speicher vom Netz zu laden. Das Register CharGriSet und das Feld ‚Batterieladung aus EVU Netz erlauben' in den Einstellungen der Fronius Anla­genüberwachung sind UND-verknüpft (Fronius Anlagenüberwachung - Einstel­lungen - EVU-Editor - Batterie Ladung). Soll das Verhalten über das Flag ChaGri­Set gesteuert werden, muss das Häkchen bei ‚Batterieladung aus EVU Netz er­lauben' gesetzt sein.
Die Batterie kann über das Modell IC124 aus dem Standby-Betrieb geweckt wer­den.Wird der SocMin unter den letzten bekannten SoC gesetzt während sich die Batterie im Standby befindet, wird diese aktiviert.
Startadresse:
bei Einstellung „float“: 40313
-
bei Einstellung „int+SF“: 40303
-
Register- und Batteriesta­tusänderungen in Fronius So­lar.web
46
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
Mit Fronius Solar.web können Statusänderungen der Batterie visualisiert werden. Diese Änderungen können in Fronius Solar.web unter der Option Energiebilanz und dann Erzeugung oder Verbrauch eingesehen werden. Die Änderungen sind mit einem Blasenstatus gekennzeichnet, ein Klick auf eine Zustandsänderung zeigt den vorherigen Zustand gefolgt von einem Pfeil und dem neuen Zustand.
Page 47
Änderung des Batteriezustandes von Inbetriebnahme zum Normalbetrieb
Batteriezustandsänderungen werden während des normalen Betriebs ausgelöst (wenn die Batterie betriebsbereit ist, aus Sicherheitsgründen...) oder durch Änderungen der Modbus-Register MinRsvPct, InWRte, OutWRte und StorCtl_Mod. Die Änderungen können wie folgt ausgelöst werden:
Über das Register MinRsvPct wird ein minimaler Ladezustand eingestellt, der
-
entsprechende Zustandswechsel ist der „Energiesparmodus“. Durch Setzen der Register InWRte, OutWRte, StorCtl_Mod könnte der Bat-
-
teriestatus auf „Erzwungene Nachladung“ wechseln.
DE
47
Page 48
String Combiner Model (403)
String Combiner Register
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
48
Page 49
Meter Model
DE
Meter Model Re­gister
Die Daten eines per Modbus RTU mit dem Fronius Datamanager verbundenen Energiezählers können per Modbus TCP über die entsprechenden SunSpec Mo­dels ausgelesen werden. Ähnlich wie bei den Inverter Models gibt es auch hier zwei verschiedene SunSpec Models:
das Meter Model mit Gleitkommadarstellung
-
(Einstellung „float“; 211, 212 oder 213) das Meter Model mit ganzen Zahlen und Skalierungsfaktoren
-
(Einstellung „int+SF“; 201, 202 oder 203)
Die Registeranzahl der beiden Model-Typen ist unterschiedlich!
Die Modbus Geräte-ID des Energiezählers ist 240.
Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über den Link
http://www.fronius.com/QR-link/0006 abrufbar.
Es gibt 4 verschiedene Meter-Locations, diese werden durch die Locationnum­mer beschrieben (siehe Tabelle). Je nachdem, wo sich der Smart Meter befindet und ob der Wechselrichter produziert oder konsumiert, ändern sich die Vorzei­chen der PowerReal-Werte und der Energy-Werte. Diese werden in der folgenden Tabelle aufgezeigt:
Meter_Loca­tion
PowerRe­al_P_Sum (+ positive)
PowerRe­al_P_Sum (­negative)
Energy plus (absolute counter)
Energy minus (absolute counter)
*Tritt nur bei Ausnahmen auf. Zum Beispiel bei einem versteckten Generator.
0 (grid) 1 (load) 3 (ext. gene-
rator)
Konsumieren vom Netz
Einspeisung ins Netz
Importieren vom Netz = Energie kon­sumieren
Exportieren ins Netz = En­ergie produ­zieren
Power produ­zieren
Normaler Konsum
Power produ­zieren* = En­ergie produ­zieren
Konsumieren = Energie konsumieren
Generieren Load produ-
Konsumieren Normaler
Generieren = Energie pro­duzieren
Konsumieren = Energie konsumieren
256-511 (subload)
ziert Power
Konsum
Power produ­zieren* = En­ergie produ­zieren
Konsumieren = Energie konsumieren
49
Page 50
End Block
Allgemeines Zwei Register nach dem letzten Datenmodell zeigen an, dass keine weiteren Sun-
Spec-Modelle mehr folgen. Die Adressen dieser beiden Register sind je nach Gerätetyp (Wechselrichter, String Control, Energiezähler) und ausgewähltem Datentyp („float“ oder „int +SF“) verschieden.
Wechselrichter:
-
- Startadresse für bei Einstellung „float“: 40313
-
- Startadresse bei Einstellung „int+SF“: 40303
-
String Control:
-
- Startadresse: 40127
-
Energiezähler:
-
- Startadresse für bei Einstellung „float“: 40195
-
- Startadresse bei Einstellung „int+SF“: 40176
-
End Block Die Register Tabellen sind auf der Fronius Homepage zu finden oder direkt über
den Link
http://www.fronius.com/QR-link/0006 abrufbar.
50
Page 51
String Combiner Event Flags
DE
String Combiner Event Flags
Name Event Flags
LOW_VOLTAGE 0x0000000
1
LOW_POWER 0x0000000
LOW_EFFICIENCY 0x0000000
CURRENT 0x0000000
VOLTAGE 0x0000001
POWER 0x0000002
PR 0x0000004
DISCONNECTED 0x0000008
FUSE_FAULT 0x0000010
2
4
8
0
0
0
0
0
COMBINER_FUSE_FAULT 0x0000020
0
COMBINER_CABINET_OPEN 0x0000040
0
TEMP 0x0000080
0
GROUNDFAULT 0x0000100
0
REVERSED_POLARITY 0x0000200
0
INCOMPATIBLE 0x0000400
0
COMM_ERROR 0x0000800
0
INTERNAL_ERROR 0x0001000
0
THEFT 0x0002000
0
ARC_DETECTED 0x0004000
0
51
Page 52
52
Page 53
Table of contents
The Modbus Protocol 55
General 55 Structure of Modbus Messages 55 Modbus TCP – MBAP Header 56 Supported function codes 56 03 (0x03) Read Holding Registers 57 06 (0x06) Write Single Register 57 16 (0x10) Write Multiple Registers 58 Exception Codes 58 CRC Calculation for Modbus RTU 59 Calculating CRC Checksum 60 Adding CRC Checksum to the Message 61
General 62
Abbreviations Used 62 Communication with the Modbus Master 62 Maps Register 63 Communication with the Modbus Master 64 Response Times 65 Modbus Device ID for Inverters 65 Modbus Device ID for Fronius String Controls 66 Modbus Device ID for Energy Meters 66 Modbus device ID for Fronius Sensor Cards 67 Event Flags 67 Register addresses 68 Unavailable data records 70 Time Response of the Supported Operating Modes 71 Sign Convention for the Power Factor 72 Values Saved on the Card 72 Scale Factors 73 Non-writable registers 73 Entering Invalid Values 74
Modbus Settings 75
General 75 Opening the Modbus Settings 75 Open the Modbus settings 76 Data Output via Modbus 76 Limiting control 79 Save or Reject Changes 79
Fronius Registers 80
Fronius Register 80 Inverter Status Code 80 Deleting Event Flags and Status Codes 80 Saving and Deleting Data 80 Changing the Data Type 80 System Totals 81
Common & Inverter Model 82
Common Block Register 82 Inverter Model Register 82 SunSpec Operating Codes 82 Fronius Operating Codes 82
Nameplate Model (120) 84
General 84 Nameplate Register 84
Basic Settings Model (121) 85
Basic Settings Register 85 Reference Voltage 85 Deviation from Reference Voltage 85
Extended Measurements & Status Model (122) 86
General 86 Extended Measurements & Status Register 86
EN-US
53
Page 54
Immediate Control Model (123) 87
General 87 Immediate Controls Register 87 Standby 87 Power reduction 87 Example: Setting a Power Reduction 88 Example: Changing the Return Time When Power Reduction Has Been Activated 88 Effects of Reactive Power Specifications on Effective Power 89 Constant Power Factor 90 Example: Setting a Constant Power Factor 90 Constant Relative Reactive Power 91 Example: Setting Constant Reactive Power 91
Multiple MPPT Inverter Extension Model (160) 92
General 92 Multiple MPPT Inverter Extension Register 92
Basic Storage Control Model (124) 94
General 94 Information Provided 94 Power Window Specifications 94 Setting the Minimum Charge Level 96 Charging the energy storage via the grid 96 Basic Storage Controls Register 96 Register manipulation and Battery status changes in Fronius Solar.web 96
String Combiner Model (403) 98
String Combiner Register 98
Meter Model 99
Meter Model Register 99
End Block 100
General 100 End Block 100
String Combiner Event Flags 101
String Combiner Event Flags 101
54
Page 55
The Modbus Protocol
General The description of the protocol is largely taken from the Modbus specifications,
which are publicly available at www.modbus.org/specs.php.
Modbus is a simple, open communication protocol, with which master-slave or client-server communication can be carried out between the devices connected to the network. The basic principle of Modbus is: A master sends a request and a slave responds to this. In Modbus TCP, the master is referred to as the client and a slave as a server. The function is the same. The descriptions of the protocol functions provided below will use the more common names master and slave, ir­respective of the RTU and TCP variants. In cases where there are differences between RTU and TCP, this will be specifically indicated.
Modbus can be used in two ways on the Fronius Datamanager:
Modbus TCP
-
using TCP/IP via Ethernet (connected by cable or via WLAN) Modbus RTU
-
using asynchronous serial transmission via RS-485 (EIA/TIA-485-A), only for Fronius Datamanager 2.0.
In the case of Modbus RTU, there can only ever be one master in the system. In principle, only one master may initiate requests. A slave may only give a response if it has been addressed by the master; the slaves cannot communicate with each other. If a broadcast request (request to all available slaves via slave ID or unit ID 0) is sent, none of the slaves can respond. Broadcasts can therefore only be used for write commands.
If a master sends a request to a slave, then it expects a response. In the event of a request from a master, there are five options:
If the slave receives the request without communication errors and can pro-
-
cess this request without errors, then a normal response will be sent with the required data. If the slave does not receive the request due to a communication error, then
-
no response is sent. This leads to a timeout on the master. If the slave receives the request, but discovers a communication error (pari-
-
ty, CRC, etc.), then no response is sent. This leads to a timeout on the master. If the slave receives the request without communication errors, but cannot
-
process it without errors (e.g., if a register that is not available needs to be read), then an error message (exception response) is returned with the rea­son for the error. If the slave receives a broadcast request, which also goes to all other de-
-
vices, then no response will be sent either in the event of an error or if the request has been successfully processed. Broadcast requests are therefore only suitable for write commands.
EN-US
Structure of Modbus Messages
Modbus devices provide data in 16 bit large data blocks (registers). In certain cases, individual data points may also cover several data blocks (e.g., 2 registers = 32 bit value).
In principle, a Modbus message is made up of the protocol data unit (PDU). This is independent of the underlying communication layers. Depending on the bus or network that is used, additional fields can also be ad­ded. This structure is then referred to as the application data unit (ADU).
55
Page 56
ADU
Address field Function code Data CRC
PDU
Structure of a Modbus message for Modbus RTU
ADU
MBAP header Function code Data
PDU
Structure of a Modbus message for Modbus TCP
Modbus TCP uses its own header to identify the application data unit. This hea­der is called MBAP header (MODBUS application protocol header).
The size of the protocol data unit (PDU) is limited due to the first Modbus imple­mentations in a serial network (max. RS-485 ADU = 256 bytes). This results in the following for the size of the protocol data unit PDU: PDU = 256 – slave ID (1 byte) – CRC (2 bytes) = 253 bytes This results in:
Modbus RTU ADU = 253 + slave ID (1 byte) + CRC (2 bytes) = 256 bytes
-
Modbus TCP ADU = 253 bytes + MBAP (7 bytes) = 260 bytes
-
Modbus TCP – MBAP Header
Supported func­tion codes
The MBAP header includes 7 bytes:
Transaction ID (2 bytes): Is used in order to synchronize request and respon-
-
se. The slave adopts the transaction ID from the request into the response. Protocol ID (2 bytes): Is always 0 (Modbus protocol).
-
Length (2 bytes): The length field includes the number of bytes of the subse-
-
quent fields, including unit ID and data fields. Unit ID (1 byte): This field is used for addressing devices connected to the
-
Fronius Datamanager (gateway function of the Fronius Datamanager). The unit ID corresponds to the slave ID in Modbus RTU. The value is specified by the master and is returned unchanged by the slave with the response. For details about the addressing of the devices, see:
Modbus Device ID for Inverters on page 65
-
Modbus Device ID for Fronius String Controls on page 66
-
Modbus Device ID for Energy Meters on page 66
-
IMPORTANT: The correct unit ID must always be specified, even if the Froni­us Datamanager is only connected to one individual inverter.
The function code determines the action to be carried out on the slave. Three function codes for read and write operations are supported:
-
-
-
03 (0x03) 06 (0x06) 16 (0x10)
1)
read holding registers
1)
write single register
1)
write multiple registers
56
If an error occurs on the slave during the processing of a request, an error mes­sage is sent as the response (exception response). In the event of this kind of re­sponse, the most significant bit of the function code is set to 1 (corresponds to
adding 0x80 to the function code)
1)
and an exception code is added, which indi-
cates the reason for the error.
1)
The prefix "0x" stands for hexadecimal numbers.
Page 57
03 (0x03) Read Holding Regis­ters
This function code is used to read the content of one or more successive regis­ters of a device. The request contains the address of the first register to be read and the number of registers to be read. Registers are addressed in the request starting at 0. This means that registers 1 to 16 will be addressed via addresses 0 to 15.
06 (0x06) Write Single Register
Request
Function code 1 byte 0x03
Start address 2 bytes 0x0000 to 0xFFFF (0 to 65535)
Number of registers 2 bytes 1 to 125
Response
Function code 1 byte 0x03
Number of bytes 1 byte 2 x N*
Register values N* x 2 bytes
*N = number of registers
Error
Error code 1 byte 0x83
Exception code 1 byte 01 or 02 or 03 or 04 or 11
This function code is used in order to write a single register. The request only contains the address of the register to be written. Registers are addressed star­ting at 0. This means that register 1 is addressed via address 0. The normal re­sponse is a copy of the request, which is sent after successfully writing the regis­ter.
EN-US
Request
Function code 1 byte 0x06
Register address 2 bytes 0x0000 to 0xFFFF (0 to 65535)
Register value 2 bytes
Response
Function code 1 byte 0x06
Register address 2 bytes 0x0000 to 0xFFFF (0 to 65535)
Register value 2 bytes
Error
Error code 1 byte 0x86
Exception code 1 byte 01 or 02 or 03 or 04 or 11
57
Page 58
16 (0x10) Write Multiple Regis­ters
This function code is used in order to write a block of successive registers. The request contains the address of the first register to be written, the number of re­gisters to be written, the number of bytes to be written, and the values to be writ­ten (2 bytes per register). The normal response contains the function code, the start address, and the number of registers written.
Request
Function code 1 byte 0x10
Start address 2 bytes 0x0000 to 0xFFFF (0 to 65535)
Number of registers 2 bytes 1 to 123
Number of bytes 1 byte 2 x N*
Register values N* x 2 bytes
*N = number of registers
Response
Function code 1 byte 0x10
Start address 2 bytes 0x0000 to 0xFFFF (0 to 65535)
Number of registers 2 bytes 1 to 123
Error
Error code 1 byte 0x90
Exception code 1 byte 01 or 02 or 03 or 04 or 11
Exception Codes An error message (exception response) has two fields, which distinguishes it from
a normal response:
Function code field
-
In a normal response, the function code of the request is adopted into the function code field of the response. In all function codes, the most signifi­cant bit (MSB) is 0 (the values of the function codes are all lower than 0x80). In an error message, the MSB is set to 1. This means that 0x80 is added to the value for the function code. The master can identify the response as an error message due to the set MSB.
Data field
-
A normal response contains data or statistical values in the data field. In an error message, an exception code is returned in the data field. This exception code indicates the reason for the error message.
Modbus Exception Codes
Code Name Meaning
58
01 ILLEGAL FUNCTION The function code in the request is not
supported by the slave.
02 ILLEGAL DATA AD-
DRESS
Invalid register addresses have been re­quested.
Page 59
Modbus Exception Codes
Code Name Meaning
03 ILLEGAL DATA VALUE A value in the request is outside of the va-
lid range. This applies both for the fields of a request (e.g., invalid number of registers) and for invalid setting values for the Sun­Spec inverter control models.
04 SLAVE DEVICE FAILU-REAn error occurred during an attempt to
write one or more registers.
EN-US
CRC Calculation for Modbus RTU
11 GATEWAY TARGET DE-
VICE FAILED TO RE­SPOND
Each Modbus RTU message is equipped with a checksum (CRC, Cyclic Redun­dancy Check) in order to be able to identify transmission errors. The size of the checksum is 2 bytes. It is calculated by the sending device and attached to the message to be sent. For its part, the receiver calculates the checksum from all bytes of the received message (without CRC) and compares this with the recei­ved checksum. If these two checksums are different, then an error has occurred.
The calculation of the checksum starts with setting all bits of a 16 bit register (CRC register) to 1 (0xFFFF). All bytes of the message are then individually pro­cessed with the CRC register. Only the data bytes of one message are used for the calculation. Start, stop, and parity bits are not considered.
During the calculation of the CRC, each byte is XOR-linked with the CRC regis­ter. The result is then moved in the direction of the least significant bit (LSB) and the most significant bit (MSB) is set to 0. The LSB is considered. If the LSB was previously 1, then the CRC register is XOR-linked with a fixed assigned value. If the LSB was 0, then nothing needs to be done.
Only for Modbus TCP. The addressed device cannot be found:
the device is not in the SolarNet Ring
a)
or the device is switched off
b)
or the SolarNet Ring is open.
c)
This process is repeated until the CRC register has been moved eight times. Af­ter the last (eighth) movement, the next byte is taken and XOR-linked to the cur­rent CRC register. The write process then starts from the beginning; it is again moved eight times. After dealing with all bytes of the message, the value of the CRC register is the checksum.
59
Page 60
Calculation algorithm of the CRC16
Calculating CRC Checksum
60
Initialize a 16 bit register (2 bytes) with 0xFFFF. This register is referred to as
1
the CRC16 register. XOR-link the first byte of the message with the less significant byte of the
2
CRC16 register. The result is saved in the CRC16 register. Move the CRC16 register 1 bit to the right (in the direction of the LSB), fill
3
MSB with 0. Look at LSB. Check LSB value
4
If the LSB was 0: Go to step 3 (move again).
-
If the LSB was 1: XOR-link the CRC16 register with the CRC polynomial
-
0xA001 (1010 0000 0000 0001).
Repeat steps 3 and 4 until eight movement operations have been carried out.
5
When these have been carried out, a complete byte of the message will have been processed.
Repeat steps 3 to 5 for the next byte of the message. Repeat everything until
6
all bytes of the message have been processed. After the last byte, the CRC16 register contains the checksum.
7
When the checksum is added to the message to be sent, then the two byes
8
must be inverted as described below.
Page 61
Adding CRC Checksum to the Message
If the 16 bit (2 bytes) CRC checksum is sent with a message, then the less signifi­cant byte is transferred before the more significant one.
For example, if the CRC checksum is 0x1241 (0001 0010 0100 0001):
Addr Func Data
Count
0x41 0x12
Data Data Data Data CRC
Lo
CRC Hi
EN-US
61
Page 62
General
Abbreviations Used
AC Alternating current
DC Direct current
FW Firmware
PF
PV Photovoltaics
RTC Real-time clock
SF Scale factor
SW Software
V Voltage (volts)
VA Apparent power
VAr Reactive power
VMax Maximum voltage
VMin Minimum voltage
VRef Reference voltage
W Power (watts)
IN Inverter
Power factor (cos j)
Communication with the Modbus Master
The Fronius Datamanager communicates with the Modbus master using register addresses in accordance with the SunSpec Alliance specifications. (http://www.sunspec.org/)
NOTE!
The Fronius Datamanager also supports the integration of Fronius String Con­trols via Fronius Solar Net.
Fronius String Controls are displayed by an integrated Common Block and the subsequent String Combiner Model. In addition, the Fronius Datamanager offers the option of providing via Modbus TCP data of an energy meter connected via Modbus RTU. The meter is displayed via an integrated Common Block and the subsequent Meter Model.
62
Page 63
The allocation of register addresses to the corresponding function can be found in the following tables:
For all devices:
-
Common Block (1)
-
For inverters:
-
Fronius Register
-
Inverter model (101, 102, 103, 111, 112, or 113)
-
Inverter Controls:
-
- Nameplate (120)
- Basic Settings (121)
- Extended Measurements & Status (122)
- Immediate Controls (123) Multiple MPPT Inverter Extension (160)
-
Basic Storage Control (124)
-
only available with Fronius Hybrid inverters
For Fronius String Controls:
-
String Combiner Model (403)
-
For energy meters:
-
Meter Model (201, 202, 203, 211, 212, or 213).
-
NOTE!
Only applies for Modbus RTU and only if no energy meter is connected: If no data exchange takes place on the RS-485 bus, noise and interference may affect the lines.
In order for a receiver to remain in a defined status when there are no data si­gnals, bias resistors should be used in order to maintain a defined idle state on the data lines. The Fronius Datamanager does not have any bias resistors. Detailed information about the use of these resistors can be found in the document "MODBUS over serial line specification and implementation guide V1.02" (http://modbus.org/ docs/Modbus_over_serial_line_V1_02.pdf).
EN-US
Maps Register
Inverter Fronius String
SID
Identification as a SunSpec device
Common Block
Device informati­on
Inverter Model
Inverter data
Nameplate Model
Basic Settings Model
Ext. Measure­ment Model
SID
Identification as a SunSpec device
Common Block
Device informati­on
String Combiner Model
Fronius String Control data
End Block
Control
Energy Meter Sensor Card
SID
Identification as a SunSpec device
Common Block
Device infor­mation
Meter Model
Energy meter data
End Block
SID
Identification as a SunSpec device
Common Block
Device infor­mation
Irradiance Mo­del
Back of Modu­le Temperatu­re Model
Base Meteoro­logical Model
End Block
63
Page 64
Immediate Con­trols Model
Communication with the Modbus Master
Multi. MPPT Inv. Ext. Model
Basic Storage Control (only in
Fronius Hybrid in­verter)
End Block
The register lists can be downloaded from the Fronius homepage:
https://www.fronius.com/de/downloads / Solar Energy / Modbus Sunspec Maps, State Codes und Events
Communication with the Modbus master takes place using register addresses in accordance with the SunSpec Alliance specifications. (http://www.sunspec.org/)
The data of an energy meter connected via Modbus RTU can be made available via Modbus TCP or via Modbus RTU (second interface). The meter is displayed via an integrated Common Block and the subsequent Meter Model.
The allocation of register addresses to the corresponding function can be found in the following tables:
For all devices:
-
Common Block (1)
-
For inverters:
-
Inverter Model (101, 102, 103, 111, 112 or 113)
-
Inverter Controls:
-
- Nameplate (120)
- Basic Settings (121)
- Extended Measurements & Status (122)
- Immediate Controls (123) Multiple MPPT Inverter Extension (160)
-
Basic Storage Control (124)
-
For energy meters:
-
Meter Model (201, 202, 203, 211, 212 or 213)
-
NOTE!
Only applies for Modbus RTU and only if no energy meter is connected: if no data exchange takes place on the RS-485 bus, noise and interference may affect the lines.
In order for a receiver to remain in a defined status when there are no data si­gnals, bias resistors should be used in order to maintain a defined idle state on the data lines. The Fronius Datamanager does not have any bias resistors. Detailed information about the use of these resistors can be found in the document "MODBUS over serial line specification and implementation guide V1.02" (http://modbus.org/ docs/Modbus_over_serial_line_V1_02.pdf).
64
Page 65
Response Times The response times depend on factors such as the number of devices in the Fro-
nius Solar Net ring. The higher the number of devices used, the longer the time­out for responses needs to be.
NOTE!
If there are several devices in the Fronius Solar Net ring, a timeout of at least 10 seconds should be used when querying inverter data.
Recommendation for timeout values
Modbus queries should only be executed sequentially and not in parallel. Execute the queries with a timeout of at least 10 seconds. Queries at millisecond intervals can lead to long response times. Multiple register queries in one message are fas­ter than multiple queries of individual registers.
When using Fronius String Controls, a single Modbus request might result in two requests being sent via Fronius Solar Net; this can lead to longer response times than when using inverter requests. If Fronius String Controls are present, you should therefore use a higher timeout value for responses.
When first requesting common block data after restarting the Fronius Datama­nager, the information about the Fronius String Control must first be requested using Fronius Solar Net. For this reason, this first request will take a little more time than subsequent requests.
If there are a larger number of devices in a Fronius Solar Net ring, it is advisable to split these between several Fronius Solar Net rings, which each have their own Fronius Datamanager, in order to speed up responses further. Fronius recom­mends operating a maximum of 6 inverters with a Datamanager.
EN-US
Modbus Device ID for Inverters
The inverter's Modbus device ID is the same as its inverter number, which can be set using the control panel on the inverter. (See the inverter operating instructions.)
NOTE!
There is only one exception to this rule: The inverter number 00 converts to device ID 100 because Modbus reserves de­vice ID 0 for broadcast messages.
Example:
Inverter number Modbus device ID
00 100
01 001
02 002
03 003
99 099
65
Page 66
Modbus Device ID for Fronius String Controls
The Modbus device ID of a Fronius String Control is derived from
its address in Fronius Solar Net
-
a String Control offset value.
-
The default value for the String Control offset is 101 because the range reserved for inverters goes up to Modbus device ID 100. The offset value can, however, be adjusted via the Fronius Datamanager web pa­ge. => see section "Data Output via Modbus"
Example 1: String Control offset = 101 (standard value)
Fronius String Control ad­dress Modbus device ID
0 101
1 102
2 103
99 200
A Fronius Solar Net Ring allows up to 100 inverters and up to 200 Fronius String Controls. The available Modbus device IDs are reserved for other functions (e.g., for energy meters) from 240. With the standard String Control offset of 101, it would therefore not be possi­ble to have Fronius String Control addresses from 139 (which corresponds to Modbus ID 240) upwards.
Modbus Device ID for Energy Meters
For this reason, it is possible to adjust the String Control offset on the Fronius Datamanager website if fewer than 100 inverters are being used.
Example 2: 30 inverters, 200 Fronius String Controls, String Control offset =
40
Fronius String Control ad­dress Modbus device ID
0 40
1 41
2 42
199 239
If an energy meter (e.g., Fronius Smart Meter 63A) is connected to the Fronius Datamanager via Modbus RTU, it can be read out via the fixed Modbus device ID using Modbus TCP.
Fronius Smart Meter Ad­dress Modbus Device ID
66
1 240
2 241
3 242
Page 67
4 243
5 244
Modbus device ID for Fronius Sensor Cards
Event Flags Status changes and faults in the inverters and Fronius String Controls are shown
If a Fronius Sensor Card is connected to the Fronius Datamanager via Solar Net, it can be read out via a fixed Modbus device ID.
The Modbus device ID of a Fronius Sensor Card is derived from
your address in the Fronius Solar Net
-
the Sensor Card offset value 245
-
Fronius Sensor Card ad­dress Modbus device ID
0 245
1 246
2 247
as event flags.
Detailed information and lists can be downloaded in various formats (xlsx, csv, json) from the Fronius website:
EN-US
https://www.fronius.com/de/downloads / Solar Energy / Modbus SunSpec Maps, State Codes and Events
NOTE!
It is also possible to combine several state codes for one event.
For inverters:
An accurate description of the state codes can be found in the operating instruc­tions of the relevant inverter. If the inverter generates a state code, the relevant event flag is set in the Fronius Datamanager.
NOTE!
In addition, the relevant state code is also displayed in register F_Active_Sta­te_Code (214).
The event flag and state code will remain active for as long as the state code is displayed on the inverter. If another state code is generated, it will also be dis­played in the event flags. In this case, there is a chance that the previous event flag will not be deleted. It is therefore possible to manually delete the event flags and the state code by entering 0xFFFF in register F_Reset_All_Event_Flags (215).
67
Page 68
Register addres­ses
IMPORTANT!
Register addresses do not remain constant.
-
The actual register addresses depend on the composition of the dynamic
-
SunSpec register list.
Correct procedure:
Search for the model by making a request (determine start address)
-
Then work with offsets
-
To read a register, the register's start address must be specified in the Modbus request.
Fronius Basic Register: 212 SunSpec Basic Register: 40001
Registers begin at 1 and do not represent a function code.
Do not confuse the registers with the Modicon address scheme: In the Modicon address scheme, 40001 is displayed as 4x40001. To read register 40001, use address 40000 (0x9C40).
The register address that is output therefore always has 1 number less than the actual register number.
IMPORTANT!
The lengths of individual models may vary due to the data types used.
Start addresses are therefore specified for SunSpec models in the case of some register tables. This start address, together with the offset from the table, then produces the va­lue of the actual register number. Example: Table Nameplate Model (120) on page 84: The register WRtg of the nameplate model has an offset of 4. The start address is specified as 40131 with the setting "float". Therefore, the correct register number is: 40131 + 4 = 40135.
Examples for Modbus RTU:
1. Request for four registers starting from register 40005 (Mn, Manufacturer)
Send (bytes in hexadecimal)
01 03 9C 44 00 04 2A 4C
De­vice
ID
Func-
tion
code
Address 40004 (cor­responds to
register
40005)
Number of
registers to
be read
Checksum
Low
byte
High byte
Receive (bytes in hexadecimal)
68
01 03 08 46 72 6F 6E 69 75 73 00 8A 2A
De­vice
ID
Func-
tion
code
Num­ber of bytes
Address
40005
"F" and "r"
Address
40006
"o" and "n"
Address
40007
"i" and "u"
Address
40008
"s" and 0
Checksum
Low
byte
High byte
Page 69
2. Enter one register starting from register 40242 (WmaxLimPct)
01 10 9D 32 00 01 02 13 88 E3 DD
De­vice
ID
Func-
tion
code
Address
40242
Number of
registers to
be entered
Number
of data
bytes still
to follow
Register
value to
be ente-
red
Checks-
0x1388 =
5000
Low
byte
um
EN-US
High byte
01 10 9D 32 00 01 8F AA
De­vice
ID
Func-
tion
code
Address
40242
Number of registers en­tered
Checksums "i" and "u"
Low
High
byte
byte
400
08 "s"
and
0
Examples for Modbus TCP:
1. Request for four registers starting from register 40005 (Mn, Manufacturer)
Send (bytes in hexadecimal)
MBAP hea­der
For details, see
description of MBAP header
03 9C 44 00 04
Func-
tion
code
Address 40004 (corresponds to register 40005)
Number of
registers to
be read
Receive (bytes in hexadecimal)
MBAP hea­der
For details, see
description of MBAP header
03 08 46 72 6F 6E 69 75 73 00
Func-
tion
code
Num-
ber of
bytes
Address
40005
"F" and "r"
Address
40006
"o" and "n"
Address
40007
"i" and "u"
Address
40008
"s" and 0
69
Page 70
2. Enter one register starting from register 40242 (WmaxLimPct)
Unavailable data records
MBAP hea-
10 9D 32 00 01 02 13 88
der
For details, see
description of MBAP header
Func-
tion
code
Address 40242 Number of
registers to
be entered
Number of data bytes
still to fol-
low
Register va-
lue to be en-
tered
0x1388 =
5000
MBAP hea-
10 9D 32 00 01
der
For details, see
description of MBAP header
Func-
tion
code
Address 40242 Number of
registers en-
tered
Fronius inverters cannot always provide all the data specified in the SunSpec
data models. Depending on the data type, this data is represented by the fol­lowing values in accordance with the SunSpec specification:
int16 (-32767 to 32767):
-
uint16 (0 to 65534):
-
acc16 (0 to 65535):
-
enum16 (0 to 65534):
-
bitfield16 (0 to 0x7FFF):
-
pad (0x8000):
-
int32 (-2147483647 to 2147483647):
-
uint32 (0 to 4294967294):
-
acc32 (0 to 4294967295):
-
enum32 (0 to 4294967294):
-
bitfield32 (0 to 0x7FFFFFFF):
-
int64 (-9223372036854775807 to
-
9223372036854775807): uint64 (0 to 18446744073709551615):
-
acc64 (0 to 18446744073709551615):
-
stringX:
-
0x8000 0xFFFF 0 0xFFFF 0xFFFF always 0x8000 0x80000000 0xFFFFFFFF 0 0xFFFFFFFF 0xFFFFFFFF 0x8000000000000 000 0xFFFFFFFFFFFFF FFF 0
1)
all X registers filled
float32 (range see IEEE 754):
-
sunssf (scale factors; -10 to 10):
-
with 0x0000 0x7FC00000 (NaN) 0x8000
70
1)
The prefix "0x" stands for hexadecimal numbers.
NOTE!
Data points that are not supported are marked with "Not supported" in the "Range of values" column in the register tables.
In this case, during reading, the corresponding value from the list above is obtai­ned depending on the data type. In certain instances, registers which are basically listed as supported may also return this value. This is because some values depend on the device type, e.g., currents AphB and AphC in the case of a single-phase inverter.
Page 71
Time Response of the Supported Operating Modes
Time Response Illustrated by Power Reduction
The inverter's time response in an operating mode can be defined by several time values. Three possible time values are shown in the figure "Time response illustrated by power reduction":
WinTms 0–300 [seconds]
-
Specifies a time window in which the operating mode is randomly started. The time window starts when the start command for the operating mode is issued (e.g., OutPFSet_Ena = 1). WinTms can be used to prevent all the inverters in the system from applying the changes at the same time. If the time window is set to 0 (the default va­lue), the operating mode will start immediately.
RvrtTms 0–28800 [seconds]
-
Determines how long the operating mode will remain active. The timer is re­started with every Modbus message received. If no new Modbus message was received during the fallback time (= RvrtTms), the operating mode is au­tomatically ended and the operating mode with the next highest priority (Da­tamanager web interface - Settings - UC Editor) becomes active, e.g., dyna­mic power reduction. If RvrtTms is 0 (the default value), the operating mode remains active until it is manually deactivated via the corresponding register. In this instance the fallback option is not available. RmpTms (supported from version 1.11.3-2 (Hybridmanager) / 3.13.3-2 (Data-
-
manager)) Specifies how quickly the changes are to be made. The corresponding value gradually changes during the specified time period from the old to the new value. If RmpTms is 0 (the default value) or if this value is not supported, the new value will be valid immediately.
EN-US
71
Page 72
Sign Convention
(+kVAr, +kVArh)
(-kW,
-kWh)
(+kW, +kWh)
(-kVAr, -kVArh)
90°
180°
270°
Quadrant 1
Quadrant 4
Quadrant 2
Quadrant 3
Power factor sign
convention
EEI: +
(Leading, capacitive)
Power factor sign
convention
EEI: +
(Leading, capacitive)
Power factor sign
convention
EEI: -
(Lagging, inductive)
Power factor sign
convention
EEI: -
(Lagging, inductive)
ϕ
ϕ
ϕ
ϕ
Apparent Power (VA)
Apparent Power (V
A
)
Apparent Power (VA)
Ap
par
ent
P
ower (VA)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Active Power Exported/Received (W)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
Reactive Power
Exported/Received (Var)
for the Power Factor
Values Saved on the Card
The EEI sign convention1) for the power factor is in line with the SunSpec specifi­cation and is based on the information contained in the "Handbook for Electricity Metering" and IEC 61557-12 (2007).
The power factor is:
negative if the reactive power is positive (over-excited, quadrant 1)
-
positive if the reactive power is negative (under-excited, quadrant 4)
-
1)
EEI = Edison Electrical Institute
Nameplate Model (IC120):
WRtg
-
-
AC nominal output of inverter.
VARtg
AC nominal apparent output of inverter. Default value = WRtg
VArRtgQ1
-
Maximum AC reactive power in the first quadrant (over-excited). Default value is calculated based on the available cos Phi (0.85) and the no­minal apparent power. Note the scaling factor VArRtg_SF.
VArRtgQ4
-
Maximum AC reactive power in the fourth quadrant (under-excited). Default value is calculated based on the available cos Phi (0.85) and the no­minal apparent power. Note the scaling factor VArRtg_SF.
ARtg
-
AC nominal current of inverter.
72
Page 73
Basic Settings Model (IC121):
WMax
-
Maximum AC power Default value = WRtg
VRef
-
Reference voltage at the feed-in point
VRefOfs
-
Deviation from reference voltage
VMax
-
Maximum AC voltage
VMin
-
Minimum AC voltage
VAMax
-
Maximum AC apparent power Default value = VARtg
Saving Values
If data is not available or is incorrectly displayed, the values listed above can be adjusted and saved on the Datamanager. Changes currently have no influence on the way the Datamanager or the inver­ters function and are merely used to display device-specific information. In order to save the values, the register F_Store_Data (213) of any inverter must be written with 0xFFFF. The values for all inverters are then permanently saved and are also available after an AC reset of the Datamanager.
EN-US
Deleting Values
It is only possible to delete values for an individual inverter. To do this, enter 0xFFFF into the register F_Delete_Data (212) of the relevant inverter.
Scale Factors IMPORTANT! Scale factors (also possible when selecting “Float”!) are not static,
even if they are entered as a fixed value in these Operating Instructions. Scale factors can change every time the firmware is changed (e.g., scale factor for power specification).
Scale factors with constant values are listed in the tables in the column “Range of values”. Current data (data of inverters, Fronius String Controls, and energy meters) may have variable scale factors. These must be read from the corresponding registers.
The data type "sunssf" is a signed integer with 16 bits. Example calculation: (Model 160): 1_DCW = 10000, DCW_SF = -1 -> Power = 10000 x 10^(-1) = 1000 W
Non-writable re­gisters
The following registers cannot be written:
Read-only (R) registers
-
Registers which are currently not supported
-
NOTE!
If an attempt is made to write to such registers, the inverter does not return an exception code! The values written to these registers are ignored without an error message. In Model 123 and 124, an exception occurs during write access if the control op­tion in the local web interface has been deactivated.
73
Page 74
Entering Invalid Values
Some registers only permit certain values. The valid values can be found in the relevant register table. If an invalid value is entered into a register, the Fronius Datamanager will return exception code 3 (illegal data value). The invalid value is ignored. If several registers are written at the same time, all the valid values will be ente­red up to the register containing the invalid value. The write operation will then be canceled.
74
Page 75
Modbus Settings
(1)
(2)
General From your web browser, you can use the Fronius Datamanager web interface to
apply the Modbus connection settings which cannot be accessed via the Modbus protocol.
NOTE!
It is not necessary to use a web interface when transferring data via Modbus RTU since Modbus RTU is enabled at the factory, except for Symo Hybrid.
EN-US
Opening the Modbus Settings
Install Fronius Datamanager
1
=> see the Fronius Datamanager operating instructions. Open Internet browser
2
Enter the following in the address field of the Internet browser:
3
the IP address of the Fronius Datamanager (can be accessed via System
-
Information) or host name and domain name of the Fronius Datamanager.
-
The web interface's start page is displayed. Select the "Settings" section (1).
4
Open the "Modbus" section (2).
5
NOTE!
In the case of Fronius Datamanager 2.
0, the "Data output via Modbus" is set to rtu in the factory. The rtu option is not available for the Datamanager 1.
75
Page 76
Open the Mod­bus settings
Data Output via Modbus
Open the web interface of the inverter
1
Select the "Communication" section (1)
2
Open the "Modbus" menu item (2)
3
Data Output via Modbus
Activation of the Modbus service and selection of the transmission pro­tocol. If the Modbus service is activated, additional entry fields are available.
The Modbus rtu transmission protocol is only available for Fronius Data­manager 2.0.
Note! If there is a Modbus energy meter (e.g., Fronius Smart Meter) configured under Settings/Meter on the system, it will not be possible to use the "rtu" set­ting. In this case, data output via Modbus will be deactivated automatically upon selection of "rtu." This change will only be visible once the Datamanager website has been reloaded.
Any energy meter connected via RS485 can also be read by Modbus TCP via the corresponding SunSpec models. The Modbus ID for the meter is 240.
(1) off
No data output via Modbus.
If the data output via Modbus is deactivated, control commands sent to the inverter via Modbus are reset, e.g., no power reduction or no reactive power specification.
(2) tcp
Data output via Modbus TCP.
76
Page 77
(2)
(2a) (2b)
(2c)
(2d)
(2e)
(2f)
(2g)
(2h)
(2a) Modbus port
Number of the TCP port to be used for Modbus communication.
Presetting: 502 Port 80 cannot be used for this purpose.
(2b) String Control address offset
Offset value used to assign addresses to Fronius String Controls via Modbus. For further details, see the section entitled "Modbus Device ID for Fro­nius String Controls."
SunSpec Model Type
Used to select the data type of data models for inverters and energy meters.
(2c) float
Display as floating-point numbers. SunSpec inverter model 111, 112 or 113 SunSpec meter model 211, 212 or 213
(2d) int+SF
Display as integers with scaling factors. SunSpec inverter model 101, 102 or 103 SunSpec meter model 201, 202 or 203
EN-US
IMPORTANT! Since the different models have different numbers of re-
gisters, the register addresses of all the subsequent models also change when the data type is changed.
(2e) Demo mode
The demo mode is used to implement or validate a Modbus master. It enables you to read inverter, energy meter, and Fronius String Control data without actually having to connect or activate a device. The same data are always sent back for all the registers.
(2f) Inverter control via Modbus
If this option is activated, the inverter can be controlled via Modbus. The "Restrict the control" selection field is displayed. Inverter control includes the following functions:
On/off
-
Power reduction
-
Setting a constant power factor (cos phi)
-
Setting a constant reactive power
-
Battery control specifications for Symo Hybrid with battery
-
(3) rtu
Data output via Modbus rtu.
77
Page 78
(3a)
(3b)
(3)
(3c)
(3d)
(3e)
(3f) (3g)
(3a) Baud rate
Used to enter the baud rate.
(3b) Parity
Selection field for entering the parity.
(3c) String Control address offset
Offset value used to assign addresses to Fronius String Controls via Modbus. For further details, see the section entitled "Modbus Device ID for Fro­nius String Controls."
SunSpec model type
Used to select the data type of data models for inverters.
(3d) float
Display as floating-point numbers. SunSpec inverter model 111, 112 or 113
(3e) int+SF
Display as integers with scaling factors. SunSpec inverter model 101, 102 or 103
IMPORTANT! Since the different models have different numbers of re-
gisters, the register addresses of all the subsequent models also change when the data type is changed.
78
(3f) Demo mode
The demo mode is used to implement and validate a Modbus master. It enables you to read inverter, energy meter, and Fronius String Control data without actually having to connect or activate a device. The same data are always sent back for all the registers.
(3g) Inverter control via Modbus
If this option is activated, the inverter is controlled via Modbus. Inverter control includes the following functions:
On/off
-
Power reduction
-
Setting a constant power factor (cos phi)
-
Setting a constant reactive power
-
Battery control specifications for Symo Hybrid with battery
-
(4) Controlling priority
Used to specify which service is given priority by the inverter control unit.
1 = highest priority, 3 = lowest priority.
The control priorities can only be changed in the UC EDITOR menu item.
Page 79
(5) "Apply/Save" button
(6) "Cancel/Discard entries" button
Limiting control The "Limit Control" option is only available for the TCP transmission protocols.
It is used to block inverter control commands from unauthorized users by only permitting control for specific devices.
Limit Control
If this option is activated, only certain devices will be able to send control com­mands.
IP address
To limit inverter control to one or more devices, enter the IP addresses of the de­vices which are permitted to send commands to the inverter in this field. Multiple entries are separated by commas.
Examples:
One IP address: 98.7.65.4
-
Control only permitted by IP address 98.7.65.4
-
Several IP addresses: 98.7.65.4,222.44.33.1
-
Control only permitted by IP addresses 98.7.65.4 and 222.44.33.1
-
IP address range, e.g., from 98.7.65.1 to 98.7.65.254 (CIDR notation):
-
98.7.65.0/24 Control only permitted by IP addresses 98.7.65.1 to 98.7.65.254
-
EN-US
Save or Reject Changes
Saves the changes and displays a message confirming this. If you exit the "Modbus" section without saving your changes, all the changes you have made will be rejected.
Prompts you to confirm whether or not you wish to reject the changes you have made and then reinstates the most recently saved values.
79
Page 80
Fronius Registers
Fronius Register These registers only apply to inverters. These registers are not relevant to Froni-
us String Controls and energy meters.
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
Inverter Status Code
Deleting Event Flags and Status Codes
Saving and Dele­ting Data
Register F_Active_State_Code (214) displays the inverter status code which has just been generated. This may also be displayed on the inverter’s display. This code is also displayed as an event flag in the inverter model. The displayed code remains active for as long the inverter has the corresponding status. Alterna­tively, the status can also be deleted by using register F_Reset_All_Event_Flags.
The event flags in the inverter models (101, 102, 103 and 111, 112, 113) remain active until the corresponding status is no longer present on the inverter. There are a few exceptional cases in which the event flags are not deleted. For this rea­son, it is possible to reset the event flags and the displayed status code by is­suing the Modbus command.
Enter 0xFFFF in register F_Reset_All_Event_Flags (215)
1
The content of the following registers is deleted:
F_Active_State_Code (214)
-
Evt1
-
Evt2
-
EvtVnd1 to EvtVnd4
-
If the value 0xFFFF is written in the register F_Store_Data(213), then all nomi- nal values (ratings) for all inverters are saved on the Fronius Datamanager. These values can be changed in the corresponding registers of the Nameplate Model and the Basic Settings Model. This can be useful if, for example, no nominal va­lues could be automatically determined for a device and you want to enter the values manually.
Changing the Data Type
80
If you want to delete the saved values for a particular inverter, you must write the value 0xFFFF in the F_Delete_Data(212) register. The values are then only dele- ted for this inverter. The deletion can only ever be applied to the inverter with which there is currently communication.
The data type for the data models for inverters and energy meters can be selec­ted via the F_ModelType(216) register. It is possible to select either display as floating point numbers (float, standard) or as integers with scale factors (int+SF).
Page 81
NOTE!
This setting only relates to the inverter model (inverter) and the meter model (energy meter).
All other models continue to use integers and scale factors. This setting functions in the same way as the web interface Modbus settings – SunSpec model type.
Setting options:
Float = 1 (standard): Inverter model 111, 112, or 113; meter model 211, 212,
-
or 213 int+SF = 2: Inverter model 101, 102, or 103; meter model 201, 202, or 203.
-
NOTE!
Since the different models have different numbers of registers, the register ad­dresses of all the subsequent models also change when the data type is chan­ged.
NOTE!
To avoid accidental changes, writing a value to setting F_ModelType must be confirmed by writing value 0x06 to the same register immediately after writing the type.
If the confirmation is omitted, changes will be reset after a few seconds.
EN-US
System Totals The following registers can be used to query power and energy data from all in-
verters connected to this Fronius Datamanager via Fronius Solar Net. These values are displayed in Watt (W) or Watt hours (Wh) and do not require scale factors.
F_Site_Power(500–501): Power
-
F_Site_Energy_Day(502–505): Daily Energy
-
F_Site_Energy_Year(506–509): Yearly Energy
-
F_Site_Energy_Total(510–513): Total energy of the entire system.
-
81
Page 82
Common & Inverter Model
Common Block Register
Inverter Model Register
The description of the Common Block including the SID register (register 40001–40002) for identification as a SunSpec device applies for each device ty­pe (inverter, Fronius String Control, energy meter). Each device has its own Com­mon Block, which lists information about the device (model, serial number, SW version, etc.).
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
Two different SunSpec Models are supported for the inverter data:
the default set inverter model with floating point display
-
(setting "float"; 111, 112 or 113) the inverter model with integers and scaling factors
-
(setting "int+SF"; 101, 102 or 103)
The register number of the two model types is different!
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
SunSpec Opera­ting Codes
Fronius Opera­ting Codes
Name Value Description
I_STATUS_OFF 1 Inverter is off
I_STATUS_SLEEPING 2 Auto shutdown
I_STATUS_STARTING 3 Inverter starting
I_STATUS_MPPT 4 Inverter working normally
I_STATUS_THROTTLED 5 Power reduction active
I_STATUS_SHUT­TING_DOWN
I_STATUS_FAULT 7 One or more faults present, see
I_STATUS_STANDBY 8 Standby
* Inverter model register
Name Value Description
I_STATUS_OFF 1 Inverter is off
6 Inverter shutting down
St*or Evt* register
82
I_STATUS_SLEEPING 2 Auto shutdown
I_STATUS_STARTING 3 Inverter starting
Page 83
Name Value Description
I_STATUS_MPPT 4 Inverter working normally
I_STATUS_THROTTLED 5 Power reduction active
I_STATUS_SHUTTING_DOWN 6 Inverter shutting down
I_STATUS_FAULT 7 One or more faults present, see
St*or Evt* register
I_STATUS_STANDBY 8 Standby
I_STATUS_NO_BUSINIT 9 No SolarNet communication
I_STATUS_NO_COMM_INV 10 No communication with inverter
possible
I_STATUS_SN_OVERCURRENT 11 Overcurrent detected on Solar-
Net plug
I_STATUS_BOOTLOAD 12 Inverter is currently being up-
dated
I_STATUS_AFCI 13 AFCI event (arc detection)
* Inverter model register
EN-US
83
Page 84
Nameplate Model (120)
General This model corresponds to a rating plate. The following data can be read:
DERType (3)
-
Type of device. The register returns the value 4 (PV device).
WRtg (4)
-
Nominal power of inverter.
VARtg (6)
-
Nominal apparent power of inverter.
VArRtgQ1 (8) – VArRtgQ4 (11)
-
Nominal reactive power values for the four quadrants.
ARtg (13)
-
Nominal current of inverter.
PFRtgQ1 (15) – PFRtgQ4 (18)
-
Minimal power factor values for the four quadrants.
Nameplate Re­gister
Start address:
for "float" setting: 40131
-
for "int+SF" setting: 40121
-
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
84
Page 85
Basic Settings Model (121)
Local Bus
Utility Power System
Local Power System with
Line Resistors
DER interconnections
Point of Common
Coupling (PCC)
Example Settings
VRef = 120V
VRefOfs = 2V
VRefOfs = 4V
VRefOfs = 3V
= Electrical Connection Point (ECP)
Basic Settings Register
Start address:
for "float" setting: 40159
-
for "int+SF" setting: 40149
-
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
Reference Volta-geVRef (4)
The reference voltage is the voltage at the joint connection point where the local grid is connected to the public grid. The reference voltage is the same as the in­verter's nominal voltage. => See figure "Joint Connection Point."
The value is given in volts in the range of 0 (0x0000) to 400 (0x0190).
EN-US
Deviation from Reference Volta­ge
Joint Connection Point
VRefOfs (5)
Depending on the wiring of the local grid, there may be a deviation from the refe­rence voltage at the point where each individual inverter is connected to the local grid (see "Joint connection point" diagram).
The value is given in volts in the range of -20 (0xFFEC) to 20 (0x0014).
85
Page 86
Extended Measurements & Status Model (122)
General This model provides some additional measurement and status values which the
normal inverter model does not cover:
PVConn (3)
-
This bit field displays the inverter's status
Bit 0: Connected
-
Bit 1: Responsive
-
Bit 2: Operating (inverter feeds energy in)
-
ECPConn (5)
-
This register displays the status of connection to the grid
ECPConn = 1: Inverter is currently feeding power into the grid
-
ECPConn = 0: Inverter is not feeding power into the grid
-
ActWH (6–9)
-
Active energy meter
StActCtl (36–37)
-
Bit field for currently active inverter modes
Bit 0: Power reduction (FixedW; corresponds to WMaxLimPct specificati-
-
on) Bit 1: Constant reactive power specification (FixedVAR; corresponds to
-
VArMaxPct) Bit 2: Setting a constant power factor (FixedPF; corresponds to OutPF-
-
Set)
Extended Mea­surements & Status Register
TmSrc (38–41)
-
Source for the time synchronization, the register returns the string "RTC"
Tms (42–43)
-
Current time and date of the RTC The seconds are specified from January 1, 2000 00:00 (UTC) to the current time.
Start address:
for "float" setting: 40191
-
for "int+SF" setting: 40181
-
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
86
Page 87
Immediate Control Model (123)
General The immediate controls can be used to make the following settings on the inver-
ter:
deactivation of inverter's grid power feed operation (standby)
-
constant reduction of output power
-
specification of a constant power factor
-
specification of a constant relative reactive power
-
In the settings on the inverter's web interface, the setting "Inverter control via Modbus" must be enabled under Modbus for write functions to be possible. De­pending on the control priority that has been set (IO control, dynamic power re­duction, or control via Modbus), Modbus commands may not be accepted.
EN-US
Immediate Con­trols Register
Standby Conn_WinTms (3) to Conn (5)
Start address:
for "float" setting: 40237
-
for "int+SF" setting: 40227
-
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
These registers are used to control the standby mode (no grid power feed opera­tion) of the inverter.
Conn_WinTms (3) and Conn_RvrtTms (4) These registers can be used to control the inverter's time response. => See sec­tion "Time Response of the Supported Operating Modes". 0 is set as the default for all registers.
Conn (5)
Register Conn indicates whether or not the inverter is currently feeding power in­to the grid (0 = standby, 1 = grid power feed operation).
In order to switch the inverter to standby, enter the value 0 into this register.
-
In order to reactivate the inverter, enter the value 1 into this register.
-
NOTE!
To find out whether or not the inverter is feeding power into the grid, you can also use the ECPConn register and check the extended measurements and sta­tus model.
Power reduction WMaxLimPct (6) to WMaxLim_Ena (10)
These registers can be used to set an output power reduction in the inverter.
WMaxLimPct (6)
In register WMaxLimPct you can enter values between 0% and 100%. Depending on the inverter’s software version, values below 10 may force the inverter into standby (no grid power feed operation).
87
Page 88
The values limit the device’s maximum possible output power and therefore may not necessarily affect the real-time power.
IMPORTANT! Observe the scale factor for this register. Further information can be found at: http://sunspec.org/wp-content/uploads/2015/06/SunSpec-Information-Mo­dels-12041.pdf
WMaxLimPct_WinTms (7), WMaxLimPct_RvrtTms (8)
These registers can be used to control the inverter’s time response for this ope­rating mode. => See section “Time Response of the Supported Operating Mo­des.” 0 is set as the default for all registers.
WMaxLim_Ena (10)
Used to start and end this operating mode
Enter value 1 into register WMaxLim_Ena = start operating mode
-
Enter value 0 into register WMaxLim_Ena = end operating mode
-
NOTE!
Proceed as follows to change values when an operating mode is active (e.
g., when setting a different power limit or return time):
Enter the new value into the relevant register
Restart the operating mode using register WMaxLim_Ena
Example: Setting a Power Reduction
If you are working with function code 0x10 (write multiple registers), perfor­mance specifications can be used to achieve a higher level of performance. Ins­tead of using two Modbus commands, it is now possible to preset both the power and enable at the same time with just one command. All 5 registers (WMaxLimPct, WMaxLimPct_WinTms, WMaxLimPct_RvrtTms, WMaxLimPct_RmpTms, WMaxLim_Ena) can be written with one command. Wri­ting to the non-supported "Read Only" register WMaxLimPct_RmpTms takes place without returning an otherwise usual exception (error) code. For example, register values for 80% specification without timing specification: 8000, 0, 0, 0, 1
Enter the value for the output power reduction in register WMaxLimPct
1
(e.g., 30 for 30%). As an option, you can set the start and return time using registers
2
WMaxLimPct_WinTms and WMaxLimPct_RvrtTms. Start the operating mode by entering 1 in register WMaxLim_Ena.
3
IMPORTANT! Observe the scale factor for this register.
Further information can be found at: http://sunspec.org/wp-content/uploads/2015/06/SunSpec-Information-Mo­dels-12041.pdf
Example: Changing the Return Time When Power Re­duction Has Be­en Activated
88
If the power reduction was originally started using WMaxLimPct_RvrtTms = 0, the operating mode must be manually deactivated.
Set WMaxLimPct_RvrtTms to 30, for example
1
Page 89
Apply the change by entering 1 in register WMaxLim_Ena
2
The operating mode is automatically deactivated after 30 seconds and
-
the mode with the next highest priority becomes active (e.g., dynamic power reduction)
Effects of Reac­tive Power Spe­cifications on Ef­fective Power
In principle, reactive power operation is limited by the maximum output current (the maximum apparent power) and by the operative reactive power limit of the inverter:
Fronius Galvo cos phi = 0.85, VArrel = 53%
-
Fronius Symo cos phi = 0.7, VArrel = 71%.
-
NOTE!
Due to the current technical conditions, only a cos phi up to a maximum of ±0.
80 can be specified per Modbus. In some circumstances, however, VAr
specifi-
rel
cations may demand a lower value.
The following diagram shows the possible working area of the inverter. All valid operating points defined by effective power P and reactive power Q are within the gray area.
Under-excited (inductive) Over-excited (capacitive)
EN-US
Reactive Power and Power Factor
Legend:
W Power VAr
x
W VAr
max
Nominal power Reactive power
VAr
Nominal reactive power
ma
Relative reactive power
rel
(VAr/VArmax)
89
Page 90
Constant Power Factor
OutPFSet (11) to OutPFSet_Ena (15) These registers can be used to set a constant power factor in the inverter.
OutPFSet (11)
In register OutPFSet it is possible to enter both positive and negative values
-
for the power factor. The values must be scaled up by the factor in register OutPFSet_SF.
-
The lowest possible values depend on the inverter type and can be found in
-
the Nameplate Model.
NOTE!
The power factor value must be entered with the correct sign, see section "Sign Convention for the Power Factor"
positive for under-excited
negative for over-excited.
OutPFSet_WinTms (12), OutPFSet_RvrtTms (13) These registers can be used to control the inverter's time response for this ope­rating mode. => See section "Time Response of the Supported Operating Modes". 0 is set as the default for all registers.
OutPFSet_Ena (15)
Used to start and end this operating mode
Enter value 1 into register OutPFSet_Ena = start operating mode
-
Enter value 0 into register OutPFSet_Ena = end operating mode.
-
Example: Setting a Con­stant Power Fac­tor
NOTE!
Proceed as follows to change values when an operating mode is active (e.g., when setting a different power factor or return time):
Enter the new value into the relevant register
Restart the operating mode using register OutPFSet_Ena.
Enter the power factor value in register OutPFSet
1
(e.g., 950 for 0.95). As an option, you can set the start and return time using registers OutPF-
2
Set_WinTms and OutPFSet_RvrtTms. Start the operating mode by entering 1 in register OutPFSet_Ena.
3
90
Page 91
Constant Relati­ve Reactive Power
VArMaxPct (17) to VArPct_Ena (23) These registers can be used to set on the inverter a constant value for the reacti­ve power to be produced by the inverter.
VArMaxPct (17)
Used to set a value for constant reactive power.
-
The minimum and maximum limits depend on the type of inverter.
-
NOTE!
In practical operation, the reactive power that is actually available is specified by the inverter's operating limits.
For this reason, the reactive power specification can only be reached if enough effective power is fed into the grid. If too little effective power is fed into the grid, the inverter will operate at its operating limit.
VArPct_WinTms (19), VArPct_RvrtTms (20)
These registers can be used to control the inverter's time response for this ope­rating mode. => See section "Time Response of the Supported Operating Modes". 0 is set as the default for all registers.
VArPct_Mod (22)
This register cannot be changed.
-
It returns the (currently) supported operating mode.
-
Reactive power as a percentage of the maximum possible reactive power.
EN-US
Example: Setting Constant Reactive Power
VArPct_Ena (23)
Used to start and end this operating mode
Enter value 1 into register VArPct_Ena = start operating mode
-
Enter value 0 into register VArPct_Ena = end operating mode.
-
NOTE!
Proceed as follows to change values when an operating mode is active (e.
g., when setting a different reactive power value or return time):
Enter the new value into the relevant register.
Restart the operating mode using register VArPct_Ena.
Enter the relative reactive power value in register VArMaxPct
1
(e.g., 80 for 80%). As an option, you can set the start and return time using registers
2
VArPct_WinTms and VArPct_RvrtTms. Start the operating mode by entering 1 in register VArPct_Ena.
3
91
Page 92
Multiple MPPT Inverter Extension Model (160)
General The Multiple MPPT Inverter Extension Model contains the values of up to two DC
inverter inputs.
If the inverter has two DC inputs, then this is where the current, voltage, power, energy, and status codes for the individual inputs are listed. In the inverter model (101–103 or 111–113), only the full DC power of both inputs is output in this ca­se. DC current and DC voltage are displayed as “not implemented”.
If the inverter only has one DC input, all values for the second string are set to “not implemented” (from register 2_DCA). The description of the second input (register 2_IDStr) appears as “not supported” in this case. The values for the first (and only) input are displayed normally.
Multiple MPPT Inverter Extensi­on Register
Start Offset
40 40 1 R 0x032_DCA uint16 A DCA_SFDC Current
41 41 1 R 0x032_DCV uint16 V DCV_SFDC Voltage
42 42 1 R 0x032_DCW uint16 W DCW_SFDC Power
1)
Total values
Size
End Offset
Start address:
for "float" setting: 40263
-
for "int+SF" setting: 40253
-
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
R/W
Function codes
Name
Type
Units
Scale factor
Description
Range of values
1)
1)
1)
DCW = Total DC power
In hybrid systems: String 1 = PV input String 2 = Storage
When discharging the storage: DCW = 1_DCW + 2_DCW When charging the storage: DCW = 1_DCW - 2_DCW
Examples
a) PV input: 2000 W production
==>
92
1_DCW = 2000 W
Page 93
Storage: 1000 W discharge ==> 2_DCW = 1000 W
DCW = 1_DCW + 2_DCW = 1000 W + 2000 W = 3000 W
b) PV input: 2000 W production
==>
Storage: - 1000 W charge ==> 2_DCW = 1000 W
DCW = 1_DCW + 2_DCW = 2000 W + (- 1000 W) = 1000 W
1_DCW = 2000 W
(only the absolute value can be shown in this regis­ter)
EN-US
93
Page 94
Basic Storage Control Model (124)
General This model is only available for inverters with a storage solution.
The Basic Storage Control Model can be used to make the following settings on the inverter:
Setting a power window within which the charge/discharge capacity of the
-
energy storage may fluctuate. Setting a minimum charge level that the energy storage must not fall below.
-
Permitting/preventing grid charging of the energy storage.
-
NOTE!
All specifications are to be considered recommendations. The inverter may deviate from the specifications if this is necessary for opera­tional safety reasons.
Information Pro­vided
Power Window Specifications
The Basic Storage Control Model provides the following read-only information:
WChaMax
If energy storage is available, this register feeds back the baseline value for
-
the registers OutWRte and InWRt. WChaMax := max(MaxChaRte, MaxDisChaRte) If energy storage is not available, the register feeds back a value of 0.
-
ChaState
Energy storage charge level in %:
-
Estimated_Capacity_Remaining [Wh] / Estimated_Capacity_Maximum [Wh]
ChaSt Energy storage operating status
OFF: Energy storage is not available
-
EMPTY: Energy storage is currently fully discharged
-
DISCHARGING: Energy storage is in the process of being discharged
-
CHARGING: Energy storage is in the process of being charged
-
FULL: Energy storage is currently fully charged
-
HOLDING: Energy storage is currently neither charged nor discharged
-
TESTING: used during calibration or service charge
-
In the settings on the inverter's web interface, the setting "Inverter control via Modbus" must be enabled under Modbus for write functions to be possible. De­pending on the control priority that has been set (IO control, dynamic power re­duction, or control via Modbus), Modbus commands may not be accepted.
94
The following examples assume that WchaMax = 3300 W.
The following applies for the resulting power windows:
Negative power values indicate that the energy storage is charging
-
Positive values indicate that the energy storage is discharging
-
Page 95
NOTE!
The values in the following examples must be scaled according to their scale factors in the specified scale registers after reading and before writing.
Manipulating the registers InWRte, OutWRte and StorCtl_Mod will generate changes in the battery status in Fronius Solar.web, ex: Forced Recharge and En­ergy saving mode, depending on user settings and current status of the battery.
Example 1: Only permit energy storage charging
This behavior can be achieved by limiting the maximum discharge capacity to 0% => results in window [-3300 W, 0 W]
OutWRte = 0% (set discharge limit of WchaMax to 0%)
-
StorCtl_Mod = 2 (activates discharge limit, bit pattern: 10)
-
InWRte is not relevant in this case
-
Example 2: Only permit energy storage discharging
This behavior can be achieved by limiting the maximum charge capacity to 0% => results in window [0 W, 3300 W]
InWRte = 0% (set charge limit of WchaMax to 0%)
-
StorCtl_Mod = 1 (bit 1 activates charge limit, bit pattern: 01)
-
OutWRte is not relevant in this case
-
EN-US
Example 3: Do not permit charging or discharging
This behavior can be achieved by limiting the maximum charge capacity to 0% and the maximum discharge capacity to 0% => results in window [0 W, 0 W]
InWRte = 0% (set charge limit of WchaMax to 0%)
-
OutWRte = 0% (set discharge limit of WchaMax to 0%)
-
StorCtl_Mod = 3 (activate both limit values, bit pattern: 11)
-
Example 4: Charging and discharging with maximum 50% of the nominal power
This behavior can be achieved by limiting the maximum charge capacity to 50% and the maximum discharge capacity to 50% => results in window [-1650 W, 1650 W]
InWRte = 50% (set charge limit of WchaMax to 50%)
-
OutWRte = 50% (set discharge limit of WchaMax to 50%)
-
StorCtl_Mod = 3 (activate both limit values, bit pattern: 11)
-
Example 5: Charging in the range of 50% to 75% of the nominal power
This behavior can be achieved by limiting the maximum charge capacity to 75% and the maximum discharge capacity to -50% => results in window [1650 W, 2475 W]
InWRte = 75% (set charge limit of WchaMax to 75%)
-
OutWRte = -50% (set discharge limit of WchaMax to -50%)
-
StorCtl_Mod = 3 (activate both limit values, bit pattern: 11)
-
Battery status in Fronius Solar.web will change to Forced Recharge
-
Example 6: Discharging with 50% of the nominal power
This behavior can be achieved by limiting the maximum charge capacity to -50% and the maximum discharge capacity to 50% => results in window [-1650 W, -1650 W]
InWRte = -50% (set charge limit of WchaMax to -50%)
-
OutWRte = 50% (set discharge limit of WchaMax to 50%)
-
StorCtl_Mod = 3 (activate both limit values, bit pattern: 11)
-
95
Page 96
Example 7: Charging with 50% to 100% of the nominal power
This behavior can be achieved by limiting the maximum discharge capacity to
-50% => results in window [1650 W, 3300 W]
OutWRte = -50% (set discharge limit of WchaMax to -50%)
-
StorCtl_Mod = 2 (activates discharge limit, bit pattern: 10)
-
InWRte is not relevant in this case
-
Battery status in Fronius Solar.web will change to Forced Recharge
-
Setting the Mini­mum Charge Le­vel
Charging the en­ergy storage via the grid
Basic Storage Controls Regis­ter
By setting register MinRsvPct, a minimum state of charge of the energy storage can be set. For example, by setting MinRsvPct to 20%, a reserve of 20% of the state of char­ge can be reserved that the state of charge should not fall below.
The ChaGriSet register can be used to allow or prevent inverter storage charging via the grid. The register ChaGriSet and the field "battery charging from DNO grid" in the Fronius system monitoring settings are AND-linked (Fronius system monitoring - Settings - DNO Editor - Battery charge). If the behavior is to be con­trolled by the ChaGriSet flag, "battery charging from DNO grid" must be che­cked.
The battery can be woken from standby mode via the IC124 model. If the So- cMin under the last known SoC is set while the battery is in standby mode, this will be enabled.
Start address:
for "float" setting: 40313
-
for "int+SF" setting: 40303
-
The Register tables can be found on the Fronius homepage or opened using the link:
Register manipu­lation and Batte­ry status chan­ges in Fronius Solar.web
http://www.fronius.com/QR-link/0006
Fronius Solar.web allow users to visualize status changes from the battery. These changes can be seen in Fronius Solar.web under the option Energy balance then Production or Consumption. The changes are marked with a bubble status, cli­cking on a state change will show the previous state followed by an arrow and the new state.
96
Page 97
Battery state change from Start-up to Normal Operation.
Battery status changes are triggered during normal operation (when the battery is ready to enter in operation, security reasons,etc) or by manipulating the mod­bus registers MinRsvPct, InWRte, OutWRte and StorCtl_Mod. The changes could be triggered as follows:
A minimum state of charge is set using the register MinRsvPct, the corre-
-
sponding state change is “Energy-saving mode”. Setting the registers InWRte, OutWRte, StorCtl_Mod the battery status
-
could change to “Forced Recharge”.
EN-US
97
Page 98
String Combiner Model (403)
String Combiner Register
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
98
Page 99
Meter Model
Meter Model Re­gister
The data of an energy meter connected with the Fronius Datamanager via Mod­bus RTU can be read by the relevant SunSpec models via Modbus TCP. In a similar way to the inverter models, there are also two different SunSpec mo­dels in this case:
the meter model with floating point display
-
(setting "float"; 211, 212 or 213) the meter model with integers and scaling factors
-
(setting "int+SF"; 201, 202 or 203)
The register number of the two model types is different!
The Modbus device ID of the energy meter is 240.
The Register tables can be found on the Fronius homepage or opened using the link:
http://www.fronius.com/QR-link/0006
There are 4 different meter locations, which are described by the location num­ber (see table). Depending on where the Smart Meter is located and whether the inverter is producing or consuming, the signs of the PowerReal values and the Energy values change. These are shown in the following table:
Meter_Loca­tion
0 (grid) 1 (load) 3 (ext. gene-
rator)
256-511 (subload)
EN-US
PowerRe­al_P_Sum (+ positive)
PowerRe­al_P_Sum (­negative)
energy plus (absolute counter)
energy minus (absolute counter)
*is not typically. May occur when other power generation is located in load path and producing more power than load can consume.
consuming from grid
feeding in to grid
import from grid = energy consumed
export to grid = energy pro­duced
producing power
normal con­sumption
producing power* = en­ergy produ­ced
consumption = energy con­sumed
generation load is produ-
cing power
consumption normal con-
sumption
generation = energy produ­ced
consumption = energy con­sumed
producing power* = en­ergy produ­ced
consumption = energy con­sumed
99
Page 100
End Block
General Two registers according to the last data model indicate that no further SunSpec
models will follow. The addresses of these two registers are different depending on the device type (inverter, String Control, energy meter) and selected data type ("float" or "int +SF").
Inverter:
-
- Start address for setting "float": 40313
-
- Start address for setting "int+SF": 40303
-
Fronius String Control:
-
- Start address: 40127
-
Energy meter:
-
- Start address for setting "float": 40195
-
- Start address for setting "int+SF": 40176
-
End Block The Register tables can be found on the Fronius homepage or opened using the
link:
http://www.fronius.com/QR-link/0006
100
Loading...