joint state publisher gui not displaying joints

asked 2022-01-18 09:23:29 -0500

HARPERX gravatar image

updated 2022-01-19 13:59:07 -0500

osilva gravatar image

I added joint state publisher gui as a dependency in the package.xml of a Solidworks-URDF-generated package. The gui can be shown but does not display any joint. I can see joints in the topic joint_states and links in the rviz tf view.

The package is launched by the auto generated display.launch file. https://github.com/xeonz1/hello-world...

URDF file: https://github.com/xeonz1/hello-world...

<?xml version="1.0" encoding="utf-8"?>
<!-- This URDF was automatically created by SolidWorks to URDF Exporter! Originally created by Stephen Brawner (brawner@gmail.com) 
     Commit Version: 1.6.0-1-g15f4949  Build Version: 1.6.7594.29634
     For more information, please see http://wiki.ros.org/sw_urdf_exporter -->
<robot
  name="robourdf">
  <link
    name="floating_base">
    <inertial>
      <origin
        xyz="0.00024495 -0.0012722 -0.067949"
        rpy="0 0 0" />
      <mass
        value="4.8455" />
      <inertia
        ixx="0.0049666"
        ixy="-1.0406E-07"
        ixz="9.9066E-07"
        iyy="0.0046048"
        iyz="-3.8478E-08"
        izz="0.005612" />
    </inertial>
    <visual>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/floating_base.STL" />
      </geometry>
      <material
        name="">
        <color
          rgba="0.75294 0.75294 0.75294 1" />
      </material>
    </visual>
    <collision>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/floating_base.STL" />
      </geometry>
    </collision>
  </link>
  <link
    name="left_upleg">
    <inertial>
      <origin
        xyz="0.0046554 -0.031008 -0.043235"
        rpy="0 0 0" />
      <mass
        value="1.2447" />
      <inertia
        ixx="0.00090938"
        ixy="-2.5229E-06"
        ixz="-1.3145E-05"
        iyy="0.00068475"
        iyz="-1.0892E-18"
        izz="0.0013204" />
    </inertial>
    <visual>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/left_upleg.STL" />
      </geometry>
      <material
        name="">
        <color
          rgba="0.79216 0.81961 0.93333 1" />
      </material>
    </visual>
    <collision>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/left_upleg.STL" />
      </geometry>
    </collision>
  </link>
  <joint
    name="hipleft"
    type="revolute">
    <origin
      xyz="-0.0059624 0.12813 -0.025445"
      rpy="1.5708 0 0" />
    <parent
      link="floating_base" />
    <child
      link="left_upleg" />
    <axis
      xyz="0 0 -1" />
    <limit
      lower="0"
      upper="0"
      effort="0"
      velocity="0" />
  </joint>
  <link
    name="left_downleg">
    <inertial>
      <origin
        xyz="-9.0205620750794E-17 -0.211687342320125 0.0022775016695418"
        rpy="0 0 0" />
      <mass
        value="0.957579906560362" />
      <inertia
        ixx="0.00120946656146572"
        ixy="-5.25863405944818E-19"
        ixz="-3.25260651745651E-19"
        iyy="0.000474752346896863"
        iyz="-4.87271843219769E-19"
        izz="0.00148334851402019" />
    </inertial>
    <visual>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/left_downleg.STL" />
      </geometry>
      <material
        name="">
        <color
          rgba="0.898039215686275 0.917647058823529 0.929411764705882 1" />
      </material>
    </visual>
    <collision>
      <origin
        xyz="0 0 0"
        rpy="0 0 0" />
      <geometry>
        <mesh
          filename="package://robourdf/meshes/left_downleg.STL" />
      </geometry>
    </collision>
  </link>
  <joint
    name="kneeleft"
    type="revolute ...
(more)
edit retag flag offensive close merge delete

Comments

2

I have no experience with using the SW plugin, but this seems to indicate that your joint types are not movable, i.e. they might be generated as type="fixed". Please attach the generated URDF.

kvik gravatar image kvik  ( 2022-01-19 03:39:20 -0500 )edit

The generated file has been uploaded.

HARPERX gravatar image HARPERX  ( 2022-01-19 10:10:11 -0500 )edit

@HARPERX I edited the question to add URDF. Also I noticed all the joints have no limits.

osilva gravatar image osilva  ( 2022-01-19 14:00:35 -0500 )edit
1

it seem like you should give joint limits in radians for revolute joints as non zero values, else it will not move I guess. For example

<limit effort="330.0" lower="-6.28318530718" upper="6.28318530718" velocity="2.09439510239" />

this will limit the joints from -2pi to 2pi (full circle) you also might prefer to give values to effort and velocity as well.

aarsh_t gravatar image aarsh_t  ( 2022-01-20 00:37:22 -0500 )edit

@osilva@aarsh_t Thanks for the suggestion. I will try to add some limits and see if it works. By the way, are effort and velocity required or I just need to add at least position lower and upper limits?

HARPERX gravatar image HARPERX  ( 2022-01-21 20:35:11 -0500 )edit

No it might not useful for now but it might in future if needed.

aarsh_t gravatar image aarsh_t  ( 2022-01-24 06:42:56 -0500 )edit