libiec61850.NET  1.5.1
IEC 61850 .NET API for libiec61850 protocol library
IEC61850.Common Namespace Reference

Classes

class  LibIEC61850
 
class  MmsValue
 This class is used to hold MMS data values of different types. More...
 
class  MmsValueException
 
class  MmsVariableSpecification
 MMS variable specification. This class is used to represent an MMS variable type definition. More...
 
class  ObjectReference
 Object reference. Helper function to handle object reference strings.
 
class  PhyComAddress
 
class  Quality
 The quality of a data object. More...
 
class  Timestamp
 Timestamp (represents IEC 61850 timestamps e.g. "t" attribute) More...
 

Enumerations

enum  ControlModel {
  ControlModel.STATUS_ONLY = 0, ControlModel.DIRECT_NORMAL = 1, ControlModel.SBO_NORMAL = 2, ControlModel.DIRECT_ENHANCED = 3,
  ControlModel.SBO_ENHANCED = 4
}
 Control model More...
 
enum  OrCat {
  OrCat.NOT_SUPPORTED = 0, OrCat.BAY_CONTROL = 1, OrCat.STATION_CONTROL = 2, OrCat.REMOTE_CONTROL = 3,
  OrCat.AUTOMATIC_BAY = 4, OrCat.AUTOMATIC_STATION = 5, OrCat.AUTOMATIC_REMOTE = 6, OrCat.MAINTENANCE = 7,
  OrCat.PROCESS = 8
}
 Originator category More...
 
enum  Iec61850Edition : byte { EDITION_1 = 0, EDITION_2 = 1, EDITION_2_1 = 2 }
 
enum  MmsDataAccessError {
  NO_RESPONSE = -2, SUCCESS = -1, OBJECT_INVALIDATED = 0, HARDWARE_FAULT = 1,
  TEMPORARILY_UNAVAILABLE = 2, OBJECT_ACCESS_DENIED = 3, OBJECT_UNDEFINED = 4, INVALID_ADDRESS = 5,
  TYPE_UNSUPPORTED = 6, TYPE_INCONSISTENT = 7, OBJECT_ATTRIBUTE_INCONSISTENT = 8, OBJECT_ACCESS_UNSUPPORTED = 9,
  OBJECT_NONE_EXISTENT = 10, OBJECT_VALUE_INVALID = 11, UNKNOWN = 12
}
 MMS data access error for MmsValue type MMS_DATA_ACCESS_ERROR More...
 
enum  TriggerOptions {
  NONE = 0, TriggerOptions.DATA_CHANGED = 1, TriggerOptions.QUALITY_CHANGED = 2, TriggerOptions.DATA_UPDATE = 4,
  TriggerOptions.INTEGRITY = 8, TriggerOptions.GI = 16, TriggerOptions.TRG_OPT_TRANSIENT = 128
}
 
enum  SmpMod { SAMPLES_PER_PERIOD = 0, SAMPLES_PER_SECOND = 1, SECONDS_PER_SAMPLE = 2 }
 SmpMod values More...
 
enum  SVOptions {
  NONE = 0, REFRESH_TIME = 1, SAMPLE_SYNC = 2, SAMPLE_RATE = 4,
  DATA_SET = 8, SECURITY = 16, ALL = 31
}
 Values for Sampled Values (SV) OptFlds More...
 
enum  ReportOptions {
  NONE = 0, SEQ_NUM = 1, TIME_STAMP = 2, REASON_FOR_INCLUSION = 4,
  DATA_SET = 8, DATA_REFERENCE = 16, BUFFER_OVERFLOW = 32, ENTRY_ID = 64,
  CONF_REV = 128, SEGMENTATION = 256, ALL
}
 
enum  Validity { GOOD = 0, RESERVED = 1, INVALID = 2, QUESTIONABLE = 3 }
 
enum  ACSIClass {
  ACSIClass.ACSI_CLASS_DATA_OBJECT, ACSIClass.ACSI_CLASS_DATA_SET, ACSIClass.ACSI_CLASS_BRCB, ACSIClass.ACSI_CLASS_URCB,
  ACSIClass.ACSI_CLASS_LCB, ACSIClass.ACSI_CLASS_LOG, ACSIClass.ACSI_CLASS_SGCB, ACSIClass.ACSI_CLASS_GoCB,
  ACSIClass.ACSI_CLASS_GsCB, ACSIClass.ACSI_CLASS_MSVCB, ACSIClass.ACSI_CLASS_USVCB
}
 
enum  FunctionalConstraint {
  FunctionalConstraint.ST = 0, FunctionalConstraint.MX = 1, FunctionalConstraint.SP = 2, FunctionalConstraint.SV = 3,
  FunctionalConstraint.CF = 4, FunctionalConstraint.DC = 5, FunctionalConstraint.SG = 6, FunctionalConstraint.SE = 7,
  FunctionalConstraint.SR = 8, FunctionalConstraint.OR = 9, FunctionalConstraint.BL = 10, FunctionalConstraint.EX = 11,
  FunctionalConstraint.CO = 12, FunctionalConstraint.US = 13, FunctionalConstraint.MS = 14, FunctionalConstraint.RP = 15,
  FunctionalConstraint.BR = 16, FunctionalConstraint.LG = 17, FunctionalConstraint.ALL = 99, NONE = -1
}
 
enum  ControlLastApplError { NO_ERROR = 0, UNKNOWN = 1, TIMEOUT_TEST = 2, OPERATOR_TEST = 3 }
 Definition for LastAppError error type for control models Used in LastApplError and CommandTermination messages. More...
 
enum  ControlAddCause {
  ADD_CAUSE_UNKNOWN = 0, ADD_CAUSE_NOT_SUPPORTED = 1, ADD_CAUSE_BLOCKED_BY_SWITCHING_HIERARCHY = 2, ADD_CAUSE_SELECT_FAILED = 3,
  ADD_CAUSE_INVALID_POSITION = 4, ADD_CAUSE_POSITION_REACHED = 5, ADD_CAUSE_PARAMETER_CHANGE_IN_EXECUTION = 6, ADD_CAUSE_STEP_LIMIT = 7,
  ADD_CAUSE_BLOCKED_BY_MODE = 8, ADD_CAUSE_BLOCKED_BY_PROCESS = 9, ADD_CAUSE_BLOCKED_BY_INTERLOCKING = 10, ADD_CAUSE_BLOCKED_BY_SYNCHROCHECK = 11,
  ADD_CAUSE_COMMAND_ALREADY_IN_EXECUTION = 12, ADD_CAUSE_BLOCKED_BY_HEALTH = 13, ADD_CAUSE_1_OF_N_CONTROL = 14, ADD_CAUSE_ABORTION_BY_CANCEL = 15,
  ADD_CAUSE_TIME_LIMIT_OVER = 16, ADD_CAUSE_ABORTION_BY_TRIP = 17, ADD_CAUSE_OBJECT_NOT_SELECTED = 18, ADD_CAUSE_OBJECT_ALREADY_SELECTED = 19,
  ADD_CAUSE_NO_ACCESS_AUTHORITY = 20, ADD_CAUSE_ENDED_WITH_OVERSHOOT = 21, ADD_CAUSE_ABORTION_DUE_TO_DEVIATION = 22, ADD_CAUSE_ABORTION_BY_COMMUNICATION_LOSS = 23,
  ADD_CAUSE_ABORTION_BY_COMMAND = 24, ADD_CAUSE_NONE = 25, ADD_CAUSE_INCONSISTENT_PARAMETERS = 26, ADD_CAUSE_LOCKED_BY_OTHER_CLIENT = 27
}
 AddCause - additional cause information for control model errors Used in LastApplError and CommandTermination messages. More...
 
enum  MmsType {
  MmsType.MMS_ARRAY = 0, MmsType.MMS_STRUCTURE = 1, MmsType.MMS_BOOLEAN = 2, MmsType.MMS_BIT_STRING = 3,
  MmsType.MMS_INTEGER = 4, MmsType.MMS_UNSIGNED = 5, MmsType.MMS_FLOAT = 6, MmsType.MMS_OCTET_STRING = 7,
  MmsType.MMS_VISIBLE_STRING = 8, MmsType.MMS_GENERALIZED_TIME = 9, MmsType.MMS_BINARY_TIME = 10, MmsType.MMS_BCD = 11,
  MmsType.MMS_OBJ_ID = 12, MmsType.MMS_STRING = 13, MmsType.MMS_UTC_TIME = 14, MmsType.MMS_DATA_ACCESS_ERROR = 15
}
 

Enumeration Type Documentation

◆ ACSIClass

Enumerator
ACSI_CLASS_DATA_OBJECT 

data objects

ACSI_CLASS_DATA_SET 

data sets (container for multiple data objects)

ACSI_CLASS_BRCB 

buffered report control blocks

ACSI_CLASS_URCB 

unbuffered report control blocks

ACSI_CLASS_LCB 

log control blocks

ACSI_CLASS_LOG 

logs (journals)

ACSI_CLASS_SGCB 

setting group control blocks

ACSI_CLASS_GoCB 

GOOSE control blocks

ACSI_CLASS_GsCB 

GSE control blocks

ACSI_CLASS_MSVCB 

multicast sampled values control blocks

ACSI_CLASS_USVCB 

unicast sampled values control blocks

◆ ControlAddCause

AddCause - additional cause information for control model errors Used in LastApplError and CommandTermination messages.

◆ ControlLastApplError

Definition for LastAppError error type for control models Used in LastApplError and CommandTermination messages.

◆ ControlModel

Control model

Enumerator
STATUS_ONLY 

status only

DIRECT_NORMAL 

direct with normal security

SBO_NORMAL 

select before operate (SBO) with normal security

DIRECT_ENHANCED 

direct with enhanced security

SBO_ENHANCED 

select before operate (SBO) with enhanced security

◆ FunctionalConstraint

Enumerator
ST 

Status information

MX 

Measurands - analog values

SP 

Setpoint

SV 

Substitution

CF 

Configuration

DC 

Description

SG 

Setting group

SE 

Setting group editable

SR 

Service response / Service tracking

OR 

Operate received

BL 

Blocking

EX 

Extended definition

CO 

Control

US 

Unicast SV

MS 

Multicast SV

RP 

Unbuffered report

BR 

Buffered report

LG 

Log control blocks

ALL 

All FCs - wildcard value

◆ MmsDataAccessError

MMS data access error for MmsValue type MMS_DATA_ACCESS_ERROR

◆ MmsType

Enumerator
MMS_ARRAY 

array type (multiple elements of the same type)

MMS_STRUCTURE 

structure type (multiple elements of different types)

MMS_BOOLEAN 

boolean

MMS_BIT_STRING 

bit string

MMS_INTEGER 

signed integer

MMS_UNSIGNED 

unsigned integer

MMS_FLOAT 

floating point value (32 or 64 bit)

MMS_OCTET_STRING 

octet string

MMS_VISIBLE_STRING 

visible string - ANSI string

MMS_GENERALIZED_TIME 

Generalized time

MMS_BINARY_TIME 

Binary time

MMS_BCD 

Binary coded decimal (BCD) - not used

MMS_OBJ_ID 

object ID - not used

MMS_STRING 

Unicode string

MMS_UTC_TIME 

UTC time

MMS_DATA_ACCESS_ERROR 

will be returned in case of an error (contains error code)

◆ OrCat

enum IEC61850.Common.OrCat
strong

Originator category

Enumerator
NOT_SUPPORTED 

Not supported - should not be used

BAY_CONTROL 

Control operation issued from an operator using a client located at bay level

STATION_CONTROL 

Control operation issued from an operator using a client located at station level

REMOTE_CONTROL 

Control operation from a remote operator outside the substation (for example network control center)

AUTOMATIC_BAY 

Control operation issued from an automatic function at bay level

AUTOMATIC_STATION 

Control operation issued from an automatic function at station level

AUTOMATIC_REMOTE 

Control operation issued from a automatic function outside of the substation

MAINTENANCE 

Control operation issued from a maintenance/service tool

PROCESS 

Status change occurred without control action (for example external trip of a circuit breaker or failure inside the breaker)

◆ SmpMod

SmpMod values

◆ SVOptions

Values for Sampled Values (SV) OptFlds

◆ TriggerOptions

Enumerator
DATA_CHANGED 

send report when value of data changed

QUALITY_CHANGED 

send report when quality of data changed

DATA_UPDATE 

send report when data or quality is updated

INTEGRITY 

periodic transmission of all data set values

GI 

general interrogation (on client request)

TRG_OPT_TRANSIENT 

Report will be triggered only on rising edge (transient variable)