joint state publisher gui not displaying joints
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 ...
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.The generated file has been uploaded.
@HARPERX I edited the question to add URDF. Also I noticed all the joints have no limits.
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
this will limit the joints from -2pi to 2pi (full circle) you also might prefer to give values to effort and velocity as well.
@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?
No it might not useful for now but it might in future if needed.