Image Modified P1:Unified Namespace (
UNS) Module OverviewThe Unified Namespace Module Concept) is the first pillar on the Four Pillars methodology, it provides a centralized real-time data repository with hierarchical organization for all solution data.
It As the first pillar in the Four-Pillar methodology, it creates a standardized method for accessing and managing tags, assets, and external data sources
through a single, cohesive framework that serves as the foundation for all other modules.
Image Modified
UNS Module links: How-to Guide, Reference
Panel |
---|
borderWidth | 1 |
---|
borderStyle | solid |
---|
title | On this Page: |
---|
|
|
On this page:
Table of Contents |
---|
maxLevel | 2 |
---|
minLevel | 2 |
---|
indent | 10px |
---|
exclude | Steps |
---|
style | none |
---|
|
Key Concepts
Tag: Concept | Description | Example |
---|
Tag |
Process variable representing real-time and historical data |
, created locally or accessed remotely | Tank01.Level, Pump01.Status |
Asset Tree |
: | Hierarchical representation of solution data |
containing variables and DataTemplatesDataTemplate | /Plant/Area1/Line1/Equipment |
UserType (UDT) |
: User-defined including with variables and references |
to other templatesTagProvider Service: | Motor template with Speed, Current, Status |
TagProvider Services | Direct interaction with variables in remote systems |
Enumeration: OPC UA server, MQTT broker connections |
Enumeration | Named integer values |
representing discrete options or states associated messages and colors | 0=Stopped, 1=Running, 2=Fault |
Runtime Database |
: | In-memory real-time database managing UNS data | TServer.exe process |
What the UNS Does
The Unified Namespace
data during solution executionserves as your solution's data backbone:
Data Organization | System Integration |
---|
|
Creates and manages - real-time data models with tags
|
, , and enumerations- Organizes data in hierarchical Asset Tree structure
|
with folders and templates- Maintains relationships between equipment and data
- Provides intuitive navigation through process hierarchy
| - Enables dynamic connectivity to external systems
|
through TagProvider connections- Supports advanced data types including SQL
|
types, .NET entities, and complete DataTables- datasets and JSON objects
- Provides type-safe references and up to tri-dimensional arrays
|
Provides tri-dimensional dynamic arrays and type-safe reference tags- Maintains event-driven, in-memory database
|
for real-time data exchangeConfiguration Workflow
Configuration Workflow
Step | Action |
---|
Description | Define DataTemplatesTool (Designer UI) | Tools |
---|
1. Define UserTypes | Create reusable structures |
Design custom data structures for assets | | UNS → UserTypes | Template Editor |
2. Build Asset Tree | Organize hierarchy |
Create folders and organize data structure | UNS → Asset Tree | Asset Browser |
3. Create Tags | Define variables |
Add tags based on templates or basic types | UNS → Tags | Tag Editor, DataExplorer |
4. Configure Enumerations | Set discrete values |
Define state options with messages and colors | UNS → Enumerations | Enumeration Editor |
5. Add TagProvider Services |
Add TagProviders | Connect external data | UNS → TagProvider Services | TagProvider Services |
6. Map Remote Data | Link to |
OPC-UA, MQTT, databases, or historiansMap Remote Data | Link to Asset folders | Connect TagProvider data to namespace locationsAsset folders | UNS → Asset Tree | Asset Mapping |
Info |
---|
title | DataExplorer: Accelerating UNS Development |
---|
|
The DataExplorer tool streamlines UNS creation by enabling: - Discovery - Browse MQTT brokers, OPC servers, PLCs, and SQL databases
- Import - Create tags and templates directly from discovered structures
- Validate - Test connections before adding to production
Image Added
This tool reduces manual configuration time by 50-70% when building your tag structure during the Foundation phase. → Learn more in the DataExplorer How-to Guide |
Runtime Behavior
Data Loading and Management
When solution execution starts, the Unified Namespace definition loads into the in-memory real-time database (TServer.exe process). This database enables event-driven data exchange between all solution modules with millisecond precision.
Data Access Methods
Modules access Unified Namespace variables through two primary methods:
Direct Tag Access (Local Tags) | Asset Method Access: Using the Asset() function |
---|
Using tag names |
and paths- Example:
Tag.Machine1.Temperature - Supports both local tags and nested
|
template propertiesWhen connecting the tag with the field device - Use the Devices Module to map the Tag to a DevicePoint
- If the protocol has TagDiscovery, you can use the DataLink field
- In this case only the TagProvider services must be enabled
|
Asset Method Access: Using the Asset() function | - Example:
Asset("/Line1/Machine1.Temperature")
|
Required for TagProvider connections and dynamic references- Local Tags can be also use this syntax
TagProvider TagDiscovery Service - If the protocol supports TagDiscovery (OPC UA, MQTT, ..)
- Dynamic Tags can created in runtime as a Asset("path") is used.
- see more at ->
|
Aspect | Tags | TagProvider Connections |
---|
Definition | Local real-time variables within solution | Direct link to external system variables |
Creation | Created and configured locally | Defined in remote system, linked dynamically |
Data Mapping | Devices Module handles remote mapping | No local mapping required |
Access Method | TagName or AssetPath | AssetPath only via Asset() method |
Use Case | Core solution data requiring local control | Dynamic external data without local overhead |
Features Highlights
Advanced Data Types
: support for types Framework : objects- , DataTables in single tags
- Dynamic structures
: - - Tri-dimensional arrays, lists,
and - collections
- Type-safe references
: - - Dynamic tag assignments with
type Hierarchical Organization
: - - Logical grouping matching
physical - equipment
- Nested templates
: - - Composition and inheritance support
- Reusable components
: for displays, reports, calculations: - - Intuitive navigation through
process External System Integration
: - - ControlLogix, OPC-UA, MQTT SparkPlugB
- Database connectivity
: databases- , CanaryLabs, InfluxDB, OSIsoft PI
- Remote applications
: - - Other FrameworX solutions
- Dynamic browsing
: external : - - Millisecond timestamp precision
- In-memory database
: - - High-performance data access
- Publish-subscribe model
: - - Efficient module communication
- Store-and-forward
: data handling during disconnections- handling during disconnections
Common Implementation Patterns
ISA-95 Model Implementation
evel | Asset Structure | Typical Tags |
---|
Enterprise | /Company | KPIs, Financial metrics |
Site | /Company/Site1 | Production totals, Energy usage |
Area | /Company/Site1/Area1 | Area production, Quality metrics |
Line | /Company/Site1/Area1/Line1 | Line speed, Product counts |
Cell | /Company/Site1/Area1/Line1/Cell1 | Equipment status, Process values |
Naming Convention Best Practices
Code Block |
---|
title | Naming Individual Tag Names |
---|
|
Standard Format: [Area]_[Equipment]_[Component]_[Signal]
Examples:
WTP_PUMP01_MOTOR_RUNNING
WTP_PUMP01_MOTOR_SPEED_SP
WTP_TANK01_LEVEL_PV
BLDG_HVAC_AHU01_TEMP_SP
if using UDT SP is BLDG_HVAC_AHU01_TEMP.SP |
Code Block |
---|
title | Naming using Asset Folders and UDTs |
---|
|
Standard Format: [Area]/[Equipment]/[Component][Signal].[Attribute]
Examples:
WTP/PUMP01/MOTOR/RUNNING
WTP/PUMP01/MOTOR/SPEED.SP
WTP/TANK01/LEVEL.PV
BLDG/HVAC/AHU01/TEMP.SP |
Code Block |
---|
title | Naming adding a DataTemplate for Components( MOTOR, TANK) |
---|
|
Standard Format: [Area]/[Equipment]/[ComponentUDT].[Signal]
Examples:
WTP/PUMP01/MOTOR.RUNNING
WTP/PUMP01/MOTOR.SPEED.SP
WTP/TANK01/LEVEL.PV
BLDG/HVAC/AHU01.TEMP.SP |
Bulk operations: - Import/export via Excel, CSV
- Search and filter
tools: - - Quick tag location and editing
- Template
reusability: Reduce redundancy in configurationsUnified editor: Single interface for all namespace components- library - Reusable component repository
- Cross-reference - Find tag usage across modules
- Version tracking - Built-in change management
Info |
---|
- Rename any Tag , anytime - Without losing configuration integrity and runtime online updates.
- Cross-reference Tag usage - on-the-fly update, information is always instantly available
|
Next Steps
- [UNS (How-to Guide)] - Step-by-step configuration
- [UNS (Reference)] - Complete technical documentation
- [P2: Process Modules] - Connect to field devices