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

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

Thema: TwinSAFE - Not-Aus wenn Breakpoint im Debug-Modus erreicht wird

  1. #1
    Registriert seit
    03.03.2011
    Ort
    Tettnang
    Beiträge
    123
    Danke
    24
    Erhielt 1 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Newsgroup,

    Ich habe festgestellt (und meine das auch schon einmal gehört zu haben), daß in Zusammenhang mit TwinSAFE (EL6900) immer dann ein NOT-AUS ausgelöst wird, wenn das SPS-Programm debuggt wird und ein Breakpoint erreicht wird.
    Dies passiert (glaube ich) weil die SPS in diesem Fall nicht mehr mit der TwinSAFE-Klemme kommunizieren kann, weil das Programm auf dem Breakpoint 'steht'.

    Könnt Ihr dieses Verhalten bestätigen?
    Mache ich vielleicht noch etwas falsch?
    Wie handhabt Ihr das?

    Das Verhalten würde doch bedeuten daß ich im Prinzip nicht mehr debuggt werden darf wenn die Anlage nicht in den NOT-AUS gehen soll.


    Ist die Lösung vielleicht einen eigenen Task anzulegen oder sogar eine weitere SPS-Runtime zu verwenden?




    Ich hoffe auf Antworten, Michael
    Geändert von twincatter (13.01.2012 um 12:04 Uhr)
    Zitieren Zitieren TwinSAFE - Not-Aus wenn Breakpoint im Debug-Modus erreicht wird  

  2. #2
    Registriert seit
    19.11.2006
    Beiträge
    1.346
    Danke
    6
    Erhielt 254 Danke für 231 Beiträge

    Standard

    Zitat Zitat von twincatter Beitrag anzeigen
    Ich habe festgestellt (und meine das auch schon einmal gehört zu haben), daß in Zusammenhang mit TwinSAFE (EL6900) immer dann ein NOT-AUS ausgelöst wird, wenn das SPS-Programm debuggt wird und ein Breakpoint erreicht wird.
    Dies passiert (glaube ich) weil die SPS in diesem Fall nicht mehr mit der TwinSAFE-Klemme kommunizieren kann, weil das Programm auf dem Breakpoint 'steht'.

    Könnt Ihr dieses Verhalten bestätigen?
    Mache ich vielleicht noch etwas falsch?
    Wie handhabt Ihr das?

    Das Verhalten würde doch bedeuten daß ich im Prinzip nicht mehr debuggt werden darf wenn die Anlage nicht in den NOT-AUS gehen soll.
    Das beschrieben Verhalten ist korrekt. Nach einem Breakpoint erfolgt kein Feldbusupdate mehr (weil der am Ende eines jeden PLC-Zyklus stattfindet).
    => Also der ganze Bus steht.
    Kein Update auf dem Bus bedeutet der Watchdog der Ausgangsklemmen (und auch der Safety-Klemmen) schlägt zu, woraufhin alle Klemmen in den definierten Stop-Zustand, bzw. die Safety-Klemmen in den sicheren Zustand gehen.

    Man debuggt eine Maschine nicht mit Breakpoints

    Wofür braucht man Breakpoints?

  3. #3
    Registriert seit
    09.11.2007
    Ort
    Rhein Main (Darmstadt)
    Beiträge
    663
    Danke
    61
    Erhielt 112 Danke für 80 Beiträge

    Standard

    Zitat Zitat von trinitaucher Beitrag anzeigen
    Man debuggt eine Maschine nicht mit Breakpoints

    Wofür braucht man Breakpoints?
    Manchmal geht es halt nicht ohne, oder sind mir da echte Wunder entgangen?

    Das Problem besteht leider auch in Verbundsystemen mehrerer SPS (z.B. über CAN verbunden mit Heartbeat Überwachung oder NodeGuarding).

    Aber wenn es andere Lösungen gibt, immer her damit!
    Als Freelancer immer auf der Suche nach interessanten Projekten.

  4. #4
    twincatter ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.03.2011
    Ort
    Tettnang
    Beiträge
    123
    Danke
    24
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo trinitaucher,

    erst einmal vielen Dank für Deine Antwort.
    Immerhin weiss ich jetzt dass das Verhalten korrekt ist.

    Ich habe die TwinSAFE-Klemmen erst heute in Betrieb genommen (mein erstes Projekt mit TwinSAFE und überhaupt mein erstes Maschinenprojekt).
    Ohne die TwinSAFE-Klemmen konnte ich das Projekt schön debuggen, I/Os und MotionControl hat einwandfrei funktioniert.
    "Man debuggt eine Maschine nicht mit Breakpoints "

    OK - debuggen einer Maschine ist nicht gut, aber welche Alternative schlägst Du vor?

    Alles im Vorfeld durchzusimulieren, auf die Maschine zu laden, und dann funktioniert alles auf Anhieb scheint mir kaum realistisch.

    Bin sehr interessiert wie das Programmierer mit viel Erfahrung handhaben. Bin gerne bereit dazuzulernen.

    Danke und ein schönes Wochenende, Michael

  5. #5
    Registriert seit
    25.11.2010
    Ort
    OWL
    Beiträge
    750
    Danke
    27
    Erhielt 165 Danke für 143 Beiträge

    Standard

    Breakpoints am lebenden Objekt sind wirklich zu gefährlich, die Maschine könnte den Begriff zu wörtlich nehmen.
    Wenn eine komplexe Verknüpfung oder Berechnung nicht das erwartete Ergebnis bringt und ich einfach nicht dahinter komme, schreibe ich zeitweilig Zwischenergebnisse auf Hilfsvariablen, um den Vorgang besser beobachten zu können. Bei Ablaufsteuerungen sehe ich grundsätzlich einen Einzelschrittbetrieb vor, um die Bewegungen der Maschine einzeln ausführen zu können, bevor ich den ersten Automatikzyklus starte.

  6. Folgende 2 Benutzer sagen Danke zu StructuredTrash für den nützlichen Beitrag:

    RobiHerb (13.01.2012),twincatter (13.01.2012)

  7. #6
    Registriert seit
    19.11.2006
    Beiträge
    1.346
    Danke
    6
    Erhielt 254 Danke für 231 Beiträge

    Standard

    Zitat Zitat von twincatter Beitrag anzeigen
    OK - debuggen einer Maschine ist nicht gut, aber welche Alternative schlägst Du vor?

    Alles im Vorfeld durchzusimulieren, auf die Maschine zu laden, und dann funktioniert alles auf Anhieb scheint mir kaum realistisch.
    Zitat Zitat von RobiHerb Beitrag anzeigen
    Manchmal geht es halt nicht ohne, oder sind mir da echte Wunder entgangen?
    Im Büro kann man natürlich machen was man will, aber an der Maschine sind Breakpoints für meine Begriffe ein No-Go.

    Das Wunder zum Anschauen von Zuständen im Programm heißt z. B. "Scope View" und gibt's schon seit Ewigkeiten.

    Oder den Tipp von StructuredTrash nutzen:
    Zitat Zitat von StructuredTrash Beitrag anzeigen
    Wenn eine komplexe Verknüpfung oder Berechnung nicht das erwartete Ergebnis bringt und ich einfach nicht dahinter komme, schreibe ich zeitweilig Zwischenergebnisse auf Hilfsvariablen, um den Vorgang besser beobachten zu können. Bei Ablaufsteuerungen sehe ich grundsätzlich einen Einzelschrittbetrieb vor, um die Bewegungen der Maschine einzeln ausführen zu können, bevor ich den ersten Automatikzyklus starte.
    Seit TwinCAT braucht man sich um Speicherplatz ja eigentlich keine großen Gedanken mehr zu machen.

  8. Folgender Benutzer sagt Danke zu trinitaucher für den nützlichen Beitrag:

    twincatter (13.01.2012)

  9. #7
    Registriert seit
    09.11.2007
    Ort
    Rhein Main (Darmstadt)
    Beiträge
    663
    Danke
    61
    Erhielt 112 Danke für 80 Beiträge

    Standard

    Zitat Zitat von trinitaucher Beitrag anzeigen
    Im Büro kann man natürlich machen was man will, aber an der Maschine sind Breakpoints für meine Begriffe ein No-Go.

    ....

    Auf die reale Maschine zu gehen ist natürlich gefährlich, wenn man Breakpoints setzt. Aber selbst da ist es manchmal wohl unumgänglich, da steht dann immer einer bereit, den Notaus zu betätigen.

    Aber bevor es soweit ist, testen wir immer am Modell (hier ein Bild eines Rettungsbühnen Modells mit 6 Intercontrol Digsy SPS und 2 Bedienständen mit 2 Visu Rechnern).

    .simul.jpg
    Als Freelancer immer auf der Suche nach interessanten Projekten.

  10. #8
    Registriert seit
    24.04.2008
    Ort
    Lübeck
    Beiträge
    324
    Danke
    8
    Erhielt 63 Danke für 62 Beiträge

    Standard

    Hallo Leute,

    man kann diesen Effekt umgehen, indem man eine weitere Task anlegt:

    Einfach im SystemManager eine Task anlegen (System / Additional Task / Rechtsklick / Append Task...).
    Diese Task dann mit Autostart konfigurieren, ein paar I/O Variablen anlegen und diese mit Klemmen verknüpfen.
    Dann triggert diese Task den Bus weiterhin, auch sollte die PLC stehen durch einen Breakpoint oder eine einfaches Stop.

    Gruß, Neals

  11. #9
    twincatter ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    03.03.2011
    Ort
    Tettnang
    Beiträge
    123
    Danke
    24
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Hallo Neals,

    vielen Dank für diese Informationen.
    Ich werde dies gleich morgen ausprobieren!

    Natürlich muss sorgfälltigst mit Breakpoints an einer laufenden Maschine umgegangen werden!

    Danke, Michael

  12. #10
    Registriert seit
    24.04.2008
    Ort
    Lübeck
    Beiträge
    324
    Danke
    8
    Erhielt 63 Danke für 62 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ok, ganz so einfach war es doch nicht...

    Ich musste eine zweite Laufzeit und darin die TwinSAFE Variablen anlegen.
    Dann im SystemManager als erstes alles mit der zweiten Laufzeit (TwinSAFE.tpy) verknüpfen, danach mit der ersten Laufzeit anfangen.
    Dadurch habe ich zwei komplett seperate Frames (0 = Standard 10ms, 1 = TwinSAFE 2ms) und wenn ich die erste Laufzeit stoppe, bleibt die zweite Laufzeit und TwinSAFE aktiv.

    Code:
    dq_SAFE_Run:= TRUE;
    
    tpErrAck(
        IN:= bReset
            AND di_SAFE_ComErr,
        PT:= T#100ms);
    
    dq_SAFE_ErrAck:= tpErrAck.Q;
    
    tpReset(
        IN:= bReset,
        PT:= T#200ms);
    
    dq_SAFE_Reset:= tpReset.Q;
    
    bReset:= FALSE;
    TwinSAFE_SysMan.PNG

  13. Folgender Benutzer sagt Danke zu Neals für den nützlichen Beitrag:

    twincatter (17.01.2012)

Ähnliche Themen

  1. SCL gibt Fehler wegen debug info aus
    Von Bensen83 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 22.01.2017, 22:32
  2. TwinSafe Verifier wird nicht angezeigt
    Von Halbleiter im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 06.11.2009, 11:08
  3. Thema sperren wenn es bearbeitet wird
    Von Paule im Forum Stammtisch
    Antworten: 6
    Letzter Beitrag: 19.06.2009, 18:50
  4. OPC Server wird nicht erreicht
    Von SPS_NEU im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 15.04.2009, 10:48
  5. Antworten: 4
    Letzter Beitrag: 18.08.2008, 12:15

Lesezeichen

Berechtigungen

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