FT sensor plugin on gazebo

asked 2022-10-21 02:39:44 -0500

KRN.S gravatar image

updated 2022-10-30 09:25:40 -0500

lucasw gravatar image

Hi, I'm trying to set FT sensor to Husky. Howerve, launching gazebo, i got an error saying:

gazebo_ros_ft_sensor plugin error: jointName: blade_joint does not exist

My custermized model looks like a bulldozer. There is a board in front of the husky. I named new joint&link as blade_joint & blade_link and set the sensor to blade_joint (blade_joint is connected to husky's base_link).

When I checked my gazebo, I can see the blade_link itself(i mean its visual), but I cannot find the name of blade_joint & blade_link on the side bar. How can i set the sensor to my new joint?

My urdf code is below:

<?xml version="1.0"?>
<robot name="husky" xmlns:xacro="http://ros.org/wiki/xacro">
    <!--caculation of inertia-->
    <xacro:macro name="box_inertia" params="m x y z">
        <inertia ixx="${m*(y*y+z*z)/12}" ixy = "0" ixz = "0"
                 iyy="${m*(z*z+x*x)/12}" iyz = "0"
                 izz="${m*(x*x+y*y)/12}" /> 
    </xacro:macro>

    <!--connect to Husky's link-->
    <joint name="blade_joint" type="fixed">
        <parent link="base_link"/>
        <child link="blade_link"/>
    </joint>
    <link name="blade_link">
        <visual>
            <geometry>
                <box size="0.01 0.7 0.39"/>
            </geometry>
            <origin xyz="0.5 0 0.1" rpy="0 0 0"/>
            <material name="dark_grey"/>
        </visual>
        <collision>
        <geometry>
            <box size="0.01 0.7 0.39"/>
        </geometry>
    </collision>

    <inertial>
        <origin xyz="0.5 0 0.1"/>
        <mass value="0.1"/>
        <xacro:box_inertia m="0.1" x="0.01" y="0.7" z="0.39"/>
    </inertial>
    </link>
    <gazebo reference="blade_link">
        <material>Gazebo/Black</material>
        <turnGravityOff>false</turnGravityOff>
    </gazebo>

    <!-- Enable the Joint Feedback -->
    <gazebo reference="blade_joint">
        <provideFeedback>true</provideFeedback>
    </gazebo>
    <!-- The ft_sensor plugin -->
    <gazebo>
        <plugin name="ft_sensor" filename="libgazebo_ros_ft_sensor.so">
            <alwaysOn>true</alwaysOn>
            <updateRate>100.0</updateRate>
            <topicName>ft_sensor_topic</topicName>
            <jointName>blade_joint</jointName>
        </plugin>
    </gazebo>
</robot>

Thanks in advance, Karin

edit retag flag offensive close merge delete

Comments

1

What is an FT sensor? Can you provide a link to a wiki page?

Mike Scheutzow gravatar image Mike Scheutzow  ( 2022-10-21 13:19:55 -0500 )edit

Because the joint's type is fixed. Add this line <preserveFixedJoint>true</preserveFixedJoint>, it should do the job.

CroCo gravatar image CroCo  ( 2023-05-25 10:25:00 -0500 )edit