Code Monkey home page Code Monkey logo

snoopy's Introduction

##Snoopy

Metapackage for the custom mobile robot called "Snoopy". Snoopy was equipped with a LIDAR, an RGB-D camera, motor encoders, a uArm and a NUC. Metapackage includes particle filter localization, control, navigation, path planning, vision codes;
  • snoopy_launch: General launch files
  • snoopy_setup: Includes nodes for setting up the snoopy including YAML parameter files, brain, tf broadcasting and listener nodes, exploration node etc...
  • snoopy_control: PID for motor control.
  • snoopy_odom: For dead reckoning
  • snoopy_teleop: Teleoperating using keyboard
  • snoopy_vision: Object detection, shape classification and color detection from camera.
  • snoopy_pathfind: Path finding using A*
  • snoopy_localize: Particle filter localization
  • snoopy_navigate: Action lib for navigation
  • snoopy_map: Map server for occupancy grid map
  • snoopy_uarm: Using uarm

Necessary packages to build the package

ros_control pkg:

  sudo apt-get install ros-indigo-ros-control ros-indigo-ros-controllers

#Demos

Particle Filter Localization with snoopy_localize

The PF localization system was tested in the maze environment for both global localization and pose tracking. The dead reck- oning system was also kept tracked to be compared. In the experiment, 2000 particles and every 8th range measurement were used. With this setup, the mean estimation rate was a lit- tle more than 3 Hz.

  • Detailed report on localization can be found here.

Alt Text

A* Path Finding with with snoopy_pathfind

To navigate the robot to a desired location A* is implemented. In the demo the code is running and giving a path from an origin to the clicked points on the map.

Alt Text

Map Exploration

The explore service in snoopy_setup node was tracking the tiles in the map that were explored, and when called it was sampling a target point in the map from a uniform distribution that was lying between a minimum and maximum distance from the current position of the robot which was neither occupied nor explored. Exploration state was switching in brain node if there is an object detected from the vision or a collision is detected.

Alt Text

snoopy's People

Stargazers

 avatar  avatar  avatar onur sencan avatar

Watchers

James Cloos avatar Emre 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.