OPC-Server mit Libnodave funktioniert nicht

Red-Sh4nks

Level-1
Beiträge
42
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo erfahrene SPS- und OPC-Server-Benutzer! :)

Ich habe schon dutzende Posts in diesem Forum
durchstöbbert und war angenehm überrascht, dass
es so viele Profis auf diesem Fachgebiet gibt, die
anscheinend sämtliche Probleme lösen können.

Standpunkt:

1. Ich möchte einen OPC-Server auf einem Computer
einrichten
2. Als Toolbox möchte ich Libnodave verwenden, sofern
es keine andere kostenfreie bessere Software dafür gibt
3. Und der Rest sollte in C# erledigt werden

Ziel:
In der Lage zu sein, auf der SPS Merker setzen und lesen.

Hardware:
-Ein etwas veralteter Rechner mit Win XP SP 3
-Profibus DB
-CPU 315
-S7-300

Aktueller Standpunkt:
Die Anwendungen in Libnodave/win lassen sich anscheinend
nicht ausführen und werden sofort nach dem Öffnen wieder
geschlossen.

Ich hoffe meine gesamten Angaben sind vollständig um einige
konstruktive Vorschläge von eurer Seite zu erlangen ;-)

lg Marco*
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So wie es hier dargestellt ist, soll es funktionieren:

http://img5.imagebanana.com/view/bu1vuaq7/opc.jpg

Erklärung:
Der OPC soll über die Toolbox(libnodave) auf die SPS zugreifen können.
Der OPC sollte selbst (im c#) programmiert werden.

Als Kommunikationsadapter setzen wir die serielle Schnittschnelle
ein. An ihr habe ich einen Profibus DB angeschlossen, welcher an
die SPS angeschlossen ist.

PS: ich benötige diesen OPC-Server für die Schule, daher bin ich kein
Fachmann auf diesem Gebiet...

lg Marco :)
 
Hallo,
die Frage und der Einwand von Rainer Hönle sind sehr berechtigt.
Wenn dass das Ziel ist,

Ziel:
In der Lage zu sein, auf der SPS Merker setzen und lesen.

Warum dann den Umweg über das OPC-Protokoll? OPC ist eine zusätzliche Übertragungsschicht, um die Merker in deine C#-Software zu bekommen, brauchst du da nicht unbedingt OPC. Mit Libnodave (ohne OPC) lagst du für Deine Aufgabe eigentlich schon goldrichtig.
Gerne kannst Du für diese Aufgabe auf unseren "PLCCom S7"- Treiber zugreifen. Genau für deine Belange (nichtkommerzieller Bereich) gibt es da die kostenlose Personal-Edition. Damit kannst Du direkt in C# die Merker lesen oder schreiben. Beispiele sind Onboard.

Wenn es aber dann doch unbedingt OPC sein muss:
Selbst eine OPC-Server oder Client-Schnittstelle zu entwerfen oder umzusetzen, halte ich aus Erfahrung für sehr zeitaufwendig und mangels Testtools und Sourccode (die gibt es für Mitglieder bei der OPCFoundation) für sehr sehr umständlich. Bleibt eigentlich nur die Möglichkeit auf bestehende OPC-Client-und Server-Toolkits zurückzugreifen.
Allerdings ist mir im Moment ein kostenloses OPC-Clienttoolkit für C# nicht bekannt, ein kostenloser OPC-Server für S7 eigentlich auch nicht, ich denke da wird es schwer, eventuell die Hersteller ansprechen ob es eine kostenlose Schulversion gibt.;)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@TCP/IP
Tut mir leid, ich verstehe deine Frage nicht?
Gibt es verschiedene? oder meinst du von welcher
Firma?

@Indi.An-er
Dein Einwand ist gut! ;) Ich verstehe es ehrlich
gesagt auch nicht, wieso ich das OPC-Protokoll
verwenden soll, wenn es auch nur mit Libnodave
gehen würde. Ich werde mal rücksprache mit meinem
Professor halten und melde mich morgen mit
einer gezielten Antwort auf deine Frage!

lg Marco*
 
Also... Obwohl es umständlich ist, muss ich doch
unbedingt OPC verwenden. Mit einem Testclient von
WF98 müsste das doch in 2 Monaten zum Hinbekommen
sein, oder?

lg Marco*
 
Hallo,

grundsätzlich hat man zum Austausch von Prozessdaten zwei unter-
schiedliche Möglichkeiten:

1. proprietärer Gerätetreiber oder 2. standardisierte OPC-Schnittstelle

Zu 1.: das wäre z. B. libnodave

Zu 2.: Die Alternative ist der Einsatz der eines OPC-Server. OPC-Server
dienen als einheitliche Schnittstelle zum Prozess und sind für
verschiedenste Hardware lieferbar. Selbst entwickeln muss man nur
den OPC-Client entsprechend seinen Anforderungen, hat dann aber
eine Lösung für jeden OPC-Server.

Die OPC-Server werden normalerweise von den Geräteherstellern
angeboten. Für weit verbreitete Geräte wie die S5 und S7 von
Siemens gibt es Alternativen von Inat, Softing, Matrikon usw.


So wie es hier dargestellt ist, soll es funktionieren:

http://img5.imagebanana.com/view/bu1vuaq7/opc.jpg

Erklärung:
Der OPC soll über die Toolbox(libnodave) auf die SPS zugreifen können.
Der OPC sollte selbst (im c#) programmiert werden.

Was ist der Sinn davon, selbst einen OPC-Server zu erstellen?
Für eine einzelne Appilkation? Für ein Schulprojekt?

Machbar ist es, klar. Aber das ist ungefähr so, als ob Du an
Dein Auto einen Anhänger hinhängen möchtest ... und nun
kauftst Du eine CAD-Software, um eine Anhängkupplung zu
konstruieren statt dass Du Dir einfach so ein Ding kaufst.

Ich schätze: Hier redet "man" aneinander vorbei.
 
Was ist der Sinn davon, selbst einen OPC-Server zu erstellen?
Für eine einzelne Appilkation? Für ein Schulprojekt?

Ja, es ist für ein Schulprojekt. Anscheinend hat auch unser
Professor wenig Ahnung von solchen Dingen, weil er auch
nur wenige unserer Fragen beantworten kann.

Machbar ist es, klar. Aber das ist ungefähr so, als ob Du an
Dein Auto einen Anhänger hinhängen möchtest ... und nun
kauftst Du eine CAD-Software, um eine Anhängkupplung zu
konstruieren statt dass Du Dir einfach so ein Ding kaufst.

Ja, dein Vergleich trifft den Nagel auf den Kopf. Es ist leider
so gefordert.

Wenn ich das Ganze jetzt richtig verstanden habe, muss ich so
eine standardisierte OPC-Schnittstelle selbst programmieren. Also
quasi ein OPC-Protokoll im C#. Gibt es hierzu passende Quellen
mit Beispiel-Codes oder Anleitungen?

Gibt es so eine "CAD-Software", also eine Anleitung für einen
OPC-Server?

lg Marco*
 
Zuletzt bearbeitet:
Zurück
Oben