Gazebo pose controller for teleoperation [closed]
Hi,
I want to teleoperate a free floating Gazebo model of the Shadow hand (i.e. without arm kinematics) by means of a 6D pose sensor attached to the wrist of the operator. I tried to use the /gazebo/set_model_state service to directly set the model pose to the transformed pose of the sensor, but this results in the model "jumping around" if the physics are enabled.
Then I added a fixed dummy base link connected to the model via a floating joint and tried a robot_mechanism_controllers/CartesianPoseController to track the pose of the model. However, the floating joint is not recognized by the controller and gets converted to a fixed joint on loadup. So, the question is if there is some workaround allowing the controller to track the "free floating" pose without a defined kinematic chain.
Also, I noticed that apart from the robot_mechanism_controllers/CartesianPoseController, there are robot_mechanism_controllers/JTCartesianController and teleop_controllers/JTTeleopController, both of which seem to be similar controller types but the documentation is a bit sparse. Maybe someone with more experience could give some hints about the conceptual differences/intended applications of those controllers?
Thanks, -Robert-
Hi Robert. None of these controllers will work with floating joints. I'm not sure how to do what you'd like to do, but hopefully someone else will.
I think one option could be to add a 6DOF dummy chain to the hand urdf. For now, I will simply use the CartesianPoseController with Shadow's models for the hand + 4DOF arm.
On a sidenote, as mentioned here , it looks like the JJTeleopController was moved to the JTCartesianController in Electric, but it seems to work only for a 7DOF chain (for the PR2 I presume).
Was this question every resolved?