All SCADAPack RTUs have a data logging feature. Using this feature, data can be stored in non-volatile memory for later retrieval. The MQTT Application can publish time stamped data from up to 4 datalogs. However, the Publish Format must be Sparkplug B to use this feature. Additionally, the first field in each datalog must be a timestamp.
We recommend using the SCADASuite Datalogs application to create and manage the datalogs on the RTU. Using this application will ensure correct formatting of the datalog, and comes with the additional benefit that datalogs and values will be published using user configured names, instead of generic names.
Datalogs can only be published if the Publish Format is Sparkplug B and the first value in each datalog is a timestamp.
When the Datalog Application is also on the RTU, each value from a datalog will be published under the [datalog name]/[value name] tag, where [datalog name] and [value name] are user configured group names that are read from the Datalogs application. For example, if a datalog is named 'meter values' and holds two float values, and the names of the Monitored Value Floats are 'differential pressure' and 'static pressure', the values will be published under the 'meter values/differential pressure' and 'meter values/static pressure' tags.
When the Datalogs application is not available, then each value from the datalog will be published under a generic tag name that looks like datalogXX/valueYY, where XX is the datalog number and YY is the field number. Additionally, boolean values are actually stored as an integer in datalogs. As such, boolean values will be published as integers when the Datalogs application is not available because there is no context available as to whether a given value is a digital value or an integer value. When the Datalogs application is available, then the MQTT application can see from the Datalogs application which values are digitals, so this problem will not occur.
Use the Datalogs application to get additional context about the logged values. This allows you to use meaningful tag names.
The first value in a datalog must be a timestamp. All values in the same record will be published with that timestamp. The MQTT application can only publish boolean, integer and floating point values. Additional timestamps other than the timestamp in the first column and double precision floating point values are not supported.
Ignition expects timestamps to be UTC values. Set the clock on the RTU to UTC to have timestamps appear correctly in Ignition
When values are published from a datalog they are uploaded as timestamped historic data. In Ignition, this data bypasses the realtime system and is inserted directly into the historian, which means that the current value is always stuck at null.
When this option is selected, the newest record that is read from the datalog is also uploaded as a timestamped current value, instead of as a historic value. This allows you to do alarming and so on from the logged data, and prevents the current value from always being null.
Select this option to delete records from the datalog as they published. We recommend selecting this option to avoid duplicate publishing of records when the application is restarted and to also make publishing faster. When a datalog holds many records that have already been published the application still needs to iterate over those records to find the newest record that hasn't been published. When records are deleted, then it's obvious which records need to be published.
Select the Enable Periodic Reporting option to upload logged data periodically. Use the Reporting Period option to configure how often to upload data. If there are no new logged values then nothing will be uploaded.
Select the Enable Reporting Threshold option to upload logged data when the number of new records equals or exceeds the value in the Reporting Threshold field.
Select the Publish on Demand option to allow the datalog to be published when a coil is set. Use the On Demand Register to choose which register to use to trigger publishing. The register will be cleared by the MQTT application when publishing is complete. Depending on communications speed, and the speed of the network connection, publishing datalogs could take many 10s of seconds.