UNS TagProvider Services (Reference) enable direct interaction with variables in remote systems without creating local tags. TagProvider Services provide:

  • Dynamic external data access
  • Tagless connections to remote systems
  • Automatic data model discovery
  • Real-time structure updates
  • Multi-protocol support
  • Historian integration capabilities

TagProviders allow consuming external data models directly, ideal for IoT systems and dynamic environments where device configurations change frequently.

On this page:

  


TagProvider Services →  Tutorial | Concept | How-to Guide | Reference



Find a TagProvider Service


TagProviders vs Devices

AspectDevicesTagProviders
Data StructureStatic, predefinedDynamic, discovered
Tag CreationRequired locallyNot required
MetadataFull controlLimited control
SecurityGranular per tagConnection level
Use CaseSCADA/HMI systemsIoT/Monitoring
ValidationStrict (FDA)Flexible
ConfigurationDesign-timeRuntime discovery

Supported TagProviders

Communication Protocols

  • MQTT - Standard and SparkPlugB
  • OPC UA - Industrial standard
  • ControlLogix - Rockwell PLCs
  • Codesys - PLC Handler
  • TwinCAT - Beckhoff systems

Application Integration

  • Server to Server - Solution interconnection
  • LineMonitor - Production monitoring

Historian Systems

  • Canary Labs - Enterprise historian
  • InfluxDB - Time-series database
  • GE Proficy - Industrial historian
  • SQL Database - Generic SQL sources

<ac:structured-macro ac:name="info"> ac:rich-text-body

<p>Historian TagProviders provide two additional features:</p> <ol> <li>Automatic historian querying for TrendCharts using Asset() syntax</li> <li>Can be used as Storage Locations for archiving time-series data</li> </ol> </ac:rich-text-body> </ac:structured-macro>


Configuration

Creating Connections

  1. Navigate to Unified Namespace → TagProvider Connections
  2. Click New Item button
  3. Select protocol from list
  4. Configure connection parameters
  5. Test connection
  6. Asset folder auto-created

Common Parameters

ParameterDescriptionRequired
NameConnection identifierYes
ProtocolCommunication typeYes
PrimaryStationMain endpointYes
BackupStationRedundant endpointNo
AccessRead/Write/ReadWriteYes
TimeoutResponse timeoutYes
DescriptionDocumentationNo

Protocol-Specific Settings

Each protocol requires unique parameters:

  • OPC UA: Server URL, Security Policy
  • MQTT: Broker, Topic structure
  • ControlLogix: IP Address, Slot
  • SQL: Connection string, Query

Using TagProviders

Asset Tree Integration

After configuration, TagProviders appear in Asset Tree:

/Root
  /MyOPCServer (TagProvider)
    /Line1
      /Motor1
        /Speed
        /Temperature

Accessing Data

Asset() Syntax:

csharp

// Read value
double speed = Asset("/MyOPCServer/Line1/Motor1/Speed");

// Write value
Asset("/MyOPCServer/Line1/Motor1/Speed") = 100;

// ControlLogix specific
Asset("/MyPLC/DINT:MyTag");
Asset("/MyPLC/DINT:MyArray[0]");

In Displays:

xml

<TextBox Text="{Asset('/MyOPCServer/Line1/Motor1/Speed')}" />

In Scripts:

csharp

if (Asset("/MyOPCServer/Line1/Motor1/Running"))
{
    // Motor is running
}

Data Type Handling

WPF Displays (.NET Framework 4.8)

Dynamic handling supported:

csharp

var value = Asset("/Path/To/Tag");
// Automatically handled as correct type

HTML5/Portable (NetStandard 2.0)

Explicit conversion required:

csharp

int intValue = TK.ToInt(Asset("/Path/To/Tag"));
string strValue = TK.ToString(Asset("/Path/To/Tag"));
bool boolValue = TK.ToDigital(Asset("/Path/To/Tag"));

Historian Integration

As Data Source

csharp

// TrendChart automatic query
TrendChart.Asset = "/HistorianProvider/Temperature";
// Automatically fetches historical data

As Storage Location

Configure in Historian → Storage Locations:

  • Select TagProvider as target
  • Map tags to historian points
  • Define storage intervals

Best Practices

  1. Use appropriate technology - Devices for static, TagProviders for dynamic
  2. Test connections - Verify before production
  3. Handle failures - Configure backup stations
  4. Monitor performance - Check read/write times
  5. Document providers - Clear naming and descriptions
  6. Plan redundancy - Use backup stations
  7. Consider security - Access mode restrictions

Browsing Data

Asset Tree Browser

  1. Navigate to Unified Namespace → Asset Tree
  2. Select TagProvider folder
  3. Browse structure in tree
  4. View live values in grid

Object Browser

Use toolbar Object Browser for correct syntax:

  1. Click Object Browser icon
  2. Navigate to desired element
  3. Copy displayed AssetPath

Configuration Properties

PropertyDescriptionType
ProtocolCommunication protocolSelection
ProtocolOptionsProtocol-specific settingsString
PrimaryStationMain connection endpointString
BackupStationBackup endpointString
SettingsConfiguration parametersString
TimeoutResponse timeout (ms)Integer
IsHistorianHistorian capabilityBoolean
AccessRead/Write permissionsEnum
ServerIPRemote server addressString

Troubleshooting

Connection failed:

  • Verify network connectivity
  • Check protocol settings
  • Review authentication
  • Test with simple query

No data visible:

  • Confirm connection active
  • Check Asset Tree mapping
  • Verify access permissions
  • Review protocol specifics

Performance issues:

  • Reduce polling frequency
  • Check network latency
  • Optimize queries
  • Use local caching

Type conversion errors:

  • Use explicit conversion (HTML5)
  • Verify data types match
  • Check null values
  • Review error messages



In this section...