...
A unique text string which identifying IEC 61850 object or its attribute (a reference). Maximum size is 64 characters.
Note: if I/O tag's address is specified as %IGNORE, such an I/O tag will be ignored.
According to the standard ISO/IEC IEC 61850-8-1 the reference is in form
<LNVariableName>$<FC>$<LNDataName>$<AttributeName> (napr. XCBR1$ST$Pos$stVal)
respectively - if subattributes are used - in form
<LNVariableName>$<FC>$<LNDataName>$<AttributeName>$<subDataAttributeName> (napr. XBCR1$ST$Pos$origin$orCat)
where:
- LNVariableName is a name of a Logical Node. The name can be arbitrary, e.g. LLN0, Obj1XCBR1, Obj2XSWI1
- FC is a Functional Constraint. Table of defined functional constraints can be seen below.
- LNDataName is a name of a Data Object. The name can be arbitrary, the standard contains recommended rules concerning naming conventions.
- AttributeName is a name of a Data Object Attribute. Table of frequently used attributes can be seen below.
- subDataAttributeName jis a name of a Data Object Subattribute.
The standard defines following naming conventions for individual components of a reference:
Defined Functional Constraints according to ISO/IEC IEC 61850-8-1:
FC Name | Description |
---|---|
MX | Measurands (analogue values) |
ST | Status information |
CO | Control service parameters |
CF | Configuration |
DC | Description |
SP | Setting (outside setting group) |
SG | Setting group |
RP | Unbuffered report control blocks |
LG | Log control blocks |
BR | Buffered report control blocks |
GO | GOOSE control blocks |
GS | GSSE control blocks |
SV | Substituted values |
SE | Setting group editing |
MS | Multicast Sampled Values control block |
US | Unicast Sampled Values control block |
EX | Name space for model extension |
SR | Service tracking |
OR | Operate received |
BL | Blocking |
Names of Data Object Attributes are defined in ISO/IEC IEC 61850-7-3 and following table contains only the most common ones:
Attribute Name | Description |
---|---|
ctlModel | Specifies the control model of IEC 61850-7-2 that corresponds to the behaviour of the data. |
d | Textual description of the data. |
evalTm | Time window applied to interharmonic calculations. The value shall be represented in ms. |
frequency | Nominal frequency of the power system or some other fundamental frequency in Hz. |
numCyc | Number of cycles of power frequency, which are used for harmonic, subharmonic and interharmonic calculations. |
numHar | Number of harmonic and subharmonics or interharmonic values that are to be returned as the value attribute. |
phsAHar, phsBHar, phsCHar | This array shall contain the harmonic and subharmonics or interharmonic values related to phase A (resp. B, C). |
phsABHar, phsBCHar,phsCAHar | This array shall contain the harmonic and subharmonics or interharmonic values related to phase A to phase B (resp. B to C, resp. C to A). |
q | Quality of the attribute(s) epresenting the value of the data |
setCharact | This attribute shall describe the curve characteristic. |
setMag | The value of an analogue setting or set point. |
stVal | Status value of the data |
swRev | SW-revision |
t | Timestamp of the last change in one of the attribute(s) representing the value of the data or in the q attribute. |
units | Units of the attribute(s) representing the value of the data (ISO/IEC IEC 61850-7-3 Annex A) |
vendor | Name of the vendor. |
Data Type
The list of permitted data types:
Data Type | Popis | ||||||
| The Data Type will be queried by a GetVariableAccessAttributes-Request message after the conection establishment. Note 1: information is currently stored only in KOM process memory, therefore after its restart and the first connection establishment the data type detection is performed for all Autodetect I/O tags. | ||||||
Discrete * | ICCP: Integer 32-bit value signed | ||||||
DiscreteQ * | ICCP: Integer 32-bit signed value + ICCP Validity | ||||||
DiscreteQTimeTag * | ICCP: Integer 32-bit signed value + ICCP Validity + Time stamp | ||||||
DiscreteExtended * | ICCP: Integer 32-bit signed value + ICCP Validity + Current Source + Extended time stamp | ||||||
Real * | ICCP: Float 32 | ||||||
RealQ * | ICCP: Float 32 + ICCP Validity | ||||||
RealQTimeTag * | ICCP: Float 32 + ICCP Validity + Time stamp | ||||||
RealExtended * | ICCP: Float 32 + ICCP Validity + Current Source + Extended time stamp | ||||||
State * | ICCP: Discrete 2-bit value | ||||||
StateQ * | ICCP: Discrete 2-bit value + ICCP Validity | ||||||
StateQTimeTag * | ICCP: Discrete 2-bit value + ICCP Validity + Time stamp | ||||||
StateExtended * | ICCP: Discrete 2-bit value + ICCP Validity + Current Source + Extended time stamp | ||||||
Boolean | Boolean value | ||||||
Float32 | 32-bit real value | ||||||
Float64 | 64-bit real value | ||||||
Integer8 | 8-bit signed integer value | ||||||
Integer16 | 16-bit signed integer value | ||||||
Integer32 | 32-bit signed integer value | ||||||
Integer64 | 64-bit signed integer value | ||||||
Unsigned8 | 8-bit unsigned integer value | ||||||
Unsigned16 | 16-bit unsigned integer value | ||||||
Unsigned24 | 24-bit unsigned integer value | ||||||
Unsigned32 | 32-bit unsigned integer value | ||||||
OctetString | Variable-length binarny string | ||||||
VisibleString | Variable-length text string | ||||||
UnicodeString | Variable-length text string in UTF8 encoding | ||||||
BitString | Variable-length bit string | ||||||
UtcTime | Absolute time (format seconds since 1.1.1970 + miliseconds) | ||||||
TimeOfDay | Absolute/relative time (format seconds and miliseconds of a day + optionally number of days since 1.1.1984) | ||||||
Array of Boolean | Array of Boolean values | ||||||
Array of Float32 | Array of 32-bit real values | ||||||
Array of Float64 | Array of 64-bit real values | ||||||
Array of Integer8 | Array of 8-bit signed integer values | ||||||
Array of Integer16 | Array of 16-bit signed integer values | ||||||
Array of Integer32 | Array of 32-bit signed integer values | ||||||
Array of Integer64 | Array of 64-bit signed integer values | ||||||
Array of Unsigned8 | Array of 8-bit unsigned integer values | ||||||
Array of Unsigned16 | Array of 16-bit unsigned integer values | ||||||
Array of Unsigned24 | Array of 24-bit unsigned integer values | ||||||
Array of Unsigned32 | Array of 32-bit unsigned integer values | ||||||
Array of OctetString | Array of variable-length binarny strings | ||||||
Array of VisibleString | Array of variable-length text strings | ||||||
Array of UnicodeString | Array of variable-length text string in UTF8 encoding | ||||||
Array of BitString | Array of variable-length bit strings | ||||||
Array of UtcTime | Array of absolute times (format seconds since 1.1.1970 + miliseconds) | ||||||
Array of TimeOfDay | Array of absolute/relative times (format seconds and miliseconds of a day + optionally number of days since 1.1.1984) | ||||||
| Structure or Array. Structure can contain simple types, arrays, and nested structures. Arrays consist of elements that can be simple types (here, however, it is more efficient to use some of the Array of types), structures and arrays. If a data type of an I/O tag is configured as a Structure, the Array Index parameter specifies the complex address of the structure element to be read in the I/O tag. |
Note * - types marked with asterisk (*) are used in IEC 60870-6 ICCP/TASE.2 protocol (which uses a common MMS framework). For IEC 61850, we recommend not using these types. Kotva IccpTypes IccpTypes
Array Index Kotva array_index array_index
...
Quality Offset Kotva qualityoffset qualityoffset
For the Structure object type: it is possible to specify offset where IEC 61850 Quality is located. Offset defines a position relative to position of value given by a complex address. Offset 1 means that the IEC 61850 Quality is located directly after the value, offset -1 means that the quality is located directly before the value.
IEC 61850 Quality is of Bitstring type with length of 2 bytes. 13 quality bits are defined as follows (the standard numbers the bits so that the highest bit is 0 and the lowest is 15):
Bit(s) | Note | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0-1 | Validity:
| |||||||||||||||
2 | Overflow | |||||||||||||||
3 | OutofRange | |||||||||||||||
4 | BadReference | |||||||||||||||
5 | Oscillatory | |||||||||||||||
6 | Failure | |||||||||||||||
7 | OldData | |||||||||||||||
8 | Inconsistent | |||||||||||||||
9 | Inaccurate | |||||||||||||||
10 | Source ( 0-Process, 1-Substituted) | |||||||||||||||
11 | Test | |||||||||||||||
12 | OperatorBlocked | |||||||||||||||
13-15 | unused bits |
If at least one of bits number 2-12 is set, value in D2000 has a Weak attribute.
See the example in Time Offset.
Time Offset Kotva timeoffset timeoffset
For the Structure object type: it is possible to specify offset where timestamp is located. Offset defines a position relative to position of value given by a complex address. Offset 1 means that the timestamp is located directly after the value, offset -1 means that the timestamp is located directly before the value.
If the Time Offset is not defined (or is equal to 0), the timestamp of the information report (for I/O Tag Type=Buffered/unbuffered report value) or the current time (for I/O Tag Type=Periodically polled value) will be used.
Example: information report contains a structure which contains a Bitstring value followed by qualit and timestamp. Therefore the object's address has Array Index = 0, Quality Offset = 1 and Time Offset = 2.
Log line | Note |
---|---|
14:35:36.198 09-07-2018|D|MMS> [1] STRUCTURE{ | Object of Structure type |
14:35:36.200 09-07-2018|D|MMS> [1] Bitstring=<80> | Value (Array Index = 0) |
14:35:36.202 09-07-2018|D|MMS> [1] Bitstring=<00><00> | Quality (Quality Offset = 1) |
14:35:36.204 09-07-2018|D|MMS> [1] seconds= 1531115260 fraction= 3223372800 (09-07-2018 07:47:40.751) | Timestamp (Time Offset = 2) |
14:35:36.206 09-07-2018|D|MMS> [1] } | End of Structure object |
Integrity Period
This parameter is enabled for the I/O tags of "Buffered / Unbuffered Report" type and it specifies a period (in ms) after which a report containing the values of all objects in the given datasheet is generated. Therefore, if a loss of value has occurred in some way, this Integrity Report will periodically restore the integrity of the data. Value 0 turns off the generation of Integrity Report. The non-zero value causes a write to the $IntgPd report attribute during the report activation .
Note: Not all IEC 61850 servers support this parameter.
Kotva | ||||
---|---|---|---|---|
|
For the I/O tags, it is possible to find a list of objects and their data types, as long as the KOM process is running and communication is established.
When a Browse button is clicked, the IEC61850 Browser window opens, and the KOM process begins to query the list of objects with the GetNameList-Request message and then their data types with the GetVariableAccessAttributes-Request message.
Img. no. 3, the IEC 61850 Item Browser window
Meaning of individual choices and buttons:
Auto
If this choice is active, the Data Type will be set to Autodetect, otherwise to value discovered during browsing , e.g. Boolean or Integer32.
...