Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • All types not listed in this table are not supported in current version.
  • The current implementation provides a default mapping rule for each known type, but some new rules might be added in the future and configured using the "alternate_mapping_rule" option in its parameters.

Converting monitoring data types

Filter interface

The "plugin_ingest" call will convert each "reading" of "reading_set" as follow:

...

The <Root> key of PIVOT object is:

Reading key

Content

PIVOT.GTIS

Tele Signalisation

PIVOT.GTIM

Tele Measurement

PIVOT.GTIC

Tele command

<type> conversion table:

CDC ClassHNZ Type ID

SpsTyp/DpsTyp

TS / TC (ACK) / TVC (ACK)

MvTyp

TM

SpcTyp/DpcTyp

TC

IncTyp

TVC

Converting monitoring data types

The content under <Root> will convert the IEC 104 data objet to a pivot object as follow:

Tele-Informations

Key

Type

Default Value

HNZ.data_object.<...>

Note

Mandatory

(of do field)

<Root>.<type>

{CDC}


do_type

exchanged_data.datapoints.pivot_type

(see <type> conversion table above)

YES

<Root>.Cause.stVal

Integer


do_cg

3 (TS on CE) | 20 (TS on CG) | 1 (TM cyclic)

YES

<Root>.ComingFrom

String

hnzip

do_comingfrom


NO

<Root>.SpsTyp.stVal

Boolean


do_value

[0..1] TS

YES

<Root>.MvTyp.mag.i

Integer


do_value

Int 32 (TM)

YES

<Root>.Identifier

String


do_id

exchanged_data.datapoints.pivot_id

YES

<Root>.<type>.q.Validity

String

good

do_valid

good (0) | invalid (1)

NO

<Root>.<type>.t.SecondSinceEpoch

<Root>.<type>.t.FractionOfSecond

Integer

Integer


do_ts

SecondSinceEpoch is the time in seconds since 1970-

01-01 00:00:00 UTC

FractionOfSecond is the fraction of second (Computation method described in 61850 protocol documentation).

YES

<Root>.TmValidity.stVal

String

good

do_ts_iv

good (0) | invalid (1)

NO

<Root>.<type>.q.Validity

<Root>.<type>.q.DetailQuality.oldData

String

Boolean

Validity = "good"

oldData = <undefined>

do_ts_c


0 => Validity = "good", oldData = <undefined>

1 => Validity = "questionable", oldData = "true"

NO

TC ACK and TVC ACK

Key

Type

Default Value

HNZ.data_object.<...>

Note

Mandatory

(of do field)

<Root>.<type>

{CDC}


do_type

SpcTyp (TC) | IncTyp (TVC)

YES

<Root>.ComingFrom

String

hnzip

do_comingfrom


NO

<Root>.SpcTyp.stVal

Boolean


do_value

[0..1]

YES (if TC)

<Root>.IncTyp.stVal

Int


do_value

Int 32

YES (if TVC)

<Root>.Identifier

String


do_id

exchanged_data.datapoints.pivot_id

YES

<Root>.<type>.q.Validity

String

good

do_valid

good (0) | invalid (1)

NO

Filter rules

STATION => (ASDU) HNZ SOUTH => (IEC104 DP) HNZTOPIVOT =>(PIVOT DP) PIVOTTOIEC104 => (IEC104 DP) IEC104 NORTH => (ASDU) CENTER

...

Converting commands data types

The content under <Root> will convert the IEC 104 data objet to a pivot object as follow:

TC and TVC

Key

Type

Default Value

HNZ.data_object.<...>

Note

Mandatory

(of co field)

<Root>.<type>

{CDC}


co_type

SpcTyp (TC) | IncTyp (TVC)

YES

<Root>.SpcTyp.stVal

Boolean


co_value

[0..1]

YES (if TC)

<Root>.IncTyp.stVal

Int


co_value

Int 32

YES (if TVC)

<Root>.Identifier

String


co_id

exchanged_data.datapoints.pivot_id

YES