Giter Site home page Giter Site logo

marialuizacvianna / moos-ivp-enstabretagne Goto Github PK

View Code? Open in Web Editor NEW

This project forked from enstabretagnerobotics/moos-ivp-enstabretagne

0.0 2.0 0.0 51.41 MB

ENSTA Bretagne's MOOS-IvP repository: an autonomy platform based on the MOOS middleware

CMake 0.48% Shell 0.32% Python 0.05% MATLAB 2.18% C++ 83.64% Makefile 0.13% C 13.04% Batchfile 0.01% Objective-C 0.15%

moos-ivp-enstabretagne's Introduction

MOOS-IvP-ENSTABretagne Build Status

Introduction

The moos-ivp-enstabretagne repository is an extension of the MOOS-IvP Autonomy system. This includes MOOS applications, IvP behaviors and mission files for autonomous vehicles of ENSTA Bretagne.

The following vehicles are equipped with this software:

  • Toutatis AUVs
  • Optical AUVs
  • ENSTA Bretagne's boat
  • AUV Saucisse NG

MOOSApp documentation is available by command line:

Options:
  --alias=<ProcessName>
      Launch the MOOSApp with the given process name.
  --example, -e
      Display example MOOS configuration block.
  --help, -h
      Display this help message.
  --interface, -i
      Display MOOS publications and subscriptions.
  --version,-v
      Display all information about the MOOSApp.

Complete documentation can also be found in doc/index.html. Click to access.

Directory Structure

The directory structure for the moos-ivp-enstabretagne is decribed below:

Item Description
bin Directory for generated executable files
build Directory for build object files
build.sh Script for building moos-ivp-enstabretagne
CMakeLists.txt CMake configuration file for the project
data Directory for storing data
doc Directory for documentation files
lib Directory for generated library files
missions Directory for mission files
README The file you are reading!
scripts Directory for script files
src Directory for source code (app, lib)

Installation

MOOS-IvP (typically v14.7.1) is supposed to be installed. More information available on the official website.

Additional packages are required for building moos-ivp-enstabretagne:

sudo apt-get install libtinyxml2-dev libusb-1.0-0-dev mono-runtime libmono-winforms2.0-cil libv4l-dev libopencv-dev libboost1.55-dev libboost-system1.55-dev

Specific configuration is required for Pololu devices. In the project repository:

sudo cp scripts/99-pololu.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules
sudo adduser your_username dialout video

Be careful to change your_username.

Octomap is needed for the particle filter:

git clone https://github.com/OctoMap/octomap.git ; cd octomap/octomap/ ; mkdir build ; cd build ; cmake .. ; sudo make install

If you clone the repository, either use:

git clone --recursive

or if you already cloned, use:

git submodule init ; git submodule update --recursive

Build Instructions

Linux and Mac Users

To build on Linux and Apple platforms, execute the build script within this directory:

./build.sh

To build without using the supplied script, execute the following commands within this directory:

mkdir -p build
cd build
cmake ../
make
cd ..

Windows Users

To build on Windows platform, open CMake using your favorite shortcut. Then set the source directory to be this directory and set the build directory to the build directory inside this directory.

The source directory is typically next to the question: Where is the source code?
The build directory is typically next to the question: Where to build the binaries?

Alternatively, CMake can be invoked via the command line. However, you must specify your generator. Use cmake --help for a list of generators and additional help.

Environment variables

The moos-ivp-enstabretagne binaries files should be added to your path to allow them to be launched from pAntler. Linux users can edit ~/.bashrc configuration file by adding at the end:

export PATH=$PATH:~/moos-ivp-enstabretagne/bin
export PATH=$PATH:~/moos-ivp-enstabretagne/scripts
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:~/moos-ivp-enstabretagne/lib

In order for generated IvP Behaviors to be recognized by the IvP Helm, you should add the library directory to the IVP_BEHAVIOR_DIRS environment variable.

New XML documentation is also available by command-line (e.g. typing uJoystick -e). This can work by specifying the MOOS_IVP_ENSTABRETAGNE_PATH environment variable (Linux users, update your ~/.bashrc). For instance:

export MOOS_IVP_ENSTABRETAGNE_PATH="/home/your_username/moos-ivp-enstabretagne"

Linux users may need to run, in the current terminal:

source ~/.bashrc

Generate a new MOOS Application

Please use GenMOOSApp_ENSTABretagne script to generate an empty structure for your new MOOSApp. For instance:

cd ./src/app
GenMOOSApp_ENSTABretagne SimModem u "John Doe"

Do not forget to add your new application to the CMake configuration file: ./src/app/CMakeLists.txt and to update the main documentation page : ./doc/index.html.

License

To be defined.

Contributors

moos-ivp-enstabretagne's People

Contributors

benensta avatar clementaubry avatar muriloksantos avatar nicolaje avatar schvarcz avatar simonrohou avatar thomaslemezo avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.