Wheelchair Control and Navigation Based On Kinematic Model and Iris Movement
Wheelchair Control and Navigation Based On Kinematic Model and Iris Movement
Silviu Filipescu
Eugenia Minca Department of Electrical Drives
Department of Automation, Computer Science and “Politehnica” University of Bucharest, Romania
Electrical Engineering
“Valahia” University of Targoviste, Romania
Abstract — This paper deals control and navigation of the data from encoders that is robust against localization errors.
wheelchair for elderly and disabled based on kinematic model This controller is a path-following sliding-mode controller, for
iris motion and image processing. Cirrus Power Wheelchair was a car-like robot, claiming robustness to localization and
modelled as an wheeled mobile robot (WMR) with two driving curvature estimation errors. Also, this paper proposed a
and two free wheels (2DW/2FW). An input/output model of the navigation system based on iris and eye movements, allowing
wheel control system consisting of servo-amplifier, DC motor and obstacle avoidance.
gear reducer have been experimentally indentified. To control
each driving wheel system, PI controller has been used. Pole The rest of the paper is organised as follows: in Section II,
placement method was used for tuning PI controller. A software nonholonomic wheelchair kinematic model is laid out; driving
solution was proposed for real-time computing of the wheelchair wheel control system is presented in Section III; Identification
position based on data acquisition from whell encoders. A of driving wheel DC motor model is shown in Section IV;
navigation system, based on iris movement and image processing, tuning PI controller parameters is done in Section V; a solution
was real-time implemented in MATLAB. This navigation system for data acquisition from encoders, is elaborated in Section VI;
identifies the user's eye movement in three directions: forward, wheelchair navigation based on iris movement and image
left and right. Stop of the wheelchair is done by eye closing. Using processing together a graphic user interface designed in
a LabView platform, a graphic user interface has been designed LabView are presented in Section VII,; some final remarks can
and implemented, allowing user to control wheelchair
be found in Section VIII.
movements.
II. NONHOLONOMIC WHEELCHAIR KINEMATIC MODEL
Keywords—wheelchair; control; navigation; kinematic model;
iris movement. Fig 1 shows a geometric model of a wheelchair that defines the
main variables necessary to obtain kinematic model [1].
I. INTRODUCTION
The progress in mobility of the wheeled mobile robots
(WMR) made possible its application in various and useful
fields, like the use of intelligent powered wheelchairs to assist
handicapped and elderly people. Most of the research work on
robotic wheelchairs (and differential drive vehicles in general),
incorporate classic solutions for low level control and
concentrate design efforts on high level control (path following
and trajectory tracking). The literature addressing the problem
of motion under nonholonomic constraints using the kinematic
model of a mobile robot is vast. On the other hand, little has
been written about the integration problem of the
nonholonomic kinematics controller and the dynamics of the
mobile robot. Furthermore, there is a small amount of works on
robustness and control in presence of uncertainties in the
dynamical model of such systems. Several results on the
control of nonholonomic systems with uncertainties have been
obtained. These results concern the back-stepping technique
applying to the adaptive control of nonholonomic systems with Fig. 1. Wheelchair modelled as wheeled mobile robot with two driving
unknown parameters. This paper proposes a path following wheels and two free wheels (2DW/2FW)
controller based on WMR’s kinematic model and acquisition
978-1-4673-7338-8/15/$31.00 2015
c IEEE 78
This WMR has two diametrically opposed drive wheels A(q )S (q ) = 0 (8)
(radius r) and free-wheeling castors. Both drive wheels are
actuate and sensed, while the castors are neither actuated nor where the constant c = r (2b ) . The kinematic model, is given
sensed. Thus, the castor wheels are not considered in getting of by
kinematic and dynamic models. P0 defines the origin of the
q = S ( q )v (t ) (9)
robot coordinate system with coordinates (xo , yo ) . Pc is the
center of mass of the robot with coordinates (xc , yc ) and is with
placed in the X -axis at a distance d of Po . Pl is a virtual v = [v R [
v L ]T , ν = θ R θ L ]T (10)
reference point attached to the platform with coordinates
(xl , yl ) and is placed in the X -axis at a distance La of Pc . Concerning the robotic system in study, Δ distribution is
2b is the length of the axis between the wheels of the mobile involutive and the system is controllable.
robot. φ is the angle between x-axis of {W } and the X -axis III. DRIVING WHEEL DC MOTOR MODELLING
of {R} . θ and θ are the angular velocities of the right and
r l To control a DC motor must have the mathematical model
left wheels around the Y-axis. of the motor [2]. The mathematical model must be able to
determine a relationship between the angular velocity of the
The equilibrium of the wheelchair is maintained by two rotor and its applied voltage.
front free wheels and other two rear small wheels, whose effect
it will ignore. Thus, To get the input/output model of wheel DC motor, having
as input the armature voltage and as output angular speed, we
q = [xc , yc , φ, θr , θl ] (1)
can write the steady-state
(1) mechanical and electrical variables:
dθ
ω(t ) =
denotes the configuration of the system, i.e. the five dt (11)
generalized coordinates (n = 5) . In the kinematic model it is
dθ
suppose that in each contact exist a pure rolling motion. eb (t ) = K b
Assuming that the velocity of Po must be in the direction of
dt (12)
the symmetry (X-axis) and the wheels do not slip, the following dia
constraints set (m = 3) , with respect to Pc , is obtained [8]: ea (t ) = Ra ia (t ) + La + eb (t )
dt (13)
y c cos φ − xc sin φ − φ d = 0 (2)
(2) Tm (t ) = Kt ia (t ) (14)
xc cos φ + y c sin φ + bφ − rθ r = 0 (3) dω
Tm (t ) = J
xc cos φ + y c sin φ − bφ − rθ l = 0 (4)
dt (15)
These constraints can be rewritten in the matrix form: where: Ra is armature resistance, La is inductance armature
(5)
Tm is active torque, ia is current through the armature circuit;
A( q ) q = 0
ea is input electromotive voltage, eb is counter electromotive
with voltage, ω is angular speed, J is moment of inertia of the
ª − sin φ cos φ − d 0 0º motor shaft and K b , K t are motor constants.
A(q ) = ««− cos φ − sin φ − b r 0»» (6) Setting U a (s ) = Ea (s ) as control input, then it can express,
«¬− cos φ − sin φ b 0 r »¼ in Laplace, the transfer from the control input to the angular
speed output as follow
Considering the mobile robot kinematics S (q ) is defined Ω(s ) = H (s )U a (s )
by: (16)
After some calculus manipulations, the transfer function
ªc(b cos φ − d sin φ) c(b cos φ + d sin φ)º (16) becomes
« »
«c(b sin φ + d cos φ) c(b sin φ − d cos φ)» Km
S (q ) = « c −c » (7) H (s ) =
« » JTa J
1 0 s2 + s +1
« » K a Kt Kb K a Kt Kb
« » (17)
¬ 0 1 ¼
where: K m = 1 Kb , Ta = La Ra , K a = 1 Ra .
that satisfies the equation
-2
0 5 10 15 20 25
Time [sec]
6 3
4 2
2 1
0 0
-2 -1
0 5 10 15 20 25 0 5 10 15 20 25 30
Time [sec] Time [sec]
Fig. 5. Right DC motor angular speed to a variable step voltage input(voltage Fig. 6. Closed loop with PI controller, left DC motor angular speed response
applied to servo amplifier) to a variable step reference input
Due to parameter identification, were obtained the Angular speed for right motor with PI controller
6
following transfer functions corresponding to each wheel (left
desired
and right) control sytem real
5
1
V. TUNING PI CONTROLLER PARAMETERS
Since the transfer functions of the control systems for both 0
drive wheels, are first-order, then it will use a PI controller. By
using pole placement method, ([3], [4], [7]) allows to compute -1
0 5 10 15 20 25 30
parameters of both PI controllers, K P and Ki . Time [sec]
Pole placement method revealed the following values:
Fig. 7. Closed loop with PI controller, left DC motor angular speed response
to a variable step reference input
K PL = 0.6 , K i L = 2 , K PR = 0.5 , K i R = 2.1 (21)
θ step k current step − θ step k previous step
The experimental results using PI controllers embedded in ω=
WINDOWS REAL-TIME TARGET in MATLAB are shown
t (21)
in the Figs. 6 and 7.
360D π
VI. SOFTWARE SOLUTION FOR DATA ACQUISITION FROM θ step = ⋅
number of pulses per rotation 180D
ENCODERS (22)
To implement a software solution we use PCI-6024 card
and dedicated MATLAB’s toolboxes, SIMULINK and REAL- where: θ step is the angle of DC motor shaft, k current step is
TIME WINDOWS TARGET, that allow real-time work. the number of pulses to the current step, k previous step is the
The resolution of encoders is 10,000 pulses per revolution number of pulses to the previous step, t is sample time. The
corresponding to a sample time of 0.0001sec. Since the sample number of pulses per rotation represents the total number of
time is very small, an external signal is involved to increase pulses achieved a complete rotation of the encoder.
sample time up to 0.1sec for data acquisition and computing.
In Fig. 8 are shown acquisition data computed by the above
The angular speed of each wheel can be computed using formulas.
the following relationships:
Fig. 11. Graphic user interface for Cirrus Power Wheelchair’s control and
navigation
Fig. 12. Wheelchair navigation based on rela-time isris and eye movement
REFERENCES
VIII. CONCLUSIONS [1] Dhaouadi R. and A. Abu Hatab, Dynamic Modelling of Differential-
Control and navigation of the wheelchair based on Drive Mobile Robots using Lagrange and Newton-Euler Methodologies:
kinematic model and image processing of iris movement are A Unified Framework, Advances in Robotics & Automation, Vol. 2(2),
pp. 1-7, 2013.
presented. The wheelchair is modelled as an WMR
[2] Chen X., J. G. Chase, P. Wolm, I. Anstis, J. Oldridge, W. Hanbury-
autonomous system, with 2DW/2FW. Driving wheel control Webber, R. Elliot, W. Pettigrew, System Identification and Modelling
system are modelled and parameter identified by using of Front Wheel Drive Electric Wheelchairs, 17th International
MATLAB’s System identification toolbox. Pole placement Federation of Automatic Control World Congress (IFAC 2008), 6 pages,
method was used for tuning PI controller parameters. A 2008.
software solution was proposed for real-time computing of the [3] Braga, R. A. M., M. Petry, L. P. Reis, A. P. Moreira, IntellWheels:
wheelchair position based on data acquisition from the wheel Modular development platform for intelligent wheelchairs, Journal of
Rehabilitation Research & Development, Vol. 48(9), pp. 1061-1076,
encoders. A navigation system, based on iris movement and 2011.
image processing, was implemented by using MATLAB’s
[4] Ljung, L., System Identification Toolbox - For Use with MATLAB, The
REAL-TIME WINDOWS TARGET and IMAGE MathWorks, Inc., 1995.
ACQUISITION toolboxes. This navigation system identifies [5] B. Siciliano, L. Sciavicco, and G. Oriolo, Robotics: Modelling,
the user's eye movement in three directions: forward, left and Planning and Control (Advanced Textbooks in Control and Signal
right. The eye closing is used for wheelchair stop. Real-time Processing), Springer; 2nd Printing edition, 2011.
control and navigation results have presented on Cirrus Power [6] R. Gonzalez, and R. Woods, Digital Image Processing Using MAT-
Wheelchair. LAB, 2nd edition, Gatesmark Publishing, 2009.
[7] The MathWorks, inc., Image Processing Toolbox Users Guide, 2007.