Zum Inhalt springen

[Anwendungsentwickler] Projektantrag - Verbesserung?


st3v3

Empfohlene Beiträge

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

-> 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 von st3v3
Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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 von st3v3
Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...