Web-Based Robotics Laboratory

. In the education world, the number of web-based system is growing substantially in the past few years. Many web-based teaching tools has been developed to help students expand his knowledge. This paper presents a web-based laboratory to augment learning experiences in the field of robotics. The designed laboratory consists of a robotic arm with laser pointer, projection platform and web-based interface. The laboratory is used to learn about inverse kinematics and forward kinematics problems. Students enter the input parameters through web interface, server calculate output parameters and sent it to the robot. The web interface displays the movement result and turn on the laser pointer to the projection field. Preliminary testing concerning interface usability, access control mechanism and command queueing shows that the system working as expected.


Introduction
Quoting Sir Tim Berners-Lee, "The web is a tremendous platform for innovation, but we face a number of challenges to making it more useful, in particular to people in underserved communities."This statement is given when Sir Tim Berners-Lee announce that he is backing a new project called The World Wide Web Foundation in 2008.The Foundation aims to accelerate the progress of the internet and make it more easily available and accessible in developing nations [1].In the same spirit, many institutions develop web-based system to be used in our everyday life aspects.In the field of education, a lot of web-based systems have been developed for various purposes.For example: information system, online course, user collaboration, assessment mechanism, and also webbased laboratory (remote experimentation).
Concerning web-based laboratory, the facilities can be offered in three forms [2], namely: Virtual laboratory, remote "hands-on" laboratory, and Hybrid laboratory.Virtual laboratory is simulated version of physical laboratory.The simulation software is executed in the server.There is no actual equipment involved in this kind of laboratory.In remote "hands-on" laboratory, the web gives an interface to the user to manipulate equipment in the physical laboratory.Hybrid laboratory combines both forms of laboratory.User can choose between accessing the simulated version of laboratory or having hands-on experience with physical equipment via web interface.
In the field of robotics, many prototype of internet/web-based robotics laboratories have been implemented.There are internet-based online robot demonstration such as University of Southern California (USC) Mercury and Tele-Garden projects [3][4][5][6].It can be classified as remote "hands-on" laboratory.In the project, an arm robot is operated remotely.The Mercury project consist of an arm robot fitted with charge-coupled device (CCD) camera operated in a sandbox.Tele-Garden allows users to view and interact with a remoted garden filled with living plants.There is also TORUS (Toys Operated Remotely for Understanding Science) project [7].Beside controlling robot, the project aim is to add remote programming feature of robot.
There is also a study about the feasibility of remote experimentation as part of distance learning mechanism.It is called project ReLAX (Remote Laboratory Experimentation Trial) [8].It supports the argumentation that the presence of Internet makes remote experimentation feasible.Experiments on real physical equipment can be more affordable and usage of existing laboratory facilities can be more efficient.
Most of the mentioned examples involve the operation of robot remotely (teleoperation of robot).It also includes visualization of remote site.Basically, it characterized some form of telepresence mechanism.Telepresence refer to the ability to be present or participate in a distance location without actually being there physically [9].From several examples about web-based laboratory projects we realize a need to incorporate the laboratory into our robotic course.We conduct a research about web-based robotics laboratory with remote "hands-on" experience.Our objective is to implement a full-scale web-based robotics laboratory with multi-user and multi-robot schema.The aim is to foster ubiquity in engineering education in order to increase student's participation and collaboration in learning.The first prototype result of our web-based robotics laboratory is presented in this paper.Description about the design elaborated after this introduction.It followed by description of experiment to test our prototype, result presentation and discussion.

Design
The architectural design of web-based robotics laboratory adopts client-server mechanism.Communication between client and server is done with Hypertext Transfer Protocol (HTTP).Figure 1 depicts the architecture of the system.The main system parts are web server and the controlled robot, for example a robotic arm.Web server also functions as robot controller.Communication between robot controller and robotic arm is done via USB connection.To present robot movements to the user, one or more IP camera are installed in the system.Users access the webbased laboratory via browser client.Multi user can access the server to monitor the robot, but only single user can control the movement of robot at a certain time.Each user has to logon to the system in order to control the robot.Monitoring can be done in guest mode.Figure 2 depicts the design of interface example accessed by browser client.The shown example is concerning about inverse kinematic experiment.

Fig. 2. Interface design.
The interface consists of a form to submits input parameter and robot monitoring area with video streaming feature.After user submits the input parameters, server does a calculation and sends movement commands to the robot.At the end of movement process, server also send command to turn on laser pointer in the robot to visualize robot position in the projection field.Calculation result can be downloaded by user.Internet Protocol (IP) cameras send video streams to the browser client.In this example, there are three IP cameras that represents three projection fields.
Concerning software design, there are two main things need to be addressed properly.The first one is about communication protocol between robot controller and the controlled robot.The protocol should be designed to accommodate various kind of robot.The second one is about access control mechanism.It should accommodate multiple users accessing a single/multiple robot.
To accommodate communication flexibility with various kind of robot.A protocol framework is built based on [9].The service primitives are grouped into three service elements, namely movement, monitoring and auxiliary.Movement service element deals with the movement of the robot.Monitoring service element handle video monitoring of the robot.Auxiliary service element is used to present command request status and any additional service defined later.
To accommodate multiple users accessing a single/multiple robot, a queue mechanism is built.Commands sent to the robot will be executed one by one with first come first served based mechanism.The queue mechanism makes use of a database system.Each command request from the user entered in the database to form a queue.Each entry has a status flag to represent execution state of command request.System executes each command request in the database in first come first served manner.Figure 3 depicts the prototype of the system.There are still works to be done, but it can represent the proposed system.A single projection field and single laser pointer implemented in this prototype.

Experiment
Some experiments have been done to consider the feasibility of deploying our web-based robotics laboratory prototype in the real application.The first experiment is about the usability of the interface.There are two things considered important in this experiment, namely task completion rate and user satisfaction.The conduct of the experiment is as follow, several users are asked to complete an activity.The activity consists of working on kinematics problem and verify the work using web-based robotics laboratory.At this experiment, access to the server is limited only for a single user each time.All the steps taken by the user is logged in the system.After completing the activity, the completion rate is measured based on the log file.The user also asked to give score to the following questions: i).Satisfaction with the ease of completing task ii).Satisfaction with the time of completing task iii).Satisfaction with the support information during completing task The score value comes between 1 to 7, with 1 valued as strongly agree and valued as strongly disagree.This scoring method is based on the After-Scenario Questionnaire [10,11] to rate user satisfaction working with the interface of web-based robotics laboratory.The second experiment is concerning server performance and queue performance.Server performance measured based on the presence of congestion.Queue performance is measured based on the availability of queue slot.To perform the experiment, several users are asked to do an activity with web-based robotics laboratory.There is no limitation on how many users accessing the server each time.The users perform their activity simultaneously in a certain timeframe.In their activity, each user sends several command requests to the server.In this experiment, the expected data results are: i).Measurement of time needed to execute each command request to the robot.ii).Number of requests entering the database queue in a certain time.

Result and discussion
There are ten users involved in the first experiment.Each user is asked to solve some mathematical problems on kinematics.In the experiment, there are five problems each on forward kinematics and inverse kinematics.The user solved the problem manually, after that, they work with the web-based robotics laboratory to verify the result.There are two kinds of results on the first experiment; task completion rate for each problem and user satisfaction.Task completion rate result is depicted on Table 1.User satisfaction result is depicted on Table 2 1 shows that from ten given problem, one user failed to finish problem no 3, 7 and 8.In the log file of the system there are no finish flag in the recorded activities of the corresponding user for the specified problem.When the issue tracked, the user mentioned that there is an intermittent internet connection that affect the video streaming at that time.To address the problem, there should be another mechanism to present visualization of the robot to the user.It is considered to present robot position in the form of time-lapsed image of the robot.Table 2 shows a quite good overall score dealing with user satisfaction with web-based robotics laboratory.The score is in the range of 1 to 7, with lower number is the better result.The highest score is concerning the easiness of task completion.Most of the user gives score 1 or 2 about easiness of task completion parameter.The lowest score is about support information during task completion.It is considered as a good score, because there is still little support information available at the time of the experiment.
The second experiment is done in a duration of one hour.There are ten users simultaneously accessing the server.Table 3 depicts the result of average execution time for each command send to the server.Figure 4 depicts the number of command in the queue along the time duration of the experiment.From Table 3, it can be seen that the time average for each command execution is less than 8 s.The result is observed every 15 min.It shows that there is no significant deviation from the average value.It means that there is no congestion in the server.

Conclusion
The web-based robotics laboratory depicted in this paper still has a lot of work to be done.Based on the experiment result, the web interface can be accessed with relative ease.Most command can be executed and the result shown in the interface under 8 s.The queue for robot command has been tested.Testing result showed that maximum value of occupied slots at the given time is only 3. Further testing of web-based laboratory with multiple robots and bigger user capacity still can be done in the future.There are still room for feature improvement in the web-based robotics laboratory.For visualization purpose, there is a need of better mechanism to visualize the robot position in 3D space beside video streaming.This research is funded by Applied Product Research fund of Indonesian Higher Education Directorate under contract no.19/SP2H/PDSTRL_PEN/LPPM-UKP/V/2017.

Figure 4
Figure 4  also confirm that there is no congestion in the server.The largest number in the queue is only 3 at a certain time.The queue mechanism is work quite well.To be more certain, larger experiment must be performed with more user active simultaneously.

Table 2 .
User satisfaction

Table 3 .
Average execution time