You are on page 1of 6

3rd IFAC Workshop on Internet Based Control Education

3rd
IFAC
Workshop on
Internet
Based
Control Education
3rd
IFAC
Internet
Based
November
4-6, 2015.on
Brescia,
Italy
3rd
IFAC Workshop
Workshop
on
Internet
Based Control
Control Education
Education
3rd
IFAC
Workshop
on
Internet
Based
Control
Education
November
4-6,
2015.
Brescia,
Italy
November
4-6,
2015.
Brescia,
Italy
Available
online at www.sciencedirect.com
November
4-6,
2015.
Brescia,
Italy
November 4-6, 2015. Brescia, Italy

ScienceDirect
A
A
A
A

new
new
new
new

IFAC-PapersOnLine 48-29 (2015) 140145

generation
of
online
laboratories
generation
of
online
laboratories
generation
of
online
laboratories

generation
of
online
laboratories
teaching
automatic
control

teaching
automatic
control
teaching
teaching automatic
automatic control
control 

for
for
for
for

J.
Chac
o
n
a
nchez
M. Guinaldo J. S
S. Dormido

J.
Chac
o
n
Guinaldo
S
a
nchez
Dormido
M.
J.
S.

J.
Chac
o
n
M.
Guinaldo
J.
S
a
nchez
S.
Dormido

J.
Chac
o
n
M.
Guinaldo
J.
S
a
nchez
S.
Dormido
J. Chac
on M. Guinaldo J. S
anchez S. Dormido

o
n
a
Distancia
(UNED),
Madrid,
Universidad Nacional de Educaci

Universidad
Nacional
de Educaci
o
n
a
Distancia
(UNED),
Madrid,

Universidad
Nacional
o
n
a
Distancia
(UNED),
Madrid,
Universidad
de
Educaci
o
n
a
Distancia
(UNED),
Madrid,
Spain
Universidad Nacional
Nacional de
de Educaci
Educaci
o
n
a
Distancia
(UNED),
Madrid,
Spain
Spain
Spain
(e-mail:
jchacon@bec.uned.es,
Spain
(e-mail:
jchacon@bec.uned.es,
(e-mail:
jchacon@bec.uned.es,
(e-mail:
jchacon@bec.uned.es,
{mguinaldo,
jsanchez,
sdormido}@dia.uned.es).
(e-mail:
jchacon@bec.uned.es,
{mguinaldo,
jsanchez,
sdormido}@dia.uned.es).
{mguinaldo,
jsanchez,
sdormido}@dia.uned.es).
{mguinaldo,
jsanchez,
{mguinaldo, jsanchez, sdormido}@dia.uned.es).
sdormido}@dia.uned.es).
Abstract:
Traditionally,
online
control
education
labs
designed
and
implemented
with
the
Abstract: Traditionally,
Traditionally, online
online control
control education
education labs
labs are
are
designed
and
implemented
with
the
Abstract:
are
designed
and
implemented
with
the
Abstract:
Traditionally,
online
control
education
labs
are
designed
and
implemented
with
the
purpose
of
teaching
on
a
specific
topic:
controller
tuning,
stability,
etc.
These
tools
usually
have
Abstract:
Traditionally,
online
control
education
labs
are
designed
and
implemented
with
the
purpose
of
teaching
on
a
specific
topic:
controller
tuning,
stability,
etc.
These
tools
usually
have
purpose
of
teaching
on
a
specific
topic:
controller
tuning,
stability,
etc.
These
tools
usually
have
purpose
of
teaching
on
a
specific
topic:
controller
tuning,
stability,
etc.
These
tools
usually
have
a
monolithic
design:
there
is
a
strong
binding
between
the
model
and
the
control.
Usually,
purpose
of teaching
onthere
a specific
topic: controller
tuning, stability,
etc.and
These
tools
usually
have
a
monolithic
design:
is
a
strong
binding
between
the
model
the
control.
Usually,
a
monolithic
design:
there
a
binding
between
the
and
control.
Usually,
a
monolithic
design:
there
is
a
strong
binding
between
the
model
and
the
control.
Usually,
is
built-in
controller
may
have
aa set
of
modifiable
parameters,
the
controller
athere
monolithic
design:
there is
isthat
a strong
strong
binding
the model
model
and the
thebut
control.
Usually,
there
is aa
a built-in
built-in
controller
that
may have
have
setbetween
of modifiable
modifiable
parameters,
but
the controller
controller
there
is
controller
that
may
a
set
of
parameters,
but
the
there
is a
a built-in
built-in
controller
that
may
have
aeasily
set of
oftranslated
modifiabletoparameters,
parameters,
butfor
theexample
controller
itself
cannot
be
changed.
Also,
it
cannot
be
other
system,
to
there
is
controller
that
may
have
a
set
modifiable
but
the
controller
itself
cannot
be
changed.
Also,
it
cannot
be
easily
translated
to
other
system,
for
example
to
itself
cannot
be
changed.
Also,
it
cannot
be
easily
translated
to
other
system,
for
example
to
itself
cannot
be
changed.
Also,
it
cannot
be
easily
translated
to
other
system,
for
example
to
compare
the
performance.
In
other
words,
the
system
subject
of
study
is
not
very
configurable,
itself
cannot
be
changed.
Also,
it
cannot
be
easily
translated
to
other
system,
for
example
to
compare
the
performance.
In
other
words,
the
system
subject
of
study
is
not
very
configurable,
compare
the
performance.
In
other
words,
the
system
subject
ofThough
study
is
not
very
configurable,
compare
the
In
words,
the
subject
of
study
not
configurable,
which
unnecessarily
constrains
the
possibilities
of
these
tools.
approach
may
be
compare
the performance.
performance.
In other
other
the system
system
subject
study is
is this
not very
very
configurable,
which unnecessarily
unnecessarily
constrains
the words,
possibilities
of these
these
tools.ofThough
Though
this
approach
may be
be
which
constrains
the
possibilities
of
tools.
this
approach
may
which
unnecessarily
constrains
the
possibilities
of
these
tools.
Though
this
approach
may
be
adequate
for
some
situations,
it
would
be
interesting
to
have
more
flexible
and
versatile
online
which
unnecessarily
constrainsit the
possibilities
of these
tools.
Though
thisand
approach
may
be
adequate
for
some
situations,
would
be
interesting
to
have
more
flexible
versatile
online
adequate
for
situations,
it
be
to
flexible
versatile
online
adequate
for some
some
situations,
it would
wouldcourses,
be interesting
interesting
to have
have more
more
flexible and
and
versatile
online
laboratories,
for
instance,
in
Master
where
students
are
expected
to
design
and
test
adequate
for
some
situations,
it
would
be
interesting
to
have
more
flexible
and
versatile
online
laboratories,
for instance,
instance,
in Master
Master
courses,
where
students
are
expected
to
design
and
test
laboratories,
for
in
courses,
where
students
are
expected
to
design
and
test
laboratories,
for
instance,
in
Master
courses,
where
students
are
expected
to
design
and
test
advanced
control
laws.
This
paper
proposes
a
new
paradigm
to
develop
such
tools.
An
element
laboratories,
for
instance,
in
Master
courses,
where
students
are
expected
to
design
and
test
advanced control
control laws.
laws. This
This paper
paper proposes
proposes aa new
new paradigm
paradigm to
to develop
develop such
such tools.
tools. An
An element
element
advanced
advanced
control
laws.
This
paper
proposes
a
new
paradigm
to
develop
such
tools.
An
element
has
been
deployed
and
allows
the
dynamic
execution
of
scripts
written
in
different
programming
advanced
control laws.
This paper
proposesexecution
a new paradigm
towritten
develop
such
tools.
An element
has
been
deployed
and
allows
the
dynamic
of
scripts
in
different
programming
has
been
and
allows
the
execution
of
written
in
programming
has
been deployed
deployed
and
allows
the dynamic
dynamic
execution
of scripts
scripts
written
in different
different
programming
languages,
such
as
Java,
Javascript,
or
Matlab.
The
final
aim
is
to
provide
students
with
tool
has
been
deployed
allows
the
dynamic
execution
of
scripts
in
different
programming
languages,
such as
as and
Java,
Javascript,
or Matlab.
Matlab.
The final
final
aim is
iswritten
to provide
provide
students
with aaa tool
tool
languages,
such
Java,
Javascript,
or
The
aim
to
students
with
languages,
such
as
Java,
Javascript,
or
Matlab.
The
final
aim
is
to
provide
students
with
aafreely
tool
to
promote
an
active
participation
in
the
practice,
writing
their
own
controller
code
and
languages,
such
as
Java,
Javascript,
or
Matlab.
The
final
aim
is
to
provide
students
with
tool
to
promote
an
active
participation
in
the
practice,
writing
their
own
controller
code
and
freely
to
promote
an
active
participation
in
the
practice,
writing
their
own
controller
code
and
freely
to
promote
participation
in
the
writing
own
controller
code
and
freely
experimenting
with
the
system.
The
is
illustrated
with
some
examples
of
these
new
to
promote an
an active
active
participation
in paradigm
the practice,
practice,
writing their
their
controller
code
experimenting
with the
the
system. The
The
paradigm
is illustrated
illustrated
withown
some
examples
of and
thesefreely
new
experimenting
with
system.
paradigm
is
with
some
examples
of
these
new
experimenting
with
the
system.
The
paradigm
is
illustrated
with
some
examples
of
these
new
generation
online
laboratories.
experimenting
with
the system. The paradigm is illustrated with some examples of these new
generation online
online
laboratories.
generation
laboratories.
generation online
online laboratories.
laboratories.
generation
2015, IFAC (International
Federation of Automatic Control) Hosting by Elsevier Ltd. All rights reserved.
Keywords:
Control
education,
online
laboratory,
web-based
experimentation,
educational
aids,
Keywords: Control
Control education,
education, online
online laboratory,
laboratory, web-based
web-based experimentation,
experimentation, educational
educational aids,
aids,
Keywords:
Keywords:
Control
education,
online
laboratory,
web-based
experimentation,
educational
aids,
level
control.
Keywords:
Control education, online laboratory, web-based experimentation, educational aids,
level
control.
level
level control.
control.
level
control.
1.
INTRODUCTION
Java/Javascript
Simulations
(EjsS)
(Esquembre,
2004)
1. INTRODUCTION
INTRODUCTION
Java/Javascript
Simulations
(EjsS)
(Esquembre,
2004)
1.
Java/Javascript
Simulations
(EjsS)
(Esquembre,
2004)
1.
Java/Javascript
Simulations
(EjsS)
(Esquembre,
2004)
helps
to
overcome
this
problem.
EjsS
is
a
free
authoring
1. INTRODUCTION
INTRODUCTION
Java/Javascript
Simulations
(EjsS)
(Esquembre,
2004)
helps
to
overcome
this
problem.
EjsS
is
a
free
authoring
helps
to
overcome
this
problem.
EjsS
is
a
free
authoring
helps
to
overcome
this
problem.
EjsS
is
a
free
authoring
tool
written
in
Java
that
helps
non-programmers
create
The
fact
that
digital
media
such
as
simulations,
videos,
or
helps
to
overcome
this
problem.
EjsS
is
a
free
authoring
written
in
Java that
helps
non-programmers
create
The fact
fact that
that digital
digital media
media such
such as
as simulations,
simulations, videos,
videos, or
or tool
tool
written
in
helps
non-programmers
create
The
tool
written
in
Java
that
helps
non-programmers
create
in
Java
or
Javascript.
The
architecThe
fact
digital
media
as
videos,
web-based
labs
can
positively
impact
students
knowledge
tool
writtensimulations
in Java
Java that
that
helps
non-programmers
create
The
fact that
that
media such
such
as simulations,
simulations,
videos, or
or interactive
interactive
simulations
in
Java
or
Javascript.
The
architecweb-based
labsdigital
can positively
positively
impact
students knowledge
knowledge
interactive
simulations
in
Java
or
Javascript.
The
architecweb-based
labs
can
impact
students
interactive
simulations
in
Java
or
Javascript.
The
architecture
of
EjsS
is
based
on
the
model-view-controller
(MVC)
web-based
labs
can
positively
impact
students
knowledge
has
been
accepted
by
the
education
community,
and
it
interactive
simulations
inthe
Java
or Javascript. The architecweb-based
labs can by
positively
impact students
knowledge
ture
of
EjsS
is
based
on
model-view-controller
(MVC)
has
been
accepted
the
education
community,
and
it
ture
based
on
model-view-controller
(MVC)
has
been
accepted
by
the
education
community,
and
it
ture of
of EjsS
EjsSinis
iswhich
basedthree
on the
the
model-view-controller
(MVC)
paradigm,
parts
can
be
differentiated:
The
has
been
accepted
by
education
community,
and
is
widespread
practice
distance
education
of
EjsS
is
based
on
the
model-view-controller
(MVC)
has
accepted
by the
thein
community,(Kozma,
and it
it ture
paradigm,
in
which
three
parts
can
be
differentiated:
The
is aaa been
widespread
practice
ineducation
distance education
education
(Kozma,
paradigm,
in
which
three
parts
can
be
differentiated:
The
is
widespread
practice
in
distance
(Kozma,
paradigm,
in
which
three
parts
can
be
differentiated:
The
model,
the
view,
and
the
controller.
The
model
describes
is
a
widespread
practice
in
distance
education
(Kozma,
1994).
Web-based
labs
make
possible
to
illustrate
scientific
paradigm,
in
which
three
parts
can
be
differentiated:
The
is
a
widespread
practice
in
distance
education
(Kozma,
model,
the
view,
and
the
controller.
The
model
describes
1994).
Web-based
labs
make
possible
to
illustrate
scientific
model,
the
view,
and
the
controller.
The
model
describes
1994).
Web-based
labs
make
possible
to
illustrate
scientific
model,
the
view,
and
the
controller.
The
model
describes
the
process
under
study
in
terms
of
variables
(states
of a
1994).
Web-based
labs
make
possible
to
illustrate
scientific
phenomena
that
require
costly
or
difficult-to-assemble
model,
the
view,
and
the
controller.
The
model
describes
1994).
Web-based
labs
make
possible
to
illustrate
scientific
the
process
under
study
in
terms
of
variables
(states
a
phenomena that
that require
require costly
costly or
or difficult-to-assemble
difficult-to-assemble the process under study in terms of variables (states of
of
phenomena
the
process
under
study
in
terms
of
variables
(states
of a
a
plant,
for
example)
and
relationships
between
these
variphenomena
that
require
costly
or
difficult-to-assemble
equipment
and
should
ideally
consist
of
two
different
and
the
process
under
study
in
terms
of
variables
(states
of
a
phenomena
that
require
costly
or difficult-to-assemble
plant,
for
example)
and
relationships
between
these
variequipment
and
should
ideally
consist
of
two
different
and
plant,
for
and
relationships
between
these
variequipment
and
should
ideally
consist
of
two
different
and
plant, expressed
for example)
example)
and
relationships
between
these
variables,
by
computer
algorithms.
The
view
proequipment
and
should
ideally
consist
of
two
different
and
complementary
parts:
plant,
for
example)
and
relationships
between
these
variequipment
and
should
ideally
consist
of
two
different
and
ables,
expressed
by
computer
algorithms.
The
view
procomplementary parts:
parts:
ables,
expressed
by
computer
algorithms.
The
view
procomplementary
ables,
expressed
by
computer
The
view
provides
graphical
of
system,
complementary
parts:
ables,
expressed
by represensentation
computer algorithms.
algorithms.
The
view that
procomplementary
parts:
vides the
the
graphical
represensentation
of the
the
system,
that

Virtual
Labs
provide
computer
based
simulations
vides
the
graphical
represensentation
of
the
system,
that
vides
the
graphical
represensentation
of
the
system,
that
is,
the
graphical
user
interface
(GUI)
of
the
simulation.

Virtual
Labs
provide
computer
based
simulations
vides
the
graphical
represensentation
of
the
system,
that

Virtual
Labs
provide
computer
based
simulations
is,
the
graphical
user
interface
(GUI)
of
the
simulation.
Virtual
Labs
provide
computer
based
simulations
which
offer
and
ways
work
to
user
(GUI)
of
the
simulation.
Virtual
Labs similar
provideviews
computer
based of
is, the
the graphical
graphical
user interface
interface
(GUI)
ofuser
the interactions
simulation.
Finally,
the
controller
responds
to
the
which offer
offer
similar
views
and ways
ways
ofsimulations
work to
to is,
is,
the
graphical
user
interface
(GUI)
of
the
simulation.
which
similar
views
and
of
work
Finally,
the
controller
responds
to
the
user
interactions
which
offer
similar
views
and
ways
of
work
to
their
traditional
counterparts
(Wannous
and
Nakano,
Finally,
the
controller
responds
to
the
user
interactions
which
offer
similar
views
and
ways
of
work
to
Finally,
the
controller
responds
to
the
user
interactions
and
translates
them
into
requests
for
the
model.
their
traditional
counterparts
(Wannous
and
Nakano,
Finally,
the
controller
responds
to
the
user
interactions
their
traditional
counterparts
(Wannous
and
Nakano,
and translates
them
into
requests
for
the
model.
their
traditional
counterparts
(Wannous
and
2010).
Nowadays,
simulations
have
evolved
into
intranslates
them
into
requests
for
the
model.
their
counterparts
and Nakano,
Nakano,
and
translates
them
into
requests
for
the
model.
2010).traditional
Nowadays,
simulations(Wannous
have evolved
evolved
into inin- and
and
translates
themhas
into
requests
forto
theautomatic
model.
2010).
Nowadays,
simulations
have
into
When
this
scheme
been
applied
2010).
Nowadays,
simulations
have
evolved
into
interactive
graphical
user
interfaces
where
students
can
2010).
Nowadays,
simulations
have
evolved
into can
in- When this scheme has been applied to automatic control
control
teractive
graphical
user
interfaces
where
students
When
this
scheme
has
been
applied
to
automatic
control
teractive
graphical
user
interfaces
where
students
can
When
this
scheme
has
been
applied
to
automatic
control
labs,
the
main
elements
of
aa control
loop,
i.e.,
the
teractive
graphical
user
where
can
manipulate
the
experiment
parameters
and
explore
thistwo
scheme
has
been applied
to automatic
control
teractive
graphical
user interfaces
interfaces
where students
students
can When
labs,
the
two
main
elements
of
control
loop,
i.e.,
the
manipulate
the
experiment
parameters
and
explore
labs,
the
two
main
elements
of
a
control
loop,
i.e.,
the
manipulate
the
experiment
parameters
and
explore
labs,
the
two
main
elements
of
a
control
loop,
i.e.,
the
model
of
the
plant
and
the
controller,
have
been
unavoidmanipulate
the
experiment
parameters
and
explore
its
evolution.
labs,
the
two
main
elements
of
a
control
loop,
i.e.,
the
manipulate
the
experiment
parameters
and
explore
model
of
the
plant
and
the
controller,
have
been
unavoidits
evolution.
model
of
the
plant
and
the
controller,
have
been
unavoidits
evolution.
model
of
the
plant
and
the
controller,
have
been
unavoidably
coupled
in
the
model
part
of
the
MVC
paradigm.
its
evolution.

Remote
Labs
use
real
plants
and
physical
devices
model
of the plant
and
the controller,
have
beenparadigm.
unavoidits
evolution.
ably
coupled
in
the
model
part
of
the
MVC

Remote
Labs
use
real
plants
and
physical
devices
ably
coupled
in
model
part
the
paradigm.
Remote
Labs
use
real
plants
and
physical
devices
ably
coupled
in the
the
model that
part isof
ofexecuted
the MVC
MVC
paradigm.
In
this
way,
the
algorithm
in
reality
by

Labs
use
plants
and
physical
which
are
teleoperated
real
time
et
al.,
ably
coupled
in
the
model
part
of
the
MVC
paradigm.
Remote
Remote
use real
real in
plants
and(Guimaraes
physical devices
devices
In
this
way,
the
algorithm
that
is
executed
in
reality
by
which are
areLabs
teleoperated
in
real
time
(Guimaraes
et
al.,
In
this
way,
the
algorithm
that
is
executed
in
reality
by
which
teleoperated
in
real
time
(Guimaraes
et
al.,
In
this
way,
the
algorithm
that
is
executed
in
reality
by
the
controller
belongs
to
this
set
of
generic
relationships
which
are
teleoperated
in
real
time
(Guimaraes
et
al.,
2011).
Remote
experimentation
through
the
Internet
In
this
way,
the
algorithm
that
is
executed
in
reality
by
which
are
teleoperated
in
real
time
(Guimaraes
et
al.,
the
controller
belongs
to
this
set
of
generic
relationships
2011).
Remote
experimentation
through
the
Internet
the
controller
belongs
to
this
set
of
generic
relationships
2011).
Remote
experimentation
through
the
Internet
the
controller
belongs
to
this
set
of
generic
relationships
between
variables
described
above,
and
there
is
no
a
neat
2011).
Remote
experimentation
through
the
Internet
has
been
available
for
more
than
a
decade
and
its
inthe
controller
belongs
to
this
set
of
generic
relationships
2011).
Remote
experimentation
through
the
Internet
between
variables
described
above,
and
there
is
no
a
neat
has been
been available
available for
for more
more than
than aa decade
decade and
and its
its inin- between variables described above, and there is no a neat
has
between
described
above,
and
there
no
neat
between
the
plant
and
the
controller,
has
been
available
for
than
aa decade
and
terest
has
never
diminished
years
(Salzmann
between variables
variables
described
and
there is
is and
no a
amoreneat
has
been
for more
more over
than the
decade
and its
its inin- separation
separation
between
the
plantabove,
and
the
controller,
and
moreterest
hasavailable
never diminished
diminished
over
the
years
(Salzmann
separation
between
the
and
the
controller,
terest
has
never
over
the
years
(Salzmann
separation
between
the plant
plant
and
the
controller, and
and moremoreover,
this
is
not
accessible
to
the
user.
terest
has
never
diminished
over
the
years
(Salzmann
and
Gillet,
2007).
separation
between
the
plant
and
the
controller,
and
moreterest
has
never
diminished
over
the
years
(Salzmann
over,
this
is
not
accessible
to
the
user.
and
Gillet,
2007).
over,
this
to
the
and
Gillet,
2007).
this
is
not
accessible
to
the
user.
and
Gillet,
2007).
over,
this is
is not
not accessible
accessible
to virtual
the user.
user.
and
Gillet,
2007). virtual and remote laboratories over,
This
monolithic
structure
of
labs
causes
that
The
effort
of
developing
This
monolithic
structure
of
virtual
labs
causes
that their
their
The
effort
of
developing
virtual
and
remote
laboratories
This
monolithic
structure
of
virtual
labs
causes
their
The
effort
of
developing
virtual
and
remote
laboratories
This monolithic
monolithic
structure
of virtual
virtual
labs
causes that
that
their
reach
is
limited,
since
students
can
manipulate
certain
The
effort
of
developing
virtual
and
remote
laboratories
(VRLs)
from
the
scratch
is
huge,
and
in
this
regards,
Easy
This
structure
of
labs
causes
that
their
The
effort
of
developing
virtual
and
remote
laboratories
reach
is
limited,
since
students
can
manipulate
certain
(VRLs)
from
the
scratch
is
huge,
and
in
this
regards,
Easy
reach
is
limited,
since
students
can
manipulate
certain
(VRLs)
from
the
scratch
is
huge,
and
in
this
regards,
Easy
reach
is
limited,
since
students
can
manipulate
certain
parameters
of
the
controller
but
they
cannot
access
to
the
(VRLs)
from
the
scratch
is
huge,
and
in
this
regards,
Easy
reach
is
limited,
since
students
can
manipulate
certain
(VRLs)
from
the
scratch
is
huge,
and
in
this
regards,
Easy
 This work has been funded by the National Plan Projects
parameters
of
the
controller
but
they
cannot
access
to
the
parameters
of
the
controller
but
they
cannot
access
to
the

parameters
of
the
controller
but
they
cannot
access
to
the
core
definition
of
it.
Though
the
traditional
VRLs
have
This work
work has
has been
been funded
funded by
by the
the National
National Plan
Plan Projects
Projects

parameters
of the
controller
but
they
cannot access
tohave
the

core
definition
of
it.
Though
the
traditional
VRLs
This
DPI2011-27818-C02-02
and
DPI2012-31303
of
the
Spanish
Ministry
This
work
has
been
funded
by
the
National
Plan
Projects

core
definition
of
it.
Though
the
traditional
VRLs
have
This work has beenand
funded
by the National
Plan Ministry
Projects
core
definition
of
it.
Though
the
traditional
VRLs
have
been
working
satisfactorily
in
our
institution
for
over
DPI2011-27818-C02-02
DPI2012-31303
of
the
Spanish
core
definition
of it. Thoughinthe
traditional
VRLs
havea
DPI2011-27818-C02-02
and
DPI2012-31303
of
the
Spanish
Ministry
been
working
satisfactorily
our
institution
for
over
a
of
Science
and
Innovation
and
FEDER
funds.
DPI2011-27818-C02-02
and
DPI2012-31303
of
the
Spanish
Ministry
been
DPI2011-27818-C02-02
and DPI2012-31303
of the Spanish Ministry
of
been working
working satisfactorily
satisfactorily in
in our
our institution
institution for
for over
over a
a
been
working
satisfactorily
in
our
institution
for
over
a
of Science
Science and
and Innovation
Innovation and
and FEDER
FEDER funds.
funds.

of
of Science
Science and
and Innovation
Innovation and
and FEDER
FEDER funds.
funds.
Copyright

2015
IFAC
140 Hosting by Elsevier Ltd. All rights reserved.
2405-8963

2015,
IFAC
(International
Federation
of Automatic Control)
Copyright

2015
IFAC
140
Copyright

2015
IFAC
140
Copyright

2015
IFAC
140
Peer
review
under
responsibility
of
International
Federation
of
Automatic
Copyright 2015 IFAC
140Control.
10.1016/j.ifacol.2015.11.227

IFAC IBCE 2015


November 4-6, 2015. Brescia, Italy

J. Chacn et al. / IFAC-PapersOnLine 48-29 (2015) 140145

decade (S
anchez et al., 2002; Dormido et al., 2008), they
result limited when used by postgraduate students, which
are expected to design and test advanced control laws.
This need has impulsed a new generation of virtual labs
that decouples the system and the controller, and has
the following advantages: Increases the flexibility of these
simulation tools, the student can actively participate in
the development of the lab practice, it allows the reuse of
controllers already implemented in different programming
languages, or to test the same controller in different plants
without any additional effort.
Thus, this paper presents the architecture as well as the
technical details of this second generation of online laboratories. An element of EjsS, which is a sort of Java
library provided by a friendly GUI for its configuration,
has been developed. From a lower level viewpoint, it allows
the dynamic execution of scripts written in different programming languages such as Java, Javascript, or Matlab.
From the high level perspective, the controller structure
(and not only the values of the parameters) can be change
in execution time.
The structure of this paper is as follows: Section 2 gives
an overview of the current state of the online laboratories.
Section 3 proposes a new paradigm to develop more
flexible and versatile online laboratories, and Section 4
covers the implementation of a virtual laboratory that
follows the proposed paradigm. Finally, Section 5 presents
the conclusions.
2. OVERVIEW
In the literature, different approaches oriented to developing remote laboratories can be found. In Stefanovic et al.
(2011), authors present a remote laboratory exclusively
created by using the LabVIEW platform (National Instruments, 2015). Although LabVIEW VIs 1 can be easily
made ready for Internet delivery, a LabVIEW Runtime
Engine must be installed on the client side. This last
step is not recommended when creating remote labs since
installing software plugins sometimes can become hard for
final users. For this reason, LabVIEW platform is commonly used only for creating the server side of a remote lab
(other software options for the server side can be Matlab
(Farias et al., 2010), Simulink (Fabregas et al., 2011), C++
(Costa et al., 2010), Scicos (Magyar and Zakova, 2012),
etc.).
On the other hand, Java applets and Flash applications
have been the most popular web technologies for developing the client interface for remote labs. In Hernandez
et al. (2008), a virtual laboratory for the analysis and
study of the human respiratory system was created. In
this example, an applet was developed by using EjsS. Two
other interesting examples of remote labs for pedagogical
purposes were presented in S
anchez et al. (2002). In these
articles authors present a set of web-based laboratories for
teaching automatic control concepts where Java applets
to access remotely the training services were used as well.
Similarly, Flash applications have found some applications
1

LabVIEW programs are called virtual instruments, or VIs,


because their appearance and operation imitate physical instruments, such as oscilloscopes and multimeters, National Instruments
(http://www.ni.com/white-paper/7001/en)

141

141

in virtual and remote laboratories design Barrett et al.


(2003); Goffart (2007). Unlike Java, Flash has been less
used by developers for designing web-based labs mainly for
license payment issues. Another example can be found in
Besada-Portas et al. (2012), where a remote control laboratory is built using EjsS applets and twincat programmable
logic controllers.
Virtual Labs (VLs) are nothing but computer applications. Thus, it is easy and cheap for their developers to
share them with the community. This is the case of the
ComPADRE-Open Source Physics Christian et al. (2011)
repository 2 , with hundreds and hundreds of Java and
Javascript simulations, all of them created with EjsS, or
the PhET Wieman et al. (2008) webpage 3 , also with
hundreds of simulations based on Java, Flash and HTML5.
Remote Labs (RLs), however, require real equipment to
run. This means that RLs are: 1) more expensive to create
and maintain and 2) the maintenance to ensure their
correct operation requires time and attention.
The architecture of previous remote labs in UNED were
usually based on three software tools: EjsS, LabVIEW
(Laboratory Virtual Instrument engineering Workbench)
and the JIL server (Chacon et al., 2014; Chac
on et al.,
2014; Guinaldo et al., 2013; de la Torre et al., 2011). With
this approach, an EjsS application implements the user
interface in the client side, allowing students to interact
with the plant, carry out experiments and obtain experimental data. In the server PC, there is a LabVIEW VI
(Virtual Instrument) which is plant-dependent and implements a local control and some safety measures to avoid
damaging the plant in case of accident or malicious users.
This server PC needs to be running the JIL server, which
offers an interface for the EjsS application in the client
side to interact with the LabVIEW VI. This architecture
has worked very well over the last years, and nowadays
there are many RLs in use based on this solution. The
main successful idea of JIL Server was the introduction
of a middleware built over the local control software, that
adds an interoperability layer, and reduces the coupling
between the client and the server implementation.
But, apart from the software tools used to develop the laboratory, all the cited examples have a non-flexible design,
in the sense that there is a reduced set of experiences that
can be carried out with the system, and these experiments
are pre-designed and incorporated in the lab. Focusing on
control learning tools, a control system can be decomposed
at least into two differentiated components: the process
and the controller. The design of both components, process
and controller, are determined at the building process
of the remote or virtual laboratory. They are fixed and
cannot be changed by the user, but there are a small
set of parameters affecting the system behaviour which
can be tuned to accomplish with some goals, such as
control performance or any other requirement considered
adequate by the educator. In other cases, the student can
choose between different pre-implemented controllers, and
compare the behaviour for different cases.
Anyway, the use of the tool is limited to the scope the
designer has in mind at the deployment stage, and it is
2
3

http://www.compadre.org/osp
https://phet.colorado.edu/

IFAC IBCE 2015


142
November 4-6, 2015. Brescia, Italy

J. Chacn et al. / IFAC-PapersOnLine 48-29 (2015) 140145

a matter of time to become obsolete or non-adequate to


the learning requirements. If there is a need to adapt the
activity, additional effort will be needed to modify the
tool. To cope with this limitation, a new architecture is
discussed in the next section.
3. NEXT GENERATION
The architecture proposed is based on the same tools than
previous methodologies, but with some add-ons that allow
to face the design with this new paradigm in mind.
As mentioned earlier in the paper, two different components can be clearly identified in a control system: The process and the controller. Both elements can be abstracted,
and each one can be seen as a block or a component with
a set of inputs, parameters and outputs. This is explained
below in more detail.

Fig. 1. Architecture of the proposed framework.

In a common situation, the behaviour of the process will


be usually determined by the built-in implementation of
the laboratory designer, who creates the model or the
interface to the real process and implements it using an
adequate tool. Though there may be applications where it
is desired to choose between different process, usually it
is not required. In the case of a remote lab, it is obvious
because of the underlying physical process and associated
hardware.

Fig. 2. Block diagrams for the process and the controller


elements.

However, it is desirable to have the controller implementation left out as a work assigned to students, which will have
to accomplish some goals, such as control performance or
any other requirement considered adequate by the educator.

In addition, the process may have several parameters, pp ,


that determines its dynamics (see Fig. 2 right).

In any of the cases, the idea is to make plain the independence between the process and the controller to change
their behavior or redefine them with ease.

The process can be defined in EjsS or in any other


engineering tool. Currently, different EjsS Model Elements
(see Section 3.4) are availabel, and these can be used to
communicate EjsS with MATLAB, LabVIEW and other
software.

3.1 The framework

3.3 The controller

And how can this paradigm be implemented? In our


approach, the solution is based on the use of EjsS as well as
a Model Element (an EjsS user add-on). The architecture
is depicted in Fig. 1: EjsS helps creating the user interface
without being an expert programmer, and the system
process dynamics can be directly introduced in an ODE
editor, in the case of a virtual laboratory. Additionally, it
also can be connected, via EjsS elements, to engineering
software such as Matlab, LabVIEW, etc., that act as an
interface to the plant or define complex process models.
Though the propose architecture has been deployed using
EjsS (a detailed example is provided in Section 4), there
are no need to bind to specific languages or software. In
fact, as it will explained in the following lines, the Java
library can be used by any Java application, independently
of EjsS.

The controller is defined by a set of inputs, uc , to receive


the measures of the process variables, the set-point and
any other signal needed, and a set of outputs, yc , which
generates the control input to be feed into the process.
Additional parameters, pc , can modify the behaviour of the
controller (see Fig. 2 left). For example, in a PI controller
the parameters can be the proportional and integral gains,
kp and ki .

3.2 The process


The process have a set of inputs, up , corresponding to
the control variables and disturbances that can affect the
state of the system, and a set of outputs yp , which are the
process variables that can be measured and/or controlled.
142

One thing that is very different from previous interactive


tools is the possibility of defining a new controller by
directly writing the code. This adds versatility because
the same interface can be used to carry out different experiences which, in addition, has at least two advantages:
From the point of view of educators, once the virtual
or remote lab is built, they can focus in the design of
the learning experience. The educator can feel free to
change the experience as needed because there is no
need to modify the code.
But also students benefit from this paradigm, because
once they have acquire knowledge of the tool they can
perform their work without additional effort to adapt
between different interfaces.

IFAC IBCE 2015


November 4-6, 2015. Brescia, Italy

J. Chacn et al. / IFAC-PapersOnLine 48-29 (2015) 140145

143

(a)

(b)

(c)

(d)

Fig. 3. View of the EjsS Element page and the interface of


the Code Evaluator Element.
3.4 The EjsS Model Element
EjsS model elements are plug-ins that extend the built-in
capabilities of the software tool. Essentially, an element
can be seen as a Java library that provides an API which
can be accessed from within the EjsS simulation, and a
wrapper which implements an interface that EjsS needs
to load the element and access to its functionality. One
of the advantages of the model elements is that they are
easy to use, as will be explained in Section 4. Using this
mechanism, an element has been developed to facilitate
the creation of on-line laboratories with the proposed
paradigm: The Code Evaluator Element.
The element is a code evaluator that allows the executution of Java/Javascript code, or to connect with a Matlab
software to execute Matlab code. The configuration of it
is performed through a friendly interface. In this case, the
developer of the virtual lab chooses which variables of the
EjsS model will be the inputs and outputs of the controller,
and hence, accessed in execution time. Finally, one of the
programming languages available is selected.
4. EXAMPLE OF USE
To illustrate the ideas exposed in the previous sections,
a complete example of a virtual laboratory is presented
hereafter. The example chosen is a popular process in the
academic control community.
4.1 The process
The process consist of a water tank which can be configured to have different geometries. There is a pump that
can impulse water into the tank with a speed which is
considered lineally dependent on the control input. The
water in the tank is evacuated through an outlet orifice at
the bottom. The system dynamics, which can be obtained
by using mass balance and Bernouillis equation, is:


A(h(t))h(t)
= k 2gh(t) + u(t)
(1)
where h is the water level, A(h) is the section of the tank
in the water level h, g is the gravitational acceleration, and

143

Fig. 4. Different geometries of the tank: a) cylinder, b)


conical trunk, c) semi-sphere, and d) paraboloid.
k is a constant which depends on the outlet section. The
nonlinear dynamics can be linearized around any operating
point. In the simplest case, when the cross section is
constant, the linear dynamics is:

g

h(t) + u(t)
(2)
Ah(t) = k
2h0
The simulation considers four different geometries for the
tank (See Fig. 4): cylinder, conical-trunk, semi-sphere, and
paraboloid. Each one has a slightly different behaviour,
because of the dependence of the dynamics on the tank
section. The model can be switched between nonlinear,
where the equation (1) is integrated to obtain the level,
or linear, to use the linearized model around the chosen
operating point. In this way, the two models can be
compared, for example, to study the range of validity of
the linearization.
4.2 The controller
In the EjsS Elements page (see Fig. 3), there is an icon
associated to the evaluator. A new instance can be added
to the current simulation by dragging and dropping the
icon from the elements palette to the list of elements. The
so created instance can be accessed from the code through
the assigned name, to execute the user defined controller.
To help students approach to the tool, a reference controller implementation is provided in the form of a featureful PID controller codified in MATLAB programming language. This PID is based on the one described in
Astr
om
and Hagglund (2004), and it provides several characteristics as anti-windup, bumpless transfer between automatic
and manual mode. The complete code is shown in Listing 1

IFAC IBCE 2015


144
November 4-6, 2015. Brescia, Italy

1
2
3
4

J. Chacn et al. / IFAC-PapersOnLine 48-29 (2015) 140145

%% PID C o n t r o l l e r
% I n p u t : yc = ( s e t p o i n t , p r o c e s s v a r i a b l e )
sp = y ( 0 ) ;
pv = y ( 1 ) ;

5
6
7
8
9
10
11
12
13
14

% P ar a m e t e r s : pc = ( kp , t i , td )
kp = pc ( 0 ) ;
t i = pc ( 1 ) ;
td = pc ( 2 ) ;
t f = pc ( 3 ) ;
t t = pc ( 4 ) ;
h = pc ( 5 ) ;
ulow = pc ( 6 ) ;
uhigh = pc ( 7 ) ;

15
16
17
18
19
20
21
22

% Compute c o n t r o l l e r c o e f f i c i e n t s
p1 = kpb
p2 = kp + kp td / ( t f + h )
p3 = t f / ( t f + h )
p4 = kp td h / ( ( t f + h ) ( t f + h ) )
p5 = kph / t i
p6 = h / t t

Fig. 5. A screenshot of the EjsS simulation. On the left


side, there is an animated visualization of the process.
On the right side, two plots show the values of the
process and the control variable. At the bottom, there
is a text editor to write the controller code and userdefinable parameters.

23
24
25
26
27
28
29
30
31
32
33
34
35

% Bumpless p a r a m e t e r c h a n g e s
I = I + k p o l d ( b o l d sp pv ) + kp ( bu pv )
%
v
u
x
I

Control algorithm
= p1 sp p2 pv + x + I
= s a t ( v , ulow , uhigh )
= p3 x + p4 pv
= I + p5 ( sp pv ) + p6 ( u v )

or Matlab. The final aim is to offer students a tool that


promotes an active participation in the practice, writing
their own controller code and freely experimenting with
the system. The paradigm has been demonstrated with
an example of a virtual laboratory of a simple tank, that
allows to define the code of a water level controller and
test it with different geometries of the tank.

% Output : u = ( c o n t r o l a c t i o n , c o n t r o l l e r s t a t e )
yc ( 1 ) = r ;
yc ( 2 ) = I ;

Listing 1: PID Controller code


REFERENCES
4.3 The user interface
Fig. 5 shows a screenshot of the EjsS user interface corresponding to the simulation of the process. The design
follows the authors guidelines to develop remote and virtual laboratories, based on previous experience. On the left
side, there is an animated visualization of the process: A
water level-controlled tank, that visually presents the state
of the plant. This visualization is important because it
gives direct feedback to the user and adds interactivity. On
the right side, two plots show the values of the water level
(process variable) and the pump input (control variable),
which complement the representation of the plant and
provide more detailed information to be analyzed more in
depth. Finally, at the bottom, there is a text editor that
allows to write the controller code, which can be either in
Java, Javascript or Matlab language, and some sliders to
configure the geometry of the tank and some user-definable
parameters which are made available to the code.
5. CONCLUSIONS
This paper proposes a new paradigm to develop online
control education labs that, rather than being focus on
a single teaching concept, provides a platform to freely
experiment with a system or model, and allows students to
design their own controller code. An EjsS element has been
deployed for the dynamic execution of scripts written in
different programming languages, such as Java, Javascript,
144

Astrom, K. and Hagglund, T. (2004). Advanced PID


Control. Paperback.
Barrett, R., Cona, J. Hyde, P., Ketcham, B., Kinney,
B., and Schakelman, J. (2003). Virtual microscope. URL
http://www.udel.edu/biology/ketcham/microscope/.
Besada-Portas, E., Lpez-Orozco, J., de la Torre, L., and
de la Cruz-Garca, J. (2012). Remote control laboratory
using EJS applets and twincat programmable logic
controllers. IEEE Transactions on Education, 56, 156
164.
Chacon, J., Beschi, M., Sanchez, J., Visioli, A., and
Dormido, S. (2014). Experimental analysis of a remote
event-based PID controller in a Flexible Link System.
In Workshop on Event-Based Systems, 19th IEEE International Conference on Emerging Technologies and
Factory Automation (ETFA2014). Barcelona, Spain.
Chacon, J., Beschi, M., Sanchez, J., Visioli, A., and
Dormido, S. (2014). An Experimental Framework to
Analyze Limit Cycles Generated by Event-Based Sampling. In 19th IFAC World Congress. Cape Town, South
Africa.
Christian, W., Esquembre, F., and Barbato, L. (2011).
Open source physics. Science, 334(6059), 10771078.
Costa, R., Valles, M., Jimenez, L., Diaz-Guerra, L., Valera,
A., and Puerto, R. (2010). Integracion de dispositivos
fsicos de un laboratorio remoto de control mediante
diferentes plataformas: Labview, matlab y c/c++. Revista Iberoamericana de Autom
atica e Inform
atica Industrial RIAI, 7(1), 2334.

IFAC IBCE 2015


November 4-6, 2015. Brescia, Italy

J. Chacn et al. / IFAC-PapersOnLine 48-29 (2015) 140145

de la Torre, L., Heradio, R., Sanchez, J., Dormido, S.,


Sanchez, J., Carreras, C., and Yuste, M. (2011). A thin
lens virtual and remote laboratory at the new fislabs
portal, multimedia in physics teaching and learning. In
International Conference on Hands on Science (MPTLHSCI), 131137. Ljubljana, Eslovenia.
Dormido, R., Vargas, H., Duro, N., Sanchez, J., DormidoCanto, S., Farias, G., Esquembre, F., and Dormido, S.
(2008). Development of a web-based control laboratory
for automation technicians: The three-tank system. Education, IEEE Transactions on, 51(1), 3544.
Esquembre, F. (2004). Easy java simulations: A software
tool to create scientific simulations in java. Computer
Physics Communications, 156(2), 199204.
Fabregas, E., Farias, G., Dormido-Canto, S., Dormido,
S., and Esquembre, F. (2011). Developing a remote
laboratory for engineering education. Computers &
Education, 57(2), 16861697.
Farias, G., Keyser, R.D., Dormido, S., and Esquembre, F.
(2010). Developing networked control labs: a matlab and
easy java simulations approach. IEEE Transactions on
Industrial Electronics, 57(10), 32663275.
Goffart, J. (2007). Design of a web-based remote lab for a
brewery process.
Guimaraes, E., Cardozo, E., Moraes, D., and Coelho, P.
(2011). Design and implementation issues for modern remote laboratories. Learning Technologies, IEEE
Transactions on, 4(2), 149161.
Guinaldo, M., de la Torre, L., Heradio, R., and Dormido,
S. (2013). A virtual and remote control laboratory
in moodle: The ball and beam system. In 10th IFAC
Symposium on Advances in Control Education.

145

145

Hernandez, A., Ma
nanas, M., and Costa-Castello, R.
(2008). Learning respiratory system function in bme
studies by means of a virtual laboratory: Respilab. IEEE
Transactions on Education, 51(1), 2434.
Kozma, R.B. (1994). Will media influence learning?
reframing the debate. Educational technology research
and development, 42(2), 719.
Magyar, Z. and Zakova, K. (2012). Scilab based remote
control of experiments. Advances in Control Education,
9(1), 2062011.
National Instruments (2015). LabVIEW home page. URL
http://www.ni.com/labview.
Salzmann, C. and Gillet, D. (2007). Challenges in remote
laboratory sustainability. In Proceedings of the ICEE
2007, LA-CONF-2007-021.
Sanchez, J., Morilla, F., Dormido, S., Aranda, J., and
Ruiperez, P. (2002). Virtual and remote control labs
using java: a qualitative approach. Control Systems,
IEEE, 22(2), 820.
Stefanovic, M., Cvijetkovic, V., Matijevic, M., and Simic,
V. (2011). A labview-based remote laboratory experiments for control engineering education. Computer
Applications in Engineering Education, 19(3), 538549.
Wannous, M. and Nakano, H. (2010). Nvlab, a networking virtual web-based laboratory that implements
virtualization and virtual network computing technologies. Learning Technologies, IEEE Transactions on,
3(2), 129138.
Wieman, C., Wendy, K.A., and Katherine, K.P. (2008).
Phet research: Simulations that enhance learning. Science, 31, 682683.

You might also like