Librarian Configuration Workspace

This section provides information on object models, import rules, and handling fault events.

Define an IEC61850 Object Model

In order to represent an IEC61850 device in the management station, you must first define an object model using one of the following procedures:

  • Designing the object model by browsing an online IEC 61850 device
  • Designing the object model using the offline method

When you define an object model, the following two files are created and stored in the Temp folder on your system:

  • IEC_OM.csv – Contains information of the defined object model.
  • Rules.xml – Contains the Import Rules for the defined object model.

Using these files, you can alternatively define Import Rules from the Libraries folder and modify the Import Rules. In order to modify the Import Rules, you must merge the contents of Rules.xml from your Temp folder with the Rules.xml located at GMSCustomerProject\libraries\EnergyandPower_Device_IEC61850_HQ_1\ImportRules.

After defining an object model, you must configure it with additional properties, if you want the IEC61850 device to support events. For information on configuring additional properties, see Configuring an Object Model for Event Support.

Engineering Data

In order to create instances of IEC61850 devices, you must create the engineering data in the form of a comma-separated value (CSV) file. A CSV file contains data in which values are represented as text and separated using a separator such as comma a (,). The file in the CSV format can be edited in text editors such as Wordpad or Notepad. More elaborate editing can be done using advanced word processing tools, like Excel. The Importer can only parse CSV files which use a comma (,) as a separator.

The CSV file contains mandatory, as well as non-mandatory data. The following table provides more information related to the parsing of data with reference to mandatory and non-mandatory information in the CSV file.

Error Condition

Result

Value of a mandatory field is incorrect in a CSV file row

The data in the entire row is not allowed for import.
The information is logged as an error message in the Analysis Log and Trace Viewer.

Value of a mandatory field is blank in a CSV file row

The data in the entire row is not allowed for import. Information is logged as error message in the Analysis Log and Trace Viewer.

Value of a non-mandatory field is incorrect in a CSV file row

The value of that particular field is not allowed for import. However, the other values in the row are imported. Information is logged as a warning message in the Analysis Log and Trace Viewer.

Value of a non-mandatory field is blank in a CSV file row

The entire row is imported. However, if the Discipline or Type fields are empty, then the corresponding Subdiscipline and Subtype fields are ignored. This information is logged as a warning message in the Analysis Log and Trace Viewer.

For some mandatory fields, such as Port Number, if the value is not entered or is incorrect, then the default port value of 102 is used and the data for that row is imported, as long as all the other mandatory fields have correct data.

The Importer parses the CSV file row by row and imports the data in that row if it does not have any of the above mentioned error conditions. On successful import, the objects are created below the IEC61850 network node in the System Browser.

Validations for Parsing the CSV File Entries for Device Connections

  1. If the number of tokens is less than the required number, which is essential for validation (in this case, 6), then the line is invalid.
  2. If the token value is empty or null, then it is treated as invalid.
  3. If the given device connection name contains invalid characters, then it is treated as invalid.
  4. If the given device connection name contains special characters other than underscore( _ ), then it is treated as invalid.
  5. If the given device connection name already exists in the same CSV, then the newer entry of the interface is treated as invalid.
  6. If the IP address token is not in the format xxx.xxx.xxx.xxx where xxx is 0 through 255, then it is treated as invalid.
  7. If the port number is of a type other than a number, then it is treated as invalid.

 

Validations for Parsing the CSV File Entries for Logical Devices

  1. If the number of tokens is less than the required number which is essential for validation, then the line is invalid.
  2. If a token value is empty or null, then it is treated as invalid.
  3. If the given logical device name contains invalid characters, then it is treated as invalid.
  4. If the given logical device name contains special characters other than underscore( _ ), then it is treated as invalid.
  5. If the given logical device name already exists in the same CSV file, then the new entry is treated as invalid.
  6. If a token value is empty or null, then the value is ignored.
  7. If an ObjectModel that is mentioned in the CSV file does not exist in the system, then it is treated as invalid
  8. In the CSV file, if only the device connection or logical device entries are present, then those entries are ignored.
  9. If any logical device entry is present above Device Connection entry, then that device entry is ignored. A Logical Device is always present below the Device Connection entry.
  10. If two consecutive entries of Device Connections are present without the logical device entry below the second Device Connection entry in the CSV file, then both the Device Connection entries of the Device Connection are ignored.
  11. If two consecutive entries of Device Connections are present with the logical device entry below the second Device Connection entry in the CSV file, then first entry of the Device Connection is ignored.
  12. If there are any logical device entries present without parent entry of the Device Connection, then those logical device entries are ignored.
  13. There can be multiple logical device entries under a Device Connection entry in the CSV file.
Convert an Older Version of the CSV File to a Newer Version

You can convert an older version of the CSV file to a newer version using the IEC61850CSVConverter utility. This utility is available in the bin folder of the GMSMainProject folder of your machine.

This conversion is required when you must upload the data from an older version of the CSV file to the management station. Instead of copying the data from the older version of the CSV file and manually pasting it to the new format, you can use the IEC61850CSVConverter.

Updates Performed to the Existing Data During Conversion

  • The [DRIVER] section will be added
  • Update to the [FILEVERSION] section
  • The Address Profile column will be added in [DEVICES]
Import Rules Workspace

After you have defined your object model, you must configure the Import Rules on the Objects and Properties expander.

For information on naming conventions for names, paths, and other elements, see Common Rules for Names and Paths in the Management System and Naming Rules for Subsystem Elements in Naming Conventions.

Objects and Properties Expander: Objects

Objects Fields

Item

Description

Object Model

Custom IEC61850 Object Models as imported in the custom library.

Power Quality Monitoring

Select the Power Quality Monitoring check box to support the alert generation in the management station using the HDR file.

Has HDR File

Select the Has HDR File check box to generate alerts using an HDR file. The HDR file provides information regarding the cause of the fault, the fault number, the time when the fault was triggered, and so on.

Objects and Properties Expander: Address Profiles

You can create multiple address configurations for an object model by creating multiple address profiles. These profiles are required to support multiple address configurations that can be applied to a particular device instance.

After creating the address profiles, you may provide the address configurations for these profiles from the Properties section. You can also have empty address configurations for any of the properties of the object model. You can set one of the address profiles as the default profile.

When importing the CSV file, the address configuration of the any address profile can be associated with the device instance. If no address profile is specified with the device instance in the CSV file, then the default profile from the Import Rules will be applied automatically.

However, if the configured address profile from the CSV file is not present in the Import Rules, then the instance of device will not be created in the Management Platform and an error message will display in the analysis log.

Address Profiles Fields

 

Description

Profile Name

Address Profile for the selected object model.

Default

Allows you to select the Address Profile that is to be set as the default profile. When importing a CSV file that does not have an address profile associated with a device instance, the importer will use the address configuration of the default address profile during import.

Add

Allows you to create a new address profile.

Copy

Allows you to create a copy of an existing address profile along with its address configuration. You can then rename this profile to a new profile and modify the displayed address configuration for the new profile in the Properties section. This ensures that you do not need to manually specify the address configuration for each individual property.
For example, if you copy an existing profile with name as Profile1, then a new profile with name as Profile1_Copy is created with the address configuration of Profile1. You can thereafter rename Profile1_Copy and modify its address configuration in the Properties section.

Remove

Removes an existing address profile.

Objects and Properties Expander: Properties

Properties Fields

Item

Description

Property Name

Name of the property of the selected object model.

Data Type

Data type of the selected property.

Direction

Select the direction.

Transformation Type

Select a transformation type from a list of types supported by that Data Type.

Reference

Hardware reference address on the device where the selected property will write to or read from.

Active

Enables or disables the address configuration of the selected property. If you disable this field, then the value of the property instances will not communicate with the field device.

Visibility

Select the Visibility check box if you want the property of the selected object model to be displayed in the Operations and Extended Operations pane. By default this check box is selected, however, if you do not want to display this property, you must deselect this box.

Low Level Comparison

Low Level Comparison is applicable for only those properties with Direction as Input or InOut. By default, this check box is unchecked.

If this box is selected, then the driver sends only the changed property values to the device.

Reference find

Enter the text to be replaced in Reference.

Replace with

Enter the new text which you want to replace with the text specified in Reference find.

Replace

Replaces all the instances of the text in Reference.

Event Support

The IEC61850 device generates Fault events whenever the value of the frequency, voltage, or current goes beyond the configured limit. The type of Fault events that generates depend on the configuration in the IEC61850 device. Depending on the type of faults, the events can be classified majorly as follows:

  • Voltage Dip: the value of voltage goes below the configured lower limit
  • Voltage Swell: the value of voltage goes above the configured upper limit
  • Low Current: the value of current goes below the configured lower limit
  • High Current: the value of current goes above the configured upper limit
  • Under Frequency: the value of frequency goes below the configured lower limit
  • Over Frequency: the value of frequency goes above the configured upper limit

To get information regarding the power quality measurements within the device, you must download the PQDIF file which is a binary file format. The PQDIF files are downloaded according to the time interval specified in the Files Download Interval property in the Extended Operation tab. The default time interval is 1 hour. In order to download the PQDIF files, you must enable the Download Files property in the Extended Operation tab. You can access this file from the following location in your customer project, \data\IEC61850\DR\<Device cns path>\OtherFiles.

Whenever there is a fault in the IEC61850 device, a corresponding Comtrade file having either of the following file formats (.HDR, .CFG, or .DAT) is generated if the device supports the generation of the file. These Comtrade fault files start downloading at the following location as soon as the connection with the device is established, \data\IEC61850\DR\<Device cns path>\FaultFiles.

For Comtrade files, you need to install the comtrade viewer that is available at the path …\AdditionalSW\ComtradeViewer on the distribution media.

For PQDiff files we recommend PQDiffractor, which can be downloaded from http://www.pqview.com/pqdiffractor/.

Alert Generation on the basis of HDR file

The HDR file is a Fault file that is generated when a fault occurs in the IEC61850 device. To support the alert generation in the management station using the HDR file, you must select the Power Quality Monitoring and Has HDR file options for the object model in the respective library in the Import Rules application. The HDR file provides information regarding the cause of the fault, the fault number, the time when the fault was triggered and so on. After the HDR file is generated in the IEC61850 device, it is downloaded at the following location in your customer project, \data\IEC61850\DR\<Device cns path>\FaultFiles. Thereafter, the contents of the file are sent as a Request in order to parse its contents. To parse this file, you must write a Java script in the Scripting EM, which you must install, along with the installation of the Management Station. After the contents of the HDR file are parsed by the script, a response is generated and the fault alarm displays in the Alarm Status window. This alarm can only be acknowledged; it cannot be reset.

Alert Generation without an HDR file

In this case, whenever a fault triggers in the IEC61850 device, the Value.info.FaultNumber property of the object model is incremented and an event is generated. The Fault files (Comtrade files) are downloaded at a default interval of 5000 milliseconds. You can change this default value by updating the value of the Value.info.FaultFilePollInterval property.

Parse the Contents of the HDR File

In order to parse the contents of the HDR file and fetch the fault event details, you must write a java script using the Scripting EM and this script must be present within the Scripts folder in the System Browser. You must also ensure that the Execution mode of the script is set to automatic in the Extended Operations tab.

The format of the content of the HDR file may vary across different IEC61850 devices. Accordingly, the parsing logic of the HDR file will also vary across these devices. Therefore, this logic is placed in a Java Script and not in the IEC61850 extension module. This enables the librarian to modify the parsing logic as required.

The Java script subscribes to the Value.info.Request property to get information such as the name and the content of the HDR file. The first line of the Value.info.Request property contains the name of the fault file. After parsing the contents of the HDR file, a response is generated and written by Java script to the Value.info.Response property.

While formulating a response in the Java script file, you must observe the following syntax. The response elements must be separated by a semicolon “;”.

[File name;Text group name;Index;Came time;Went time;Message text].

For example, FR_00408.HDR;TxG_IEC_AlertTexts;2;1489142059908;;Fault number = 00408.

Response Element

Description

Example

File name

Name of the fault file received from the Value.info.Request property . This file name is used to maintain context between request and response. This is a compulsory field.

FR_00408.HDR

Text group name

Name of the text group where you have specified the texts for fault causes. If this value is not specified then, the event text from the TxG_IEC61850Alert text group of the IEC61850 base library displays.

TxG_IEC_AlertTexts

Index

Corresponding text group index where the text for a particular fault cause is specified. This text is used as the event text in the alert. If this value is not specified in the response we take the event text from TxG_IEC61850Alert text group from the IEC61850 base library.

2

Came time

Date and Time of generation of the fault. The date and time value for Came Time must be specified in milliseconds as per the UTC time scale. This value can be left blank, if it is not present in the fault file.

1489142059908

Went time

Date and Time when the fault is handled. The date and time value for Went Time must be specified in milliseconds as per the UTC time scale. This value can be left blank, if it is not present in the fault file.

In the above example, Went time is not specified, hence this value is left blank.

Message text

Text to be displayed as an alert message when a fault is generated.

Fault number = 00408

In the HDR fault file, the Came time and Went time are specified in UTC date time format. For example,

UTC Date/Time

UTC date time in milliseconds since midnight Jan 1 1970

3/10/2017 10:34:19 A.M.

1489142059908

Different situations related to Event Went time and Event Came time

  • If the Event Came time is present but Event Went time is not present in the Java script response, then the IEC61850 extension module considers the Event Went time as equal to Event Came time.
  • If both, Event Came time and Event Went time are missing from the Java Script response, then the IEC61850 extension module substitutes the current time for Event Came and Event Went time.
  • If Event Came time is not present in the Java script response, but Event Went time is present, then the IEC61850 extension module considers the Event Came time as equal to Event Went time.
Format of the CSV Data

The format of the engineering data in the CSV file is structured as follows:

From the above diagram related to the format of the engineering data, there are two main parts; the connection and the device. Each device has a unique connection specification. Hence, before a device is declared, its connection should precede it.

For information on naming conventions for names, paths, and other elements, see Common Rules for Names and Paths in the Management System and Naming Rules for Subsystem Elements in Naming Conventions.

Header

The Header section contains two separators, a List Separator and a Decimal Separator. Both these separators are placed in the same sequence on two subsequent lines. These separators are placed inside quotes for easy identification.

The List Separator is used as a delimiter for parsing of row data in the CSV file.

The Decimal Separator is used for parsing of fields having values as floating point numbers.

Driver

Specifies the name of the subsystem (For example, IEC61850) to which the CSV file is associated with.

FileVersion

Displays the current version of the CSV file.

Connections

Connection Fields

Item

Description

ConnectionName1)

Name of the IEC61850 connection.
NOTE: The Importer will reject this device connection entry if this field is empty.

ConnectionDescription1)

Description of the IEC61850 connection.
NOTE: The Importer will reject this device connection entry if this field is empty.

IP_Address1)

IP address of the connection of the IEC61850 network. This field should be in the format xxx.xxx.xxx.xxx where x is numeric and xxx is 0 through 255; both values inclusive. In the IEC61850 tab in the Device Connection expander, you can edit the IP address after import.
NOTE: The Importer will reject the device connection entry if this field is empty or if the format of the IP address is incorrect.

Port

TCP port number to be assigned to the Device Connection. It must be numeric and in the range of 0 through 65535.
NOTE: If this field is empty, then IEC61850 Importer sets the value to 102.

Active

Specifies whether or not a connection with the IEC61850 device is to be established. It can have either of the following two values:
TRUE: Connection with the device is established and the device starts communicating. (Default Value)
FALSE: Connection with the device is not established and the device does not communicate. To establish connection, you must select the connection object after importing the CSV file and click Active from the Extended Operation pane.

Alias

Alias associated with the connection. The alias is unique across the management station.

FunctionName

The associated function of the object.

DisciplineID

Category of the discipline (for example, Building Infrastructure).

SubdisciplineID

Description of the object (for example, Elevators for Building Infrastructure discipline).

TypeID

Category of the corresponding type (for example, Boiler).

SubtypeID

Description of the object (for example, Variable for type Boiler).

1)

Mandatory field

Devices

Device Fields

Item

Description

ParentConnectionName1)

Name of the Connection to which the device should be associated with. The value in this field must be identical to the ConnectionName field.

DeviceName1)

Name of the IEC61850 device.
NOTE: The Importer will reject this logical device entry if this field is empty.

DeviceDescription1)

Description of the IEC61850 device.
NOTE: The Importer will reject this logical device entry if this field is empty.

ObjectModel1)

Object Model of the device. You need to define and import an Object Model in the system before you can use this field. Refer to section Using an Object Model to Represent an IEC61850 Device for more information on object models.

AddressProfile

AddressProfile associated with the object model to be applied with the device instance.

Alias

Alias associated with the device. The alias is unique across the management station.

FunctionName

The associated function of the object.

DisciplineID

Category of the discipline (for example, Building Infrastructure).

SubdisciplineID

Description of the object (for example, Elevators for Building Infrastructure discipline).

TypeID

Category of the corresponding type (for example, Boiler).

SubtypeID

Description of the object (for example, Variable for type Boiler).

LogicalHierarchy

Logical Hierarchy of the device in the logical view. The logical hierarchy path in the CSV file must start and end with a backslash (\).
Syntax: [Delimiter]<Level1>[Delimiter]<Level2> [Delimiter]…[Delimiter]<Level-n>[Delimiter]
Example: \BuildingA\Floor3\Room403\
The importer automatically adds the device to the logical hierarchy path after the last delimiter and thereafter adds this hierarchy to the root node of the logical view in the System Browser.
So, for example, for a device “Meter403_11” associated with the hierarchy path “\BuildingA\Floor3\Room403\”, the logical hierarchy as displayed in the System Browser will be the following:
<Logical Hierarchy Root Node>\BuildingA\Floor3\Room403\Meter403_11

UserHierarchy

User hierarchy of the device in the user-defined view. The user hierarchy path in the CSV file must start and end with a backslash (\).
Syntax: [Delimiter]<Level1>[Delimiter]<Level2> [Delimiter]…[Delimiter]<Level-n>[Delimiter]
Example: \BuildingA\Floor3\Room403\
The importer automatically adds the device to the user hierarchy path after the last delimiter and thereafter adds this hierarchy to the root node of the user hierarchy in the System Browser.
So, for example, for a device “Meter403_11” associated with the hierarchy path “\BuildingA\Floor3\Room403\”, the user hierarchy as displayed in the System Browser will be the following:
<User Hierarchy Root Node>\BuildingA\Floor3\Room403\Meter403_11

1)

Mandatory field