Dear all,
We are currently facing an possible issue with data handling across two protocols, STTP and IEEE C37.118.2-2011, for the same group of devices. We expected that measurements stored as STAT via the IEEE C37.118.2 protocol would also be stored as STAT when the same data is received via STTP.
Here are some specifics:
- Same devices are being received on one server via STTP and on another via IEEE C37.118.2-2011.
- The openPDC version on both servers is 2.9.118.0.
However, for several devices, the Measurement Type in the Historian is being automatically configured as PPA instead of STAT when data is received via STTP. The expected behavior is for these measurements to be stored as STAT, just as they are when received via the IEEE protocol.
Device Statistic measurement received via STTP
Same measurement as above, but received via IEEE C37.118.2-2011
Has anyone encountered a similar issue, or is there any known solution or configuration adjustment to ensure that the measurements are stored correctly as STAT in STTP protocol?
Best regards,
Renan Pires
Hello Renan,
The IEEE C37.118 standard doesn’t include a mechanism for transferring statistics. They must be modeled as analog values in order to include them in an IEEE C37.118 frame. What’s going on here is that you are not receiving statistics via IEEE C37.118, but rather the openPDC is computing them locally based on the data that is being received over IEEE C37.118.
The same thing happens when receiving data over STTP. However, the STTP protocol does have a mechanism for transferring statistics as well. Therefore, on the system with the STTP subscriber, you likely have two sets of statistics. One is the set that is sent from the upstream PDC and thereby archived in the PPA historian. The other is the set that is computed locally and thereby archived in the STAT historian.
Here are some potential solutions I’ve thought of.
- Database trigger to change the
Measurement.HistorianID
field on insert/update
- Custom build of the STTP subscriber adapter with logic adjustment in
SynchronizeMetadata()
- Two subscribers assigned to different historians
- Don’t send statistics downstream at all; just keep them in an upstream
STAT
historian
Note that metadata synchronization might become a bit of a nightmare for the third option.
Thanks,
Stephen