Moin zusammen,
ich habe hier ein Problem mit einer Bewegung, die Anhand einer selbstangelegten Datenstruktur ausgeführt werden soll.
Roboter: KR120R2500 PRO C4 FLR / V8.3.320/KUKA8.3
Die Datenstruktur wird von der KSS mit einer errechneten Bahn befüllt und soll im Anschluss abgefahren werden. Die Daten für die Berechnung der Bahn werden von der Leit SPS gesendet.
Wenn die Bahn berechnet ist, soll der Roboter in der Lage sein, die kompletten Punkte zusammen oder Teilstücke abfahren zu können.
Leider ist es so, das die Punkte sehr nah aneinander liegen müssen um die Bahn sauber abzubilden. Will ich nun jeden Punkte abfahren, kommt es zu Überschleiffehlern.
Der Fahrbefehl ist:
I=iStartpos (z.B: 506)
FOR I to iZaehler (z.B: 527)
SLIN xPos[I]
ENDFOR
dazugehörige Datenstruktur in der .dat:
Bewegung[506]={rPos_X 0.0,rPos_Z -87.5220413,rPos_Y -58.3800,rTCP_B -14.9560051,rAchse_E1 -156.295441}
Bewegung[507]={rPos_X 0.0,rPos_Z -87.9601517,rPos_Y -56.7119980,rTCP_B -14.4776649,rAchse_E1 -157.188248}
Bewegung[508]={rPos_X 0.0,rPos_Z -88.3834763,rPos_Y -55.0440,rTCP_B -14.0042725,rAchse_E1 -158.085922}
Bewegung[509]={rPos_X 0.0,rPos_Z -88.7922363,rPos_Y -53.3760,rTCP_B -13.5356035,rAchse_E1 -158.988510}
Bewegung[510]={rPos_X 0.0,rPos_Z -89.1866379,rPos_Y -51.7080,rTCP_B -13.0714312,rAchse_E1 -159.896}
Bewegung[511]={rPos_X 0.0,rPos_Z -89.5668564,rPos_Y -50.0400,rTCP_B -12.6115513,rAchse_E1 -160.808395}
Bewegung[512]={rPos_X 0.0,rPos_Z -89.9330902,rPos_Y -48.3719978,rTCP_B -12.1557541,rAchse_E1 -161.725677}
Bewegung[513]={rPos_X 0.0,rPos_Z -90.2854843,rPos_Y -46.7040,rTCP_B -11.7038527,rAchse_E1 -162.647812}
Bewegung[514]={rPos_X 0.0,rPos_Z -90.6242218,rPos_Y -45.0360,rTCP_B -11.2556524,rAchse_E1 -163.574768}
Bewegung[515]={rPos_X 0.0,rPos_Z -90.9494553,rPos_Y -43.3680,rTCP_B -10.8109732,rAchse_E1 -164.506500}
Bewegung[516]={rPos_X 0.0,rPos_Z -91.2613144,rPos_Y -41.7000,rTCP_B -10.3696404,rAchse_E1 -165.442932}
Bewegung[517]={rPos_X 0.0,rPos_Z -91.5599365,rPos_Y -40.0319977,rTCP_B -9.93148518,rAchse_E1 -166.384}
Bewegung[518]={rPos_X 0.0,rPos_Z -91.8454666,rPos_Y -38.3640,rTCP_B -9.49634361,rAchse_E1 -167.329620}
Bewegung[519]={rPos_X 0.0,rPos_Z -92.1180115,rPos_Y -36.6960,rTCP_B -9.06405830,rAchse_E1 -168.279709}
Bewegung[520]={rPos_X 0.0,rPos_Z -92.3776932,rPos_Y -35.0280,rTCP_B -8.63447189,rAchse_E1 -169.234146}
Bewegung[521]={rPos_X 0.0,rPos_Z -92.6246185,rPos_Y -33.3600,rTCP_B -8.20743752,rAchse_E1 -170.192841}
Bewegung[522]={rPos_X 0.0,rPos_Z -92.8588943,rPos_Y -31.6920,rTCP_B -7.78280592,rAchse_E1 -171.155640}
Bewegung[523]={rPos_X 0.0,rPos_Z -93.0806122,rPos_Y -30.0240,rTCP_B -7.36043882,rAchse_E1 -172.122421}
Bewegung[524]={rPos_X 0.0,rPos_Z -93.2898560,rPos_Y -28.3559990,rTCP_B -6.94019938,rAchse_E1 -173.093048}
Bewegung[525]={rPos_X 0.0,rPos_Z -93.4867172,rPos_Y -26.6880,rTCP_B -6.52195,rAchse_E1 -174.067352}
Bewegung[526]={rPos_X 0.0,rPos_Z -93.6712646,rPos_Y -25.0200,rTCP_B -6.10555840,rAchse_E1 -175.045166}
Bewegung[527]={rPos_X 0.0,rPos_Z -93.8435745,rPos_Y -23.3520,rTCP_B -5.69089842,rAchse_E1 -176.026352}
Wie kann ich alle Punkte in einer flüssigen Bewegung abfahren, ohne den Fehler zu bekommen. Alle Versuche mit verschleifen sind bisher gescheitert. Aktuell helfe ich mir damit, das ich nur jeden zweiten Punkt abfahre. Das führt aber zu Fehlern in der Qualität der Bahn.
Gruss
Pat