TCP vermessen

  • Hallo Leute vom Fach :)


    Ich habe versucht an einem KUKA KR5 arc mit KR C2 Steuerung einen TCP zu vermessen, leider entspricht das Ergebnis nicht meinen Vorstellungen.


    Ich habe die XYZ-4-Punkt Methode angewendet und auch darauf geachtet das die Referenzpunkte weit auseinander liegen.
    Meine Vorgehensweise sah folgendermaßen aus:


    Ich habe eine Feststehende Spitze auf einem Arbeitstisch platziert und eine Spitze in den Greifer gespannt, was für mich Eigentlich sehr genau sein müsste um die Referenzpunkte anzufahren.


    Nach dem Sichern der Vermessung habe ich mit a, b und c meinen Vermessen TCP umorientiert und er wandert bis zu 8 mm von seiner Position ab.


    Auch eine direkte Nummerische Eingabe der X, Y und Z Werte verbesserten das Ergebnis nicht.
    Dann habe ich den TCP vom Roboter-Flansch umorientiert, auch Abweichungen.


    Nach einem kleinen Gefühlsausbruch :aufsmaul: habe ich mich dazu entschlossen mit der Messuhr den Roboter neu zu justieren (ich habe kein EMT).
    Danach nochmal mein TCP vermessen und wieder nicht Optimal.


    Hat jemand eine Idee wo eventuell mein Fehler liegt?


    Ich bedanke mich schon mal im Voraus für die Zahlreichen Antworten und Vorschläge :danke:


    Beste Grüße
    Bruce Banner

  • Schritt für Schritt zum Roboterprofi!
  • Ja.


    Sag mir mal, wie man mit einem Zollstock messen kann, dessen Skala nicht zwei Meter lang ist und dessen Skalenabstände nicht 1,00 sondern 1,123 mm sind?


    Etwa genau so ist das mit dem schlecht justierten Roboter. Ohne Justage sind Deine Meßwertgeber einfach nicht korrekt, weil das mathematische Modell für die Positionsberechnung von falschen Werten ausgeht.

    Wolfram (Cat) Henkel

    never forget Asimov's Laws at the programming of robots...

    "Safety is an integral part of function. No safety, no production. I don't buy a car without brakes."


    Messages und Mails mit Anfragen wie "Wie geht das..." werden nicht beantwortet.

    Diese Fragen und die Antworten interessieren jeden hier im Forum.


    Messages and Mails with questions like "how to do..." will not be answered.

    These questions and the answers are interesting for everyone here in the forum.

  • Danke WolfHenk, für deine sehr schnelle Antwort!
    Leider bringt mich diese kein Stück weiter. Willst Du mir mit deinem Eintrag mitteilen das ich ein EMT zur Jutage brauche?
    Für nur 1500 Öre, ist ja fast geschenkt :???:

  • @Handschuh:


    Ja, es sind die richtigen Maschinendaten geladen!



    Stethi und WolfHenk:


    Ich finde es echt klasse, dass ihr einer Meinung seit aber ich komme mit euren Antworten so nicht weiter.


    Also nochmal, ich bin im Besitz der KUKA Justier-Messuhr mit der Bestell-Nr.01029739 die man offiziell bei KUKA für über 600 Teuros käuflich erwerben kann :bawling:


    Ich habe den Roboter so Justiert wie es in der Bedien- und Programmieranleitung von KUKA beschrieben ist.
    Eigentlich kann man nicht viel falsch machen. Die Spitze der Messuhr hat die exakte Gegenkontur der Messkerbe, was so gut wie kein Spiel am Nullpunkt zulässt, daher müsste das Ergebnis doch ähnlich genau sein wie mit dem EMT nur mit dem unterschied dass es mit dem EMT komfortabler zu realisieren ist da der Roboter von selber an der Richtigen Position anhält.


    KUKA schreibt zwar das Sie es empfehlen mit dem EMT zu Justieren aber warum bieten sie dann diese „ungenaue“ Messuhr überhaupt zum Kauf an wenn diese nicht den eigentlichen Zweck erfüllen kann :huh:

  • Je nun, das sollte schon funktionieren.
    Im Prinzip würde ich erst einmal versuchen, herauszufinden, aus welcher Achse die Ungenauigkeit mutmaßlich kommt. Weiter würde ich ein Testprogramm schreiben, welches in allen Achsen wiederholt eine großzügige Bewegung macht, um herauszufinden, ob der Robbi nach 100 Durchläufen überhaupt wieder am Ausgangspunkt ankommt, oder ob irgendwas durchrutscht. Dann gibt es ja durchaus die Möglichkeit, dass ein Antrieb mechanisches Spiel hat oder dass der Robbi schlicht verbogen ist, oder die Meßpatrone / die Kerbe irgendwo verhauen ist.
    Wenn eine große Masse am Arm hängt, geht das mit der Justage auch schief, wenn man nicht gewichtsneutral trickst...


    Grüße,
    Michael

  • Hallo Michael,
    erst mal Danke für deine etwas konstruktivere Antwort als die von den andern Jungs (nichts für ungut, ist nicht böse gemeint ;))


    Die Idee mit deinem Testprogramm ist nicht schlecht, werde ich, falls ich heute noch dazukomme gleich mal umsetzen.
    Eine zu große Masse habe ich auch nicht dranhängen, etwa 2 Kg und der KR5 ist ein 6 Kg Roboter.


    Verbogen ist er auch nicht, da er so gut wie neu ist und noch keine Kaltverformung erleben musste. Er ist zwar schon sechs Jahre in Firmenbesitz wurde aber so gut wie nie eingesetzt (Fehlinvestition).


    Es ist gerade ein Firmeninternes Hobby von mir, den Robbi aus seinem Dornröschenschlaf zu befreien, zu reanimieren und für neue Aufgaben zu begeistern.
    Ich bin eher ein Freund von ABB, daher tue ich mich etwas schwer mit der KUKA Programmierung und dem ganzen drum herum da mir doch die Praxis und Erfahrung dafür fehlt.


    Ich werde die Justage auch nochmal durchführen, vielleicht hab ich da doch irgendwas vergeigt :???:

    Ich meld mich wieder, wenn sich noch was ergibt.

  • jaaaaaa. Die KUKA-Messuhr. Das ist was anderes. Das war nicht eindeutig zu erkennen.


    Dann ist es tatsächlich möglich, dass da in der Mechanik was rutscht oder wackelt.
    Kann auch sein, dass an den Maschinendaten was verbibbelt ist.


    Wolfram

    Wolfram (Cat) Henkel

    never forget Asimov's Laws at the programming of robots...

    "Safety is an integral part of function. No safety, no production. I don't buy a car without brakes."


    Messages und Mails mit Anfragen wie "Wie geht das..." werden nicht beantwortet.

    Diese Fragen und die Antworten interessieren jeden hier im Forum.


    Messages and Mails with questions like "how to do..." will not be answered.

    These questions and the answers are interesting for everyone here in the forum.

  • Hallo Bruce,


    bei der KR5Arc Mechanik werden auf die Justage noch sogenannte Mam-Werte aufgerechnet.
    Kommen aus dem Mam-File. Ist dieses File nicht geladen oder nicht von der richtigen Mechanik, hast Du auch diesen Effekt.


    Gruss SJX

    Manche Maenner bemuehen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitaetstheorie.

  • Hallo Leute,
    ich schon wieder mit meinem TCP/Justage Problem!


    Ich habe den Roboter nochmal neu Justiert und den TCP danach vermessen. Immer noch der gleiche Fehler.
    Ich habe auch so ein kleines TEST-Programm gebastelt, wie mir Michael vorgeschlagen hat.


    Es beinhaltet die Feststehende Spitze auf dem Arbeitstisch, die der Roboter mit der Spitze im Greifer immer wieder anfährt.
    Ich kann keine Abweichung feststellen, dass sich der Roboter von seinen Positionen entfernt.


    SJX:
    Ich habe mal nach den MAM-FILE’s gesucht, die Du angesprochen hast!


    Meinst Du diese?


    Folgender Pfad:


    KRC/r1/Mada/$machine.dat


    REAL $MAMES[12] ;VERSCHIEBUNG ZW. MECH. UND MATH. NULLPUNKT ACHSE[I] (I=1:A1,I=7:E1) [MM,GRAD]
    $MAMES[1]=0.0
    $MAMES[2]=-90.0
    $MAMES[3]=90.0
    $MAMES[4]=0.0
    $MAMES[5]=0.0
    $MAMES[6]=0.0
    $MAMES[7]=0.0
    $MAMES[8]=0.0
    $MAMES[9]=0.0
    $MAMES[10]=0.0
    $MAMES[11]=0.0
    $MAMES[12]=0.0
    DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#NONE ; Existenz individueller MAMES-Werte
    FRAME $ROBROOT={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ROBOTER IM WELTKOORDINATENSYSTEM [MM,GRAD]
    FRAME $ERSYSROOT={X 0.0,Y 0.0,Z 0.0,A 0.0,B 0.0,C 0.0} ;ROBOTERFUSSPUNKTKINEMATIK IM WELTKOORDINATENSYSTEM [MM,GRAD]
    DECL FRA $RAT_MOT_AX[12] ;UEBERSETZUNG MOTOR-ACHSE N = ZAEHLER, D = NENNER
    $RAT_MOT_AX[1]={N -125,D 1}
    $RAT_MOT_AX[2]={N -125,D 1}
    $RAT_MOT_AX[3]={N 87,D 1}
    $RAT_MOT_AX[4]={N -670,D 9}
    $RAT_MOT_AX[5]={N -380,D 9}
    $RAT_MOT_AX[6]={N -410,D 17}
    $RAT_MOT_AX[7]={N 0,D 1}
    $RAT_MOT_AX[8]={N 0,D 1}
    $RAT_MOT_AX[9]={N 0,D 1}
    $RAT_MOT_AX[10]={N 0,D 1}
    $RAT_MOT_AX[11]={N 0,D 1}
    $RAT_MOT_AX[12]={N 0,D 1}
    DECL FRA $RAT_MOT_ENC[12] ;UEBERSETZUNG MOTOR-GEBER ACHSE[I] (I=1:A1,I=7:E1) N = ZAEHLER, D = NENNER
    $RAT_MOT_ENC[1]={N 1,D 4}
    $RAT_MOT_ENC[2]={N 1,D 4}
    $RAT_MOT_ENC[3]={N 1,D 4}
    $RAT_MOT_ENC[4]={N 1,D 3}
    $RAT_MOT_ENC[5]={N 1,D 3}
    $RAT_MOT_ENC[6]={N 1,D 3}
    $RAT_MOT_ENC[7]={N 1,D 3}
    $RAT_MOT_ENC[8]={N 1,D 3}
    $RAT_MOT_ENC[9]={N 1,D 3}
    $RAT_MOT_ENC[10]={N 1,D 3}
    $RAT_MOT_ENC[11]={N 1,D 3}
    $RAT_MOT_ENC[12]={N 1,D 3}
    usw.


    Falls es diese File’s sein sollten, die sind Identisch mit denen die ich in einem Archiv, dass vor ein paar Jahren gemacht wurde, gefunden habe.
    Sollten es nicht diese sein, kannst Du mir bitte mal den Pfad schreiben, wo ich fündig werden könnte.


    Danke!

  • Hallo,


    das mam-File ist ein spezielles File, das Offsets zu den von die gefundenen Werten $MAMES enthält. Ob du ein mam-File hast kannst du am einfachsten prüfen indem du unter Anzeige->Variable->Einzeln die Werte von $MAMES_ACT[] anschaust. Stehen da die gleichen Werte wie in $MAMES[] hast du kein mam-File anderenfalls steht da der Wert von $MAMES[]+"mam-File Offset" drin.


    Der Hintergrund für diese Offsets ist, das früher in der Produktion die Justagekerben sehr genau gesetzt werden mussten, damit der Roboter auch genau wird. Inzwischen werden die Justagekerben nur noch grob da plaziert, wo sie im Idealfall sein sollten und der Fehler über ein mathematisches Optimierungsverfahren identifiziert. Somit liegt die Justagekerbe nicht mehr wir früher exakt bei $MAMES sondern eben um den mam-File Offset versetzt: wird also der Roboter neu justiert werden bei der Justagekerbe nicht mehr die Werte von $MAMES sondern die Werte von $MAMES_ACT gesetzt.


    Fubini

    Einmal editiert, zuletzt von fubini ()

  • Haben gerade noch gesehen: wegen


    DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#NONE


    wird bei deinem Roboter wohl kein mam-File geladen. Da müsste sonst #RDC oder #HD stehen.


    Wir können übrigens den Typ KR5Arc bei uns nicht finden. Wie lautet den der genaue Wert von $TRAFONAME[] deines Roboters ?


    Fubini

  • Hallo Fubini,


    danke für deine genaue Erklärung!
    Ich habe das mal nachgeschaut.
    $MAMES[] ist identisch mit $MAMES_ACT[]


    Folgende Werte:


    $MAMES[1]=0.0
    $MAMES[2]=-90.0
    $MAMES[3]=90.0
    $MAMES[4]=0.0
    $MAMES[5]=0.0
    $MAMES[6]=0.0
    $MAMES[7]=0.0
    $MAMES[8]=0.0
    $MAMES[9]=0.0
    $MAMES[10]=0.0
    $MAMES[11]=0.0
    $MAMES[12]=0.0


    Hier noch der $TRAFONAME[] Wert #KR5 C2 FLR ZH02


    Gruß
    Bruce

  • Okeydockey, dann stimmt irgendetwas nicht: In der $machine.dat für den KR 5 ARC steht bei mir



    Vielleicht hast Du doch nicht die richtigen Maschinendaten geladen, oder irgendjemand hat sie nachträglich verändert, also #RDC in #NONE geändert.


    Bye René


    p.s.: Wie groß war der angezeigte Fehler, als Du den TCP eingemessen hast?

  • Hallo Puck,


    Ich habe jetzt den TCP nochmal vermessen und der Angezeigte Fehler beträgt ><2.15 (Falls das die Fehler Anzeige ist)
    Den TCP habe ich jetzt schon 3 – 4 mal vermessen und der Angezeigte Fehler ist jedes Mal anders (von 0.65 – 4,56) obwohl ich bemüht bin die die Spitzen exakt zu positionieren.


    Um das Maschinendaten Thema nochmal anzusprechen, wenn ich über Inbetriebnahme/5 Roboterdaten reingehe, steht bei Maschinendaten KR5 C2 FLR ZH02
    Auch auf dem Typenschild am Robotersockel steht $TRAFONAME[]=“#....“KR5 C2 FLR ZH02
    Wenn ich über Anzeige/2Variable/0Einzeln $TRAFONAME[] Eingebe, erscheint im Feld Aktueller Wert “#KR5 C2 FLR ZH02“
    Also müssten schon die Richtigen Maschinendaten geladen sein.


    Was das Thema „DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#NONE oder in deinem Fall #RDC angeht, kann ich nichts dazu sagen


    Aber vielleicht schreibt hierzu Fubini noch was.


    Bruce


  • Aber vielleicht schreibt hierzu Fubini noch was.


    Ha, ha, der sitzt mir gerade genau gegenüber und lacht :zwink:



    Was das Thema „DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#NONE” oder in deinem Fall #RDC angeht, kann ich nichts dazu sagen


    Okay, dann musst Du akzeptieren, dass Deine MaDas aus irgeneinem Grund von Irgendwem verändert wurden und aktuell keine Standardmaschinendaten geladen sind. Falls Du irgendwo das zu Deiner Maschine passende MAM-File (<Serien-Nr.mam> im vielleicht IR-SPEC-Verzeichnis) findest, dann müsstes Du:
    [list type=decimal]

    • Das MAM-File ins IR_SPEC Verzeichnis kopieren.

    • In der $machinde.dat dann #RDC anstatt #NONE schreiben.

    • Das MAM-File via ".../Inbetriebnahme/Roboterdaten" als Experte am KCP auf die RDW importieren.

    • Roboter neu justieren.

    • Prüfen, ob der Roboter genauer verfährt.

    [/list]


    Falls Dein MAM-File unauffindbar ist, dann kann Dir -- mit etwas Glück -- noch jemand bei KUKA helfen, dazu müsstest Du beim KUKA Support Dein MAM-File anfragen.


    Bye Puck


    p.s.: Wenn Du einen "absolutgenauen" Roboter hast, dann musst Du ein Programm mit Umorientierungen schreiben, um zu testen, ob der Roboter genauer verfährt, auf keinen Fall im Handverfahren (http://www.robot-forum.com/rob…expect/msg50648/#msg50648)


  • Achtung, kein Wissen, sondern Vermutungen:
    Wenn ich die Sache richtig interpretiere, dann könnten doch die richtigen MAM-Werte evtl. schon auf der RDC liegen, dann müsste es auch reichen den Eintrag auf #RDC zu ändern :kopfkratz: :denk: ohne die MAM-Files zu besitzen.

  • Hallo Herrmann,


    da hast du natürlich recht. Ich würde daher wie vor jeder MADA-Änderung natürlich erstmal ein Archiv ziehen. Sollte das mam-File bereits auf der RDC vorhanden sein, würde es im Archiv gesichert werden.


    Gruß
    Fubini

  • Guten Morgen MAM-FILE Spezialisten :D


    1. fubini, Du kannst puck einen schönen Gruß von mir sagen, der sitzt dir ja gegenüber ;)
    2. Ich habe jetzt mal alle Ordner soweit durchgeforstet und nichts mit der Endung .mam gefunden.
    3. Im Ir_Spec befindet sich nur *.cal was der Serien-Nr. dieses Roboters entspricht.
    4. Ich habe in den Unterlagen für diesen Roboter eine CD gefunden (V_54KRC_0092_1) darauf befindet sich ein Pfad INTERNAT/MADA/KRC2/KR5/FLOOR/R1/$machine.dat in der auch bei DECL INDIVIDUAL_MAMES $INDIVIDUAL_MAMES=#NONE ; Existenz individueller MAMES-Werte auch ein #NONE eingefügt ist.
    Dann müsste doch meiner Meinung nach #NONE Standard sein?


    Ich glaube langsam, dass meine eigenen Synapsen in meiner zu kleinen Festplatte, dieses Problem nicht mehr untereinander verknüpfen kann :kopfkratz:


    Gruß
    Bruce

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