env_assembly_bench / contract.json
lukasskellijs's picture
Initial EnvHub package: assembly_bench for Isaac Lab Arena
1e09dca verified
Raw
History Blame Contribute Delete
3.13 kB
{
"robot_type": "droid_franka_robotiq",
"robot_class": "arm7g1",
"control_rate": 15,
"features": {
"camera_obs/front_cam_rgb": {
"role": "observation",
"type": "rgb"
},
"camera_obs/wrist_camera_rgb": {
"role": "observation",
"type": "rgb"
},
"policy/joint_pos": {
"role": "observation",
"state_type": "JOINT_ABS_POS",
"state_representation": "REAL",
"dtype": "float32",
"units": "rad",
"shape": [7],
"names": [
"panda_joint1",
"panda_joint2",
"panda_joint3",
"panda_joint4",
"panda_joint5",
"panda_joint6",
"panda_joint7"
]
},
"policy/gripper_pos": {
"role": "observation",
"state_type": "JOINT_ABS_POS",
"state_representation": "NORM01",
"dtype": "float32",
"units": "none",
"shape": [1],
"names": ["gripper.opening"]
},
"policy/eef_pos": {
"role": "observation",
"state_type": "EE_ABS_POS",
"state_representation": "XYZ",
"frame": "world",
"dtype": "float32",
"units": "m",
"shape": [3],
"names": ["eef_pos.x", "eef_pos.y", "eef_pos.z"]
},
"policy/eef_quat": {
"role": "observation",
"state_type": "EE_ABS_ROT",
"state_representation": "QUATWXYZ",
"frame": "world",
"dtype": "float32",
"units": "none",
"shape": [4],
"names": ["eef_quat.w", "eef_quat.x", "eef_quat.y", "eef_quat.z"]
},
"policy/held_part_pose": {
"role": "observation",
"state_type": "OBJECT_ABS_POSE",
"state_representation": "XYZ_QUATXYZW",
"frame": "env_local",
"dtype": "float32",
"units": "m",
"shape": [7],
"names": ["held.x", "held.y", "held.z", "held.qx", "held.qy", "held.qz", "held.qw"],
"comment": "Privileged (PA-RL critic only); policy adapters must not consume."
},
"policy/fixed_part_pose": {
"role": "observation",
"state_type": "OBJECT_ABS_POSE",
"state_representation": "XYZ_QUATXYZW",
"frame": "env_local",
"dtype": "float32",
"units": "m",
"shape": [7],
"names": ["fixed.x", "fixed.y", "fixed.z", "fixed.qx", "fixed.qy", "fixed.qz", "fixed.qw"],
"comment": "Privileged (PA-RL critic only); policy adapters must not consume."
},
"action": {
"role": "action",
"state_type": "JOINT_ABS_POS",
"dtype": "float32",
"shape": [8],
"names": [
"panda_joint1",
"panda_joint2",
"panda_joint3",
"panda_joint4",
"panda_joint5",
"panda_joint6",
"panda_joint7",
"gripper.open_close"
],
"comment": "Dims 0-6: absolute joint targets (rad, REAL). Dim 7: gripper (NORM01; >0.5 closes)."
}
},
"comment": "assembly_bench DROID (droid_abs_joint_pos): Franka Panda 7-DoF + Robotiq 2F-85. Wire keys match Arena obs groups. One action feature per the v0 contract: 7 absolute joint targets + binary gripper. Omits policy/actions and policy/robot_joint_pos (redundant with action echo / full articulation)."
}