Skip to main content

IEC 61850 MMS

The IEC 61850 driver reads values from protection relays and other IEDs over MMS. It polls the IED for the values of the signals. For what all drivers have in common, see How drivers work.

Protocol and role​

RoleMMS client. YTCC connects to the IED and polls it.
TransportMMS over TCP. Keep the IED and the YTCC server in a protected network.
Default port102
Devices per driverOne IED. For several IEDs, add one driver per IED.
Driver typeIEC 61850 (iec61850)

Device parameters​

Set these on the device in Drivers → devices (see Add drivers and devices). The help mark next to each parameter shows a short description.

New device form of an IEC 61850 device with Host, Poll interval (ms), Port, Set invalid on disconnect and Timeout (ms).

ParameterDefaultMeaning
Host— (required)Address of the IED.
Port102MMS port.
Poll interval (ms)2000Time between two reading rounds; at least 50.
Timeout (ms)5000How long the driver waits for each value; at least 50. Connecting waits at least 30 seconds.
Set invalid on disconnectonWhen the connection is lost, mark all signals as Bad · Not connected.

Only Host and Port reconnect the IED; the other parameters take effect at once.

Signal address​

Set the address on the Value source tab of the signal, under Address — IEC 61850: the object reference of one data attribute, in the form LD/LN$FC$DO$DA…:

  • one / between the logical device and the logical node;
  • $ between all other parts, with the functional constraint (for example MX or ST) right after the logical node.
ValueExample
Phase A currentRelayLD/MMXU1$MX$A$phsA$cVal$mag$f
Breaker positionRelayLD/XCBR1$ST$Pos$stVal
Protection tripRelayLD/PTOC1$ST$Op$general

The reference must end at a single value (…$mag$f, …$stVal, …$general), not at a whole data object. In import files, write the same text in the address column; it is stored unchanged.

Data types​

IED data typeValue in YTCC
BooleanOn or off
Integer, unsignedInt32, UInt32
Floating pointFloat32
Visible stringText
Octet string, bit stringBytes

Reading​

When the connection opens, the driver loads the data model of the IED, which can take some time. Then it reads every signal once per Poll interval (ms), one after the other. A new or changed signal is read at once. With many signals, one round can take longer than the poll interval; rounds that cannot start in time are skipped.

Quality and time​

SituationQuality
The value was readGood
Read error, timeoutBad for that signal
No signal of a round could be read, or no connectionBad · Not connected for all signals (with Set invalid on disconnect)

When the connection is lost, the signals keep their last value. The time of a value is the time it was read.

Reconnecting​

After the connection is lost, the driver waits 5 seconds and connects again, without limit. A change of Host or Port reconnects at once.

Diagnostics​

Read now on the Value source tab reads the reference once (waiting at most 2 seconds):

TextMeaning
Invalid IEC 61850 address: '…' is not an object reference (LD/LN$FC$DO$DA)The address is not in the $ form
No connection to the device (IED … at …)The IED is not connected
Timeout — no response within … msThe IED did not answer
IEC 61850 read failed: …The IED refused the reference, for example because it does not exist
Unsupported data type …The reference does not point to a value of a type in Data types
SymptomLikely cause
All signals BadReferences in the dotted form, or without the functional constraint
One signal BadThe logical node instance (for example MMXU1 or MMXU2) or the functional constraint does not exist; the reference ends at a structure
Connecting takes longThe IED has a large data model; this is normal
Values update slowlyMany signals or a short Timeout (ms): a round takes longer than Poll interval (ms)

Supported services​

ServiceSupported
AssociateYes
Data model upload when connectingYes
Read data valuesYes, one value per request