Gazebo | Ignition | Community
Ask Your Question

sdg's profile - activity

2017-03-29 09:46:40 -0500 received badge  Famous Question (source)
2017-03-29 09:46:40 -0500 received badge  Notable Question (source)
2017-02-24 05:08:26 -0500 received badge  Popular Question (source)
2017-02-21 12:51:14 -0500 asked a question Set Odometry in a new robot in ROS

I'm trying to create a robot with a new model in ROS .gazebo/models. I defined model.config and model.sdf. I have to set the ros message Odometry because in the 'risotopic list' there isn't /odom.

How can I define the odometry of my robot?

this is model.sdf:

<sdf version="1.4"> <model name="arduino_robot"> <static>true</static>

    <link name='rack'>
    <inertial>
    <pose>0.001453 -0.000453 0.029787 0 0 0</pose>
    <inertia>
      <ixx>0.058640</ixx>
      <ixy>0.000124</ixy>
      <ixz>0.000615</ixz>
      <iyy>0.058786</iyy>
      <iyz>0.000014</iyz>
      <izz>1.532440</izz>
    </inertia>
    <mass>2.234000</mass>
  </inertial>


    <collision name='plate_down'>
            <pose>0 0 .05 0 0 0</pose>
          <geometry>
            <cylinder>
              <radius>0.19</radius>
              <length>.015</length>
            </cylinder>
          </geometry>
        </collision>
        <visual name='plate_down'>
          <geometry>
            <cylinder>
              <radius>.19</radius>
              <length>.015</length>
            </cylinder>
          </geometry>
        </visual>

    <collision name='plate_up'>
            <pose>0 0 .2 0 0 0</pose>
          <geometry>
            <cylinder>
              <radius>0.19</radius>
              <length>.015</length>
            </cylinder>
          </geometry>
        </collision>
        <visual name='plate_up'>
          <geometry>
            <cylinder>
              <radius>.19</radius>
              <length>.015</length>
            </cylinder>
          </geometry>
        </visual>


     <collision name="left_wheel">
    <!--<pose> y(per centrare le ruote) x(per avvicinare le ruote) z ro teta phi (angoli di rotazione)</pose>-->
    <pose>0.025 0.1 0.05 0 1.5 1.5</pose>
      <geometry>
        <cylinder>
          <radius>.05</radius>
          <length>.02</length>
        </cylinder>
      </geometry>
    </collision>
    <visual name="left_wheel">
      <geometry>
        <cylinder>
          <radius>.05</radius>
          <length>.025</length>
        </cylinder>
      </geometry>
    </visual>

  <collision name="right_wheel">
    <pose>0.025 -0.1 0.05 0 1.5 1.5</pose>
      <geometry>
        <cylinder>
          <radius>.05</radius>
          <length>.02</length>
        </cylinder>
      </geometry>
    </collision>
    <visual name="right_wheel">
      <geometry>
        <cylinder>
          <radius>.05</radius>
          <length>.025</length>
        </cylinder>
      </geometry>
    </visual>

<sensor name="laser" type="ray"> <pose>-0.065000 0 0.092000 0 0 0</pose> <ray> <scan> <horizontal> <samples>180</samples> <resolution>1.000000</resolution> <min_angle>-2.268928</min_angle> <max_angle>2.268928</max_angle> </horizontal> </scan> <range> <min>0.080000</min> <max>10</max> <resolution>0.010000</resolution> </range> </ray> <update_rate>20</update_rate> </sensor> </link> <include> <uri>model://kinect</uri> <pose>-0.087098 0 0.303857 0 0 0</pose> </include>

<joint name="create_rack" type="revolute"> <parent>create::base</parent> <child>rack</child> <axis> <xyz>0 0 1</xyz> <limit> <lower>0</lower> <upper>0</upper> </limit> </axis> </joint> <joint name="kinect_rack" type="revolute"> <parent>kinect::link</parent> <child>rack</child> <axis> <xyz>0 0 1</xyz> <limit> <lower>0</lower> <upper>0</upper> </limit> </axis> </joint>

<plugin name="Odometry" filename="libodometry.so"/>

    </model>
</sdf>