Vorlaufzeigerstop durch WaitDi

  • Hallo zusammen,


    bei einer Zykluszeitoptimierung bin ich auf folgende Problem gestoßen:


    Der Roboter macht während einer Bewegung über mehrere Punkte einen zwischen drin ist ein Handshake mit der SPS. Obwohl das Handshake schon lange durchlaufen ist habe ich das Gefühl, dass genau diese Handshake mir einen Stoppunkt beschert.


    Programmcode mit Stop, Siehe Bild:

    Code
        MoveL\Conc, RelTool(pPickUpFixture{ProductCode},200,200,-300),vStep4,z50,tVacuumGripper\WObj:=wActFixture;
        
        SetDo doR2PartFinishedRel,1;
    
        mvHome\Zone:=z200;
        
        SetGo goStepMerker,22;
        WaitDi diR2PartFinishedAck,1;
        SetDo doR2PartFinishedRel,0;


    Programmcode ohne Stop:

    Wenn ich es wie im zweiten Code-Teil mache laufe ich Sauber durch.


    Sollte WaitDi nicht wenn das Signal beim erreichen von WaitDi schon 1 ist, keine Stop auslösen?


    Ich meine es läuft, aber irgendwie finde ich es nicht sehr schön.


    Gruß Christian

  • ANZEIGE
  • Dieses Verhalten ist mir neu. Probiere es zu Testzwecken mal mit der Funktion "WaitUntil diR2PartFinishedAck = 1;"

    Dieses Verhalten ist nicht neu. Wait löst einen Vorlauf-Stopp aus.

    Mit der IF-Verzweigung wird das umgangen.

    Gruß Roland


    Wie poste ich falsch?

    Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • Dieses Verhalten ist nicht neu. Wait löst einen Vorlauf-Stopp aus.

    Mit der IF-Verzweigung wird das umgangen.

    Auszug aus der Doku: "Wenn der Wert des Signals beim Abarbeiten der Instruktion korrekt ist, fährt das Programm einfach mit der nachfolgenden Instruktion fort."

  • Auszug aus der Doku: "Wenn der Wert des Signals beim Abarbeiten der Instruktion korrekt ist, fährt das Programm einfach mit der nachfolgenden Instruktion fort."

    Das hab ich in den letzten 20 Jahren noch nie gesehen.

    Gruß Roland


    Wie poste ich falsch?

    Nachdem ich die Suche und die FAQ erfolgreich ignoriert habe, erstelle ich das gleiche Thema in mehreren Unterforen, benutze einen sehr kreativen Titel wie "Hilfe", am Besten noch mit mehreren Ausrufezeichen, und veröffentliche einen so eindeutigen Text, dass sich jeder etwas Anderes darunter vorstellt.


    Ich bin wie ich bin. Die Einen kennen mich, die Anderen können mich.

    Konrad Adenauer

  • Hier nochmal als Screenshot


    Und ja ich gebe dir Recht mit dem Vorlauf-Stopp, auch wenn es in der Doku anders beschrieben ist. Allerdings erachte ich den Vorlauf-Stopp als nicht so extrem wie beschrieben. Der Roboter bremst vielleicht etwas ab aber meines Erachtens nicht so krass.


    Edit: Habe gerade nachgeschaut. Mit Release der RW 6.07.02 wurde das Verhalten von WaitDI immer mal wieder angepasst.


    Stingray: Was für eine RW-Version läuft auf dem Roboter?

    Einmal editiert, zuletzt von AndreH ()

  • Wie schaut es den aus mit anderen Instruktionen? Würde mich mal interessieren was z.B. eine Switch-Case Anweisung, ein Loop, oder so Sachen wie ein Unterprogramm aufrufen mit dem Vorlaufzeiger machen? Hat da jemand Erfahrung mit?

    Noch gestern standen wir vor dem Abgrund, und heute sind wir ein Schritt weiter!

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden