Giter Site home page Giter Site logo

cjsatuforc / edurov Goto Github PK

View Code? Open in Web Editor NEW

This project forked from trolllabs/edurov

0.0 0.0 0.0 6.38 MB

A educational project for remotely operated vehicles

Home Page: http://edurov.readthedocs.io

License: GNU General Public License v3.0

C++ 19.65% Batchfile 0.34% Python 80.01%

edurov's Introduction

eduROV - Educational Remotely Operated Vehicle

Stream camera feed from a Raspberry Pi camera to any web browser on the network. Control the robot with your keyboard directly in the browser.

The eduROV project is all about spreading the joy of technology and learning. The eduROV is being developed as a DIY ROV kit meant to be affordable and usable by schools, hobbyists, researchers and others as they see fit. We are committed to be fully open-source, both software and hardware-wise, everything we develop will be available to you. Using other open-source and or open-access tools and platforms.

GitHub:https://github.com/trolllabs/eduROV
PyPI:https://pypi.org/project/edurov/
Documentation:http://edurov.readthedocs.io
Engage eduROV:https://www.edurov.no/

./docs/edurov_gui.jpg

Main features

  1. Low video latency

    You can stream HD video from the Raspberry Pi camera to any unit on the same network with a video delay below 200ms.

  2. No setup required

    The package works by displaying the video feed and other content in a web browser. This means that you can use any device to display your interface.

  3. Very easy to use

    With the exception of Pyro4 (which is installed automatically), edurov doesn't require any other packages or software. Everything is written in python and html. 4 lines of code is everything needed to get started!

  4. Highly customizable

    Since you define the html page yourself, you can make it look and work exactly the way you want. Use css and javascript as much as you want.

  5. True parallelism

    Need to control motors, read sensor values and display video feed at the same time? edurov can spawn your functions on multiple CPU cores while still maintaining the possibility to share variables.

Prerequisites

Installation

Run the following commands in a terminal on the Raspberry Pi.:

sudo pip3 install edurov

For a more in depth description visit the official documentation.

Usage

Engage eduROV submersible

On the Raspberry Pi, run the following command:

edurov-web

This will start the web server and print the ip where the web page can be viewed, e.g. Visit the webpage at 192.168.0.197:8000.

Create your own

The eduROV package includes multiple classes and functions to facilitate easy robot communication with video feed. It will get you up and running in a matter of minutes. Visit the official documentation for a getting started, examples and API.

Performance

The eduROV package were created with a strong focus on keeping the latency at a minimum. When deploying on a wireless network the actual performance will vary depending on factors such as distance, interference and hardware.

./docs/latency.png

Author

The package is created by Martin Løland as part of the master thesis at Norwegian University of Science and Technology 2018

edurov's People

Contributors

martinloland avatar slattsveen avatar karfed 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.