C37.118 Driver
Version: 1.0.0
The ESF C37.118 Driver implements the IEEE Std C37.118-2011 protocol using the Driver model. The Driver can be used to interact with C37.118 devices using different abstractions, such as the Wires framework, the Asset model or by directly using the Driver itself.
Features
The C37.118 Driver features include:
- Support for C37.118 protocol over TCP.
- Support for reading data status, frequency deviation and ROCOF.
- Support for reading phasors, analogs and digitals.
Instance creation
A new C37.118 instance can be created either by clicking the New Driver button in the dedicated Drivers and Assets Web UI section or by clicking on the + button under Services. In both cases, the com.eurotech.framework.c37118.driver.C37118Driver
factory must be selected and a unique name must be provided for the new instance.
Driver life-cycle
The driver opens a connection towards the PMU/PDC as soon as a read request is triggered, or at the very first driver instantiation if any channel is configured as listen
. Immediately after the connection is established, the driver obtains the configuration from the PMU/PDC, which is kept in memory for the entire life of the connection (no further readings are made for this information). Then, the driver asks the PMU/PDC to start sending data, which is then made available through ESF readings. If no new readings are triggered for a considerable amount of time (configurable in the driver configuration through the Reception session length
parameter), and there are no listen
channels, the driver asks the PMU/PDC to stop sending data in order to avoid waste of network traffic, then closes the connection. As soon as a new read is triggered (or a new listen
channel is configured), the process starts again with a new connection. If any channel is set as listen
, the driver never asks the PMU/PDC to stop sending data.
Channel configuration
The C37.118 Driver channel configuration is composed of the following parameters:
- name: the channel name.
- type: the channel type, (only
READ
is available for this protocol). - value type: the Java type of the channel value.
- pmu.id: Phasor Measurement Unit ID.
-
c37118.data.type: the type of metric to be read.
ANALOG
: numeric value, can be mapped asDOUBLE
,FLOAT
,INTEGER
,LONG
DFREQ
: numeric value, can be mapped asDOUBLE
,FLOAT
,INTEGER
,LONG
DIGITAL
: should be mapped as JavaBOOLEAN
FREQ
: numeric value, can be mapped asDOUBLE
,FLOAT
,INTEGER
,LONG
PHASOR
: should be mapped as JavaSTRING
(the returned string is a json containing the real and imaginary float fields of the complex number)STAT
: numeric value, should be mapped as JavaINTEGER
-
c37118.channel.name: the name of the channel to be read. This parameter must be set only with
ANALOG
,DIGITAL
,PHASOR
data types. In all other cases, must be left blank.