Module description

A transformation function can be applied to measured values. The function is applied for each received measured value.

List of applicable functions :

tfid

Range 0 / Deadband

math function

normal

[-bm…bm]

y=a*x+b

square_root

[-bm…bm]

y=a*sqrt(x)+b

quadratic

[-bm…bm]

y=sqrt(a*x+b)

transparent

[-bm…bm]

y=x

The value a=0 is always replaced by a=1.



Configuration

The following attributes are read from the Exchanged data configuration:

  • Math function id
  • Array of parameters (a, b, ...)
  • The dead band (min and max), band of input values where the output is zero

Filtering rules

R1 : transformation function is performed only for measured values configured in the Exchanged data configuration.

R2 : transformation function is performed only if a valid tfid, array of parameters and dead band are configured.

R3 : (quality check) if PIVOT.GTIM.MvTyp.q.Validity is different from "good" or if one of the attributes of PIVOT.MvTyp.q.DetailQuality is set to "true" the module sets PIVOT.GTIM.MvTyp. q.Validity to "invalid" and the output PIVOT.GTIM.MvTyp.mag.f to 0 (deletion of the PIVOT.GTIM.MvTyp.mag.i if it exists)

R4 : (calculation error check) If the square root parameter has a negative value, the output result is set to 0 bad quality and the "inconsistent" bit is set to 1.

R5: (calculation error check) If the result of the calculation does not correspond to the internal format of the variable (outside the functional type float32...), the output result is set to 0 bad quality and value the overflow to active. The calculation is therefore stored in a double format before being converted to float32. 

Data processing

Input

This filter plugin expects readings to be a pivot model measured values datapoints.

The module uses the identification (Attribute PIVOT.GTIM.Identifier) of the data to determine if the measured value is part of the information to be processed.

The data read from the pivots format are :

  • PIVOT.GTIM.MvTyp.mag.i => input value in INT32 format
  • PIVOT.GTIM.MvTyp.mag.f => input value FLOAT32
  • PIVOT.GTIM.MvTyp.q.Validity and PIVOT.MvTyp.q.DetailQuality => quality control

Output

The module performs the configured transformation function to the measured value before forwarding it to other services.

The data in the generated pivot format is :

  • PIVOT.GTIM.MvTyp.q.DetailQuality.inconsistent is set to "true" => if calculation check fails
  • PIVOT.GTIM.MVTyp.q.DetailQuality.overflow is set to "true" => if calculated value exceeds FLOAT32 format
  • PIVOT.GTIM.MVTyp.q.DetailQuality.inaccurate is set to "true" => if input value is in the dead band
  • PIVOT.GTIM.MvTyp.mag.f => Calculated output value (PIVOT.GTIM.MvTyp.mag.i is not used). 
  • Validity:
    • If overflow : PIVOT.GTIM.MvTyp.q.Validity is set to "invalid"
    • If inconsistent or inaccurate: PIVOT.GTIM.MvTyp.q.Validity is set to "questionable"
  • If the transformation function is not transparent : PIVOT.GTIM.MvTyp.q.Source is set to "substituted"
  • if the quality checks fails :
    • PIVOT.GTIM.MvTyp.q.Validity  is set to "invalid"
    • PIVOT.GTIM.MvTyp.mag.f is set to 0 (PIVOT.GTIM.MvTyp.mag.i is not used).


  • No labels