IEC 61850 Client
Dieser Adapter verbindet sich zu einem MMS-Server und liest die Geräte- und Knoteninformationen aus.
Der Connector stellt damit eine Basis-Schnittstelle für den weltweit etablierten Kommunikationsstandard IEC 61850 für die Automatisierung von Schaltanlagen zur Verfügung. Er agiert als Client und kann Nachrichten als klassische Client-Server-Kommunikation empfangen.
Eigenschaften (Properties)
Operation | Bestimmt, welche Operation der Adapter durchführt Mögliche Werte:
|
Parameter
Adapter | Hauptklasse des Adapters (nicht verändern!) Mögliche Werte: de.softproject.integration.adapter.iec.IEC61850 : Hauptklasse (Standard) |
address | IP-Adresse oder Host-Name des MMS-Servers Mögliche Werte: Beliebige gültige Zeichenkette (z. B. |
port | Portnummer des MMS-Servers Mögliche Werte: Beliebige ganze Zahl |
authenticationParameter | Optionaler Anmeldungsparameter zur Anmeldung am MMS-Server |
responseTimeout | Zeitbeschränkung für die Server-Anfrage in Millisekunden Mögliche Werte:
|
messageFragmentTimeout | Zeitbeschränkung zwischen zwei eingehenden Datenpaketen in Millisekunden Mögliche Werte:
|
maxTPDU | Setzt die maximale TPDU (Transfer Protocol Data Unit) Mögliche Werte: Beliebige ganze Zahl |
maxMMSPDU | Setzt die maximale MMS PDU Mögliche Werte: Beliebige ganze Zahl zwischen 64 und 65000 |
Statuswerte
1 (successful) | Die Anfrage war erfolgreich und ein Ergebnis wurde zurückgegeben |
-1 (failed) | Die Anfrage schlug aufgrund eines technischen Fehlers fehl |
Input
Operation RequestServerModel
Die Operation RequestServerModel
benötigt kein Input-XML.
Operation RequestServerNodes
Die Operation RequestServerNodes
erwarten ein Input-XML, das wie folgt aufgebaut ist:
<RootElement>
<!-- @Fc ist optional; @ObjectReference ist erforderlich -->
<Node ObjectReference="ied1lDevice1/LPHD1"/> <!-- Liefert alle Knoten und Geräte innerhalb von ied1lDevice1/LPHD1 -->
<Node ObjectReference="ied1lDevice1/LPHD1" Fc="MX"/><!-- Liefert alle Knoten und Geräte innerhalb von ied1lDevice1/LPHD1 mit dem Function Code MX -->
</RootElement>
Output
Operation RequestServerModel
Die Operation RequestServerModel
gibt ein XML-Dokument aus, das wie folgt aufgebaut ist:
<?xml version="1.0" encoding="UTF-8"?>
<ServerModel>
<LogicalDevice Name="ied1lDevice1" ObjectReference="ied1lDevice1">
<LogicalNode Name="LLN0" ObjectReference="ied1lDevice1/LLN0">
<FcDataObject Name="Mod" ObjectReference="ied1lDevice1/LLN0.Mod"
Fc="ST">
<BdaQuality Name="q" ObjectReference="ied1lDevice1/LLN0.Mod.q"
Fc="ST" />
<BdaTimestamp Name="t" ObjectReference="ied1lDevice1/LLN0.Mod.t"
Fc="ST" />
</FcDataObject>
<FcDataObject Name="Beh" ObjectReference="ied1lDevice1/LLN0.Beh"
Fc="ST">
<BdaInt32 Name="stVal" ObjectReference="ied1lDevice1/LLN0.Beh.stVal"
Fc="ST" />
<BdaQuality Name="q" ObjectReference="ied1lDevice1/LLN0.Beh.q"
Fc="ST" />
<BdaTimestamp Name="t" ObjectReference="ied1lDevice1/LLN0.Beh.t"
Fc="ST" />
</FcDataObject>
</LogicalNode>
</LogicalDevice>
</ServerModel>
Operation RequestServerNodes
Die Operation RequestServerNodes
gibt ein XML-Dokument aus. Dabei wird das Input-XML in den jeweiligen Knoten um die Antwort erweitert:
<?xml version="1.0" encoding="UTF-8"?>
<RootElement>
<Node ObjectReference="ied1lDevice1/LPHD1" Fc="MX">
<NoResult />
</Node>
<Node ObjectReference="ied1lDevice1/LPHD1" Fc="DC">
<LogicalNode Name="LPHD1" ObjectReference="ied1lDevice1/LPHD1">
<FcDataObject Name="PhyNam" ObjectReference="ied1lDevice1/LPHD1.PhyNam"
Fc="DC">
<BdaVisibleString Name="vendor"
ObjectReference="ied1lDevice1/LPHD1.PhyNam.vendor" Fc="DC" Value=""
MaxLength="255" StringValue="" />
</FcDataObject>
</LogicalNode>
</Node>
<Node ObjectReference="ied1lDevice1/LPHD1">
<LogicalNode Name="LPHD1" ObjectReference="ied1lDevice1/LPHD1">
<FcDataObject Name="PhyHealth" ObjectReference="ied1lDevice1/LPHD1.PhyHealth"
Fc="ST">
<BdaInt32 Name="stVal" ObjectReference="ied1lDevice1/LPHD1.PhyHealth.stVal"
Fc="ST" Value="0" />
<BdaQuality Name="q" ObjectReference="ied1lDevice1/LPHD1.PhyHealth.q"
Fc="ST" Value="AAA=" Overflow="false" Inconsistent="false"
Validity="GOOD" OperatorBlocked="false" Inaccurate="false" OldData="false"
Oscillatory="false" BadReference="false" Failure="false"
Substituted="false" OutOfRange="false" Test="false" />
<BdaTimestamp Name="t" ObjectReference="ied1lDevice1/LPHD1.PhyHealth.t"
Fc="ST" Value="AAAAAAAAAAA=" Date="1970-01-01T00:00:00Z"
LeapSecondsKnown="false" ClockNotSynchronized="false" TimeAccuracy="0"
ClockFailure="false" />
</FcDataObject>
<FcDataObject Name="Proxy" ObjectReference="ied1lDevice1/LPHD1.Proxy"
Fc="ST">
<BdaBoolean Name="stVal" ObjectReference="ied1lDevice1/LPHD1.Proxy.stVal"
Fc="ST" Value="false" />
<BdaQuality Name="q" ObjectReference="ied1lDevice1/LPHD1.Proxy.q"
Fc="ST" Value="AAA=" Overflow="false" Inconsistent="false"
Validity="GOOD" OperatorBlocked="false" Inaccurate="false" OldData="false"
Oscillatory="false" BadReference="false" Failure="false"
Substituted="false" OutOfRange="false" Test="false" />
<BdaTimestamp Name="t" ObjectReference="ied1lDevice1/LPHD1.Proxy.t"
Fc="ST" Value="AAAAAAAAAAA=" Date="1970-01-01T00:00:00Z"
LeapSecondsKnown="false" ClockNotSynchronized="false" TimeAccuracy="0"
ClockFailure="false" />
</FcDataObject>
<FcDataObject Name="PhyNam" ObjectReference="ied1lDevice1/LPHD1.PhyNam"
Fc="DC">
<BdaVisibleString Name="vendor"
ObjectReference="ied1lDevice1/LPHD1.PhyNam.vendor" Fc="DC" Value=""
MaxLength="255" StringValue="" />
</FcDataObject>
</LogicalNode>
</Node>
</RootElement>