externe achse unabhängig bewegen

  • Hallo Kukaner!


    Wie kann ich eine externe achse (rotativ) drehen lassen, wärend ich mit dem Roboter ein Programm abfahre?


    Konkret geht es darum, dass ich sagen kann die Achse 7 soll mit z.B. 10 Umdrehungen pro Minuten drehen während der Roboter sein Programm abfährt.


    geht sowas überhaupt mit KUKA? oder muss ich die achse 7 mit jedem Punkt verrechnen?


    Besten Dank

  • Schritt für Schritt zum Roboterprofi!
  • Hallo



    Ja, eine Zusatzachse parallel laufen zu lassen geht.


    Dafür musst du die Achse Asynchron schalten und in deinem Programm zum Beispiel über einen Interrupt die Bewegung ablaufen lassen.


    :ylsuper:

  • wo schalte ich diese um auf asynchron?
    wie sieht dann die Bewegungsprogrammierung aus?
    kann ich die achse dann auch einfach laufen lassen oder muss ich die bewegungen in 179grad schritten machen?
    wie sieht die bewegungsprogrammierung dann aus? :kopfkratz:

  • ....das geht recht einfach..


    $Async_Opt = true <- in Option.Dat Steu Ordner ; Lässt überhaupt erst asynchrone Bewegungen zu
    $Async_Mode='B0010' <- in Custom.dat Steu Ordner ; Verhalten der asychronen Achsen
    Den $Break_Mode sollte man sich auch anschaun.
    Die Achsen in den Maschinendaten als endlos drehende Achsen konfigurieren, denn du wirst mit Sicherheit nicht nur +/- 360° fahren wollen.


    Nun sollte sich über den AsyPTP befehl die Achse entsprechend drehen lassen.


    Andere möglichkeit ist noch die DetachJog Eingänge der Achsen zu benutzen um von einer externen SPS oder über entsprechende E-A Belegung die Achsen über eine externe Ansteuerung zu verfahren.

    Die Abnahme von GOTO Anweisungen verhält sich reziprok zur Qualität einer Programmierung

  • wie kann ich die AsyPTP bewegungen überschleifen?


    er erkennt zwar die Zeilen


    asyptp {e1 0} c_ptp
    asyptp {e1 90} c_ptp
    ...


    aber er überschleift sie aber nicht.
    $APO.CPTP ist 100.

  • ich habe mehr als nur diese zwei Bewegungen! Die 7te Achse muss schlussendlich endloss drehen, mit verschiedenen Geschwindigkeiten, ohne stopp zwischen den Bewegungen. Auch die Angabe über den Drehwinkel ist Variabel. D.h. ich muss z.B. 90° mit 6U/min drehen, dann fliessend 290° mit 10U/min, dann 360°mit 2U/min... etc.


    codebeispiel:
    pEins.E1=0
    pZwei.E1=90
    pDrei.E1=120
    pVier.E1=170
    ...


    asyptp pEins c_ptp
    asyptp pZwei c_ptp
    asyptp pDrei c_ptp
    asyptp pVier c_ptp
    ...etc


    Problem 1: Überschleifen nicht möglich,
    Problem 2: Nur drei asyptp Bewegungen im "zwischenspeicher" möglich
    Problem 3: wie Fahren wenn über 360°?
    Problem 4: wie lese ich den aktuellen Wert aus, da der Sprung von 180° auf -179° ziemlich markant ist...


    Ich habe jetzt eine Lösung gefunden, dass ich mit JOG im Handmodus die Achse unabhängig drehen lassen kann. Damit habe ich Probleme 1-3 Behoben...

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