Remote control of a pneumatic positioning robot.
Ciupe, Valentin ; Maniu, Inocentiu
1. INTRODUCTION
In today's universities and research institutes new learning
techniques seem to grow in popularity. The hands-on or learn-by-doing is
still the best approach for engineering students working on laboratory
exercises--which are perhaps the most powerful learning tools--but this
often suffer from lack of accessibility due to location, expenses or
complexity. Computer simulations have been used instead of a truly
hands-on experience but these are often lacking in the fullness of
details that real systems provide. With the advent of high-speed
Internet communications an alternative approach to providing hands-on
experiences has become possible--remote operation of real equipment.
Such remote operation experiences are fully learn-by-doing with nearly
all the positive and negative aspects of true hands-on laboratory work.
The paper approaches this method by combining pneumatic positioning
knowledge with remote control and monitoring.
2. SYSTEM LAYOUT
The robotic cell that executes "pick and place" type
operations is built around a three-axes Cartesian pneumatic positioning
assembly (robot) custom built by FESTO and two storage spaces (vertical
and horizontal) that can hold up to 9 round plastic pieces each. All
axes are identical in design and functioning, although slightly
different in construction assembly. Figure 1 represents the layout of
one axis which comprises the linear drive (1) which essentially is a
rodless pneumatic cylinder of DGP-X type.
[FIGURE 1 OMITTED]
[FIGURE 2 OMITTED]
A positioning transducer (2) is fitted inside the cylinder and
sends data to the SPC-AIF axis interface (4). This is daisy-chained to
the others axis interfaces of the system and eventually connected to the
SPC200 positioning controller. Two hydraulic shock absorbers (3) are
fitted on the both ends of the cylinder in order to prevent damage to
the drive in the event of end movement. The cylinder is driven by a
proportioning valve of type MPYE-5-X (5) which in turn receives commands
from the axis controller over the connecting bus. The compressed air is
fed to the valve from a compressor (7) and through an air preparation
unit (6) which filters it and regulates the pressure to 6 bars (Festo,
2005).
Besides the positioning axes, the robot also has en end-effector
designed as a two-position gripper. A 90[degrees] semi-rotary actuator
is used that can orient the gripper towards the vertical or horizontal
storage space in order to grab a piece.
For a better understanding of the system, figure 2 represents a 3D
model of the robot, with the storage spaces in place (Verzes &
Visnyei, 2009).
3. THE SERVER-SIDE APPLICATION
In order for the positioning system to be remotely controlled, a
server computer is required. This computer has two main roles: to accept
the client's requests and pass those to the PLC in the form of
string of positioning commands and to feed back to the client two live
video streams about what happens and also some of the PLC's
responses.
The server application by itself is constructed as a custom package
using Visual Basic. This approach was chosen due to the fact that it can
use in the same program Ethernet communication routines and serial
communication routines.
The live video feed is insured by a separate application that can
push two video streams simultaneously, as a (separate) web server
(Webcamxp, 2009). Given the fact that control of the robot is limited
only to selected users and by means of the client application, the video
streams from the two cameras are unrestricted and a simple webpage was
also designed to allow everyone to view the positioning in progress.
The server is also designed to allow only one user at a time to
control the robot and with a time limit of 2 minutes (it builds a queue
based on user logon time). Users log onto the server using the provided
username and password.
From the point of view of the serial commands transmitted to the
robots PLCs, the server application translates request strings received
from the client into positioning commands accepted by the robot's
PLC (Yang et al., 2005).
Another job of the server is to initialize the positioning
parameters of the robot in such way that it moves smoothly and without
hick-ups. This means setting a trapezoidal velocity profile for all axes
and a travel speed of 0.3 m/s (30% of the maximum speed). The
positioning precision of the robot's axes is set to +/- 0.5mm, this
offering a fast positioning time with sufficient precision for this job.
Every location of the two storage spaces has well defined spatial
coordinates relatively to the robot gripper's position. In order to
reach such a position all three axes must be positioned using serial
formatted strings. This contains the axis number (1<z>, 2<y>
or 4<x>), the command itself (C7, C9 ...), the absolute value to
be reached (50-449 mm) and the string terminator ([??]). An example of
such string is given below:
Code: 1C7+250.00M[??]
Also the controller must receive commands for operating the end
effector (opening, closing or rotating the gripper). For every command
received, the controller responds, this allows interrogating the current
position of the robot at any given time.
After each successful string of commands, the server automatically
drives the robot into its "Home" position, selected in such a
way that it allows for a full field view from the fixed camera of both
storage spaces. This homing routine is represented in figure 3 (Verzes
& Visnyei, 2009).
4. THE CLIENT-SIDE APPLICATION
The client software application is designed in such a way that it
offers all the main functions in a single window space (figure 4). There
are three main areas active at any given time: left frame shows the live
feed from the fixed camera (top) and from the end efector camera
(bottom); right frame contains the view of the piece vertical and
horizontal storage spaces, and the list of commands to be executed;
lower frame contains utility buttons and also informations about the
ability to control the robot. A progressbar indicates the remaining time
once the user has the right to issue positioning commands (Ciupe et al.,
2005). Once the user has the right to control the robot, the list of
commands can be sent for execution to the server.
[FIGURE 3 OMITTED]
[FIGURE 4 OMITTED]
5. FUTURE RESEARCH
In order to ensure a flawless functioning of the system, an
electrically operated valve must be placed between the compressor and
the air preparation unit, to stop the air consumption when the robot is
not in use (home position, waiting for user input etc), as the
proportional valves leak air at a rate of 15-16 l/min each, draining the
compressor in vain.
A future development of the client software application is
considered, that can enhance the control level over the robot, allowing
manual positioning anywhere in the workspace of the robot for better
understanding of the positioning procedures.
6. CONCLUSION
The motivation for the work described in this paper relates to
supporting the remote control of laboratory systems and conducting
remote exercises through internet enabled applications that allow
students to connect to the lab at almost any time from almost every
place. The major requirement for the success of remote experiments has
been identified in providing sufficient feedback to the user. Live video
is the preferred method for action validation and provides the perceived
responsiveness. After an initial familiarization with the system most
students are able to accustom to the control method and the general
perception is positive.
7. REFERENCES
Ciupe, V.; Maniu, I. & Grigorescu, S. (2005). Internet-based
visualization and control of a flexible modular production system,
Proceedings of RAAD'05, pp 102-105, ISBN: 973718-241-3, Bucharest,
may 2005
Verzes, I. & Visnyei, R. (2009). Pneumatic robot for pick and
place applications (undergraduate thesis), UPT, Timisoara
Yang, Y.; Wu, C. & Hu, X. (2005). Study of Web-based
integration of pneumatic manipulator and its vision positioning, Journal
of Zhejiang University Science, Vol.6A, No.6, pp 543-548, ISSN:
1009-3095
*** (2005). Smart positioning controller manual type SPC200, Festo
AG & Co. KG, pp.397, Manual: 170246, Esslingen
*** (2009) http://webcamxp.com--Webcam monitoring, recording and
streaming software, Accessed on: 2009-05-29