AU Robot Servers
Versions
The tarball (zipped) versions are here: http://server.elektro.dtu.dk/ftp/jca/mobotware/
and a few comments for the releases in Release notes
Latest version:
On Jensen: (in /usr/local/smr/bin) is 2.870 (from 20 April 2010).
The Jensen version is kept at this version until course 31388 finishes (until ~ 1 june 2010)
On SVN: is version 2.920.
NB! the svn version can not directly load plugins compiled against version 2.870 (or earlier).
In version 2.920 the server core is updated to make the minimum plug-in design (one cpp file) and still use all server resources (global variables, call to other plugins etc).
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
Programming API documentation
AU Robot servers (AURC)
AURS class documentation http://www.iau.dtu.dk/~jca/rac/html/index.html
Open CV
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
Installation notes=
Installation without FIREWIRE
If you do hat have (and should not use) firewire, then the AURS can be compiled by changing two of the Makefiles:
library ucam4 (in subdirectory ucam4):
In the Makefile change the DEFINES line from
DEFINES = -D USE_IEEE1394
to
DEFINES = -D USE_NO_IEEE1394
And the cameraserver (in directory ucamserver)
In the Makefile change the DEFINE line from
DEFINES = -D USE_IEEE1394
to
DEFINES = -D USE_NO_IEEE1394
and the LDDFLAGS line from
LDFLAGS = -g0 -lcxcore -lcv \ -L../lib -lurob4o -lugen4o -lumap4o -lucam4o \ -lpng -ldl -rdynamic -lcurses -lreadline -lraw1394 -ldc1394_control
to
LDFLAGS = -g0 -lcxcore -lcv \ -L../lib -lurob4o -lugen4o -lumap4o -lucam4o \ -lpng -ldl -rdynamic -lcurses -lreadline
Old stuff
Servers
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
- drivebase.rule - The basis for (HAKO) missions - Drivebase.rule
- 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.
- mapbase.so.0 - a base plugin for mapped lines and connected graph of routes
- aumapobst.so.0 - converts near map lines to obstacle polygons Mapped obstacles
Plug-in structure and description
Variables (global variables and functions across plugins)
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)