App Summary

PocketBot for Ros is an Android application and ROS node. It provides both controls for a ROS enabled robot and social interactions. In addition the app uses WebRTC for telepresence.

http://pocketbot.io

Installation

This app has been tested with ROS indigo, kinetic and lunar. On Ubuntu 14.04, 16.04, 17.04 and HypriotOS on the Rapberry Pi 3.

ROS API

pocketbot_ABCD

The node name is randomly generated so that multiple PocketBots may connect at the same time.

Published Topics

pocketbot/emotion (std_msgs/String)
  • Emotional state of the robot. (JOY, ACCEPTED, AWARE, ANGER, SADNESS, REJECTED, SURPRISED, FEAR)
pocketbot/speech (std_msgs/String)
  • When the PocketBot app recognizes speech it is output on this topic as a String the app normally send this to the AI service
pocketbot/ai_speech_out (std_msgs/String)
  • AI services response, the app will normally speak this text when in face mode
pocketbot/imu (sensor_msgs/Imu)
  • The current orientation of the Android device
pocketbot/face (geometry_msgs/Twist)
  • Position of foremost recognized face
pocketbot/cmd_vel (geometry_msgs/Twist)
  • Output from onscreen joysticks in PocketBot app's control screen. Right joystick outputs linear x and angular z. Left joystick outputs angular y and angular x.
pocketbot/fix (sensor_msgs/NavSatFix)
  • Current position of robot in latitude and longitude as measured by Android device, position_covariance[0] is the accuracy in meters
pocketbot/waypoint (sensor_msgs/NavSatFix)
  • Updated when a new way point is added using PocketBot's navigation interface
pocketbot/heading (std_msgs/Float32)
  • Heading in degrees 0-360 of direction device is facing (front camera)

Wiki: pocketbot (last edited 2017-09-09 02:21:41 by JoshuaFrank)