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

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

Thema: PUT / GET, S7-300 zu mehreren S7-1200, Fehler Code dezimal 20

  1. #1
    Registriert seit
    28.09.2005
    Beiträge
    435
    Danke
    118
    Erhielt 91 Danke für 76 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    ich habe hier eine S7-300 mit einem CP343-1 über den ich mit PUT/GET insgesamt drei S7-1200 auslesen bzw. einen Sollwert schreiben möchte.


    Ich habe dazu für jede Verbindung einen FB welcher insgesamt 15 GET und einen PUT Aufruf enthalten (Diese werden der Reihe nach abgearbeitet). Jede diese Verbindung funktioniert für sich alleine ohne Probleme. Der Plan war, dass ich die Daten von der ersten S7-1200 lesen und wenn das abgeschlossen ist die nächste beginne – also nie mehrere Verbindungen gleichzeitig. Da kommt jedoch dann der Fehler 20:


    „Maximale Anzahl paralleler Aufträge/Instanzen ist überschritten
    Die Instanzen wurden bei CPU-RUN überladen (STOP-RUN-Übergang der CPU oder des CP ist erforderlich.)
    Ist beim Erstaufruf möglich“


    Es funktioniert dann immer nur die Verbindung die ich als erster gestartet habe, die anderen beiden nicht. Nach einem Stopp/Start der CPU, kann ich jeweils eine der drei Verbindungen ohne Probleme aufrufen.


    Gibt es da irgendeine unbekannte Grenze? Kann der CP343-1 nur eine Verbindung?


    Bitte um Hilfe.

    Lg Stefan

    2018-10-10 at 13-08-24.jpg2018-10-10 at 10-53-19.jpg
    Zitieren Zitieren PUT / GET, S7-300 zu mehreren S7-1200, Fehler Code dezimal 20  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    12.423
    Danke
    1.002
    Erhielt 3.665 Danke für 2.958 Beiträge

    Standard

    Verwendest Du die richtigen FB14/FB15 aus der Bibliothek SIMATIC_NET_CP?
    Schaltest Du erst zum nächsten Auftrag wenn der vorherige mit NDR oder ERROR beendet ist?
    Verwendest Du für eventuell parallele Aufträge auch verschiedene GET-Instanzen?
    Versuche mal nach STOP/RUN den Auftrag mit der größten Datenlänge zuerst auszuführen.

    Welche CPU hast Du genau? Bestellnummer und Firmwareversion
    Welchen CP hast Du genau? Bestellnummer und Firmwareversion
    Sind da noch weitere Verbindungen aktiv? Wie sieht Baugruppenzustand > Kommunikation der CPU aus? (zeig mal ein Bild)

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    12.423
    Danke
    1.002
    Erhielt 3.665 Danke für 2.958 Beiträge

    Standard

    PS: auf 8 Verbindungen gleichzeitig GET sollte möglich sein.
    Wie werden die Kommunikationsressourcen in der S7-300 belegt?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #4
    Avatar von mst
    mst ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    28.09.2005
    Beiträge
    435
    Danke
    118
    Erhielt 91 Danke für 76 Beiträge

    Standard

    Hallo Harald, danke für die Hilfe.

    Zitat Zitat von PN/DP Beitrag anzeigen
    Verwendest Du die richtigen FB14/FB15 aus der Bibliothek SIMATIC_NET_CP? – Natürlich hatte ich die Falschen, jatzt hab ich die besagten aus der SIMATIC_NET_CP Bibliothek.
    Schaltest Du erst zum nächsten Auftrag wenn der vorherige mit NDR oder ERROR beendet ist? – JA
    Verwendest Du für eventuell parallele Aufträge auch verschiedene GET-Instanzen? - JA
    Versuche mal nach STOP/RUN den Auftrag mit der größten Datenlänge zuerst auszuführen. – Ist bereits so, ich lese 14x149Bytes 1x49Bytes

    Welche CPU hast Du genau? Bestellnummer und Firmwareversion 317-2AK14-0AB0 V3.3.12
    Welchen CP hast Du genau? Bestellnummer und Firmwareversion 343-1EX30-0XE0 V3.0.0
    Sind da noch weitere Verbindungen aktiv? Wie sieht Baugruppenzustand > Kommunikation der CPU aus? (zeig mal ein Bild) – Ich habe ISO on TCP Verbindungen, diese laufen über einem anderen CP 343-1 Lean

    Harald

    Ich habe jetzt die richtigen Bausteine, und es laufen auch zwei der drei Verbindgen jetzt reibungslos. Wenn ich die dritte Verbindung starte (gleiche Maschine, gleicher Verbindungspartner), bleibt das ganze bei einem GET Befehl stehen (meistens beim ersten), dieser gibt die Meldung aus DEC11
    „Warnung: Neuer Auftrag ist unwirksam, da vorangegangener Auftrag noch nicht abgeschlossen ist. Der Auftrag wird bereits in einer Prioritätsklasse mit niedrigerer Priorität bearbeitet.“
    Ich sehe auch Im Web Interface vom CP, das sich die Anzahl der gesendeten Aufträge permanent erhöht. Jedoch wird der GET Aufruf nicht mit DR oder ERROR quittiert. Stopp/Start der CPU und des Verbindungspartners hab ich schon mehrmals gemacht.

    2018-10-11 at 10-12-06.jpg2018-10-11 at 10-13-05.png

  5. #5
    Registriert seit
    06.10.2003
    Beiträge
    3.693
    Danke
    491
    Erhielt 569 Danke für 452 Beiträge

    Standard

    Versuche es mal mit einer etwas größeren OB1-Zykluszeit und/oder mit den Ressourcen-Einstellungen "Zyklusbelastung durch Kommunikation" in der HW-Konfig der CPU. Wie groß ist die Zykluszeit überhaupt?
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

  6. #6
    Avatar von mst
    mst ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    28.09.2005
    Beiträge
    435
    Danke
    118
    Erhielt 91 Danke für 76 Beiträge

    Standard

    Zitat Zitat von Onkel Dagobert Beitrag anzeigen
    Versuche es mal mit einer etwas größeren OB1-Zykluszeit und/oder mit den Ressourcen-Einstellungen "Zyklusbelastung durch Kommunikation" in der HW-Konfig der CPU. Wie groß ist die Zykluszeit überhaupt?
    Anbei die Screenshots zu den Einstellungen bzw. Zykluszeiten.
    Du meinst das ich eine minderst Zykluszeit einstellen soll? - Das ist bei mir ausgegraut.
    Zum Thema Belastung der Zykluszeit durch Kommunikation - die eingestellten 20% berufen sich auf die Zykluszeitüberwachung von max. 150ms oder auf die Tatsächliche Zykluszeit?

    2018-10-11 at 13-26-02.png2018-10-11 at 13-25-35.png

  7. #7
    Avatar von mst
    mst ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    28.09.2005
    Beiträge
    435
    Danke
    118
    Erhielt 91 Danke für 76 Beiträge

    Standard

    Hab jetzt zum Probieren die Zykluszeit durch Kommunikation auf 50% gestellt. Nach wie vor gleiches verhalten

  8. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    12.423
    Danke
    1.002
    Erhielt 3.665 Danke für 2.958 Beiträge

    Standard

    Zitat Zitat von mst Beitrag anzeigen
    Zum Thema Belastung der Zykluszeit durch Kommunikation - die eingestellten 20% berufen sich auf die Zykluszeitüberwachung von max. 150ms oder auf die Tatsächliche Zykluszeit?
    auf die tatsächliche Zykluszeit. siehe den [Hilfe]-Button in dem Einstelldialog

    Zitat Zitat von mst Beitrag anzeigen
    „Warnung: Neuer Auftrag ist unwirksam, da vorangegangener Auftrag noch nicht abgeschlossen ist. Der Auftrag wird bereits in einer Prioritätsklasse mit niedrigerer Priorität bearbeitet.“
    [...]Jedoch wird der GET Aufruf nicht mit DR oder ERROR quittiert.
    Wie sieht Dein Programm der GET-Aufrufe aus? Läuft da was in verschiedenen OBs? Hast Du vielleicht einen Fehler in der Auftragssteuerung?

    Warum verwendest Du PUT/GET? Kannst Du nicht eine ISO-on-TCP- oder TCP-Verbindung programmieren mit AG_SEND/AG_RECV? Da könntest Du die reichlich 2100 Bytes zu einem Telegramm zusammenfassen und in einem Rutsch übertragen. Ohne großartige Auftragsverriegelung. Und schneller.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    12.423
    Danke
    1.002
    Erhielt 3.665 Danke für 2.958 Beiträge

    Standard

    Ich würde für den CP343-1 mal ein Firmwareupdate auf V3.1.3 machen, das geht einfach und schnell.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. #10
    Registriert seit
    06.10.2003
    Beiträge
    3.693
    Danke
    491
    Erhielt 569 Danke für 452 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Um die Zykluszeit auf ein Minimum zu verlängern, kannst du z.Bsp. den OB1 mit dem OB35 synchronisieren. Dazu am Ende des OB1 einen Merker abfragen, der im OB35 gesetzt wird.

    Etwa so:
    Code:
    FUNCTION "ONKELS_ZYKLUSSYNCHRONISER ;-)": VOID
    
    VAR_IN_OUT
      SYNCH                : BOOL;                         // 1==Zyklusende, muss extern zyklisch gesetzt werden!
    END_VAR
    
    BEGIN
    
    //*** Schleife, bis Mindestzykluszeit erreicht ist
       REPEAT;
         UNTIL SYNCH
       END_REPEAT;
       SYNCH := false;
    
    END_FUNCTION
    Ich glaube aber eigentlich nicht wirklich, dass es in diesem Fall hilft.

    Es ist nun an der Zeit, uns einen weiteren Hinweis auf des Rätsels Lösung zu liefern! Ein bisschen Programmcode wäre nicht schlecht. Der wahrscheinlichste Fehler ist wohl der, dass ein neuer Auftrag angestoßen wird, während ein anderer noch nicht abgeschlossen ist. Zumindest sagt das die Diagnose.
    Es gibt viel mehr Leute, die freiwillig aufgeben, als solche, die echt scheitern.
    Henry Ford

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 11.04.2017, 18:09
  2. Step 7 SFB15/14 Put/Get mit mehreren Datenbausteinen?
    Von JFKjo im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 31.03.2017, 21:36
  3. Antworten: 2
    Letzter Beitrag: 29.03.2017, 11:39
  4. TIA Daten mit PUT von S7-300 auf S7-1200 senden geht nicht
    Von captainchaos666 im Forum Simatic
    Antworten: 29
    Letzter Beitrag: 18.11.2013, 08:20
  5. Antworten: 21
    Letzter Beitrag: 25.01.2013, 09:10

Stichworte

Lesezeichen

Berechtigungen

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