# Ist OPC sicher und schnell?



## BorisDieKlinge80 (3 Juni 2008)

Hallo Leute,

es soll ein neues Konzept erarbeitet werden, dabei sollen Aufwendige Berechnungen welche bisher auf SPS ebene geamcht wurde auf eine PC ausgelagert und mit Hochsprachen programmiert werden.

Dabei soll die Schnittstelle zwischen der PC Anwendung (soll in C++ geschrieben werden) und der SPS via OPC implementiert werden. Grund hierfür , ist das man felixibel auf der SPS ebene sein kann, d.h. das evlt. mal andere SPS hardware verwendet wird?

Nun ist OPC schnell ?
Ist eine hohe Datenkonsistenz gegeben?
Gibt es evlt. gute (kostenlos /lizensfreie) c++ OPC client libraries?


----------



## Gerhard Bäurle (3 Juni 2008)

Hallo,

aktuelle OPC-Server z. B. von Siemens, *Inat* oder *Softing*
sind so schnell und sicher, wie auch direkte Anbindungen
übger Bibkiotheken. Die obere Grenze für die Übertragungsrate  
setzt in der Regel der Kommunikationsweg (z. B. seriell) oder 
die SPS (bei Kommunikation über Ethernet), weniger der PC oder
die Software dahinter. 

Für Client mal bei *hier* schauen.

*Kassl* ist ein kommerzieller Anbieter.

Über die Suchfunktion mit *OPC Client*, *OPC inat*, ... 
findest Du weitere Infos.


----------



## afk (3 Juni 2008)

BorisDieKlinge80 schrieb:


> Nun ist OPC schnell ?


Ob etwas "schnell" ist, ist immer eine relative Aussage. Ohne nähere Beschreibung der Anforderungen (Welche Steuerung ? Welche Hardware-Schnittstelle zur Datenübertragung ? Wieviel Daten ? Wild verteilt oder in fortlaufenden Adressen ? Maximale zulässige Antwortzeit ?) wird Dir hier keiner sagen können, ob das mit OPC geht. 

Grundsätzlich gilt aber das, was Gerhard schon geschrieben hat:
Solange im SPS-Programm keine speziellen Funktionen zur Kommunikation eingebaut werden, dann sind OPC-Server etwa gleich schnell wie jede andere Bibliothek, die das gleiche Kommunikationsprotokoll verwendet.



BorisDieKlinge80 schrieb:


> Ist eine hohe Datenkonsistenz gegeben?


Das hängt von der jeweiligen Implementierung ab, vor allem davon, welches Kommunikationsprotokoll der OPC zum Datenaustausch mit der SPS verwendet, und wie das Kommunikationsprotokol in der SPS implementiert ist. Blind verlassen würde ich mich darauf jedenfalls nicht.


Gruß Axel


----------



## BorisDieKlinge80 (3 Juni 2008)

ich habe bisher mit dem opc serer von wincc gearbeitet, da ist es ja möglich Rohdatenblöcke als datenschnittstelle zu verwenden.. geht das mit allen anderen servern auch? ich würde eine checksumme in berechnen und diese mit in den rohdatenblock packen, so kann ich checken ob die daten auch korrekt übertragen wurden etc..


----------



## Rainer Hönle (3 Juni 2008)

BorisDieKlinge80 schrieb:


> ich habe bisher mit dem opc serer von wincc gearbeitet, da ist es ja möglich Rohdatenblöcke als datenschnittstelle zu verwenden.. geht das mit allen anderen servern auch? ich würde eine checksumme in berechnen und diese mit in den rohdatenblock packen, so kann ich checken ob die daten auch korrekt übertragen wurden etc..


Die Übertragung der Daten ist (relativ) sicher. Da sowohl TCP eine gesicherte Übertragung darstellt als auch bei Profibus Sicherungen enthalten sind. Was nicht garantiert werden kann ist die Datenkonsistenz. Diese muss mittels entsprechenden Handshake-Verfahren selbst sichergestellt werden.


----------



## Maxl (4 Juni 2008)

Eine Möglichkeit wäre noch, sich nach einer SPS umzusehen, welche komplexe Berechnungen ohne Leistungseinbußen (und ohne gröberen Hardwareaufwand) erledigen kann. Denkbar wären Systeme wie 3S, Beckhoff, B&R usw.
Diese lassen sich i.d.R. mit Hochsprache (Structured Text) programmieren; einige (wie z.B. B&R) unterstützen auch C.

Dadurch ließe sich der Umweg über einen externen PC vermeiden, und die Diagnosemöglichkeiten der SPS stehen voll zur Verfügung.

mfg Maxl


----------

