iSES Remote Lab SDK

internet School Experimental Studio
for Remote Laboratory – Software Development Kit

František Lustig, Jiří Dvořák, Pavel Kuriščák

Charles University in Prague, Faculty of Mathematics and Physics, Ke Karlovu 3, 121 16 Prague 2, Czech Republic

iSES Remote Lab SDK - internet school experimental studio for creation of remote laboratories is software development kit for creation custom remote experiments, available from PC and mobile touch devices.

Czech version Czech version is available here / Česká verze tohoto článku je dostupná zde Czech version

Remote experiments based on Java applets

Since year 2002 the remote laboratories have been developed in the Faculty of Mathematics and Physics. The first generation of remote experiments was built on Java applets. However, since 2012 Java applets began to be restricted by Java developers (Sun Microsystems, later Oracle), because security holes arose. Up to now users have to confirm running Java applets with attention of possible security risk. Thus this technology became unusable not only for us, creators of remote experiments, but also for banks and others. Since 2013 many users have abandoned Java applets. Remote experiments written in Java didn’t also function properly on smart phones, e.g. with OS Android, or tablets with iOS.

Remote experiments based on JavaScript

Since 2013 we have also been moving to JavaScript when creating remote experiments on our faculty. Remote experiments are built with new software kit “iSES Remote Lab SDK” [1]. Philosophy of this new kit is the same as in case of Java applet version “ISES WEB Control” [2]. We want to provide non-programming users creation of custom remote experiments. Using JavaScript and HTML5, the experiments work also on mobile touch devices.

Let us remind how the remote experiment works. Remote experiment is application of type server-client. On the server side, there is a computer with an experiment, on the client side, there is only device with the latest version of internet browser, e.g. Internet Explorer, Mozilla Firefox, and Chrome; in which script language is supported. The running of scripts has to be allowed! (By default it is enabled in the latest browsers.) This applies to mobile devices, too. Server side of the experiment consists of computer connected to the Internet. There is a measuring apparatus connected to the computer (e.g. our system ISES [3], [4], resp. other measuring systems, such as LabVIEW, or devices with RS 232 or newly USB interface). It can also consist of stepper motors, controllable sources, multimeters and others. Naturally there is also real experiment. Note: If you want to create remote experiments, where user controls some device, it is not suitable to use measuring systems which do not have output channel. Such systems (such as Pasco, Vernier) consist only of input channels and they provide only experiments of type “sensing”, where quantities are only measured. Systems with analogue or digital control channels, such as ISES, LabVIEW and others, allow building remote experiments of type “control”. It is of course necessary to run special applications on the server. Firstly you need MeasureServer – a special server application which communicates with hardware from measuring apparatus, e.g. with ISES sensors. Secondly, a WEB server is necessary. It enables to run custom webpages written in HTML with use of JavaScript widgets from the new kit “iSES Remote Lab SDK”. For example, we use freely distributable server Nginx. If online camera view on the experiment is wished, it is necessary to run ImageServer (part of “iSES Remote Lab SDK”), which streams the view of the experiment with fast sensing images.

iSES Remote Lab SDK

iSES Remote Lab SDK consists of approx. 20 freely distributable (under Creative Commons licence) JavaScript objects in commented source code. Objects/elements with graphical interface are called widgets. The widget source code can be modified by experienced programmers. However, widgets are highly configurable and provide many thoroughly documented options, which are available by default and which allow even non-programmers to build a complex measuring and controlling interface with data and video transfer. Among built-in features, users have acces to real-time spline interpolation, simple processing, export of data in various formats, graphical output and other sophisticated functionality. Direct connection to the remote experiment server is realized through WebSocket protocol, which provides very low-latency.

User interface elements are mostly based on JQuery and few other freely available JavaScript libraries that are distributed together with the SDK. By using these standard elements, the usier interface visual design is also highly customisable. Web-page developers are able to alter the default design using standard methods (mostly CSS) to fit the webpage in which the interface is embedded.

Original on-line pedagogical research based on log system

The MeasureServer records each user’s activity in a log file with time stamps, which provides important information about measurement sessions of all users. Although there is a problem with anonymous IP addresses, we have some means like unique codes for each student that should be used for login before the session starts in order to surely assign a log record to the user. Through the analysis of the log file we can learn how students behave in a virtual learning environment, e.g. how much time they spent on a certain activity, which steps they did or did not perform, and whether the the whole procedure was meaningful, or just playing with control elements, perhaps with some kind of confusion. We present an example of a log record in Tab. 1.

81.25.16.87 17.4.2011 18:37:29 1035 s ID (4)

0: W (1) {88} {23 * Sv1} * {10} Sv1 * Sr (100) {71} * Sl1{1} * Sl0 {4} * Sl1 {7} * Mv (-12.16) {0 }
* Mv (-445.85) {0} * Mv (-477.93) {0} * Mv (-1000.00) {1} * Mv (1000.00) {4}
* Ma0 {160} * Sf (0) {1} * Sf (1) {3} * Sf (0) {10} {46 * Ma1} * Pr (1) {9} * Ma1 {43} * Sf ( 1) {3} * Ma1 {43}
* Sf (2) {3} * Ma1 {44} * Sf (3) {3} * Ma1 {42} * Sf (4) {3} * Ma1 {43} * Sf (5) {8} {* Sl0 5} * Ma1 {44}
* Ps (1) {0} * Pd (1) {12} * Pd (1) * D

Example of a log record derived from the log file of the remote laboratory on the photolectric effect.

From the log record in Tab. 1 we can read that a student selected the measurement of the Volt-Ampere charactestics of a vacuum phototube (mode 0 at the beginning) and had to wait in a queue for 88 seconds till he took control of the experimental setup. He switched the mercury lamp on (Sv1) and after approx. 5 min of playing and getting familiar with the interface he started data recording and systematically measured all the V-A characteristics for six avalable frequencies of light (Sf0-5). The student always used automatical measurement (Ma1) that takes approx. 40 s. Finally he stopped recording (Ps) and downloaded (Pd) his own data for further processing – determination of the stopping-voltage values and the experimental value of Planck constant. Curly brackets {…} correspond to the time duration since previous action in seconds. Parentheses (…) contain a parameter, e.g. an index of the selected filter.

Furthermore, log records include some basic classification of activities for statistical analysis (S – settings, M – measurement, P – advanced processing of data). We managed to find 4–5 behaviour patterns, e.g. students’ decisions to download and process someone else’s data records when he/she is completely lost or because of trafic jams just before deadline. We also detected some kind of students’ disengagement and perhaps confusion by the user interface, which helps us to develop new and better remote laboratories and to improve user interface as well. Details can be found in (Lustigová, Brom, 2014); (Lustigová et al., 2014).

Collection of simple remote tasks

For beginners who want to try out custom remote experiments, there is prepared Collection of simple remote tasks such as remote analogue record of one quantity (e.g. temperature) on time, remote analogue control of one channel (e.g. switch relay), remote control of digital inputs and outputs, time dependence of two or more quantities, XY dependence of input and output quantities, remote control of linear and stepper motors, remote data transfer from multimeters with COM port, data record, data export, WEB camera stream etc. Examples are written very simply so the source code is clear. These simple tasks can be arbitrarily joined and combined, so they give wonderful satisfaction to all beginners. They can immediately control their own remote experiments via mobile phone or tablet!

Final notes to iSES Remote Lab SDK

Remote experiments built on iSES Remote Lab SDK can be used anywhere, anytime and by anyone and newly we modify them in such way so they are accessible from any PC platform, tablet or mobile phone.

Few notes to hardware of measuring apparatus follow. Nowadays we use ISES-PCI and ISES-USB kits. ISES-PCI uses ADDA PCI card installed in desktop PC. The big advantage of solutions based on ADDA card is large number of inputs and outputs (e.g. ISES-PCI with relay card has 8 analogue inputs, 2 analogue outputs, 16 digital inputs/outputs, resp. 16 relay outputs). There is no other kit that would offer so wide possibilities. ADDA PCI card in PC is not limiting, because it is possible to use instead of server PC an ordinary PC, which can run nonstop for few years. Therefore notebooks and similar devices are not suitable for remote experiments. In spite of this we prepared new simple kit ISES-USB, which has two analogue inputs, one analogue output and five digital inputs/outputs; resp. mini kit ISES-link with one analogue input and output and five digital inputs/outputs. Note that all variants provide outputs. Without output channel there is no remote experiment!

Contemporary hardware base for “iSES Remote Lab SDK“

Software kit “iSES Remote Lab SDK” is in present implemented for measuring apparatuses ISES (ISES-PCI, ISES-USB, ISES-link), for universal measuring apparatuses with COM or USB communication. The linear and rotation movements with large positional XYZ range (10 cm to 2 m) are also implemented. The commercial equipmentFranck-Hertz experiment” made by corporation Phywe and other dedicated devices are supported, too. Implementation of other equipment is just a question of creating new plugins. We prepare plugins for Arduino, Raspberry Pi etc. We are able to create plugins for arbitrary equipment on demand!

ISES-link kit ISES-USB kit
ISES-link kit ISES-USB kit
ISES-PCI kit Phy, Che and Bi ISES modules
ISES-PCI kit Phy, Che and Bi ISES modules
COM/USB COM/USB
COM/USB
Universal measuring device with COM, reps. USB communication port (e.g. multimeter UT-61E,
environmental multimeter DT-223, power supply PSP 12010), which are implemented in iSES Remote Lab SDK
Motor
Motor
Universal rotation and linear stepper motors, which are supported in kit iSES Remote Lab SDK.
Phywe kit
Phywe kit with iSES Remote Lab SDK
Traditional commercial laboratory device Franck-Hertz experiment by corporation Phywe (left),
which is used in remote experiment with iSES Remote Lab SDK (right)
http://194.160.213.12/index_js.html on PŘF UKF Nitra,
http://147.251.193.82/index.html on Ped MUNI v Brno.

Showcase of remote experiments

On website http://www.ises.info/index.php/en/laboratory resp. http://www.eedu.eu, there you can find anytime showcase of experiment based on “iSES Remote Lab SDK” and also videos, how to work with those experiments.

Up to now we have built 18 remote experiments on secondary school and university level, which we freely offer you to use in your school projects, education and also in free time activities.

Electromagnetic induction Solar energy conversion
Electromagnetic induction
http://kdt-20.karlov.mff.cuni.cz/ovladani_2_en.html
Solar energy conversion
http://kdt-4.karlov.mff.cuni.cz/index_en.html
Series RLC circuit Water level control
Series RLC circuit
http://kdt-30.karlov.mff.cuni.cz/index_en.html
Water level control
http://kdt-34.karlov.mff.cuni.cz/en/mereni.html
Study of radioactivity (5 experiments) Measurement of Planck constant
Study of radioactivity (5 experiments)
http://kdt-38.karlov.mff.cuni.cz/choice_en.html
Measurement of Planck constant
http://kdt-33.karlov.mff.cuni.cz/index_en.html

Now we follow with simple list of other remote experiments:

Rectifierhttp://kdt-19.karlov.mff.cuni.cz/index_en.html
Map of stations monitoring natural background radiationhttp://kdt-1.karlov.mff.cuni.cz
Meteorological station in Praguehttp://kdt-16.karlov.mff.cuni.cz/en/mereni.html
Heisenberg uncertainty principlehttp://kdt-13.karlov.mff.cuni.cz/sterbina_en.html
Natural and driven oscillationshttp://kdt-17.karlov.mff.cuni.cz/index_en.html
Photoelectric effecthttp://kdt-29.karlov.mff.cuni.cz

We are going to restore Polarisation of light, Faraday phenomenon, Magnetic field mapping, Magnetic field in coil axis etc. soon.

Conclusion – mobile technologies YES or NO?

On fig. 14 there is remote experiment Electromagnetic induction, which is visited with tablet and smartphone.
Experiment on tablet Experiment on mobile phone
Remote experiment „Electromagnetic induction“, on iPad and on mobile phone.

We expect that new technologies of remote experiments based on JavaScript, which work on mobile devices, will become popular for young generation. Mobile phones in school are a controversy topic. Their use is banned during class almost everywhere. However, the smartphones replace calculator, stopwatch, camera, GPS etc. Smart applications make possible to work with sound, light; measure speed, acceleration; record sound and video. They become priceless when one needs connection to the Internet – e-mail, cloud storages etc.

To deny personal mobile devices or to actively use them? The tendency to use personal mobile devices is called BYOT/BYOD Bring Your Own Technology/Device and not only schools concern about it, but also commercial spheres do. To allow or disable access to databases from “unidentifiable” devices?!

Passive users of smartphones do not feel the rise of the “cloud computing” (originally based on utility and consumption of computer resources, nowadays providing services, programmes accessible from internet browsers). It is not surprising that the same webpages can be downloaded into PCs and mobile devices. In the past webpages for PCs and mobile phones had to be written separately!

Social media become with fast rise of smartphones omnipresent. We are no more bound to classroom with computers. We are in a “school without walls”.

We are able to download music, videos, and books from the Internet. Now we have proved that you can “download” whole real experiment from physics/nature studies!

Learning can be realised through mobile devices. It can be realised outside school, home, somewhere on the way, in restaurant, on party, while travelling etc. This phenomenon called “downtime learning” [5] was studied by Dean Groom.

Above listed technology and learning visions are suitable for remote experiments on mobile phones. Indeed, real experiments are just next cloud in cloud heaven. Education, e.g. classic laboratories, which are nowadays among school’s walls, become “laboratories without walls”, which are accessible from anywhere, anytime, to anyone and they can be completed from any device (e.g. mobile).

Remote experiments are new objects in e-learning and in m-learning. We do not try to prefer m-learning even it is very tempting. Let us use it spontaneously, on untraditional places, but in such way where we educate, explore and construct with classic or distant form of education; not where we only demonstrate new technologies. Let us work individually or in groups.

In conclusion let us quote Dean Groom:

“To be an effective learner in a world with unprecedented access to people and information means being obsessed with learning everything and prepared to take action before you have learned everything you might want to know.…”

Publikace, materiály