TypeID#

class wattson.iec104.interface.types.type_id.TypeID(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)#

Bases: IntEnum

Methods

values

Defined Type-IDs as integers

from_name

names

type_converter

{type_id -> (python) val_type: val_type expected for val for type_id set }

convert_val_by_type

Converts val to its expected (python) datatype This _might_ not be its final value.

Attributes

M_SP_NA_1

M_SP_TA_1

M_DP_NA_1

M_DP_TA_1

M_ST_NA_1

M_ST_TA_1

M_BO_NA_1

M_BO_TA_1

M_ME_NA_1

M_ME_TA_1

M_ME_NB_1

M_ME_TB_1

M_ME_NC_1

M_ME_TC_1

M_IT_NA_1

M_IT_TA_1

M_EP_TA_1

M_EP_TB_1

M_EP_TC_1

M_PS_NA_1

M_ME_ND_1

M_SP_TB_1

M_DP_TB_1

M_ST_TB_1

M_BO_TB_1

M_ME_TD_1

M_ME_TE_1

M_ME_TF_1

M_IT_TB_1

M_EP_TD_1

M_EP_TE_1

M_EP_TF_1

C_SC_NA_1

C_DC_NA_1

C_RC_NA_1

C_SE_NA_1

C_SE_NB_1

C_SE_NC_1

C_BO_NA_1

C_SC_TA_1

C_DC_TA_1

C_RC_TA_1

C_SE_TA_1

C_SE_TB_1

C_SE_TC_1

C_BO_TA_1

M_EI_NA_1

C_IC_NA_1

C_CI_NA_1

C_RD_NA_1

C_CS_NA_1

C_TS_NA_1

C_RP_NA_1

C_CD_NA_1

C_TS_TA_1

P_ME_NA_1

P_ME_NB_1

P_ME_NC_1

P_AC_NA_1

F_FR_NA_1

F_SR_NA_1

F_SC_NA_1

F_LS_NA_1

F_AF_NA_1

F_SG_NA_1

F_DR_TA_1

F_SC_NB_1

invalidated_for_IEC104

For supported type-table, see DIN EN 60870-5-104, Section 9.5

expects_IOA_as_0

If an APDU send with this TypeID expects the IOA to be set to 0 This is the case when the information requested/ command does not belong to an IO with an IOA.

expects_single_IO

If an APDU with this TypeID should only have 1 IO to be considered valid.

direction

global_coa_compatible

If an APDU with this typeID is valid with the global COA 0xFFFF

carries_normalised_value

Applies to ASDUs carrying IOs with an NVA (Normalised Value; Type 4.1) Other normalised values values of 60870-5-4 are not implemented by 60870-5-104

carries_parameter_modification

can_send_periodic_update

A Type can send periodic updates iff it defines a format of 'measured value' without timestamp (9, 11, 13, 21)

property can_send_periodic_update: bool#

A Type can send periodic updates iff it defines a format of ‘measured value’ without timestamp (9, 11, 13, 21)

property carries_normalised_value: bool#

Applies to ASDUs carrying IOs with an NVA (Normalised Value; Type 4.1) Other normalised values values of 60870-5-4 are not implemented by 60870-5-104

convert_val_by_type(val) bool | float | int#

Converts val to its expected (python) datatype This _might_ not be its final value. (floats will be transformed into IEEE-RE32 floats which have a different accuracy than Python-floats)

Parameters:

val

property expects_IOA_as_0: bool#

If an APDU send with this TypeID expects the IOA to be set to 0 This is the case when the information requested/ command does not belong to an IO with an IOA. (Clock-synch, global interro, …)

property expects_single_IO: bool#

If an APDU with this TypeID should only have 1 IO to be considered valid.

property global_coa_compatible: bool#

If an APDU with this typeID is valid with the global COA 0xFFFF

property invalidated_for_IEC104: bool#

For supported type-table, see DIN EN 60870-5-104, Section 9.5

static type_converter(iec_type) Type#

{type_id -> (python) val_type: val_type expected for val for type_id set }

Parameters:

iec_type

static values() Set[int]#

Defined Type-IDs as integers