How can I articulate spherical joint / D6 joint?

Hi, I’m trying to control spherical or D6 joint on the standalone application.

My robot is composed of revolute, spherical and D6 joint. But using below command, only the revolute joint works.

ac = my_robot.get_articulation_controller()
ac.apply_action(ArticulationAction(joint_positions=np.pi/180*np.array(hand.joint), # [0 for i in range(24)]
                                   joint_efforts=None,
                                   joint_velocities=None,
                                   joint_indices=[1, 0, 2, 15, 20, 4, 5, 16, 21, 7, 8, 17, 22, 13, 14, 19, 24, 10, 11, 18, 23]))

How can I move spherical and D6 joint on the code?

print("Num of degrees of freedom after first reset: " + str(hand_robot.num_dof))
> Num of degrees of freedom after first reset: 25

print("Joint Positions after first reset: " + str(hand_robot.get_joint_positions()))
> Joint Positions after first reset: [0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.
 0.]

print("joint sequence : " + str(hand_robot.dof_names))
> joint sequence : ['SphericalJoint_thumb_cmc:0', 'SphericalJoint_thumb_cmc:1', 'SphericalJoint_thumb_cmc:2', 'SphericalJoint_index_mcp:0', 'SphericalJoint_index_mcp:1', 'SphericalJoint_index_mcp:2', 'SphericalJoint_middle_mcp:0', 'SphericalJoint_middle_mcp:1', 'SphericalJoint_middle_mcp:2', 'SphericalJoint_pinky_mcp:0', 'SphericalJoint_pinky_mcp:1', 'SphericalJoint_pinky_mcp:2', 'SphericalJoint_ring_mcp:0', 'SphericalJoint_ring_mcp:1', 'SphericalJoint_ring_mcp:2', 'RevoluteJoint_thumb_mcp', 'RevoluteJoint_index_pip', 'RevoluteJoint_middle_pip', 'RevoluteJoint_pinky_pip', 'RevoluteJoint_ring_pip', 'RevoluteJoint_thumb_ip', 'RevoluteJoint_index_dip', 'RevoluteJoint_middle_dip', 'RevoluteJoint_pinky_dip', 'RevoluteJoint_ring_dip']

One thing I think weird is, there are also D6 joints on my roobt, but when I enter hand_robot.dof_names, D6 joints are not indicated.

thanks!

1 Like

Thanks for the Feedback. We’ve assigned an internal Bug report to track this.

Thanks for the feedback. Can you confirm if the issue still persists with the latest release or not? and if so, can you attach the asset you are trying to control along with a reproducible snippet to show the behavior you are getting.