Giter VIP home page Giter VIP logo

robo_can_picker's Introduction

Robo_Can_picker

Description

The goal of the robot is to traverse a maze by reading QR codes, then pick a can using the on-board gripper. The robot will extract direction commands from the QR codes to navigate the maze and using color detection will locate the position of the can relative to the robot in order to pick it.

image

Robot circuitry

image

Forward and Inverse Kinematics:

The forward and inverse kinematics model of the robot according to the following article: image image

ROS Computing Graph:

rosgraph TX

The Raspberry pi, PC, and ESP8266 are connected to the same access point. The raspicam_node Ros node is running on the raspberry pi and publishing sensor_msgs/CompressedImage message type on the topic /raspicam_node/image/compressed. Roscore is running on the pc, in order to connect the Ros node running on the pi to the Ros running on the pc run the following on the pi before launching the camera node export ROS_MASTER_URI=http://PC Ip address:11311

The Image_republisher node converts the sensor_msgs/CompressedImage message to sensor_msgs/Image message type.

The Vision_node processes the images and distance data from the /distance topic and publishes geometry_msgs/Twist messages on the /cmd_vel topic to order the robot to move.

The serial_node is running on the ESP8266 it offers the following custom services:

  1. gripper_srv:service to open and close the gripper.
  2. servo_srv :service to set the servo attached to the camera and ultrasonic sensor to a specific angle.

and publishes the distance read from the ultrasonic sensor over the topic /distance.

Demo video

IMAGE

Tools used:

Raspberry pi ubuntu 16.04 disk image with Ros already installed from Ubiquity Robotics

robo_can_picker's People

Contributors

ziadsaoud avatar

Watchers

 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.