Zum Hauptinhalt springen
Version: 5.3

OPC-Datentransfer via BatchRead alle 30 Sekunden

tipp

In diesem Datentransfertest haben wir in einer OPC Router-Instanz 640.000 OPC Datenpunkte angebunden und alle 30 Sekunden an MQTT und InfluxDB übertragen. Die durchschnittliche Datenübertragungsrate lag dabei bei 21.209 Datenpunkten pro Sekunde.

Systeme

OS: Windows Server 2019 Standard 1809
RAM: 16GB
Prozessor: 64bit 2,6GHz (4 Kerne)
OPC Router: 5.3.5007.156

OS: Windows Server 2019 Standard 1809
RAM: 12GB
Prozessor: 64bit 2,6GHz (4 Kerne)
KEPServerEx: V6.16.203.0

OS: Windows 10 Pro N 22H2
RAM: 12GB
Prozessor: 64bit 2,6GHz (4 Kerne)
KEPServerEx: V6.16.203.0

Projekte

Zwei KEPServerEx-Projekte

  • mit jeweils einem Kanal (Simulator)
  • mit jeweils einem Gerät (16 Bit Device)
  • mit jeweils 20 Tag-Gruppen
  • mit jeweils 100 Unter-Tag-Gruppen
  • mit jeweils 200 Tags

OPC Router-Projekte

Für die beiden Testfälle wurden zwei Projekte mit gleichem Aufbau, aber unter schiedlicher Verbindungs- und somit Datenpunktanzahl erstellt. Beschreibung des einfachen Projektes:

  • Vier OPC-UA-Client-Anbindungen (Jeweils 2 Plug-ins je KEPServerEx)
  • Jedes Plug-in wird in jeweils 400 Template-Instanzen für jeweils ein „Batch Read”-Transferobjekt verwendet
  • Jedes „Batch Read”-Transferobjekt fragt alle 30 Sekunden 200 Tags ab und schreibt diese nach MQTT und Influx-DB

Zusammengefasst: Im Testfall 1 wurden alle 30 Sekunden 320.000 Tags gelesen und an MQTT sowie Influx übergeben.

Testfall 2: Hierin werden statt 400 Template-Instanzen pro Plugin 800 Template-Instanzen betrieben. Hierdurch sollen alle 30s s 640.000 Tags abgefragt werden.

Aufbau der Template-Instanzen (Verbindungen)

OPC-UA-Client-Anbindung

Abweichungen vom Default:

  • Quickstart – Timeout (ms): 240000
  • Sicherheit – Server Application Uri validieren: true
  • Subscription – OPC-Tags beim Start registrieren: true
  • Erweitert – Timeout (ms): 240000
  • Erweitert – Maximale Datenpunktanzahl je Abfrage aktivieren: true
  • Erweitert – Maximale Datenpunktanzahl je Abfrage: 2500
  • Erweitert – Max Items per Subscription Softlimit: 1500
  • Erweitert – OPC-Lesemodus: Asynchron

Auswertung

Testfall 1

Es wurden auf vier Plug-ins verteilt alle 30s 320.000 Datenpunkte gelesen und nach MQTT und InfluxDB geschrieben. Nach 30min Lauftzeit wurde geprüft, wie viele Daten in die InfluxDB geschrieben worden sind.

Bei 640.000 Datensätzen/Minute wurden in unserem Test 100% der Daten übertragen

Testfall 2

Es wurden auf vier Plug-ins verteilt alle 30s 640.000 Datenpunkte gelesen und nach MQTT und InfluxDB geschrieben. Nach 30min Laufzeit wird geprüft, wie viele Daten in die InfluxDB geschrieben worden sind.

Bei 1.280.000 Datensätzen/Minute wurden in unserem Test mehr als 99% der Daten übertragen

Projektdateien

Testfall 1

Testfall 2

Download KEPServer Ex – Benchmark Batch Read Server 1.opf

Download KEPServer Ex – Benchmark Batch Read Server 2.opf