Skip to content

SMARTlab-Purdue/ros-tutorial-robot-control-vision

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ROS Tutorial on Teleoperation and Vision based Robot Control

ROS tutorial by Purdue SMART lab: iRobot Create2 teleoperation and Computer Vision based object detection for mobile robot control.

Objectives

This ROS tutorial provides an overview of teleoperating (control) an iRobot create2 (roomba) mobile robot. Then, we look at ways to make use of the robot to track a ball/person using openCV algorithms. For those who do not have a creat2 robot, we also show a case of controlling a turtlebot in simulation (instead of iRobot control) in this tutorial. Additionally, this tutorial will help you learn some basics of computer vision and robot control methods in ROS.

Demonstration video:

Please watch the videos below to get an idea of what is expected to be achieved by this tutorial.

https://www.youtube.com/watch?v=ZyD-bbF6ts4

IMAGE ALT TEXT HERE

https://www.youtube.com/watch?v=ZyD-bbF6ts4

IMAGE ALT TEXT HERE

Credits

This tutorial is prepared by Arabinda Samantaray (samantar@purdue.edu) and Shaocheng Luo (scluo@purdue.edu).

The git repository is maintained by Ramviyas Parasuraman (ramviyas@purdue.edu)

We acknowledge the following sources which were used to prepare this tutorial:

Prerequisites

A basic background of using Linux-based OS, ROS and OpenCV will be required to understand the following tutorial. If you need some help, please visit:

This tutorial was tested successfully in Ubuntu 14.04, ROS-indigo with OpenCV 3.0.0.

Tutorial

Summary

After this tutorial, one should gain skills in teleoperating (control) an iRobot create2 robot. This tutorial uses ROS Indigo version and we deployed packages including teleoperation-twist-keyboard, ros-indigo-joy, and OpenCV. We also showed how to control a robot motion using vision-based object detection and demonstrated this idea with an iRobot create2 robot. Eventually, we exhibited the use of the robot to track a ball/person using OpenCV algorithms, thus one can learn how to integrate openCV in robot control. We encourage readers to learn more about our other ROS tutorials.

If you have any feedback please feel free to reach the authors through email: Arabinda Samantaray (samantar@purdue.edu) and Shaocheng Luo (scluo@purdue.edu).