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.
- Add C328 Camera Module.
- Architecture changes in communication and JAUS library.
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.
- Overview
- Installation
- Compiling the OOMRM Library
- 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.
- Architecture.
- Library Detailed Design
- Pure "C" includes
- Coordinate Systems
- I/O Subsystem
- Navigational Design
- Error handling/Inter-object communication.
- SIM & TPU Priorities and TPU Channel Utilization
- Interrupts, Shared Memory, and Critical Sections
- Persistent Storage (Shared Memory) Layout
- Design Limitations
- Lessons Learned
The following provides documentation for all classes and structures within the OOMRM library.
The Hardware API and mapping API are documented seperately.
- Mapping API Documentation
- Hardware API Documentation
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.
- OOMRM Simulator User's Guide (out of date) (Mostly same as this site).
- 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.
- Overview of boot sequence
- OOMRM Customized Template Makefile
- OOMRM Linker Script
- Where is libmrm.a?
- OOMRM address space usage.
- CPU32BUG.
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.