Drehung um den TCP

  • Hallo!


    Ich habe auf meinen HP3L (NX100) zwei Greifer montiert, und soll mit einem Greifer den fertigen Teil aus einer Drehmaschine entnehmen und anschließend mit den 2. Greifer einen Rohteil einlegen.
    Bei einem Rundmaterial klappt das auch. Aber bei einen 6kant-Material habe ich so meine Probleme, denn ich kann die Spindel von der Drehmaschine nicht positionieren. Aus diesem Grund haben wir auf der Spindel einen Sensor angebracht der über ein Bussystem den Roby die Position der Spindel mitteilt.
    Ich habe dafür einen eigen Job angelegt in dem ich die ganze Berechnung und anschließen das Ergebnis in Grad (0 bis max. 60°) in eine Positionsvariable schreibe, denn ich mit CALL aufrufe. Jetzt Versuche ich schon die ganze Zeit mittels SFTON den Roboter beizubringen sich um den TCP zu drehen damit ich den 6kt-Rohling einbringen kann.
    Der Roboter verdreht sich zwar immer irgendwie, aber nie um den TCP. Ich habe jetzt schon sämtlich SFTON Optionen (BF, TF,...) und alle Variablentypen und alle Positionen in der P-Variable durch. Ohne Erfolg. :wallbash:
    Im Teach Betrieb kann ich im Werkzeugkoordinatensystem eine exakte Drehung um den TCP ausführen (d. h. TCP ist korrekt vermessen).


    Geht das was ich will mit SFTON überhaupt? Oder weiß wer wie es sonst gehen könnte?
    :hilfe: :hilfe: :hilfe:


    Gruß
    SLM

  • ANZEIGE
  • Hallo Andi,


    ich habe einen Referenzpunkt geteacht, diesen in eine P-Variable (P000) in Pulse eingelesen und ihn dann in Userframe (sollte mit Toolframe auch funktionieren) umgerechnet.
    Den "Shiftwert" z.B. 60° habe ich in eine D-Variable D000 eingelesen bzw geschrieben.
    Dann wird das gewünschte Element (hier 4 für RX) der P-Variablen durch die D-Varible ersetzt.


    Ein Beispiel wo ich das so angewandt habe, war eine Pick und Place Anwendung. Hier wurden die X und Y Koordinaten sowie RZ von der Kamera übermittelt.
    Der Referenzpunkt wir nie angefahren er dient nur zum Rechnen. Er wurde auf der Fläche geteacht wo das Teil gegriffen werden sollte, damit hat man dann alle notwendigen Koordinaten in der P-Variable drin um sie anzufahren.


    REFP
    GETS $PX011 P000 (mit $PX011 wird der Referenzpunkt eingelesen)
    CNVRT P000 TF
    SETE P000 (4) D000
    MOVL P000 VL=


    Probiers mal aus, ich hoffe das hilft Dir weiter, ansonsten nochmal melden.


    PS: würd mich interessieren obs geklappt hat :merci:


    Grüße Minimann

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