16. Januar 2019, 03:41:04
Roboterforum.de - Die Industrieroboter- Anwender und Experten Community

[gelöst] Werkzeug um die Z-Achse eines Punktkoordinatensystems drehen


normal_post Autor Thema: [gelöst] Werkzeug um die Z-Achse eines Punktkoordinatensystems drehen  (Gelesen 1514 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

13. April 2018, 17:43:37
Gelesen 1514 mal
Offline

twin


Hallo Zusammen,

ich bin relativ neu hier im Forum und bräuchte mal einen Tipp vom Profi.

Ich möchte meinen Werkzeug TCP um die Z-Achse des Punktkoordinatensystems eines beliebig orientierten Punktes drehen, bekomme dies aber nicht hin.

Die Z-Achse des Werkzeugs zeigt dabei in den Werkzeugflansch hinein (TOOL_DATA[1]: X=0, Y = 0, Z = 200, A = -90, B = 0, C = 180), Werkzeug ist in meinem Fall ein Stift.

Die Z-Achse der BASE zeigt in den Himmel (BASE_DATA[1]: X=1000, Y=0, Z=500, A = -90, B = 0, C = 0).

Vielen Dank voraus.
« Letzte Änderung: 16. April 2018, 18:22:58 von twin »
  • gefällt mir    Danke

15. April 2018, 02:41:12
Gelesen 1514 mal
Offline

Hermann


Erklär doch  bitte mal was Du unter dem 'Punktkoordinatensystem' verstehst. Ich kenne Base- und Toolkoordinatensystem, aber Punktkoordinatensystem?
Oder mach besser eine Skizze mit Erläuterung.
  • gefällt mir    Danke

15. April 2018, 08:51:25
Gelesen 1514 mal
Offline

twin


Hallo Hermann,

anbei die Skizze.

- Nullframe entspricht World-KS
- Base entspricht dem vermessenen Werkstück-KS
- Tool1 entspricht dem vermessenen Werkzeug-KS
- Pos1 entspricht einem geteachten Punkt der angefahren werden soll (bezug auf Base)

Pos1= {FRAME: X 200.000000,Y 200.000000,Z 100.000000,A 0,B 45,C 0.000000 }(Koordinaten bezogen auf Base)

Wenn der Roboter auf Pos1 steht dann soll dieser als nächstes das Werkzeug um 180°  um die z-Achse des Pos1-KS drehen und sich damit neu orientieren (wäre dann Pos2).

Funktioniert das evtl. so?
DECL FRAME FORI
...
LIN Pos1 C_DIS
FORI=$NULLFRAME
FORI.A = 180.0 ;
LIN $POS_ACT:FORI C_DIS ; Pos2
...
« Letzte Änderung: 16. April 2018, 18:47:39 von twin »
  • gefällt mir    Danke

16. April 2018, 10:29:23
Gelesen 1514 mal
Offline

dax


Servus twin,
soweit ich deine Problemstellung verstanden habe sollte dies so umsetzbar sein:
LIN Pos1 C_DIS ;faehrt deinen Punkt Pos1 an
LIN_REL {A 180} #TOOL ;dreht dein Werkzeug relativ um 180° um die Z-Achse des Werkzeugkoordinatensystems
;Roboter sollte nun auf gewuenschter Pos2 stehen

oder wie du es schon probiert hast mittels Geometrischem Operator (Doppelpunktoperator):

DECL FRAME Verdrehung ;Deklarierung des Verdrehungs-Frames
...
Verdrehung=$NULLFRAME ;Initialisierung des Verdrehungs-Frames
Verdrehung.A=180

LIN Pos1 C_DIS

LIN Pos1:Verdrehung C_DIS ;Pos2  
;alternativ: LIN $POS_ACT:Verdrehung C_DIS ;Pos2




Erklärung: Jeder Punkt wird so angefahren, dass das Werkzeugkoordinatensystem mit dem "Punktkoordinatensystem" deckungsgleich ist. Deshalb drehst du dein Werkzeug wenn du an deinem Punkt stehst auch um das "Punktkoordinatensystem", wenn du um dein Werkzeugkoordinatensystem drehst.

LG dax
« Letzte Änderung: 16. April 2018, 10:36:48 von dax »
Always look on the bright side of life!

Verlass dich nicht auf andere. Mach deine eigenen Fehler! - Manfred Hinrich

16. April 2018, 16:24:02
Gelesen 1514 mal
Offline

twin


Hallo dax,

vielen Dank für die ausführliche Erklärung :) und die passenden Beispiele.
Hat mir echt geholfen.

LG twin


Teile per facebook Teile per linkedin Teile per pinterest Teile per reddit Teile per twitter
 

über das Roboterforum

Nutzungsbedingungen Impressum Datenschutzerklärung

Sponsoren des Roboterforums

ROBTEC GmbH