AU Robot Servers

From Rsewiki
Revision as of 08:33, 15 February 2009 by Jca (Talk | contribs)

Jump to: navigation, search

Contents

Documentation of AU robot servers

AU Robot Servers is a software infrastructure that can combine a number of functional modules to a robot with functionality at higher abstraction levels.

Released software

For package and install notes see: [Christian's Wiki Page] - no, that page is now used by others for other purposes, but in summary the released versions are here: http://www.iau.dtu.dk/~jca/rac/releases

and a few comments for the releases in Release notes

CVS updated to version ~2.01 (19 may 2008)

NEW! BUG reporting page here: Change requests (if you do not have write access, then send me a mail mailto:jca@elektro.dtu.dk)

Base Documentation

AU Robot server class documentation http://www.iau.dtu.dk/~jca/rac/html/index.html

OpenCV (1.0) general documentation http://server.elektro.dtu.dk/www/jca/opencv/

OpenCV (1.0) CXCORE documentation http://server.elektro.dtu.dk/www/jca/opencv/ref/opencvref_cxcore.htm

OpenCV (1.0) CV documentation http://server.elektro.dtu.dk/www/jca/opencv/ref/opencvref_cv.htm

Servers

Server-structure-1.png

Server structure issues (global variables and methods)

Camera server ucamserver

Laser scanner server ulmsserver

Empty server userver

Data monitoring client auclient

Static Plug-ins

Static plug-ins is part of the server code, and can be loaded without any additional files, see:

>> module help

To get the available list of static plug-ins (and a short description)

The three Coordinate systems are available as static: odometry (odoPose), UTM (utmPose) and Map (mapPose)

File plug-ins

This is a list of the current available plug-ins in release 2.176:

The intension is that there should be a wiki page for each with further description.

  • auavoid.so.0 - visual graph obstacle avoidance (not stable)
  • auballfinder.so.0 - sample blob finder in a camera image
  • aucamcog.so.0 - a sample center of gravity plug-in for part of a camera image
  • aucamfocus.so.0 - a focus (contrast) calculation on a camera image.
  • aucron.so.0 - a module to execute bash commands at regular intervals - e.g. to move logged images at low priority
  • audrivepos.so.0 - drive control to a specific pose (uses auavoid)
  • auefline.so.0 - sample line finder plugin extended to find and maintain wall lines. Is based on the libauextractfeatures library.
  • augps.so.0 - a gps plugin, that maintains an UTM pose from a serial/USB GPS connection
  • aulmsnear.so.0 - a small function to return the closest point in a laserscan as a <laser l0=0.0 .../> type message
  • (aumission.so.0 - is now renamed to aurule Mission monitor sequencer)
  • aurule.so.0 - A rule based mission sequencer - Rule based mission sequencer
  • auroaddrive.so.0 - a drive controller thet follows a road edge (uses auavoid, ausmr and ulmspassable)
  • auseq.so.0 - deprecated mission sequencer - use aurule.so.0.
  • ausmr.so.0 - smr interface
  • ausvs.so.0 - a not quite finished Videre Design stereo camera plug-in
  • uexres.so.0 - sample resource share plug-in - works with uexuse
  • uexuse.so.0 - sample resource share plug-in - works with uexres
  • ulmspassable.so.0 - extracts road lines from a laserscan (tilted laser)
  • ulmsv360.so.0 - virtual 360 deg laser scanner device. This is also available as static plug-in for the ulmsserver.

Plug-in structure and description

plug-in structure

Variables (global variables and functions across plugins)

Coordinate systems

Scan features (@todo make page)

odometry, map or UTM (gps) pose and pose history pose

Guidemark (@todo make page)

Road detect (@todo make page)

Sequencer Sequencer

SMR interface (@todo make page)

Camera server interface (@todo make page)

Laser scanner interface (@todo make page)

Obstacle avoidance (@todo make page)

Road driver (@todo make page)

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox