Discussion

Back to discussions page
Posts: 1 Recruit
Hi,

I need to obtain the position and orientation of an irregular object using the Camera Locate node.
I see that  object_location is a variable with the pose structure (x, y, z, x rotation, y rotation, z rotation).

1 - The rotational components are not quiet clear and I would be glad if someone can explain it.
Eg: the x - rotation: Is this the rotation between the  object's x axis and robot base's x axis about the robot base's Z axis ?

2 - is this frame and axis correct ?

3 - During the refine model stage of object teaching, how accurately must the irregular object be rotated by 90deg ? any tolerance ? or do I need to use a L square such that its perfectly 90 during each turn?

4 - In the Confugure Model and Set Position phase. what should the object's orientation be while setting this position ? Should it be specifically in one of the Refine Model sequences ( 1 to 4)  orientations? Will the object's orientation be computed using this as a reference henceforth ?

Regards,

Michael

Tagged:

• Vacuum Beta tester Posts: 642 Expert
1- Object_location gives you the position of the object in base frame. rx,ry,rz are not so easy to interpret. You could eventually calculate the rotation angle using a custom script.

#Calculate de reference frame center on object location and use to calculate Rz rotation.
refFrame=object_location
refFrame[3]=2.22
refFrame[4]=-2.22
refFrame[5]=0

#calculate the offset between the reference frame and the location of the object
offset=pose_trans(pose_inv(refFrame),object_location)

#Rz in reference frame
rzAngle=offset[5]

2-It looks correct

3- This is an approximative 90 degree rotation. Don t worry about the precision

4- This orientation is the reference orientation of the object. If you change it it will have an impact in the rotation angle calculation.

For your information the center of the object is the mass center of the edges selected to bluid the model of the object.