A common data class (CDC) is the template that fixes the attributes of an IEC 61850 data object: value, quality, timestamp, substitution, configuration and, if it can be commanded, control. SPS and DPS report single-point or double-point status; SPC and DPC add control. The position of a breaker is a double point that distinguishes open, closed, intermediate and bad state.
What a common data class is
Short answer. A CDC is a template: it says what attributes an IEC 61850 data object has, what type each one is and which are mandatory. All the data objects of the logical nodes are instances of some CDC, and that is why a SCADA can interpret the data of any manufacturer with the same rules.
Part 7-3 builds each class from common attribute types, such as quality, timestamp or analog value, and groups them into categories: status information, measurands, controllable status, controllable analog, status settings, analog settings and description. Part 7-4 uses those classes to define the data objects of each logical node; for example, the position of a breaker (XCBR) is a data object of the DPC class, and the local operation indication (Loc) is an SPS. For the complete model, see IEC 61850: overview. How IEC 61850 models a measurement (value, deadband, range, vector and three phases) is explained in IEC 61850 Measurements.
How to read the table of a CDC
Each row of a CDC has four key items: attribute name, type, functional constraint (FC) and trigger option (TrgOp). A last column says whether it is mandatory, optional or conditional.
| Constraint | Meaning in part 7-2 |
|---|---|
| ST | Status information: it is read, substituted, reported and logged, but not written |
| MX | Measurand: same as ST, for analog values |
| CO | Control: operated with the control model and read |
| SP | Set point or setting: controlled and read; the value is immediate and non-volatile |
| SV | Substitution value: written to substitute the process value |
| CF | Configuration: written and read; may be applied immediately or deferred |
| DC | Description: text that is written and read |
| SG, SE | Active setting group and setting group being edited (see SGCB setting groups) |
| EX | Extended definition with a namespace reference; not written |
Trigger options say when an attribute generates a report: dchg on data change, qchg on quality change and dupd on data update. In the status classes, the value (stVal) triggers on data change and the quality (q) on quality change; see reports and logs. When to use buffered and when unbuffered reports, and how they are recovered with EntryID, is in Buffered and Unbuffered MMS Reports.
Status: SPS and DPS
The status classes share a common structure:
- Status. The value (stVal), the quality (q) and the timestamp (t). All three are mandatory. See quality and timestamp.
- Substitution. Four optional attributes that allow the process value to be replaced: enable, value, quality and identification of who substituted. See data substitution.
- Configuration and description. Descriptive text and namespace attributes.
| Class | Name | stVal value |
|---|---|---|
| SPS | Single point status | Boolean: true or false |
| DPS | Double point status | Four values: intermediate state, off, on, bad state |
| INS | Integer status | 32-bit signed integer |
The time (t) of a status is the instant of the last change of the value or of the quality.
Intermediate position and the double point
The double point exists because a switching operation is not instantaneous. While the device moves, its position is neither of the two end states, and the standard gives it a name of its own: intermediate state. If the device’s indications are not consistent, the value is bad state. An SPS could not represent either situation.
To interpret a position, always read the value together with the quality and the timestamp: an ‘intermediate’ that lasts longer than the normal operating time, or a ‘bad state’, points to checking the position contacts and their wiring; see breaker auxiliary contacts. How the device derives the four values from its contacts is decided by its design.
Control: SPC and DPC
The controllable classes include, in a single class, the control and the associated status. Their main attributes are:
- ctlVal. The value that is commanded, off or on. It is mandatory if the class supports control.
- operTm. The absolute instant of execution, for the time-activated operate service.
- origin. Who issued the last command: category and identification. The categories range from bay control, station control or remote control, to automatic bay, automatic station or automatic remote, maintenance and process (a change without a command, for example an external trip).
- ctlNum. The command sequence number, which the server returns in its responses and in the reports of the change it caused.
- stVal, q, t. The resulting status.
- stSeld. Indicates that the data object is selected.
- pulseConfig. Whether the output is a pulse or persistent, with on duration, off duration and number of pulses in milliseconds; a value of 0 means a locally defined duration.
- ctlModel. The control model (mandatory), with five possible values: status only, or direct or select-before-operate control, each with normal or enhanced security.
- sboTimeout and sboClass. The selection timeout in milliseconds and whether after operating the object is deselected (operate once) or stays ready (operate many) until the time expires.
- CDC DPC. Template of part 7-3: control and status attributes with their functional constraint
- Logical node XCBR. Part 7-4 declares that its position (Pos) is a DPC and that it is mandatory
- Instance in the IED. Pos with ctlModel, stVal, q, t and the attributes the manufacturer implemented
- Client. The SCADA reads Pos.stVal and commands with Pos.ctlVal according to the control model
For the selection behavior and rejections, see select before operate and causes of command rejection.
Status settings
The status setting classes, such as the single point setting (SPG) and the integer setting (ING), carry the value (setVal) with the SP constraint if the device does not use setting groups, or with SG and SE if it does. The integer can carry a minimum, maximum and step. Analog settings (ASG) and curves (CURVE) are covered in ASG settings and inverse-time curves.
What it means for the project
- When buying. A CDC is mandatory in its minimum attributes, but many attributes are optional. Ask for the list of those implemented by the device.
- When engineering. Verify that each SCADA signal corresponds to the right CDC and attribute; a double-point status mapped to a single point loses the intermediate state.
- When testing. Check status, quality and time of each signal, and each control model; see point-to-point signal testing.
IEC 61850 data model with Tiza Group
Do you need to review whether the signals of your devices use the right classes and attributes, or map them to the SCADA? At Tiza Group we do it as part of our IEC 61850 engineering, in medium, high and extra-high voltage, for substations and industry. To review a configuration file you can use the SCL viewer.
Related guides
- IEC 61850: what it is, parts of the standard and data model
- Select before operate (SBO)
- Breaker auxiliary contacts
- SCL files in IEC 61850
- Point-to-point signal testing
- Control command rejected from SCADA
- Buffered and Unbuffered MMS Reports: Which to Use
- IEC 61850 Measurements: MV, CMV, WYE and DEL
References
- IEC 61850-7-3 (edition 1, 2003): clause 5, inclusion conditions; clause 6, attribute types; clauses 7.1 to 7.3 (status), 7.5 (controllable status) and 7.7 (status settings).
- IEC 61850-7-2 (edition 1, 2003): clause 5, functional constraints.
- IEC 61850-7-4 (edition 1, 2003): logical nodes XCBR and XSWI, data objects Pos and Loc.
Frequently asked questions
Why is the position of a breaker a double point and not a single point?
Because a single point has only two values and cannot express that the device is in transit or that its indications are inconsistent. The double point has four values named by the standard: intermediate state, off, on and bad state. The quality of the data object is evaluated separately.
What is the ctlModel attribute?
It is the configuration parameter, mandatory in the controllable classes, that says how control of that data object behaves: status only, direct with normal security, select-before-operate with normal security, direct with enhanced security or select-before-operate with enhanced security. A direct command to a data object configured with select-before-operate will be rejected.
What does stSeld indicate?
That the controllable data object is in the 'selected' state. It is an optional status attribute of the controllable classes and is used in the select-before-operate model.