SafeMove drehen

  • Hallo liebe Community,


    ich weiß, mein Titel ist etwas eigenartig aber so ist auch mein Anliegen:


    Der Kunde will den Roboter (ICR2600) um 135° drehen, das Programm gehört aber dann natürlich entsprechend angepasst. Für die Positionen werde ich wohl einfach ein neues, um 135° gedrehtes Werkobjekt machen und gut ists. Aber was mache ich mit der SafeMove-Konfiguration? Muss ich die ernsthaft neu machen, oder gibt es da auch eine Möglichkeit, die ganze Konfiguration samt der Bereiche "einfach" um das Basiskoordinatensystem (und nur nach dem richtet es sich glaube ich) zu drehen?


    Ich suche nach einer einfachen Lösung. Alles neu machen nur weil der Roboter um 135° gedreht auf dem selben Fleck steht, ist echt verdammt aufwendig und ich hoffe ihr könnt mir da helfen.


    Danke und liebe Grüße

    Sebastian

  • ANZEIGE
  • Der Roboter soll 135° um die Z-Achse gedreht werden?


    Eine Anpassung des Basis-Koordinatensystems sollte das Problem eigentlich lösen. Deine Zonen müssen sich dann natürlich auch auf den Base frame beziehen. Das Handbuch zu SafeMove gibt dazu ein bisschen was her.

  • Genau, 135° um die Z-Achse des Basis-Koordinatensystems.

    Man kann das Basis-Koordinatensystem anpassen? Ist das denn so empfehlenswert? Ich dachte immer, das Basis-Koordinatensystem entspricht immer der Basis, wie es halt werksmäßig das tut und das kann/sollte man nicht ändern.


    Dass sich die Zonen auf die Base beziehen ist kein Problem, kann man ja einfach umstellen. (Hoffentlich)

  • Man kann das Basis-Koordinatensystem anpassen? Ist das denn so empfehlenswert? Ich dachte immer, das Basis-Koordinatensystem entspricht immer der Basis, wie es halt werksmäßig das tut und das kann/sollte man nicht ändern.

    Per Default entspricht das Basis- dem Welt- Koordinatensystem. Das Basis-KS kann man relativ zur Welt verschieben.

  • Alles klar. Ich habe mittlerweile auch die Einstellungen im RobotStudio gefunden.


    Noch eine Frage: Kann ich das wobj0 (ich hoffe mal, das ist das Basiskoordinatensystem?) einfach mit


    VAR num RZ := EULERZYX(\Z, wobj0.oframe.rot);

    RZ := RZ + 135;


    wobj0.oframe.rot := Orient(RZ, 0, 0);


    drehen?


    Oder muss das über irgendwelche Menüpunkte geschehen?


    PS: Die Zeilen habe ich im Eilverfahren geschrieben, müssten aber funktionieren.

  • Das Werkobjekt wobj0 ist fest. Die Drehung erfolgt über Änderung der Parameter. Es ist kein Code dafür erforderlich. Schau mal unter Konfiguration > Motion> Robot. Da kann man den Base frame einstellen. Auch in SafeMove gibt es die Einstellung. Wenn ich mich aber richtig erinnere, dann werden die Daten für den Base frame von der Steuerung gelesen.

  • Alles klar, Trotzdem gibt man die Quaternionen und nicht die eulerschen Winkel ein. Aber das kann ich ja mit dem Code auf irgendein neues wobj anwenden, damit ich die 4 Quaternionen rausfinde und dann dort eingeben kann. Und das wobj0 ist fest wo? Denn aktuell verwendet das Programm ausschließlich wobj0 bei den move-Befehlen. Brauche ich dann ein neues wobj wenn der Robotersockel gedreht ist?


    Sollte so Funktionieren oder?

    Einmal editiert, zuletzt von Se.bastian ()

  • Genau, Drehung ist in Quaternionen anzugeben. Entweder per Code rechnen, ein Werkobjekt im Dateneditor mit Euler-Winkel beschreiben und dann als Quaternionen anzeigen oder einen der zahlreichen Quaternionen-Rechner im Netz verwenden.

    • Hilfreich

    Der Ursprung von Werkobjekt 0 (wobj0) ist im Robotersockel. Wenn du nun zum Beispiel den Roboter physisch drehst, dann dreht sich wobj0 entsprechend mit (dem Roboter).


    Wenn du in deiner Anlage nur den Roboter drehst und alles andere stehen bleibt, dann passen deine Punkte mit wobj0 natürlich nicht mehr, da der Roboter zum Rest gedreht ist. Dafür würdest du dann ein oder mehrere neue Werkobjekte benötigen. Aber das ist ja kein Problem, kannst du einfach rechnen.

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

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