ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

revolute joint defined in URDF is not moving

asked 2018-10-30 01:15:29 -0600

hafiz143 gravatar image

updated 2018-10-30 01:48:03 -0600

Hi, I am on Ubuntu 16.04 using ROS Kinetic. I created a package in my catkin workspace to visualize and play with two links using the joint_state_publisher sliders. I added roscpp, rospy, joint_state_publisher, and robot_state_publisher as dependencies. I sourced the setup.bash in my catkin workspace accordingly. I have a revolute joint defined in my urdf for two links. It loads well in rviz. However, I get a warning

[WARN] [1540905885.947795]: joint1 is not fixed, nor continuous, but limits are not specified!
[ERROR] [1540905885.987862600]: Robot semantic description not found. Did you forget to define or remap '/robot_description_semantic'?

The slider knob for the joint_state_publisher GUI bar is also not loaded. I hope someone could see if I miss a step or add unnecessary dependencies to my package.

My URDF is as follows. I also tried using continuous joint and commented the limit out. The slider loads but playing with the value would not move link1:

<?xml version="1.0"?>
<robot name="roboto">

        <!--material-->
        <material name="orange">
            <color rgba="0.75686275 0.36078431 0.03921569 1"/>
        </material>

        <material name="silver">
            <color rgba="0.61568627 0.83921569 0.94117647 1"/>
        </material>

        <link name="world"/>


        <!--links: base-->

        <link name="base">
            <inertial>
            <origin
                xyz="-0.11257 -4.1589e-05 0.057533"
                rpy="0 0 0" />
            <mass
                value="25.417" />
            <inertia
                ixx="0.347632032016038"
                ixy="-0.000497937869254212"
                ixz="0.0371909126715644"
                iyy="0.710520929572187"
                iyz="0.000244473496051384"
                izz="0.978461123632107" />
            </inertial>
        <visual>
                <origin
                    xyz="0 0 0"
                    rpy="0 0 0" />
                <geometry>
                    <mesh
                        filename="package://urdf_models/meshes/base.stl"/>
                </geometry>
            <material name="orange"/>
        </visual>
        <collision>
                <origin
                    xyz="0 0 0"
                    rpy="0 0 0" />
                <geometry>
                    <mesh
                        filename="package://urdf_models/meshes/base.stl"/>
                </geometry>
        </collision>
        </link>

        <link name="link1">
            <inertial>
            <origin
                xyz="0.048532 0.0047642 0.2152"
                rpy="0 0 0" />
            <mass
                    value="32.007" />

        <inertia
            ixx="1.06695162498236"
            ixy="0.0263563429413544"
            ixz="-0.227777437748705"
            iyy="0.810219541810416"
            iyz="0.00112484567476821"
            izz="0.977594438459942" />
        </inertial>
        <visual>
            <origin
                xyz="0 0 0"
                rpy="0 0 0" />
            <geometry>
                <mesh
                    filename="package://urdf_models/meshes/link1.STL" />
            </geometry>
            <material
                name="orange">
            </material>
        </visual>
        <collision>
            <origin
                xyz="0 0 0"
                rpy="0 0 0" />
            <geometry>
                <mesh
                    filename="package://urdf_models/meshes/link1.STL" />
            </geometry>
        </collision>
    </link>

    <joint name="world_to_robot" type="fixed">
        <parent link="world"/>
        <child link="base"/>
        <origin xyz="0 0 0" rpy="0 0 0"/>
    </joint>

    <joint name="joint1" type="revolute">
        <origin rpy="0 0 0" xyz="0 0 0.0925"/>
        <axis xyz="0 0 1"/>
        <limit effort="1000.0" lower="-2.967" uppper="2.967" velocity="5"/>
        <parent link="base"/>
        <child link="link1"/>
    </joint>

</robot>
edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
0

answered 2019-04-16 02:55:33 -0600

I just noticed a small error. The upper in the limit tag has one p to much. Dont know if this cased the error.

edit flag offensive delete link more
0

answered 2018-11-12 19:52:58 -0600

hafiz143 gravatar image

I manage to use joint_state_publisher GUI in rviz with my robot's URDF by removing the ros-kinetic-moveit-ros-visualization for the time being. I am not sure but it is probably due to the ros moveit bundle software that I install beforehand. This is just my immediate solution. Anyone who can explain more on why I have to remove it please shed some light.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2018-10-30 01:15:29 -0600

Seen: 1,259 times

Last updated: Apr 16 '19