In IEC 61850 every value travels with a quality (validity, detail quality, source, test and operator blocked) and with a timestamp that includes the clock quality. Quality says whether the value is trustworthy and why not; the timestamp says when the value or its quality changed, with a declared accuracy. Testing both is part of commissioning any signal.
What data quality is
Short answer. Quality is an attribute that accompanies each value and tells the client whether it can be trusted. The timestamp tells it when the value changed. Both are evaluated in the server, that is, in the IED, and transmitted together with the value.
Part 7-3 defines quality as the information on the quality of the data that the server delivers. If the client needs additional quality in its own database, that is a local matter, outside the standard. Quality is made up of five identifiers: validity, detail quality, source, test and operator blocked.
Validity
- Good. No abnormal condition is detected in the acquisition function or in the source.
- Invalid. There is an abnormal condition, such as missing or out-of-service updating devices. The value is not defined and the standard says it should not be used, because it may be incorrect. For example, an input that oscillates is marked invalid.
- Questionable. A supervision function detected abnormal behavior, but the value could still be valid. The client decides whether to use it.
The code also reserves an unused value between ‘invalid’ and ‘questionable’.
Detail quality
It explains the reason for an invalid or questionable validity. If any of these identifiers is active, validity cannot be good.
| Identifier | What it indicates | Used in |
|---|---|---|
| Overflow | The value exceeds what the data type can represent | Measurands |
| Out of range | The value goes outside a predefined range; the server decides whether it becomes invalid or questionable | Measurands |
| Bad reference | The value may be incorrect because of an out-of-calibration reference | Measurands and counters |
| Oscillatory | An input changes twice in the same direction within a defined time | Status values |
| Failure | A supervision function detected an internal or external failure | No restriction stated |
| Old data | There was no update within a defined interval; the value may have changed | No restriction stated |
| Inconsistent | An evaluation function detected an inconsistency | No restriction stated |
| Inaccurate | The value does not meet the declared accuracy of the source; for example, a noisy power factor at very low current | No restriction stated |
Oscillation has its own rule. A binary signal that changes quickly would load the event channels, so the standard says it should be detected and suppressed. While changes are suppressed, validity is questionable. If the signal keeps oscillating beyond the configured number of changes, it stays in the state it was in when it was marked oscillatory and validity becomes invalid for as long as the oscillation lasts.
Old data also covers ‘silent’ failures: if the device that should send the data stops sending it, the client sees it as old data, and the last value received was correct.
Source, test and operator blocked
- Source. ‘Process’ if the value comes from a physical input or from a calculation in the application. ‘Substituted’ if it was entered by an operator or an automatic source. See data substitution.
- Test. Marks that the value is a test value and must not be used operationally. It is independent of the other identifiers and, in general, is propagated through all levels. The device test mode is explained in test mode and simulation.
- Operator blocked. The operator stopped the updating of the value; the data object keeps the previous value and the old data detail quality is also active. An operator action is needed to release it. For example, to keep the value of an input when its auxiliary supply is switched off.
How they combine
Validity and source take priority over each other. If the source is ‘process’, validity describes the value of the source. If it is ‘substituted’, validity is subordinate to the definition of the substituted value; that is why substitution allows invalid values to be replaced by values the client treats as good. If an invalid value is substituted, the invalid flag is cleared and the substituted one remains. If questionable and substituted remain, it means the substituted value is questionable, as happens when substitution is made at the low level and communication is lost at the high level.
Operator blocked is independent. An example from the standard: an input oscillates, becomes invalid and generates many reports; the operator blocks it and the blocked flag is added.
In a chain of several levels (process, bay, station) each device acts as a server for the level above and as a client for the one below. If the link with the lower level fails, the upper one marks questionable and old data. If the data was already invalid, it stays invalid, because the last value received was already incorrect: in validity, ‘invalid’ dominates over ‘questionable’, and in source, the upper level dominates over the lower one.
- Blocked or failed input. The data object starts out questionable or invalid at the lowest level
- Substitution at one level. The source becomes substituted and validity reflects the substituted value
- Communication failure upward. The upper level marks questionable and old data
- What the client sees. The worst combination in the chain, with the source of the upper level
Timestamp
The time attribute of a data object indicates the instant of the last change in the value or in its quality. Part 7-2 defines the timestamp as seconds since 1 January 1970 in UTC plus a fraction of a second with up to 24 bits, which gives a minimum resolution of about 60 ns. The device may offer less resolution. In addition there is the time quality:
- Leap seconds known. Whether the value accounts for the leap seconds elapsed.
- Clock failure. The device’s time source is not reliable and the timestamp must be ignored.
- Clock not synchronized. Optional attribute: the clock is not synchronized with external UTC.
- Accuracy. The number of significant bits of the fraction of a second.
| Bits | Approximate accuracy | Performance class indicated by part 7-2 |
|---|---|---|
| 7 | 7.8 ms | T0, 10 ms |
| 10 | 0.9 ms | T1, 1 ms |
| 14 | 61 µs | T2, 100 µs |
| 16 | 15 µs | T3, 25 µs |
| 18 | 3.8 µs | T4, 4 µs |
| 20 | 0.9 µs | T5, 1 µs |
| 31 | Unspecified | No class |
Part 7-2 relates these values to the classes of part 5, which describes T1 to T5. That part associates classes T1 and T2 with event time-tagging and zero-crossing synchronization, distributed synchro-check and synchronized switching, and T3 to T5 with digital instrument transformers. These classes measure clock accuracy; they are not the message transfer time classes of the guide transfer time in IEC 61850.
In a set of three-phase measurands, the values of the phases share the same timestamp, because they were acquired at the same time. And in reports two times must be distinguished: the event time, which is the timestamp of the data object, and the time of entry into the report buffer, which may be later.
In telecontrol, quality and time have their equivalent in invalid, substituted or blocked signals and in the CP56Time2a time tag.
How it travels in MMS
In part 8-1, quality is a bit string: the first two carry validity, the following ones overflow, out of range, bad reference, oscillatory, failure, old data, inconsistent and inaccurate, and then source, test and blocked. The timestamp takes eight octets: 32 bits of seconds, 24 of fraction and one octet of time quality. Clock synchronization in the edition 1 mapping is done with SNTP.
What to test
- In the field. Disconnect the input, open the circuit and force the loss of the sending device, and verify validity, detail and source at the client. See point-to-point signal testing.
- Time. Remove the time reference and check that the time quality changes to not synchronized; then measure the difference between the timestamps of known events. See time synchronization in substations and loss of time synchronization.
- At the client. Check how the HMI treats an invalid, a questionable and a test data object; the standard leaves that treatment to the client.
Quality and time of your signals with Tiza Group
Does your SCADA show values without saying whether they are reliable, or do events arrive out of order? At Tiza Group we test signals with quality and timestamp in FAT and SAT testing and review the configuration with our IEC 61850 engineering, in medium, high and extra-high voltage, for substations and industry. How IEC 61850 models a measurement (value, deadband, range, vector and three phases) is explained in IEC 61850 Measurements.
Related guides
- Data substitution in IEC 61850
- Test mode and simulation in IEC 61850
- Time synchronization in substations
- IRIG-B and SNTP
- Event reporting and sequence of events
- Point-to-point signal testing
- Invalid, substituted or blocked signals in IEC 101 and 104
- CP56Time2a time tag in IEC 101 and 104
- IEC 61850 Measurements: MV, CMV, WYE and DEL
References
- IEC 61850-7-3 (edition 1, 2003): clause 6.2, quality; data attributes.
- IEC 61850-7-2 (edition 1, 2003): clause 5.5.3.7, TimeStamp and TimeQuality type; clause 18, time model.
- IEC 61850-8-1 (edition 1, 2004): clauses 8.1.3.6 and 8.2, timestamp and quality encoding; clause 21, SNTP synchronization.
- IEC 61850-5 (edition 1, 2003): clause 13.7.6, synchronization accuracy classes.
Frequently asked questions
What is the difference between invalid and questionable data?
Invalid data has an abnormal condition in the acquisition function or in the source, and the standard says it should not be used because it may be incorrect. Questionable data was flagged by a supervision function that detected abnormal behavior, although the value could still be valid; deciding whether to use it is up to the client.
Why can a substituted value appear as good?
Because when the source is 'substituted', validity is subordinate to the definition of the substituted value. The standard uses it to replace invalid values with others that the client can treat as good. The source flag is what warns that it does not come from the process.
What does the timestamp of a data object indicate?
The instant of the last change in the value of the data object or in its quality. It comes with the time quality: whether leap seconds are known, whether the clock failed, whether it is not synchronized, and the accuracy as the number of significant bits of the fraction of second.