Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

Microprocessors and Microsystems 23 (1999) 1–6

Multifunctional and autonomous, high performance architecture:


application to a wheelchair for disabled people that integrates different
control and guidance strategies
P. Martı́n*, M. Mazo, I. Fernández, J.L. Lázaro, F.J. Rodrı́guez, A. Gardel
Department of Electronics, University of Alcalá, Escuela Politécnica, Campus Universitario s/n. 28871 Alcalá de Henares, Madrid, Spain
Received 21 November 1998; received in revised form 5 March 1999; accepted 17 March 1999

Abstract
This article describes a DSP-based electronic board, designed for use in applications requiring high performance, in terms of processing
times, ease of interface with other systems and flexibility. The board has been designed especially to be used on a wheelchair for disabled
people that includes different guidance strategies and safety sensors. An architecture joining the fundamental characteristics of high speed
and flexibility is needed due to the following factors: the complexity and variety of the wheelchair’s guidance modes, the need for processing
a large amount of information in real-time, and adapting the system to the user’s needs. The functions that the board needs to be able to carry
out include the following: position and speed control, processing of information coming from ultrasonic and infrared sensors, path planning
and control interfaces with the user. Communication between the several blocks of the wheelchair is performed using the serial protocol of
the Echelon bus. q 1999 Elsevier Science B.V. All rights reserved.
Keywords: Wheelchair architecture; Communications protocols; TMS320 DSP family; Real time

1. Introduction in order to give a response to all these demands from the


same base board.
Wheelchairs to aid the mobility of handicapped people There exist many references and research works propos-
and/or the elderly require electronic systems that respond to ing different solutions to the problems that involve wheel-
the users’ needs. The latter needs are basically safety, ease chairs (human–machine interaction, sensors, control,
of configuration, ease of handling, reliability and cost- architectures, etc.) [1–5]. However, few works present
efficiency (without forgetting other aspects such as low architectural solutions planning future commercialization,
consumption, robustness, transportability, etc.). Meeting enlargement, flexibility and cost. In effect, many research
these demands involves integrating different types of works in this field focus their attention on sensor and navi-
sensors (to fulfil functions ranging from the simple detection gation aspects, making use of standard PC-based architec-
of obstacles to autonomous guidance), several human– tures to do all the tasks (primarily, control and navigation).
machine interaction alternatives (joystick, voice commands, But these solutions present only the advantage of easy algo-
breath expulsion, eye movements, etc.), controllers that rithm implementation, and do not respond to the needs of
guarantee smooth and safe driving conditions with a quick future commercialization and industrialization [3–5], from
response, especially in situations of particular danger for the the point of view of the requirements in computing capacity,
user. flexibility, cost, power consumption, etc.
The different operation modes and complexity levels All these reasons stress the importance of the search alter-
these wheelchairs may have, the variety of information to natives that solve these problems and allow the design of
be processed, the need for flexibility to tailor it to the needs wheelchairs on-board which different options could be inte-
of each user, plus the need to cut costs as far as possible, are grated, such as human–machine interaction, sensors and
some of the reasons why architectures need to be designed control strategies that respond to the users’ needs, making
future commercialization easy.
For the viability of a wheelchair, both functionally and
* Corresponding author. economically, it is necessary to have in mind some consid-
E-mail address: martin@depeca.alcala.es (P. Martı́n) erations. On the one hand, it is necessary to use powerful
0141-9331/99/$ - see front matter q 1999 Elsevier Science B.V. All rights reserved.
PII: S0141-933 1(99)00010-1
2 P. Martı́n et al. / Microprocessors and Microsystems 23 (1999) 1–6

Fig. 1. Wheelchair prototype.

CPUs capable of processing the computational load needed integrating the wheelchair. An Echelon bus has been chosen
by control algorithms, and also having different complexity because of its excellent features and easy implementation.
levels ordered by users’ needs. On the other hand, it is
important to guarantee a high reliability and robustness,
with certain flexibility (so giving the wheelchair the chance 2. Wheelchair architecture
of having different operation levels) in communications
The architecture of the wheelchair used as test prototype
among the sub-systems that make up the electronics of the
is shown in Fig. 1. As may be seen it is made up of: (a)
wheelchair. Thus, in this work a LonWorks bus has been
safety and environment detection system (including infrared
used allowing easy integration with the architecture
and ultrasonic sensors), (b) user–wheelchair interface
proposed, being comparable to the CAN bus (M3S proto-
including such output devices as a display and voice synthe-
col—Multiple Master Multiple Slave) that is becoming a
sizer, and input devices that give the user several guidance
standard in systems to aid mobility [6].
options, including a joystick, voice commands [7], breath
The board described in this article guarantees, as has been
expulsion and eye movements [8], (c) low-level control,
demonstrated in practice, the functional viability of this type
basically for control of motor speed and the speeds (angular
of system, assuring not only the correct behavior of all the
and linear) of the wheelchair [9], and (d) navigation and
different algorithms but also the response speed, even in
sensory integration, whose functions are mainly those of
cases where the wheelchair has several types of sensors,
dead-reckoning (working from the information of encoders
control of motors and interaction with the user (joystick,
in both drive wheels), path planning (using cubic splines)
voice commands, etc.). In this way, special care has been
avoiding any obstacles [10] and the pooling of information
taken in hardware design, and also in software. The latter
from the different sensors.
has been structured in several tasks, well characterized, in
Communication between the different modules is effected
terms of the resources they need (execution time, memory,
by two LonWorks buses and a parallel bus that guarantee the
etc.). A real-time operating system has been added to
response speed and communication reliability needed in this
manage all the hardware resources shared by the tasks that
type of application.
have to guide the wheelchair.
A DSP has been chosen taking into account all these
considerations, compared with others options such as PCs 3. General architecture of the board
or microcontrollers. The main reason is that DSPs can cope
with all the control and navigation tasks, due to their high Fig. 2 shows the board’s general block diagram. The basic
computational powerfulness and other architectural advan- core of the board is a DSP from the commercial firm Texas
tages. Instruments, TMS320C31 [11], with the following relevant
Another important aspect in this type of application is features: Harvard architecture, floating-point arithmetic and
communication of the board with the rest of the sub-systems peripherals. It is especially designed to cope with the
P. Martı́n et al. / Microprocessors and Microsystems 23 (1999) 1–6 3

Fig. 2. Block diagram of the board.

computational load that is necessary in the different algo- purpose connector to manage other peripherals such as, for
rithms of this application. The peripheral devices disposed example, a display and a PAL22V10 to decode the memory
around the DSP are: a RAM memory for use by the map.
program, an EPROM to boot the program, both with enough
capacity to provide complete autonomy to the board, a dual-
port RAM memory that communicates the board with a 4. Board functions in the wheelchair architecture
parallel bus, programmable logic device (XC4000 FPGA)
making all the necessary functions of the motor’s control Inside the general scheme of the wheelchair (Fig. 1) two
(encoder readings, calculation of the position and speed of boards, analogous to the one presented here, have been used.
the wheelchair and control loop) with high performance, bus One board captures sensorial information from a system
LonWorks implemented by an Echelon controller (Neuron composed of ultrasound and infrared sensors (in the future
Chip), used for passing information among the different there will be another board with similar features, processing
modules of the wheelchair (Fig. 1), serial port connector images taken from a video-camera), to build up the work-
that allows the use of AD/DA converters for voice proces- space and detect obstacles from the information provided by
sing, an emulation port to debug the programs, a general the sensor system, human–machine interaction that
4 P. Martı́n et al. / Microprocessors and Microsystems 23 (1999) 1–6

includes: mechanical actuators (joystick), control by voice Special functions: The board includes a XC4000 FPGA,
commands and by breath expulsion (in the near future, from the commercial firm Xilinx, that carries out some
control by eye movements based on electro-oculography special functions such as: capture of the signals arriving
techniques processing the information given by a video- from the encoders, position and speed calculation of the
camera mounted in front of the user, will be added), wheelchair’s wheels, control of the wheelchair’s angular
human–machine interface (including a display and a voice and linear speed, as well as arbitrating any conflicts that
synthesizer). The board allows for the implementation of an may arise in the dual-port memory.
isolated-word recognition system, controlled by a specific As can be noted, the most important function is related to
chip. The recognizer can also be set up by software in the capture of the measurements that the encoders give and, from
DSP of the board. The second board manages the control these, computation of the position and speed of the wheel-
tasks of the motors, and position and speed of the wheel- chair’s wheels. Also path planning and position control loop
chair, as well as the path planning. Communication between are fundamental. Due to the large number of counters that
both boards is carried out by means of mailboxes implemen- need to be selected to make the different readings, a
ted in the dual-port memory or with the connection of the XC4000 FPGA is used which has decoding advantages and
Echelon bus. Information contents through the dual-port a great logical capacity; it also offers the possibility of using
memory includes the code of the destination task. In the certain areas as a storage for look-up tables and dual-port
case that communication is made by means of the Echelon memories. The FPGA can also be used as a math coprocessor
bus, each task has its own network variables. to calculate some arithmetic operations, if necessary. The last
function may be implemented only in the modules without
connection to the encoders (e.g. sensor modules).
5. Features of the board’s software and hardware External interface: The board is equipped with three
interfaces. There is one connector to the DSP serial data
The most outstanding feature of this board is that it port for making the interface with the AD/DA converters,
provides a well-adapted alternative to the needs that wheel- needed for processing a microphone voice signal, as well as
chairs demand, including several algorithms of control and for sending information to the user through a loudspeaker,
guidance. For this, the board has a high performance DSP, generated by a voice synthesizer, hence achieving an easier
and different peripherals to provide flexibility, communica- form of human–machine communication. A second inter-
tions and future enlargements. The functions of the DSP and face allows the loading of programs into the board from a
peripherals, as well as the software features are detailed PC, helping in the task of debugging the code implemented
next. in the DSP. The third interface gives the possibility of
DSP: Assumes all the computational load of the control configuring the programmable device in the simulation
and guidance algorithms of the wheelchair, among them phase; thus, once the code has been debugged, it is loaded
noting the position and speed control, path planning, work- in non-volatile memories, conferring on the board its char-
space setup and updates, etc. In order to run all the code and acter of total autonomy. For each interface there exists a
algorithms in real-time, it has a pre-emptive priority real- connector on the board.
time operating system. Software: Due to the large number of tasks the board has to
Communication buses: Communications between the carry out and their characteristics (requirements of this type of
different modules shown in Fig. 1 are set up via two different application in terms of safety, reliable operation, small
protocols, varying in terms of the application. The first response times in danger situations, etc. and the characteristics
protocol manages communication between the wheelchair of the different alternatives in the human–machine interac-
architectural modules. This communication is made with tion), it is necessary to face up to the architectural design as
LonWorks buses implemented by Echelon controllers. a real-time system with high levels of reliability. For example,
One of the buses (bus 1 in Fig. 1) controls communication the responses to external stimuli (user commands, sensor data,
between “safety and environment detection”, “navigation etc.) must actuate in a fixed time interval to avoid the system
and sensor integration” and “user–machine interface” going to an unwanted state that could put the user at risk. A
blocks, while the other bus (bus 2 in Fig. 1) takes charge core real-time operating system has been designed with a
of the communications between “low-level control” and scheduler using priorities. Thus, it allows the addition of
“user–machine interface” modules. new functions with updated tasks without re-making the
The central processing unit and the path planner make use source codes of the application programs. With all of that
of the second communication protocol (parallel bus in Fig. the software grows in modularity, and hence fault-detection
1) that is achieved via mailboxes set up in a dual-port RAM. is quick and simple. In this case, to schedule all the tasks it
So as not to delay the calculation tasks of the board’s algo- has been supposed as known, a priori, the execution time of
rithms, the boxes are attended to by means of interruptions. each task and the response times that the priority operating
The central unit sends the coordinates of the destination and system must guarantee. The timer of the scheduler is imple-
intermediate points to pass through, and the path planner mented with a hardware timer in the DSP that interrupts
algorithm captures them using this protocol. periodically.
P. Martı́n et al. / Microprocessors and Microsystems 23 (1999) 1–6 5

6. Results and future works an intelligent powered wheelchair, Journal of Intelligent and Robotic
Systems, 22 (1998) 269–287.
[5] B. Ulrich, et al., Architectural concept of a semi-autonomous wheel-
At the present time, several applications of control and
chair, Journal of Intelligent and Robotic Systems, 22 (1998) 233–253.
guidance are being tested, capturing time measurements [6] M.W. Nelisse, M3S A general-purpose integrated and modular archi-
making use of the profiler from Texas Instruments. Neural tecture for the rehabilitation environment, in: Proceedings of 2nd
speed control algorithms were tested using a two-dimen- international CAN Conference iCC’95, 1995, pp. 10.1–10.9.
sional radial base network of 16 neurons with on-line train- [7] M. Mazo, et al., Wheelchair for physically disabled people with voice
ultrasonic and infrared sensor control, Autonomous Robots 2 (1995)
ing. In this case, assuming random weights on the network
203–224.
(untrained) the adjustment time was 9.37 ms for a 40 MHz [8] J.C. Garcia, et al., An autonomous wheelchair with a LonWorksq
DSP. Also, the path planner and position control have been network based distributed control system, The Spring 97 LonUsers
incorporated, with an execution time of 8.7 ms. These tasks International Conference and Exhibitions, Santa Clara, 1997.
can be executed every 100 ms, time conditioned to the [9] L. Boquete, Identification and adaptive control of systems using
recurrent neural networks, in: 3rd Symposium on Intelligent Compo-
response of the wheelchair’s motors.
nents and Instruments for Control Applications, SICICA’97, France,
Also, a translation is being made of diverse control algo- 1997, pp. 231–235.
rithms and others for processing data coming from the ultra- [10] J.L. Lázaro, PhD Thesis, Modelado de entornos mediante infrarrojos,
sonic sensors, and the choice to include redundancy is being Aplicación al guiado de robots moviles, E. Politécnica, University of
studied, duplicating the control algorithms in the two boards Alcalá, 1998.
[11] TMS320C3X. Technical handbook 1997, Texas Instruments.
so the system is, in some way, fault-tolerant.
Similarly, an adaptation is being made of the commercial
board equipped with the new TMS320C6201/6701 DSP Pedro Martin obtained degrees in
which has an output of 1600 MIPs, thus allowing the incor- Electronic Engineering and Telecommuni-
poration of image-processing tasks for the guidance of the cations Engineering from the Polytechnic
University of Madrid, Spain in 1990 and
wheelchair. 1994, respectively. He has been a lecturer
in the Electronics Department of the
University of Alcalá since 1991. His areas
7. Conclusions of research are DSPs and electronic design
of architectures applied to wheelchairs for
A board has been developed to suit the control, manage- physically disabled people. He is currently
ment and processing needs of all the sensory information working for his PhD in these subjects.
integrated in a wheelchair for disabled people. The board
allows the execution of the more relevant tasks such as
sensory systems, different choices for human–machine
interaction (joystick, voice commands, breath expulsion,
etc.), control and navigation. The requirements of reliabil- Manuel Mazo received a degree in Elec-
tronic Engineering in 1976, a degree in
ity, robustness, cost and autonomy (power consumption) Telecommunications Engineering in
that users demand from the wheelchair have been 1982, and a Doctorate in Telecommunica-
considered. From this point of view, the features of this tions Engineering in 1988, all from the
board are better than other choices (e.g. standard PC), Polytechnic University of Madrid (Spain).
because of its specific design. He is currently Professor in the Department
of Electronics at the University of Alcalá.
His areas of research are multi-sensor
(ultrasonic, infrared and artificial vision)
Acknowledgements integration applied to mobile robots (and
wheelchairs for physically disabled people)
This work has been carried out thanks to the grants and electronic control systems applied to railway environments.
received from CICYT (Interdepartmental Science and Tech-
nology Committee, Spain) project TER96-1957-C03-01.

References Ignacio Fernández obtained his Electro-


nic Engineering and Telecommunications
Engineering degrees from the Polytechnic
[1] U. Borgolte, H. Hoyer, C. Bühler, H. Heck, R. Hoelper, Architectural University of Madrid, Spain, in 1984 and
concepts of a semi-autonomous wheelchair, Journal of Intelligent and 1996, respectively. He has been a lecturer
Robotic Systems, 22 (1988) 233–253. in the Electronics Department of the
[2] M.W. Nelisse, Integration strategies using a modular architecture for University of Alcalá since 1985. He is
mobile robots in the rehabilitation field, Journal of Intelligent and currently working for his PhD. His main
Robotic Systems, 22 (1998) 181–190. research interest is in artificial vision.
[3] F. Matı́a, et al., Increasing intelligence in autonomous wheelchair,
Journal of Intelligent and Robotic Systems, 22 (1998) 211–232.
[4] G. Bourhis, Y. Agostini, Man–machine cooperation for the control of
6 P. Martı́n et al. / Microprocessors and Microsystems 23 (1999) 1–6

José Luis Lázaro received degrees in Alfredo Gardel obtained a degree in Elec-
Electronic Engineering and Telecommuni- tronic Engineering from the Polytechnic
cations Engineering from the Polytechnic University of Alcalá, Spain in 1995. He
University of Madrid (Spain) in 1985 and has been a lecturer in the Department of
1992 respectively; and a PhD in Telecom- Electronics at the University of Alcalá
munications from the University of Alcalá since 1997. His main areas of interest
(Spain) in 1998. Since 1986 he has been a include computer vision, development of
lecturer in the Electronics Department of real-time systems and autonomous robots.
the University of Alcalá. During this period He is currently working on his MD dealing
he has collaborated in several research with robot motion planning.
projects in the areas of electronics and
multi-sensorial systems for mobile robots
(infrared, artificial vision) and integration applied to mobile robots.

Fco Javier Rodrı́guez received a PhD in


Electronics Engineering from the Univer-
sity of Alcalá in 1997, a degree in Tele-
communications Engineering from the
Polytechnic University of Madrid, in
1990, and a degree in Technical Telecom-
munications Engineering in 1985, also
from the Polytechnic University of Madrid.
He has worked in the private electronics
industry for two years, and, since 1986,
has been a Professor in the Department of
Electronics at the University of Alcalá. His
current work covers the areas of Robotics, Artificial Vision, Neural
Nets, Fuzzy Logic Controllers and Real Time Processing.

You might also like