Morse Robotics Simulator and MOOS

A labmate (William Woodall) introduced me to an awesome new robotics simulator that is currently being developed called MORSE.  It runs on Blender and after trying USARSim and Microsoft Robotics Developer Studio, it is much easier to use and extend.  I’ve developed the beginnings of a middleware component for it to allow it to communicate with apps using the MOOS framework.  Currently it is capable of reading velocity and yaw rate commands from the database and using them to drive a vehicle and posting the output of any sensor to the database using a generic serialization method.  I’m currently working on adding the ability to specify custom database variable names for the MORSE sensor outputs.

 

Middlewares for MORSE are written in Python.  The pymoos Python MOOS interface code developed by Ian Baldwin was used to connect to the MOOS database.  MORSE and Blender require Python 3 and pymoos was written for Python 2.7 so it had to be modified slightly.  The modified code is available here: pymoos_py32.tar.  The pymoos code makes use of the Boost Python library which in the Ubuntu repository versions is compiled for Python 2.7.  The Boost Python library compiled with the ‘–with-python-version=3.2′ option is needed to use pymoos with MORSE.

The MOOS middleware currently consists of two components the ‘moos_mw.py’ Python script and a ‘moos_empty.blend’ blender file.  An example ‘tutorial-1-solved_moos.blend’ as well as the two middleware components and the modified makefiles are available here: morse_with_moos.tar.gz.

UPDATE:

I’ve created a fork of the morse git repository that contains my MOOS additions.  It is available at: git://github.com/davidhodo/morse.git  It is highly recommended to use this version rather than the above linked file.  The current git version has the generic parser listed above as well as specific parsers for the true simulation pose, lidar, gps, and imu sensors using the variable naming conventions used by our lab.  The variable names used to post the database could, however, be easily changed.

 

This entry was posted in MOOS, MORSE, Software. Bookmark the permalink.

One Response to Morse Robotics Simulator and MOOS

  1. Ian says:

    Hi David,

    This looks like very interesting work. Thanks for your efforts with porting pymoos to python v3.0 – could I add you as a developer on sourceforge so that you can contribute your changes?

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s