Distributed Control Lab
The Distributed Control Lab is situated at the
Operating Systems & Middleware Chair and deals with software
paradigms and design patterns that allow an interconnection of
middleware-based components and embedded mobile systems. The primary
point of interest is how to reach a predictable system behaviour
(regarding to timing behaviour, fault tolerance or resource usage) in
an unstable environment. The evaluation of the different approaches is
done with the help of case studies, one example is a web-based control
of mobile robots in the lab.

Publishing experiments over the web causes problems that deal
especially with non-functional application properties such as fault
tolerance, security or realtime. We developed several methods to deal
with these problems. One possible solution is the usage of dynamic
reconfiguration as a safe-guard mechanism for user code downloaded from
the Internet. Damage to the experiment can be avoided. We are
developing such a configuration framework with mechanism for dynamic
reconfiguration.
DISCOURSE is a distributed laboratory for distributed computing
featuring advanced middleware technology. There are 4 universities
(Freie Universität, Technische Universität, Humboldt
Universität, Hasso-Plattner-Institut) involved in this
project,
building a testbed for research and a reference platform for teaching
with the help of Microsoft .NET technology. We are working on the
integration of the DCL experiments in the DISCOURSE laboratory.

|

|
The Foucault's Pendulum
experiment
consists of a pendulum with an iron ball swinging over an
electromagnet. Two orthogonal light barriers provide information about
the balls movement. The goal of the experiment is to switch the magnet
on or off at the correct moment in time in order to keep the pendulum
swinging. Users can practice to find algorithms, optimized for minimum
energy consumption or acceleration to a maximum amplitude within a
given time.
In order to control the pendulum, a user can write C\# programs, which
are executed by a commercial-off-the-shelf x86 PC running the Windows
2000 operating system. Because of real-time constraints of the
experiment hardware, which samples the light barriers with a frequency
of 23,4 kHz, a custom hardware buffer samples data, which can be
transferred into the PC via the Universal Serial Bus interface. A
device driver transforms the experiment data into a queue-based
structure and is able to generate events for a user control program.
The user program itself can switch the magnet by sending events to the
device driver. |
|

|
The Higher Striker
is a hard real-time
control experiment. In this experiment, a user can write control
programs, that accelerate an iron cylinder in a tube of glass, using
seven electro magnets, which have been placed along the tube. Six light
barriers between the magnets provide position information of the
cylinder.
The experiment consists of a custom control hardware connected via the
parallel port interface to a control computer, and the physical
installation, with electro magnets, light barriers and the described
tube. Data from the light barriers and to the electro magnets are
sampled with a frequency of 38,4 kHz. A special hardware ensures that
the electro magnets can not be activated for longer than 500 ms to
avoid heat problems.
Data received from the light barriers and sent to the magnets can be
buffered before they are read or written via the computer's parallel
port. The user control program can define what amount of buffer memory
(up to 256 bytes) should be used. The smaller the buffer size, the
faster a control program has to read or write the data. Smaller buffers
guarantee faster reaction times onto light barrier events, but demand
stricter timing constraints on the control program. |
|

|
At the start of the DCL project a
first version of the Lego Mindstorm Robots
had been integrated into the lab. A user can write C-style
programs in order to drive the robot in a predefined operation area. We
use the freely available brickOS operating system. We have developed a
experiment specific control language for robot control. Within this
language we have restricted the usage of pointers and recursion,
because of possible damage to robots control software component.
Currently we are going to make Microsofts .NET
environment availabe for the Lego Mindstorm Robots. We are implementing
a front-end for the GNU compiler collection (gcc). Using this approach
we are able to generate native platform code for a lot of processor
architecture. Our runtime for small embedded devices makes some
restrictions to the available functions of .NET. More detailed
information and actual state of the project can be found here.
|
|

|
In coordination with the Institute of Computer Science
at University of Potsdam we are integrating a
Märklin Model Railway
into our lab. Within a lab experiment an user can pratice the
implementation of parrallel and fault tolerant control applications.
|
|

|
Within a bachelor project we are focusing on the
integration of an industrial control scenario into the lab. We have a
Fischertechnik model of an industrial control line. in
coorperation with an industrial partner we connect the model plant to a
programmable logic controller (PLC).
|

Publishing experiments over the Internet
bears the risk
that malicious code from unknown sources can possibly damage physical
experiment equipment. Within the
Distributed Control Lab, we investigate and implement techniques that
prevent malicious code from damaging the experiments. We have
investigated and implemented several strategies for dealing with
possibly malicious code - depending on the experiments' specific
requirements.
In the Foucault's Pendulum experiment we rely on the concept
of analytic
redundancy
- user control components are observed during runtime by a so-called
safety controller. In case of abnormal behavior, the user's control
algorithm can be replaced by our verified safety controller using
dynamic reconfiguration. The pendulum experiment is
controlled by a x86-PC running Windows 2000 as operating
system.
Real-Time requirement of the physical experiment are being met by using
the real-time scheduling class of the Windows 2000 scheduler in
conjunction with external custom hardware. This powerful execution
environment allows us to rely on the concept of
.NET's code access security to implement a secure
runtime environment for user control components very easily.
Within the Lego.Net project we investigate the transformation of ECMA
compliant
IL-code to native Renesas/Hitachi H8/300 microcontroller
instructions for our Lego Mindstorm robots. The type safety of the .NET
platform allows to deal with various potential sources of errors on the
level of the compiler. Within our lab users can implement control
algorithms using every available .NET language. However, because of
restricted resources on the target system, only a limited subset of
.NET features can be implemented on the H8/300 microcontroller.
Within an earlier version of the robotics experiment, we have applied
source code analysis techniques to detect malicious code. In
order to detect certain error classes, we have also introduced
experiment-specific programming languages that
forbid usage of pointers and recursion - mechanisms that could easily
be used to attack our experiments.
The Higher Striker experiment hardware requests more stringent
real-time characteristics from the control computer than the other two
experiments. Therefore, we are running Windows CE.NET to control the
experiment and are currently investigating the usability of the .NET
Compact Framework for experiment control.

Andreas Rasche, Frank Feinbube, Peter Tröger, Bernhard Rabe and
Andreas Polze. Predictable Interactive Control of Experiments in a
Service-Based Remote Laboratory. to appear in the Proceedings of the
Workshop on Pervasive Technologies in e/m-Learning and Internetbased
Experiments (PTLIE), Athens, Greece 18 July 2008
Peter Tröger, Andreas Rasche, Frank Feinbube and Robert Wierschke. SOA Meets Robots - A Service-Based Software Infrastructure For Remote Laboratories.
In Proceedings of 2nd International Workshop on e-learning and Virtual
and Remote Laboratories 2008, ISBN 978-3-940793-17-1, February
14-15 2008, Hasso-Plattner-Institut Potsdam
Andreas Rasche, Bernhard Rabe, Peter
Tröger, and Andreas Polze,
Distributed
Control Lab
in Proceedings of The 1st International Workshop on e-learning and
Virtual and
Remote Laboratories (VIRTUAL-LAB'2004),
Setúbal, Portugal, 24.-25. August 2004, pp. 150-160, ISBN
972-8865-14-7,
INSTICC Press, 2004
Andreas
Rasche, Peter Tröger, Michael Dirska,
and Andreas Polze,
Foucault's
Pendulum in the Distributed Control Lab
in Proceedings of Workshop on Object-oriented Dependable Real-time
Systems
(WORDS 2003F), Capri Island, Italy, October 2003, IEEE Computer Society
Press,
2003.
Andreas
Rasche and Andreas Polze
Configuration
and Dynamic Reconfiguration of Component-based Applications with
Microsoft .NET
in Proceedings of International Symposium on Object-oriented Real-time
distributed Computing (ISORC) 2003.

Movies about the Distributed Control Lab
Visual Studio 2003.NET DCL-Frontends (2
Versions)
Selected Wallpapers
Andreas Rasche