1.4 Signal Quality Corresponding with OPC

Every signal (input, output, parameter) in the REXYGEN system has the so-called quality flags in addition to its own value of corresponding type (table 1.1). The quality flags in the REXYGEN system correspond with the OPC (Open Platform Communications) specification [2]. They can be represented by one byte, whose structure is explained in the table 1.2.


Substatus









Bit number

7

6

5

4

3

2

1

0

Bit weight

128

64

32

16

8

4

2

1










Bit field
Quality
Limits

Q

Q

S

S

S

S

L

L










BAD

0

0

S

S

S

S

L

L

UNCERTAIN

0

1

S

S

S

S

L

L

not used in OPC

1

0

S

S

S

S

L

L

GOOD

1

1

S

S

S

S

L

L











Table 1.2: The quality flags structure

The basic quality type is determined by the QQ flags in the two most important bits. Based on these the quality is distinguished between GOOD, UNCERTAIN and BAD. The four SSSS bits provide more detailed information about the signal. They have different meaning for each basic quality. The two least significant bits LL inform whether the value exceeded its limits or if it is constant. Additional details and the meaning of all bits can be found in [2], chapter 6.8. The list of blocks propagating signal quality is given in table 1.3.

The principle of quality propagation between blocks operates as follows: The lowest quality among all data inputs to a block is determined and applied to all data outputs. Any unconnected input is considered as good quality (GOOD). Quality on control inputs is not tracked; however, control inputs can influence the propagation of quality from data inputs. On status outputs, the quality is invariably set to good (GOOD).

For instance, in a DEL block, the input u is considered data because it carries operational data. The input R1 is classified as control since it controls the block’s operation. The output y is data because it conveys the block’s output information. The RDY output is status as it indicates the operational state of the block.

Except for certain cases (SAI, VIN, S1OF2), the quality does not influence the block’s algorithm (i.e., the actual values at the outputs). Some blocks may assign a lower quality (UNCERTAIN, BAD) as a result of their algorithm (e.g., DEL prior to buffer filling or DIV when dividing by zero).

2024 © REX Controls s.r.o., www.rexygen.com