What if you could go to the office without physically leaving your home or vice versa?
Imagine yourself being able to connect to your Qbo robot from any part of the world, wherever it may be: your house, an office, a museum or anywhere else. Using your Android mobile phone, you can hear what the robot hears, see what is sees, as well as control its movement in its environment, communicate and even express emotions using its leds.
In order to accomplish this, we are developing a mobile application for Android devices. For the Mobile-Robot communication, you must previously identify yourself as the owner of the robot to avoid any intrusions. Once authenticated, you can hear, talk and see trough the devices of the robot.
If you prefer, you can use standard 3D glasses with red/green lens to see the images previously processes by the robot. Therefore, you could see the anaglyph image in 3D, as a results of the stereoscopic vision, as well as the images generated by the object/face detection algorithms.
Moreover, two joystick are available on the mobile screen, one for the base control and another for the head movement, so as to control the robot as you wish.
Other features that are being developed or are already completed consist in:
- Being able to change Qbo’s expressions through your devices, selecting different face gestures (happy, sad, angry, etc.)
- Making Qbo say whatever you wish, using Google’s Speech Recognition software or speaking directly to your phone’s mic.
- Selecting on your screen whatever you want the robot to follow. For example, if you connect to your house and your son wants to show you something, you can select your son’s figure in the image and Qbo will follow him autonomously. Furthermore, you can execute this procedure when you’re standing next to the robot.
How the system works?
Internally, Qbo acts as a server, with REST as a communication protocol, sending information in JSON format. You will find an API, very easy to use and very handy. For example, in order to move the head just pack the coordinates into a JSON, and make a HTTP petition to, for example “http://192.168.4.6:8880/control/qbo_arduqbo/headServos” and Qbo will manage itself, launching the necessary ROS nodes.
The audio connection uses the SIP protocol (Session Initiative Protocol). We wanted to make each Qbo independent from any external SIP server, so each one has the Asterisk SIP server installed to make calls directly to the robot. On top, it has a SIP client to accept incoming calls and send audio back. This enables Qbo to communicate with devices regardless of the platform, since there are applications available in each of these systems (MacOSX, Windows, Linux, Android, IOS…).
In the next posts, we will describe other features of Qbo’s Android application.
Some other pictures of Qbo’s Android application