Once configured, the IEC 61850 I/O interface offers different data points for each configured message to be connected with the model using the HYPERSIM sensors.
GOOSE (8-1) Publishers
Connection point | Direction | Description |
---|---|---|
Enable | From model to driver | Controls the transmission of GOOSE message. An input of 1 activates transmission and value of 0 disables it. |
Data / Data Objects (DO) / Data Attributes (DA): | From model to driver | Every basic attributes found in the GOOSE definition provides a connection point referenced by their DO and DA names. |
Flags | From model to driver | simulation: This input controls directly the GOOSE Header field "test". If input value is TRUE, GOOSE message will be transmitted with test flag equal to TRUE informing to all subscribers that Object Input Data is the result of a testing. ndsCom: This input controls directly the GOOSE Header field "needs commissioning". |
Clock | From model to driver | Sync: It is a binary value (0 or 1) that represents the synchronization state of the timestamp. If the timestamp is synchronized with an accurate external source such as a GPS, the value applied to this signal should be set 1 and otherwise it should be 0. This value will appear in each time qualify byte of the data frames to indicate the validity of the timestamp. Epoch: Represents the number of seconds elapsed since first January 1970, commonly known as unix epoch time. It means that it has to increment at each second. The GOOSE Publisher uses this signal to timestamp the outgoing packets. The more accurate this epoch time input will be, the more accurate will be the timestamp of the outgoing packets. Microseconds: Represents the microseconds count within the current second. |
Status | From driver to model | stNum: This value is incremented, starting from 0, with every change of whichever of the objects contained within the GOOSE message. 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. |
GOOSE (8-1) Subscribers
Connection point | Direction | Description |
---|---|---|
Enable | From driver to model | Controls the reception of GOOSE message. An input of 1 activates reception and value of 0 disables it. |
Data / Data Objects (DO) / Data Attributes (DA): | From driver to model | Every basic attribute found in the GOOSE definition provides a connection point referenced by their DO and DA names. |
Status | From driver to model | stNum: This value is incremented, starting from 0, with every change of whichever of the objects contained within the GOOSE message. 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. State:
|
Sampled Values (9-2LE) Publishers
Connection point | Direction | Description |
---|---|---|
Enable | From model to driver | Controls the transmission of Sampled Values message. An input of 1 activates transmission and value of 0 disables it. |
Voltage Value | Vector of 4 voltages [Va, Vb, Vc, Vn] which are the 3 phase voltages and neutral voltage. | |
Voltage Quality | Vector of 4 quality values [QVa, QVb, QVc, QVn]. Each element represents a 16-bit value. The signification of each bit is described in the table below. | |
Current Value | Vector of 4 currents [Ia, Ib, Ic, In] which are the 3 phase currents and neutral current. | |
Current Quality | Vector of 4 quality values [QIa, QIb, QIc, QIn]. Each element represents a 16-bit value. The signification of each bit is described in the table below. | |
Clock | Ideally, the timestamp input should come from an accurate synchronization source. Otherwise, there is no guarantee on the data sampling, reported data rate and fraction of second information. Sync: It is a binary value (0 or 1) that represents the synchronization state of the timestamp. If the timestamp is synchronized with an accurate external source such as a GPS, the value applied to this signal should be set 1 and otherwise it should be 0. This value will appear in the "smpSynch" attribute of SV messages. Seconds: Represents the second increment, which may be the epoch time (see above), as well as a counter of a period of one second. It means that it has to increment at each second. The Sampled Values Publisher uses this value to set the attribute "smpCnt" in SV messages. The more accurate this epoch time input will be, the more accurate will be the timestamp of the outgoing packets. |
About the Quality Word of Sampled Values Messages
This information applies to both Sampled Values (9-2LE) Publishers and Subscribers.
Bit | Attribute Name | Attribute Value | Value | Default Value |
---|---|---|---|---|
0-1 | Validity | Good | 0 0 | 0 0 |
Invalid | 0 1 | |||
Reserved | 1 0 | |||
Questionable | 1 1 | |||
2 | Overflow | TRUE | FALSE | |
3 | Out of range | TRUE | FALSE | |
4 | Bad reference | TRUE | FALSE | |
5 | Oscillatory | TRUE | FALSE | |
6 | Failure | TRUE | FALSE | |
7 | Old data | TRUE | FALSE | |
8 | Inconsistent | TRUE | FALSE | |
9 | Inaccurate | TRUE | FALSE | |
10 | Source | Process | 0 | 0 |
Substituted | 1 | |||
11 | Test | TRUE | FALSE | |
12 | Operator blocked | TRUE | FALSE | |
13 | Derived | TRUE | FALSE |
Sampled Values (9-2LE) Subscribers
Connection point | Direction | Description |
---|---|---|
Enable | From model to driver | Controls the reception of Sampled Values message. An input of 1 activates reception and value of 0 disables it. |
Voltage Value | From driver to model | Vector of 4 voltages [Va, Vb, Vc, Vn] which are the 3 phase voltages and neutral voltage. |
Voltage Quality | From driver to model | Vector of 4 quality values [QVa, QVb, QVc, QVn]. Each element represents a 16-bit value. The significance of each bit is described in the table above. |
Current Value | From driver to model | Vector of 4 currents [Ia, Ib, Ic, In] which are the 3 phase currents and neutral current. |
Current Quality | From driver to model | Vector of 4 quality values [QIa, QIb, QIc, QIn]. Each element represents a 16-bit value. The significance of each bit is described in the table above. |
Timestamp | From driver to model | Provides the time when each SV message was captured. This is an increasing count in microseconds provided by the Ethernet card. |
smpCnt | From driver to model | Number of SV messages sent since the last change of second. For a SV stream of 80 Samples Per Cycle at 60 Hz, smpCnt should increase from 0 to 4799, and wrap around, at every second. |
Sampled Values (IEC 61869-9) Publishers
Connection point | Direction | Description |
---|---|---|
Enable | From model to driver | Controls the transmission of Sampled Values message. An input of 1 activates transmission and value of 0 disables it. |
Data / Data Objects (DO) / Data Attributes (DA): | From model to driver | Every basic attributes found in the SV definition provides a connection point referenced by their DO and DA names. The data set described in the SCL file will provide the connection points on voltage and current values, as well as their quality values. |
Clock | From model to driver | See Clock description of Sampled Values (9-2LE) Publishers. |
Sampled Values (IEC 61869-9) Subscribers
Connection point | Direction | Description |
---|---|---|
Enable | From model to driver | Controls the reception of Sampled Values message. An input of 1 activates reception and value of 0 disables it. |
Data / Data Objects (DO) / Data Attributes (DA): | From driver to model | Every basic attributes found in the SV definition provides a connection point referenced by their DO and DA names. The data set described in the SCL file will provide the connection points on voltage and current values, as well as their quality values. |
Timestamp | From driver to model | Provides the time when each SV message was captured. This is an increasing count in microseconds provided by the Ethernet card. |
smpCnt | From driver to model | Number of SV messages sent since the last change of second. For a SV stream of 80 Samples Per Cycle at 60 Hz, smpCnt should increase from 0 to 4799, and wrap around, at every second. |
Data Integrity Manipulation
When Sampled Values Data Integrity Manipulation is enabled, additional connection points are available to manipulate Sampled Values (9-2LE) Publisher messages.
Every Sampled Values (9-2LE) Publisher message will have a new connection group called "Faults" with the new connections points. Here is a short description of the different faults, and how to configure them. For more information, look at the component that was specifically designed to use this feature here.
Loss
Simulate the loss of packets on the network by stopping the SV publishing during a certain amount of frames. If monitored, the stream will appear as it loses n packets of data.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
Number of frames | From model to driver | This value is the number of frames that will be dropped, prevented from being sent on the network. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
Duplication
Simulate a wrong network topology where packets could be sent multiple times by duplicating frames a certain time and for a certain amount of frames.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
Number of frames | From model to driver | This value is the number of frames on which the duplication fault will be applied. |
Number of duplications | From model to driver | This value is the number of times a specific frame will be duplicated. If this number is 5, every frame will be sent 5 times on the network together. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
smpCnt manipulation
Simulate a man-in-the-middle attack by manipulating the smpCnt of a stream.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
New smpCnt | From model to driver | When the fault is triggered, the smpCnt will be overridden by the value provided in this connection. It is up to the user to control the validity of the new smpCnt. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
Delay
Simulate an unwanted delay on the network by delaying the frames for a configured amount of time in microseconds, for a certain amount of frames.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
Delay (us) | From model to driver | When the trigger will be raised, the transmission of the frames will be delayed by this value in microseconds. An internal buffer will keep all the information to delay the packet. The delay can be a value from 0 to 1,000,000, i.e. the maximum accepted delay is one second. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
Discard buffer | From model to driver | This connection allows to reset the delay to 0 while discarding every values in the internal buffer. |
Flush on Network | From model to driver | This connection allows to reset the delay to 0 while flushing every values from the internal buffer on the network immediately. |
smpSynch manipulation
Simulate a man-in-the-middle attack by manipulating the smpSynch of a stream.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
Number of frames | From model to driver | This value is the number of frames on which the smpSynch manipulation fault will be applied. |
smpSynch | From model to driver | When the fault is triggered, the smpSynch value will be overridden by the value provided in this connection. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
Quality Bits
Simulate a man-in-the-middle attack by manipulating the quality of the stream voltage and current values.
Connection point | Direction | Description |
---|---|---|
Trigger | From model to driver | At rising-edge from 0 to 1, the fault will be applied. Trigger needs to be reset at 0 to be able to create a new fault. |
Mode | From model to driver | 0 → Fault is applied immediately after trigger is raised. 1 → Fault is applied as soon as the smpCnt reaches the value provided in the connection "Wait for smpCnt". |
Number of frames | From model to driver | This value is the number of frames on which the quality manipulation fault will be applied. |
Voltage Quality | From model to driver | When the fault is triggered, the voltage quality values will be overridden by the values provided in this connection. |
Current Quality | From model to driver | When the fault is triggered, the current quality values will be overridden by the values provided in this connection. |
Wait for smpCnt | From model to driver | If "Mode" is set to 1, the fault is delayed to wait the specified smpCnt value. |
Connection Examples
The sensor editor should be used to connect each configured data points with the model. Here are some examples of sensors connected to an IEC 61850 I/O interface. Please note that unused columns have been collapsed.