# Mit C# auf OPC zugreifen



## Bensen83 (24 September 2010)

Hallo, ich habe eine s7 317 2Dp, welche eine Visualisierung über WinCC Flexible 2007 auf einem Rechner laufen hat. Das WinCC Flexible dient als OPC Server. Kann mir jemand sagen, wie ich nun mit Visual C# auf den OPC Server zugreifen kann? Danke schon mal.


----------



## gergap (25 September 2010)

Hallo Bensen83,

mit C# oder allgemein .Net auf COM basiertes OPC zuzugreifen ist nicht unbedingt einfach. Man benötigt zumindest die RCWs (Runtim Callable Wrappers) und sollte auch Ahnung von .Net-COM-Interop haben.

Mein Tipp: Verwende ClientAce, eine fertiges .Net Toolkit von Kepware (http://www.kepware.com/Products/OPC_ClientAce.asp).
Damit kann man per Drag&Drop OPC Variablen mit .Net Controls wie Text-Boxen verbinden.
Zusätzlich bietet es auch noch eine einfach zu bedienende API für den programmtechnischen Zugriff auf OPC Variablen.

Noch eine Variante wäre direkt auf OPC UA umzusteigen. Für OPC UA gibt es eine .Net API von der OPC Foundation. Mittels OPC UA/DA Wrapper (gibts auch bei der OPC Foundation) kann man als OPC UA Client auch auf die Altwelt OPC-DA, wie z.b. WinCC Flexible zugreifen.
Der Wrapper ist auch in .Net implementiert. Es gibt aber auch native Lösungen z.B. von Unified Automation GmbH (bessere Performance).
Wenn du vor hast ein Produkt zu entwickeln wäre das die zukunftssichere Variante.

mfg,
gergap


----------



## david.ka (25 September 2010)

hallo,

vielleicht hilft dir das :
http://www.codeproject.com/KB/COM/opcdotnet.aspx

Grüße
David


----------

