Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 727fa15453fcace956b835e2377d4269 > files > 524

player-doc-3.0.2-5.fc14.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">

<html>
<!-- $Id: header.html 8799 2010-06-28 04:12:42Z jpgr87 $ -->

<HEAD>


<meta HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=utf-8">
<meta name="keywords" content="stage, robot, simulation, player, player/stage">
<link href="doxygen.css" rel="stylesheet" type="text/css">

<style type="text/css">

.floatright { float: right; margin: 0 0 1em 1em; }

body {
  font-family: sans-serif;
  #font-family: Geneva, Verdana, Helvetica, Arial, sans-serif;
  background-color: #FFF;
  color:#000;
}


a:link { 
	color: #A00;
}

a:visited { 
	color: #800;
}

a { text-decoration: none; }
a:hover { text-decoration: underline; }


.timestamp { text-align:right; background-color: #DDD; font-size:75%;}

h1 { 
  font-size:160%; 
}

h2 {
  font-size:110%;
  #color: #FFF;
  #background-color: #666;
  #padding:3px;
}

h3 { text-align:left; }

img {
  border: 0;
}

ul.menu { 
    position:relative;
    left:-2.5em;
    margin-bottom:0px;
    margin-top:0px;
}

ul.menu1 { 
    position:relative;
    left:-2.1em;
    margin-bottom:0px;
    margin-top:0px;
}

li.menu { 
    list-style-type: none;
    position:relative;
    #left:-0.5em;
}


#sidebar { position: absolute; left:0px; padding:2em; top:0em; width:12em;}

#content { position: absolute; left:12em; top:0em; padding-left:3em; padding-right:3em; padding-bottom:2em; margin-top:1em; margin-right:2em; }

div.box { background-color:#EEE; border: 1px solid #000; padding: 0.5ex 0.4em 0.5ex 0.6em; margin:1em;  }
div.title { font-weight:bold; background-color:#eee; margin-bottom:2px;}

div.topbar { position: absolute; top:0px; left:9em; margin:1em; }

</style>

<TITLE>Player Manual</TITLE>

</HEAD>

<body>

<div id="sidebar"> 

<h2 style="text-align:center;">
<a href="index.html">
<img width=140 src="http://playerstage.sourceforge.net/images/player_button_v3.png" alt="Player logo"><br></a>
</h2>



<div class="box">
<div class=title>Player</div>

<ul class=menu>
<li class=menu><a href="index.html">Frontpage</a>
<li class=menu><a href="modules.html">Contents</a>
</ul>
</div>

<div class="box">
<div class=title>User</div>

<ul class=menu>
<li class=menu><a href="install.html">Installation</a>
<li class=menu><a href="start.html">Quick start</a>
<li class=menu><a href="supported_hardware.html">Supported&nbsp;devices</a>
<li class=menu><a href="group__tutorials.html">Tutorials</a>
<li class=menu><a href="group__utils.html">Utilities</a>
<li class=menu><a href="group__clientlibs.html">Client&nbsp;libraries</a>
<li class=menu><a href="http://playerstage.sourceforge.net/wiki/Basic_FAQ">FAQ</a>
<li class=menu><a href="help.html">Help</a>

</ul>
</div>

<div class=box>
<div class="title">Developer</div>
<ul class=menu>
<li class=menu><a href="architecture.html">Architecture</a>
<li class=menu><a href="group__libplayercore.html">libplayercore</a>
<ul class=menu1>
<li class=menu><a href="group__interfaces.html">interfaces</a></li>
</ul>
<li class=menu><a href="group__libplayerdrivers.html">libplayerdrivers</a>
<ul class=menu1>
<li class=menu><a href="group__drivers.html">drivers</a></li>
</ul>
<li class=menu><a href="group__libplayercommon.html">libplayercommon</a>
<li class=menu><a href="group__libplayerutils.html">libplayerutils</a>
<li class=menu><a href="group__libplayersd.html">libplayersd</a>
<li class=menu><a href="group__libplayertcp.html">libplayertcp</a>
<li class=menu><a href="group__libplayerxdr.html">libplayerxdr</a>
<li class=menu><a href="todo.html">TODO</a>
</ul>
</div>

<div class=box>
<!-- <a href="http://sourceforge.net"><img border=0 src="http://sourceforge.net/sflogo.php?group_id=42445&type=1"></a> -->
<div class="title">Online</div>
<a href="http://playerstage.sourceforge.net">Homepage</a><br>
<a href="http://sourceforge.net/project/showfiles.php?group_id=42445">Download</a><br>
<a href="http://sourceforge.net/projects/playerstage">Project</a><br>
<a href="http://sourceforge.net/tracker/?group_id=42445">Bugs</a><br>
<a href="http://sourceforge.net/mail/?group_id=42445">Help</a>
</div>


</div>

<div id="content" >
<!-- Generated by Doxygen 1.7.1 -->
<div class="header">
  <div class="headertitle">
<h1>MRICP<br/>
<small>
[<a class="el" href="group__drivers.html">Drivers</a>]</small>
</h1>  </div>
</div>
<div class="contents">

<p><a class="el" href="classMap.html">Map</a> Reference ICP.  
<a href="#_details">More...</a></p>
<table class="memberdecls">
</table>
<p><a class="el" href="classMap.html">Map</a> Reference ICP. </p>
<p>This is a <a class="el" href="classMap.html">Map</a> Reference ICP plugin <a class="el" href="classDriver.html" title="Base class for all drivers.">Driver</a> for real time <a class="el" href="classMap.html">Map</a> building and Localization using Iterative Closest Point laser scan matching and odom correction. Currently The driver is in stable release stage, more modifications might be added later on.</p>
<p>This driver is created to support UTS CAS mobile Platforms. This driver can be quite usefull in a lot of applications where odom correction or matching laser scans is essential. I would appreciate any feedback and recommendations that can lead to improving the performance of this driver.</p>
<dl class="user"><dt><b>Compile-time dependencies</b></dt><dd></dd></dl>
<ul>
<li>none</li>
</ul>
<dl class="user"><dt><b>Provides</b></dt><dd></dd></dl>
<p>The MRICP driver provides the following device interfaces, some of them named:</p>
<ul>
<li>"Position" player_interface_position<ul>
<li>This interface returns odometry data.</li>
</ul>
</li>
<li>"Opaque" player_icp_plugin_interface<ul>
<li>This is a dummy interface supporting requests and commands to the ICP / TODO</li>
</ul>
</li>
<li>"Map" player_map_interface<ul>
<li>This interface supports map data requests / TODO</li>
</ul>
</li>
</ul>
<dl class="user"><dt><b>Supported configuration requests</b></dt><dd></dd></dl>
<ul>
<li>"Position" player_interface_position:<ul>
<li>PLAYER_POSITION_SET_ODOM_REQ</li>
<li>PLAYER_POSITION_RESET_ODOM_REQ</li>
<li>PLAYER_POSITION_GET_GEOM_REQ</li>
<li>"Map" player_interface_map:</li>
<li>PLAYER_POSITION_GET_GEOM_DATA</li>
</ul>
</li>
<li>player_icp_plugin_interface (not clear now, i will know it later)<ul>
<li>PLAYER_ICP_X_REQ</li>
<li>PLAYER_ICP_Y_REQ</li>
</ul>
</li>
</ul>
<dl class="user"><dt><b>Configuration file options</b></dt><dd></dd></dl>
<ul>
<li>MAXR (double)<ul>
<li>Default: "7.8"</li>
<li>Maximium Laser Range</li>
</ul>
</li>
<li>MINR (double)<ul>
<li>Default: "0.05"</li>
<li>Minimium Laser Range</li>
</ul>
</li>
<li>period (double)<ul>
<li>Default: "0.5"</li>
<li>Time in sec between scans to be matched.</li>
</ul>
</li>
<li>map_resolution (double)<ul>
<li>Default: "0.05"</li>
<li>Pixel resolution in meter of the map to be build</li>
</ul>
</li>
<li>map_size (double)<ul>
<li>Default: 20</li>
<li>This is defined from the origin to the boundary, so is actually half the size of the map PATCH, not the whole map.</li>
</ul>
</li>
<li>interpolate (bool)<ul>
<li>Default "1"</li>
<li>0 - Simple ICP, 1 - ICP with interpolation</li>
</ul>
</li>
<li>NIT (int)<ul>
<li>Default "10"</li>
<li>Number of iterations for each scan-matching.</li>
</ul>
</li>
<li>gate1 (float)<ul>
<li>Default "0.5"</li>
<li>1st data association gate for each point in scan</li>
</ul>
</li>
<li>gate2 (float)<ul>
<li>Default "0.05"</li>
<li>2nd data association gate for each point in scan</li>
</ul>
</li>
<li>debug (bool)<ul>
<li>Default: 0</li>
<li>Display Debug Messages</li>
</ul>
</li>
<li>warning (bool)<ul>
<li>Default: 1</li>
<li>Display Warning Messages about misalignment problems</li>
</ul>
</li>
<li>Log (bool)<ul>
<li>Default: 0</li>
<li>Loggs the Odom Data (x,y,theta,ltics,rtics,lspeed,rspeed)</li>
</ul>
</li>
<li>map_path(string)<ul>
<li>Default: "maps/"</li>
<li>Specifies the locations where patches and logs are to be saved</li>
</ul>
</li>
<li>start_in(int)<ul>
<li>Default : 2</li>
<li>Delay Before starting, unit is in seconds</li>
</ul>
</li>
<li>robot_id(int)<ul>
<li>Default : 0</li>
<li>The Robot id assigned for map identification</li>
</ul>
</li>
<li>number_of_laser(int)<ul>
<li>Default : 1</li>
<li>The number of lasers to be used in the scan matching (index starts from 0) all lasers should be declared in the requires section</li>
</ul>
</li>
<li>playerv_debug (bool)<ul>
<li>Default : 0</li>
<li>If enabled, the map occupancy will be represented by +1, 0, -1 (occupied, unoccupied, unknown), other wise, the probability will be scaled from 0 - 255</li>
</ul>
</li>
<li>laserX_ranges tuple of (int) where X is an int<ul>
<li>Default : [-90 90]</li>
<li>Determines the acceptable laser scan ranges, even number of elements should exist in the tuple, smaller range should be first followed by the larger range. You will have to manually assign the value of X: eg. in ur configuration file u should have something like this for 2 lasers: number_of_lasers 2 laser0_ranges [-90 -70 -50 -30 -10 90] laser1_ranges [-120 120]<ul>
<li>this represent the following acceptable ranges: for Laser:0 [-90 -70] [-50 -30] [-10 90] for laser:1 [-120 120]</li>
</ul>
</li>
</ul>
</li>
<li>use_max_range (float)<ul>
<li>Default: 0</li>
<li>Specify if you want to use ranges more than the max to update empty spaces in Occupancy grid map, if it's not zero , then the range specified will be used to update the cells within that range only (usefull to reduce the effect of false returns)</li>
</ul>
</li>
<li>sparse_scans_rate (int)<ul>
<li>Default: 1</li>
<li>Specifies the number of laser scan samples resolution, 1 means all beams, 2 means every take one every 2 and so on. (OG will not be affected by this, all samples will be use for OG) it reduces the CPU usage.</li>
</ul>
</li>
<li>use_odom (bool)<ul>
<li>Default: 0</li>
<li>Specify if you want to use the underlying poisition driver's odom in laser scan correction the existance of an underlying position driver no longer means that u are using the odom automatically since it can be used for passing velocity commands.</li>
</ul>
</li>
<li>free_space_prob (float) between 0 and 1<ul>
<li>Default: 0.4</li>
<li>The probability to be used for updating the free space , lower values will help in reducing the false readings effect.</li>
</ul>
</li>
<li>map_saving_period (float)<ul>
<li>Default : 10 sec</li>
<li>Determines how long time we should wait before saving the map. <dl class="user"><dt><b>Example</b></dt><dd></dd></dl>
<div class="fragment"><pre class="fragment">
driver
(
  name "mricp"
  provides ["position2d:1" "map:0"]
  requires ["position2d:0" "laser:0"]
  number_of_lasers 1
  laser0_ranges [-120 120]
  playerv_debug 0
  period 0.2
  MAXR 3.9
  MINR 0.05
  map_resolution 0.05
  map_saving_period 5
  map_size 10
  use_max_range 4
  sparse_scans_rate 3
  map_path "logs/"
  debug 0
  warning 1
  alwayson 1
  log 1
)
</pre></div></li>
</ul>
</li>
</ul>
<dl class="user"><dt><b>Authors</b></dt><dd></dd></dl>
<p>Tarek Taha - Centre of Autonomous Systems - University of Technology Sydney </p>
</div>
<!-- render the modification time of the source file -->


<div class="timestamp">
<hr>

<table style="width:100%;">
<tr>
<td style="text-align:left;">
Last updated 12 September 2005 21:38:45
<!--
<td style="text-align:right;">
<a href="http://validator.w3.org/check/referer"><img style="vertical-align:middle;border:0;width:88px;height:31px"
          src="http://www.w3.org/Icons/valid-html401"
          alt="Valid HTML 4.01!"></a>

 <a href="http://jigsaw.w3.org/css-validator/">
  <img style="vertical-align:middle;border:0;width:88px;height:31px"
       src="http://jigsaw.w3.org/css-validator/images/vcss"
       alt="Valid CSS!">
 </a>
-->
</tr>
</table>
</div>


</tr>
</table>

</BODY>
</HTML>