Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: Siemens OPC Client ActiveX schneller als opcdaauto.dll

  1. #1
    Registriert seit
    14.05.2008
    Beiträge
    195
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    hab zwei kleine VB6 anwendung geschrieben welche einen sich inkrementieren WErt auf der sps (itnervall 100ms) anzeigen.

    OPC Server Simatic

    Eine anwendung benutzt das OPC client ActiveX von Siemens, das andere die opcdaauto.dll. Die Anwendung mit dem ActiveX ist VIEL schneller, d.h. der Wert wird vie öfters aktualisiert wie in der anwendung in der ich es über die Dll mache. Woran kann das liegen. Hab die Updaterate etc. bei bei den gleich.

    lg
    Zitieren Zitieren Siemens OPC Client ActiveX schneller als opcdaauto.dll  

  2. #2
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Boris,
    ich habe vor ungefähr einem Jahr mal Geschwindigkeitsvergleiche zwischen dem Softing OPC-Server (mit ActiveX) und dem alten OPC-Server Computing (von Siemens, vermutlich Vorläufer von Simatic Net) angestellt.
    Ich habe jeweils 1000 Integerwerte aus einem Datenbaustein gelesen und in ein Array von VB6.0 geschrieben. Als Übertragungshardware habe ich ein MPI/Lan-Kabel von der Prozessinformatik eingesetzt.
    Das Ding verband die Rechner-Netzwerkkarte mit der MPI-Schnittstelle einer S7-300-CPU.
    Der Vergleich ergab, der Softing OPC-Server ist mehr als 10mal so schnell wie der alte OPC-Server von Siemens.
    Mit Simatic Net habe ich noch nicht experimentiert.

    Gruß
    Earny

  3. #3
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Frage

    Hallo,

    Zitat Zitat von Earny
    Mit Simatic Net habe ich noch nicht experimentiert.
    Dann hole das doch bitte nach. Der Vergleich ist nicht mehr zeitgemäss, wen interessieren Produkte,

    Zitat Zitat von Earny
    alten OPC-Server Computing
    die aus dem vorigen Jahrtausend stammen ? Und VB6 als Maßstab, also ich weiss nicht so recht

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Anno Tobak ...  

  4. #4
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    195
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo Leute,

    ich denke mit VB6 hat das nichts zu tun.. VB6 ist schnell genug um das rel. träge OPC Bandbreite zu testen. Ob ich nun ne opc schnittestelle (automatisch wrapper 2.0) in C/C++ oder VB6 verwende macht kaum unterschiede.

    Ich habe nun auch den OPC Softing vs. simiems NET Server verglichen. Clientseitig hab ich beides mal die opcdaauto.dll verwenden, und sehe das die Update intervall bei Softing um den Faktor ca. 8-10 mal schneller ist als mit siemens. Verwende ich allerding den Siemens NET server + das Siemens Client OPC Active X ist der unterschied nur noch gering. Ich frage mich deshalb welche schnittstelle diese ActiveX benutzt ??

    grüße

  5. #5
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Beitrag

    Hallo,

    Zitat Zitat von BorisDieKlinge80
    in C/C++ oder VB6 verwende macht kaum unterschiede.
    Das sehe ich jetzt anders. Ein OPC-Server hat 2 Interfaces, über die man mit dem OPC-Server kommunizieren kann.

    1) das Automation-Interface
    2) das Custom-Interface

    Das Custom-Interface ist für die Verwendung aus richtigen Programmiersprachen wie C, C++ und Delphi gedacht. Hier kann ich direkt mit Bordmitteln des Betriebssystems (Windows) mittels COM-Interface direkt auf den Server zugreifen.
    VB6 (und natürlich auch VBA) weist allerdings erhebliche Einschränkungen und Mängel bei Zeigeroperationen auf (also ohne unsaubere Tricks geht es nicht) b.z.w. die Benutzung von Windows COM Interfaces ist gar nicht möglich. Und genau dafür hat man das Automation-Interface in Form der opcdaauto.dll geschaffen. Durch diesen Overhead der dadurch entsteht ist das Automation-Interface entsprechend langsamer im Vergleich zum Custom-Interface. Das könnte den von Dir erwähnten Unterschied in der Geschwindigkeit erklären.
    Mit anderen Worten, bei VB6 und VBA musst Du das Automation-Interface verwenden (weil es gar nicht anders geht).
    Bei C++ oder Delphi solltest Du das Custom-Interface verwenden, alles andere wäre schlicht Unsinn.

    Und dann noch etwas zum Unterschied VB6 und C++ : Der C++ Compiler ist ein echter Compiler, VB6 Ist ein Zwitter zwischen Interpreter und Compiler da immer noch Laufzeitmodule (z.B. MSVBVMx0.DLL) zum Ausführen der .EXE erforderlich sind. Daher also auch zur Laufzeit entsprechen langsamer. Aber das nur nebenbei zur Erklärung, bevor das hier ein Glaubenskrieg über Programmiersprachen wird.

    Zitat Zitat von BorisDieKlinge
    und sehe das die Update intervall bei Softing um den Faktor ca. 8-10 mal schneller ist als mit siemens.
    Das Update intervall kann am OPC-Server eingestellt werden. War das bei beiden Servern gleich eingestellt ?

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Es gibt da schon Unterschiede ...  

  6. #6
    Registriert seit
    04.04.2008
    Beiträge
    389
    Danke
    85
    Erhielt 39 Danke für 24 Beiträge

    Standard

    Hallo Question_M.,
    hallo Boris,
    ich habe vor ca. 4 bis 5 Jahren mal einige Gehversuche mit dem Simatic Net OPC-Server unternommen. Ich habe damals aber nur mit Hilfe des OPC-Scouts einige Tests durchgeführt. Vorher musste der Rechner aber noch in den sogenannte "Produktivbetrieb" versetzt werden.
    Das ist mir besonders unangenehm in Erinnerung.
    Ich selbst bin in der beruflichen Weiterbildung tätig und hatte natürlich vor, Simatic Net auf den Schulrechnern zu installieren. Nachdem unser Administrator erfuhr, dass für Simatic Net eine Umkonfiguration der Rechner erforderlich ist, hat er die Sache stillgelegt. Auf den Rechnern müssen auch andere Softwarepakete problemlos laufen, ohne dass jedesmal eine Umkonfiguration erforderlich ist.
    Ich habe mich deshalb seit ca. 4 Jahre nicht mehr mit Simatic Net beschäftigt.
    Ist der Simatic Net OPC-Server auch über ein ActiveX ansprechbar und gibt es eine gute Beschreibung (mit Beispielen). An den sogenannten "Referenzhandbüchern" bin ich weniger interessiert.

    Zu Computing, der Software aus dem vorigen Jahrtausend, hatte Siemens damals eine ca. 300-seitige Beschreibung geliefert, in der z.B. die Objektmethoden tatsächlich anhand von Beispielen erläutert waren. Eine Beschreibung dieser Güte habe ich zu Simatic Net nicht gefunden.
    Bin deshalb vor ca. einem Jahr auf Softing gestoßen. Der OPC-Server ist ebenfalls über ein ActiveX einfach ansprechbar und ich dachte, dass wäre ein schöner Ersatz für Computing. Der erste Eindruck war i.O.

    Das Problem beim Softing-OPC-Server war aber ---> Accontrol von Deltalogic. Die beiden hängen irgendwie zusammen.

    Die große Stärke von Computing war/ist, es ermöglich nicht nur eine Verbindung zur S7-CPU, sondern auch zu PLCSim von Step7. Daher ist es möglich, nicht nur das STEP7-Programm, sondern auch gleich die zugehörige VB-Visualisierung mitzutesten.
    Das klappt bei Softing nicht. Die sind leider nicht in der Lage, PLCSim von Siemens anzusprechen. Sie empfehlen Accontrol von Deltalogic und da beginnt das Problem:

    Accontrol hat ein paar Probleme mit S7 (Stand ca. Frühjahr08, Accontrol V1.2.20.0, Control Center 1.2.18.0):
    1.) Es kollidiert mit irgendeinem S7-Dienst. Den muss man erst abschalten, kann aber über die Folgen nur Vermutungen anstellen.
    2.) Es unterstützt keine PEW-/PAW-Adressen oberhalb eines bestimmten Wertes. Wir haben eine CPU314C-2DP. Sämtliche PEW-/PAW-Adressen waren nicht ansprechbar. Man kann das zwar umparametrieren, aber das ist im rauhen Schulalltag problematisch.
    3.) Gelegentlich musste erst STEP7 beendet werden, bevor Accontrol mit dem Softing-OPC-Server kommunizieren konnte.
    4.) Accontrol kam nicht mit Lokalvariablen von STEP7 zurecht. S7-Programme, die Lokalvariablen enthielten, liefen in Accontrol nicht ab.
    5.) Hinzu kam auch noch das recht umständliche Handling bei der Visualisierung (S7 - VB2005 - Softing - Accontrol)

    Accontrol war dann also der Grund, weshalb unsere Softing-Versuche eingestellt wurden. Könnte Softing mit PLCSim kommunizieren, würde ich den Softing-OPC bevorzugen. So bleibt es vorerst beim alten: Computing funktioniert unter Step7V5.4SP3 problemlos. Es lässt sich im Schulbetrieb eine einfache Umschaltung von PC --- S7 auf PC --- PLCSim erreichen. Außerdem lässt sich das ActiveX von Computing auch in VB2005 einsetzen. Die Tatsache, dass das nicht die allerschnellste Datenübertragungen ermöglicht, spielt im praktischen Schulalltag keine Rolle.

    Gruß
    Earny

  7. #7
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Frage

    Hallo,

    Zitat Zitat von Earny
    Vorher musste der Rechner aber noch in den sogenannte "Produktivbetrieb" versetzt werden.
    Kannst Du auch definieren, was ein sogennanter "Produktivbetrieb" an einem Windows-Rechner bedeutet ???

    Gruß
    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Watt iss dat denn ???  

  8. #8
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Blinzeln

    Hallo,

    Zitat Zitat von Earny
    Ist der Simatic Net OPC-Server auch über ein ActiveX ansprechbar und gibt es eine gute Beschreibung
    Im Prinzip ja, aber generell kann ein Active-X Control eine Mal-Software enthalten und hat deshalb auf meinen Rechnern keinen Platz, sowas wird sofort gekickt

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Bei mir gibt es kein Active-X  

  9. #9
    Registriert seit
    07.07.2004
    Beiträge
    3.285
    Danke
    38
    Erhielt 584 Danke für 382 Beiträge

    Blinzeln

    Hallo,

    Zitat Zitat von Earny
    Die Tatsache, dass das nicht die allerschnellste Datenübertragungen ermöglicht, spielt im praktischen Schulalltag keine Rolle.
    Und die Erkenntnisse aus dem praktischen Schulalltag sollten schon für den Azubi zu einem fundiertem Wissen über die verwendete Technologie mit entsprechendem Hintergrundwissen als Endziel führen. Also auch über die OPC-Interfaces und deren Vor- und Nachteile in Bezug auf Geschwindigkeit etc. Oder warum stochert "BorisDieKlinge80" hier mit bald 50 Fragen zum Thema OPC hier im Forum herum

    Gruß

    Question_mark
    ''Ich habe wirklich keine Vorurteile.
    Meine Meinung ist nur die Summe der Erfahrungen" ... (Question_mark)
    Zitieren Zitieren Ausbilder Schmitz ..  

  10. #10
    BorisDieKlinge80 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2008
    Beiträge
    195
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Und die Erkenntnisse aus dem praktischen Schulalltag sollten schon für den Azubi zu einem fundiertem Wissen über die verwendete Technologie mit entsprechendem Hintergrundwissen als Endziel führen. Also auch über die OPC-Interfaces und deren Vor- und Nachteile in Bezug auf Geschwindigkeit etc. Oder warum stochert "BorisDieKlinge80" hier mit bald 50 Fragen zum Thema OPC hier im Forum herum
    War das jetzt kritik an mir? naja ich will halt gang genau wissen wie und warum , weshalb es so und so funktioniert... einfach nur zu funktionieren ohne den hintergrund zu wissen is nix
    Es kann natülich sein, das der Automatisch wrapper, wie der name schon sagt "wrapper" langsamer ist als das direkte interface. Das der C/C++ compiler gegenüber dem rel. primitven VB6 interpreter/Compilter schneller ist ,is mir klar.. aber der Flaschenhalt ist ehr die Übertragung zwischen Server und Client... faktor 8-10 ist schon extrem C und c++ würde ich später schon etvtl. verwenden, aber mit VB6 geht halt schneller was zusammenzubauen... aber ich kann mich ja mal das custem interface mit c testen.

    Test:
    Auf der SPS wird eine Integer auf 200 gezählt ineinem intervall von 100ms. Die Updaterate der OPC Clients hab ich auf 100ms liegen. Iich habe die Zeitabstände der DataUpdate Events der iterierenden Zahl gemessen.

    Softing OPC Server -> Automatisch Wrapper ca. 120ms
    Softing OPC Server -> Siemens client OCX ca. 110ms
    Siemens OPC Server -> Automatisch Wrapper ca. 900ms <- Hier die Alomalie (das kann ich mir nich erklären)
    Siemens OPC Server -> Siemens client OCX ca. 110ms

    Wert aber das ganze mal mit dem custom interface testen.
    Geändert von BorisDieKlinge80 (09.09.2008 um 05:26 Uhr)

Ähnliche Themen

  1. Siemens S7 kommunikation mit EXCEL VBA OPC Client
    Von bobby765 im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 01.08.2011, 15:54
  2. OPC Server- opcdaauto.dll??
    Von MarkusMA im Forum Hochsprachen - OPC
    Antworten: 6
    Letzter Beitrag: 10.05.2010, 21:39
  3. DCOM Konfig und OPCDAAuto.dll VB6 nutzung?
    Von BorisDieKlinge80 im Forum Hochsprachen - OPC
    Antworten: 5
    Letzter Beitrag: 22.08.2008, 15:43
  4. Ist die opcdaauto.dll eine freie dll?
    Von Philipp_K im Forum Hochsprachen - OPC
    Antworten: 0
    Letzter Beitrag: 06.02.2008, 13:06
  5. opcdaauto.dll
    Von zotos im Forum Hochsprachen - OPC
    Antworten: 1
    Letzter Beitrag: 01.03.2007, 12:56

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •