Beruflich Dokumente
Kultur Dokumente
Authors:
Ranko Zotovic, Polytechnic University of Valencia, Camino de Vera s/n, 46011 Valencia, Spain, rzotovic@isa.upv.es
Roberto Guzmán, Robotnik Autimation S.L.L, C/Cooperativa de San Fernando, 20-9. CP:46007 Valencia, Spain
rguzman@robotnik.es
Abstract After two years using different commercial autoguided vehicles, we met several problems due to limited
performances, high prices, closed architectures and lack of scalability of these mobile robots. Starting from this experience
we decided to build our own AGV. We used cheap components. We made the power stages. As on- board computer, we chose
a PC, since it is the most scalable, versatile and has the best performance/price relation of all the architectures available on
the market. The operating system we selected was RT-Linux because it is free of cost, powerful, and open to modification.
The software architecture used the client- server model, with the TCP/ IP protocol what makes the communication
independent of the operating system of the host. Several motion and control modes were implemented.
INTRODUCTION
The popularity of mobile robotics is having an enormous increase in the last years. Several Robotics, Artificial Intelligence
and Mechatronics Departments have focused their interest to autoguided vehicles. For the moment, the high investigation and
development costs have limited its use for aerospatial, military, nuclear energy applications, etc., but the actual high level of
technology is allowing its firsts implementations in commercial applications like agriculture, industry, mining, industry, etc.
It could become soon a strategic sector with a very important increase.
Most of the commercial available AGVs have common lacks that seriously limit their use for investigation purposes. The
most important are the high price, closed architecture, incomplete documentation, difficult scalability, in hardware and in
software.
In order to deal with this situation a group of the Department of Systems Engineering and Automation of the Polytechnic
University of Valencia took the decision to build a laboratory autoguided vehicle without the disadvantages of the
commercial platforms. We decided to use a PC based architecture because of its enormous advantages: price, power,
scalability, software and hardware availability.
As operating system we choose RT-Linux, because it is completely open to modifications and enhancements, very
powerful, robust and free of cost.
DESCRIPTION OF THE VEHICLE
The vehicle has two independent motor wheels and two castor wheels, which means it has two degrees of mobility and zero
degrees of dirigibility. Its kinematics is equivalent to a wheelchair. The position and velocity control of the vehicle centre is
realised by the coordinated control of the velocities of the wheels.
The physical design is made in two separated compartments: the low level, containing all mechanical elements and
power electronics, and the high level compartment containing the control hardware. The low level compartment includes the
motors, gear boxes, encoders, servo amplifiers, power sources and batteries. The high level area is mounted on the
motherboard frame of a personal computer, containing also the video cards, I/O cards, control card, LAN card, hard and
floppy disk, etc.
The hardware architecture is based on a control card that steers the motors through the amplifiers. The control of the axes
may be realised through the control card as well as directly from the PC.
From an external host computer, commands are sent to the PC on-board. In case of motion commands, the PC is in
charge of sending references or other commands to the control cards. These generate a voltage reference that is amplified by
the servo amplifiers. The motion of each axe is measured by a position sensor (encoder) and stored in the control card.
CONCLUSIONS
The PC based architecture gives many advantages as low cost, easy scalability in hardware and software, versatility due to
the high quantity of available software, and great computational power. Also, the hardware never gets obsolete, because its
substitution by one of the next generation is immediate conserving the compatibility with the previous software.
The election of the Linux with its real time extension RT-Linux gave very good results. Very powerful development
tools have been used, like the environment gnu wpe (Windows Programming Environment), or the gnu C compiler, and all of
it free of cost. Another important feature is the availability of the source code, which allows absolute flexibility to the
programmer.
The Linux operating system has demonstrated its robustness in practice and additionally it takes maximal advantage of
the processor. As on-board computer an i486 has been used, without consequences on neither execution nor development
time. The analysis has demonstrated the availability of the processor time of 70% in the worst case.
The control algorithms implemented have demonstrated better accuracy in positioning and path following than our
commercial robots in the same conditions. Also, the spline trajectory generator and its postprocessor resulted as adequate,
because of its adaptability to the path, its velocity control in the curves, and the user friendly way to introduce a path.
Finally we have developed a robot, with completely open architecture, easily scalable, low cost, and better performances
than most of the commercial ones.
REFERENCES
[1] Carlos Canudas de Wit et. All. “Theory of Robot Control”. Springer Verlag, 1997
[2] P.H McKerrow. “Introduction to Robotics”,Adisson – Wesley Publishing Company, 1995
[3] K.S Fu, R.C. González, C.S.G Lee, “Robótica. Control, detección, visión e inteligencia”, McGraw-Hill 1988
[4] Patrick F. Muir, Charles P. Neuman. Kinematic modelling of wheeled mobile robots. Department of electrical computer engineering. Carnegie-
Melon University. 1996.
[5] J. Tackett Jr. and David Gunter. Using Linux. Prentice Hall, 1996.
FIGURE. 2
HARDWARE ARCHITECTURE OF THE PCBOT
Remote Host
HD PC
Parallel Port
Emergency Stop
Control Card
Servo Servo
Bat. Bat.
Amplifier Amplifier
12V 12V
Encoder Encoder
Motors
Socket
TCP/IP
Socket
Server
Client
FIGURE. 4
SOFTWARE ARCHITECTURE
Remote host
Client
TCP/IP
Linux
RT-FIFO1 Server
RT-FIFO2 RT-FIFO3
Handler Watchdog
Global RT-Linux
variables
Motion comands.
Semaphore
Control Hardware
500 500
400 400
300 300
200 200
100 100
Y 0 0
-100 -100
-200 -200
-300 -300
-400 -400
-500 -500
-500 0 500
-500 -400 -300 -200 -100 0 100 200 300 400 500
X
0.6
1
0.4
0.2
0.5
0
0 500 1000 1500 2000 2500 3000 3500 0 500 1000 1500 2000 2500 3000 3500
Lineal Velocity Left wheel velocity
-3
x 10 Lineal
0 0.6
0.4
-1
0.2
-2
0
-3 -0.2
0 500 1000 1500 2000 2500 3000 3500 0 500 1000 1500 2000 2500 3000 3500
Angular Velocity Right wheel velocity
x(k ) ∆x(k )
y (k ) ∆y (k )
θ (k ) ∆θ (k )
d ∆q
izq T=0.005
rajectory ∆qder λ q
enerator
ZOH PROCESS
K Inverse PID
+ +
Kinematics
∆qizq
x(k )
∆qder r
y (k )
θ (k )
r Forward z −1 ZOH
Kinematics
z
T
FIGURE. 6
CONTROL IN THE VELOCITY SPACE
Inv. Transform
ωl
1 D ω r ∆q T q
v R 2R
1
ZOH PROCESS
ω d
+ K − D 2πr
R 2R
R − R
2 2 1 z −1 ZOH
R − R
2πr z
T
D D
Dir. Transform