st3v3 Geschrieben 28. Januar 2009 Teilen Geschrieben 28. Januar 2009 Das hab ich bislang: 1 Thema Erstellung eines OPC-Clients zur OPC DA Kommunikation 2 Termin 25.03.2009 - 21.04.2009 3 Projektbeschreibung - was ist OPC? Die Entwicklung eines neuen OPC Servers wurde abgeschlossen und der Server soll nun getestet werden. Die am Markt verfügbaren OPC Clients bieten allerdings nicht die nötige Funktionalität um die erforderlichen Tests durchzuführen, desweiteren sind die verfügbaren Clients nicht erweiterbar. Ziel ist es, einen OPCClient in C# zu realisieren, bei dem ein Debug Modus existiert und der auf der aktuellen Version der Softing DLL für OPC Toolbox basiert. Die DLL wird von Softing bereitgestellt und implementiert die Funktionen um sich zu einem OPCServer zu verbinden, alle OPCServer auf einem Computer aufzulisten, einen OPCServer zu starten und zu beenden und Daten von einem OPCServer zu empfangen und an einen OPCServer zu senden. Der OPC Client soll * Logdateien erstellen und anzeigen können * die Möglichkeit bieten sich zu einem Computer im Netzwerk zu vebinden und die darauf eingerichteten OPC Server anzuzeigen * eine Verbindung zu einem OPCServer auf einem Computer herstellen können * die Werte von Datenpunkten auf einem OPCServer darstellen und verändern können * Einen Test bereitstellen, der zyklisch Datenwerte an den OPC Server schreibt Zur Realisierung der Aufgabe wird Visual Studio benutzt, als Programmiersprache kommt C# zum Einsatz. Beides wurde vom Projektteam vorgegeben. 4 Projektumfeld Meine Projektarbeit ist eine eigenständige Lösung innerhalb eines Projektteams der Werum Software & Systems AG 5 Projektphasen 1.Durchführung einer Sollanalyse (1 Stunde) 2.Durchführung einer Istanalyse (1 Stunde) 3.Erstellung der Grafischen Oberfläche (5 Stunden) 4.Programmierung der OPC Kommunikation (Client <-> Server) (25 Stunden) a.Mit OPC DLL vertraut machen b. Herstellen einer Verbindung zu einem Computer und auslesen aller verfügbaren OPC Server c.Eine Verbindung zu einem OPC Server herstellen und die Verbindung speichern um darüber auf den Server zuzugreifen und Daten auszulesen, zu ändern oder den Server zu starten und zu beenden d.Erstes einlesen der Daten und erstellen der Datenstrukturen e.Zyklisches Abfragen von Datenwerten e.Schreiben von Datenwerten f.Beenden einer Verbindung zu einem OPC Server wenn der Client sich zu einem anderen OPC Server verbindet 5.Implementierung verschiedener Tests um OPCServer testen zu können (8 Stunden) 6.Implementierung einer Logging Schnittstelle um Meldungen in eine Text Datei zu schreiben und diese später im OPCClient wieder einlesen zu können (6 Stunden) 7.Testen des Clients und Beheben von Fehlern (6 Stunden) 8.Dokumentation (16 Stunden) ================================================== Ich pack da noch eine Beschreibung rein, was OPC ist...ansonsten wüsst ich jetzt nich was ich da noch machen soll (oder kann das so bleiben?) Punkt 6 weiß ich nich was da rein gehört, frage hab ich in einem seperatem thread gestellt Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
st3v3 Geschrieben 28. Januar 2009 Autor Teilen Geschrieben 28. Januar 2009 uppala, 5.4.a lautet "Einarbeitung in OPC DA Kommunikation", der dämliche Onlineeditor hats mal wieder nich gespeichert Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 28. Januar 2009 Teilen Geschrieben 28. Januar 2009 Was ist OPC? Bei Wiki kann man folgendes im IT Bereich finden: OPC Unified Architecture ? Wikipedia OLE for Process Control ? Wikipedia Operation Planning and Control ? Wikipedia Was ich etwas bedenklich finde, ist dass nicht klar heraus kommt wie komplex die Kommunikation ist. Wenn diese DLL die Kommunikation entsprechend durchführt, dann ist das im Grunde für mich nichts kompliziertes mehr: a.Mit OPC DLL vertraut machen b. Herstellen einer Verbindung zu einem Computer und auslesen aller verfügbaren OPC Server c.Eine Verbindung zu einem OPC Server herstellen und die Verbindung speichern um darüber auf den Server zuzugreifen und Daten auszulesen, zu ändern oder den Server zu starten und zu beenden Ebenso ist das auch nicht kompliziert zu verarbeiten: d.Erstes einlesen der Daten und erstellen der Datenstrukturen e.Zyklisches Abfragen von Datenwerten e.Schreiben von Datenwerten f.Beenden einer Verbindung zu einem OPC Server wenn der Client sich zu einem anderen OPC Server verbindet denn im Grunde ist es das Verbindungshandling. Die genannten Punkte sind für mich das zwingende, damit ich überhaupt mit dem System arbeiten kann. Sprich Grundlagen schaffen. Das was ich interessant finde wäre "5.Implementierung verschiedener Tests um OPCServer testen zu können (8 Stunden)" Was für Test, warum testen, nach welchen Kriterien usw. Das wäre eher für mich Ausgangslage des Projektes und nicht die Entwicklung eines Clients Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
st3v3 Geschrieben 28. Januar 2009 Autor Teilen Geschrieben 28. Januar 2009 3. Ergänzung zu "Was ist OPC": OPC (früher OLE for Process Control) wird genutzt um über ein Herstellerunabhängiges Protokoll zwischen Maschinen verschiedener Hersteller zu kommunizieren. Der OPC Server kommuniziert über eine SPS mit den einzelnen Geräten und stellt die Daten in einem TCP/IP basiertem Netzwerk für OPC Clients bereit. OPC DA stellt hierbei die Spezifikation für das Übertragen von Echtzeitwerten da Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
st3v3 Geschrieben 28. Januar 2009 Autor Teilen Geschrieben 28. Januar 2009 (bearbeitet) -> die dll implementiert sämtliche Funktionen die zur Kommunikation nötig sind. Allerdings muss man selbst sachen machen wie zyklisches datenlesen usw. Test wäre bspw. zyklisches Datenschreiben an den Server im ms Bereich. Im Prinzip ist der Client nur ein grafisches Frontend mit ein paar eigenen Funktionen. Bearbeitet 28. Januar 2009 von st3v3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
flashpixx Geschrieben 28. Januar 2009 Teilen Geschrieben 28. Januar 2009 Im Prinzip ist der Client nur ein grafisches Frontend mit ein paar eigenen Funktionen. Dann finde ich das etwas zu wenig, denn Du setzt lediglich ein paar Kommandos an der Schnittstelle ab und liest die Daten, ob das nun syklisch oder azyklisch geschieht ist ja irrelevant. Auch fehlt mir dann auch die Problemstellung und die Komplexität ist mir dann nicht klar. Phil Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Schiller256 Geschrieben 28. Januar 2009 Teilen Geschrieben 28. Januar 2009 In deinem Antragstext legst du den Schwerpunkt auf die Tests des Servers selbst in deiner Zeitplanung hingegen willst du erstmal 25 Std. lang Grundlagen schaffen die dir die dll eigentlich schon bietet das passt nicht zusammen. Wenn ich es richtig verstanden habe willst du eine Monitoringlösung bauen um zu überprüfen ob dein Server noch läuft. Wieso brauchst du hier ein Frontend wo taucht es in deinem Antrag und in der Zeitplanung auf? Halte ich so wie es im Moment in deinem Antrag steht auch für zu dünn. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
st3v3 Geschrieben 28. Januar 2009 Autor Teilen Geschrieben 28. Januar 2009 1. es ist keine wirklich Monitorlösung (Monitor -> Überwachung?) 2. Die dll implementiert grundlegende funktionen (bspw. das herstellen einer Verbindung zu einem OPC Server, ausgabe aller URLs der OPC Server auf einem PC usw.) 3. der Client stellt Datenpunkte da (Qualität, Datenwert, DatenpunktID, letzte änderung) 4. Der Client macht es möglich, den Wert eines Datenpunktes zu ändern (Benutzer wählt DP aus, gibt den Wert an und ich werf das in eine interne Hashtable, die ich dann (über die DLL) an den Server geb der bei sich das ganze aktualisiert) Und was soll ich bitteschön komplexer machen? Das soll ja auch mit der Stundenanzahl passen...und wenn ich da noch anfang ne eigene DLL zu schreiben für OPC Kommunikation, häng nochmal ne 0 an dann passt das vielleicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
st3v3 Geschrieben 28. Januar 2009 Autor Teilen Geschrieben 28. Januar 2009 (bearbeitet) So, ich hab das Ding mal mit nem Arbeitskollegen überarbeitet (hat schon mehrere Anträge gesehen): Thema: Erstellung eines OPC-Clients zur OPC DA Kommunikation Projektbeschreibung: Ist-zustand: Die Entwicklung eines neuen OPC DA Servers wurde abgeschlossen und der Server soll nun getestet werden. Die am Markt verfügbaren OPC DA Clients bieten allerdings nicht die nötige Funktionalität um die erforderlichen Tests durchzuführen, desweiteren sind die verfügbaren Clients nicht erweiterbar. Soll-Zustand: Ziel ist es, einen OPC DA Client in C# zu realisieren, bei dem ein Debug Modus existiert und der auf der aktuellen Version der Softing DLL für OPC basiert. Die DLL wird von Softing bereitgestellt. Der OPC DA Client soll * eine grafische Oberfläche bereitstellen * alle verfügbaren OPC DA Server auf einem Computer anzeigen * die Möglichkeit bieten sich zu einem OPC DA Server auf einem Computer zu verbinden * die Werte von Datenpunkten auf einem OPC DA Server darstellen und verändern können * Einen Test bereitstellen, der zyklisch Datenwerte an den OPC DA Server schreibt * Logdateien erstellen und anzeigen können Software die verwendet wird: Zur Realisierung der Aufgabe wird Visual Studio benutzt, als Programmiersprache kommt C# zum Einsatz. Beides wurde vom Projektteam vorgegeben. Verwendete Fremdleistungen/Schnittstellen und ihre Erklärung: OPC DLL von Softing. Die DLL bietet folgende Funktionen: * Verbindung zu einem OPC DA Server aufbauen * Verbindung zu einem OPC DA Server abbauen * URLs aller OPC DA Server auf einem Computer in ein Array schreiben * Daten von einem OPC DA Server empfangen und an einen OPC DA Server senden. OPC: Früher "OLE for Process Control" wird genutzt um über ein Herstellerunabhängiges Protokoll zwischen Maschinen verschiedener Hersteller zu kommunizieren. Der OPC Server kommuniziert über eine SPS mit den einzelnen Geräten und stellt die Daten in einem TCP/IP basiertem Netzwerk für OPC Clients bereit. OPC DA stellt hierbei die Spezifikation für das Übertragen von Echtzeitwerten da Projektphasen: 1.Durchführung einer Sollanalyse (1 Stunde) 2.Durchführung einer Istanalyse (3 Stunden) 3.Erstellung der grafischen Oberfläche (5 Stunden) 4.Programmierung der OPC DA Kommunikation (Client <-> Server) (25 Stunden) 4.a Einarbeitung in OPC DA Kommunikation 4.b Herstellen einer Verbindung zu einem Computer und Auslesen aller verfügbaren OPC DA Server 4.c Herstellen einer Verbindung zu einem OPC DA Server 4.d Einlesen der Daten und Erstellen von Strukturen zur Datenspeicherung 4.e Zyklisches Abfragen von Datenwerten 4.f Schreiben von Datenwerten 4.g Beenden einer Verbindung zu einem OPC DA Server 5.Implementierung verschiedener Tests für OPC DA Server, beispielsweise zyklisches schreiben von Datenwerten im Millisekundenbereich(8 Stunden) 6. Erstellung zweier Funktionen zum Schreiben und Anzeigen von Log Dateien im OPC DA Client (6 Stunden) 7. Testen des Clients und Beheben von Fehlern (6 Stunden) 8. Dokumentation (16 Stunden) Bearbeitet 28. Januar 2009 von st3v3 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.