OPC UA mit FHEM möglich?

Begonnen von Olli7766, 24 August 2025, 19:54:12

Vorheriges Thema - Nächstes Thema

Olli7766

Ganz kurze Frage:
Gibts es im FHEM eine Möglichkeit direkt mit meinem OPC UA Server zu kommunizieren?

Wikipedia OPC UA

JoWiemann

Hallo Olli,

bisher hat noch niemand ein entsprechendes Modul entwickelt. Also, feel free und mach Dich an die Arbeit. Wenn Du im Perl Umfeld bleiben möchtest, kannst Du Dir ja mal die beiden Seiten ansehen.
https://metacpan.org/release/BLUHM/OPCUA-Open62541-0.014
https://metacpan.org/pod/OPCUA::Open62541

ioBroker hat einen Adapter:
https://forum.iobroker.net/topic/2539/opc-adapter
https://github.com/ioBroker/ioBroker.opcua

Mit ioBroker kann Fhem über den Fhem Adapter im ioBroker oder über MQTT kommunizieren.

Bin gespannt auf Deine Lösung und Deinen Anwendungszweck.

Grüße Jörg

Ach ja, die Recherchen hättest Du auch selber durchführen können.
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Olli7766

Hi Jörg,

ich dachte mir schon, dass es sowas nicht gibt. Taucht ja nix in der Doku auf.

Aktuell nutze ich bereits eine Tunnellösung um auf meinen OPC Server zu kommnen.
Der Weg ist aktuell:
Geräte <-FS20-> FHEM <-TELNET-> NodeRed <-OPC-> PLC

Ich hätte gerne den Part <-TELNET-> NodeRed raus geworfen, da NodeRed die Daten einfach nur tunnelt.
Dies ist ein unnötiger Overhead, der zudem immer wieder Fehler produziert.

Programmieren kann ich nur meine PLC. Deshalb ist diese auch mein Kopf im Smarthome.

Bei NodeRed sowie FHEM bin ich nur Anwender.

rudolfkoenig

ZitatProgrammieren kann ich nur meine PLC.
Kann die PLC nicht auch eine andere Schnittstelle beidienen, z.Bsp. S7 oder MQTT ?

Olli7766

Doch MQTT läuft wird aber nicht nativ von der Siemens unterstützt.
Zudem ist es unschön, da ich mit Strings arbeiten muss.
Ich muss jeden String parsen, zerlegen und umwandeln. Das ist in der SPS Welt aufwendig und kostest Leistung.
Zudem sind die limitierungen für Strings recht eng.
Mein BMS System hat zum Beispiel mit seinem MQTT Pusblish den Empfangspuffer der Siemens überschritten.

OPC UA ist in der Firmware der Steuerung implementiert und läuft "Out of the Box".
Zudem habe ich dann die Werte gleich dort, wo sie hingehören. In einem Datenbaustein der Steuerung.
Da habe ich keinen zusätzlichen Aufwand mehr um die Wert aufzubereiten..........
Ist halt in der Industrie Automatisierung sehr verbreitet und beliebt.

Ich werde mir das Thema MQTT aber genauer anschauen. Der Client ist schon connected. Mir ist nur noch nicht klar wie ich einzele Werte von Geräten dann als pusblish an den MQTT sende. Muss ich für jeden Wert einen eigenen Notify erstellen?
Aber ich denke dafür mache ich noch einen anderen Thread auf.

rudolfkoenig

ZitatDoch MQTT läuft wird aber nicht nativ von der Siemens unterstützt.
Wird S7 nicht von allen Siemens PLC unterstuetzt?
Wie man sieht, bin noch neu auf dem Gebiet :)

ZitatMuss ich für jeden Wert einen eigenen Notify erstellen?
Mit einem notify-regexp kann man viel zusammenfassen.
Das Regexp wird einfacher, wenn die Readings geschickt gewaehlt sind, oder z.Bsp. per userReadings vereinheitlicht werden.
Falls es immer noch zu kompliziert ist, dann wuerde ich das MQTT_GENERIC_BRIDGE Modul anschauen.