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

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

Thema: S7 / libnodave / Framelänge größer 240 Bytes

  1. #1
    Registriert seit
    21.11.2012
    Beiträge
    12
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo !

    Ich bin neu hier in diesem Forum und komme eher von der PC-Seite. Hier habe ich eine Anwendung geschrieben, die mittels libnodave und ISO over TCP Daten aus der SPS holt. Die Daten liegen in der SPS in einem DB hintereinander (ca. 8k). Leider bekomme ich diese Daten nur in 222 Byte (240 - 18 HeaderBytes) Häppchen über die libnodave-Funktion ReadManyBytes. Dadurch brauche ich für die 8k ca. 350ms. Ich vermute, daß es deutlich schneller gehen würde, wenn ich die Daten in größeren Paketen holen könnte. Allerdings scheint libnodave die Paketgröße mit der SPS auszuhandeln.
    Kennt jemand eine Möglichkeit mehr als 240 Bytes pro Aufruf zu holen ?
    Zur Not könnte auch die SPS die Initiative übernehmen. Schöner wäre es allerdings wenn ich vom PC pollen könnte.
    Ich bin nicht auf libnodave angewiesen und bin für alles offen. Wichtig ist, daß ich die Daten schneller brauche.

    Über Antworten würde ich mich sehr freuen !

    Bis dann

    Christof
    Zitieren Zitieren S7 / libnodave / Framelänge größer 240 Bytes  

  2. #2
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Das geht über das S7 Protokoll nicht anderst. Zumindest bei einer 300er. Eine 400er CPU kann auch 480 Byte große Pakete!

    Da musst du wohl auf der PLC eine TCP/IP Verbindung aufbauen, da gehen dann auch großere Pakete (die größe hängt wiederum auch vom CP/CPU ab)
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  3. #3
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Was ich mir noch vorstellen könnte, wenn du mehrere Anfragen gleichzeitig losschickst, vielleicht würde das ein Geschwindigkeitsschub bringen (weiss aber nicht ob das so ist). Thomas_V2.1 hat hier : http://www.sps-forum.de/showthread.p...017#post412017 dazu was geschrieben. Das ist aber in libnodave nicht implementiert, aber vielleicht hat ja Deltalogic was in der Richtung in AGLink.
    Oder du nutzt die Abfrage bei der die SPS von selbst automatisch die Daten schickt (geht auch nicht mit libnodave, aber AGLink hat das drinn), aber wieviel Bytes da gehen weiss Ich auch nicht!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  4. #4
    foreach ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.11.2012
    Beiträge
    12
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo !

    Danke erstmal für die Antwort.
    Wichtig wäre erstmal, daß überhaupt größere Frames gehen, da ich hier den größten Flaschenhals vermute. Ich muß die 8K jetzt nicht unbedingt am Stück lesen aber 1K Blöcke würden es wohl auch tun.
    Wie gesagt, da ich mehr von der PC-Seite komme weiß ich jetzt nicht, was es für einen Aufwand bedeutet auf der SPS eine TCP Verbindung aufzubauen. Gibt es da keine fertigen Bausteine ? Es dürfte auch Geld kosten. Das ist nicht das Problem.

    Gruß

    Christof

  5. #5
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Auf der S7 ist das kein großer Act. Es gehen auf jeden Fall größere Frames, das muss dann aber halt aktiv von der SPS angestoßen werden. Bei aktuellen CPs kann eine Telegramm bis zu 8192 Bytes groß sein!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  6. #6
    foreach ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.11.2012
    Beiträge
    12
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hast du da mal ein Link zu wie man sowas SPS-seitig integriert.
    Das Problem dabei ist, daß ich diese Aufgabe delegieren muß und ich nicht weiß wie es geht.

    Den anderen Vorschlag mit dem gleichzeitigen/paralellem Zugriff setze ich gerade um. Ich melde mich wenn es fertig ist und wenn ich Geschwindigkeits-Messergebnisse habe.

    Bis dahin

    Christof

  7. #7
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Zitat Zitat von foreach Beitrag anzeigen
    Hast du da mal ein Link zu wie man sowas SPS-seitig integriert.
    Das Problem dabei ist, daß ich diese Aufgabe delegieren muß und ich nicht weiß wie es geht.

    Den anderen Vorschlag mit dem gleichzeitigen/paralellem Zugriff setze ich gerade um. Ich melde mich wenn es fertig ist und wenn ich Geschwindigkeits-Messergebnisse habe.

    Bis dahin

    Christof
    Wie setzt du das mit dem Paralellen zugriff den um? (da dies in LibNodave ja nicht implementiert ist)...
    Was für eine CPU hast du den ?? eine P-CPU oder nutzt du einen CP? Weil je nach dem sind es unterschiedliche Bausteine die man auf der SPS verwenden muß! Wobei es bei einem CP einfacher ist, da man die Verbindung in NetPro Projektiert, und auf der SPS einfach nur noch den Baustein AG_SEND aufrufen muß (Mit einem Zeiger auf die zu sendenden Daten!)!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  8. #8
    foreach ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    21.11.2012
    Beiträge
    12
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Ich bastel mir jeweils einen Thread um eine libnodave connection und instanziere das Ganze dann z.B. 5 Mal.
    Die Threads laufen dann parallel holen dann jeweils einen Block von der SPS. Danach sind sie wieder frei und holen den nächsten zu holenden Block. Bis alle Blöcke da sind.
    Wie gesagt, wenn ich Meßergebnisse habe melde ich mich.

    Zur SPS: Wir haben alle möglichen S7-Typen im Einsatz. Je nach Kunde und Budget.

    Gruß,

    Christof

  9. #9
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard

    Es ist halt unterschiedlich zu Programmieren, wenn udu eine PN-CPU ohne CP oder einen CP einsetzt!
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

  10. #10
    Registriert seit
    17.06.2004
    Ort
    Offenau
    Beiträge
    3.746
    Danke
    209
    Erhielt 421 Danke für 338 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn Ich das hier richtig lese, solltest du auch noch das Fetch/Write verwenden können ohne auf der S7 was zu Programmieren, und damit auch bis zu 8192 Bytes übertragen können....
    http://support.automation.siemens.co...ad=treecontent
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten

Ähnliche Themen

  1. libnodave: Drehen von Bytes nicht immer nötig?!
    Von poppycock im Forum Hochsprachen - OPC
    Antworten: 9
    Letzter Beitrag: 03.06.2011, 18:37
  2. S5: IP 240 geänderte Spindelsteigung
    Von dodo im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 18.02.2009, 16:24
  3. max bytes mit libnodave
    Von Praseodym im Forum Hochsprachen - OPC
    Antworten: 4
    Letzter Beitrag: 13.02.2008, 12:29
  4. Daten größer 240 Bytes versenden...
    Von Jochen Kühner im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 31.03.2007, 00:56
  5. td1-240/8
    Von Sommerfeld im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 22.11.2003, 13:41

Stichworte

Lesezeichen

Berechtigungen

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