ARGoS Example

trajectory.argos

<- back

<?xml version="1.0" ?>
 
<!-- *************************************************** -->
<!-- * A fully commented XML is diffusion_1.xml. Refer * -->
<!-- * to it to have full information about what       * -->
<!-- * these options mean.                             * -->
<!-- *************************************************** -->
 
<argos-configuration>
 
  <!-- ************************* -->
  <!-- * General configuration * -->
  <!-- ************************* -->
  <framework>
    <system threads="0" />
    <experiment length="0"
                ticks_per_second="10"
                random_seed="124" />
  </framework>
 
  <!-- *************** -->
  <!-- * Controllers * -->
  <!-- *************** -->
  <controllers>
 
    <footbot_diffusion_controller id="fdc"
                                  library="build/controllers/footbot_diffusion/libfootbot_diffusion">
      <actuators>
        <differential_steering implementation="default" />
      </actuators>
      <sensors>
        <footbot_proximity implementation="default" show_rays="true" />
      </sensors>
      <params alpha="7.5" delta="0.1" velocity="5" />
    </footbot_diffusion_controller>
 
  </controllers>
 
  <!-- ****************** -->
  <!-- * Loop functions * -->
  <!-- ****************** -->
  <loop_functions library="build/loop_functions/trajectory_loop_functions/libtrajectory_loop_functions"
                  label="trajectory_loop_functions" />
 
  <!-- *********************** -->
  <!-- * Arena configuration * -->
  <!-- *********************** -->
  <arena size="5, 5, 1" center="0,0,0.5">
 
    <box id="wall_north" size="4,0.1,0.5" movable="false">
      <body position="0,2,0" orientation="0,0,0" />
    </box>
    <box id="wall_south" size="4,0.1,0.5" movable="false">
      <body position="0,-2,0" orientation="0,0,0" />
    </box>
    <box id="wall_east" size="0.1,4,0.5" movable="false">
      <body position="2,0,0" orientation="0,0,0" />
    </box>
    <box id="wall_west" size="0.1,4,0.5" movable="false">
      <body position="-2,0,0" orientation="0,0,0" />
    </box>
 
    <distribute>
      <position method="uniform" min="-2,-2,0" max="2,2,0" />
      <orientation method="gaussian" mean="0,0,0" std_dev="360,0,0" />
      <entity quantity="10" max_trials="100">
        <foot-bot id="fb">
          <controller config="fdc" />
        </foot-bot>
      </entity>
    </distribute>
 
    <distribute>
      <position method="uniform" min="-2,-2,0" max="2,2,0" />
      <orientation method="uniform" min="0,0,0" max="360,0,0" />
      <entity quantity="5" max_trials="100">
        <box id="b" size="0.3,0.3,0.5" movable="false" />
      </entity>
    </distribute>
 
    <distribute>
      <position method="uniform" min="-2,-2,0" max="2,2,0" />
      <orientation method="constant" values="0,0,0" />
      <entity quantity="5" max_trials="100">
        <cylinder id="c" height="0.5" radius="0.15" movable="false" />
      </entity>
    </distribute>
 
  </arena>
 
  <!-- ******************* -->
  <!-- * Physics engines * -->
  <!-- ******************* -->
  <physics_engines>
    <dynamics2d id="dyn2d" />
  </physics_engines>
 
  <!-- ********* -->
  <!-- * Media * -->
  <!-- ********* -->
  <media />
 
  <!-- ****************** -->
  <!-- * Visualization * -->
  <!-- ****************** -->
  <visualization>
    <!--
        This shows how to add customized drawing in the world
        using the qt user functions.
        Check 'argos3 -q qt-opengl' for more help.
    -->
    <qt-opengl>
      <user_functions library="build/loop_functions/trajectory_loop_functions/libtrajectory_loop_functions"
                      label="trajectory_qtuser_functions" />
    </qt-opengl>
  </visualization>
 
</argos-configuration>
 

<- back