Robotics StackExchange | Archived questions

can't find specific joint when using gazebo model plugin libgazebo_ros_ft_sensor.so

I am trying to attach a Force/Torque sensor to the end-effector of an industrial robot. I think I should attach it on joint link6-tool0 to measure ft. However, I wrote whatever except for joint_1~6 in the tag, the terminal says:

[FATAL] [1460706723.091181613, 198.988000000]: gazebo_ros_ft_sensor plugin error: jointName: link6-tool0 does not exist

usage:

<gazebo>    
    <plugin name="FTsensor_controller"    filename="libgazebo_ros_ft_sensor.so">
       <updateRate>100.0</updateRate>
       <topicName>FTsensor_topic</topicName>
       <gaussianNoise>0.0</gaussianNoise>
       <jointName>link6-tool0 </jointName>
    </plugin>    
</gazebo>

I checked gazeborosft_sensor.cpp , relative codes are as follow:

this->joint_ = this->model_->GetJoint(this->joint_name_);
   if (!this->joint_)
   {
     ROS_FATAL("gazebo_ros_ft_sensor plugin error: jointName: %s does not exist\n",this->joint_name_.c_str());
     return;
   }

Since joint1~6 and joint link6-tool0 are defined in the same XACRO, I have no idea why the plugin can find joint1~6 but can not find link6-tool0. It confuses me a lot. What is actually passed by the Load function of the plugin? And how can I get the ft measurement of the end-effector?

Asked by mizu_lily on 2016-04-15 02:55:07 UTC

Comments

solution at this repo https://github.com/amjack0/universal-robot-with-force-torque-sensor/tree/master/ur_description/urdf look at -> universal_robot/ur_description/urdf/ur5.urdf.xacro

Asked by amjack0 on 2020-08-15 14:15:34 UTC

Answers

I have solved this problem. See on bitbucket gazebo issue #618 and also sdformat pull request #133

Asked by mizu_lily on 2016-04-17 03:39:36 UTC

Comments

Hi it work by just set type of joint to "revolute" insted of "fixed" and give joint Limit , like

      <limit velocity="6.5" effort="1000" lower="0" upper="0" />

Asked by khaled0000 on 2018-04-08 02:53:47 UTC

Comments

my urdf.xacro: So providing the correct joint name worked for me. launch your robot model in gazebo and see the joint name from, model > robot > joints >wrist_3_joint

<gazebo reference="${prefix}wrist_3_link-tool0_fixed_joint">
  <provideFeedback>true</provideFeedback>
</gazebo>
<!-- The ft_sensor plugin -->

/urbot 100.0 ft_sensor_topic wrist_3_joint

Asked by amjack0 on 2020-07-15 05:55:26 UTC

Comments