I have been testing two scripts that use the Franka.
One is from the Isaac Gym examples,
scripts/franka_osc.py. This one has the following lines of code:
# Get inital hand pose hand_handle = gym.find_actor_rigid_body_handle(env, franka_handle, "panda_hand") hand_pose = gym.get_rigid_transform(env, hand_handle) init_pos_list.append([hand_pose.p.x, hand_pose.p.y, hand_pose.p.z]) init_orn_list.append([hand_pose.r.x, hand_pose.r.y, hand_pose.r.z, hand_pose.r.w])
(The code is not on GitHub and is from the Isaac Gym download)
The other is from the Isaac Gym Env repo, for
FrankaCabinet. This one also needs to query the hand pose of the franka. However, what is confusing to me is that is uses
panda_link7 instead of
panda_hand as shown in these lines:
I was confused about this so I went and ran
python franka_osc.py in the examples script and adjusted the viewer as follows:
It shows that the
panda_hand is yellow,and the
panda_link7 is blue. This is confirmed from the URDF which shows that there is a joint directly connecting those two links. But, interestingly, it seems like when I show the axes, the axes seem to be showing for the parent link instead of the current one. This is more easily visible with the axes for
panda_link7 since the axes seems to be centered actually at
panda_link6 for some reason?
Thus I am wondering:
Why does a discrepancy exist in the use of the link for determining the “hand pose” of the Franka in Isaac Gym vs Isaac Gym Envs?
Why does the axes seem to show that the axes are centered at the parent links? Is this relevant to the first issue? (It might not be but it is a question that came up when I was investigating this.)