Web-Based Teleoperated Virtual Laboratories (Web Labs)





Student: Talib Bhabhrawala

Supervisor: Venkat Krovi (vkrovi (at) eng.buffalo.edu)*


* Corresponding contact


Project Description


Interactive technological tools have tremendous potential to address a broad range of educational objectives from presentation and exploration, i.e. in providing opportunities to explore alternative choices and vary system parameters within a constrained system, analysis to student assessment. This project deals with the architecture and implementation of a web-based virtual access laboratory – Web Labs. Our goal was to create and evaluate this mechanism to perform pre-laboratory/preparatory exercises from any Internet-connected computer and thereby supplement actual laboratory attendance.


We present how a student takes advantage of distant execution of real experiment, when integrated in a syllabus partially fulfill our needs and examine all the interactions between a student and Web Labs. The limitations of the available commercial software products are examined. Experiences gained are presented and their consequences for future design are suggested. It should be noted that the application meant for engineering experiments can very well be adapted to fit a larger domain of application areas.







The evolution of the internet has made possible efficient and widespread sharing of information and services. This allows people involved with training to put together, not only their know-how, but also their resources or applications in different fields.


Many academic institutions are examining the creation and evaluation of such Web Labs. The impetus and requirements come from the convergence of:

(i) the desire to provide exposure to students to real and realistic experiences;

(ii) desire to increase availability of such interaction;

(iii) the need to provide exposure to the students to a set of contemporary technology tools and methodologies.


As far as Web Labs is concerned the sets of scenarios are intended to serve as pre-laboratory exercises in multiple ways. First and foremost, they are intended to permit the students to familiarize themselves with the experimental setup by interacting with virtual experiments. Second, the students are required to follow the series of steps outlined in the lab manual with these virtual experiments over the internet. This asynchronous access thus can create opportunities for student exploration and experiential learning, following their curiosity as well as permitting them to make mistakes, without either the time limitations or risk of damage to actual experimental equipment. Specifically, we seek to enhance the learning process by scripting such scenarios/cases and guiding this exploratory process.


How is Web Labs different?


Visualization was given due importance while designing the framework and 3D graphical models/user-interfaces were made, which are intended to mimic the look and feel of the actual lab equipment. Further our framework permits use of a sophisticated dynamic engine like Visual Nastran. The ability to use such high end software helps in eliminating a lot of otherwise disparity in simply modeled virtual systems. Our focus was on creating a complete learning and experimental environment. Our focus from the outset was that these developed educational technology modules including the curriculum of laboratory exercises together with a comprehensive implementation guide will serve as the principal mechanism for dissemination to the research and educational community, specifically using peer-reviewed submission process of NEEDS.


Architecture of the System


It primarily consists of two different parts. The client computer runs a web browser only, which opens a web page loaded from the server. On the front end we have incorporated a user friendly, high-level block diagrammatic, web interface which can be accessed at any internet enabled computer with a supported browser which gives user access to simulation, testing and refinement of the experiment systems with a virtual model. The remote user also views the virtual representation (the avatar) of the experiment in her/his VRML browser window.


The server computer runs the interface scripts, which communicates with MATLAB and which in turn generates the VRML world is powered by MATLAB’s Virtual Reality Toolbox. It separately performs the calculations for the system using Visual Nastran, which acts as our dynamic engine at the server end.


For designing of such an environment, following aspects were considered from the user point of view:

(i) On the client's side which is the user with a web browser, only standard software independent of the operating system is necessary to use Web Labs.

(ii) The web pages are standard html only with Java components and VRML plug in for the interactive features. Via these web pages, complex simulations with remote access to simulation software on our servers can be undertaken.


Components of the system


Web Server


MATLAB web server is used as a web-front for MATLAB and it was made possible to design MATLAB simulations and interface it with other applications running on the server started from a client. The output of the simulations is shown on a user-designed html document of a web browser. Client application, usually a web browser, loads an Initial Hypertext Markup Language (HTML) document from Hypertext Transfer Protocol Daemon (HTTPD). After editing the parameters is completed, the client sends data to the HTTPD, which loads matweb through Common Gateway Interface (CGI). Matweb connects to the MATLAB server by means internal protocol. MATLAB server loads the requested M-file into a separated copy of MATLAB. After executing has been completed the MATLAB server gives an output to the matweb, usually as text/html based on a template file. The matweb returns it to the client through HTTPD.


VRML Model

The MATLAB VR Toolbox is the server side package which is used for animating and visualizing systems in three dimensions. In our case the entire experimental setup is created in VRML the simulation can be seen on the user’s web browser. The use of VRML has some very useful advantages:

(i)  It is not tied to any one hardware or software company.

(ii) The user can move through and interact with a 3D world.

(iii) It represents 3D information better than flat HTML.

(iv) It is an intuitive experiential environment and multi-user worlds can be constructed for use with some browsers.

Dynamic Engine

Visual Nastran is used as the server side high end analysis package which enables computation of displacements, forces, torques, velocity and acceleration anywhere on the solid model.  It can also simulate contact and friction to yield more realistic models. In addition to these basic elements it also supports industry standard finite element, vibration and thermal analysis.


Description of the User Session

For illustrating the use system, a short description of the experimental session is presented in the subsequent paragraphs. At the beginning of the session, the student logs in if there is no other session in progress. For this purpose he launches a web browser and loads the web page of the experiment.


The server asks him the name and the password. Once logged in he can select which experiment he wishes to perform. The home page has the description of the experiment, schematics and desired tasks. The user can go ahead and launch the VRML world, which once launched allows the user to move around and give the user an idea of what the real set up would look like.


He then goes ahead and proceeds by giving the required input parameters and running the simulation. As per the framework the inputs are use to launch the VRML and Visual Nastran and required analysis performed. The results obtained from the simulations are routed back to the web server which returns the results to the browser where the user can read and interpret the results.

Server Side Execution

The primary components for interfacing on the server side to complete the framework are the MATLAB Webserver, Simulink, Virtual Reality Toolbox, Visual Nastran.


On the Web server, a m-file is implemented, which parses the arriving data. It checks if the transferred function may be executed, and if the parameters are within the limited range. If valid, the values are transferred to MATLAB and executed with the selected parameters simulation function.


The first communication is established between the web server and VR toolbox to initiate the experiment session and launch the VRML world which will be seen and manipulated by the user through out the session. Here the most important aspect is to parse the world id to ensure subsequent simulations are run on the same world which is being displayed on the user browser. In absence of this fail safe a new instance is created every time a simulation run rendering the VRML world on the client side as static.




Since the TCP/IP protocol cannot guarantee transfer rates, real-time demands may not be fulfilled. The response times depend considerably on actual utilization of the network. During the development and testing phase some stability problem emerged in connection with the use of Java. Especially in servers this behavior is not tolerable.


A serious disadvantage of the MATLAB Web Server is that, although it is possible to program 3D animations in MPEG- or AVI-format, the response time of applications is too long (1 min. or more). This is impractical considering current Internet conditions. This means there is not anyway to show processes in their extensions in time or space, only the end-result of a process. This narrows the value of the simulations.


One of the disadvantages of MATLAB Web Server is that it requires considerable hardware. Because MATLAB is an interpreter, it needs a high performance CPU and also a lot of RAM.


Related Activities


Presentation to University at Buffalo Educational Technology Center (ETC) [PPS]





This project is funded by the UB Educational Technology Center (ETC)




Last Updated: January 17, 2005