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

Ergebnis 1 bis 6 von 6

Thema: Kompletten DB "en bloc" auslesen via OPC

  1. #1
    Registriert seit
    23.03.2005
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, allerseits!

    Ich habe mal eine Frage zur OPC-Kommunikation...

    Ich schreibe gerade an einem Pflichtenheft für eine Visualisierung, die über OPC und TCP/IP mit einer S7-317 kommunizieren soll.

    Ich habe mehrere DB`s, in denen ich jeweils etwa 45 direkt hintereinander angeordnete STRING-Variablen (die ja jeweils ein ARRAY darstellen) auslesen möchte. Muß ich nun jeden String als Item anmelden, was ja pro DB (und ich habe 10 bis 15 davon...) 45 Items darstellt? Oder kann ich die Daten auch "in einem Rutsch" auslesen und dann in C# auseinanderdividieren?
    Ich denke mal, 15 mal 500 Byte auszulesen ist ökonomischer, sprich schneller, als 675 mal 10 Bytes...

    Als OPC-Server haben wir übrigens bisher INAT und IBH im Einsatz.

    Gruß,

    Olav
    Zitieren Zitieren Kompletten DB "en bloc" auslesen via OPC  

  2. #2
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Ich kann hier nur für unseren OPC-Server reden: Wie die Variablen definiert sind ist bei uns egal. Der Server fasst die Items intelligent zusammen und optimiert die Leszugriffe selbständig. Deshalb einfach als einzelne Strings anfragen.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  3. #3
    Olav ist offline Benutzer
    Themenstarter
    Registriert seit
    23.03.2005
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo, Herr Hönle!

    Vielen Dank erstmal für Ihre Antwort! Ich muß aber nochmal nachhaken:

    Ich muß aber trotzdem jeden einzelnen String als Item anmelden (lassen), oder?
    Das Problem ist, daß ich hier z.B. beim INAT-Server das Problem hatte, daß dieser selbst Arrays aufgelöst hat und - im Extremfall - jedes Bit als eigenes Item ansprechen wollte. Bei einem Array mit [300] x [32] Bits kommen dann schon einige Items zusammen... Diese alle beim OPC-Server anzumelden dauerte dann ein wenig zu lange...
    OK, bei den Strings sind es nur etwa 650 Items. Tritzdem wäre es eben "schöner", den DB auch komplett ansprechen zu können.

    Gruß,
    Olav

  4. #4
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard

    Es macht Sinn, die Strings als einzelne Items anzumelden. Dann kann der OPC-Server sich um die Besonderheiten (1. Byte = MaxLänge, 2. Byte = AktLänge) kümmern. Wenn das Ganze als Array of Bytes angelegt wird, dann muss man sich selbst um diese Dinge kümmern und entsprechende Typwandlungen im Client durchführen.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  5. #5
    Olav ist offline Benutzer
    Themenstarter
    Registriert seit
    23.03.2005
    Beiträge
    31
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Nun, die Umwandlung traue ich meinem C#-Programmierer schon zu, der ist ziemlich fit in diesen Dingen

    Allerdings besteht die SPS-Seite schon, also auch der DB, den ich auslesen möchte. Da möchte ich aus Kompatibilitätsgründen auch nichts ändern, läuft schon auf einigen Anlagen so...
    Und in diesem DB habe ich ja eben diese 45 String-Arrays angelegt...

    Die Frage ist einfach, ob ich einen Datenbaustein prinzipiell "als Ganzes" - oder auch nur einen fest definierten Teil - per OPC auslesen kann, ohne Rücksicht auf die in der SPS projektierten Datentypen und -strukturen...

    MfG,

    Olav

  6. #6
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.224
    Danke
    630
    Erhielt 955 Danke für 769 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Idealerweise wird die Datenstruktur im DB ebenso in OPC abgebildet. Wenn man weiß was man tut, kann man dies auch anderst machen. Aber wehe wenn dann Änderungen am SPS-Programm und den Datenstrukturen vorgenommen werden. Dann kann die Fehlersuche sehr zeitaufwändig werden.
    Rainer Hönle
    DELTA LOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 16.03.2012, 18:20
  2. "Index Pulse", "Home Switch" und "Position Limit Switch"
    Von senmeis im Forum Antriebstechnik
    Antworten: 3
    Letzter Beitrag: 07.03.2011, 11:21
  3. Antworten: 0
    Letzter Beitrag: 18.03.2009, 14:20
  4. Antworten: 2
    Letzter Beitrag: 14.12.2007, 15:09
  5. Antworten: 4
    Letzter Beitrag: 29.11.2006, 08:59

Lesezeichen

Berechtigungen

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