Skip to content

This is the ROS code used for the Mercer University Senior Design Project the Autonomous/Semi-Autonomous Sub/ROV Project.

Notifications You must be signed in to change notification settings

tylerburnham42/MercerSubProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mercer University Semi-Autonomous Sub Project

This is a repository to host the ROS code that is used to operate the ROV. A team of Tyler Burnham and Andrew Buff worked on the code to change it into ROS in the Spring of 2016. It now operates on a laptop and a Raspberry Pi. The code runs with four seperate ros nodes. Talker sends commands to listener which is the command queue. Commander reads messages off of listener and sends the correct movement values to the arduino.

alt tag

Background on the Project

The purpose of this project is to construct a fully autonomous ROV (Remotely Operated Vehicle) that can be used for underwater surveillance. ROVs have the potential to serve a large role in underwater exploration and surveillance. Human undersea exploration and surveillance can be a very dangerous activity. A variety of factors can cause an underwater environment to be dangerous to a human diver, including water pressure, insufficient supply of oxygen, and hostile wildlife. Currently, modern ROVs are being used to provide safer alternatives. ROVs can fit in smaller and more dangerous places that are unsuitable for humans. This project is intended as one of Mercer’s first steps toward an underwater autonomous platform.

Video Demo

IMAGE ALT TEXT HERE

Getting Started

The following is an abbreviated install procedure. See the wiki page for the full procedure.

Prerequisites

The following is a list of the software needed to install and run the code.

  1. Laptop - Kubuntu Trusty (14.04)
  2. Raspberry PI 2 - Ubuntu 14.04 LTS for ARM
  3. ROS - Jade Turtle
  4. Rosserial
  5. Rosserial - Version 0.7.1
  6. Rosserial_Python - Version 0.7.1
  7. Rosserial_Arduino - Version 0.7.1
  8. ROS OpenCV - Version 3.1
  9. ROS BridgeCV - Version 1.11.12

The following software is not required but was used in the installation and deployment of the code.

  1. SSH Server
  2. Vim
  3. Arduino IDE

Installing

See the wiki page for full installation instructions.

Laptop

This project was created and tested on Kubuntu Trusty (14.04).
Link to download: http://cdimage.ubuntu.com/kubuntu/releases/14.04/release/
Installation Guide: https://help.ubuntu.com/community/Installation

Raspberry Pi

This project was created and tested on Ubuntu 14.04 LTS for ARM.
Link to image download and installation guide: https://wiki.ubuntu.com/ARM/RaspberryPi

Ros Jade

ROS Installation Guide: http://wiki.ros.org/jade/Installation/Ubuntu.

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'  
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net:80 --recv-key 0xB01FA116  
sudo apt-get update  
sudo apt-get install ros-jade-desktop-full  
sudo rosdep init  
rosdep update  
sudo apt-get install python-rosinstall  

Ros Serial

Ros Wiki Page: http://wiki.ros.org/rosserial_arduino/Tutorials/Arduino%20IDE%20Setup
Rosserial GitHub Page: https://github.com/ros-drivers/rosserial
The software was built and tested on the following versions:

  • Rosserial - Version 0.7.1 (2015-07-06)
  • Rosserial_Python - Version 0.7.1 (2015-07-06)
  • Rosserial_Arduino - Version 0.7.1 (2015-07-06)

sudo apt-get install ros-jade-rosserial sudo apt-get install ros-jade-rosserial-arduino

cd ~/MercerSubProject
catkin_make
catkin_make install

Install Ros OpenCV

The software was built and tested on the following versions:

  • Version 3.1

To install OpenCV use the following guide.
http://docs.opencv.org/3.0-last-rst/doc/tutorials/introduction/linux_install/linux_install.html

Install Ros Bridge_CV

The software was built and tested on the following versions:

  • Version 1.11.12

From: http://wiki.ros.org/cv_bridge

python <vison_opencv dir>/cv_bridge/setup.py build
python <vison_opencv dir>/image_geometry/setup.py build

Updating Ros Packages

To update all the ros packages:
Open a console
Run the following commands:

sudo apt-get update
sudo apt-get dist-upgrade

If asked type “Y” to complete the installation

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

For the versions available, see the tags on this repository.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.md file for details

Acknowledgments

  • Thanks to Dr. Anthony Choi for funding and support
  • MIRL for the supplies and equipment

About

This is the ROS code used for the Mercer University Senior Design Project the Autonomous/Semi-Autonomous Sub/ROV Project.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •