Rohr beschriften

  • Hallo,


    Ich gehe jetzt von einem Tool am Flansch aus. Base ist irgendwo im Raum. Mit externem Tool müsste das genauso sein.


    Du hast deine Base. Von diesem KOS hast du einen Vektor (xyz) zu deinem Punkt. In dem Punkt hast du wieder ein KOS. Die orientierung von diesem bekommst du durch die Euler Winkel. Ausgehend von der Base drehst du um A,B,C. somit hast du die orientierung in dem Punkt.


    Der Robi fährt nun so, dass Punkt -KOS und Tool KOS deckungsgleich sind.
    klar??


    Warum nimmst du nicht den stift als tool?


    Gruß

  • Schritt für Schritt zum Roboterprofi!
  • Ich habe zuerst gedacht, ich könnte das Problem durch den Stift fürs erste vereinfachen. Also letztendlich soll das Rohr komplett angemahlt werden. Und zwar mit einer punktförmigen Farbquelle (daher der Stift). Das steht fest und kann nicht geändert werden.


    LarsH: Ich nehm nicht den Stift als Tool, da ich mehrere Rohre beschriften muss und der Robi die Rohre ja greifen muss.


    Tut mir leid, wenn ich manche Dinge mehrfach nachfragen muss. Beschäftige mich erst seit ner Woche mit Robotern und dem ganzen drumherum.


    Zitat

    Der Robi fährt nun so, dass Punkt -KOS und Tool KOS deckungsgleich sind.


    Das hört sich so an, als ob der das von sich aus tut. Also das mit der ABC-Rotation habe ich verständen. Dann hat mein Tool.KOS die gleiche Orientierung wie mein Punkt. jetzt muss ich nur noch den Punkt unter den externen TCP bringen. Welche Koordinaten gebe ich dann an. Die des Punktes vom Tool-KOS aus gesehen???


  • Wenn ich eine CAD-Datei als STL-Format speichere, dann teilt er das Modell in Dreiecke ein und speichert die Eckpunkte und die Normale der Dreiecke. Damit müsste doch was anzufangen sein.


    Ja, aber auf dem PC. Roboterprogrammiersprachen sind für sowas zu primitiv.



    Auf einem gekrümmten Bauteil wirst du sehr wahrscheinlich keine LIN bewegung machen können.


    Ja, aber wie schon gesagt, es können sehr viele kleine Bewegungen werden. So viele, dass die übliche Größe eines Roboterprogramms gesprengt wird. Man muss also entweder die Punkte während des Verfahrens aus einer Datei laden, oder über Netzwerk zuspielen.



    Jedenfalls muss der Stift immer senkrecht auf der Oberfläche sein und das ziemlich genau.


    Wenn die Anforderungen an die Genauigkeit sehr hoch sind, muss man eventuell direkt im Interpolationstakt des Roboters fahren. Deswegen der Fingerzeig auf RSI ...



    Ich gehe jetzt von einem Tool am Flansch aus.


    Wenn man sagt: "Ein externes Tool bewegt sich auf die Position (x,y,z,a,b,c)" ist das das gleiche, als ob man sagt: "Der Handflansch des Roboters bewegt sich in Weltkoordinaten auf PosExternesToolInWeltkoordinaten * (x,y,z,a,b,c)^-1".


    Alles nur eine Frage der Perspektive und zumindest auf dem PC leicht ineinander umzurechnen ...

  • Für 1 Woche mit Robotern beschäftigen ist das eine ganz schön anspruchsvolle Aufgabe. Ist das deinem Chef klar?


    Zitat

    Du hast deine Base. Von diesem KOS hast du einen Vektor (xyz) zu deinem Punkt.


    und an diesen fährt der Robi mit dem TCP.

  • Zitat

    Ja, aber auf dem PC. Roboterprogrammiersprachen sind für sowas zu primitiv.


    Wollte das in C++ oder Visual C versuchen und dann das ganze irgendwie so programmieren, dass das KRC -Programm die Punkte Stück für Stück einliest. Wie das geschehen soll, weiß ich noch nicht. Aber theoretisch wäre das doch sicherlich möglich, oder?


    Zitat


    Wenn die Anforderungen an die Genauigkeit sehr hoch sind, muss man eventuell direkt im Interpolationstakt des Roboters fahren. Deswegen der Fingerzeig auf RSI ...


    Hm, da müsste ich nochmal genauer schauen, was Interpolationstakt und RSi genau sind.



    Zitat


    Wenn man sagt: "Ein externes Tool bewegt sich auf die Position (x,y,z,a,b,c)" ist das das gleiche, als ob man sagt: "Der Handflansch des Roboters bewegt sich in Weltkoordinaten auf PosExternesToolInWeltkoordinaten * (x,y,z,a,b,c)^-1".


    Alles nur eine Frage der Perspektive und zumindest auf dem PC leicht ineinander umzurechnen ...


    Ja das mit der Perspektive hab ich noch nicht so ganz verstanden. Hab bis jetzt die Punkte nur geteached und da war das ganze noch nicht so einleuchtend. Ich find das ganze noch was verwirrend. Irgendwann wird es hoffentlih klick machen und es ist ganz simpel.


    Zitat


    Für 1 Woche mit Robotern beschäftigen ist das eine ganz schön anspruchsvolle Aufgabe. Ist das deinem Chef klar?


    Ich hoffe doch ;-). Ich habe aber für die Entwicklung des ganzen Prozesses ca. 4 Monate Zeit.


    Zitat

    und an diesen fährt der Robi mit dem TCP.


    Also muss ich das Ganze von meiner Stiftspitze aus berechnen?

    Einmal editiert, zuletzt von max123 ()


  • Wollte das in C++ oder Visual C versuchen und dann das ganze irgendwie so programmieren, dass das KRC -Programm die Punkte Stück für Stück einliest. Wie das geschehen soll, weiß ich noch nicht. Aber theoretisch wäre das doch sicherlich möglich, oder?


    Da hast du den Finger auf die Wunde gelegt, das genau ist der Grund, warum ich andere Hersteller vorziehe ...


    Ohne das weiter auszuführen, lies z.B. mal hier
    http://www.roboterforum.de/rob….0.html;msg23064#msg23064



    Hm, da müsste ich nochmal genauer schauen, was Interpolationstakt und RSi genau sind.


    So ein Roboter berechnet seine Bewegung nicht kontinuierlich, sondern in festen Zeitintervallen. Beim Kuka wohl alle 12 Millisekunden. D.h. wenn er eine Bewegung plant, zerlegt er sie in einzelne elementare Schritte von dieser Dauer.


    Manche Robotersteuerungen erlauben es die Bewegung des Armes direkt auf dieser Ebene zu manipulieren. Quasi eine Art DirectX für Roboter. Bei Kuka ist das sehr teuer, aber dafür langsamer und umständlicher als bei anderen.



    Hab bis jetzt die Punkte nur geteached und da war das ganze noch nicht so einleuchtend. Ich find das ganze noch was verwirrend. Irgendwann wird es hoffentlih klick machen und es ist ganz simpel.


    Lies mal die hier verlinkten Themen, so etwas wirst du brauchen:
    http://www.roboterforum.de/rob…natensysteme-t7012.0.html

  • Zitat

    Wollte das in C++ oder Visual C versuchen und dann das ganze irgendwie so programmieren, dass das KRC -Programm die Punkte Stück für Stück einliest. Wie das geschehen soll, weiß ich noch nicht. Aber theoretisch wäre das doch sicherlich möglich, oder?


    Ja, das ist möglich. z.B. aus einer Textdatei kannst du die Punkte in den Robi kopieren. es gibt aber auch weitere möglichkeiten die Punkte in den Roboter zu bekommen.


    Zitat

    Also muss ich das Ganze von meiner Stiftspitze aus berechnen?


    siehe Bild. Ich denke, du musst deine Punkte im Base KOS beschreiben. d.h. V-Vektor + Euler winkel bestimmen. (bitte mal testen)


    Gruß

  • Hallo max123,


    welchen Durchmesser hat Deine "punktförmige Farbquelle"?
    Dieser Durchmesser gibt Dir den Bahnabstand bei vollfächiger Beschichtung an.


    Das ist eine anspruchsvolle Aufgabe, die nur mit unverhältnismäßig hohem Aufwand per teach in (wenn überhaupt) erledigen kannst.
    Wenn Du über ein CAD-Modell verfügst, empfehle ich Dir dieses zu nutzen. Insbesondere bei 3D-Freiformflächen ist die, von Dir gewünschte, Orientierung des Werkzeugs als Flächennormale in jedem Punkt aufwändig zu berechnen.


    Gruß


    Wolfgang

    RobotWorks<br />CAT Computer Aided Teaching<br />Vom CAD per Mausklick zur Roboterbewegung

  • Aha. Ich geb die Koordinaten vom Werstück KOS aus ein und der sorgt dafür, dass die gewünschte Koordinate am externen TCP positioniert wird. Das hat mir schonmal viel gebracht. Vor allem fürs Verständnis

  • boah. irgendwie steh ich aufm Schlauch (mal wieder :roll:).
    Ich komm nicht an die Euler Winkel.
    Ich hab mal auf ein noch einfacheres Ersatzmodell umgeschaltet (Siehe Bild). SolidWorks teilt mir die Geometrie in Dreiecke ein und gibt mir die drei Eckpunkte, sowie den Normalenvektor.
    Durch Translation bekomm ich auf jedenfall mein rotes KOS in das schwarze der Fläche verschoben. Aber wie bekomm ich rechnerisch noch heraus, dass ich noch um die z-Achse drehen muss? Ich weiß, ich brauch die Euler-Winkel, aber wie komm ich da ran?

  • Die drei Vektoren des schwarzen Systems sind gegeben ?


    Dann geht das so, wie in dem bereits verlinkten Posting:
    http://www.roboterforum.de/rob….0.html;msg13660#msg13660


    Die X-Achse (Einheitsvektor) des schwarzen Systems steht in der ersten Spalte der Matrix, die Y-Achse in der zweiten, die Z-Achse in der dritten und die Translation in der vierten ...


    Aus der Matrix kann man wieder die Euler-Winkel ziehen, wie in der unteren Hälfte des Postings beschrieben.

  • Hallo max123


    Wenn du mit SolidWorks arbeitest, dann ist das System von Krause-Lib eigentlich wie geschaffen dafür.
    Vielleicht macht der Wolfgang das Projekt ja mit dir zusammen um deine Geldgeber davon zu überzeugen
    sich die Software anzuschaffen. ( dann will ich aber Provision ).


    Wolfgang - Seid ihr eigentlich auf der Automatica ?


    Gruß


    Schybulla

    Weil der Klügere nach gibt - regieren die Dummen die Welt

  • Hallo Schybulla,


    wir sind auf der Automatica Halle B, Stand 521.


    Komm doch mal vorbei!


    Gruß


    Wolfgang

    RobotWorks<br />CAT Computer Aided Teaching<br />Vom CAD per Mausklick zur Roboterbewegung

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