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

PR2 controller on custom robot, no joints listed..

asked 2013-04-15 03:50:16 -0600

davinci gravatar image

updated 2014-01-28 17:16:11 -0600

ngrennan gravatar image

I am trying to run a controller on a joint in gazebo. I can control joints of the Pr2 and the pendulum example. But if I want to control my own urdf then joints are not visible.

rosrun pr2_controller_manager pr2_controller_manager list-joints
Waiting for mechanism statistics message...

Only transmissions and controller manager block should be present in the urdf? My urdf:

    <?xml version="1.0"?>

<robot name="ar_arm">

 <link name="world" />

 <link name="arm_base">
 <inertial>
    <origin xyz="0.000000 0.000000 0.000990" rpy="0.000000 -0.000000 0.000000"/>
    <mass value="101.000000" />
    <inertia ixx="1.110000" ixy="0.000000" ixz="0.000000" iyy="100.110000" iyz="0.000000" izz="1.010000"/>
  </inertial>
  <collision name="arm_base_geom">
    <origin  xyz="0.000000 0.000000 0.050000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <box size="1.000000 1.000000 0.100000"/>
    </geometry>
  </collision>
  <visual>
    <origin xyz="0.000000 0.000000 0.050000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <box size="1.000000 1.000000 0.100000"/>
    </geometry>
    <material name="Cyan">
     <color rgba="0 1 1  1.0"/>
    </material>     
  </visual> 
</link>

<link name="arm_cylinder">
 <inertial>
     <origin xyz="0.000000 0.000000 0.600000" rpy="0.000000 -0.000000 0.000000"/>
  <mass value="1.000000" />
  <inertia ixx="0.110000" ixy="0.000000" ixz="0.000000" iyy="100.110000" iyz="0.000000" izz="1.010000"/>
  </inertial>
  <collision name="arm_base_geom_arm_trunk">
    <origin  xyz="0.000000 0.000000 0.600000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <cylinder radius="0.050000" length="1.00000"/>
    </geometry>
  </collision>
  <visual name="arm_base_geom_arm_trunk_visual" cast_shadows="1">
    <origin xyz="0.000000 0.000000 0.650000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <cylinder radius="0.050000" length="1.100000"/>
    </geometry>
    <material name="Red">
    <color rgba="255 0 0 1"/>
    </material>
  </visual>
</link>

<link name="arm_shoulder_pan">
  <inertial>  
    <mass value="1.100000"/>
    <origin xyz="0.045455 0.000000 0.000000" rpy="0.000000 -0.000000 0.000000"/>
    <inertia ixx="0.011000" ixy="0.000000" ixz="0.000000" iyy="0.022500" iyz="0.000000" izz="0.013500"/>
  </inertial>

  <collision name="arm_shoulder_pan_geom_arm_shoulder">
    <origin xyz="0.550000 0.000000 0.050000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <box size="1.000000 0.050000 0.100000"/>
    </geometry>
  </collision>
  <visual name="arm_shoulder_pan_geom_arm_shoulder_visual" cast_shadows="1">
    <origin xyz="0.550000 0.000000 0.050000" rpy="0.000000 -0.000000 0.000000"/>
    <geometry>
      <box size="1.000000 0.050000 0.100000"/>
    </geometry>
    <material name="Cyan">
     <color rgba="0 1 1  1.0"/>
    </material>
  </visual>
</link>

<link name="arm_shoulder_pivot">
   <inertial>  
    <mass value="0.100001"/>
    <origin xyz="0.045455 0.000000 0.000000" rpy="0.000000 -0.000000 0.000000"/>
    <inertia ixx="0.011000" ixy="0.000000" ixz="0.000000" iyy="0.022500" iyz="0.000000" izz="0.013500"/>
  </inertial>
<collision name="arm_shoulder_pan_geom">
    <origin pose="0.000000 0.000000 0.050000 0.000000 -0.000000 0.000000"/>
    <geometry>
      <cylinder radius="0.050000" length="0.100000"/>
    </geometry>
  </collision>
  <visual name="arm_shoulder_pan_geom_visual" cast_shadows="1">
    <origin pose="0.050000 0.000000 0.050000" rpy="0.000000 0.000000 0.000000"/>
    <geometry>
      <cylinder ...
(more)
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
0

answered 2013-04-17 10:38:04 -0600

davinci gravatar image

The solution is that you have to but the urdf in the robot description! Although not documented this is required (probably for the p3d).

  <param name="robot_description" command="cat '$(find package)/model/model.urdf'" />
edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2013-04-15 03:50:16 -0600

Seen: 244 times

Last updated: Apr 17 '13