TagProviders vs Devices
| Aspect | Devices | TagProviders |
|---|
| Data Structure | Static, predefined | Dynamic, discovered |
| Tag Creation | Required locally | Not required |
| Metadata | Full control | Limited control |
| Security | Granular per tag | Connection level |
| Use Case | SCADA/HMI systems | IoT/Monitoring |
| Validation | Strict (FDA) | Flexible |
| Configuration | Design-time | Runtime 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
Configuration
Creating Connections
- Navigate to Unified Namespace → TagProvider Connections
- Click New Item button
- Select protocol from list
- Configure connection parameters
- Test connection
- Asset folder auto-created
Common Parameters
| Parameter | Description | Required |
|---|
| Name | Connection identifier | Yes |
| Protocol | Communication type | Yes |
| PrimaryStation | Main endpoint | Yes |
| BackupStation | Redundant endpoint | No |
| Access | Read/Write/ReadWrite | Yes |
| Timeout | Response timeout | Yes |
| Description | Documentation | No |
All Properties
| Property | Description | Type |
|---|
| Protocol | Communication protocol | Selection |
| ProtocolOptions | Protocol-specific settings | String |
| PrimaryStation | Main connection endpoint | String |
| BackupStation | Backup endpoint | String |
| Settings | Configuration parameters | String |
| Timeout | Response timeout (ms) | Integer |
| IsHistorian | Historian capability | Boolean |
| Access | Read/Write permissions | Enum |
| ServerIP | Remote server address | String |
Protocol-Specific Settings
Protocol-Specific Settings
OPC UA
| Setting | Description |
|---|
| Server URL | OPC UA endpoint (e.g., opc.tcp://server:4840) |
| Security Policy | None, Basic128Rsa15, Basic256, Basic256Sha256 |
| Security Mode | None, Sign, SignAndEncrypt |
| Authentication | Anonymous, Username/Password, Certificate |
MQTT
| Setting | Description |
|---|
| Broker | MQTT broker address |
| Port | Broker port (default: 1883) |
| Topic Structure | Topic pattern for subscription |
| QoS | Quality of Service level (0, 1, 2) |
| Client ID | Unique client identifier |
ControlLogix
| Setting | Description |
|---|
| IP Address | PLC IP address |
| Slot | CPU slot number |
| Path | Optional routing path |
Using TagProviders
SQL Database
| Setting | Description |
|---|
| Connection String | Database connection string |
| Query | SQL query for data retrieval |
| Refresh Rate | Poll interval (ms) |
Data Type Handling
WPF Displays (.NET Framework 4.8)
Dynamic handling supported — types are automatically resolved.
HTML5/Portable (NetStandard 2.0)
Explicit conversion required:
| Method | Returns |
|---|
| TK.ToInt(value) | Integer |
| TK.ToDouble(value) | Double |
| TK.ToString(value) | String |
| TK.ToDigital(value) | Boolean |
| TK.ToDateTime(value) | DateTime |
Asset() Syntax Reference
Basic Syntax
Asset("/TagProviderName/Path/To/Tag")
ControlLogix Syntax
Asset("/MyPLC/DataType:TagName")
Asset("/MyPLC/DINT:MyTag")
Asset("/MyPLC/DINT:MyArray[0]")
Asset("/MyPLC/REAL:Temperature")
Supported Operations
| Operation | Syntax |
|---|
| Read | value = Asset("/path") |
| Write | Asset("/path") = value |
| Subscribe | Automatic in displays |
Historian Integration
As Data Source
When a TagProvider has IsHistorian = true:
- TrendCharts automatically query historical data
- Use Asset() syntax for historian path
- Time range passed automatically from chart
As Storage Location
Historian TagProviders can be configured as storage targets:
- Configure in Historian → Storage Locations
- Select TagProvider as destination
- Tags are logged to external historian
Supported Historian Protocols
| Protocol | Read | Write |
|---|
| Canary Labs | ? | ? |
| InfluxDB | ? | ? |
| GE Proficy | ? | ? |
| SQL Database | ? | ? |
Access Modes
| Mode | Description |
|---|
| Read | Read-only access to external data |
| Write | Write-only access (rare) |
| ReadWrite | Full bidirectional access |
See Also
- TagProvider Services — Concept overview
- TagProvider Services How-to — Step-by-step procedures
- TagProvider Services Technology — Architecture deep dive
- Connectors Library — All available protocols