OPC UA · KNX Virtual · IEC 62541 · SCADA · 10 min di lettura

KNX OPC UA Server: Lingg & Janke KNX Virtual and SCADA Connection

OPC UA (IEC 62541) provides a vendor-neutral, secure, subscription-based integration layer between KNX building automation and enterprise SCADA, BMS, and energy management systems. KNX Virtual from Lingg & Janke exposes every KNX group address as a structured OPC UA node, with DPT-correct data types and X.509 certificate security — eliminating the polling overhead and vendor lock-in of older integration approaches.

OPC UA nell'automazione degli edifici

OPC Unified Architecture (IEC 62541) è il successore della famiglia di specifiche OPC Classic (OPC DA/HDA/AE) limitata a Windows. Mentre OPC DA utilizzava COM/DCOM ed era limitato a connessioni Windows-Windows sullo stesso segmento LAN, OPC UA è indipendente dalla piattaforma (Windows, Linux, embedded), amico dei firewall (singola porta TCP) e supporta la modellazione strutturata dei dati oltre le semplici coppie tag-valore.

Tre funzionalità di OPC UA sono particolarmente preziose per le integrazioni di automazione degli edifici: lo spazio degli indirizzi strutturato organizza i nodi KNX per gerarchia dell'edificio anziché elenchi piatti di tag; la tipizzazione dei dati mappa i DPT KNX direttamente sui tipi base OPC UA senza ridimensionamento manuale; e la consegna basata su sottoscrizione (push) significa che i client SCADA ricevono aggiornamenti dei valori solo quando i valori cambiano, non a ogni ciclo di polling.

Vantaggi di OPC UA rispetto a OPC DA

  • Indipendente dalla piattaforma: Windows, Linux, embedded
  • Nessuna configurazione DCOM – singola porta TCP (4840)
  • Autenticazione e crittografia tramite certificato X.509
  • Spazio di indirizzamento strutturato con metadati
  • Push basato su abbonamento: nessun overhead di polling

Piattaforme BMS con client OPC UA

  • Siemens Desigo CC (driver OPC UA nativo)
  • Schneider EcoStruxure Building Operation
  • Honeywell Niagara Framework (Tridium)
  • Inductive Automation Ignition SCADA
  • Siemens WinCC e TIA Portal

Architettura KNX Virtual

KNX Virtual is a software application from Lingg & Janke that runs on Windows or Linux and acts as both a KNX client and an OPC UA server. On the KNX side, it connects to the KNX installation via KNXnet/IP tunnelling (IP router or IP interface) or via a USB KNX interface attached to the server PC. On the OPC UA side, it listens on the configured TCP port and accepts connections from any OPC UA client.

Panoramica dell'architettura KNX Virtual

KNX Installation (TP bus)
        │
        ▼
KNX IP Router / IP Interface (KNXnet/IP)
        │  (UDP multicast or unicast)
        ▼
KNX Virtual (Windows/Linux server)
  ├── KNXnet/IP tunnelling client
  ├── ETS6 group address import (XML / .knxproj)
  ├── DPT → OPC UA data type mapping
  └── OPC UA server (opc.tcp://server_ip:4840)
        │
        ▼
OPC UA Clients:
  ├── Siemens Desigo CC
  ├── Schneider EcoStruxure Building Operation
  ├── Ignition SCADA (Inductive Automation)
  └── Any IEC 62541-compliant client

Nota sulla licenza:KNX Virtual is licensed per number of KNX group addresses (nodes) exposed via OPC UA. Check the Lingg & Janke pricing tiers before designing the integration — a 500-node licence covers most commercial building projects, while large campus installations with thousands of KNX objects require higher tiers. The licence is node-count-based, not client-count-based: any number of OPC UA clients can connect simultaneously.

Installazione e configurazione

La configurazione di KNX Virtual richiede quattro passaggi prima che i client OPC UA possano connettersi: connessione KNXnet/IP, importazione degli indirizzi di gruppo ETS6, configurazione dell'endpoint OPC UA e configurazione del certificato di sicurezza. Eseguirli in ordine — i client OPC UA non possono sfogliare lo spazio degli indirizzi finché gli indirizzi di gruppo non vengono importati.

Sequenza di configurazione KNX Virtual

Step 1: KNXnet/IP connection
  Settings → KNX → Connection type: KNXnet/IP tunnelling
  IP address of KNX IP router (e.g. 192.168.1.10)
  Tunnelling port: 3671 (default)
  Test: KNX bus status indicator shows green

Step 2: ETS6 group address import
  Option A: Export from ETS6 → File → Export Group Addresses
            Format: XML (OPC UA compatible) or CSV
  Option B: Import full .knxproj file directly
  Settings → Import → select exported file
  All group addresses appear in the node browser

Step 3: OPC UA endpoint configuration
  Settings → OPC UA → Endpoint URL:
  opc.tcp://192.168.1.50:4840
  Port 4840 is the IANA-assigned OPC UA default
  Change only if firewall rules require alternate port

Step 4: Security mode
  None:          No authentication, no encryption (testing only)
  Sign:          Certificate-based authentication, no encryption
  Sign+Encrypt:  Certificate authentication + TLS encryption
  Recommended for production: Sign+Encrypt

Generazione del certificato X.509: KNX Virtual genera un certificato X.509 auto-firmato al primo avvio. Per le modalità di sicurezza Sign o Sign+Encrypt, il client BMS deve fidarsi di questo certificato — esportare il certificato del server KNX Virtual e importarlo nel trust store del client BMS. Analogamente, importare il certificato del client BMS nell'elenco dei client fidati di KNX Virtual. Alcuni client (Ignition) gestiscono automaticamente lo scambio di certificati alla prima connessione; Desigo CC richiede l'importazione manuale del certificato.

Struttura dello spazio degli indirizzi OPC UA

KNX Virtual organizza gli indirizzi di gruppo importati nello spazio degli indirizzi OPC UA utilizzando la gerarchia degli indirizzi di gruppo ETS6: il Gruppo principale diventa una cartella OPC UA, il Sottogruppo diventa un oggetto OPC UA e i singoli indirizzi di gruppo diventano nodi variabile OPC UA con tipi di dati derivati dal DPT. Ciò rispecchia la struttura ETS6 familiare agli ingegneri KNX e rende intuitiva la navigazione dell'albero dei nodi OPC UA per gli ingegneri BMS che hanno accesso al piano degli indirizzi di gruppo ETS6.

Elemento KNXMappatura OPC UAEsempio
Gruppo principale (0–31)Nodo cartella OPC UACartella: Illuminazione
Sottogruppo (0–7)Nodo oggetto OPC UAOggetto: Piano 01
Indirizzo di gruppo (0–255)Nodo variabile OPC UAVariabile: Dimmerazione Ufficio 101
DPT 1.001 (Booleano)OPC UA Booleanotrue / false
DPT 5.001 (Percentuale)OPC UA Byte (0–255) o Float0.0 – 100.0
DPT 9.001 (Temperatura)OPC UA Float-273.0 – 670760.96
DPT 12.001 (uint a 4 byte)OPC UA UInt320 – 4294967295
DPT 16.001 (Stringa 14 caratteri)OPC UA StringTesto ASCII

Client OPC UA Siemens Desigo CC

Desigo CC include un driver client OPC UA nativo che esplora lo spazio degli indirizzi KNX Virtual e integra i nodi KNX nella gerarchia degli asset di Desigo CC. A differenza del driver BACnet/IP, OPC UA non richiede licenze per punto per segnale in tutte le configurazioni Desigo CC – verificare con il preventivo di licenza Siemens per il progetto specifico.

Passaggi di integrazione OPC UA di Desigo CC

1. Desigo CC Workstation
   → System Management → Network → Add OPC UA server
   → Endpoint URL: opc.tcp://192.168.1.50:4840
   → Security: Sign+Encrypt (recommended)

2. Certificate exchange:
   → Export KNX Virtual server certificate
   → Import into Desigo CC OPC UA trusted servers
   → Export Desigo CC client certificate
   → Import into KNX Virtual trusted clients list
   → Connection status: Connected (green)

3. Browse and import KNX nodes:
   → Expand node tree: Root → KNX → Main Group → Sub Group
   → Drag variable nodes to Desigo CC Floor Plan asset structure
   → Assign display names matching CAFM room numbering

4. Bind to Desigo CC functions:
   → Alarms: right-click Boolean variable → Create Alarm
   → Trends: right-click Float variable → Create Trend Log
   → Graphics: drag data point to Desigo CC graphic template

Schneider EcoStruxure Building Operation

Schneider EcoStruxure Building Operation (EBO) include un client OPC UA come driver standard nei server di automazione SmartX AS-P e AS-B. EBO comprende nativamente i tipi di dati dell'automazione degli edifici e mappa i nodi OPC UA Float su punti dati analogici EBO e i nodi OPC UA Boolean su punti dati binari EBO senza richiedere configurazione manuale di scalatura.

Passaggi di binding EBO OPC UA

  • EBO WorkStation → Driver OPC UA → Aggiungi server
  • Inserisci URL endpoint KNX Virtual
  • Naviga nell'albero dei nodi verso gli indirizzi di gruppo KNX
  • Associa i nodi ai punti dati EBO (analogici/binari)
  • Collega a grafici, allarmi e schedulazioni EBO

Supporto nativo DPT in EBO

EBO applica automaticamente le etichette delle unità (°C, %, lux, kWh) in base alla proprietà EngineeringUnits del nodo OPC UA. KNX Virtual popola EngineeringUnits dalla definizione DPT di ETS6 — i nodi di temperatura appaiono con unità °C, l'energia con kWh, senza configurazione manuale in EBO.

Integrazione SCADA: Ignition e WinCC

Le piattaforme SCADA industriali fungono sempre più da livello dati per i sistemi di gestione dell'energia (EnMS) ISO 50001 negli edifici commerciali. I dati dei contatori energetici KNX — richiesta di potenza della zona, consumo energetico, fattore di potenza — sono richiesti per gli indicatori chiave di prestazione (KPI) dell'EnMS e gli indicatori di prestazione energetica (EnPI) della sezione 6.6 della ISO 50001.

Ignition SCADA OPC UA → monitoraggio energetico KNX

Ignition Designer → OPC Connections → Add OPC UA server
  Server URL: opc.tcp://192.168.1.50:4840
  Security: Sign+Encrypt
  Certificate: accept KNX Virtual cert (Ignition auto-trusts)

Tag Browser → OPC → Browse KNX Virtual nodes:
  Root/KNX/Energy/FloorB1/Zone01_kWh → drag to Tag Editor
  Tag name: FloorB1_Zone01_Energy
  Data type: Float (from DPT 12.001 / OPC UA UInt32)
  Deadband: 0.01 kWh

Historian configuration (for ISO 50001 trending):
  Tag history → Sample mode: On Change
  Storage provider: Ignition Historian (TimescaleDB)
  Max age: 5 years (ISO 50001 baseline requirement)

EnMS dashboard (Ignition Perspective):
  Zone kWh bar chart (monthly, year-over-year)
  Peak demand (kW) time-series per zone
  Energy intensity: kWh per m² per month
  Export to Excel: Ignition Report Module → XLSX

Siemens WinCC OPC UA

WinCC V7.5 e successivi includono nativamente la connettività client OPC UA. Aggiungere KNX Virtual come server OPC UA nel canale OPC UA di WinCC, sfogliare i nodi energetici KNX e associarli ai tag WinCC per la registrazione di trend e allarmi. WinCC TIA Portal V16+ supporta anche connessioni OPC UA direttamente dal livello HMI/SCADA.

InduSoft Web Studio

AVEVA InduSoft Web Studio (ora AVEVA Edge) include un driver client OPC UA. Connettiti a KNX Virtual utilizzando lo stesso URL dell'endpoint e la stessa procedura di trust del certificato. InduSoft supporta le sottoscrizioni OPC UA con deadband configurabile — configura un deadband di 0,01 kWh per i totali energetici per evitare scritture eccessive nel database.

Sottoscrizione vs polling: efficienza di rete

Il vantaggio fondamentale delle sottoscrizioni OPC UA rispetto al polling Modbus o al BACnet COV sono gli intervalli di pubblicazione e i deadband configurabili a livello di sottoscrizione, indipendentemente dalla velocità di scansione KNX sottostante. Un sistema SCADA con 2.000 nodi KNX può sottoscrivere tutti i nodi con un intervallo di pubblicazione di 500 ms — ma riceve pacchetti di rete solo per i nodi che sono effettivamente cambiati oltre il loro deadband.

Configurazione della sottoscrizione OPC UA

Subscription parameters (configured in OPC UA client):
  Publishing interval:    500ms (minimum update rate)
  Lifetime count:         1200 (600 seconds before timeout)
  Max keep-alive count:   20   (10 seconds between heartbeats)
  Max notifications:      0    (unlimited per publish cycle)

Monitored item parameters (per node):
  Sampling interval:  500ms (same as publishing interval)
  Queue size:         1 (latest value only)
  Discard oldest:     true

Deadband configuration (prevents unnecessary publishes):
  Temperature nodes:      Absolute ±0.1°C
  Energy total (kWh):     Absolute ±1 kWh
  Power demand (kW):      Absolute ±0.05 kW
  Lighting dimmer (%):    Absolute ±0.5%
  Binary (on/off):        No deadband (always publish changes)

Network impact example:
  2,000 KNX nodes, 500ms publishing interval, 90% static:
  Without deadband: 4,000 OPC UA publish messages/second
  With deadband:    ~200 messages/second (only changed values)
  Network load reduction: 95%

Più client, un server: OPC UA supporta più sottoscrizioni client simultanee allo stesso server. Desigo CC, Ignition SCADA e un dashboard di gestione energetica possono tutti sottoscrivere contemporaneamente i nodi energetici KNX. KNX Virtual mantiene uno stato di sottoscrizione separato per ogni client — intervalli di pubblicazione, deadband e set di nodi monitorati sono indipendenti per client. Il bus KNX viene interrogato una sola volta indipendentemente da quanti client OPC UA sono sottoscritti.

Hai bisogno di integrazione KNX OPC UA per il tuo progetto SCADA o BMS?

Progettiamo quadri KNX con integrazione server OPC UA preconfigurata — importazione indirizzi di gruppo, configurazione certificati e albero dei nodi verificato rispetto alla struttura dei tag SCADA prima della consegna.

Richiedi un preventivo →
Caricamento in corso ...
Torna all'inizio