Überschleifen ptp - lin ohne "Fast-Stillstand"

  • Hallo, Leute,


    aus Platzgründen muss ich nach einer waagerechten ptp ... c_ptp mit lin senkrecht runterfahren (KRC2, SW 5.5, Roboter KR2150 L 110). APO_DIST f. die PTP-Bewegung ist 100 (mehr als 100% geht ja wohl nicht).APO_DIST f. die LIN-Bewgung ist ebenfalls 100 (mm), aber da dies der Zielpunkt ist, sollte das egal sein. Beim Überschleifen in LIN geht die Geschwindigkeit fast auf 0 runter, das kann ich gar nicht gebrauchen. Eine PTP-Bewegung senkrecht in 1 Stück ist wg. des PTP-Bogens nicht möglich, und bei der Aufteilung der Bahn in mehrere kleinere Bahnen ist die Geschwindigkeit inhomogen.


    Was ist bei LIN eigentlich APO_FAC? In der Doku ist nix darüber zu finden. Danke für Rückmeldung.


    Gruß


    PA

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


    wie du Überschleifen kannst hängt auch von dem LIN Zielpunkt ab, da ja die Steuerung es auch schaffen muss in die LIN-Bewegung hineinzuüberschleifen. Der maximale Überschleifradius ist beschränkt auf die halbe Länge der beteiligten Bewegungen. Ist z.B. der PTP sehr lang und der LIN sehr kurz, kannst du trotzdem frühestens bei halber Länge der LIN-Bewegung in der PTP-Bewegung anfangen zu überschleifen.
    Diese Kappung macht die Steurung implizit und teilt sie dem Nutzer nicht gesondert mit. Daher überprüfe doch mal wann die Bewegung die PTP-Einzelbewegung auf Genauhalt verlässt. Ich vermute das passiert erst kurz vor dem Punkt, der Überschliffen werden soll und da muss der Roboter wahrscheinlich "scharf" um die Ecke und muss folglich sehr langsam werden.


    Gruß
    Fubini

  • Hallo, fubini,


    danke für Deine schnelle Antwort.


    Es ist richtig, dass der Roboter eine 90°-Kurve aus der Waagerechten in die Senkrechte fährt. Ursprünglich wurde der Punkt, der jetzt linear angefahren wird, mit PTP angefahren. Durch den Bogen, den Achse 2 u. 3 dabei machen, ist ein Greiferteil in ein stehendes Objekt gekommen, sodass ich gezwungen war, auf LIN zu wechseln. Als der Punkt noch mit PTP angefahren wurde, ist der Roboter flüssig von der Waagerechten in die Senkrechte gefahren. Ich habe das Gefühl, dass ein generelles Problem mit dem Überschleifen PTP > LIN vorliegt. Dass der Roboter dabei annähernd zum Stop kommt, ist mir auch schon passiert, wenn PTP- u. LIN-Punkt untereinander liegen (also beide Punkte eine Abwärtsbewegung beschreiben): Sehr merkwürdig, das Ganze! :nocheck:



    :danke:


    Gruß


    PA

  • Hallo,


    wenn ich das richtig verstanden habe hast zum überschleifen APO_DIST = 100 gemacht um bei der PTP Bewegung zu überschleifen?! :denk:
    Soweit ich jetzt aus dem Bauch raus weiß, hast du dem Roboter damit gesagt, er darf frühestens 100mm vor deinem PTP-Punkt anfangen zu überschleifen. Was du brauchst ist C_DIS, den das ist der Überschleifparameter.


    Gruß MiLa

  • Hallo, MiLa,


    die Abfolge ist PTP <Punkt> c_ptp
    LIN <Zielpunkt>


    Bei PTP kann ich einen Überschleifwinkel nur in %, max. 100 %, angeben, daher die 100. Der Überschleifwinkel beim Zielpunkt mit Genauhalt interessiert den Roboter nicht, soweit ich weiß.


    Gruß


    PA

  • Hallo, StefanW,


    ich glaube, ich habe in Deinem Link gefunden, woran es hapert, kann es aber erst Montag ausprobieren: ptp <Punkt> c_ptp c_dis
    lin <Zielpunkt>


    :danke: ich bin gespannt.


    Gruß


    PA

  • Also, eigentlich ist c_ptp das überschleifen bei einem PTP-Punkt, der Parameter dazu ist APO.CPTP und ist in %.
    Für LIN ist es c_dis mit APO.CDIS und hier sind es millimeter vor dem Zielpunkt.
    Wenn auf ein PTP-Punkt ein LIN- oder CIRC-Punkt folgt brauchst du schon richtig entdeckt hast c_ptp und c_dis, c_dis sind trozdem mm,

  • Hallo,


    die Steuerung plant auch bei Überschleifen zunächst mit Einzelsätzen, d.h. wie mit Genauhalt.
    Danach wird der Punkt bestimmt, an dem der Einzelsatz PTP verlassen wird und die Steuerung sich auf die Überschleifkontur begibt. Der Punkt richtet sich zum einen nach dem Maschinendatum $APO_DIS_PTP. Das ist eine Gradzahl pro Achse. Auf diese Gradzahl wirkt noch der Prozentwert $apo.cptp. Wenn bei der ptp-Bewegung, z.B. die achse1 die längste Bewegung hat, im Maschindatum 20Grad stehen und in $apo.cptp 50% steht, so geht der Roboter 10 Grad in A1 vor Erreichen des überschliffenen ptp Punkts auf die Überschleifkontur und zwar mit der Geschwindigkeit die er beim Einzelsatz hätte. Allerdings kann man max. 50% der Bewegung überschleifen, d.h. wenn die führende A1 im Beipiel im überschliffenen PTP nur 10Grad fährt beginnt die Überschleifkontur 5 Grad in A1 vor Erreichen des überschliffenen PTP.
    Danach wird der Punkt bestimmt, an dem der Roboter wieder auf den programmierten LIN Einzelsatz trifft. Bei c_dis wird dieser Punkt in mm vom Start des LIN in $apo.c_dis bestimmt. Bei c_vel ist es ein Prozentwert der Geschwindigkeit beim Beschleunigen, C_ori ist eine Gradzahl. Es ist wieder maximal 50% des Lin möglich.
    Zusatzachsen können das Ganze nocht mal stören, da diese auch apo_dis_ptp Werte haben, die eingehalten werden müssen.
    Die Überschleifkontur wird am schnellsten, wenn Roboter am Anfang und Ende der Überschleifkontur möglichst schnell ist, d.h. die Parameter so gesetzt werden, das man jeweils an die 50% Grenze kommen (beim LIN reicht auch Konstantfahrphase, falls vorhanden). Ausserdem ist es gut wenn man mit möglichtst langen Bewegungen ptp/lin arbeitet, weil der Roboter da bei 50% Bewegung flotter ist. Da ist länger manchmal schneller. Leider muss man auch noch um die vorhandenen Ecken kommen, und findet bei besonders knappen Sachen raus, das es nur bis 90% gut geht oder der Vorgänger so programmiert hat, das man nur noch mit Überschleif fahren kann und die Einzelsätze auf Crash liegen.


    Gruss DiDi

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