KRL: Wann werden Beschleunigungen ausgeführt?

  • Hallo,


    ich bin relativ neu in der Roboterwelt und nutze KRL für mein Roboterprogramm.
    Hier verbinde ich Punkte und ändere die Geschwindigkeiten auf der Bahn und habe auch ein paar Stops eingebaut
    Ich möchte die Bahngeschwindigkeiten und -Zeiten selbst abschätzen können (ohne Kuka-Sim).


    Fahre zum Beispiel also so:

    Code
    $VEL.CP = v1
    LIN PReferenz
    WAIT SEC 1.0
    LIN P1
    LIN P2 CDIS
    $VEL.CP = v2
    LIN P3 CDIS
    $VEL.CP = v1
    LIN P4 CDIS
    ....


    Meine Fragen:
    1) Wann findet die Beschleunigung statt?
    Wird (in meinem Beispiel) die Geschwindigkeit bereits auf dem Weg zu P2 erhöht oder erst nachdem P2 erreicht wurde oder liegt P2 dann irgendwo im Beschleunigungsvorgang?
    Wird mein Weg-Geschwindigkeits-Diagramm also wie im Orangenen Fall abgefahren oder die Blaue alternative?


    2) Was passiert wenn die gegebene Strecke nicht ausreicht um mit gegebener Beschleunigung abzubremsen (auf die folgende Geschwindigkeit bzw. auf Null für einen Stop)?
    Wird dann mit höherer Beschleunigung abgebremst oder bereits soweit davor dass die max. Beschleunigung nicht überschritten wird und daher eventuell schon einige Segmente vorher abgebremst?


    Grüße und vielen Dank für jegliche Hilfe!


    /Daniel

  • Schritt für Schritt zum Roboterprofi!
  • Hallo dsommer,


    wie die Beschleunigungen ausgeführt werden, hängt auch von den Lastdaten ab.
    Für derartige Simulationen reicht auch Office Lite, er wird kein Kuka Sim Pro benötigt. Wenn du mir ein komplettes .SRC File plus Lastdaten und Robotertyp schickst, kann ich es dir auch gerne Simmulieren, und dir eine Aufzeichnung der Daten zukommen lassen.
    An sonsten hilft dir auch sicherlich der Counsulting von KUKA gerne weiter.


    Gruß


    Yannick

  • Hallo,


    die KUKA Steuerung und auch jede andere mir bekannte Robotersteuerung plant (Ausnahme bildet hier bei KUKA nur der Splineblock) immer von programmierten Punkt zu programmierten Punkt mit Genauhalt. Es wird also zwischen zwei aufeinanderfolgenden Punkten erst immer so geplant, dass der Roboter am Startpunkt aus dem Stillstand beschleunigt und am Zielpunkt wieder zum Stehen kommt. Etwaiges Überschleifen wird dann erst nachträglich zwischen zwei Bewegungungen, die wie eben gesagt immer mit Geschwindigkeit Null starten und Enden, eingepflegt. Das ist auch notwenidig, so dass der Roboter wenn was schief geht (z.B. Überschleifen nicht möglich) notfalls immer an einem programmierten Zielpunkt anhalten kann. Den von dir angesprochenen zweiten Fall gibt es also nicht, da durch die beschriebene Vorgehensweise immer sicher gestellt wird, dass die Beschleunigung ausreicht. Nachteil ist natürlich, dass man auch mit Überscchleifen nie schneller fahren wird können als durch die Geschwindigkeiten der beteiligten Einzelbewegungen vorgegeben. In der Praxis zeigt sich das am deutlichsten wenn man sehr viele Punkte mit sehr kurzen Punktabständen hintereinander programmiert. In dieser Konstellation kann der Roboter trotz überschleifen nicht auf Geschwindigkeit kommen.


    Hier schafft dann nur der erwähnte Splineblock Abhilfe. Die Steuerung sieht nämlich einen Splineblock mit vielen Segmenten immer noch als eine(!) in sich geschlossene Bewegung an und muss daher das Geschwindigkeitsprofil erst am Ende des Splineblocks und nicht an jeder programmierten Segmentgrenze mit Geschwindigkeit Null enden lassen. Das ist auch einer der vielen Gründe warum man sich bei KUKA für die Einführung des Splineblock entschieden hat. Insbesondere erreicht also der Splineblock auch bei kurzen Punktabständen hohe Geschwindigkeiten.


    Fubini

    Einmal editiert, zuletzt von 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