Sunday, September 25, 2016

How to use Generic Input/Output Logical Node "GGIO"

The Logical Node Class GGIO (Generic Process I/O) is (in my experience) the most liked and hated Logical Node. Why? GGIO is often used instead of well known Logical Nodes.
Example: Use of GGIO0.ST.Ind1.stVal instead of XCBR0.ST.Pos.stVal
The use of GGIO is not standardized!
You may use it or not ... one way or the other.
Last week I was contacted by an utility engineer on how to map reporting signals (M1-Boolean, M2-Boolean, M3- ...)?
There are two general approaches in the use of GGIO:

1. Add semantic to Prefix of LN and use many GGIO instances (M1_GGIO1, ...)
2. Add semantic to extended Data Objects in GGIO (M1, ...)

In the first case we instantiate GGIO 10 times.
In the second we extend the model by defining Data Objects M1 ... M10

The main difference is that in the second example we can use the prefix of the GGIO ("Report_") -> "Report_GGIO0" as a wrapper for Reporting. The semantic of the signals is further defined by extended Data Objects "M1", "M2", ...
Both modelling approaches are defined in IEC 61850-7-1 and 7-4. The second approach may not be supported by all tools and devices.
I personally would prefer the second approach.

No comments: