Hello,
Using a Motion
object, I tried to increase the orientation_loss_weigh
attribute to get the robot end-effector to keep a fix orientation during the trajectory.
desired_motion = jacobi.Motion("my_motion", robot, start=start, goal=goal)
desired_motion.orientation_loss_weight = 0.5
desired_motion.orientation_target = [x_euler, y_euler, z_euler]
Unfortunately, I couldn't see any impact on the optimized trajectory. And this was true even for very large values of orientation_loss_weight
. In my experiment, the end-effector always rotates the same to avoid the obstacle in front of it, although a path exist that would keep the orientation fixed.
Thanks
5 months ago
1 month ago
2 months ago
2 months ago
Sorry for the late response here - this should be fixed already (by v0.0.24).
There was an issue when the orientation constraint was sometimes ignored when a direct point-to-point motion was possible.
0 2 months ago Reply
I tried again on v0.0.26 and
orientation_loss_weigh
still has no effect for me.However, I just tried in Studio and the constraint there is working as expected. So, maybe I am not using the API properly.
Here is what I do:
Is that correct?
0 2 months ago Reply
@Alban Laflaquiere:
Ah, I see. The
orientation_target
should be a vector in world coordinates, pointing in the desired direction of the TCP. I'll make this more clear in the docs.0 2 months ago Reply
@Lars Berscheid:
Do you mean that
orientation_target
should be a plain[x, y, z, qw, qx, qy, qz]
list instead of ajacobi.Frame
?0 2 months ago Reply
@Lars Berscheid:
Nvm, I managed to get it working. You meant the euler angles in the world frame.
0 1 month ago Reply
@Alban Laflaquiere:
Great. I'm closing this issue.
0 1 month ago Reply
4 months ago
This will be fixed in the upcoming release!
0 4 months ago Reply