Giter Club home page Giter Club logo

MuddSub

The code for MuddSub's Alfie AUV

Installation

Prerequisites

This all needs to be in Ubuntu, preferably 20.04. Other linux distributions can in theory be used, but not all packages are guaranteed to be supported. For example, in Arch linux, everything except simulation is supported. These instructions are all written for Ubuntu. If you want to use a different distribution, you'll have to figure out how to install the packages in the distro.

Start by following these instructions to install ros noetic.

You'll also need to install a few dependencies to get everything working:

sudo apt-get install python3-dev
sudo apt-get install python3-catkin-tools
sudo apt-get install ros-noetic-tf
sudo apt-get install ros-noetic-urdf
sudo apt-get install libeigen3-dev
sudo apt-get install ros-noetic-tf2-geometry-msgs
sudo apt-get install ros-noetic-vision-msgs
sudo apt-get install doxygen
pip install doxypypy

The first is a dependency for a library we use for controls. The second gives an alternate build tool to the one which comes standard with ROS. We build with catkin build instead of catkin_make because it allows standard CMake projects to be compiled within our workspace. The last two are used to generate documentation.

Download and Build

You'll need a catkin workspace, which can be created by opening a terminal and running

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws
catkin build

Enter the directory and clone this repository:

cd ~/catkin_ws/src
git clone https://github.com/MuddSub/MuddSub.git --recurse-submodules -j8

With that said, this is a good opportunity to build!

catkin build muddsub_sim

This may take a few minutes! Note: If you didn't install ros-melodic-uwsim, you can still build, but with catkin build muddsub_primary instead. This builds everything but the simulator.

muddsub's Projects

adafruit_python_gpio icon adafruit_python_gpio

DEPRECATED! Please use Adafruit Blinka instead (was: Library to provide a cross-platform GPIO interface on the Raspberry Pi and Beaglebone Black using the RPi.GPIO and Adafruit_BBIO libraries.)

control-toolbox icon control-toolbox

The Control Toolbox - An Open-Source C++ Library for Robotics, Optimal and Model Predictive Control

controls icon controls

Controls package for MuddSub's Alfie AUV

crush-main-board icon crush-main-board

KiCAD files containing the design and layout of the signal board for Crush.

cvimagehandling icon cvimagehandling

Collection of various files for image distribution and labeling to get neural network training data. Made by CV Team 1.

dvl-python icon dvl-python

Python code for interfacing Water Linked DVLs using serial port

imu_vn_100 icon imu_vn_100

ROS driver for VN-100 of VectorNav Technologies

infra_board icon infra_board

To upload Altium files on for the design of the infrastructure board

labelimg icon labelimg

:metal: LabelImg is a graphical image annotation tool and label object bounding boxes in images

matplotlib-cpp icon matplotlib-cpp

Extremely simple yet powerful header-only C++ plotting library built on the popular matplotlib

mission icon mission

Mission planning and execution package for MuddSub's Alfie AUV

vision icon vision

Current Vision Code OpenCV Python

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.