Coder Social home page Coder Social logo

roboticsclubatucf / robosub Goto Github PK

View Code? Open in Web Editor NEW
0.0 0.0 5.0 856 KB

Repo for UCF's entry to RoboSub

License: MIT License

CMake 10.38% C++ 10.65% Python 47.90% Shell 0.18% C 27.54% Assembly 3.35%
opencv robosub robotics robotics-competition ros

robosub's People

Contributors

antinode avatar appar3ntly avatar azimath avatar cwg930 avatar darien-craig avatar johnmillner avatar sumnersw avatar tsimmons15 avatar ucfroboticsclub avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

robosub's Issues

Vector thrust controller

The core functionality of controlling the sub in all 6 degrees of freedom given a sufficient set of thrusters in arbitrary positions is complete, but the automatic detection and re-computation of the thruster matrix hasn't been tested pending the thruster manager being able to send thruster alive data

Command Multiplexer

A node that accepts input from joysticks and whatever autonomy is running and decides which to send to the vector thrust controller. Use one of the throttle levers to select for now.

Sensor Fusion and Task Localization System

The sensor fusion system should provide a state estimation for the decision making system to allow task localization. The system should take as input the output from each sensor and the vision system and return the inferred state the sub is in for the competition. The system will use a dynamic Bayesian network operating at at an time step determined by testing. The system will use an appropriate inference algorithm such as Gibbs sampling or Monte Carlo inference methods and use appropriate learning techniques to adapt the sensor errors to their true values based on test data.

Buoy vision system

Develop a system to track the buoys and return some indication of their position to ROS

Buy chips task

The buy chips task begins when the sub has detected that it has navigated to within vision range of the chip dispenser(s). The task ends when the sub has collected the maximum number of chips. The next task should be acoustic navigation to proceed to the active pinger, making no initial assumptions as to which task is at the pinger. The task is responsible for tracking the dispenser button and tray, commanding the manipulator to pick up the golf balls, pressing the dispenser button, and keeping track of how many balls are in the manipulator.

Particle Filter-based Direct Visual Servoing

The particle filter will be used to provide direct visual servoing with the sub and its various tasks. The visual servoing will take in a desired visual landmark and will attempt to align the subs cameras to the landmark. Each particle corresponds to the thruster commands that will yield a new camera postion. Thus they will be 6 dimensional with each dimension referring to a degree of freedom in the sub. Each iteration the best particle will be sent as a thruster command to the sub and the particles will be resampled based on the new location of the visual landmark.

Particle filter-based direct visual servoing

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.