• Tag Group (normal execution rate)
• Historical Tag Group (e.g. Default Historical)
• Sample Mode (Tag Group vs On Change vs Periodic)
• Deadband Style (Auto vs Analog vs Discrete)
I understand that the Tag Group controls how often the tag is evaluated/read, while the Historical Tag Group controls how often the historian evaluates whether a sample should be stored. However, it’s not entirely clear when it is best to reuse existing tag groups versus creating a dedicated Historical Tag Group, or how closely these two rates should be aligned.
Additionally, I’m looking for clarification on Deadband Style = Auto. Since Auto switches between Analog and Discrete based on the tag’s data type, what are the recommended practices for tags that are non-float types (e.g. INT/DINT) but represent states, enums, or AOI state machines?
In practice, what configuration patterns are recommended to:
Avoid unnecessary historian evaluations
Prevent excessive or noisy history
Ensure important state changes are reliably captured
Any guidance or real-world examples would be appreciated.
I'll be honest in that the historical tag groups have always confused me (there's a min/max time between samples on the tag group, but also on the tag itself there's a max time between samples). So I've just avoided using them to remove confusion.
On change is just like it says. Every time the tag value changes, it evaluates against the min/max sample time and deadband settings to determine if it should be recorded.
Periodic evaluates the value on a periodic basis rather than every change and will store it if it falls outside the deadband or if the max time has elapsed.
On deadband styles, I stick with Auto except for tags that aren't "fluid" in their changes. This includes setpoints, alarm limits, sequence steps, etc. where I use Discrete. This makes a big difference due to how analog points are stored compared to discrete points. Discrete points will essentially be recorded on change, but analog points will be stored in memory and each new value is compared to the previously stored and previous values to determine if the value is outside of the deadband and if the previous point should be recorded or ignored. Deadbands in analog deadband style are based on a rate of change rather than an absolute change (it can get confusing, but check the link below to help explain the math behind it all).