Warum ist der KUKA bloß so langsam...?

  • Hallo,


    ... ist er ja gar nicht, aber ich habe folgedes Problem.


    Wir müssen Teile im Greifer an einer Rolle vorbeifahren, bewegtes Werkstück. $IPO_MODE = #TCP
    Alles klappt schön schnell, bis der Roboter anfängt das Teil zu drehen. Dann reduziert er seine Bahngeschwindigkeit sehr drastisch und fängt eben an das Teil korrekt, aber gemächlich zu drehen! Das ist aber nicht gut!


    Nun habe ich die Schwenkgeschwindigkeit und die Drehgeschwindigkeit ($VEL.ORI1 und $VEL.ORI2) auf 400 grad/s erhöht. Jetzt geht es etwas besser. Leider kann ich keinen größeren Wert als 400 grad/s angeben. Default sind 200 grad/s!


    Hat jemand eine Idee wie ich das noch schneller bekomme?



    danke und ciao, Andreas

    CONTINUOUS ALWAYS

  • Schritt für Schritt zum Roboterprofi!
  • Oh danke!


    Der KUKA akzeptiert Beschleunigungswerte jenseits der 100%?
    Im schlimmsten Fall regelt er ja sowieso ab, hoff' ich mal!


    Ich werd's mal testen.



    ciao, Andreas

    CONTINUOUS ALWAYS

  • Hallo,


    Wenn du def_vel.. und def_acc.. hochdrehst, ist auch die Deckelung im Bas.src nicht mehr wirksam - dann kannst du zum Beispiel Punkte mit Inlineformularen verwenden.
    Werkzeuglastdaten kannst du dir dann Meiner meinung nach sparen - wie das mit Garantie ist, weis vielleicht der Linde Paul besser.
    Bei kleinen Robotern sind die handachsen stark gefaehrdet.


    Gruss Stefan

  • Habe $VEL.ORI1, $VEL.ORI2, $ACC.ORI1 und $ACC.ORI2 auf 400 gebracht. Hat leider nichts genützt! Er verringert seine Bahngeschwindigkeit in den Kurven immer noch drastisch.

    CONTINUOUS ALWAYS

  • Hallo Andreas,


    schau Dir doch mal ein Trace der Achsen an. Dann siehst Du wenigstens welche Achse das ganze ausbremst.


    Gruß


    Michael

  • Bei den ersten 2 Teilen ist es die 6. Achse, denn nur diese wird da gedreht. Nur bei den 3. Teil kommen Achse 5 und 4 dazu. Die anderen Achsen bewegen sich nur wenig.
    Das Phänomen ist aber bei allen 3 Teilen das gleiche!



    ciao, Andreas

    CONTINUOUS ALWAYS

  • Hallo,


    Wenn Du das Maschinendatum für Geschwindigkeit und Beschleunigung änderst, wird der Roboter
    nicht schneller.
    Das gibt nur den empfohlenden Maxwert an.
    :genau:
    Mehr Erfolg wirst Du mit der Zuweisung in der $config.dat haben.
    Unter CP-Movements findest Du die entsprechenden Parameter.
    DEF_VEL_ORI1 +2 und DEF_ACC_ORI1+2. Bitte die Maxwerte in der $machine.dat beachten, und langsam rantasten. :meld:


    Wichtig! Die Werte sollten vor dem dem ersten Genauhalt wieder auf Default gesetzt werden, damit der Roboter mit den geringeren Rampen bremst.


    Bitte noch ein Trace aufnehmen um eine Überlastung auszuschliessen. Viel Spaß :beerchug:


    Gruss

  • Versteh ich nicht! Die DEF_ -Daten sind keine Systemvariablen, nur standart-Default-Variablen!
    Aus ihnen wird in Abhängingkeit mit anderen Vorgaben in der bas.src die Systemvariablen $vel.. und $acc.. beschrieben.
    Wenn ich die gleich die $vel.ori1/2 und $acc.ori1/2 auf 400 und 800 setze (höher gehts nicht!) hat das doch die gleiche Wirkung, oder?





    ciao

    CONTINUOUS ALWAYS

    Einmal editiert, zuletzt von ah_robotics ()

  • Hallo ah_robotics,


    hast Du die Punkte mit Inlineformularen geteacht?


    Falls ja, überschreibst Du Dir die Systemvariablen in jedem Punkt wieder mit den DEF_VEL_/ACC_ Werten. Dann wäre SynchRobots Lösung was Du suchst. :genau:


    Falls nein, nun ja...
    Welcher Robotertyp ist es denn?
    Wieviel Gewicht ist vorne dran?
    Welche Lastdaten... :nocheck:


    Lade doch einfach mal ein Archiv hoch, dann spar ich mir die vielen Fragen :gutidee:


    Hartmut

  • Hallo Hartmut,


    nach SynchRobots Lösung würden ja alle Bahnen beschleunigt werden, nicht nur die für die Moving Part Bahn.
    Ich habe gleich die bas.src gehackt, das ist nicht die feine englische Art, aber wir brauchen sowieso 'ne andere Lösung:


    Code
    IF ACC_FACTOR>400.0 THEN


    Bei $vel.ori.. ist es ja Wurscht:


    Code
    IF VARSTATE ("$VEL.ORI1") <> #INITIALIZED THEN
        $VEL.ORI1=DEF_VEL_ORI1 ; swivel velocity
      ENDIF


    Wenn nicht initialisiert dann default, sonst überschreibt er ja nix, zumindest nicht in der bas!


    An den Lastdaten kann es liegen, die sind sehr hoch, denn unser Greifer ist sehr schwer! Aber es sind die gleichen wie bei PTP, da ist er aber wirklich superschnell!



    ciao, Andreas

    CONTINUOUS ALWAYS

  • Hallo Andreas,


    falls Du Interesse an weiteren Antworten hast :


    Bitte schau die bisherigen Antworten durch und poste die gewünschten Daten, z.B. einen Roboter-Abzug.


    Ich denke niemand hier hat Lust oder Zeit die Nadel im Heu auch noch blind zu suchen! :ohnemi:


    Hartmut

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