Datalogger ESC8816 communication protocol

Supported device types and versions
Communication line configuration
Communication station configuration
I/O tag configuration
Literature
Changes and modifications
Document revisions

Supported device types and versions


The protocol allows reading and writing data from/into the ESC 8816 datalogger.

Implementation was performed and verified according to the ESC Model 8816 – Data Logger Engineering Manual – TIN 96-1169, August 1996 for the datalogger software version 5.02.
Starting with D2000 version 10.0.37, the communication with DLX1 datalogger is supported. For this device, communication on a TCP/IP-TCP line was also implemented.
The protocol is also compatible with a EDL 15 datalogger produced by ECM Monitory for which addressing of channels above 99 is supported.

Communication includes:

Table 1

Measurement typeI/O tag typeCommunication functionDocumentation
Current valuesAIPoll Most Recent Instantaneous ReadingAppendix A – A54
Current value flagsDIPoll Most Recent Instantaneous ReadingAppendix A – A54
1m averages with flagsAI, DIRetrieve AveragesAppendix A – A24
15m averages with flagsAI, DIRetrieve AveragesAppendix A – A24
30m averages with flagsAI, DIRetrieve AveragesAppendix A – A24
60m averages with flagsAI, DIRetrieve AveragesAppendix A – A24
Custom-period averages with flagsAI, DIRetrieve AveragesAppendix A – A24
Digital inputsDIPoll Current Digital Input StatusAppendix A – A19
CalibrationsAIPoll Calibration ResultsAppendix A – A22
Real-time – readTOAPoll Current TimeAppendix A – A56
Real-time – writeTOADownload Current TimeAppendix A – A40
Mathematic constants – writeAODownload Math Pack ConstantsAppendix A – A45
Relay outputs – writeDOUTSwitch Digital Output Control Relay On/OffAppendix A – A64

Communication line configuration


  • Communication line category: Serial, SerialOverUDP Device Redundant, RFC2217 ClientTCP/IP-TCP (for DLX1).
  • Baud rate according to the ESC 8816 datalogger settings - System Configuration Screen – Baud Rate – Port 1, Baud Rate – Port 2, or Baud Rate – Port 3 according to the used datalogger port, 1 stop bit, 8 data bits, no parity.

Line protocol parameters

The following line protocol parameters can be defined:

Table 2

KeywordFull nameMeaningUnitDefault value
PM
Passive ModeEnables the passive mode (listening) of the line. It is enough to define the PM parameter for one station on a line. In the passive mode, the communication between ESC 8816 datalogger and other devices is monitored (datalogger's responses to the master are monitored). Listening allows getting the following types of values:
  • current values, current values' flags ("IJ" response in the communication)
  • averages (1, 15, 30, 60-minute averages, custom averages) and their flags ("56" response in the communication)
  • digital inputs ("23" response in the communication)
  • real-time - reading ("LL" response in the communication)

If the passive mode has been enabled (PM=True), to disable it you must either set the parameter PM=False or restart the D2000 KOM process (i.e. deleting the parameter PM=True is not sufficient).

--
PMT
Passive Mode TimeoutTimeout after expiration of which all stations change their states to the error state if the line is in the passive mode (see the Passive Mode parameter). If no data is received within the timeout, all the stations on a line will change their states to the error state.sec10
DC
Debug CalibrationExtended debug information for calibration data reading.-False
AC
Acknowledge Calibration DataAcknowledgment of calibration data will be sent to the datalogger. If the acknowledgment is not sent, the datalogger will repeatedly send all available calibration data.-True

Communication station configuration


  • Communication protocol: ESC 8816.
  • The station address is a decimal number within the range of 0..255. Station address must be identical with the datalogger setting "System Configuration Screen" – "Logger ID Code".
  • The line mode number must correspond to a correctly configured mode.

Station configuration is different from implementation in the versions D2000 v3.XX. The station time parameters (polling parameters) and polling priority are used, one datalogger must be divided into logical stations as follows:

  • Current values - the delay at least 1 second, station priority 0. Current measurements of channels and digital inputs are configured at this station. This is a logical station with the lowest priority, the delay parameter may not be less than 1 second.
  • 1m averages - the period 1 minute, the offset 5..10 seconds, station priority 1.  One-minute averages of channel measurements are configured at this station. This is a logical station with a higher priority, the parameter offset shouldn't be less than 5 seconds - this is the time provided for the datalogger for processing values.
  • 30m averages - the period 30 minute, the offset 5..10 seconds, station priority 2. Thirty-minute averages of channel measurements are configured on this station. This is a logical station with even higher priority, the parameter offset shouldn't be less than 5 seconds - this is the time provided for the datalogger for processing values. 
  • Calibrations – station with a required period for reading calibration results.
  • For other than 1m and 30m averages (15m, 60m, or custom period averages), it is necessary to configure the polling parameters according to the custom average.

Note: Time of values acquired from communication is the time of the beginning of a given period. The division into individual stations is necessary to ensure data reading reliability in the required time and not to overload the communication, e.g. by a frequent acquisition of current values blocking the acquisition of interval averages.

Station protocol parameters

The following station protocol parameters can be defined:

Table 3

KeywordFull nameMeaningUnitDefault value
RC
Retry CountThe number of request repeats in case of a communication error.-2
RT
Retry TimeoutThe delay between individual request repeats in case of a communication error.ms1000 ms.
WFT
Wait First TimeoutThe delay after transmitting the request before reading the response.ms500 ms.
WT
Wait TimeoutThe delay between response readings until its finalization.ms400 ms.
MWR
Max Wait RetryThe number of repeats of response readings until its finalization.-8

GSI

Get Stored Interval

The size of the period, for which the archive data from the datalogger are read without interruption. The period is specified in minutes. If the value of the period is e.g. 60 minutes, so all archive data from e.g. 05:00 to 06:00 are read, then data from 06:00 to 07:00, etc. The reading of archive data from this period shouldn't take more than one minute, because otherwise some of the current data, acquired among archive readings, could be lost.

min10

ADM

Archive Depth Minute

Depth of 1-minute archives. The ESC dataloggers had a depth of 60 minutes, the new EDLs by ECM Monitory have a configurable depth (even 2 weeks). If the read data is older than the configured depth, the reading is in 30-minute intervals. If they are newer, the Get Stored Interval parameter applies. A value of 0 means unlimited depth (reading is always performed with Get Stored Interval).

min90

MHR1

Max Hist Read 1min

Limit for the depth of reading the history of 1-minute data. The original ESC 8816 dataloggers had an internal memory for one hour of data. Newer devices supporting the ESC 8816 protocol (e.g. EDL15) can store data significantly longer and thus it is possible to read data after a communication failure in up to 14-31 days.

hour1

MHRO

Max Hist Read Others

Limit for the depth of reading the history of other data (with a period greater than 1 minute). The original ESC 8816 dataloggers had an internal memory for 30 days of data. Newer devices supporting the ESC 8816 protocol (e.g. EDL15) can store data significantly longer, so it is possible to read data after a communication failure in up to 60 days.

hour31*24
PV
Protocol VariantA variant of the protocol. Existing variants are:
  • 0 - ESC8816 - standard protocol for datalogger ESC8816
  • 1 - DLX1 - support of datalogger DLX1 (implemented in august 2015 in D2000 version 10.0.37)
-0 - ESC8816

A string containing the protocol parameters is defined as follows:

Keyword=value;Keyword=value; ...

Example:

RC=1;RT=500;MWR=10;

If a keyword with an invalid value is used in the initialization string, the corresponding default value according to table 2 will be used.

I/O tag configuration


Support of communication with ESC 8816 comprises the acquisition or setting of the following values:

  • reading of current values with flags,
  • reading of 1m, 15m, 30m, and 60m averages with flags,
  • reading of custom period value averages with flags,
  • reading of current states of digital inputs,
  • reading of calibration results,
  • reading the real-time,
  • setting the real-time,
  • setting mathematic constants,
  • setting relay outputs.

Current value configuration

I/O tag is AI type, measurement type is ACTUAL. The channel number is defined as a decimal number within the range of 0..99.

Note: D2000 supports extended channel addressing syntax (current values, averages, calibration results), which allows addressing channels 0-359 (for datalogger EDL 15), with channels 0-99 backward compatible with standard addressing.

Configuration of current value flags

Current value flags are DI type (Digital Input). The measurement type is ACT Flag.

Note: The No missing data <blank> flag can be configured using the character _ (underline) for clarity.

Configuration of 1m, 15m, 30m, and 60m averages

Averages are values of AI type (Analog Input). Measurement type is 1m AV for 1m averages, 15m AV for 15m averages, 30m AV for 30m averages, and 60m AV for 60m averages. A channel number is a decimal number within the range of 0..99 (see the note about channel addressing).

Flag configuration of 1m, 15m, 30m, and 60m averages

Flags of averages are values of DI type (Digital Input). Measurement type is 1mAV Flag for 1m averages, 15mAV Flag for 15m averages, 30mAV Flag for 30m averages, and 60mAV Flag for 60m averages. A channel number is a decimal number within the range of 0..99 (see the note about channel addressing).

Note: The No missing data <blank> flag can be configured using the character _ (underline) for clarity.

Configuration of custom period averages with flags

When you define Custom AV, a custom time period can be defined. The period must be within the range of 1..999 and the type must be "sec", "min", "hour", or "day". The CustomAV Flags do not require defining a period, they correspond to the AI value (average) setting for the required channel (the value must be defined !).

Configuration of digital inputs

Digital inputs are values of the DI type (Digital Input). The measurement type is Digital Input. The Digital input number is a decimal number within the range of 0...999.

Configuration of calibration results

Calibration results are values of the AI type (Analog Input). The measurement type is CALIB Ph1 for acquiring the value of Average During Zero value or CALIB Ph2 for acquiring the value of Average During Span1. The channel number is a decimal number within the range of 0...99 (see the note about channel addressing).

Note:
The value of Average During Span2 is also returned during reading - the value has always been -999 (invalid value) in a specific application. If the value of the parameter is needed by any other application, the protocol needs to be extended.

Real-time I/O tag configuration

For each station (physically one ESC8816 datalogger), one I/O tag containing the real-time of the corresponding station can be configured. The I/O tag is necessary for real-time synchronization computer -> datalogger.

Mathematic constant I/O tag configuration

Mathematic constants are values of the AO type (Analog Output). The measurement type is MATH. A constant number is a decimal number within the range of 0...99.
Warning
: Mathematic constants can't be read, so their current value is the value last written or unknown (after D2000 system restart).
Note: D2000 supports extended mathematic constants addressing syntax, which allows addressing mathematic constants 0-359, with mathematic constants 0-99 backward compatible with standard addressing.

Relay output I/O tag configuration

Relay outputs are values of the DOUT type (Digital Output). The measurement type is Relay Output. An output number is a decimal number within the range of 0...999.
Warning
: State (value) of relay outputs can't be read, so their current value is the value last written or unknown (after D2000 system restart). Reading values can be enabled by binding relay outputs with digital inputs and then by controlling the state of the relay outputs using the digital inputs.

I/O tag flag assignment

I/O tag flags (from A to P) are set according to the occurrence of datalogger flags for current values, 1m averages, and 30m averages as follows:

Table 3

I/O tag flagMeaningDatalogger flag
AInvalid measurement"<"
BTransient operation"F"
CCalibration"C"
DMalfunction"B"
EMaintenance"M"
FPower cut"P"
GInactive measurement"D"
ILayoff"F" or "p"
HHigh Alarm"h"
JHigh-High Alarm"H"
KLow-Low Alarm"L"
LLow Alarm"l"
MDigital information"V"
NDigital information"W"
ODigital information"X"
PDigital information"Y"

Note: when the A flag is set, the Weak flag is also set.

Acquisition of archived (stored) values

The ESC 8816 datalogger performs local archiving of measured values. The values can be requested automatically when a dispatcher system breakdown is detected or directly by the dispatcher (D2000 HI, D2000 EventHandler) to complete the D2000 dispatcher system archive.

The method described above allows acquiring calibration values, which are 30 days old, 30m averages for the last 31 days, and 1m averages for the last 60 minutes.

Literature


-

Changes and modifications


  • November 1998 - Datalogger software version 5.16

    Modification – for 30m averages, both the flag "F" (layoff) and ">" (validity of average with missing measurements) can occur, this half-hour is always considered as invalid.
    Modification - new "p" flag - layoff. The "F" flag is set in cases of occurrence of the "p" flag for backward compatibility.

  • August 2000 - implementation of relay outputs writing
  • February 2003 - implementation of 15m/60m/Custom period averages

Document revisions


  • Ver. 1.2 – February 8th, 2000 – Update of the versions 4.07 and 4.10.
  • Ver. 1.3 – August 22nd, 2000 – controlling relay outputs added.
  • Ver. 1.4 - February 7th, 2003 - custom-period averages added.
  • Ver. 1.5 - March 13th, 2008 - Update of protocol parameters.
  • Ver. 1.6 - August 26th, 2015 - Update of protocol parameters (protocol variant for DLX1 implemented).
  • Ver. 1.7 - April 30th, 2018 - Enhancement of channel addressing and mathematic constants from 0-99 to 0-359.
  • Ver. 1.8 -May 23, 2024 - processing of flags H, J, K, L, M, N, O, P


Napíšte komentár