Easy Creation and Deployment of Javascript Remote ... - IEEE Xplore

4 downloads 0 Views 197KB Size Report
Abstract—This work presents a method to quickly develop remote labs interfaces and embed them in a learning management system like Moodle. The proposed ...
Easy Creation and Deployment of Javascript Remote Labs with EjsS and Moodle Luis de la Torre, José Sánchez

Tiago Faustino Andrade, Maria Teresa Restivo

Dpto. Informática y Automática UNED Madrid, Spain {ldelatorre, jsanchez}@dia.uned.es

System Integration and Process Automation Unit Universidade do Porto Porto, Portugal {tfa@, trestivo}@fe.up.pt

Abstract—This work presents a method to quickly develop remote labs interfaces and embed them in a learning management system like Moodle. The proposed solution requires the use of Easy Javascript Simulations for the development of the interfaces and the EJSApp Moodle plugin to upload them in the learning management system. At the end, an already existing remote experience, originally intended only for testing an electronic solution, was revitalized with a new interface and features. Keywords—remote experiment; remote laboratory; embedded online laboratory;

I.

INTRODUCTION

Nowadays, most groups working on developing remote labs use Javascript for building their applications’ user interface. However, these applications are created from scratch every time. This consumes a lot of time when a new remote lab (RL) needs to be developed. This work proposes the use of a software that eases the creation of Javascript applications to be used as the RL interface. A sort of app builder that provides its users with built-in tools they can use and reuse, to speed up the process of building a new RL application in Javascript. As a complement to the easy creation of remote labs interfaces, the EJSApp plugin for Moodle is used in order to be able to deploy the created application within a course in a Learning Management System (LMS) with just a few clicks. Starting with the creation of the remote laboratories applications, Easy java/javascript Simulations (EjS/EjsS) [1] is a free and open source tool that can be used to easily create remote laboratories. This tool has been existing for more than a decade now and since then, it has been massively used to create physics simulations: for example, there are more than three hundreds at the ComPADRE-OSP digital library [2,3], as well as many virtual and remote labs in the automatic control field (for example, those at the UNILabs network [4-6]). While all these applications were based on Java and deployed as Java applets, EjsS now offers the possibility to build Javascript simulations. In this regard, there are now plenty of Javascript simulations created with EjsS: again, ComPADRE-OSP offers a couple of hundred of them. However, to the best of our knowledge, EjsS has only been used for building a Javascript RL in the present work and in [7]. A different issue is the deployment of the RL application. Deploying it as a web application is the common choice, as it

makes it available to anyone with an Internet connection. However, this can be done in many different ways. The simplest solution would be to deploy the application in a webpage in which the whole content is the RL and nothing more. However, a better solution would be to present such application in a more complete website which also offers some related documentation, where it can be freely available in 24/7 with and/or without a booking system, or embedded in a LMS that offers tons of additional features related to the use and management of the RL. All applications created with EjS/EjsS (either if they are Java-based or Javascript-based) can be embedded into the Moodle LMS with just a few clicks. For this, a plugin (developed by some of the authors) called EJSApp [8] is used. Not only the applications get embedded in the LMS but they also gain some additional features automatically, such as: connection with a booking system that may be used for controlling the access to the RL, multilanguage support, saving data and image files from the virtual or RL application to the users’ files repository in the LMS, grading, monitoring the time spent by users working with the experiment or backup and restore options. It is important to highlight, once again, that all the previous features are gained automatically when adding an EjsS application to Moodle, by means of the EJSApp plugin. This work describes how to embed a Javascript RL inside Moodle, using EjsS and the EJSApp plugin. II.

THE REMOTE EXPERIENCE

The RL used in this work was refurbished (http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6644705 ) and it has been working for more than 1 year non-stop in the Faculty of Engineering of the University of Oporto (FEUP). The idea for this experiment was to test a new solution in a simple setup to measure temperatures and to switch a lamp and a fan on/off. The adopted solution is based on a webserver developed by some of the authors that use a microcontroller from Microchip. Additionally to the webserver, a lamp, a fan, two relays and a thermocouple with an appropriated signal conditioner from Maxim IC were used in the entire setup. The connection between the digital outputs of the webserver and the lamp and fan are intermediated by two relays. The thermocouple glued to the lamp focus is connected to the signal conditioning chip which communicates with the

978-1-4673-8246-5/16/$31.00 ©2016 IEEE 24-26 February 2016, UNED, Madrid, Spain 2016 13th International Conference on Remote Engineering and Virtual Instrumentation (REV) Page 260

webserver by a Serial Peripheral Interface bus. The signal conditioning chip also has an internal temperature sensor that transmits the environment temperature from the webserver. The webserver is accessible and consequently the remote experience is manageable directly by a browser using the Internet Protocol (IP) address assigned. The webpage interface, shown in Fig. 1, allows switching the lamp and the fan, reading the temperatures of the lamp focus and the environment and sending the instant data by email.

replicated and some features were also added, such as a graphic with the temperatures, an on/off control of the lamp and the record of the graph and the values of temperature over the time. The Javascript application was integrated in Moodle easily and only a few appearance adjustments were needed. Based on the positive experience, the development of new interfaces for more complex remote labs has already begun.

Fig. 1. Original RL interface.

III.

IMPLEMENTED SOLUTION

This work presents the first Javascript remote lab (RL) which has been built, in a fast and easy way, using EjsS and which has been embedded into Moodle. While the RL is quite simple, it serves to illustrate the idea of how fast and easily can building remote labs Javascript applications be. The hardware used by the RL presented in this work is located in FEUP. While a Javascript application for the RL already existed, the authors wanted to get this RL inside a LMS, which offered a booking system for controlling the use and access of the hardware. For achieving this objective, the authors decided to: 1) Rebuild the Javascript application using EjsS 2) Embed the newly created RL application in Moodle by means of the EJSApp plug-in. The process was quick and easy and it brought a few additional benefits for free, such as the multilanguage support, being able to allow users to save files from the experiment application to the LMS files repository, and so on. Additionally, the authors made the most of the opportunity of rebuilding the RL application to enhance it. Originally, the RL application only allowed to turn the lamp and the fan on/off, check how the temperature in the lamp rises while the temperature outside remains constant and to get the instant measurements of the temperatures by e-mail. The new version, depicted on Fig. 2, now shows a graph plotting the temperatures, which gives a very visual idea on how the temperature quickly rises but however needs more time to decrease. Also, the new version now allows to perform a basic on/off control to make the temperature stay near a reference point set by the user in the RL application. IV.

CONCLUSION

Fig. 2. Developed EjsS application in Moodle interface.

ACKNOWLEDGMENT This work was also funded by National Funds through FCT - Foundation for Science and Technology under the project (PEst-OE/EME/LA0022/2013). REFERENCES [1] [2]

[3]

[4]

[5]

[6]

[7]

[8]

W. Christian, F. Esquembre, and L. Barbato, “Open Source Physics”, Science, vol. 334, pp. 1077–1078, November 2011. F. Esquembre, “Easy Java Simulations: a software tool to create scientific simulations in Java”, Comput. Phys. Commun,, vol. 156 pp. 199–204, 2004. F. J. García Clemente, F. Esquembre, “EjsS: A JavaScript library which makes computational-physics education simpler”, XXVI IUPAP Conference on Computational Physics, CCP2014, Boston, USA. J. Sáenz, J. Chacón, L. de la Torre, A. Visioli and S. Dormido, “Open and Low-Cost Virtual and Remote Labs on Control Engineering”, IEEE Access, vol. 3, pp- 805–814, 2015. L. de la Torre, M. Guinaldo, R. Heradio, and S. Dormido, “The Ball and Beam System: a Case Study of Virtual and Remote Lab Enhancement with Moodle”, IEEE Transactions on Informatics, vol. 11, pp. 934–945, 2015. D. Chaos, J. Chacón, J. López-Orozco, S. Dormido, “Virtual and Remote Robotic Laboratory Using EJS, MATLAB and LabVIEW”, Sensors, vol. 13, pp. 2595–2612, 2013. J. Bermudez-Ortega, E. Besada-Portas, J. A. López-Orozco, J. A. Bonache-Seco, J. M. de la Cruz “Remote Web-Based Control Laboratory for Mobile Devices Based on EJsS, Raspberry Pi and Node.js”, 3rd Internet Based Control Education Conference, Brescia, Italy. L. de la Torre, R. Heradio, C. A. Jara, J. Sanchez, S. Dormido, F. Torres, and F. A. Candelas, “Providing Collaborative Support to Virtual and Remote Laboratories”, IEEE Transactions Learning Technologies, vol. 6, pp. 312-323, 2013.

The achievement of an interface through the EjsS was successfully accomplished. The original interface was

978-1-4673-8246-5/16/$31.00 ©2016 IEEE 24-26 February 2016, UNED, Madrid, Spain 2016 13th International Conference on Remote Engineering and Virtual Instrumentation (REV) Page 261