REMOTE ROBOT CONTROL AND HIGH AVAILABILITY
Silvia Anton, Florin Daniel Anton and Theodor Borangiu
University Politehnica of Bucharest, Dept. of Automation and Applied Informatics
313 Spl. Independentei, sector 6, RO-060032, Bucharest, Romania
Keywords: Networked robotics, high availability, remote control, flexible manufacturing systems, robot vision.
Abstract: Nowadays production flows are modular, each module in the enterprise being specialized and used to
achieve a particular task. In many cases the modules are connected and materials are sequentially processed
in each module resulting a final, unique product or assembly. One typical such production module is a
flexible cell/system using multiple robots. In this structure, providing continuous service for applications is
a key component of a successful robotized implementing of manufacturing. High availability (HA) is one of
the components contributing to continuous service provision for applications, by masking or eliminating
both planned and unplanned systems and application downtime. A high availability solution in robotized
manufacturing provides automated failure detection, diagnosis, application recovery, and node (robot
controller) re integration. The paper describes a platform which is a software product designed to control
and supervise multiple robot-vision controllers using remote connections with a number of Adept
Technology V+ controllers configured to use a high availability implementation, either located in a local
network or via Internet.
1 INTRODUCTION
In a robotized flexible manufacturing cell, robot (-
vision) controllers are masters over local
workstations or cells, because robot manipulators
connect two important material flows: the
processing flow and the transportation flow. One
solution to integrate these two flows with on-line
quality control in the manufacturing module, further
networked with the design and planning modules, is
to adopt a unified feature-based description of parts
and assemblies, technological operations, geometric
& surface quality control, grasping and manipulating
(Tomas Balibrea, et al., 1997).
The system is configured for high availability .
HA systems are a combination of hardware and
software components configured to work together to
ensure automated recovery in case of failure with a
minimal acceptable downtime (Harris et. al., 2004).
2 THE STRUCTURE OF THE
SYSTEM
The system is composed by the following
applications (Figure 1):
The Server Application (SA): Remote visual
control and monitoring of multiple robot controllers
from mobile and stationary matrix cameras.
Visual control: the Server Application supports
almost all V+ and AdeptVision program
instructions and monitor commands.
Monitoring: a Monitoring/Treatment scheme can
be defined for each Client/Station. For each client
a list of events and controller variables to be
monitored according to a user-definable timing
and precedence, and reacted at by user-definable
actions/sequences can be specified in an
Automatic Treatment Window.
Communication management: the Server
Application manages the communication with the
robot controllers and cameras, transfers real-time
images from the cameras observing the robot
workplace and production environment, reports
status information, stores in a database and
displays images taken by the robot camera.
The eClients Applications (eCA): Java
applications running in web browsers. They provide
portal services and the connection of networked
production agents: image data and RV program /
report management; real-time robot control and cell /
workplace observation. The eCA are composed by
two applications:
229
Anton S., Daniel Anton F. and Borangiu T. (2008).
REMOTE ROBOT CONTROL AND HIGH AVAILABILITY.
In Proceedings of the Fifth International Conference on Informatics in Control, Automation and Robotics - RA, pages 229-232
DOI: 10.5220/0001507002290232
Copyright
c
SciTePress
Figure 1: The System Structure.
one application which has the function of
retrieving the images from the observation
cameras and display them in real-time and also
gives the user the possibility to change the
orientation and zoom factor of the cameras.
the second application is a VNC client.
The VNC viewer is a web teleoperation
application which can be executed into a web
browser. The application connects to the Domino
web server which makes a secure connection using a
TCP/IP tunnel with a server having a private IP
address, which cannot be accessed from internet but
only using the Domino server.
The private IP machine has a VNC server that
exports the display, and also the teleoperation
application. Using the exported display the user can
view and use the application as when the application
runs on his own computer. The access is made using
a username and a password, process managed by the
Domino server.
3 ACCESSING THE SYSTEM
To have access to the system, a user must have a
username and a valid password to enter in the
system. First the user must access the portal site
using a java aware browser (like Internet Explorer,
Opera, Firefox, with the JRE installed).
The portal is structured in two zones:
one zone is a public zone which contains all the
documentation, tutorials courses and so on...,
needed by users to learn how to use the system
this part of the portal can be accessed by anyone.
and a private zone where the access is based on
username and password. The private zone gives
access to the eClients for teleoperation purposes.
After entering the correct username and
password, the user is allowed in the system and has
access to a the teleoperation application which is a
menu driven interface which allows him to interact
with the system (see Figure 2).
The teleoperation application is composed by
two windows:
A command window where the user can select
the robot system which he want to control and issue
commands from the command line or activate the
vision window.
The robot stations are commanded using the
command line and the menus. When a client is
connected, the IP address is checked and if the client
is accepted, the name attached to the IP address is
added to a drop down list from which the user can
select what client he wishes to command. When a
client who has a video camera attached the VISION
button is enabled and if it is pressed the VISION
Window will open.
From the VISION window, vision commands
can be issued by selecting the wanted actions from
the menus. The most important functions are:
selecting the physical and virtual cameras, and
the virtual image buffers;
selecting the display mode and the resolution;
image acquisition;
issuing primary operations;
displaying the vision system status;
training models;
switches and parameters configuration for
virtual camera set-up.
ICINCO 2008 - International Conference on Informatics in Control, Automation and Robotics
230
Figure 2: Accessing the system.
4 SOLUTION IMPLEMENTING
FOR NETWORKED ROBOTS
In order to implement the solution on a network of
robots, first a shared storage is needed, which must
be reached by any robot controller from the cluster.
The file system from the storage is limited to
NFS by the operating system of the robots. Five
Adept robot manipulators were considered, each one
having its own multitasking controller.
For the proposed architecture, there is no option
to use a directly connected shared storage, because
Adept robot controllers do not support a Fiber
Channel Host Bus Adapter (HBA). Also the storage
must be high available, because it is a single point of
failure for the Fabrication Cluster (FC).
Due to these constraints, the solution was to use
a High Availability cluster to provide the shared
storage option (NFS Cluster), and another cluster
composed by Adept Controllers which will use the
NFS service provided by the NFS Cluster (Figure 3).
The NFS cluster is composed by two identical IBM
xSeries 345 servers, and a DS4100 storage.
The storage contains a volume named Quorum
which is used by the NFS cluster for communication
between nodes, and a NFS volume which is exported
by the NFS service which runs in the NFS cluster.
The servers have each interface (network, serial, and
HBA) duplicated to assure redundancy (Anton et al.,
2006; Borangiu et al., 2006).
There are three communication routes: the first
route is the Ethernet network, the second is the
Quorum volume and the last communication route is
the serial line. If the NFS cluster detects a
malfunction of one of the nodes and if this node was
the node which served the NFS service the cluster is
reconfiguring as follows:
1. The server which is still running writes in the
Quorum volume which is taking the functions of
the NFS server, then
2. Mounts the NFS volume, then
3. Takes the IP of the other server and
4. Starts the NFS service.
The Fabrication Cluster can be composed by at
least two robot controllers (nodes) – group leader
(GL) and a common node. The nodes have resources
like: robot manipulators (with attributes like:
collision detection, current robot position, etc...),
serial lines, Ethernet adapter, variables, programs,
NFS file system. The NFS file system is used to
store programs, log files and status files. The
programs are stored on NFS to make them available
to all controllers, the log files are used to discover
the causes of failure and the status files are used to
know the last state of a controller.
In the event of a node failure, the production
flow is interrupted. In this case, if there is a
connection between the affected node and the group
leader, the leader will be informed and the GL takes
the necessary actions to remove the node from the
cluster. The GL also reconfigures the cluster so the
fabrication process will continue.
REMOTE ROBOT CONTROL AND HIGH AVAILABILITY
231
Figure 3: Implementing the high availability solution for the networked robotic system.
5 CONCLUSIONS
The project was started at the end of 2005 as part of
the P.R.I.C. research program and is in the final
stage of development.
The research project will provide a
communication and collaboration portal solution for
linking the existing pilot platform with multiple V+
industrial robot-vision controllers from Adept
Technology located in four University Labs from
Romania. This will allow teachers to train their
student using robots and expensive devices which
they do not dispose, and allow students to practice
their skills using specialised labs without
geographical barriers, and even from home. Also the
portal will allow team training and research due to
the messaging feature introduced by Domino.
The high availability solution presented in this
paper is worth to be considered in environments
where the production structure has the possibility to
reconfigure, and where the manufacturing must
assure a continuous production flow at batch level.
The advantages of the proposed solution are that
the structure provides a high availability robotized
work structure with a insignificant downtime.
The project is under development and can be
accessed at: http://pric.cimr.pub.ro.
REFERENCES
Anton F., D., Borangiu, Th., Tunaru, S., Dogar, A., and S.
Gheorghiu, 2006. Remote Monitoring and Control of a
Robotized Fault Tolerant Workcell, Proc. of the 12
th
IFAC Sympos. on Information Control Problems in
Manufacturing INCOM'06, Elsevier.
Borangiu, Th., Anton F., D., Tunaru, S., and A. Dogar,
2006. A Holonic Fault Tolerant Manufacturing
Platform with Multiple Robots, Proc. of 15
th
Int.
Workshop on Robotics in Alpe-Adria-Danube Region
RAAD 2006.
Harris, N., Armingaud, F., Belardi, M., Hunt, C., Lima,
M., Malchisky Jr., W., Ruibal, J., R. and J. Taylor,
2004. Linux Handbook: A guide to IBM Linux
Solutions and Resources, IBM Int. Technical Support
Organization, 2
nd
Edition.
Tomas Balibrea, L.M., L.A. Gonzales Contreras and M.
Manu (1997). Object Oriented Model of an Open
Communication Architecture for Flexible
Manufacturing Control, Computer Science 1333 -
Computer Aided System Theory, pp.292-300,
EUROCAST ’97, Berlin.
ICINCO 2008 - International Conference on Informatics in Control, Automation and Robotics
232