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

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

Thema: Übertragungsverschiebungen von einer CPU zur andern

  1. #1
    Registriert seit
    28.01.2014
    Beiträge
    6
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich habe eine S7 417-4 mit einem CP443-1 und schicke 80 Byte über eine TCP verbindung an eine S7 414-3 mit einem CP443-1.
    Gesendet wird mit dem FC5 AG_SEND und empfangen mit dem FC6 AG_RECV.
    Das funktioniert nun schon seit Jahren problemlos. Da ich 9 weitere wörter benötige habe ich die Datenbausteine angepasst und die
    Sende- und Empfangslänge auf 98 Byte angepasst und alle geänderten Bausteine übertragen.
    Jetzt zum Problem: Mein erstes Byte fing nun mitten im Datenbaustein an. Wenn ich einen zu kurzen Sende- Oder Empfangsbereich
    angebe verschiebt sich die Startadresse im Ziel Datenbaustein. Man kann ja immer nur einen programmstand nach dem anderen
    übertragen und ich kann mir nicht erklären wie es dazu kommt und wie man es wieder in den Griff bekommt das nun das erste
    Byte wieder am anfag des Datenbausteins geschrieben wird. Selbst das rückgängig machen aller änderungen haben nicht geholfen,
    das erste Byte wird nach jeder änderung der Sende- oder Empfangslänge an einer andern Stelle geschrieben.
    Zitieren Zitieren Übertragungsverschiebungen von einer CPU zur andern  

  2. #2
    Registriert seit
    08.02.2007
    Ort
    A-2320
    Beiträge
    2.255
    Danke
    244
    Erhielt 332 Danke für 303 Beiträge

    Standard

    Hast Du schon einen Neustart der CPU's probiert?

    Und hast Du Länge und den Puffer angepasst?
    Geändert von borromeus (17.02.2016 um 08:50 Uhr)

  3. #3
    benjamin0079 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2014
    Beiträge
    6
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Die Länge und den Puffer habe ich angepasst und zig mal überprüft, habe auch einen Kollegen drüberschauen lassen, vier Augen sehen ja mehr als zwei.
    Einen Neustart hab ich nicht probiert und kann ich auch nicht so ohne weiteres da beide Anlagen im Betrieb sind.

  4. #4
    Registriert seit
    12.09.2006
    Beiträge
    125
    Danke
    26
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Hallo ,
    CP unter Spezialdiagnose einmal stoppen und starten . Erst dann werden die neuen Datenlängen übernommen.

  5. #5
    benjamin0079 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2014
    Beiträge
    6
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke, das werd ich probieren.
    Reicht es dann den Empänger CP zu starten?

  6. #6
    Registriert seit
    12.09.2006
    Beiträge
    125
    Danke
    26
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Hallo ,
    wenn du auf beiden Seiten Änderungen vorgenommen hast dann beide Neustarten.

  7. #7
    benjamin0079 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2014
    Beiträge
    6
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hängt das Problem vielleicht mit der Verbindung (TCP) zusammen, ich kann mich errinern das ich bei einer ISO-Verbindung schon die
    Länge und diverses geändet habe ohne irgendtetwas neu zu starten.
    Ich würde halt auch gern wissen warum es so ist.

  8. #8
    Registriert seit
    29.03.2004
    Beiträge
    5.792
    Danke
    144
    Erhielt 1.706 Danke für 1.238 Beiträge

    Standard

    Bei einer TCP-Übertragung gibt es im Gegensatz zu ISO keine Längenkennung der Daten. TCP ist ein Datenstrom.
    Wenn du selber keine Längen- oder Anfangs/Endekennung eingebaut hast, dann passiert es dass wenn du auf einer Seite anfängst die Länge z.B. von 100 auf 104 Bytes änderst, und die Genenstelle weiterhin 100 Bytes liest, die "überschüssigen" 4 Bytes dann im Puffer landen. Beim nächsten Lesen von 100 Bytes hast du dann die 4 Bytes Versatz. Das bekommst du erst wieder gelöst, indem die internen Puffer komplett zurückgesetzt werden (oder Verbindung trennen und neu aufbauen, z.B. Netzwerkkabel ziehen).
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  9. Folgende 2 Benutzer sagen Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    benjamin0079 (18.02.2016),borromeus (17.02.2016)

  10. #9
    benjamin0079 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    28.01.2014
    Beiträge
    6
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Super! Vielen Dank, das erklärt mir mein Problem.

  11. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.294
    Danke
    932
    Erhielt 3.321 Danke für 2.683 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Du kommunizierst mit 2 S7. Warum benutzt Du da überhaupt eine TCP-Verbindung? Bei TCP-Verbindungen muß man sich selbst einen Telegrammrahmen basteln und der Empfänger muß sich auf den Rahmen "aufsynchronisieren" können (mehr oder weniger Bytes aus dem Empfangspuffer des CP abholen). Nur weil eine TCP-Verbindung meist "auf Anhieb" funktioniert, heißt es nicht, daß da irgendeine Synchronisation automatisch stattfinden würde. TCP ist ein (unstrukturierter) Stream. Empfehlung: benutze eine ISO-on-TCP-Verbindung oder eine S7-Verbindung mit BSEND/BRCV.
    Nachtrag: wird bei Deiner TCP-Verbindung irgendwie die Empfangsdatenintegrität geprüft?

    Harald
    Geändert von PN/DP (17.02.2016 um 22:50 Uhr)
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  12. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    benjamin0079 (18.02.2016)

Ähnliche Themen

  1. Step 7 Fragen zur Vermeidung von CPU-Stop
    Von Xplosion im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 13.02.2014, 00:19
  2. Antworten: 1
    Letzter Beitrag: 19.03.2011, 13:53
  3. Antworten: 17
    Letzter Beitrag: 21.08.2008, 07:47
  4. Abnahme von Sicherheitsprogrammen einer F-CPU
    Von mitchih im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 28.10.2007, 10:16
  5. CPU-Kopplung von Simulations-SPSen zur einfachen Anlagensimulation
    Von Gerhard Bäurle im Forum Werbung und Produktneuheiten
    Antworten: 0
    Letzter Beitrag: 13.10.2006, 14:13

Lesezeichen

Berechtigungen

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