Documentation Home Page ◇ RT-LAB Home Page
Pour la documentation en FRANÇAIS, utilisez l'outil de traduction de votre navigateur Chrome, Edge ou Safari. Voir un exemple.
OpIEC61850 GOOSE Subscriber
Block
Mask
Description
The OpIEC61850 GOOSE Subscriber block basically behaves as a reception unit of Generic Object Oriented Substation Event (GOOSE) messages (command, control or status). OpIEC61850 GOOSE Subscriber block gets all the necessary information to monitor a specific GOOSE message from SCL file. In order to subscribe to a GOOSE message, its Multi-cast address of publication, as well as its identifier (AppId), are used to produce control signals corresponding to the GOOSE message received through the IEC 61850 network.
This block adjusts automatically its outputs depending on the number of Data Objects (DOs) comprised within the selected GOOSE message.
Parameters
Ethernet Adapter | Specifies the name of the Ethernet adapter interface (string, 64 characters max.) to be used for communication to IEC61850 network. To verify which ethernet devices are available on a RedHat system, execute the following command: # ifconfig The available network interfaces are printed. Fill up this field with the name of the network interface to be used by GOOSE Subscriber block. |
---|---|
IED | Specifies the Intelligent Electronic Device that sends the desired GOOSE message under monitoring. The IED name may represent physical equipment placed within an IEC61850 communication network. |
Select SCL file... | This checkbox opens up a file selection window allowing the user to browse and parse desired SCL file (default file extensions, .icd, .cid, or .scd) to find all GOOSE message definitions within the IED specified by "IED" parameter. Note: IED parameter should be specified before browsing for SCL file, otherwise an error message window could be thrown pointing out this fact. |
SCL filename | Once the selected SCL file has been parsed successfully this field is automatically updated with the selected filename. This field is not user modifiable. |
SCL_FullPath | Once the selected SCL file has been parsed successfully this field is automatically updated with SCL file's full path. This field is not user modifiable. |
GoID | This pop-up menu contains the entire list of GOOSE messages comprised within current IED. This menu is automatically updated with the information retrieved from SCL file. See Characteristics and Limitations section. |
AppId | This field is automatically updated with the GOOSE message Application ID retrieved from SCL file. This field is not user modifiable. This ID should be unique within the entire IEC61850 network. |
MAC Destination Address | This field is automatically updated with the MAC multicast destination address where the GOOSE message will be published (e.g. '01-0C-CD-04-00-00'). The MAC address must respect the following format 'hh-hh-hh-hh-hh-hh', where h represents a hexadecimal digit. This field is not user modifiable. |
Inputs
Enable (En): This input controls the reception of GOOSE messages. An input of 1 activates reception and value of 0 disables it.
Outputs
Status: This output is a 3-element vector which is organized in the following manner:
Elmnt 1 | StNum | This value is incremented, starting from 0, with every change of whichever of the objects contained within the GOOSE message. |
---|---|---|
Elmnt 2 | SqNum | This value is incremented, starting from 0, with every GOOSE message received without any modification to its objects' value. If any change is detected for whichever of the objects this count is RESET to zero. |
Elmnt 3 | Error | See Table 2 for values description. |
Error/Status Value | Meaning | Description |
---|---|---|
0 | Reception Stopped | Message reception has been stopped or first message has not been received yet. |
1 | Reception Enabled | Block is operational. |
-4 | Message Lost | The time-frame period between two consecutive GOOSE messages has over passedTimeAllowedToLive parameter. This parameter value comes within GOOSE message information; it basically describes the maximum period between two consecutive messages. |
-5 | Message Out of Order | New received message has a SqNum or StNum smaller than the previous received message's parameters. In other words, the current message is older than the previous one. |
-14 | Pcap library initialization error | Verify if the Ethernet adapter parameter is a valid interface configured for communication in the IEC 61850 network. |
Object Data: This output is dynamically created depending on the structure of the GOOSE message; the number of object data outputs and their size (number of vector elements) added to the Simulink block shall depend on the DataSet associated to GSEControl block in selected SCL file, i.e.
If GSEControl uses a DataSet named "Goose_TRIP5",
<GSEControl ... datSet="Goose_TRIP5" name="CB_Goose_TRIP5"/>Note1
and this DataSet consists of two object definitions "Op5" and "Op6" with two attributes each (intA and intB),
<DataSet name="Goose_TRIP5">
<FCDA ... doName="Op5" daName="intA" fc="ST"/>
<FCDA ... doName="Op5" daName="intB" fc="ST"/>
<FCDA ... doName="Op6" daName="intA" fc="ST"/>
<FCDA ... doName="Op6" daName="intB" fc="ST"/>
</DataSet>Note1
so the Simulink block shall look like this:
Figure 1 shows the two additional object data outputs added to the block which are represented by a 2-element vector. The order of object outputs and their attributes is the same order followed in DataSet definition, this can be exemplified as follows:
1st Object Output -> Op5 = [intA intB]
2nd Object Ouput -> Op6 = [intA intB]
The labels on each output of the form OpN[...] meansthat output OpN might contain just a partial number of attributes containedwithin the object, or all of them, since the data set was built using severalFCDA elements is it not possible to know if all attributes are present in<DataSet element.
On the other hand, if we have a <DataSet definition as follows:
<DataSet name="Goose_TRIP5">
<FCDA ... doName="Op5" fc="ST"/>
<FCDA ... doName="Op6" fc="ST"/>
</DataSet>Note1
so the Simulink block shall look like this:
Figure 2 shows the two additional object data outputs added to the block which are represented by a 2-element vector. The order of object outputs and their attributes is the same order followed in DataSet definition, this can be exemplified as follows:
1st Object Input -> Op5 = [intA intB]
2nd Object Input -> Op6 = [intA intB]
The labels on each output of the form OpN.All meanthat all attributes of object OpN respecting the constraint "fc" are present at the Simulink blockoutput.
Note1: Ellipsis denotes that there might be more parameters for DataSet and/or GSEControl sections which are not relevant for this explanation.
Characteristics and Limitations
When selecting a new SCL file, for Matlab versions prior to 2009B, GoID pop-up menu is automatically updated when pressing "Apply" button on block's mask. Specifically for Matlab v2009B, it is necessary to close the mask by pressing OK button to get updated this pop-up menu.
Consider the following scenario: There are two or more OpIEC61850 GOOSE Subscriber blocks within the same Simulink model pointing to different SCL files and same IED. This scenario is NOT supported if any GOOSE message definition within IED is different across files; therefore the last block to be updated shall be the one to determine which GOOSE message definition shall be taken for all blocks falling into this case.
For structure types the user cannot access specific members, only the entire contents of the structure can be applied to Simulink output.
The following table shows which of the IEC61850 pre-defined basic types are supported (per standard 61850-6 © IEC:2009(E)).
Basic Type | Supported | Not Supported |
---|---|---|
BOOLEAN | X | . |
INT8 | X | . |
INT16 | X | . |
INT24 | . | X |
INT32 | X | . |
INT64 | X | . |
INT128 | . | X |
INT8U | X | . |
INT16U | X | . |
INT24U | . | X |
INT32U | X | . |
FLOAT32 | X | . |
FLOAT64 | X | . |
Enum | X | . |
Dbpos | . | X |
Tcmd | . | X |
Quality | X | . |
Timestamp | X | . |
VisString32 | . | X |
VisString64 | . | X |
VisString129 | . | X |
VisString255 | . | X |
Octet64 | . | X |
Unicode255 | . | X |
Struct | X | . |
EntryTime | . | X |
Check | . | X |
ObjRef | . | X |
Currency | . | X |
PhyComAddr | . | X |
TrgOps | . | X |
OptFlds | . | X |
SvOptFlds | . | X |
Direct Feedthrough | No |
---|---|
Discrete sample time | No |
XHP support | Yes |
Work offline | No |
OPAL-RT TECHNOLOGIES, Inc. | 1751, rue Richardson, bureau 1060 | Montréal, Québec Canada H3K 1G6 | opal-rt.com | +1 514-935-2323
Follow OPAL-RT: LinkedIn | Facebook | YouTube | X/Twitter