Object Oriented Mobile Robot Model II
OOMRM-II Version 5.75

By Derek Jones

[Mailing List] [Robots] [Documentation] [Download the Library] [Robominds Home] [MotoRobots Software Library Home]

Description

The Object Oriented Mobile Robot Model (liboomrm.a) is a C++ library developed currently for the 68332 MRM microprocessor boards developed by Mark Castelluccio; it also includes a mobile robot simulator that runs under Windows. No guarantees they will work 100% for you--there are probably still bugs, and certainly places for improvements. Some code snippets also comes thanks to the MotoRobots Software Library. The OOMRM library proper (liboomrm) like the MotoRobots is licensed under the GNU Lesser General Public License. The DASI (JAUS) library (jaus subdirectory) is for educational use only and covered under a seperate license. Other included modules or packages are governed by their own licenses. Refer to acknowledgements at bottom for details.

Latest News


Setup

The setup will take you through installing the library and making a new project for it. It assumes you will be using the Cygwin environment.

  1. Overview
  2. Installation
  3. Compiling the OOMRM Library
  4. Compiling and Running an Application

OOMRM Architecture and Design Documentation

The following explains the overall design and use of the library and the lower level hardware objects available.

  1. Architecture.
  2. Library Detailed Design
    1. Pure "C" includes
    2. Coordinate Systems
  3. I/O Subsystem
  4. Navigational Design
  5. Error handling/Inter-object communication.
  6. SIM & TPU Priorities and TPU Channel Utilization
  7. Interrupts, Shared Memory, and Critical Sections
  8. Persistent Storage (Shared Memory) Layout
  9. Design Limitations
  10. Lessons Learned

Library Documentation

The following provides documentation for all classes and structures within the OOMRM library. The Hardware API and mapping API are documented seperately.

  1. Mapping API Documentation
  2. Hardware API Documentation

OOMRM Simulator

The OOMRM Mobile Robot simulation allows testing of navigational algorithms. Recently added ability to navigate using A* heuristic; the path generated will be outlined on the simulator.

  1. OOMRM Simulator User's Guide (out of date) (Mostly same as this site).
  2. Brief Overview of Robotic Simulators

OOMRM Development Environment

The following explains the components in the MRM standard environment and any differences that may exist for the OOMRM library.

  1. Overview of boot sequence
  2. OOMRM Customized Template Makefile
  3. OOMRM Linker Script
  4. Where is libmrm.a?
  5. OOMRM address space usage.
  6. CPU32BUG.

Acknowledgements

I wish to thank the following people for also sharing code segment's:


BUGS/ENHANCEMENTS

Questions or suggestions? Join the OOMRM mailing list or write to me (Derek Jones) : d dot b dot jones at verizon dot net.