|
Source code and documentation is available at the official MOOS page, and IvPHelm is available from the official IvPHelm page. MOOS and IvPHelm are open-source applications, see their official pages for full licensing and distribution information.
MOOS Source Code
The latest version of MOOS is 7.0.0. This and previous versions can be downloaded at the official MOOS download page.
IvPHelm Source Code
The latest version of IvPHelm is the “June 04 07 1516” release. This version can be downloaded at the official IvPHelm page.
Windows XP Binaries
These applications are provided for convenience distribution only. SARA is not responsible for the operation of the applications. It is our intent to distribute executables that are of value and that are defect-free. We are unable to rigorously test the executables and rely on public feedback to identify issues. SARA MOOS Binaries
Using the Binaries
By default, the applications assume they are in the following location:
C:/MOOS/MoosRun/Moosbin/Release
You can use any directory you want, but we recommend that to start you create this folder and place all binaries, mission files, and supporting files in the same folder.
Each community is based on a “*.moos” file, which includes parameters for applications within the community. This example mission file is included in the source distribution of MOOS and demonstrates the *.moos file syntax.
The easiest way to implement a MOOS community is by running pAntler, documentation is available here.
MOOS and IvPHelm Prerequisites
As a cross-platform, open-source suite of applications MOOS and IvPHelm draw on other open-source applications. Prerequisites listed below with each application are available from these sources:
LibTiff
LibTiff is an open-source suite of libraries that provides cross-platform image display and manipulation using the TIF standard. The files “libtiff3.dll” “jpeg62.dll” and “zlib1.dll” must be placed in the same folder as the requiring executables. If you will be working with a package listed below as needing LibTiff files, download the “dependencies” package from the official LibTiff for Windows download page.
Windows DLLs
We have found that some Windows XP machines complain that certain core DLLs are missing and therefore MOOS application is halted. If this is a problem for you, please contact us with the error and we can find a common solution. One possible fix may be to install the Microsoft Platform SDK for Microsoft Visual C++ 2005 Express.
Full Suite Download
As we add new MOOS applications or modify existing ones, you will only need to download components that have changed. The Full Suite Download includes the latest executables as one package. It is found on our downloads page.
Note, our list does not include all MOOS or IvPHelm applications found in the source code, but it is close. Please contact us if you would like a specific application added.
Main MOOS Applications
MOOS applications that are central to a MOOS community.
MOOSDb
MOOSDb is the core of a MOOS community. Running just this application, even without a mission file, creates the community.
iRemote.exe
Core MOOS application providing a user interface. iRemote is used to change between Helm and manual control, and control a myriad of other environment variables.
pHelm.exe
Core MOOS pure application for autonomously controlling the vessel. pHelm is a pseudo-behavior-based system that allows multiple behaviors to be launched in succession (pseudo because behaviors are sequential rather than concurrent). Can be replaced with pHelmIvP.exe which is a true behavior-based helm.
MOOS Instruments
MOOS applications that interface to a specific hardware device. Generally, instruments communicate with sensors and actuators.
iActuation.exe
Connects MOOS with the vessel’s motor controllers to drive, steer, and if equipped, run the elevator, all over the serial port. iActuation from MOOS 7.0.0 includes drivers called ASC, Bluefin, JRKerr, and SAIL. SARA has added a driver to control a single Roboteq motor controller on a USV. Channel 1 controls thrust, channel 2 controls steering, and channel C powers a warning light when in autonomous mode.
iCompass.exe
Core MOOS instrument for reading a compass via NMEA strings over the serial port.
iDepth.exe
Core MOOS instrument for reading a depth sensor through the serial port.
iDVL.exe
Core MOOS instrument for reading a Doppler velocity log (used on AUVs) through the serial port.
iGPS.exe
Core MOOS instrument for reading a Garmin or Astech GPS through the serial port. May work with other GPS units that use NMEA and have similar initialization strings.
iGPS5hz.exe
MOOS Application created by SARA, Inc. specifically to read a Garmin 18-5hz through the serial port. It is nice to have GPS readings at 5hz!
iINS.exe
Core MOOS instrument for reading a Crossbow INS through the serial port.
iJanitor.exe
Core MOOS instrument for actuation assistance with Bluefin AUVs.
iLBL.exe
Core MOOS instrument for reading a long-baseline acoustic navigation and communication device through the serial port. Currently only includes driver for the Sonardyne AVTRAK.
iSILabs.exe
MOOS Application created by SARA, Inc. specifically to read an SI Labs Digital Compass Reference Design through the serial port. iSILabs provides yaw, pitch, roll, and temperature (at the device location) at 1hz.
Pure MOOS
Applications that are “pure,” meaning they communicate only with other MOOS applications and not with instruments or user interfaces.
pAntler.exe
Core MOOS pure application for launching a MOOS community. Communities may be launched manually by executing each application individually, but pAntler makes community initiation very convenient.
pEchoVar.exe
pEchoVar is actually distributed with IvPHelm, but its features are so convenient that it is listed with the core MOOS applications. pEchoVar echoes stated MOOS variables under a different name; this is ideal for forcing applications to work together when the data is good but the variable names are not. The executable distributed by SARA includes our modification that outputs stated constants instead of echoing.
pLogger.exe
Core MOOS pure application for logging a MOOS session. pLogger logs stated MOOS variables at the stated acquisition rate.
pMOOSBridge.exe
Core MOOS pure application for connecting two MOOS communities. pMOOSBridge sends stated MOOS variables to a stated MOOS community. The other community must be at a different IP address.
pNav.exe
Core MOOS pure application for managing localization. pNav accepts input from multiple localization sensors (GPS, INS, DVL, etc.). With provided time, EKF, and LSQ parameters, pNav provides ownship location based on the best data available (for example after GPS drops out).
pScheduler.exe
Core MOOS pure application for publishing MOOS messages on a scheduled or regular basis. For example, pScheduler can pass LIGHT=ON and LIGHT=OFF every 2 seconds.
MOOS Utilities
Applications that function as MOOS-related utilities. They do not need to operate within a MOOS community, but can connect to one or more communities to receive and send messages.
uMS.exe
Core MOOS utility for probing MOOS variables. uMS can connect to multiple communities and report on the content of variables and list the running MOOS applications. You can also “poke” a variable by changing its value manually at any time.
uMVS.exe
Core MOOS utility for simulating multiple vehicles.
uPlayback.exe
Core MOOS utility for reading a log file and playing it back through the MOOSDb.
IvPHelm Applications
iMarineSim.exe
Core IvPHelm application for simulating vessel dynamics. Used only when SIMULATE=true, iMarineSim accepts desired values from the Helm and outputs navigation changes based on simulated movement.
pHelmIvP.exe
Core IvPHelm pure application for autonomously controlling the vessel. pIvPHelm is a true behavior-based helm that allows multiple behaviors to be launched concurrently (unlike pHelm with launches them sequentially). An objective-function solver determines optimum action decisions based on the results of the concurrent behaviors. Can be replaced with pHelm.exe that is not a true behavior-based helm but can be easier to develop new behaviors for.
pMarinePID.exe
Core IvPHelm pure application for including a PID between the Helm and the actuators. Without the PID, the vehicle will likely overshoot, oscillate, and generally misbehave while following orders. Even with the PID, the vehicle will misbehave until the PID is tuned.
pMarineViewer.exe
Core IvPHelm application for visualizing a session. This nifty user interface can track multiple vessels over an aerial photo of the test area. Warning that synchronizing TIF images with the user interface is difficult.
pTransponderAIS.exe
Core IvPHelm application for simulating an AIS transponder. This application is used to create a single message containing vessel dynamics (speed, bearing, etc.). Its operation is intended to mimic the information as if a commercial AIS Transponder were located aboard the vehicle. The AIS message can be passed on to other communities and used for collision avoidance behaviors and as input to pMarineViewer.
SARA is available for collaboration or for hire, to develop individual MOOS applications or to implement a complete system. SARA is a registered small business specializing in research and technology for advanced scientific topics. We have experience working with academic institutions, military agencies, and private companies.
Contacting the SARA Robotics Venture
MOOS | Windows XP Binaries | MOOS Overview | Official Downloads | Why MOOS?
|