1. Dashboard
    1. Dashboard
    2. Suche
  2. Forum
    1. Unresolved Threads
  3. Members
    1. Recent Activities
    2. Users Online
    3. Team
    4. Search Members
  4. Jobs
  5. Articles
  6. Calendar
    1. Upcoming Events
    2. Map
  7. Shop
    1. Orders
    2. Shipping Costs
  • Login or register
  • Search
Roboterprogrammierer finden
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Blog Articles
  • Events
  • Files
  • Products
  • More Options
  1. Roboterforum.de - die Industrieroboter und Cobot Community
  2. Forum
  3. Industrieroboter Support
  4. KUKA Roboter
Your browser does not support videos autonome mobile Roboter von KUKA
besuche unseren Hauptsponsor
Roboterschulung Online
Robot Support Forum
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Winkelkorrektur beim Absetzen (Palettierroboter)

  • Robin / Robout
  • July 5, 2022 at 12:45 PM
  • Thread is Resolved
  • Der_Robonaut
    Reactions Received
    4
    Points
    164
    Posts
    32
    • July 8, 2022 at 2:58 PM
    • #21

    Da wird wohl eher selten 0, 90, 180 drin stehen, schon klar.

    N bisschen was muss man noch dazu schreiben ;)

  • Schritt für Schritt zum Roboterprofi!
  • Programmiersklave
    Reactions Received
    104
    Points
    6,299
    Posts
    1,203
    About Me

    neuerdings freigelassen

    Location
    märk. Sauerland
    Occupation
    Roboter- und SPS-Programmierer
    • July 8, 2022 at 4:48 PM
    • #22

    Ich versteh das Problem immer noch nicht, glaube ich.

    - Der Bediener hat ein Koordinatensystem im Kopp, um das er drehen möchte. Dies ist zwar in der Position richtig, aber nicht in der Orientierung, denn im Kopp des Bedieners ist es global?

    - Der Bediener möchte das anpassen, aber eben nicht toolbezogen? Toolbezogen wäre aber nötig, um Greiferfehler auszugleichen. Aber egal, er will das global ausgleichen?

    Man rechne also die Korrektur darauf, wo man sie haben möchte. Angenommen, man wolle sie gegen die Vernunft jetzt tatsächlich "global" ausgleichen, dann rechnet man eben in mehreren Schritten und macht Lage und Orientierung unabhängig voneinander und schiebt die Korrektur dazwischen:

    {xpos,ypos,zpos,0,0,0}: //Position (ohne Orientierung) im Base

    {0,0,0,akorr,bkorr,ckorr}: // globale Winkelkorrektur

    {0,0,0,apos,bpos,cpos} //und hier dann die Orientierung des Zielpunktes hinten drauf auf die Korrektur.

    Wenn man dann noch jedes Zwischenergebnis in eine eigene Variable sichert und nicht nur, weil es cool ist, in einer Zeile rechnet, dann sieht man step by step, was man da macht und kann sogar probehalber hinfahren.

    Oder was?

    Automatisierung mit dem geflügelten Walross aus dem Sauerland

  • Robin / Robout
    Points
    90
    Posts
    16
    • July 8, 2022 at 5:22 PM
    • #23
    Quote from Programmiersklave

    Ich versteh das Problem immer noch nicht, glaube ich.

    - Der Bediener hat ein Koordinatensystem im Kopp, um das er drehen möchte. Dies ist zwar in der Position richtig, aber nicht in der Orientierung, denn im Kopp des Bedieners ist es global?

    - Der Bediener möchte das anpassen, aber eben nicht toolbezogen? Toolbezogen wäre aber nötig, um Greiferfehler auszugleichen. Aber egal, er will das global ausgleichen?

    Man rechne also die Korrektur darauf, wo man sie haben möchte. Angenommen, man wolle sie gegen die Vernunft jetzt tatsächlich "global" ausgleichen, dann rechnet man eben in mehreren Schritten und macht Lage und Orientierung unabhängig voneinander und schiebt die Korrektur dazwischen:

    {xpos,ypos,zpos,0,0,0}: //Position (ohne Orientierung) im Base

    {0,0,0,akorr,bkorr,ckorr}: // globale Winkelkorrektur

    {0,0,0,apos,bpos,cpos} //und hier dann die Orientierung des Zielpunktes hinten drauf auf die Korrektur.

    Wenn man dann noch jedes Zwischenergebnis in eine eigene Variable sichert und nicht nur, weil es cool ist, in einer Zeile rechnet, dann sieht man step by step, was man da macht und kann sogar probehalber hinfahren.

    Oder was?

    Display More

    Hallo Programmiersklave,

    ja im Prinzip hast du Recht mit deiner Beschreibung: ich möchte um den TCP drehen aber eben in dem Koordinatensystem der Base. Das ist nämlich das was der Bediener noch halbwegs verstehen kann. Ich kann ihm nicht erklären, dass das TCP mal so und mal so orientiert ist für unterschiedliche Setzpositionen mit verschiedenen Winkelwerten.
    Es wurden ja jetzt 2 Vorschläge genannt die ich sobald ich kann mal testen werde letzterer wäre ja dann auch dein Vorschlag (nur nicht so ausführlich), nämlich dass ich Hilfs-Frames bastle.

    Stelle ich mir momentan so vor:

    Setzpos_x1 = {x Setzpos.X, y Setzpos.Y, z Setzpos.Z, 0, 0, 0} : {0, 0, 0, a Korr.A, b Korr.B, c Korr.C}

    Setzpos_x2 = Setzpos_x1 : {0, 0, 0, a Setzpos.A, b Setzpos.B, c Setzpos.C}

    LIN Setzpos_x2


    Für Setpos_x1 werden die Drehungen auch in der "richtigen" Orientierung ausgeführt weil ich das $Tool so angelegt habe dass es für 0-Winkelorientierung genau zur Base orientiert ist...
    Und die beiden geom. Operatoren verstehe ich momentan als zwei "hintereinander" ausgeführte Drehungen und sind nich gleichzusetzen mit einer Addition der Werte oder ?
    Also nicht:
    Setzpos_x2 = {x Setzpos.X, y Setzpos.Y, z Setzpos.Z, a Setzpos.A+Korr.A, b Setzpos.B+Korr.B, c Setzpos.C+Korr.C}


    Oder wie bei den anderen Kommentaren angedeutet (also mittels geom. Op auf der linken Seite oder ansatzweise die Idee mit der Vektorberechnung aber da muss ja noch ein Zwischenschritt passieren. Danke schonmal jedenfalls ich glaube ich komme zum Ziel :thumbup: ;)

    Edited 2 times, last by Robin / Robout (July 8, 2022 at 5:56 PM).

  • Robin / Robout
    Points
    90
    Posts
    16
    • July 22, 2022 at 12:14 PM
    • #24
    Quote from Robin / Robout

    Setzpos_x1 = {x Setzpos.X, y Setzpos.Y, z Setzpos.Z, 0, 0, 0} : {0, 0, 0, a Korr.A, b Korr.B, c Korr.C}

    Setzpos_x2 = Setzpos_x1 : {0, 0, 0, a Setzpos.A, b Setzpos.B, c Setzpos.C}

    LIN Setzpos_x2

    Habe ich gar nicht mehr getestet.. (führt evtl. auch zum Ziel)

    Um das vorherige Wirr-Warr etwas aufzuklären:
    Also was ich wollte ist die Drehung des Tools (TCP) gemäß den Winkeln der aktuellen Base..

    Bin jetzt zum Ziel gekommen:

    Code
    mk_setzpos = setzpos
    setzpos = winkelkorrektur:setzpos
    setzpos.x = mk_setzpos.x
    setzpos.y = mk_setzpos.y
    setzpos.z = mk_setzpos.z

    der geometrische Operator auf der linken Seite führt zum Ziel!! Denn der dreht das Frame gemäss den Base Koordinatenachsen so wie ich das möchte.. Musste jedoch beachten, dass dabei die Translationen der Setzpositionen entsprechend manipuliert werden. Deshalb hier in Zeile 3-5 nochmal das rücksetzen auf die alten Translationswerte.. :dance:

    Grüsse,

    Robin

Tags

  • 1
  • 33
  • 2
  • ABB
  • ABB Roboter
  • ABS
  • base
  • constant
  • CP_PARAMS
  • Dialog
  • EX
  • fanuc
  • Fehler
  • FRAMES
  • INIT
  • INITIALIZED
  • INITMOV
  • IRC5
  • joint
  • KRC2
  • KRC4
  • kuka
  • new
  • NONE
  • notify
  • PATH
  • PGNO_GET
  • profinet
  • PTP_DAT
  • PTP_PARAMS
  • P_ACTIVE
  • P_FREE
  • P_RESET
  • P_STOP
  • Quit
  • Roboter
  • RobotStudio
  • Schweißen
  • Sps
  • Sync
  • T1
  • t2
  • tcp
  • Tool
  • VALUE
  • VAR
  • vel_cp
  • vel_ptp
  • Yaskawa
  • YRC1000
AD
Your browser does not support videos Automatisierung im Handwerk - ich schaffs mit KUKA
Einloggen für weniger Werbung

gesponserte Artikel

  • Gebrauchtroboter kaufen - Was ist zu beachten. Die Checkliste zum kauf von gebrauchten Robotern

    August 11, 2019 at 7:02 PM
  • Was macht ein Roboterprogrammierer genau und was verdient er?

    August 21, 2019 at 8:17 AM
  • Vernetzen, referenzieren, kollaborieren: Das B2B Portal für die Produktionsautomatisierung

    June 2, 2021 at 11:29 AM

Job Offer

  • Sie wollen Ihr Stellenangebot im Roboterforum schalten? Ab 149€

    Werner Hampel June 17, 2021 at 9:52 AM
  • Werde Roboterprogrammierer bei ROBTEC GmbH in Mainburg / Bayern

    Werner Hampel April 5, 2023 at 7:13 PM
Werbung auf Roboterseite
Roboter programmieren lernen
Banner Robotik

Tags

  • Tool
  • base
  • FRAMES
  • $Tool
  • $Base
  • Geometrischer Operator
  • Korrektur

Wieviele Mitglieder waren heute eingeloggt?

Logge Dich ein, um hier zu lesen wer in den letzten 24h Online war und um weniger Werbung zu sehen.

  1. Privacy Policy
  2. Legal Notice
Powered by WoltLab Suite™ 6.0.22
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on Google Play
Roboterforum.de - die Industrieroboter und Cobot Community in the WSC-Connect App on the App Store
Download