Applikation zur Kommunikation
OPC-Kommunikation über das SEND/RECEIVE-Protokoll mit einem Visual Basic .NET OPC-Client
Einführung
Gewährleistung, Haftung und Support
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 2/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Gewährleistung, Haftung und Support
Für die in diesem Dokument enthaltenen Informationen übernehmen wir keine Gewähr.
Unsere Haftung, gleich aus welchem Rechtsgrund, für durch die Verwen-dung der in diesem Dokument beschriebenen Beispiele, Hinweise, Pro-gramme, Projektierungs- und Leistungsdaten usw. verursachte Schäden ist ausgeschlossen, soweit nicht z.B. nach dem Produkthaftungsgesetz in Fäl-len des Vorsatzes, der grober Fahrlässigkeit, wegen der Verletzung des Lebens, des Körpers oder der Gesundheit, wegen einer Übernahme der Garantie für die Beschaffenheit einer Sache, wegen des arglistigen Ver-schweigens eines Mangels oder wegen Verletzung wesentlicher Vertrags-pflichten zwingend gehaftet wird. Der Schadensersatz wegen Verletzung wesentlicher Vertragspflichten ist jedoch auf den vertragstypischen, vorher-sehbaren Schaden begrenzt, soweit nicht Vorsatz oder grobe Fahrlässig-keit vorliegt oder wegen der Verletzung des Lebens, des Körpers oder der Gesundheit zwingend gehaftet wird. Eine Änderung der Beweislast zu Ih-rem Nachteil ist hiermit nicht verbunden.
Die Applikationsbeispiele sind unverbindlich und erheben keinen Anspruch auf Vollständigkeit hinsichtlich Konfiguration und Ausstattung sowie jegli-cher Eventualitäten. Sie stellen keine kundenspezifische Lösungen dar, sondern sollen lediglich Hilfestellung bieten bei typischen Aufgaben-stellungen. Sie sind für den sachgemäßen Betrieb der beschrieben Produk-te selbst verantwortlich. Diese Applikationsbeispiele entheben Sie nicht der Verpflichtung zu sicherem Umgang bei Anwendung, Installation, Betrieb und Wartung. Durch Nutzung dieses Applikationsbeispiels erkennen Sie an, dass Siemens über die oben beschriebene Haftungsregelung hinaus nicht für etwaige Schäden haftbar gemacht werden kann. Wir behalten uns das Recht vor, Änderungen an diesem Applikationsbeispiel jederzeit ohne Ankündigung durchzuführen. Bei Abweichungen zwischen den Vorschlä-gen in diesem Applikationsbeispiel und anderen Siemens Publikationen, wie z.B. Katalogen, hat der Inhalt der anderen Dokumentation Vorrang.
Copyright© 2005 Siemens A&D. Weitergabe oder Vervielfältigung die-ser Applikationsbeispiele oder Auszüge daraus sind nicht gestattet, soweit nicht ausdrücklich von Siemens A&D zugestanden. Bei Fragen zu diesem Beitrag wenden Sie sich bitte über folgende E-Mail-Adresse an uns:
mailto:[email protected]
Vorwort
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 3/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Vorwort
Ziel der Applikation Diese Beispielapplikation behandelt den Einsatz des SEND/RECEIVE-Protokolls mit dem SIMATIC NET OPC-Server. Dabei erfolgt die Kom-munikation des OPC-Servers mit der Steuerung über die Block- und Vari-ablendienste des SEND/RECEIVE -Protokolls.
Es wird demonstriert, wie ein auf individuelle Bedürfnisse zugeschnittener OPC-Client in der Programmiersprache Visual Basic .NET programmiert wird. Auch wird die Projektierung der PC-Station zur Verwendung des SI-MATIC NET OPC-Servers mit dem SEND/RECEIVE-Protokoll und Industri-al Ethernet erläutert. Damit können strukturierte Daten über die OPC-Schnittstelle übertragen werden.
Kerninhalte dieser Applikation Folgende Kernpunkte werden in dieser Applikation behandelt:
• Programmtechnischer Umgang mit den Kommunikationsdiensten des SEND/RECEIVE-Protokolls:
– Blockdienste (AG_SEND / AG_RECEIVE)
– Variablen-Dienste (FETCH / WRITE)
um größere Datenmengen zwischen PC und gemischten Automatisie-rungssystemen (z.B. SIMATIC S5 und SIMATICT S7) austauschen zu können.
• Projektierung des SEND/RECEIVE-Protokolls bei Verwendung von In-dustrial Ethernet
• Erstellung eines OPC-Clients mit graphischer Oberfläche
• Demonstration des Umgangs mit der Data Access Schnittstelle des OPC-Servers über das Custom Interface und Einbindung in das .NET-Framework mit dem OPC DA RC-Wrapper
• Aufzeigen des Vorgehens zur Implementierung eines aufgesetzten Quittierungsmechanismus (aufgesetztes Ebene 7-Protokoll)
Vorwort
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 4/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Aufbau des Dokuments Die Dokumentation der vorliegenden Applikation ist in drei Dokumente ge-gliedert:
• Einführung
• Erweiterung
• Demonstration Zusätzlich ist der STEP7-Code und der Visual Basic .NET-Code verfügbar.
Das erste, vorliegende Dokument, die Einführung, ist für Personen ge-dacht, die sich einen schnellen Überblick verschaffen wollen.
Teil Beschreibung Einführung Applikationsbeschreibung und Funktionsprinzipien
Hier erfahren Sie alles, um sich einen Überblick zu verschaffen. Sie lernen die verwendeten Kompo-nenten (Standard Hard- und Softwarekomponen-ten, sowie die eigens erstellte Anwender Software) kennen.
Erweiterung Funktionsprinzipien im Detail und Programm-strukturen
Hier wird auf die detaillierten Funktionsabläufe der beteiligten Hard- und Softwarekomponenten, die Lösungsstrukturen und wo sinnvoll auf die konkrete Implementierung dieser Applikation eingegangen. Sie benötigen diesen Teil, wenn Sie das Zusam-menspiel der Lösungskomponenten kennen lernen wollen, um diese z.B. als Basis für eigene Entwick-lungen zu verwenden.
Demonstration Aufbau, Projektierung und Bedienung der Applikation
Dieser Teil führt Sie Schritt für Schritt durch den Aufbau, wichtige Projektierungsschritte, Inbetrieb-nahme und Bedienung der Applikation.
Als weitere Komponente ist noch der S7-Programmcode verfügbar.
Teil Beschreibung
S7-Programmcode Der S7-Programmcode beinhaltet den Code und eine Bedienoberfläche, die auch als Vorführsystem geeignet ist.
Visual Basic .NET Code Beinhaltet die Programmdateien des OPC-Clients und das Visual Studio .NET Projekt.
Referenz zum Automation and Drives Service & Support Dieser Beitrag stammt aus dem Internet Applikationsportal des Automation and Drives Service & Support. Durch den folgenden Link gelangen Sie di-rekt zur Downloadseite dieses Dokuments.
http://support.automation.siemens.com/WW/view/de/21523291
Vorwort
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 5/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Inhaltsverzeichnis
Inhaltsverzeichnis......................................................................................................... 5
Applikationsbeschreibung........................................................................................... 6
1 Automatisierungsaufgabe ............................................................................. 6 1.1 Übersicht........................................................................................................... 6 1.2 Anforderungen .................................................................................................. 7
2 Automatisierungslösung ............................................................................... 8 2.1 Übersicht zur Gesamtlösung ............................................................................ 8 2.2 Beschreibung der Kernfunktionalität............................................................... 10 2.3 Benötigte Hard- und Software-Komponenten................................................. 15 2.4 Leistungseckdaten.......................................................................................... 17
Anhang und Literaturhinweise .................................................................................. 21
3 Glossar .......................................................................................................... 21
4 Literaturhinweise .......................................................................................... 23 4.1 Literaturangaben............................................................................................. 23 4.2 Internet-Link-Angaben .................................................................................... 23
ApplikationsbeschreibungAutomatisierungsaufgabe
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 6/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Applikationsbeschreibung
Inhalt Hier verschaffen Sie sich einen Überblick über die hier behandelte Automa-tisierungsaufgabe und ihre Lösung. Sie lernen die verwendeten Komponen-ten (Standard Hard- und Softwarekomponenten sowie die eigens erstellte Anwender Software) kennen.
Die dargestellten Leistungseckdaten zeigen die Leistungsfähigkeit der vor-liegenden Applikation.
1 Automatisierungsaufgabe
Hier erfahren Sie… welche Automatisierungsaufgabe in der vorliegenden Dokumentation the-matisiert wird.
1.1 Übersicht
Einführung/Einleitung Diese Applikation soll die Übertragung von größeren Datenmengen zwi-schen den heterogenen Partnern PC und Automatisierungssystem verdeut-lichen.
Überblick über die Automatisierungsaufgabe Folgendes Bild gibt einen Überblick über die Automatisierungsaufgabe. Abbildung 1-1
ApplikationsbeschreibungAutomatisierungsaufgabe
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 7/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Beschreibung der Automatisierungsaufgabe Durch Betätigung von Elementen auf der Bedienoberfläche wird das Steue-rungsprogramm auf der S7-CPU in seinem Verhalten beeinflusst.
So werden in der Steuerung Informationen (z.B. Istwerte, Aggregatszu-stände, etc.) erzeugt, die auf Visualisierungselementen der Bedienoberflä-che dargestellt werden. Anderseits wird es ermöglicht größere Datenmen-gen in die Steuerung zu schreiben.
Demonstriert wird das Prinzip an einer S7-CPU mit der blockorientierten und variablenorientierten Schnittstelle.
1.2 Anforderungen
Anforderungen an das Anwenderprogramm Das Anwenderprogramm soll zeigen wie
• der SIMATIC NET OPC-Server mittels Programmierung in Visual Basic .NET angesprochen werden kann um einzelne Variablen und Vari-ablenblöcke zu lesen oder zu schreiben.
• über den SIMATIC NET OPC-Server verschiedene Kommunikationsar-ten (blockorientiert, variablenorientiert) parallel benutzt werden können.
• blockorientiert und variablenorientiert Prozessdaten gelesen und ge-schrieben werden können.
• über eine einfache graphische Oberfläche projektierte Variabeln aufge-listet und angezeigt werden. Hierbei soll
– die S7 PC-Richtung nur angezeigt werden.
– in beide Richtungen gesendet werden.
• Mit Block- und Variablendiensten ein Ebene 7-Qutittungsmechanismus implementiert werden kann.
Sonstige Anforderungen • Anforderungen an die Entwicklungs-Sprache und Umgebung:
– Einsatz von Microsoft Visual Studio .NET.
– Einsatz der Programmiersprache Visual Basic .NET.
• Sonstige Anforderungen an die Anwendung:
– Zeitmessung für die blockorientierte Übertragung.
• Anforderungen bzgl. der Ankopplung an den Prozess
– Anbindung an die Prozessdaten über Industrial Ethernet sowie den SIMATIC NET OPC-Server V6.2.
– Nutzung des OPC-Data Access- Custom-Interfaces V2.05 mittels Runtime Callable Wrapper (RCW).
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 8/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
2 Automatisierungslösung
Hier erfahren Sie… welche Lösung für die Automatisierungsaufgabe gewählt wurde, welche Komponenten verwendet werden und welche Aufgaben die einzelnen Komponenten übernehmen.
2.1 Übersicht zur Gesamtlösung
Schema Die folgende Abbildung zeigt schematisch die wichtigsten Komponenten der Lösung: Abbildung 2-1
Beschreibung Aufbau Ein PG/PC wird über einen Hub an eine S7-300 Steuerung angeschlossen. Dabei wird eine CP 1613-Netzwerkkarte benutzt. Auf der Steuerungsseite befindet sich eine SIMATIC S7-300 mit dem CP 343-1 sowie einer CPU 315-2DP.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 9/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Beteiligte Softwarekomponenten Folgendes Bild zeigt die beteiligten Softwarekomponenten ( kennzeich-net die in dieser Applikation erstellte Softwarekomponente): Abbildung 2-2
Anwenderprogramm im PC/ PG Das Anwenderprogramm im PC/PG stellt folgende Elemente zur Verfü-gung:
• Eine einfache graphische Benutzeroberfläche zur Steuerung des Bei-spiels. Hierbei werden die Variablen der S7-Programmes angezeigt und es wird ein Verbinden und Trennen des Servers ermöglicht.
• Einige Variablen für die B&B (Bedienen und Beobachten) Funktionen über die Send / Receive Variablendienste (FETCH / WRITE) lesen und schreiben können.
• Eine Möglichkeit zur Verfügung, um große Datenmengen über die Blockorientierten SR-Dienste
– von der CPU in Datenstrukturen auf dem PC zu schreiben. Eine weitere Speicherung der Daten ist hier nicht Kernfokus.
– vom PC in Datenbausteine (DB) auf der CPU zu schreiben (z.B. Rezeptdaten).
• Für beide Fälle eine Ebene 7 Quittung zur Flusssteuerung.
Anwenderprogramm in der S7-CPU Das STEP 7 Programm in der S7-CPU
• simuliert die Werte, die vom PC empfangen werden sollen.
• strukturiert die Einzelvariablen zu performanten Strukturen, die dann auf die OPC-Items abgebildet werden können und stößt die entspre-chenden SR-Bausteinaufrufe an (nur für blockorientierte Übertragung notwendig).
• generiert die nötigen Telegrammstrukturen für die bidirektionale Über-tragung großer Datenmengen.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 10/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
2.2 Beschreibung der Kernfunktionalität
Kernfocus der Applikation Der Focus dieser Applikation liegt steuerungsseitig auf der Verwendung verschiedener Verbindungen für das Lesen und Schreiben von Prozessva-riablen. Dies können einzelne Variablen und ganze Datenblöcke sein. Da-für wird das SEND/RECEIVE-Protokoll (S5-kompatible Kommunikation) eingesetzt. Somit wird eine Nutzung mit heterogenen Automatisierungssys-temen ermöglicht.
Der PC-seitige Zugriff auf die Prozessvariablen erfolgt über OPC-Items. Über die OPC-Items wird festgelegt, welcher Dienst für den Datenaus-tausch genutzt wird. Es können folgende Dienste genutzt werden:
• Lesen einzelner Variablen über den Variablendienst FETCH
• Schreiben einzelner Variablen über den Variablendienst WRITE
• Lesen von Datenblöcken über den Blockdienst RECEIVE
• Schreiben von Datenblöcken über den Blockdienst SEND
Aus diesem Grund ist die Oberfläche der Anwendung in folgende wesentli-che Bereiche unterteilt, die im nächsten Abschnitt beschrieben werden.
Übersicht der Oberfläche Abbildung 2-3:
1
2
3
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 11/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Beschreibung der Oberfläche Tabelle 2-1
Nr. Beschreibung Bild 1 Verbindung (Connection)
• Verbindungsauf- und -abbau zum lokal installierten OPC SIMATIC NET Server.
• Update-Rate (Aktualisierungsrate) ein-stellen
Hinweis: Das Einstellen der Aktualisierungsrate ist nur möglich, bevor eine Verbindung zum Server aufgebaut wurde.
2 Variablen (Variables) • Lesen mit Variablendiensten (FETCH) • Schreiben mit Variablendiensten (WRI-
TE) Hinweis: Mit der Auftragsart FETCH ist ein direkter Zugriff auf Objekte wie Eingänge, Ausgän-ge, Datenbausteine, Merker und Zähler möglich. Die FETCH- bzw. WRITE-Aufträge erfolgen über einen asynchronen Read bzw. syn-chronen Write.
3 Block • Lesen mit Blockdiensten (RECEIVE) • Schreiben mit Blockdiensten (SEND) Hinweis: Es können nur gültige Daten eingetragen werden. Die beiden Buttons („PC S7“ und „S7 PC“) sind für die Dauer der jeweiligen Ope-ration deaktiviert.
4 Sprachumschaltung
• Rechtsklick auf Dialogoberfläche er-möglicht die Sprachauswahl „Deutsch“ oder „Englisch“
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 12/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Variablendiente - Lesen und Schreiben einzelner Variablen Die Oberfläche bietet die Möglichkeit drei Variablen Werte zu lesen und zu schreiben. Dabei gilt:
• Jede dieser drei Variablen wird für die zwei unterschiedlichen Verbin-dungen FETCH und WRITE in einer OPC-Gruppe passiv angelegt.
• Über den Button „Fetch“ und den Button „Write“ wird ein asynchroner Read bzw. synchroner Write mit den entsprechenden Items ausgeführt.
Blockdienste - Lesen und Schreiben eines Datenblocks Folgende Punkte betreffen die Blockdienste:
Datenfluss PC S7 Abbildung 2-4
Tabelle 2-2
Nr. Beschreibung 1 Im PC wird über die Oberfläche ein zu sendendes Datum eingetragen und
leicht modifiziert zu einem Array mit einem Telegrammkopf an die S7 ge-sendet.
2 Die S7-CPU empfängt die Daten, durch ständiges Abfragen (Pollen) einer Variablen.
3 Die S7-CPU speichert die empfangenen Daten in einem DB. 4 Die S7 sendet Quittung an PC. 5 PC empfängt das Quittungstelegramm der S7 durch Polling einer Variab-
len.
Hinweis Die Oberfläche verriegelt den „PC S7“ - Button, solange der Auftrag läuft.
Hinweis Der OPC-Client darf gleichzeitig ein FETCH oder WRITE absetzen.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 13/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Datenfluss S7 PC Abbildung 2-5
Tabelle 2-3
Nr. Beschreibung 1 Der PC stößt in der S7 mit einer passiven und synchronen WRITE-
Variablen das Senden der S7-CPU an. 2 Die S7 generiert ein Telegramm aus Kopf- und Nutzdaten. 3 Das Telegramm wird an den PC gesendet. 4 Im PC wartet das Programm auf eine Variable durch Polling, sobald die
Daten empfangen wurden, werden sie entpackt und angezeigt. 5 Es wird eine Empfangsquittung an die S7 über eine eigene Verbindung
geschickt.
Hinweis Die Oberfläche verriegelt den „S7 PC“ - Button, solange der Auftrag läuft.
Hinweis Der OPC-Client darf gleichzeitig ein FETCH oder WRITE absetzen.
Messen der Zeitdauer Es wird immer die Zeitdauer gemessen, die eine Datenübertragung inklusi-ve Quittierung benötigt. Diese Zeitdauer wird in der entsprechenden Vari-ablen hinterlegt und angezeigt. Dabei wird nur bei Send / Receive gemes-sen. Es wird ein Mittelwert über die Zeitdauer der jeweiligen Übertragung errechnet und angezeigt. Hiermit ist eine Leistungsabschätzung möglich.
Hinweis Die erste Übertragung wird nicht mit berücksichtigt, da diese im Vergleich zu allen anderen Übertragungen überdurchschnittlich lange benötigt und so zu einer Verfälschung des Messergebnisses führen würde.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 14/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Implementierung Die Implementierung von OPC-Clients unter .NET unterscheidet sich kaum von der Implementierung unter C++, da weiterhin die COM - Mechanismen beachtet werden müssen.
Jedoch ist die Implementierung einer .NET - Oberfläche deutlich schneller zu bewerkstelligen als eine vergleichbare Implementierung mit C++.
Operationen auf Bitebene wie sie z.B. bei dem Entpacken von Receive-Variablen durchzuführen sind, sind mit C++ oder C# einfacher. Aus diesem Grund wird in dieser Applikation eine Konvertierungsbibliothek (Conv.dll) benutzt. Diese stellt die Funktionen für die Bitoperationen in C# zur Verfü-gung.
Fehlerhandling Den markantesten Unterschied zwischen .NET und C++ stellt das Fehler-handling dar.
Anstatt wie üblich „HRESULT“, also COM - Rückgabewerte abzufragen, wird ein Exception-Handling realisiert.
Vorteile des Fehlerhandlings Dies hat, in Verbindung mit der automatisierten „Garbage Collection“, fol-gende Vorteile:
• Es wird kein Fehler mehr übersehen
• Einfacher lesbarer Code
• Einheitliches Fehlerhandling innerhalb des OPC-Clients
• Möglichkeit der Einführung von Fehlerhierarchien durch Implementie-rung eigener Exception-Klassen
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 15/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
2.3 Benötigte Hard- und Software-Komponenten
Hardware-Komponenten, S7 Seite Tabelle 2-4
Komponente Anz. MLFB/Bestellnummer Hinweis PS307 5A 1 6ES7 307-1EA00-0AA0 CPU 315-2DP 1 6ES7 315-2AG10-0AB0 MMC-Karte erfor-
derlich CP 343-1 1 6GK7 343-1EX20-0XE0 Handelsüblicher Hub 1 Abhängig vom Produkt
Hardware-Komponenten, PC Seite Tabelle 2-5
Komponente Anz. MLFB/Bestellnummer Hinweis Power PG 1 6ES7 751-0BA21-0LB3 Incl. STEP 7
Oder anderer Industrie PC
Netzwerkkarte CP 1613 1 6GK1161-3AA01
Standard Software-Komponenten Tabelle 2-6
Komponente Anz. MLFB/Bestellnummer
Hinweis
STEP 7 V5.3 SP1 1 6ES7810-4CC07-0YA5 Im Power-PG bereits enthalten
SCL V5.3 1 6ES7811-1CC05-0YA5 SIMATIC NET IE S7-1613 V6.2 (SP1) mit: • OPC-RCW • OPC-Server
1 6GK1716-1CB62-3AA0 OPC-RCW und OPC-Server sind kostenfrei enthalten. Enthält das benötigte .NET-Framework V1.1
Visual Studio 2003 mit .NET-Framework V1.1 oder höher
1 Abhängig vom Produkt Optional, benötigt für Anpassungen.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 16/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Beispieldateien und Projekte Die folgende Liste enthält alle Dateien und Projekte, die in diesem Beispiel verwendet werden. Tabelle 2-7
Komponente Hinweis 21523291_OPC_SR_STEP7_v10.zip Die Datei enthält das archivierte STEP
7-Projekt und das zugehörige S7-Programm.
21523291_OPC_SR_CODE_v10.zip
Visual Basic .NET Programm: OPC-Client (Benutzeroberfläche) und die Source-Code-Dateien der Benutzerober-fläche.
21523291_OPC_SR_Introduction_ DOKU_v10_d.pdf
Applikationsbeschreibung und Funkti-onsprinzipien
21523291_OPC_SR_Extension_ DOKU_v10_d.pdf
Funktionsprinzipien im Detail und Pro-grammstrukturen.
21523291_OPC_SR_Demonstration_DOKU_v10_d.pdf
Aufbau, Projektierung und Bedienung
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 17/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
2.4 Leistungseckdaten
Hardware In den nachfolgenden Tabellen werden die Leistungseckdaten der verwen-deten SIMATIC Hardware-Komponenten und die Größenordnung der Über-tragungszeiten (Beispielmesswerte) genannt. Die in der Applikation ver-wendeten Komponenten sind rot umrandet.
SIMATIC NET CP 343-1 (343-1EX20-0XE0) Tabelle 2-8
Kriterium Leistungseckdaten Übertragungsrate 10 Mbit/s oder 100 Mbit/s Schnittstellen 10BaseT,100BaseTX: RJ45 Leistungsdaten: S5-kompatible Kommunikation (SEND/RECEIVE)
Summe aller gleichzeitig betreibbaren TCP/UDP - Verbindun-gen: max.16 Anzahl Nutzdaten • TCP: 8 KByte • UDP: 2 KByte S7-Kommunikation: Anzahl Verbindungen: max.16 PG/OP-Kommunikation: Anzahl betreibbarer OP-Verbindungen (azyklische Diens-te):16 Multiprotokollbetrieb: Summe aller gleichzeitig betreibbaren Verbindungen max.: 32
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 18/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
SIMATIC NET CP 1613 (6GK1161-3AA00) Tabelle 2-9
Kriterium Leistungseckdaten Übertragungsraten: 10 Mbit/s oder 100 Mbit/s Schnittstellen 15polige Sub-D-Buchse (10/100 Mbit/s)
10BaseT, 100 BaseTX RJ-45 Leistungsdaten (Monoprotokollbe-trieb):
S7-Kommunikation Anzahl betreibbarer Verbindungen: 160 SEND/RECEIVE Anzahl betreibbarer Verbindungen: 160 PG-Funktionen Anzahl betreibbarer Verbindungen: 1
Applikationssoftware In nachfolgender Tabelle werden verschiedene Aspekte bezüglich blockori-entierter und variablenorientierter Kommunikation bewertet. Tabelle 2-10
Kriterium Blockorientierte Diens-te
AG_SEND/AG_RECV
Variablenorientierte Dienste
FETCH /WRITE
Fehlerhandling ++ ++ Implementierungsaufwand O + Performance ++ + Datendurchsatz ++ O Flexibler Zugriff - ++ Heterogene Kommunikati-onspartner (z.B. SIMATIC S5)
++ ++
Messdaten Nachfolgend werden die durchschnittlichen Übertragungszeiten von der Steuerung zum PC und umgekehrt graphisch dargestellt.
Messmethode Ermittelt wurde in nachfolgenden Diagrammen die durchschnittliche Über-tragungszeit in Abhängigkeit der Datenmengen.
In der Applikation wird diese Durchschnittszeit seit Übertragungsbeginn („Verbinden“) ermittelt und dargestellt. Gemessen wird in beiden Richtun-gen jeweils am PC.
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 19/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Hinweis Die erste Übertragung wird in der Applikation zur Ermittlung und Anzeige der Durchschnittszeit nicht mit berücksichtigt, da diese im Vergleich zu allen anderen Übertragungen überdurchschnittlich lange benötigt und so zu einer Verfälschung des Messergebnisses führen würde.
Hinweis Die angegebenen Messwerte können hardware- und softwareabhängige
Schwankungen (PC, Netzwerk und Infrastruktur) aufweisen. Deshalb kann es sein, dass Ihre Ergebnisse von nachfolgend dargestellten Wer-ten abweichen.
Durchschnittliche Übertragungszeiten von der Steuerung zum PC Die gemessene Zeitdauer entspricht in Abbildung 2-5 den Punkten 1-4. Abbildung 2-6
S7 => PC
0
100
200
300
400
500
600
0,5 2 4 6 8
Datenmenge in kByte
Übe
rtra
gung
szei
t in
ms
Applikationsbeschreibung
Automatisierungslösung
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 20/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Durchschnittliche Übertragungszeiten vom PC zur Steuerung Die gemessene Zeitdauer entspricht in Abbildung 2-4 den Punkten 1-5. Abbildung 2-7
PC => S7
0
100
200
300
400
500
600
0,5 2 4 6 8
Datenmenge in kByte
Übe
rtra
gung
szei
t in
ms
Wie man den Graphen entnehmen kann, wird das erwartete Ergebnis bes-tätigt, da die Übertragungszeit nahezu linear mit zunehmender Datenmen-ge ansteigen.
Anhang und Literaturhinweise
Glossar
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 21/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
Anhang und Literaturhinweise
3 Glossar
COM Component Object Modell: Software-Modell zur Kommunikation zwischen Komponenten, das auf einer einheitlichen Schnittstelle aufsetzt; DCOM
DCOM Distributed Object Modell: Software-Modell zur Kommunikation über Rech-nergrenzen hinweg, welches auf COM aufsetzt.
Eventhandler Ein Eventhandler bearbeitet aufgetretene Ereignisse bzw. Windows-Nachrichten.
Exception Unter einer Exception versteht man eine Ausnahmesituation. Diese kann entweder vom Betriebssystem (z.B. Division by zero) oder vom Anwenderprogramm generiert werden.
Exception-Handler Ein Exception-Handler bearbeitet aufgetretene Ausnahmesituationen. Dies ist in der Regel ein gesichertes Fehlverhalten und/oder eine Nachricht an den Nutzer.
HRESULT Rückgabe-Datentyp von COM-Objekten.
IDL Interface Definition Language: Eine von Microsoft standardisierte Sprache zur Definition von Funktions- und Parameter-Schnittstellen.
OPC OLE for Process Control. Eine für den Automatisierungsbereich geschaffe-ne Standardisierung zur Prozesssteuerung. Gepflegt von der OPC - Foun-dation. Es sind mehrere Schnittstellen mit unterschiedlichem Aufgabenbe-reich vorhanden.
OPC-Client Ein Programm, das die Dienste eines OPC-Servers in Anspruch nimmt, in-dem es Anfragen an den Server mittels einer der vorhandenen OPC Schnittstellen stellt.
Anhang und Literaturhinweise
Glossar
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 22/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
OPC DA OPC Data Access Schnittstelle. Die Schnittstelle ermöglicht das Beobach-ten und Verändern von Prozesswerten.
OPC-Server Ein Programm, das eine der OPC Schnittstellen zur Verfügung stellt und auf Anfragen eines OPC-Clients Antwortet.
Polling Englischer Begriff, mit dem das (meist zyklische) Abfragen bestimmter Werte oder Zustände gemeint ist.
RCW Runtime Callable Wrapper. Eine Hülle (siehe Wrapper), die eine Custom Schnittstelle für das .NET Framework kapselt. Durch den RCW werden äl-tere COM Schnittstellen für das .NET Framework zugänglich.
Sink-Interface Mit Hilfe des Sink-Interfaces können Nachrichten zwischen Komponenten gesendet werden. Das Sink-Interface setzt auf COM-Mechanismen auf.
Windows-Nachricht In den gängigen Microsoft Windows Betriebssystemen werden zur Mit-teilung von Ereignissen, z.B. das Paint-Ereignis, Nachrichten ausgetauscht.
Wrapper Als „Wrapper“ wird in der Regel ein Klassenverbund bezeichnet, der an-dere Klassenverbände zur Datenkonvertierung oder leichteren Verwendung kapselt. Er kann somit als „Hülle“ gesehen werden, der die „gewrappten“ Klassen umschließt und nach außen verbirgt.
Anhang und Literaturhinweise
Literaturhinweise
OPC mit SEND/RECEIVE-Protokoll, Beitrags-ID: 21523291
V1.0 02.05.05 23/23
Cop
yrig
ht ©
Sie
men
s A
G 2
005
All
right
s re
serv
ed
2152
3291
_OP
C_S
R_I
ntro
duct
ion_
DO
KU
_v10
_d.d
oc
4 Literaturhinweise
4.1 Literaturangaben
Diese Liste ist keinesfalls vollständig und spiegelt nur eine Auswahl an ge-eigneter Literatur wieder.
Tabelle 4-1
Themengebiet Titel /1/ STEP7 Automatisieren mit STEP7 in AWL und SCL
Hans Berger Publicis MCD Verlag ISBN 3-89578-113-4
/2/ .NET Inside C#, Tom Archer .NET Crashkurs, Clemens Vasters, Oellers, Javidi, Jung, Freiberger, DePetrillo Microsoft .NET Framework Programmierung, Jeffrey Richter
/3/ Handbuch zur Indus-triellen Kommunikation auf PG/PC mit SIMA-TIC NET.
SIMATIC NET – Industrielle Kommunikation mit PG/PC Band 1 Grundlagen Band 2 Schnittstellen Wird von SIMATIC NET installiert, siehe: Start SIMATIC Dokumentation Deutsch Im Produktsupport unter der Beitrags ID: 12044387
4.2 Internet-Link-Angaben
Diese Liste ist keinesfalls vollständig und spiegelt nur eine Auswahl an ge-eigneter Literatur wieder.
Themengebiet Titel \1\ Referenz auf
den Beitrag http://support.automation.siemens.com/WW/view/de/21523291
\2\ Siemens A&D Customer Sup-port
http://support.automation.siemens.com
\3\ OPC OPC DA 2.05a Specification unter http://www.opcfoundation.org/