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
Online Roboterschulung
Werbung schalten Roboter
Advertise in Robotics
Der Roboterkanal
Deutscher Robotikverband
Werben in Robotik
Werben für Robotik

Stillstandszeiten am Roboter bei Wendepunkten

  • fubini
  • May 19, 2021 at 10:49 AM
  • Thread is Resolved
  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • May 19, 2021 at 10:49 AM
    • #1

    Wie sieht denn das Roboterprogramm aus das ausgeführt wird?

    PTP, LIN?

    Welche Überschleifarten?

    Kommen Meldungen wie z.B. Überschleifen nicht möglich?

    Müssen Achsen an den Umkehrpunkten reversieren?

    Fährst du durch Singularitäten?

    Meldungen während der Ausführung?

    ...

    Es ist schön, dass du beschreibst was du in Matlab/RoboDK machst, das interessiert aber den Roboter nicht. Dem seine Referenz ist nur sein Roboterprogramm und nur das kann erklären wie der Roboter sich verhält.

    Wie kommst du auf Interpolationstakt von 4 ms? KUKA hat 12 ms.

    Mich würde wundern wenn RoboDK die gleichen Verfahrzeiten wie der echte Roboter liefert. Ich glaube nicht dass da unter der Haube der gleiche Trajektorienplaner läuft, sondern eher etwas dass siche die RoboDK Leute ausgedacht haben.

    Ja es gibt Phänomene, dass du bei sehr kurzen aneinander gereiten Bewegungen nicht mehr auf Geschwindigkeit kommst, da die bei kurzen Bewegungen resultierenden Dreiecksprofile nicht mehr maximale Geschwindigkeit erreichen.

    Fubini

    Edited 8 times, last by fubini (May 19, 2021 at 11:03 AM).

  • Schritt für Schritt zum Roboterprofi!
  • WolfHenk
    Reactions Received
    52
    Points
    13,732
    Trophies
    96
    Posts
    2,652
    About Me

    -- RETIRED --

    Location
    50° 31' 18" Nord, 09° 19' 48" Ost, Terra (Sol 3), Alpha-Quadrant
    Occupation
    Was wohl, wenn ich hier rumstürze?
    • May 19, 2021 at 10:56 AM
    • #2

    sowas macht man mit ganz vielen überschleiften LIN-Punkten.

    Sorry, hier trifft reine Mathematik aus der Simulation auf das richtige Leben in Stahl und Eisen. Da haben wir alten Knochen etwas Erfahrung, die wir auch gern mit Leuten teilen.

    Aber ich schränke da gern auch mal ein: Nur mit Grundlehrgang.... ;)

    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.

  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 10:59 AM
    • #3

    Hallo fubini,

    weiter unten siehst du das erstellte Roboterprogramm.

    Die Bewegungsart ist Linearbewegung, außer die erste, das ist eine PTP Bewegung. Ortsüberschleifung wird eingestellt.

    Beim letzten Punkt kommt die Fehlermeldung "Überschleifen nicht möglich", ansonsten läuft das Programm so durch.

    Das RSI gibt mir die Punkte in einem Takt von 0.004 Sekunden aus, ist das nicht der Interpolationstakt?

    Die Punkte die nah beieinander liegen, also in der Nähe des Wendepunkts, hab ich auch mal weg gelassen und einen Mindestabstand von z.B. 2mm festgelegt, aber der Versuchsansatz hat auch keine Früchte getragen. Im Anhang findest du ein Bild dazu.


    &ACCESS RVP
    &REL 1
    &PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
    &PARAM EDITMASK = *
    DEF Wellensimulation ( )

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

    ;FOLD Initialise and set default speed
    BAS (#INITMOV,0)
    BAS (#VEL_PTP,100)
    BAS (#ACC_PTP,20)
    $VEL.CP=0.2
    BAS (#TOOL,0)
    BAS (#BASE,0)
    ;ENDFOLD

    ;;FOLD STARTPOS
    ;$BWDSTART = FALSE
    ;PDAT_ACT = PDEFAULT
    ;BAS(#PTP_DAT)
    ;FDAT_ACT = {TOOL_NO 0,BASE_NO 0,IPO_FRAME #BASE}
    ;BAS(#FRAMES)
    ;;ENDFOLD

    $ADVANCE = 5

    ;FOLD ---- Quickly skip BCO ----
    ; PTP $AXIS_ACT
    ;ENDFOLD

    ;FOLD ---- GO HOME ----
    ; PTP {A1 0.000, A2 -90.000, A3 90.000, A4 0.000, A5 0.000, A6 0.000, E1 0, E2 0, E3 0, E4 0, E5 0, E6 0}
    ;ENDFOLD

    ; Program generated by RoboDK v5.2.1 for KUKA KR 6 R700 sixx on 10/05/2021 09:29:44
    ; Using nominal kinematics.
    ; ---- Setting reference (Base) ----
    $BASE = {FRAME: X 0.000,Y 0.000,Z 0.000,A 0.000,B 0.000,C 0.000}
    ; --------------------------
    ; ---- Setting tool (TCP) ----
    $TOOL = {FRAME: X 0.000,Y 0.000,Z 200.000,A 180.000,B -90.000,C 0.000}
    ; --------------------------
    $APO.CPTP = 0.000
    $APO.CDIS = 0.000
    PTP {A1 0.00000,A2 -45.00000,A3 90.00000,A4 0.00000,A5 -45.00000,A6 0.00000,E1 0.00000} C_PTP
    $VEL.CP = 0.05000
    LIN {X 810.581,Y 0.000,Z 386.896,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04991
    LIN {X 810.581,Y 0.000,Z 384.405,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04972
    LIN {X 810.581,Y 0.000,Z 381.927,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04941
    LIN {X 810.581,Y 0.000,Z 379.467,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04897
    LIN {X 810.581,Y 0.000,Z 377.033,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04842

    [...]

    LIN {X 810.581,Y 0.000,Z 415.526,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04218
    LIN {X 810.581,Y 0.000,Z 413.385,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04347
    LIN {X 810.581,Y 0.000,Z 411.182,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04465
    LIN {X 810.581,Y 0.000,Z 408.924,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04571
    LIN {X 810.581,Y 0.000,Z 406.614,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04666
    LIN {X 810.581,Y 0.000,Z 404.260,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04750
    LIN {X 810.581,Y 0.000,Z 401.867,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04821
    LIN {X 810.581,Y 0.000,Z 399.442,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04881
    LIN {X 810.581,Y 0.000,Z 396.990,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04928
    LIN {X 810.581,Y 0.000,Z 394.517,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04963
    LIN {X 810.581,Y 0.000,Z 392.030,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04985
    LIN {X 810.581,Y 0.000,Z 389.534,A 0.000,B 0.000,C 180.000,E1 0.00000} C_DIS
    $VEL.CP = 0.04997
    END

    Images

    • over2,0.PNG
      • 53.31 kB
      • 660 × 505
      • 6
  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 11:00 AM
    • #4

    Moin WolfHenk,

    versteh ich das richtig, dein Ansatz wäre also die Punkte um den Wendepunkt zu Überschleifen?

  • SJX
    Reactions Received
    241
    Points
    10,686
    Trophies
    64
    Posts
    2,082
    • May 19, 2021 at 11:45 AM
    • #5

    Und ich sag mal, typisch um das Potential von Spline-Bewegungen auszunutzen......

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

  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 11:51 AM
    • #6

    Hallo SJX,

    den Fehler hab ich auch begangen: Das ist eine Hoch-Runter Bewegung in der Z-Achse, erst die Verknüpfung mit der Zeitachse (X-Achse) lässt es wie die typische Sinusbewegung aussehen. Splines funktionieren erst in einer 2D-Bewegung

  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • May 19, 2021 at 12:41 PM
    • #7

    Moment hab ich das jetzt richtig verstanden du fährst eine einzelne Komponente hoch und runter und erwartest er soll am Umkehrpunkt nicht stehen bleiben? Und wie soll das ohne Nulldurchgang in der Geschwindigkeit funktionieren?

    Du fährst mit voller Geschwindigkeit in eine Richtung und willst ohne die Geschwindigkeit zu reduzieren sofort mit voller Geschwindigkeit in die 180 Grad entgegengesetzte Richtung. Da spielt die Physik nicht mit. Stell dir mal vor du machst das gleiche mit deinem Auto. Ich glaub da geht das auch nicht. warum soll ein Roboter dass dann können?

    Du kannst schon einen Sinus generieren musst dich wie du selber sagst dann aber mindestens 2D bewegen und dann ist wie oben schon gesagt ein Splineblock das beste Mittel der Wahl. Nur so gibst du ihm Weg über die er die Geschwindigkeit ab und dann wieder aufbauen kann. Der Überschleifalgorithmus ist auch so implementiert, dass je spitzer der Winkel zwischen zwei Geradenstücken ist desto weiter die Geschwindigkeit reduziert wird bis du bei 180 Grad schließlich ganz stehen bleiben musst.

    Theoretisch könnte man sich schon einen Überschleifalgorithmus schaffen, der sich den notwendigen Weg durch Überschwingen hinter den Zielpunkt verschafft. Das ist aber gefährlich. Da könnte ja eine Säule oder eine Wand sein. Der Roboter versucht daher immer aus Sicherheitsgründen innerhalb der konvexen Hülle definiert durch die programmierten Zielposen zu bleiben.

    Edited 4 times, last by fubini (May 19, 2021 at 1:01 PM).

  • SJX
    Reactions Received
    241
    Points
    10,686
    Trophies
    64
    Posts
    2,082
    • May 19, 2021 at 1:03 PM
    • #8
    Quote from Ananaselefant

    Das ist eine Hoch-Runter Bewegung in der Z-Achse, erst die Verknüpfung mit der Zeitachse (X-Achse) lässt es wie die typische Sinusbewegung aussehen. Splines funktionieren erst in einer 2D-Bewegung

    Wenn ich ihn richtig verstehe, will er einen "Plotter" imitieren.

    Roboter fährt auf einer Achse mit Stift hin und her. Zeitkonstante ist wie Blattvorschub.

    Abgezeichnet soll seine Sinuslinie entstehen.

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

  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 1:25 PM
    • #9

    Hallo fubini,

    Der Roboter fährt hoch und runter, aber kriegt für jeden Punkt eine neue Geschwindigkeit, sodass er an den Wendepunkten die Geschwindigkeit 0m/s erfährt. Die Sicherheit habe ich durch einen "unsichtbaren Raum" gegeben, in dem sich der Roboter bewegen darf.

  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 1:26 PM
    • #10

    Hallo SJX,

    genau so ist es, wenn ich eine bewegte Papierrolle hinter den Roboter packe und ihm einen Stift in den Greifer drücke, soll er eine ideale Sinuswelle schreiben.

  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • May 19, 2021 at 1:42 PM
    • #11

    Hast du auch den $FILTER bei deinen theoretischen Überlegungen bedacht? Der reduziert dir die realisierte Beschleunigung nochmal kräftig. Außerdem sorgt er bei Genauhalt dafür, dass der Roboter Sollwertig genau für Filterzeit steht. Steht er also bei jedem Umkehrpunkt mehrere Sekunden wie du oben schreibst oder addiert sich das über die gesamte Bewegung zu mehreren Sekunden auf? Hast du schon mal die Gesamtzeitverlust gegenüber der Theorie durch die Anzahl der Umkehrpunkte geteilt? Kommt da in etwa Filterlänge raus?

    Generell würde mal ein Trace der realisierten Geschwindigkeiten und Beschleunigungen nicht schaden.

    Fubini

    Edited once, last by fubini (May 19, 2021 at 1:53 PM).

  • Ananaselefant
    Points
    120
    Trophies
    1
    Posts
    19
    • May 19, 2021 at 2:03 PM
    • #12

    Tatsächlich summiert sich die Standzeit an den Wendepunkten zu dem Gesamtzeitverlust auf. Die tatsächlichen Geschwindigkeiten und Beschleunigungen sollte ich mir wirklich mal genauer ansehen, das ist ein guter Punkt.

    Was ich eher komisch finde, was man auch bei dem Detailbild, das ich hochgeladen habe, sehen kann, ist, dass er schneller abbremst, als nach dem Wendepunkt wieder beschleunigt. Sollte nicht wenigstens das gleich bzw. symmetrisch sein?

  • fubini
    Reactions Received
    73
    Points
    4,728
    Trophies
    2
    Posts
    924
    Location
    München
    • May 19, 2021 at 3:16 PM
    • #13

    Nein. Reibung z.B. ist nicht symmetrisch,

  • WolfHenk
    Reactions Received
    52
    Points
    13,732
    Trophies
    96
    Posts
    2,652
    About Me

    -- RETIRED --

    Location
    50° 31' 18" Nord, 09° 19' 48" Ost, Terra (Sol 3), Alpha-Quadrant
    Occupation
    Was wohl, wenn ich hier rumstürze?
    • May 20, 2021 at 12:58 PM
    • #14

    nur hoch und runter?

    Dann wird das nie was. Oben und unten auf 0 bremsen. Das kostet eben Zeit.

    "Roboter sollen sich nicht bewegen wie Michel Jackson, sondern fließende Bewegungen machen, wie ein Walzertänzer..." hat mal ein bekannter Roboterprogrammierer gesagt...

    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.

  • SJX
    Reactions Received
    241
    Points
    10,686
    Trophies
    64
    Posts
    2,082
    • May 20, 2021 at 1:58 PM
    • #15
    Quote from Ananaselefant

    $TOOL = {FRAME: X 0.000,Y 0.000,Z 200.000,A 180.000,B -90.000,C 0.000}
    ; --------------------------
    $APO.CPTP = 0.000
    $APO.CDIS = 0.000

    $APO.CDIS auf 0.0 ? Sicher nicht optimal zum Überschleifen von Punkten.

    $ACC.CP ? Beschreibst Du über "initmove", dann vermutlich 2.3, oder. Wie sieht die Sache bei 10. 0 aus?

    $LOAD ? Für optimales Verhalten sicher nicht förderlich, wenn Du mit "Default" fährst.

    Y = 0 Lässt Du ihn auch gleich noch durch die Handachssingularität tanzen ?

    Punktdichte und Speeddaten an den Wendepunkten ist aus Deinem Ausschnitt nicht ersichtlich.

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

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 autonome mobile Roboter von 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
  • Tool
  • KRC4 compact
  • base
  • vel_ptp
  • KR6 R700 sixx
  • INITMOV
  • ACC_PTP
  • PTP_DAT
  • FRAMES

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