Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

Erfahrungen gesucht: Maschinendaten an übergeordnetes System per OPC UA übergeben
oehrle
myCSharp.de - Member



Dabei seit:
Beiträge: 399
Herkunft: Germany

Themenstarter:

Erfahrungen gesucht: Maschinendaten an übergeordnetes System per OPC UA übergeben

beantworten | zitieren | melden

Hallo, hier mal eine Anfrage zu einem Problem von mir. Ich muss von einer Steuerung Daten in ein übergeordnetes System bringen. Auf den Steuerungen läuft eine Appliaktion die in C# geschrieben ist, von mir. Nun könnte ich die Informationen an das übergeordnete System per OPC-UA Protokoll bringen. Hat jemand schon mal sowas gemacht?? Ich habe schon freie OPC-Bibliotheken gesehen. Aber in diesem Fall wäre ich ja der OPC-Server. Gibt es OPC-Simulatoren, oder hat jemand damit schon Erfahrung (taugen die was, siehe Firma Matrikon OPCSimulator)?
Wenn man einen Simulator hätte, dann wäre das ja auch schon einfacher zu entwickeln. Bin schon gespannt was geschrieben wird.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16145

beantworten | zitieren | melden

Es gibt eine OPC Foundation (http://opcfoundation.github.io/UA-.NET/), da gibts samples (oder auch hier https://github.com/open62541/open62541/wiki/List-of-Open-Source-OPC-UA-Implementations).
Ansonsten wirst Du im .NET Bereich aktuell recht wenig finden; im Maschinenbau ist halt eher C++ weit verbreitet.

OPCUA hat noch das kleine Problem, dass es nur ein Standard ist, wie Daten übertragen werden, aber nicht Inhalt oder gar Format beschreibt - also nicht was übertragen wird.
Daher findest Du hier zwischen den Maschinen und Herstellern oft gravierende Unterschiede.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers
MartinH
myCSharp.de - Member

Avatar #avatar-1761.gif


Dabei seit:
Beiträge: 183
Herkunft: Asperg

beantworten | zitieren | melden

Ich habe das Toolkit von Softing genommen.
Die Implementierung war eigendlich Problemlos, es gibt da auch einiges an Beispielen.
private Nachricht | Beiträge des Benutzers
oehrle
myCSharp.de - Member



Dabei seit:
Beiträge: 399
Herkunft: Germany

Themenstarter:

beantworten | zitieren | melden

Hallo Abt, danke für die Infos, vor allem:

Bei OPC-UA ist nur festgelegt wie die Daten übertragen werden, aber nicht der Inhalt oder das Format.

==> Das heißt, die mit dem übergeordneten System muss schon ausgemacht sein, wo die Daten stehen (Reihenfolge), wie sie typisiert sind??
Kann mir jemand sagen wie eigentlich so ein Protokoll aussieht (nur mal grob). Hatte mal mit Microcontroller Daten über die DCI-Schnittstelle (MicroChip). Da gab es ein Frame, in dem in nachfolgenden Bytes die Daten übertragen werden konnten. Der Begin vom Frame war zum Beispiel immer 0x19, darauf mußte man achten, dann die Bytes auswerten.


Bei mir ist das Problem, ich muss die Daten (Zustände der Maschine) in das übergeordnete System kriegen. Dazu müssen die Daten ja verpackt werden. Da ich aber noch keinerlei Erfahrung habe, denke ich, ein Simulator wäre nicht schlecht. Der könnte auf meinem Rechner laufen, und ich könnte die Applikation entwickeln, schauen ob die Daten am Simulator korrekt ankommen.

Jetzt habe ich noch gesehen, das bei OPC UA.NET! eine gute Beschreibung (ich denke die ist gut) und auch Demo / Simulator dabei ist.


MartinH: Die Module von Softing sind schon genau auf die spezielle Steuerung zugeschnitten, so wie ich das sehe. Kommen dann nur Daten die vom Hersteller definiert sind, oder können noch weitere zusätzliche Daten abgefragt oder übergeben werden?
private Nachricht | Beiträge des Benutzers
MartinH
myCSharp.de - Member

Avatar #avatar-1761.gif


Dabei seit:
Beiträge: 183
Herkunft: Asperg

beantworten | zitieren | melden

Was du brauchst, sind die Softing Toolkits. Damit kannst du recht einfach den Server und den Namespace aufbauen. Auch die ganze Security ist da mit drin.
Es sind auch Demo-Server und Demo-Client mit dabei, da kannst du dir den Aufbau und die Datenübergabe einfach anschauen.
Mit dem Datenprotokoll hast du da nichts zu tun. Du erzeugst ein Objekt, das die Daten bereitstellt.
Der Client sieht den Namen, den du vergibst und die Daten.
z.B. Binary-Datatype "Netzteil" mit den Zuständen "OK" und "Störung".

https://industrial.softing.com/de/produkte/software/opc-development-toolkits.html

Du kannst das ganze wie bei OPC classic aufbauen, ähnlich OPC DA und OPC AE.
Bei UA ist das ganze eine Baumstruktur mit Nodes.
private Nachricht | Beiträge des Benutzers
Gerri3d
myCSharp.de - Member



Dabei seit:
Beiträge: 59

beantworten | zitieren | melden

Hallo, das hört sich durchaus interessant an. Welche Kosten kommen da pro Lizenz auf einen ca zu?
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16145

beantworten | zitieren | melden

Wieso fragst Du nicht den Hersteller? :-)

Softing ist hier auch nur einer von vielen Herstellern.
Microsoft ist abre der größte Entwickler von OPC und OPC-UA Open Source Software und ein Teilnehmer der OPC Foundation.
https://opcfoundation.org/

Ob man hier wirklich auf proprietäre Software zugreifen will statt Open Source Software der OPC Foundation, muss dann jeder für sich selbst evaluieren.
- performance is a feature -

Microsoft MVP - @Website - @blog - @AzureStuttgart - github.com/BenjaminAbt
private Nachricht | Beiträge des Benutzers