You are on page 1of 34

HANOI NATIONAL UNIVERSITY UNIVERSITY OF TECHNOLOGY

Topic: On the architecture of robot services over the Internet


Member: Hoang Van Dung Advisor: Ph.D.Le Anh Cuong

Ha Noi, May 2013

Table of Contents
1. Introduction 2. Scientific and practical basis of the topic 3. Plan 4. Implementation 4.1 RSNP Architecture 4.1 .1 Introduction 4.1.1.1. What is RSNP? 4.1.1.2. What is RSi? 4.1.1.3. Concept of RSNP 4.1. 2. RSNP 4.1. 2.1. RSNP Architecture 4.1. 2.3. Structure of RSNP 4.1.3. Deployment environment of RSNP 4.1.4. Service Examples of RSNP (Application service profiles)

Table of Contents
4.2 Web Services Architecture 4.3 Tool 4.4 Setup environment 4.5 Experiment and find performance with AIIT. 4.6 Experiment and find performance bottlenecks. 4.7 Work on an improvement of the architecture, write report/paper

1. Introduction
Purpose
Research RSNP Architecture of robot services created using RSNP of Advanced Institute of Industrial Technology (AIIT) KATO Lab Perform the experiment to measure service response time for these robot services. Experiment and find performance bottlenecks? Evaluate the efficiency and improve RSNP architecture?

2. Scientific and practical basis of the topic


RSNP (Robot Service Network Protocol) library system is used to control robots over internets. Model client-server applications, a socket is one end-point of a two-way communication link between two programs running on the network. Web services architecture is Web application development model which allows building full system from many different services The Eclipse Test & Performance Tools Platform (TPTP) Profiling tool to profile a Java application in order to identify performance hot spots, and fix and validate performance problems.

3. Plan
Study literature on RSNP (May-12, Jul-12) Study Web Services Architecture and Web Services Quality Model (Aug-12, Sep-12) Setting up a robot service application (Oct-12, Nov-12) Experiment and find performance with AIIT (Dec-12,Apr-13) Experiment and find performance bottlenecks (Dec-12, May14) Work on an improvement of the architecture, write report/paper (May-13, Aug-14)

4. Implementation

4.1.RSNP Architecture

Introduction
What is RSNP (Robot Service Network Protocol)

The RSNP 1.0 (AIIT- Japan) specification was published in October 2006 to provide basic functions such as communicating, instructing robots, using multimedia, and providing information, based on the idea of "robot services over the Internet" Approach on RSNP
RSNP1.0 (2006) RSNP2.0 (2008) RSNP2.1 (2009)

The functions:
Communication, authentication, and security Upload of image data, robot events, and sensor data Framework for robot behavior

Outline of the system

Outline of the system

Concept of RSNP

Service Examples of RSNP


Disaster Information Service Monitoring Service

Disaster Information Service

RSNP Architecture

RSNP Architecture
Specifies necessary functions to provide robot services RSNP = RSi Common Service + Profiles

RSi Common Service


Communication platform
Using Web service technologies (on HTTP)

Communication model
push/pull synchronous/asynchronous

Common functions of robot services are determined as communication protocol

Profiles
Application service profiles
Information services, such as disaster and weather information services, and remote control and monitoring services

Basic service profiles


Multimedia and sensor support, behavioral patterns and movements

Structure of RSNP
The following is the structure and relation of the terms explained above.

Structure of RSNP

Structure of RSNP

RSi common service


Protocol layers :SOAP RSNP binding, RSi document Security(Security with SSL )
Authentication Access right control

Basic service profile


All profiles inherit the common profile ( Common_profile ).

Basic service profile


Service profile
This is a profile that uses services provided by a robot and a server. It is originated by both robot and server, and a service can be used bidirectionally. It inherits the service profile (Service_profile) for controlling the access right of a service

Basic service profile


Task Profile
Framework to change various robot services

Command Profile
Framework to handle combinations of simple behaviors and movements common to robots for remote operation

4.2 Web Services Architecture

4.3 Tool. 4.4 Setup environment

Install Java SDK Download Eclipse Download Eclipse plug-in for NXT(Robot) Download Eclipse Test and Performance Tools Platform (TPTP) plug-in, Yourkit JMeter

4.5 Experiment procedure for RSNP service with AIIT


An experiment performed to test quality of experience of robot services created using RSNP. Advanced Institute of Industrial Technology (AIIT) KATO Lab. would like to request Vietnam National University to perform the experiment from Vietnam to measure service response time for these robot services. Result from this research will be taken into account for our robot service development and contribute to our research. Detail procedure for this experiment is stated in step by step in following sections The goal of this experiment is to measure the service response time for Robot services using RSNP

Diagram 1: depict a response time which we are aimed to measure in this research

4.5 Experiment procedure for RSNP service with AIIT

RSNP service response time measurement using JMeter. Round trip delay measurement using ICMP Ping test. Route trace between VNU and AIIT traceroute (tracert) ICMP Ping test result paper. Tracerout test result paper.

4.6 Experiment and find performance bottlenecks


Deadlock: (RobotMain.java) MessageDispatcher-17 <--- Frozen for at least 16m 22s lejos.pc.comm.NXTCommFantom.jfantom_send_data(long, byte[], int, int) lejos.pc.comm.NXTCommFantom.devWrite(long, byte[], int, int) lejos.pc.comm.NXTCommUSB.rawWrite(byte[], int, int, boolean) lejos.pc.comm.NXTCommUSB.flushBuffer() lejos.pc.comm.NXTCommUSB.write(byte[]) lejos.pc.comm.NXTCommOutputStream.flush() java.io.DataOutputStream.flush() blueTooth.BTSend.selectFunc(int, double) rsnp.acceptor.Motion_profile_impl.forward(long, double, String) com.fujitsu.rsi.client.callback.MotionCallback.do_forward(long, String, String) com.fujitsu.rsi.client.callback.MotionCallback.execMethod(String, OperationParam, String, String) com.fujitsu.rsi.client.ClientProxy$SVtoCLMessageHandler.doAccept(MessageConte nts) com.fujitsu.rsi.client.ClientProxy$MessageDispatcher.run()

4.7 Work on an improvement of the architecture, write report/paper

You might also like