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

Ergebnis 1 bis 7 von 7

Thema: S7 1200 Empfangsspeicher löschen

  1. #1
    Registriert seit
    16.09.2009
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Forum,
    Als neuer Nutzer des TIA-Portal gleich die erste Hürde.
    Ich will eine offene Verbindung mit den Bausteinen TCON, TRECV und TSEND aufbauen. (temporär auf eine 315)
    Stand:
    Die Verbindung wird aufgebaut, Daten werden gesendet. Partner spiegelt die gesendeten Daten zurück.
    Nun das Problem: Nachdem das Empfangen einige Zeit funktioniert hat, empfange ich plötzlich die Daten auf 2 Telegramme verteilt.
    (ich arbeite mit fester Telegrammlänge (LEN <>0)).
    Gibt es eine Möglichkeit, den Empfangsspeicher zu löschen / initialisieren / redeten ?

    Noch einen schönen Nachmittag

    Magoo50
    Zitieren Zitieren S7 1200 Empfangsspeicher löschen  

  2. #2
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.367
    Danke
    457
    Erhielt 696 Danke für 521 Beiträge

    Standard

    Zitat Zitat von Magoo50 Beitrag anzeigen
    Die Verbindung wird aufgebaut, Daten werden gesendet. Partner spiegelt die gesendeten Daten zurück.
    Wer ist der Partner?

    Zitat Zitat von Magoo50 Beitrag anzeigen
    Nun das Problem: Nachdem das Empfangen einige Zeit funktioniert hat, empfange ich plötzlich die Daten auf 2 Telegramme verteilt.
    (ich arbeite mit fester Telegrammlänge (LEN <>0)).
    Wenn du mit fester Länge arbeitest? Ist dann nur ein Teil der Daten im ersten bzw. zweiten Telegramm und der Rest ist Leer?
    Wie groß ist LEN?

    Zitat Zitat von Magoo50 Beitrag anzeigen
    Gibt es eine Möglichkeit, den Empfangsspeicher zu löschen / initialisieren / redeten ?
    Was passiert wenn die CPU neustartest oder die Instanz-DBs bzw. den Kommunikations-DB neu einspielst?
    Ist dann wieder Ruhe?

    Ob es nicht besser ist zuerst die Ursache für dieses Verhalten zu finden.
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  3. #3
    Magoo50 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.09.2009
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo RONIN,

    danke für die schnelle Antwort.

    [QUOTE=RONIN;526232]Wer ist der Partner?[/QUOTE]

    Zum Testen nutze ich eine S7 325-2 PN/DP

    [QUOTE=RONIN;526232]Wenn du mit fester Länge arbeitest? Ist dann nur ein Teil der Daten im ersten bzw. zweiten Telegramm und der Rest ist Leer?
    Wie groß ist LEN?[/QUOTE]

    Ja genau. Als Länge habe ich 28 Bytes

    [QUOTE=RONIN;526232]Was passiert wenn die CPU neustartest oder die Instanz-DBs bzw. den Kommunikations-DB neu einspielst?
    Ist dann wieder Ruhe?[/QUOTE]

    Nach Neustart, bzw Laden der DB's erfolgt keine Besserung

    [QUOTE=RONIN;526232]Ob es nicht besser ist zuerst die Ursache für dieses Verhalten zu finden.[/QUOTE]

    Da gebe ich Dir recht.
    Der Punkt ist doch, ich sende 28 Byte zur S1200 (zu sehen im Sendebereich der S7 315)
    Die S7 1200 empfängt 28 Bytes, zu sehen an "RCVD_LEN" in Verbindung mit "NDR".
    Die Daten beginnen jedoch nicht im 1. Byte. Nach einigen Bytes mit 16#00 beginnen die Nutzdaten
    bis zur Menge von 28 Byte. Danach folgt ein weiteres Telegramm mit den restlichen Nutzdaten aufgefüllt
    mit leeren Bytes bis Telegramm-Ende -28 Byte-

    Das dieser Zustand eintritt ist schon schlimm,
    doch wie kann ich den Zustand wieder stabil und sicher bekommen ?

    Geändert von Magoo50 (23.02.2015 um 17:19 Uhr)

  4. #4
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.367
    Danke
    457
    Erhielt 696 Danke für 521 Beiträge

    Standard

    Zitat Zitat von Magoo50 Beitrag anzeigen

    Nach Neustart, bzw Laden der DB's erfolgt keine Besserung

    Anders, wenn du die Kommikation stoppst (kein REQ an den T-Bausteinen, T-DISCON oder CPU-Stopp auf beiden Seiten) und dann die
    Instanz-DBs der T-Bausteine glattbügelst und dann auch noch die Komm-DBs reinitialisierst, dann sollte eigentlich Schluss sein.

    Zitat Zitat von Magoo50 Beitrag anzeigen
    Der Punkt ist doch, ich sende 28 Byte zur S1200 (zu sehen im Sendebereich der S7 315)
    Die S7 1200 empfängt 28 Bytes, zu sehen an "RCVD_LEN" in Verbindung mit "NDR".
    Die Daten beginnen jedoch nicht im 1. Byte. Nach einigen Bytes mit 16#00 beginnen die Nutzdaten
    bis zur Menge von 28 Byte. Danach folgt ein weiteres Telegramm mit den restlichen Nutzdaten aufgefüllt
    mit leeren Bytes bis Telegramm-Ende -28 Byte-
    Überschneiden sich die Sende und Empfangsdaten-Bereiche an den T-Bausteinen?
    Soll heißen: Arbeiten TSEND und TRECV im selben Datenbereich?

    Voll allem dort wo du das Telegramm "spiegelst".
    TSEND und TRECV arbeiten azyklisch zu OB1.
    Der Inhalt der Empfangsdaten eines TRECV ist bis zum Ausgeben des NDR nicht konsistent, könnte also sein
    dass du mit dem TSEND auf Daten zugreifst die, sozusagen, noch nicht vollständig angekommen sind.

    Bin mir allerdings, aus dem Kopf raus, über das Konsistenzverhalten der T-Bausteine bei LEN<>0 nicht sicher.
    Versuch doch mal
    die Daten nur nach Erhalt des NDR vom TRECV, in den Sendebereich des TSEND zu kopieren.


    Zitat Zitat von Magoo50 Beitrag anzeigen

    Das dieser Zustand eintritt ist schon schlimm,
    Wie gesagt, normal ist es nicht. Aber ich glaube es wird einen Grund dafür geben.
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  5. #5
    Magoo50 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.09.2009
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Morgen, hier bin ich noch einmal,

    Zitat Zitat von RONIN Beitrag anzeigen

    Anders, wenn du die Kommikation stoppst (kein REQ an den T-Bausteinen, T-DISCON oder CPU-Stopp auf beiden Seiten) und dann die
    Instanz-DBs der T-Bausteine glattbügelst und dann auch noch die Komm-DBs reinitialisierst, dann sollte eigentlich Schluss sein.
    All das schon versucht, leider ohne ersichtlichen Erfolg.

    Zitat Zitat von RONIN Beitrag anzeigen

    Überschneiden sich die Sende und Empfangsdaten-Bereiche an den T-Bausteinen?
    Soll heißen: Arbeiten TSEND und TRECV im selben Datenbereich?


    Nein, Empfangs- und Sendebereich sind zwar im selben DB, haben aber getrennt Bereiche.

    Zitat Zitat von RONIN Beitrag anzeigen

    Voll allem dort wo du das Telegramm "spiegelst".
    TSEND und TRECV arbeiten azyklisch zu OB1.
    Der Inhalt der Empfangsdaten eines TRECV ist bis zum Ausgeben des NDR nicht konsistent, könnte also sein
    dass du mit dem TSEND auf Daten zugreifst die, sozusagen, noch nicht vollständig angekommen sind.
    Das Spiegeln der Daten geschieht in der Partner-CPU (315-2 PN/DP)
    Auch hier sind die Empfangs- und Sendebereiche getrennt und die Daten in den Bereichen im Online so wie erwartet.

    Zitat Zitat von RONIN Beitrag anzeigen
    Wie gesagt, normal ist es nicht. Aber ich glaube es wird einen Grund dafür geben.
    Du triffst den Nagel auf den Kopf.

    Das bisher beschrieben Problem bestand bei einem Empfangsbereich von 50 Bytes und einer Länge von 28 Bytes.
    Ich habe jetzt den Empfangsbereich auf ebenfalls 28 Bytes reduziert.
    Dadurch erhalte ich nur noch ein Telegramm, hier aber die Daten seltsam gemischt. Ein System lässt sich hierbei nicht erkennen.

    Ein weiteres Phänomen:
    Wenn die Partner-SPS nicht sendet, die Test-SPS aber empfangsbereit ist, so meldet sie mir alle 28(!) Sekunden ein Telegramm,
    mit 28 mal dem gleichen Byte-Inhalt, und zwar das 1. Byte des letzten empfangenen Telegramm.
    (Bei einem Empfangsbereich von 50 Bytes alle 50 Sek.)

    Meine Sorge besteht darin, dass durch Fehlverhalten des Partners (z.B. falsche Telegrammlänge) die SPS in einen fehlerhaften Zustand gerät,
    der durch Programmierung nicht abgefangen bzw. wieder bereinigt werden kann.

    Danke für die Unterstützung

  6. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.792
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard

    Vielleicht solltest du dein Programm mal hier einstellen ...

  7. #7
    Magoo50 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    16.09.2009
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Forum,

    ich möchte dieses Problem abschliessen.

    Danke für die Versuche mir zu helfen.
    Leider habe ich die Partner-SPS (S7-319) unsauber programmiert, sodass sie sporadisch Telegramme einstreute.

    Nochmals vielen Dank und bis zum nächsten Mal

    Magoo50

Ähnliche Themen

  1. DB löschen
    Von misconduct im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 11.11.2016, 10:30
  2. Antworten: 21
    Letzter Beitrag: 25.01.2013, 09:10
  3. Datenaustausch zwischen S7-1200 und S7-1200
    Von baschan im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 09.12.2011, 00:27
  4. UR Löschen
    Von sebiwars im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 21.03.2011, 18:10
  5. DB löschen
    Von c.wehn im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 19.05.2010, 12:16

Lesezeichen

Berechtigungen

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