# Codesys OPC-Server, Windows 7, IOPCDataCallback



## Rainer Wolff (20 Januar 2011)

Hallo,

ich habe meinen Rechner auf Windows 7 umgestellt und habe jetzt Probleme mit dem Codesys OPC-Server. Ich benutze eine selbstgeschriebene Delphi-Applikation und habe eine Siemens-SPS mit dem SimaticNet-OPC-Server und eine SEW-Steuerung mit Codesys.

Mit der Siemens-Verbindung habe ich keine Probleme, ich kann Items lesen, schreiben und bekomme auch den Callback bei Wertänderung.
Auf der Codesys-Verbindung kann ich lesen und schreiben, aber ich bekomme kein Callback, wenn sich ein Item ändert.
Der verwendete Quellcode ist dabei genau der selbe, es sind lediglich unterschiedliche Server- und Itemnamen im Spiel.

Mit dem OPC-Scout der SimaticNet kann ich die Codesys-Items browsen und auch der Callback ist in Ordnung, ich bekomme die Werteänderungen.

Alle anderen Testclients, die ich noch probiert habe(Softing, Rockwell), scheitern auch an der Codesys-Verbindung.

Hat jemand hier eine Idee, an welchem Rädchen zu drehen ist, um den Callback zu erhalten.

Gruß Rainer


----------



## david.ka (21 Januar 2011)

Hallo,

bist du sicher das der OPC Scout auch mit Callbacks arbeitet?

ich würde mal CodeSys selber kontaktieren, vielleicht haben die noch ein Problem damit. 
Vorher mal auf einer anderen Win7 Maschine ausprobieren.
Welche Win7 hast du im Einsatz?


----------



## Rainer Wolff (22 Januar 2011)

david.ka schrieb:


> Hallo,
> 
> bist du sicher das der OPC Scout auch mit Callbacks arbeitet?
> 
> ...



Wie das der OPC Scout macht weiss ich im Grunde auch nicht. 

Es gibt einen Button "Beobachten ein", wenn ich den aktiviere und in der Steuerung meine Werte ändere, bekomme ich die Änderung im Scout direkt mit. 
Ob der mit Callbacks arbeitet oder im Hintergrund pollt, seh ich natürlich nicht, aber ich gehe schon davon aus, dass er einen Callback verwendet. Mit meiner eigenen Software funktioniert ja auch der Callback vom Siemens OPC Server, aber halt nicht der von Codesys. 
Ich habe auch noch ein C# Demoprogramm von Siemens hier, das die Wertänderungen auch mitkriegt, aber in den Quellcode habe ich bisher nur kurz reingeschaut und nix verstanden. Wenn ich keinen schnellen Tip finde, muss ich mich wohl mal genauer damit beschäftigen.

Codesys kann ich sicher auch mal kontaktieren, obwohl ich befürchte, dass es da halt einfach heisst, ist für Win 7 nicht freigegeben.

Ich nutze Windows 7 pro.

Gruß Rainer


----------



## Dr. OPC (25 Januar 2011)

> Wie das der OPC Scout macht weiss ich im Grunde auch nicht.


Aber ich, er meldet sich auf Änderungen an und erwartet Callbacks, wie du ja auch richtig vermutest.

Da du von einem "Beobachten Ein" Button sprichst, gehe ich davon aus das es der "neue" ScoutV10 ist und nicht der "alte" Scout.
Ich frage deshalb weil der "alte" ein in VB programmierter DA2.05 Client ist und der neue ein in C# programmierter DA2.05/3.0 Client. Der neue benutzt also das DA3.0 interface (falls der es vom Server angebooten bekommt) und nur als Fallback das DA2. EDer Scout verwendetet die RCW zur COM interop und bringt die Assemblies bei der Installation mit inklusive Manifest und GAC Registrierung.

Die anderen von Dir genannten Clients sind in C++ geschrieben und greifen direkt auf das Custom Interface des OPC Servers zu.

Ich kann mir sonst nur noch ein Rechte-Problem vorstellen, in welchen Kontexten laufen die jeweiligen Server und Client Prozesse?


----------

