Rapyuta

A Cloud Robotics Platform

User Tools

Site Tools


Sidebar


News

  • March 15, 2014 | Rapyuta/Roboearth presented at TEDx, Adliswil, Switzerland (video)
  • November 03, 2013 | Rapyuta presented in IROS 2013, Tokyo, Japan.
  • April 12, 2013 | Rapyuta presented in ROSCon2013, Stuttgart, Germany. Successful live demonstration of RGBD mapping on the cloud.
  • April 10, 2013 | Rapyuta presented in invited talk at the ICRA 2013 workshop on long-term autonomy, Karlsruhe, Germany.
barcode_tutorial

Setup

Cloud side

  • Install Rapyuta
  • * Download the cloud side code and extract the code:
    tar xzvf barcode_cloud.tar.gz
  • Edit your .rce/config.ini file to add barcode_cloud to packages list:
    vim ~/.rce/config.ini
    ...
    [machine/packages]
    barcode=<absolute path to barcode_cloud>
    ...
  • chroot into container rootfs:
    sudo rce-make
  • Install python packages:
    sudo apt-get install python-zbar python-imaging
    sudo easy_install google_api_python_client
  • Build ROS Package:
    rosmake barcode_cloud
  • Exit chroot:
    exit

Client side

  • Download client side code and extract the code:
    tar xzvf barcode_client.tar.gz
  • Add Barcode client-side code to ROS_PACKAGE_PATH:
    echo "export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:<path to barcode_client>" >> ~/.bashrc
  • Source bashrc (Only needed if you are using the same terminal):
    source ~/.bashrc
  • Build ROS package:
    rosmake barcode_client

First task

  • Description: Using a barcode-extractor node to extract the barcode from a barcode image.
  • Provided: barcode-extractor node in Rapyuta, ROS client with configuration file.
  • Goal: Learn how to setup a computing environment, launch ROS nodes, and access topics and services of the launched nodes inside the computing environments of Rapyuta.

Step by Step

  • Study config_files/barcode.cfg file in barcode_client package to understand how elements are connected.
  • To test this task, start the cloud engine (master, robot, container, and roscore processes)
  • Now run the ros client (Don't forget to update the IP in your config file):
    rce-ros <path to barcode_client/config_files/barcode.cfg>
  • Test the Extractor:
    (Assuming you are at the barcode_client top folder)
    python barcode_client/scripts/servicescanner.py barcode_client/images/imageXX.jpg
    (Fill XX with any number from 01-10)
  • You should see the barcode number returned.

Second task - BROKEN: Google's Shopping API is no longer available!

  • Description: Use the extracted barcode to query Google API for product information
  • Provided: barcode-extractor node in Rapyuta, ROS client with configuration file, Google API query tool
  • Goal: Learn how to connect to other computing environments of Rapyuta and access their services and topics.

Step by Step

  • To run this task you will need a Google API key. Go here for that. If you don't already have a project for Google APIs, you will be asked to create one.
  • Once you reach the Services page, switch on Search API for Shopping.
  • Now, Click on the API Access link on the sidebar and copy your API key under the “Simple API Access” heading.
  • Copy the googleapi.cfg.default file in barcode_cloud/barcode_cloud folder and rename it to googleapi.cfg.
  • Add your API key to the file googleapi.cfg.
  • Study config_files/barcode_webdb.cfg file in barcode_client package to understand how elements are connected.
  • To test this task, start the cloud engine (master, robot, container, and roscore processes)
  • Now run the ros client (Don't forget to update the IP in your config file):
    rce-ros <path to barcode_client/config_files/barcode_webdb.cfg>
  • Test the Extractor:
    (Assuming you are barcode_client top folder)
    python barcode_client/scripts/topicscanner.py barcode_client/images/imageXX.jpg
    (Fill XX with any number from 01-10)
  • You should see Product Name returned.
  • This client won't exit after displaying the text and you should Ctrl+C to exit.
barcode_tutorial.txt · Last modified: 2014/06/03 16:40 by gajan