Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members  

Localization Module


Functions

void mcSonarInit (void)
 Initializes the localization.

void mcSonarInitRes (int res)
 Initiailizes the localization using a particular grid size.

void * mcGetObject (void)
 Gets an mc object (mostly for use with sfGradSetMap).

void mcSetMove (int da, int ds, int tm)
 Sets the delta angle (da) delta distance (ds) or delta time (tm) before loc fires again. More...

void mcUpdateRobotPose (int on)
 call this with true (non-zero) to make the localization update the robot position.

void mcPrintDuringUpdates (int on)
 If true this will print during localization updates, false it won't.

void mcSetGain (int pct)
 Sets the gain of the sensor information in the update step. More...

void mcSetGauss (float dx, float dth)
 Centers the sample distribution on the center of the robot. More...

void mcSetNumSamples (int n)
 Sets the number of samples. More...


Detailed Description

This module is used localization. By itself it can only be used with the sonar to localize in a vector (line) map. With the Laser Localization/Navigation module it can be used with the laser in a grid map generated by a robot.

You can look at/load flloc.act to see how to use this module.


Function Documentation

void mcSetGain int    pct
 

Sets the gain of the sensor information in the update step.

Parameters:
pct  sets the gain of the sensor information in the update step to the percent pct. If pct is 0, no sensor information is used. Reasonable values range from 10 to 50 percent, depending on the environment, the application, and the sensors.

void mcSetGauss float    dx,
float    dth
 

Centers the sample distribution on the center of the robot.

This centers the sample distribution onto the center of where the robot is. You should probably change the robot position with sfJumpRobotAbs and then call this.

Parameters:
dx  the length of the size of the square to put the samples in
dth  the difference in angle to put the samples within

void mcSetMove int    da,
int    ds,
int    tm
 

Sets the delta angle (da) delta distance (ds) or delta time (tm) before loc fires again.

Parameters:
da  the amount turned before relocalizing (degrees)
ds  the distance moved before relocalizing (mm)
tm  the number of cycles to go after the robot stops before relocalizing (it won't localize after the robot stops if this parameter is 0) (cycles)

void mcSetNumSamples int    n
 

Sets the number of samples.

All sample poses are reset to zero, and mcSetGauss may be called to re-center the sample set on the robot.

Parameters:
n  number of samples to use


Generated on Tue Nov 12 17:49:38 2002 for Saphira by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001