Überschleifen nicht möglich

  • Hallo zusammen,


    Beim Programmabfahren bekomme ich die Quittiermeldung, dass mein Überschleifen nicht möglich sei.


    Mein Programm soll mit maximaler Geschwindigkeit an die "Vorposition" fahren, soll ab hier mit 0.1m/s auf die "Startposition" weiterfahren, dann auf die "Endposition", dann auf die "Nachposition" und ab dann wieder mit maximaler Geschwindigkeit auf die nächste "Vorposition" fahren.

    Alle Positionen werden überschliffen.

    Die Vor und Nachpositionen sind nur dafür da, dass zwischen Start und Ende sicher 0.1m/s besteht. Das Beschleunigen und Bremsen soll zwischen Vorposition und Start bzw zwischen Ende und Nachposition passieren.

    Dieses Bewegungsmuster wird mehrfach wiederholt für mehrere Positionen die sich alle auf einer Achse befinden.


    Wenn ich das Abfahre bekomme ich an allen Positionen die Quittiermeldung, dass das Überschleifen nicht möglich sei.


    Habe darauf hin die schnelle Phase von 2m/s auf 0.5 m/s gesetzt und die langsame Phase ist weiterhin 0.1 m/s. Nun bekomme ich die Meldung nur noch für die letzten 3 Positionen meiner Schleife. Wenn ich nun den Abstand zwischen Vorposition und Startposition erhöhe, bzw die Geschwindigkeitsdifferenz nochmal kleiner mache, bekomme ich evtl auch diese 3 letzten Meldungen weg. Das konnte ich allerdings noch nicht testen.


    Dazu habe ich eine grundsätzliche Frage:

    Dadurch dass durch die Geschwindigkeitsreduzierung bei weniger Punkten Probleme mit der Überschleifung verursacht werden (zumindest nach den Quittiermeldungen zu urteilen), frage ich mich wie der Roboter grundsätzlich die Überschleifung regelt. Wenn er die gewollten 2m/s zwischen Nachposition und Vorposition nicht erreichen kann, weil zum Beispiel die Distanz zwischen den Punkten zu gering ist, findet dann kein Überschleifen statt (so scheint es mir nach meinem Versuch)?

    Oder regelt er auf die maximal mögliche Geschwindigkeit und sollte eigentlich die Überschleifung dennoch machen (so hätte ich es erwartet und so wollte ich es auch programmieren)? Auch wenn er dabei nicht die geforderten 2m/s erreicht.


    Angehängt noch mein Code. Evtl. hab ich auch einfach hier einen Fehler.


    Vielen Dank im Vorraus für jede Hilfe!!


  • Schritt für Schritt zum Roboterprofi!
  • Fahr das Programm bitte mal mit kleinem Override. Geht dann das Überschleifen? Wenn ja sind deine Bewegungen so kurz, dass die Bewegungen nicht schnell genug bereit gestellt werden können. Die Zeit die man braucht um die Bewegung zu planen ist länger als die Verfahrzeit der Bewegungen. Bei kurzen Bewegungen kann das schon passieren.


    Ist das nicht der Fall schau mal in T2 ob zusätzliche Meldungen kommen. Dann liegt's sehr wahrscheinlich an den Punkten.


    Fubini

  • Bei älteren KUKA's gab es mal die Systemvariable "$STOPNOAPROX". Wenn diese gesetzt und in Ext oder T2 gefahren wird, zeigt ein Meldungstext an wer oder was das Überschleifen verhindert. Hab länger schon keine Augsburger mehr in der Hand, ich denke aber die Variable gibt es noch...

    Probier' die doch mal aus.

    Den Roboter "in seinem Lauf hält weder Ochs noch Esel auf!"

  • Hi, bei SPL-Bewegungen sollten die Bewegungsparameter mit der WITH-Anweisung gesetzt werden.

    z.B.

    Code
    SLIN StartSP[zaehler] WITH $VEL=SVEL_CP( 0.5, , ) C_SPL
  • Hallo ban-zaj,


    das ist ja interessant. Soll das im Umkehrschluss bedeuten, dass das Verhalten des Roboters beim Überschleifen ein anderes ist, wenn die Motion Parameter nicht mit der Anweisung WITH gesetzt werden, sondern z.B. in den Zeilen vor der Bewegung?


    Gruß

    Daniel

  • Danke für eure Antworten. Ich hab es jetzt wie von fubini gesagt mit einem kleinere override versucht und hatte dann keine überschleifprobleme mehr. Habe dann anschließend den Abstand von vorposition zu Startposition erhöht und es geht auch so. Lag also bei mir wohl an zu kleinen Bewegungen.

    Das mit with konnte ich leider noch nicht testen ob das auch gereicht hätte.

  • Zitat

    das ist ja interessant. Soll das im Umkehrschluss bedeuten, dass das Verhalten des Roboters beim Überschleifen ein anderes ist, wenn die Motion Parameter nicht mit der Anweisung WITH gesetzt werden, sondern z.B. in den Zeilen vor der Bewegung?

    Nein. Intern ist das exact das gleiche.


    Fubini

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