Remote Supervision and Maintenance of Industrial Processes
José Ramón Janeiro, Eduardo J. Moya, David García, Oscar Calvo and Clemente Cárdenas
Fundación CARTIF, Parque Tecnológico de Boecillo. Parcela 205. 47151 Boecillo, Valladolid, Spain
Keywords: Remote Supervision, Control, Maintenance, Industrial Process, PLC, OPC, OPC-DA, SCADA, Web,
Internet, Java, GSM, GPRS, SMTP, PLC.
Abstract: This article explains a SCADA System called SCADA Web developed by CARTIF Foundation. This
SCADA System makes possible remote monitoring and control from the process controlled by PLC using
Web Technology. SCADA Web has been developed on platform Java EE and provides visualization and
control signals, trend charts, alarms, historical data and alarm reports.
Internet, together with the use of technologies such
as GMS/GPRS/UMTS (International Engineering
Consortium), provides communication mechanisms
with a great number of possibilities (GeneraLynx).
These technologies are present more and more in the
Nowadays, a large extent of automation
dustrial solutions demand maintenance and
supervision systems because of the high complexity
and the need of managing a large volume of data.
Computers are the main support for supervision
and m
aintenance systems due to the high
performances and informations that they can
The main reasons to develop a SCADA Web
ro, J. R., 2006) have been the growing use of
the supervision and maintenance system on
computers and the features that support the
technologies GSM/GPRS/UMTS and Internet.
This paper is organized as follows. In Section 2
the characteri
stics that a remote supervision and
maintenance system have to support are presented.
The SCADA Web Application arquitecture
ry to supervise a process in a remote way is
presented in Section 3.
In Section 4 the main features and an operation
anual of the SCADA Web Application is
Conclusions and open issues for future research
discussed in Section 5.
Nowadays, more and more systems are being
supervised in a remote manner in order to keep the
process running in a correct state. The most
important applications to be carried out are
maintenance actions, although this depends on the
nature of the process.
The traditional arquitecture of these systems in
n to remote supervision is composed by a
Web Server that, after a correct authentication,
allows access to remote supervision services of an
industrial process. The supervision systems have to
fulfill the next requirements:
is only necessary one computer and an
Internet connection to supervise the system
There is not need of special soft
installation in the remote computer, except for
some specific plug in.
dependence of the remote computer operative
The acces
s to applications must be controlled to
avoid risks, due the that these remote
supervision tasks can be accessible through a
network like internet.
Be carefu
l with the exchange between remote
computer and the process due to security
problems. One possible solution is the use of
safe communication protocols like HTTPS.
Ramón Janeiro J., J. Moya E., García D., Calvo O. and Cárdenas C. (2007).
SCADA WEB - Remote Supervision and Maintenance of Industrial Processes.
In Proceedings of the Fourth International Conference on Informatics in Control, Automation and Robotics, pages 220-225
DOI: 10.5220/0001647702200225
Maintenance systems send alarms or warning by
means of SMS and e-mail. These methods supply an
efficient notification reducing failure correction
times and therefore reducing process costs.
The acronym of SCADA Web Application comes
from SCADA (Supervisory Control And Data
Acquisition) and WEB (World Wide Web). This
application makes remote supervision and
maintenance of any industrial process possible. The
above-mentioned process can be controlled by
PLC´s of different brands by means of a web
browser, an e-mail client and a mobile.
This application offers a number of features
beyond the usual characteristics of a simple SCADA
system. It contains elements focused towards
industrial process maintenance like SMS messaging
(Short Message Service) using technology
GSM/GPRS (Global System for Mobile
Communications /General Packet Radio Service)
and e-mails.
Using OPC-DA(OPC-Foundation) protocol
(OLE for Process Control-Data Access) based on
OLE/COM/DCOM (Object Linking and
Embedding/Component Object Model/Distributed
Component Object Model) it is possible to access
the variables.
In order to avoid the use of DCOM technology
due to problems with the firewalls (OPC
Programmers’ Connection), we have developed an
application called OPC gateway to supervise the
process without limiting the structures of control.
This application uses OPC-DA implementation in
its interface “Automation” allowing the SCADA
Web Application to access the variables by means of
strings UNICODE based on Sockets. Although the
OPC gateway application support DCOM, it is
expected to be installed in the same computer where
the OPC-DA server is located so that it is only
necessary to use COM technology.
The use of OPC-XDA(OPC Foundation) (OLE
For Process Control- XML Data Access) instead of
OPC-DA was ruled out because of the generally
scarce in utilization of this protocol by PLC´s
manufacturers. Even so, it is desirable that the
application supports both protocols in future
In fact, the SCADA Web Application is a Web
application developed using the platform Java EE
(Java Enterprise Edition) (Sun Microsystems).
Apache Tomcat (The Apache Software
Foundation) has been the server used. SCADA Web
Application is based on the next technologies: JSP,
Servlet, Applet, Beans, JDBC, JavaMail, JAF and
JAXB. The use of these technologies leads to a high
development cost of the application, a null or low
acquisition cost and high flexibilility and scalability
compared, for example, to commercial SCADA.
Figure 1: SCADA Web Application Structure.
The configuration parameters of SCADA Web
Application are inserted in an XML file called
scadaweb.xml. This file has to keep the xml schema
which is defined in the file scadaweb.xsd The use of
an XML file to configure the application allows a
high degree of flexibility and scalability in the
parameters configuration, as well as a simplification
of the configuration process to the user.
Thanks to JAXB (Java Architecture for XML
Binding) the schema XML is mapped to JAVA
classes providing a simple way to access the
configuration file scadaweb.xml. The SCADA Web
Application is divided in two modules called
Supervision and Maintenace modules. Next, these
modules will be explained.
3.1 Supervision Module
This module has the typical characteristics of a
comercial SCADA. An industrial process can be
remotely supervised via WEB thanks to this module.
Although this module was designed for remote
supervision via WEB, it can be used for local
supervision of a process. Furthermore, thanks to its
generic design, it’s possible to supervise the process
using informatics nets so complex as desired (LAN,
Internet, Routers, ...).
The Supervision Module of SCADA Web
Application is a multiuser system that lets to several
SCADA WEB - Remote Supervision and Maintenance of Industrial Processes
remote users supervise the same process at the same
This module is based on a client-server
architecture (Applet-Servet/JSP) which allows to
distribute the computacional load of the application
between Tomcat Apache server and remote
An Applet is an application, written on Java,
which is executed on a Web browser. Using an
applet allows us to have a more complete interface
from the point of view of the client.
A Servlet is a Java class that is carried out on an
application server in order to answer clients
requests. The clients are Applet´s in the case of
A page JSP is a file that combines HTML targets
with script targets which belong to Java Server
Pages specification. The page JSP has a similar
aspect to HTML targets, but they are changed in
Servlet in order to compile and generate the
appropriated class files. The resulting file from the
transformation of page JSP is a combination of
HTML code cointained in JSP page and dynamic
content which is especified by JSP specification
targets. The exchange of information between
Applet and Servlet is carried out by HTTP
tunneling, in other words, transmitting binary
information using HTTP protocol.
Due to security obsession this protocol is usually
the only possible method of information
3.2 Maintenance Module
This module is executed as a daemon checking
permanently that alarms have been configured to
take place. Alarm notification is carried out by
maintenance workers using two diferent methods
depending on configuration.
The first method consist of an alarm notification
using GSM/GPRS technology by SMS. It is
necessary that the computer where SCADA Web
application is installed, is connected to a
GSM/GPRS modem, normally through a serial port.
Communication between modem and SCADA Web
is made by standard AT commands. The library
command used to operate the computer ports is one
from the RXTX organization (RXTX Serial and
parallel I/O libraries supporting Sun’s CommAPI).
The second method consist of alarm notification
using e-mails. A SMTP server which is configurable
in SCADA Web Application is used. In this case the
library used is JavaMail from Sun Microsystems.
SCADA Web Application is executed within
applications servers. This application allows an
interaction between user and process by means of
three interfaces, HTTP, GSM/GPRS and e-mails.
The first interface, HTTP, makes it possible to
supervise the process in a remote manner from a
web browser.
The interface GSM/GPRS is oriented to offer an
instantaneous warning procedure reducing failure
correction times and the costs of industrial
Finally, the e-mail interface carries out the same
functions that GSM/GPRS interface, although it
allows to send more information. The main reason is
to provide redundant alarm warning procedures, so
that the user is notified as soon as possible. E-mail,
unlike GSM/GPRS, is used to notify less critical
alarms. The HTTP interface has been grouped inside
what has been called Supervision Module, while
GSM/GPRS interface and e-mails are in
Maintenance. Next, these modules are explained.
4.1 SCADA Web Configuration
As in other software applications, the configuration
of SCADA Web Application is done by an XML file
according to XML Schema called scadaweb.xsd.
This configuration file has four blocks well
differentiated: Parameters, Maintenance, Protocols,
and Users.
The reading frecuency of PLC´s variables in
“Paramaters Block” is normally about half a second.
The update frequency of the different databases of
the supervisory system is also configurated These
are called reports or historical data.
Inside the “Maintenance Block” the neccesary
basic parameters required by the above-mentionated
block are configurated. There are two sections in this
block: SMS and E-MAIL. In SMS Section the port
is configurated. It contains the modem GSM/GPRS
the PIN, the SMS Server phone and the alarms to
detect besides text message and the phone where it
will be sent.
The SMTP server (address and port), the sender
address, alarms to detect together with the content
and message addressee are configurated in E-MAIL
In Protocol Block the available protocols, in this
case OPC-DA, are added together with the adress
and port of OPC-DA server.
ICINCO 2007 - International Conference on Informatics in Control, Automation and Robotics
In Users Block passwords, usernames and access
permission to the different parts of the program are
4.2 Supervision Module
The necessary requirements to access SCADA Web
application are Internet connection and a computer.
After previously stated requirements are fulfilled
it is necessary to open a web browser window and to
connect to the server where the SCADA Web
application is installed. A similar window is showed
in Figure 2.
Figure 2: Initial Window of SCADA Web.
In this window it is neccesary to authenticate in
order to access to the application. After a correct
authentication, it is possible to access the
applications: “Builder” and “Viewfinder”.
The “Builder Application” is going to allow the
creation of a series of windows with components
thanks to a high level graphic interface with the user.
Linking ones with the others it is possible to
build a SCADA system of a specific installation.
In the figure 3 an image of “Builder Application
is showed”.
Figure 3: SCADA Web Application: “Constructor”.
The application allows to add windows so that a
SCADA system can be built with so many windows
as desired. Each window can be associated to a
Hereafter the available components of the
application will be explained. Every component has
a properties dialogue box associated that allows to
realize its configuration.
Some of the components that can be added
(Besides of labels, rectangles and image
components) are:
Text Field displays analog and digital
Figure 4: Text Field Component.
LED can be associated with one or more digital
variables. This element makes it possible, by
means of colors, to show the state of the
variables. A typical example is failure-non
failure state monitoring and on/off motor state
Figure 5: LED Component.
Button is used to control digital or analog
variables. When the button is pressed,
depressed or is pressed during a time period,
the variable changes of value.
Figure 6: Button Component.
Vertical Bar Graph simulates a level and it is
associated with analog and digital variables.
Figure 7: Vertical Bar Graph.
Toggle allows to supervise digital variables.
The monitoring of variables is carried out by
the state (pressed/depressed) in which the
SCADA WEB - Remote Supervision and Maintenance of Industrial Processes
toggle can be found. When the user presses,
the toggle the variable value is modified. In
Figure 9 the dialogue window to configure the
component is depicted.
Figure 8: Toggle Component.
Figure 9: Dialogue window of a toggle.
Alarms. In the SCADA Web Application it is
also allowed to configure alarms. It is possible the
monitoring and recognition of alarms. Alarms are
administered in the server. Because of this, the
consistency of all alarms by users can be saved. In
this way we can supervise remotly and
simultaneously the process.
Moreover, in order to avoid lacking firmness in
relation to dates, every happened event is registered
according to server time. All these events are
registered in a database to a subsequent consultation.
In Figure 10 the alarms component is showed.
Figure 10: Alarms Component.
Alarm Reports. Alarms are registered in a
database which can be looked up using the “Report
Component”. The generated reports can be printed.
Figure 11: Reports Component.
Trend Charts. Besides monitoring process
variables using controls explained before is possible
to obtain the trend of these variables by graphics
using their corresponding component. Their value
can be also scaled as it is showed in the Figure
Figure 12: Graphics Component.
Historical Data In this last component the data
to register in a database are configurated. Later,
during the process supervision it will be possible to
do consultations of these data by graphics or
accessing directly to the database to obtain the real
value. An example is depicted in Figure 13
Besides, is necessary to configure users that
could use this SCADA system and the permission
level of each one. Due to this and to the fact that
each component has a permission level associated is
possible to control the access as well as to adapt the
SCADA system according to permission level of the
authenticated user.
Figure 13: Historical Component.
After having built the SCADA system of a
particular installation, then it will be possible to keep
ICINCO 2007 - International Conference on Informatics in Control, Automation and Robotics
in a local hard disk or in the server. In the last
instance it is possible to do a remote supervision of
the process if you have a computer and internet
“Viewfinder Application” makes it possible to
carry out the SCADA system created with the
“Builder Application”. In order to configurate these
configurations it is necessary to open them and after
a correct authentication the variable update
frequency will be fixed.
The configuration of update variable frequency
make it possible to adapt the refresh time to the
necessities of the person that wants to supervise the
system. A clear example happens in industry when
the system goes to be supervised simultaneously by
workers in the monitoring process and quality
4.3 Maintenance Module
This module sends alarms of the industrial process
by SMS messages and e-mails. The complete
configuration is done by XML configuration file.
Thanks to this module the alarm notification time
generated is decreased and the costs in the industrial
process associated with alarms are reduced.
Furthermore, all alarm events and e-mail and SMS
messages associated are registrated in SMS and e-
mail databases.
Figure 14: An alarm e-mail.
A system SCADA for remote monitoring and
control of procceses is suggested. This SCADA Web
Application consists of a sub-application called
“Builder” that allows to make SCADA systems for
an industrial plant and a sub-application
“Viewfinder” whose function is supervise an
industrial process based on SCADA systems built by
the “Builder”.
The process variables of an industrial plant
controlled by different PLC´s brands can be
remotely supervised by this application. It is only
necessary to have a computer and Internet
connection. The SCADA system can also represent
by graphics the current evolution of process
variables and the configuration of alarms to warn
when a failure takes place. Besides, these alarms are
registered and can be recognized by user.
There is a possibility of printing and the
monitoring reports by SCADA system of industrial
The SCADA system allows to create historical
data in order to a later consulting in a visual way.
In the SCADA permission levels to adapt the
posibilites of supervision tasks to worker
permission level who supervises the installation are
Finally, it shoud be remarked that thanks to use
an object orientation programming language and an
organization of application in components it is
possible easily add new elements in this application.
This work was supported in part by “Programa de
Fomento de la Investigación Técnica para los
Centros Tecnológicos”, (PROFIT grant FIT 330220-
2005-138 ) from the Spanish Education and Culture
International Engineering Consortium. Global System for
Mobile Communication, <
torials/gsm/> (last accessed on January 10, 2007)
Janeiro, J. R., 2006. Supervisión remota de procesos
industriales controlados por Autómatas Programables,
University of Valladolid. Spain, 1
edition. JFreeChart, <>
(last accessed on January 10, 2007)
OPC Foundation. Specifications,http://ww.opcfoundati (last accessed on January 10, 2007)
OPC Programmers' Connection. OLE for Process Control,
display.asp?id=21 (last accessed on January 10, 2007)
RXTX. Serial and parallel I/O libraries supporting Sun's
CommAPI, <> (last accessed on
January 10, 2007)
Sun Microsystems. Java Enterprise Edition, <http://java> (last accessed on January 10, 2007)
The Apache Software Foundation. Apache Tomcat,
<> (last accessed on January
10, 2007)
GeneraLynx. Remote supervision and control by WAP,
DD.pdf> (last accessed on January 10, 2007)
SCADA WEB - Remote Supervision and Maintenance of Industrial Processes