building a low-cost telepresence robot with generic ...

3 downloads 791 Views 162KB Size Report
Dec 17, 2011 - general purpose hardware (such as a laptop motherboard) and software. This project allows implementing a Telepresence robot with basic.
Annual Technical Conference 2011 of IET-YP Sri Lanka, 17th December 2011

BUILDING A LOW-COST TELEPRESENCE ROBOT WITH GENERIC HARDWARE Vajira Thambawita ([email protected]), Kalindu Herath ([email protected]) Supervised by: Dr. Roshan Ragel and Dr. Dhammika Elkaduwe Department of Computer Engineering – University of Peradeniya – Sri Lanka

Abstract

Robots are now commercially produced. Anybots QB

Telepresence robotics is an application in robotics

Telepresence Robot [1] is one of such commercially

which allows you to mark your presence in a location

available robot. Video conferencing is one of the key

where you are not physically present. Unfortunately, the

technologies in these robots to implement the virtual

use of Telepresence robots is greatly limited due to the

presence apart from having a physical presence through

high cost of commercially available robots. The

the robots. But due to the extreme cost they are limited

limitation is overcome in this project by producing

to high end offices and less number of people.

Telepresence

for

Most of commercially available robots have specialized

institutional or house hold use, at a lower cost. The

hardware for processing activities. As a result the

existing commercial Telepresence robots use dedicated

production cost of the robot increases rapidly. This

and specialized hardware components for their key

project suggests a way to produce a Telepresence Robot

activities. The major drawback of using these hardware

using generic hardware and a sophisticated software.

components is their high cost and therefore the

Our design consists of a normal old laptop mother board

unaffordable price of the robot. As a low cost

and a processor for the main processing hardware of the

alternative, use of special hardware components is

robot. In addition, the other peripherals of the laptop

avoided wherever possible and attempts are made to

such as screen, microphone, speakers, webcam (if

obtain the same functionalities through the use of

equipped), wireless network card (if equipped) are used

general

laptop

with the streaming and networking activities at the

motherboard) and software. This project allows

robot. External circuitry (i.e. Motor Circuit) is

implementing

basic

controlled via parallel port or USB port interfacing. The

functionalities for the cost of around USD 250.

suggested Telepresence robot is developed in way it can

Although the software of the robot system is highly

be integrated to a Wireless Network.

robots

purpose

a

which

hardware

are

(such

Telepresence

appropriate

as

robot

a

with

extensible, the overall functions are greatly limited with the processing power and the battery life of the laptop.

2.

Methodology

The structure of the robot consists of a base plate where 1.

Introduction

two DC motor power wheels and a freely rotatable

Telepresence [4] is an extension of Robotic Technology

wheel are fixed to, and a laptop computer placed at a

which allows a person to appear or be present at a

height of three feet from the base plate. The controller

separate location virtually. In 1980s, the study of using

of the robot is in a different location and controls the

robots to represent a person has started and in early

robot via a Wireless Local Area Network (WLAN).

1990s similar kind of Telepresence robots were

Avoiding specialized hardware in this project adds a

available. As the other kinds of robots, the Telepresence

new challenge. That is the way of implementing

Annual Technical Conference 2011 of IET-YP Sri Lanka, 17th December 2011

efficient and reliable functionalities on the software

battery and Wi-Fi signal strength information of the

which were successfully implemented on hardware in

robot sent by the robot to the controller are

existing

communicated using this channel.

Telepresence

robots.

In

our

software

implementation there are two main software programs,

As mentioned above the controller needs to know the

one for the controller of the robot and the other is for the

remaining battery power and the current Wi-Fi signal

robot. The structure of two programs is almost the same

strength at the robot to avoid the robot going to an

except the robot software uses computer interfacing to

uncontrollable state. In addition, the robot’s computer

control the motors at the robot. However both software

should be able to lock remotely so that unnecessary

programs are written in Java and are consisted of Video

interference from human can be avoided. These

and

functionalities involve native methods of the windows

Audio

Streaming

through

WLAN,

Socket

Programming, Native Access and Image Processing.

platform and cannot be implemented using only Java

Video and audio streaming is necessary for both

functions. Therefore the software programs use platform

controller and robot software programs since both

depended methods to achieve these tasks.

parties

remote

In addition to above software implementations, parallel

environment. Therefore software programs consist of

port and USB port interfacing is used for driving motors

two

for

the robot. The controller sends controlling signals using

transmitting and receiving audio and video data.

the software via WLAN network to the robot, and the

Moving on to the transmitting process in the

robot reads the control signals and controls the driver

implementation, the initial step of this process is to

motors accordingly.

detect and occupy the media devices; the web cam and

This method of implementation avoids costly signal

the microphone using JMF (Java Media Framework)

processing modules, separate LCD screens, Wi-Fi

[2]. JMF keeps a registry of media devices available in

network modules and servo motors and allows

the system, and the program accesses this registry and

developing a Telepresence robot at a low cost.

require

independent

hearing

and

and

seeing

concurrent

the

processes

gets device information such as audio format, video format, sampling rate, locator of the device etc.

3.

According to collected information, the transmitting

The initial test for the software was done with two

process makes an object for input device and take input

laptop computers with an ad-hoc type Wi-Fi connection.

media data. Afterwards the data are converted to RTP

The intention of the initial test was to see the processing

(Real-time Transfer Protocol) [3] compatible format,

power required and the delay of RTP stream.

and then this RTP stream is sent to the receiver at the



other end, over previously configured WLAN network. It is useful to have a way of seeing the grabbed video from the current environment. To achieve this, the input

Tests and Results

Intel core2duo 2.0 GHz 2GB RAM laptop as the controller



Intel Pentium III 1.0 GHz 128MB RAM laptop as the robot

video is duplicated before converting to RTP and one data stream is directly played backed. In the receiver

Measurement

process, the program defines the source address of the

Controller Normal

Multithreaded

45%-55%

N/A

2-3 sec

N/A

stream and tunes the channel for receiving and received

Required Processing

media data is played back.

Power

Apart from the video and audio communication

RTP delay

described above, there is a separate channel for data

Table 1 : Controller software runtime evaluation results

communication. The commands related to movements of the robot sent by the controller to the robot, the

Annual Technical Conference 2011 of IET-YP Sri Lanka, 17th December 2011

Measurement

Required Processing

signal system is combined with acknowledgements, the

Robot Normal

Multithreaded

responsiveness of the motor controlling unit was

70-75%

90%

significantly reduced because of the bandwidth and processing power limitations.

Power RTP delay

3-4 sec

2-3 sec

Table 2 : Robot software runtime evaluation results

4.

Conclusion

Considering all the facts, it can be stated that this The above test shows that there is a three second RTP media streaming delay at both ends. In addition multithreading software causes excessive CPU load for the robot’s computer. Therefore in the second test the behavior of the software programs according to steaming video size was observed.

Video

Controller’s

Robot’s software

Resolution

software

640 x 480

2-3s RTP delay

Failed to transmit

352 x 288

2-3s RTP delay

3-4s RTP delay

hardware scheme allows achieving a cost effective solution and also is successful in implementing basic operations of the robot on the software. However the implementation

lacks

efficient

audio

and

video

streaming over a WLAN. The physical memory limitation in the robot’s computer prevents the use of multithreading and

network congestion reduction

techniques in software implementation. Using Java on

70-75% CPU 320 x 240

implementation of a Telepresence robot using generic

2-3s RTP delay

Around 3s RTP delay

35-40% CPU

70% CPU

Table 3 : Software performance in runtime with video resolution

windows platform might be the reason for these weaknesses in the software since Java operates on a virtual machine. Therefore we propose to perform another test implementing the software functions using C++ or C programming language as the future work. Considering the hardware, the moving speed of the robot is limited due to use of high torque DC motors so

The second test shows that reduction in video resolution

that there should be a mechanism to increase the speed

affects only to the robot’s software program. The higher

while keeping the stability and adequate torque at the

video resolution is failed due to limited physical

motors.

memory of the robot’s computer. Considering the test results it is observed that 640 x 480 video resolution can

5.

References

be used with controller’s program where as 352 x 288 vide resolution is more suitable for the robot’s program

[1] Erico Guizzo. Anybots qb telepresence robot.

for more quality of operation. The reliability of the

http://spectrum.ieee.org/automaton/robotics/industrial-

software programs is reduced due to unexpected crashes

robots/051810-anybots-qb-new- telepresence-robot

on test. The main cause of these crashes was the

[2] Budi Kurniawan. Program multimedia with jmf.

instability of external Java libraries used such as

http://www.javaworld.com/jw-04-2001/jw-0406-

Freedom to Media in Java (FMJ), Jacob.

jmf1.html.

In the third test the bandwidth requirements for the

[3] Wikipedia. Real-time transport protocol.

software programs was tested. The above tests were

http://en.wikipedia.org/.

done using IEEE802.11g connection with 54Mbps

[4] Wikipedia. Telepresence.

bandwidth and did not show any incompatibility for

http://en.wikipedia.org/wiki/Telepresence

bandwidth. However the third test showed that the system does not properly work with IEE802.11b type WLAN connection. In addition, as the motor controlling

Suggest Documents