What is a Deadband? What Types of Deadbands Exist? How are Deadbands Configured in OPC and the LabVIEW DSC Module?Primary Software:
Primary Software Version: 8.0
Primary Software Fixed Version: N/A
Secondary Software: N/A
Problem: I want to learn about different deadbands and how they function with OPC and the LabVIEW Datalogging and Supervisory Control (DSC) module.
Solution: In general, a deadband can be defined as the minimum percentage of a given range or amount by which a measured value must vary in order for the device or computer to register a change.
For example, if you obtain a device that has a range of 0-100 Volts, and you have set a deadband of 1%, then the incoming voltage must vary by at least 1 Volt in order to realize a change of value.
There are four main types of deadbands when dealing with OPC and device communication:
A device deadband is device specific. The device itself will not send a value change unless the variation exceeds the deadband limit. For example, a data acquisition board receives a voltage signal, but a change is only registered if the change in voltage exceeds the resolution.
Device deadbands are usually dictated by hardware limitations, factory configuration or can sometimes be configured with the device driver provided by the manufacturer of the device.
OPC Server Deadband
Each time that you use an OPC client to monitor an OPC server, you are actually telling the client to "subscribe" to a specific OPC item on the designated server. Accompanying that subscription will be a deadband and/or an update rate. The OPC server then sends new data to the client via that subscription either at the dictated update rate or whenever the data change exceeds the set deadband. Both of these methods are dictated to the OPC Server via the OPC Client's interface.
Note: Many OPC servers do not support deadbands.
If the OPC server does not support a deadband, you must enter an update rate to define how often the OPC client will be updated from the server.
If the OPC server does support a deadband, you can usually configure the deadband through a setting in the OPC client. If the measured value exceeds that deadband, the OPC server will then publish the value to the client.
To set OPC deadbands/pollrates in the LabVIEW DSC module, follow these steps:
Note:If you are not using the DSC module, see the link below for how to construct URLs that specify Update Rate or Deadband for DataSocket for use with OPC Servers. DataSocket is a TCP/IP-based protocol for Windows that can subscribe to OPC Servers in application environments such as LabVIEW, LabWindows/CVI, and Measurement Studio.
To find out if your OPC server supports deadbands, please consult the manufacturer's documentation.
Tag Engine Deadband and Logging Deadband
You may also configure two other deadbands: the Tag Engine deadband and the logging deadband. Both of these are configurable for the LabVIEW DSC module. When you create or edit a tag in the Tag Configuration Editor, click the Operations tab in the tag configuration window and set the values you want to use for that tag.
The Tag Engine deadband dictates the threshold that a value must cross before a new value is registered in the Tag Engine.
The logging deadband dictates the threshold that a value must cross before it is actually logged in the Citadel database.
Note: You can have your engine deadband set lower than your logging deadband. This would simply allow the engine to update its tag values more frequently than it actually will log those values. But you cannot have your engine deadband set higher than your logging deadband. In that case, the Tag Engine would not update with enough accuracy to allow you to actually log at the desired deadband. If you do this, a warning will appear.
Note: In DSC Module 8.0, the Shared Variable Engine replaces the Tag Engine.
When you set an update deadband value, the Shared Variable Engine compares any new value acquired to the existing value. The new value replaces the old value only if the percentage difference between the new value and the previous value equals or exceeds the deadband. You can set the update deadband programmatically by using the SharedVariableIO properties.
When you set a logging deadband value, the Shared Variable Engine compares any new value acquired to the existing value. The Shared Variable Engine logs the new value only if the percentage difference between the new value and the previous value equals or exceeds the deadband. You can set the logging deadband through the Shared Variable Properties dialog box.
Refer to the DSC Module 8.0 Help for more information about using deadband with the Shared Variable Engine.
NI Developer Zone: Developing an OPC Client Application Using Visual Basic
Report Date: 11/19/2002
Last Updated: 08/04/2007
Document ID: 2RIFA7Q7