Home | Tutorials | Wiki | Issues
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I tried to swap the connecting joint from the robot base to a new model description. There I wanted to include the base and the arm, but that way doesn't work either.

<sdf version="1.3"> <model name="scitos_arm_and_base">

   <joint name="base_to_arm_base_joint" type="revolute">
      <parent>scitos::base_link</parent>
      <!-- Namespace::name of the link where the arm will be connected -->  
      <child>scitos_arm::arm_base_link</child>
      <axis>
        <xyz>0 0 1</xyz>
        <limit>
          <upper>0</upper>
          <lower>0</lower>
        </limit>
      </axis>
    </joint>

<!-- BASE MODEL INCLUDE incl. base plugins in the base sdf--> 
    <include>
      <!-- Folder name of the model -->
      <uri>model://scitos</uri>
      <name>scitos</name>
      <pose>0 0 0   0 0 0</pose>
    </include>

<!-- ARM MODEL INCLUDE incl. arm model plugins in the arm sdf--> 
   <include>
      <!-- Folder name of the model -->
      <uri>model://scitos_arm</uri>
      <name>scitos_arm</name>
      <pose>-0.075 0 0.63 0 0 0</pose> <!-- x-Wert: (0 + -0.075) -->
    </include>

</model>

</sdf>

The robot preview in Gazebo shows the whole robot with it's arm. But when I spawn it I got the following error:

gazebo: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T* boost::shared_ptr<t>::operator->() const [with T = gazebo::physics::Joint]: Assertion `px != 0' failed.

Playing around with the namespace definitions only result in error messages about links that could not be found.

I tried to swap the connecting joint from the robot base to a new model description. There I wanted to include the base and the arm, but that way doesn't work either.

<sdf version="1.3"> version="1.3">

<!-- Model Name = Namespace -->
<model name="scitos_arm_and_base">   

    <joint name="base_to_arm_base_joint" type="revolute">
      <parent>scitos::base_link</parent>
      <!-- Namespace::name of the link where the arm will be connected -->  
      <child>scitos_arm::arm_base_link</child>
      <axis>
        <xyz>0 0 1</xyz>
        <limit>
          <upper>0</upper>
          <lower>0</lower>
        </limit>
      </axis>
    </joint>

<!-- BASE MODEL INCLUDE incl. base plugins in the base sdf--> 
    <include>
      <!-- Folder name of the model -->
      <uri>model://scitos</uri>
      <name>scitos</name>
      <pose>0 0 0   0 0 0</pose>
    </include>

<!-- ARM MODEL INCLUDE incl. arm model plugins in the arm sdf--> 
   <include>
      <!-- Folder name of the model -->
      <uri>model://scitos_arm</uri>
      <name>scitos_arm</name>
      <pose>-0.075 0 0.63 0 0 0</pose> <!-- x-Wert: (0 + -0.075) -->
    </include>

</model>

</sdf>

The robot preview in Gazebo shows the whole robot with it's arm. But when I spawn it I got the following error:

gazebo: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T* boost::shared_ptr<t>::operator->() const [with T = gazebo::physics::Joint]: Assertion `px != 0' failed.

Playing around with the namespace definitions only result in error messages about links that could not be found.

I tried to swap the connecting joint from the robot base to a new model description. There I wanted to include the base and the arm, but that way doesn't work either.

<sdf version="1.3">

<?xml version="1.0" ?>
<sdf version="1.3">

    <!-- Model Name = Namespace -->
 <model name="scitos_arm_and_base">   

    <joint name="base_to_arm_base_joint" type="revolute">
       <parent>scitos::base_link</parent>
       <!-- Namespace::name of the link where the arm will be connected -->  
       <child>scitos_arm::arm_base_link</child>
       <axis>
         <xyz>0 0 1</xyz>
         <limit>
           <upper>0</upper>
           <lower>0</lower>
         </limit>
       </axis>
     </joint>

 <!-- BASE MODEL INCLUDE incl. base plugins in the base sdf--> 
     <include>
       <!-- Folder name of the model -->
       <uri>model://scitos</uri>
       <name>scitos</name>
       <pose>0 0 0   0 0 0</pose>
     </include>

 <!-- ARM MODEL INCLUDE incl. arm model plugins in the arm sdf--> 
    <include>
       <!-- Folder name of the model -->
       <uri>model://scitos_arm</uri>
       <name>scitos_arm</name>
       <pose>-0.075 0 0.63 0 0 0</pose> <!-- x-Wert: (0 + -0.075) -->
     </include>

 </model>
</sdf>

</sdf>

The robot preview in Gazebo shows the whole robot with it's arm. But when I spawn it I got the following error:

gazebo: /usr/include/boost/smart_ptr/shared_ptr.hpp:418: T* boost::shared_ptr<t>::operator->() const [with T = gazebo::physics::Joint]: Assertion `px != 0' failed.

Playing around with the namespace definitions only result in error messages about links that could not be found.