Quality identification

To map the IEC quality information from the telegrams to WinCC OA different possibilities exists, which are described in detail below.

Output:

  1. Define the quality as part of the peripheral address. This is suitable only for static setting, because if the quality must be changed, the address Config must be changed.

  2. Set the quality via user bits/user bytes.

  3. Set the quality using a DPE with a peripheral address using the subindices as defined in IEC driver details.

Input:

  1. Mapping of quality to WinCC OA user bits.

  2. Using a DPE with a peripheral address using the subindices as for the output.

If on the output direction a dynamic quality information is required, user bits or subindices have to be used. The former have the advantage that a lesser configure effort is needed, because no additional data point elements or peripheral addresses are required. Principally there is no necessity for blending the both variations. Before WinCC OA version 3.8 the subindex variation had to be used due to the limited status information (user bits).

Quality with user bits

In order to provide information about quality identification bits, etc. of the telecontrol system, you can map these bits on WinCC OA status bits. This mapping can be set in the config file (see Possible IEC driver config entries) e.g.:

userbitSB = 4

This maps the SB bit on WinCC OA userbit 4 and indicates that a replacement value has been set. An exception is the IV bit that is automatically mapped on the WinCC OA invalid bit.

In the output direction the quality information can be also specified via user bits / user bytes. Therefore the config entry ConnUserByteQ > 0 must be set, for example:

ConnUserByteQ = 3

After setting this config, the driver logs on the third user byte and uses these data for the quality information. Therefore it is important that every change of this user byte (or of the contained user bit) triggers an hot link, so that the value can be sent to the periphery. In order to avoid multiple telegrams the _original.._value and the corresponding _original.._userbyte<x> have to be set in a dpSet() for every application.

If ConnUserByteQ > 0 and a quality for the corresponding peripheral address is not given, then the corresponding user byte is used as a quality information.

Command - Qualifier

For IEC 104 every command can possess a "qualifier" Byte.

The highest bit contains the information for whether the command should be "executed" (0) or "selected" (1).

This qualifier can be mapped via a UserByte if the connUserByteQ config entry is set, for example:

e.g. connUserbyteQ = 1

If the highest bit in the UserByte is set to 1, it is a "Select".

If the highest bit in the UserByte is set to 0, it is a "„Execute".

The UserBytes and values can be set by using the function dpSet

// select

dpSet(“command.:_original.._value“, 1, “command.:_original.._userbit8“, 1);

// execute

dpSet(“command.:_original.._value“, 1, “command.:_original.._userbit8“, 0);

Quality as a part of the peripheral address in command direction

Some telegram types allow you to set the above bits or other information. They tell the telecontrol system (i.e. only possible for output) that a value is topical/not topical, etc.

The panel for setting quality bits is opened in the address panel by clicking the ... button.

A special case is the binary command with persistance time (number 160 for "Type"):

Figure 1. Quality identification for binary command with persistance time

A time period can be set for pulse commands sent from the driver to the SAT devices. A default value can be specified in this config file entry, so that the time period does not need to be set for every command data point (see Possible IEC driver config entries).

  • Time : The time base, possible values are 50ms, 500ms, 1sec, 10sec.

  • Factor : Multiplies the time to get actual impulse time. I.e. time 1sec and factor 2 gives an impulse time of 2s. The factor can be selected from 0-30.

  • Header : The new command overwrites an old one.

The set bits are totaled in the QOS (quality information, quality identification) text field as the sum of the set individual bits.

The input overwrites the quality information of the output for two peripheral addresses which only differ in the quality information (an input and an output). This is done if the input is set first. Note this when configuring peripheral addresses for the IEC driver.

Quality with subindex

The most flexible way to define the quality is using the, in the section Details of IEC driver defined, subindices. Some telegram types allow you to set the above bits or other information. Subindices are working for input and output and their values can be dynamically changed. When setting several DPEs belonging to different subindices of one reference, this has to be done in one dpSet() in order to ensure, that the telegram is sent only once.

The following quality information will be disjunctive combined:

  • from the peripheral address / set by the config ConnUserByteQ

  • defined via the subindex

Details on quality identification

Name Bits Meaning
OV BS1[1]<0..1>

"Overflow" The value of an information object is outside the set range (mainly applied to analog values:

<0> no overflow

<1> overflow

RES BS2[2..4]<0> "Reserved". Reserve
BL BS1[5]<0..1>

"Blocked". The value of the information object is blocked for transfer; the value retains its status previous to blocking. Blocking or unblocking can be triggered, for example, by a local block or automatically.

<0> not blocked

<1> blocked

SB BS1[6]<0..1>

"Substituted". The value of the information object is set by a dispatcher or automatically.

<0> not substituted

<1> substituted

NT BS1[7]<0..1>

"Not topical" A value is topical if the last update was successful. It is not topical if it was not updated in a set period or is not available.

<0> topical

<1> not topical

IV BS1[8]<0..1>

"Invalid" A value is valid if it is entered correctly. If the input function detects illegal conditions at the information source (missing input units) the value is marked as invalid. The value of the information object is not specified under this condition. Invalid marking is only used to indicate to the destination that the value may be wrong and must not be used.

<0> valid

<1> invalid

Also, for events of protection equipment with time tags:

Name Bits Meaning
EL BS1[4]<0..1>

"Elapsed". The elapsed time is valid if it is recorded correctly. If the recording mechanism detects any illegal conditions, the relative time is marked as invalid. The elapsed time of the information object is not specified under this condition. Invalid marking is only used to indicate to the destination that the elapsed time may be wrong and must not be used:

<0> elapsed time valid

<1> elapsed time invalid

For count values:

Name Bits Meaning
CY BS1[38]

"Carry"

<0> no carry in associated measuring period

<1> carry in associated measuring period

CA BS1[39]

"Counter adjusted".

<0> counter not adjusted since last read

<1> counter adjusted since last read