Hi !
Ich habe ien Problem mit der Positionsberechnung. Ich möchte vom PC aus Positionen berechnen und den Roboter an diese fahren lassen. Jetzt benötigt eine Position neben x,y,z,a,b,c noch fl1 und fl2. Mit fl2 habe ich meine Probleme. Wenn ich das richtig verstehe werden pro Achse die Anzahl der Umdrehungen in 4bit in fl2 kodiert. Allerdings bezieht sich das eben auf die Achsen selber und nicht auf das x,y,z Koordinatensystem. Jetzt stell sich mir die frage, wie ich fl2 überhaupt ausrechnen kann ohne die Transformation x,y,z,a,b,c=>j1,j2,j3,j4,j5,j6 die der Robotercontroller eigentlich macht, selber auch zu berechnen? Wenn ich weiss ich möchte an eine Position x,y,z,a,b,c fahren, kann J6 ja kompliziert im Raum liegen und für mich ist nicht einfach erkennbar wieviel Drehungen nötig sind.
Ziel des ganzen wäre zu verhindern dass, wenn ich an eine Position fahre und anschließend an eine andere naheliegende Position z.b. 1cm daneben, sich J6 um 360° dreht. Das würde in meiner Anwendung zu Kolloisionen führen.
Das merkwürdige ist, dass diese Problematik auch besteht wenn ich relative Fahrbefehle der Art MOVE P_CURR * (10, 0, 0, 0, 0, 0) (0, 0) gebe. Auch dabei gibt es auf einmal 360° Drehungen wenn j6 sich dabei über -180° hinausdrehen würde.
Gibt es einen Befehl der Art "Fahrt dort hin, aber mit möglichst wenig Drehung der J6"?
Die Teachbox im Jog Modus kann es abgesehen davon. Wenn man dort vor solch einer Position steht und 1cm in die Richtung bewegt dreht sich j6 nicht um 360° und stattdessen wird rot angepasst. Wie macht die das?
Thx
Marc