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 Handwerk automatisieren - ich schaffs mit KUKA
besuche unseren Partner
Roboterschulung Online
Online Roboterschulung
Werbung schalten Roboter
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Genauer Achswert wird nicht angefahren (Roboter hält an einem vielfachen der Zielposition)

  • Marc B
  • June 18, 2021 at 11:01 AM
  • Thread is Resolved
  • Marc B
    Points
    45
    Posts
    6
    • June 18, 2021 at 11:01 AM
    • #1

    Hallo zusammen,

    ich habe folgendes Problem und hoffe ihr könnt mir hier weiterhelfen:

    Ich habe ein Programm geschrieben, bei dem mit der A4 und A6 in große Achswerte (z.b. 1000°), also mit mehrfacher Umdrehung fahren will. Dazu habe ich in der machine.dat entsprechend die Achswerte auf endlos gestellt (siehe unten). Die Rotation per Handbetrieb funktioniert soweit wunderbar (über die Standardachsgrenzen hinaus). Wenn ich jetzt aber ein Programm abspielen lasse Fährt der Roboter aber nur zum nächstgelegenen vielfachen der Zielposition und führt die mehrfache Rotation nicht aus (siehe angehängte Fotos). Könnt ihr mir sagen was ich noch anpassen muss damit der Roboter in die gewünschten Zielpositionen fährt?


    Viele Grüße und vielen Dank!

    Marc


    Auszug aus machine.dat:

    -------------------------------

    CHAR $V_R1MADA[32]

    $V_R1MADA[]="V6.6.0/KUKA5.2" ;VERSIONSKENNUNG

    INT $TECH_MAX=6 ;MAX. ANZAHL FUNKTIONSGENERATOREN

    INT $NUM_AX=6 ;ACHSEN DES ROBOTERSYSTEMS

    INT $AXIS_TYPE[12] ;ACHSENKENNUNG

    $AXIS_TYPE[1]=3 ;1 = LINEAR, 2 = SPINDEL, 3 = ROTATORISCH, 4 = ENDLICH DREHEND, 5 = ENDLOS

    $AXIS_TYPE[2]=3

    $AXIS_TYPE[3]=3

    $AXIS_TYPE[4]=5

    $AXIS_TYPE[5]=3

    $AXIS_TYPE[6]=5

    $AXIS_TYPE[7]=3

    $AXIS_TYPE[8]=3

    $AXIS_TYPE[9]=3

    $AXIS_TYPE[10]=3

    $AXIS_TYPE[11]=3

    $AXIS_TYPE[12]=3

    DECL FRA $COUP_COMP[6,6] ;ACHSKOPPLUNGSFAKTOR N = ZAEHLER, D = NENNER

    $COUP_COMP[1,2]={N 0,D 1}

    $COUP_COMP[1,3]={N 0,D 1}

    ...

    --------------------------------------------

    DAT

    --------------------------------------------

    DEFDAT RobotTask1

    DECL E6AXIS XRobotMotion1={A1 0.0,A2 -90.000002,A3 90.000002,A4 0.0,A5 60.0,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}

    DECL FDAT FRobotMotion1={TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}

    DECL PDAT PPDAT1={VEL 50,ACC 100,APO_DIST 0}

    DECL E6AXIS XRobotMotion2={A1 0.0,A2 -90.000002,A3 90.000002,A4 700.0,A5 59.999942,A6 0.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}

    DECL FDAT FRobotMotion2={TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}

    DECL E6AXIS XRobotMotion3={A1 0.0,A2 -90.000002,A3 90.000002,A4 699.999927,A5 59.999942,A6 1000.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}

    DECL FDAT FRobotMotion3={TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}

    DECL E6AXIS XRobotMotion4={A1 0.0,A2 -90.000002,A3 90.000002,A4 -700.0,A5 59.999936,A6 -800.0,E1 0.0,E2 0.0,E3 0.0,E4 0.0,E5 0.0,E6 0.0}

    DECL FDAT FRobotMotion4={TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}

    ENDDAT

    -----------------------------------------------


    SRC

    -----------------------------------------------

    DEF RobotTask1( )

    ;FOLD BASISTECH INI

    GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )

    INTERRUPT ON 3

    BAS (#INITMOV,0 )

    ;ENDFOLD (BASISTECH INI)

    ;FOLD PTP RobotMotion1 Vel=50 % PDAT1 Tool[0] Base[0];%{PE}%R 4.1.5,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:RobotMotion1, 3:, 5:50, 7:PDAT1

    $BWDSTART=FALSE

    PDAT_ACT=PPDAT1

    BAS(#PTP_DAT)

    FDAT_ACT=FRobotMotion1

    BAS(#FRAMES)

    BAS(#VEL_PTP,50)

    PTP XRobotMotion1

    ;ENDFOLD

    ;FOLD PTP RobotMotion2 Vel=50 % PDAT1 Tool[0] Base[0];%{PE}%R 4.1.5,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:RobotMotion2, 3:, 5:50, 7:PDAT1

    $BWDSTART=FALSE

    PDAT_ACT=PPDAT1

    BAS(#PTP_DAT)

    FDAT_ACT=FRobotMotion2

    BAS(#FRAMES)

    BAS(#VEL_PTP,50)

    PTP XRobotMotion2

    ;ENDFOLD

    ;FOLD PTP RobotMotion3 Vel=50 % PDAT1 Tool[0] Base[0];%{PE}%R 4.1.5,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:RobotMotion3, 3:, 5:50, 7:PDAT1

    $BWDSTART=FALSE

    PDAT_ACT=PPDAT1

    BAS(#PTP_DAT)

    FDAT_ACT=FRobotMotion3

    BAS(#FRAMES)

    BAS(#VEL_PTP,50)

    PTP XRobotMotion3

    ;ENDFOLD

    ;FOLD PTP RobotMotion4 Vel=50 % PDAT1 Tool[0] Base[0];%{PE}%R 4.1.5,%MKUKATPBASIS,%CMOVE,%VPTP,%P 1:PTP, 2:RobotMotion4, 3:, 5:50, 7:PDAT1

    $BWDSTART=FALSE

    PDAT_ACT=PPDAT1

    BAS(#PTP_DAT)

    FDAT_ACT=FRobotMotion4

    BAS(#FRAMES)

    BAS(#VEL_PTP,50)

    PTP XRobotMotion4

    ;ENDFOLD

    END

    Images

    • IMG_4674_autoscaled.jpg
      • 250.09 kB
      • 1,600 × 1,200
      • 9
    • IMG_4675_autoscaled.jpg
      • 214.78 kB
      • 1,600 × 1,200
      • 5
  • Schritt für Schritt zum Roboterprofi!
  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • June 18, 2021 at 11:06 AM
    • Best Answer
    • #2

    Das ist normales Systemverhalten. Endlos drehende Achsen fahren ihre Zielpunkte immer Modulo 360 Grad und kürzesten Weg an. Ausnahmen sind nur mit neueren KRC4 zu haben, was du sicher nicht hast. Also bleibt nur die Bewegung zu stückeln in Bewegungen nahe bei 180 Grad und diese dann mit Überschleifen zu verbinden.

    Fubini

  • Marc B
    Points
    45
    Posts
    6
    • June 18, 2021 at 11:27 AM
    • #3

    Hallo Fubini,

    erstmal danke für deine schnelle Antwort. Ich werde ein größeres Programm aus DELMIA Robotics V5 exportieren. Ich glaube da könnte ich sogar glück haben, weil eine Rotation in zwei LIN und zwei CIRC Befehle aufgeteilt werden. Das werde ich gleich mal testen.

    Gibt es nur die Möglichkeit über 180° Schritte zu gehen? Denkst du mit einer For-Schleife kann ich das Problem dann einigermaßen smart lösen? Und wie müsste die aussehen, das der KUKA sich dann immer weiter in die selbe Richtung dreht? Einfach zwei Motion Befehle mit dem Zielwert und um 180° verschoben?

    VG Marc

  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • June 18, 2021 at 11:47 AM
    • #4

    Wenn du nur CP-Bewegungen hast kannst du auch mehr kommandieren. Die 180 Grad sind eher die Grenze bei PTP falls du immer in der gleichen Richtung eine Achse drehen willst z.B: weil du den Roboter als Bohrer missbrauchst,. Stell dir vor du stehts bei Null und kommandierst PTP {A1 180}. Soll dann die Achse links oder rechtsrum drehen? Bei Winkeln unter 180 Grad ist das eindeutig.

    Einfach am besten mal selbst mit einfachen Programmen testen und schauen was passiert.

  • Marc B
    Points
    45
    Posts
    6
    • June 18, 2021 at 2:51 PM
    • #5

    Hallo fubini,

    die Programme funktionieren mit dem export aus DELMIA Robotics V5 perfekt.

    Gibt es denn eine Möglichkeit die Achswerte wieder zurückzusetzen? (Außer neu zu justieren)

    Meine Programme laufen immer in eine Richtung und ich würde ungern den Roboter am ende des Tages 10min "zurückdrehen" lassen. :D

    VG Marc

  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • June 18, 2021 at 3:12 PM
    • #6

    Leider nein. Bei KRC2 bleibt dir nur zurückdrehen oder neu justieren.

    Fubini

  • SJX
    Reactions Received
    241
    Points
    10,686
    Trophies
    64
    Posts
    2,082
    • June 18, 2021 at 4:18 PM
    • #7

    Diese Problematik haben viele bei Polier- wie Schleifapplikationen.

    Die, die ich kenne, machen es alle über justieren.

    Gewisse machen es einfach in regelmässigen Abständen.

    Gewisse erst, wenn "Überlauf"-Meldung kommt.

    Geht bei "normalen" KUKA's aber relativ lange, bis Du da reinläufst.

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

  • Hermann
    Reactions Received
    168
    Points
    12,178
    Trophies
    8
    Posts
    2,380
    Location
    Baden-Württemberg
    • June 19, 2021 at 7:36 AM
    • #8

    Vorsicht!

    Es kann schon schon vor dem Überlauf zu Problemen kommen.

    Der Roboter verwendet zumindest in den dat files eine konstante Anzahl Stellen für das Speichern der Achswerte (vorkomma + nachkomma = konstant) . D. h. wenn die Achse zigtausend mal in eine Richtung gedreht wurde nimmt die Anzahl der Vorkommastellen zu, die Anzahl der Nachkommastellen ab, so stellen sich dann zunehmend Rundungsfehler ein.

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

  • kuka
  • base
  • vel_ptp
  • INITMOV
  • PTP_DAT
  • FRAMES
  • Achsposition
  • Achswert
  • Rotation

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