16
Int. J. Appl. Math. Comput. Sci., 2012, Vol. 22, No. 3, 601–616 DOI: 10.2478/v10006-012-0046-1 MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATOR SALIMA DJEBRANI ,∗∗ , ABDERRAOUF BENALI ∗∗ ,FOUDIL ABDESSEMED Department of Electronics University of Batna, Rue Chahid Boukhlouf, Batna 05000, Algeria e-mail: [email protected] ∗∗ ENSI de Bourges PRISME, 10 Boulevard Lahitolle, 18020 Bourges cedex, France A new approach to control an omnidirectional mobile manipulator is developed. The robot is considered to be an individual agent aimed at performing robotic tasks described in terms of a displacement and a force interaction with the environment. A reactive architecture and impedance control are used to ensure reliable task execution in response to environment stimuli. The mechanical structure of our holonomic mobile manipulator is built of two joint manipulators mounted on a holonomic vehicle. The vehicle is equipped with three driven axles with two spherical orthogonal wheels. Taking into account the dynamical interaction between the base and the manipulator, one can define the dynamics of the mobile manipulator and design a nonlinear controller using the input-state linearization method. The control structure of the robot is built in order to demonstrate the main capabilities regarding navigation and obstacle avoidance. Several simulations were conducted to prove the effectiveness of this approach. Keywords: holonome mobile manipulators, input state linearization, virtual impedance control, fuzzy logic. 1. Introduction To date, there have been a lot of research efforts regarding developing mobile mechanisms, which can be categorized into three types: vehicles equipped with wheels similar to general (automobile-type) vehicles, with two parallel wheels and one caster wheel, and the ones with omni- directional wheels (Campion et al., 1996). Automobile- type vehicles cannot perform rotation or side-translational motion in a narrow space; vehicles with two parallel wheels and one caster mechanism cannot perform side- translational motion either. The omni-directional mobile robot is a kind of holo- nomic robot. Compared with the more common car like (nonholonomical) mobile robot, the omni-directional one has the ability to move simultaneously and independently in translation and rotation (Pin and Killough, 1994). Most of the work on motion control of omnidirectional mobile robots is based mainly on the kinematic model. This is equivalent to assuming that robots are massless bodies and therefore can ideally respond to the input motion control commands, which indeed does not reflect the real situ- ation especially for heavy and fast moving robots. For this reason, efforts have been made to develop precise dy- namic models to improve robot performance (Williams et al., 2002; Watanabe et al., 1998). One of the main problems in robotic research is to provide efficient control algorithms in order to allow robots to execute desired tasks. These tasks are various and require great mobility and dexterity of the robotic system. A mobile manipulator is generally one of the structures aimed at these applications. It is basically a robotic arm mounted on a moving base and can be used to perform a variety of tasks that are mostly related to material handling application. The capability of mobile manipulation is important for some autonomous mobile robot applications, which need to interact with the en- vironment dynamically. These applications require both a large workspace and a dexterous manipulation capa- bility. Application examples in servicing robotics in- clude the ARMAR robot (Albers et al., 2006), ROBO- NAUT (Ambrose et al., 2004), HERMES (Bischoff and Graefe, 2004), HADALY-2 (Hashimoto, 2002), the mo- bile robot HELPER (Kosuge et al., 2000) or SAIKA (Konno et al., 1997), etc. The mobility of the mobile

MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Int. J. Appl. Math. Comput. Sci., 2012, Vol. 22, No. 3, 601–616DOI: 10.2478/v10006-012-0046-1

MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILEMANIPULATOR

SALIMA DJEBRANI ∗,∗∗, ABDERRAOUF BENALI ∗∗, FOUDIL ABDESSEMED ∗

∗ Department of ElectronicsUniversity of Batna, Rue Chahid Boukhlouf, Batna 05000, Algeria

e-mail: [email protected]

∗∗ENSI de BourgesPRISME, 10 Boulevard Lahitolle, 18020 Bourges cedex, France

A new approach to control an omnidirectional mobile manipulator is developed. The robot is considered to be an individualagent aimed at performing robotic tasks described in terms of a displacement and a force interaction with the environment.A reactive architecture and impedance control are used to ensure reliable task execution in response to environment stimuli.The mechanical structure of our holonomic mobile manipulator is built of two joint manipulators mounted on a holonomicvehicle. The vehicle is equipped with three driven axles with two spherical orthogonal wheels. Taking into account thedynamical interaction between the base and the manipulator, one can define the dynamics of the mobile manipulator anddesign a nonlinear controller using the input-state linearization method. The control structure of the robot is built in orderto demonstrate the main capabilities regarding navigation and obstacle avoidance. Several simulations were conducted toprove the effectiveness of this approach.

Keywords: holonome mobile manipulators, input state linearization, virtual impedance control, fuzzy logic.

1. Introduction

To date, there have been a lot of research efforts regardingdeveloping mobile mechanisms, which can be categorizedinto three types: vehicles equipped with wheels similarto general (automobile-type) vehicles, with two parallelwheels and one caster wheel, and the ones with omni-directional wheels (Campion et al., 1996). Automobile-type vehicles cannot perform rotation or side-translationalmotion in a narrow space; vehicles with two parallelwheels and one caster mechanism cannot perform side-translational motion either.

The omni-directional mobile robot is a kind of holo-nomic robot. Compared with the more common car like(nonholonomical) mobile robot, the omni-directional onehas the ability to move simultaneously and independentlyin translation and rotation (Pin and Killough, 1994). Mostof the work on motion control of omnidirectional mobilerobots is based mainly on the kinematic model. This isequivalent to assuming that robots are massless bodies andtherefore can ideally respond to the input motion controlcommands, which indeed does not reflect the real situ-ation especially for heavy and fast moving robots. For

this reason, efforts have been made to develop precise dy-namic models to improve robot performance (Williamset al., 2002; Watanabe et al., 1998).

One of the main problems in robotic research isto provide efficient control algorithms in order to allowrobots to execute desired tasks. These tasks are variousand require great mobility and dexterity of the roboticsystem. A mobile manipulator is generally one of thestructures aimed at these applications. It is basically arobotic arm mounted on a moving base and can be usedto perform a variety of tasks that are mostly related tomaterial handling application. The capability of mobilemanipulation is important for some autonomous mobilerobot applications, which need to interact with the en-vironment dynamically. These applications require botha large workspace and a dexterous manipulation capa-bility. Application examples in servicing robotics in-clude the ARMAR robot (Albers et al., 2006), ROBO-NAUT (Ambrose et al., 2004), HERMES (Bischoff andGraefe, 2004), HADALY-2 (Hashimoto, 2002), the mo-bile robot HELPER (Kosuge et al., 2000) or SAIKA(Konno et al., 1997), etc. The mobility of the mobile

Page 2: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

602 S. Djebrani et al.

platform substantially increases the performance capa-bilities of the system. For example, the platform in-creases the size of the manipulator workspace and en-ables the manipulator to position the end-effector for exe-cuting the task efficiently. Because of the kinematic re-dundancy and mobility, the functionality of the mobilemanipulator is increased to a greater extent (Abdessemedet al., 2006; Bayle, 2001; Yamamoto, 1994).

Mobile manipulators are often equipped with wheels.The arrangement of the wheels and their actuation devicedetermine the holonomic or nonholonomic nature of itslocomotion system (Campion et al., 1996), whereas somewheeled mobile manipulators built of an omnidirectionalplatform are holonomic (Khatib et al., 1996). While themobile manipulator provides numerous advantages com-pared with the fixed base manipulator, path planning andcontrol of such a system are challenging problems. First,there is the problem of redundancy and coordination.However, coordination can be performed by using kine-matic or dynamic models. The dynamic model of a mo-bile manipulator is complex and there is a high degree ofcoupling between the platform and the arm. The dynamicsof the mobile platform and the manipulator arm are quitedifferent. The base is heavy and has slow dynamics. Thearm is relatively light and has fast dynamics. Such a sys-tem can provide precise motion of the arm for local opera-tion and retain the versatility and workspace of the mobileplatform. In this paper, our mobile manipulator is holo-nomic. It is built of a two degree manipulator mountedon a holonomic structure equipped with three motorizedaxles with two spherical orthogonal wheels (Mouriouxet al., 2006; Poisson et al., 2001). In this work we aimto control the whole dynamics of such a structure in termsof state space feedback.

Feedback linearization methods can be viewed asways of algebraically transforming a fully or partiallynonlinear dynamic system into a simple linear one. Inthe standard approach to exact input-state linearization,one uses coordinate transformation and static state feed-back such that the closed-loop system, in the defined re-gion, takes a linear canonical form. After the system’s lin-earized form is obtained, the linear control design schemeis employed to achieve stabilization or tracking of a de-sired trajectory (Isidori, 1995; Slotine and Li, 1991). Thisscheme is used in local coordinate linearization with anouter loop aimed at avoiding collisions with obstacles. Asensorial system should detect an obstacle and measure itsdistance to calculate a control action to change the mobilerobot trajectory, thus avoiding any obstacles. Most worksin this area consider motion control of a mobile robotwhile avoiding obstacles (Carelli et al., 1999; Borensteinand Koren, 1991; Khatib, 1986; Hogan, 1985). In orderto unify our approach, we propose to use the impedancecontrol during obstacle avoidance. The control architec-ture combines two loops: a motion control loop and a sec-

ond external impedance control loop. The latter provides amodification of the trajectory of the mobile platform whenan obstacle appears on the trajectory of the mobile ma-nipulator. The main contributions of this paper include:the proposal of a new architecture of the robot, designinga control structure for obstacle avoidance, and determin-ing the corresponding impedance parameters using fuzzylogic.

The paper is organized in as follows. Section 2is aimed to present the robot architecture. Sections 3and 4 present the kinematic and dynamic models of therobot manipulator and the omnidirectional mobile plat-form. The model of the omnidirectional mobile manipu-lator is developed in Section 5. In Section 6, a local coor-dinates linearization controller for the mobile manipulatoris developed. The concept of virtual impedance controlis presented in Section 7. In Section 8, simulation testsare presented to show the performance of the control al-gorithms. Section 9 concludes the paper.

2. Robot structure and architecture

We consider a mobile manipulator depicted in Fig. 8. Itconsists of an omnidirectional mobile platform (Figs. 3and 4) and a two-link manipulator (Fig. 2). The plat-form moves by driving the three wheels. This mechan-ical structure is monitored by using a design of a dis-tributed multi-tasking environment. This environmentoffers multi-thread programming capabilities and inter-process communication message protocols. The designof the mobile manipulator structure must integrate multi-ple capabilities such as navigation, manipulation and in-teraction with the environment. The mobile manipulatorhas to avoid static/dynamic obstacles as well as collabo-rate with other robots or humans. Such behaviors haveto be organized in order to achieve a variety of tasks. Themulti-agent structure offers the appropriate approach. Therobot is autonomous and can communicate with the oth-ers in order to synchronize its response according to therequired task. In our approach the mobile manipulatorrepresents an agent (Djebrani et al., 2010a; Djebrani andAbdessemed, 2009). Its structure is organized as in Fig. 1.

The robot structure is composed mainly of the fol-lowing modules:

• Control mode manager. This module ensures themanagement of the control law selection. Thus, wedefined the generic organization of a multiple layerstructure. Each layer provides a specific controller.By means of this module the robot can select dif-ferent strategies (free navigation, obstacle avoidance,etc.) or alternate the roles when cooperating withother robots.

• Communication module. The objective of this

Page 3: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 603

Fig. 1. Robot architecture.

module is twofold: it permits to communicate withother agents and gives the human operator all the in-formation needed to monitor the state of the robot.

• Sensors module. This module senses the robot andthe environment. It collects all data exchanges withthe robot state module. In our application we con-sidered ultrasonic sensors implemented as shown inFig. 6. Ultrasonic sensors are arranged in front of therobot and two adjacent sensors are at a distance of45 degrees from each other. The maximum range ofeach sensor slightly exceeds 3 m. At a fixed samplingtime the module measures and transmits the neces-sary information about position, velocity, etc. to therobot state module.

• Adaptive fuzzy controller. This module is aimed totune the parameters of the impedance used to controlthe robot displacement. This module is summarizedin Section 7.

• Watchdog module. To ensure the safety of the robot,this module detects all the communication errors dur-ing the robotics tasks.

• Robot state module. This module includes all infor-mation from the sensors module and the communica-tion manager module. It manages data collection andits storage in the controller memory.

• Actuators controller module. This module takescare of sending to the actuators the current desiredvelocities. It provides low-level control of the robotdepending on the chosen mode designated by thecontrol mode manager module.

All the described modules are used to control the robot’sbehavior. In the next section we shall present robot mod-elling in order to develop the control law implementationused in the control mode manager.

Fig. 2. Two-link revolute arm.

3. Robot manipulator modelling

A robotic manipulator with nr degrees of freedom jointscan be modeled as a set of rigid bodies connected in aseries with one end fixed to the ground and the other endfree (Sciavicco and Siciliano, 2000; Spong et al., 1989;Khalil and Kleinfinger, 1986). The bodies are actuatedwith revolute or prismatic joints. A two-link planar RRrobot arm is shown in Fig. 2. The robot arm is restricted tomove in the plane. The robotic arm configuration is givenby the rotational angles qr1 and qr2 . Let us define the robotjoint vector qr = [qr1 , qr2 ]T of dimension nr = 2, and letus define the end-effector location by the planar positionof Or2 in Rr0 : ξr = [xr , yr]T of dimension mr = 2. Therobotic arm KM (Kinematic Model) is

{xr = l1 cos (qr1) + l2 cos (qr1 + qr2),

yr = l1 sin (qr1) + l2 sin (qr1 + qr2).(1)

The dynamic equation of the manipulator using the La-grange formalism is given by

Mr(qr)ωr + Cr1(qr , ωr)ωr = τr, (2)

where the nr × nr “inertia matrix” Mr(qr) is symmetricand positive definite for each qr ∈ R

nr , Cr1(qr, ωr) is theCoriolis/centrifugal matrix. The inputs τri to the systemare the torques applied to each arm. The dynamic equationof the planar robot manipulator is derived by using theEuler–Lagrange method giving

[M

(11)r M

(12)r

M(21)r M

(22)r

][ωr1

ωr2

]

+[

hωr2 h(ωr1 + ωr2)−hωr1 0

] [ωr1

ωr2

]=[

τr1

τr2

],

(3)

Page 4: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

604 S. Djebrani et al.

Fig. 3. ROMNI: omnidirectional robot.

Fig. 4. Absolute frame, robot frame and axle frame.

ωr = [ωr1 , ωr2 ]T = qr = [qr1 , qr2 ]

T ,

τr = [τr1 , τr2 ]T

,

M (11)r = m1l

2c1

+ m2

(l21 + l2c2

+ 2l1lc2 cos (qr2))

+ I1 + I2,

M (12)r = M (21)

r = m2

(l2c2

+ l1lc2 cos (qr2))

+ I2,

M (22)r = m2l

2c2

+ I2,

h = −m2l1lc2 sin (qr2),

where qri denotes the joint angle, mi denotes the massof Link i, li denotes the length of Link i, lci denotes thedistance from the previous joint to the center of mass ofLink i and Ii denotes the moment of inertia of Link i.

4. Omnidirectional mobile robot modelling

This section presents kinematic and dynamic modellingof the ROMNI omnidirectional robot. This robot was de-veloped at the Bourges PRISME laboratory (Mouriouxet al., 2006; Poisson et al., 2001). As a first step to developa robot controller, the equations of robot motion have tobe derived.

4.1. Kinematic modelling. Figure 3 shows the bottomview of the ROMNI robot. This robot has a mechanical

Fig. 5. Axle with longitudinal orthogonal wheels.

Fig. 6. Robot and its ultrasonic perception system.

structure that enables it to change its displacement direc-tion at any moment, without reconfiguring its rolling parts(Mourioux et al., 2006; Poisson et al., 2001). The axleis composed of two orthogonal wheels with a phase ofπ/2 (Figs. 4 and 5). The reader can refer to the worksof Mourioux et al. (2006) and Poisson et al. (2001) formore details on an exact description of this structure. Theposture is defined in Fig. 4, where (O, �x, �y) is the worldcoordinate system, O is the reference point, (O

′, �x

′, �y

′) is

the robot coordinate system, and the point O′

is the centerof the robot.

In order to determine the kinematic model of the plat-form, one can calculate the velocity �VOi of the contactpoint of the wheel with the floor (Oi in Figs. 4 and 5):

�VOi = �VO′ + �Ω ∧−−−→O

′Oi

= x�x + y�y + ϑRi�vi.(4)

If we assume that the wheels do not slip, the relativevelocity of the wheel-to-floor contact point is zero. Thenfor each contact point O1, O2 and O3, we can write

�VOi�vi = −rϕi, ∀i ∈ {1, 2, 3}. (5)

We use the following notation: �ui and �vi are thevectors of longitudinal direction of the i-th axle and itsperpendicular, respectively; Oi is the contact point of the

Page 5: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 605

wheel with the floor; �VOi is the velocity of the point Oi;�VO′ is the velocity of the point O

′; �Ω stands for the angu-

lar velocity of the O′

point; ϕi is the angular velocity ofthe i axle; Ri is the variable distance O

′Oi; ϑ is the angle

between �x and �x′

(it characterizes the absolute orientationof the robot); r is the radius of the sphere; αi is the anglebetween �x

′and �ui, α1 = 0, α2 = 2π/3, α3 = 4π/3;

x, y, ϑ are the kinematic parameters of the motion at thepoint O

′of the platform expressed in the absolute refer-

ence frame linked to the environment (O, �x, �y).First, consider the following three-dimensional vec-

tor describing the robot:

ξp = [x, y, ϑ]T , (6)

where x and y are the coordinates related to the referenceO

′in the world frame. Second, write

ωv = [ωv1 , ωv2 , ωv3 ]T = [ϕ1, ϕ2, ϕ3]T , (7)

where ωv1 , ωv2 and ωv3 are the angular velocities of therobot wheels. From the works of Djebrani et al. (2011;2010b; 2009), Mourioux et al. (2006) and Poisson et al.(2001), the Jacobian J can be obtained, providing a directrelation between global velocities and angular velocitiesof the wheels:

ωv =1rJξp, (8)⎧⎪⎪⎨

⎪⎪⎩x sin(ϑ + α1) − y cos(ϑ + α1) − ϑR1 = rωv1 ,

x sin(ϑ + α2) − y cos(ϑ + α2) − ϑR2 = rωv2 ,

x sin(ϑ + α3) − y cos(ϑ + α3) − ϑR3 = rωv3 ,(9)

where J = AR(ϑ),

A =

⎡⎣ sin α1 − cosα1 − R1

sin α2 − cosα2 − R2

sin α3 − cosα3 − R3

⎤⎦ (10)

and

R(ϑ) =

⎡⎣ cosϑ sin ϑ 0

− sin ϑ cosϑ 00 0 1

⎤⎦ . (11)

For each axle, we set Ri as the distance O′Oi (the vari-

able distance determined by the sphere of the i-th axle incontact with the floor):

Ri

=

⎧⎨⎩

Rimin + 12ΔR if 0 ≤ ϕi < π

2 and π ≤ ϕi < 3π2 ,

Rimax − 12ΔR if π

2 ≤ ϕi < π and 3π2 ≤ ϕi < 2π,

(12)

where ΔR = Rimax −Rimin corresponds to the differenceof the radii between the two truncated spheres of the sameaxle, Rimax and Rimin characterize the configuration of

the wheels under the axle, ϕi is the angular coordinate ofthe i-th axle. Now we are ready to develop the dynamicmodel.

4.2. Dynamic modelling. Let us first determine themotor dynamics. The shaft output torque is determinedby taking into account all forces acting on each wheel.The main force acting on the wheels is the force to over-come the inertia of the base while accelerating. This forceconsists of two components: the first force accelerates thebase laterally while the second accelerates angularly. Dueto the inertia of the base, the force needs to be appliedto accelerate and decelerate the base. This force is exertedby the wheels, which transfer the motor torque to the drivesurface. The required force can be calculated using New-ton’s second law (Spong et al., 1989):

F = Dξp, (13)

where

D =

⎡⎣ mR 0 0

0 mR 00 0 IR

⎤⎦ . (14)

Using Eqn. (8) with J = AR(ϑ), we obtain

ξp = rRT A−1ωv + rRT A−1ωv. (15)

The magnitude of the global forces Fx, Fy and themoment Mt can be written using the base mass mR andthe moment of inertia IR as⎡

⎣ Fx

Fy

Mt

⎤⎦ =

⎡⎣ mR 0 0

0 mR 00 0 IR

⎤⎦⎡⎣ x

y

ϑ

⎤⎦ . (16)

The global forces Fx and Fy can be substituted by thesum of the lateral shaft force components in the x and ydirections, respectively, while the global moment Mt isgiven by the product of the combined local force vectorsand the radius on which they act (Fig. 7):⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

Fx = f1x + f2x + f3x

= −f1 sin (ϑ + α1) − f2 sin (ϑ + α2)− f3 sin (ϑ + α3),

Fy = f1y + f2y + f3y

+ f1 cos (ϑ + α1) + f2 cos (ϑ + α2)+ f3 cos (ϑ + α3),

Mt = f1R1 + f2R2 + f3R3,

(17)

or, in a more compact form,

F =[mRx, mRy, IRϑ

]T= JT [f1, f2, f3]

T. (18)

We can write

[f1, f2, f3]T = J−T

[mRx, mRy, IRϑ

]T, (19)

Page 6: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

606 S. Djebrani et al.

Fig. 7. Dynamic diagram of the three-wheel base.

where fi is the traction force of each wheel. By replacing(15) in (19), we obtain

f = A−T RD[rRT A−1ωv + rRT A−1ωv

]. (20)

The dynamics of each wheel driven by a DC motor can bedescribed as

Imωmi +(

CmCe

Ra+ bm

)ωmi −

Cm

Raτvi

= − r

nmfi, (21)

where Im is the combined moment of inertia of the motor,gear train and wheel referred to the motor shaft, ωmi is therotational speed of the motor shaft, Ra is the armature re-sistance, Ce is the Electro-Motive Force (EMF) constant,Cm is the motor torque constant, bm is the viscous fric-tion coefficient which is a combination of the motor andgear trains, nm is the gear ratio, τvi is the armature voltageapplied (specAmotor, 2011).

In matrix form we have to consider the relationωmi = nmωvi between the motor and robot rotationalspeeds:

f = −Pωv − Qωv + Evτv, (22)

where

P =n2

m

rIm

⎡⎣ 1 0 0

0 1 00 0 1

⎤⎦ ,

Q =n2

m

r(CmCe

Ra+ bm)

⎡⎣ 1 0 0

0 1 00 0 1

⎤⎦ ,

Ev =nm

r

Cm

Ra

⎡⎣ 1 0 0

0 1 00 0 1

⎤⎦ .

Fig. 8. Planar mobile manipulator with an omnidirectional plat-form.

By replacing (20) in (22), one can write the dynami-cal equation of the mobile robot as

Mv1(ξp)ωv + Cv1(ξp, ωv)ωv = Evτv, (23)

where

Mv1(ξp) = (rA−T RDRT A−1 + P ),

Cv1(ξp, ωv) = (rA−T RDRT A−1 + Q)

are the inertia and coupling matrices, respectively.

5. Omnidirectional mobile manipulatormodelling

Consider the mobile manipulator depicted in Fig. 8. Itconsists of an omnidirectional mobile platform and a two-link manipulator. The platform moves by driving the threewheels. The manipulator is constructed as a two-link pla-nar arm with motors attached to the joints.

5.1. Kinematic modelling. We reduce the location tothe planar position of the end-effector in the horizontalplane. The location of the platform is given by a vectorξp = [x, y, ϑ]T which defines the position and the ori-entation of the platform in the frame R. The position ofthe point Or2 in the frame R is thus given by a vectorξ = [x1, y1]T . The coordinates of Or0 in R′

are givenby [a1, a2]T (see Fig. 8). According to (1), the KM of this

Page 7: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 607

mobile manipulator is (Bayle, 2001; Campion et al., 1996)

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

x1 =[a1 + l1 cos (qr1) + l2 cos (qr1 + qr2)

]cos (ϑ)

−[a2 + l1 sin (qr1) + l2 sin (qr1 + qr2)

]sin (ϑ) + x,

y1 =[a1 + l1 cos (qr1) + l2 cos (qr1 + qr2)

]sin (ϑ)

+[a2 + l1 sin (qr1) + l2 sin (qr1 + qr2)

]cos (ϑ) + y.

(24)From (24), we get the ILKM (Instantaneous LocationKinematic Model):

ξ =[

x1

y1

]= J(qr1 , qr2 , ϑ)

⎡⎢⎢⎢⎢⎣

qr1

qr2

xy

ϑ

⎤⎥⎥⎥⎥⎦ , (25)

J(qr1 , qr2 , ϑ)

=[ −l1S1ϑ − l2S12ϑ −l2S12ϑ 1 0

l1C1ϑ + l2C12ϑ l2C12ϑ 0 1

− a1Sϑ − a2Cϑ − l1S1ϑ − l2S12ϑ

+ a1Cϑ − a2Sϑ + l1C1ϑ + l2C12ϑ

]

with the following intermediate variables:

C1ϑ = cos(qr1 + ϑ),S1ϑ = sin(qr1 + ϑ),

C12ϑ = cos(qr1 + qr2 + ϑ),S12ϑ = sin(qr1 + qr2 + ϑ),

Cϑ = cos(ϑ),Sϑ = sin(ϑ).

5.2. Dynamic modelling. A mobile manipulator dy-namic equation can be obtained using the Lagrangian ap-proach (Yamamoto, 1994; Liu and Lewis, 1990). It is inthe form

M(q)ω + C(q, ω) = τ, (26)

where q = [qr, ξp]T , ω = [ωr, ωv]

T , ω = [ωr, ωv]T , τ =

[τr, Evτv]T .

The dynamic model of the manipulator (26), canbe expressed in terms of the dynamic interaction andcoupling. The motion equation of the manipulator sub-ject to the vehicle motion is given in the following form

(Djebrani et al., 2011):⎧⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎩

Mr(qr)ωr + Cr1(qr, ωr)ωr + Cr2(qr, ωr, ωv)= τr − Rr(qr, ξp)ωv,

Cr(qr, ωr, ωv)= Cr1(qr, ωr)ωr + Cr2(qr, ωr, ωv),

(27)

where Mr and Cr1 are the inertia matrix and the Cori-olis and centrifugal terms of the manipulator given byEqn. (3), Cr2 denotes the Coriolis and centrifugal termscaused by the angular motion of the platform, τr is the in-put torque/force for the manipulator and Rr is the inertiamatrix which represents the effect of the vehicle dynamicson the manipulator. We note that Cr2 and Rr are the termsadded to the equation of motion of the manipulator. Theyrepresent the dynamic interaction caused by the motion ofthe mobile platform.

The motion equation of the platform retains the fol-lowing form:⎧⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎩

Mv1(ξp)ωv + Cv1(ξp, ωv)ωv + Cv2(qr, ξp, ωr, ωv)= Evτv − Mv2(qr, ξp)ωv − Rv(qr, ξp)ωr,

Cv(qr, ξp, ωr, ωv)= Cv1 (ξp, ωv)ωv + Cv2 (qr, ξp, ωr, ωv),

Mv(qr, ξp) = Mv1(ξp) + Mv2(qr, ξp),(28)

where Mv1 and Cv1 are the mass inertia matrix and the ve-locity dependent terms of the platform which are definedin Eqn. (23), Mv2 and Cv2 represent the inertial term aswell as the Coriolis and centrifugal terms due to the ma-nipulator presence, Evτv is the input torque to the vehicle,Ev is a constant matrix and Rv represents the inertia ma-trix which reflects the dynamic effect of the arm motionon the vehicle.

The dynamic model (Eqn. (26)) of the mobile ma-nipulator is described by[

Mr Rr

Rv Mv

] [ωr

ωv

]+[

Cr

Cv

]=[

τr

Evτv

].

(29)In order to write a global control law, let us consider

X = [x1, x2, x3, x4, x5, x6, x7, x8, x9, x10]T

= [qr1 , qr2 , x, y, ϑ, ωr1 , ωr2, ωv1 , ωv2 , ωv3 ]T

as the state vector of the mobile manipulator. The statespace equation is then given by (Djebrani et al., 2011;2010b)

X = f(X) + g(X)τ, (30)

where f(X) and g(X) are smooth vector fields on Rn:

f(X) =

⎡⎣ ωr

rJ(ξp)−1ωv

−M−1C

⎤⎦ , (31)

Page 8: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

608 S. Djebrani et al.

f(X) =

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

f1(X) = x6

f2(X) = x7

f3(X) = 23rx8 sin x5

+ r(

1√3

cosx5 − 13 sinx5

)x9

+ r(− 1√

3cosx5 − 1

3 sin x5

)x10,

f4(X) = − 23rx8 cosx5

+ r(

1√3

sinx5 + 13 cosx5

)x9

+ r(− 1√

3sin x5 + 1

3 cosx5

)x10,

f5(X) = −Hrx8 − Hrx9 − Hrx10,

[f6(X), f7(X), f8(X), f9(X), f10(X)]T

= −M−1C,(32)

g(X) =[

05×5

M−1

]. (33)

From Eqns. (32) and (33) it is clear that f(X) andg(X) depend only on the state variable X . The parameterH is a constant. In the next section we will propose a newfeedback control law of our mobile manipulator.

6. Local coordinate linearization

We consider the nonlinear multivariable system as de-scribed in state space form by the following equations:

⎧⎨⎩ X = f(X) +

5∑j=1

gj(X)τj ,

yj = hj(X), j = 1, 2, 3, 4, 5.

(34)

According to Isidori (1995) we can recall the conditionsfor the solvability of a MIMO state space exact lineariza-tion problem as follows.

Proposition 1. Suppose the matrix g(Xo) has rank m.Then, the state space exact linearization problem is solv-able if and only if

(i) for each 0 ≤ i ≤ n − 1, the distribution

Gi = span{adkfgj : 0 ≤ k ≤ i, 1 ≤ j ≤ m}

has constant dimension near Xo (equilibrium point);

(ii) the distribution Gn−1 has dimension n;

(iii) for each 0 ≤ i ≤ n − 2, the distribution Gi is invo-lutive.

Theorem 1. The change of variables allows linearization

of the system (30):

⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

x1 = z1,x2 = z3,x3 = z5,x4 = z7,x5 = z9,x6 = z2,x7 = z4,

x8 =1rz6 sin z9 − 1

rz8 cos z9 − 1

rR1z10,

x9 =1r

(√3

2cos z9 − 1

2sin z9

)z6,

+1r

(√3

2sin z9 +

12

cos z9

)z8 − 1

rR2z10,

x10 =1r

(−√

32

cos z9 − 12

sin z9

)z6,

+1r

(−√

32

sin z9 +12

cos z9

)z8 − 1

rR3z10.

(35)

Proof. In our case we have to find five functions h1(X),h2(X), h3(X), h4(X), h5(X) such that

Lgj Lkfhj(X) = 0 (36)

for all 0 ≤ k ≤ rj − 2, 1 ≤ j ≤ m. The relative degreesrj have to fulfill the condition r1 + r2 + r3 + r4 + r5 = n.In our case the distribution Go = span{g1, g2, g3, g4, g5}has dimension m = 5. Moreover, since [gi, gj] = 0 for alli, j ∈ {1, 2, 3, 4, 5}, we see that the distribution in ques-tion is involutive. �

The distribution has maximal dimension n = 10,which is the dimension of the state vector. We see thatdim(Gi) = 10 for i ∈ [1, 9] and Gj for j ∈ [1, 8] are triv-ially involutive. The system satisfies the hypotheses of theproposition. In order to solve the full state linearizationproblem, we have to find functions hj(x) that check thecondition (36). It is easy to conclude that we must have

∂hj

∂x6=

∂hj

∂x7=

∂hj

∂x8=

∂hj

∂x9=

∂hj

∂x10= 0

for j = 1, 2, 3, 4, 5. One can choose h1(X) = x1,h2(X) = x2, h3(X) = x3, h4(X) = x4, h5(X) = x5.Let us analyse the relative degree of the system. The sys-tem has a vector relative degree {r1, r2, r3, r4, r5}. Onecan check that Lg1h1(X) = Lg2h2(X) = Lg3h3(X) =Lg4h4(X) = Lg5h5(X) = 0.

The relative degrees are r1 = r2 = r3 = r4 = r5 =2. Then we can check that the following matrix is not

Page 9: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 609

singular:

α(X) =

⎡⎢⎣

Lg1Lfh1(X) . . . Lg5Lfh1(X)...

. . ....

Lg1Lfh5(X) . . . Lg5Lfh5(X)

⎤⎥⎦ .

(37)Then the smooth functions that define the local change ofvariables that linearize the system are⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨

⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

z1 = h1(X) = x1,z2 = Lfh1(X),z3 = h2(X) = x2,z4 = Lfh2(X),z5 = h3(X) = x3,z6 = Lfh3(X),z7 = h4(X) = x4,z8 = Lfh4(X),z9 = h5(X) = x5,z10 = Lfh5(X),

(38)

where⎧⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎩

Lfh1(X) = x6,Lfh2(X) = x7,

Lfh3(X) =23rx8 sin x5

+ r

(1√3

cosx5 − 13

sin x5

)x9

+ r

(− 1√

3cosx5 − 1

3sin x5

)x10,

Lfh4(X) = −23rx8 cosx5

+ r

(1√3

sin x5 +13

cosx5

)x9

+ r

(− 1√

3sinx5 +

13

cosx5

)x10,

Lfh5(X) = −Hrx8 − Hrx9 − Hrx10.

The control law τ is written as follows:

τ =

⎡⎢⎢⎢⎢⎣

τ1

τ2

τ3

τ4

τ5

⎤⎥⎥⎥⎥⎦ = α−1(X)

⎛⎜⎜⎜⎜⎝−β(X) +

⎡⎢⎢⎢⎢⎣

v1

v2

v3

v4

v5

⎤⎥⎥⎥⎥⎦

⎞⎟⎟⎟⎟⎠ , (39)

where

β(X) = L2fhj(X), j = 1, 2, 3, 4, 5, (40)

and ⎡⎢⎢⎢⎢⎣

z1

z3

z5

z7

z9

⎤⎥⎥⎥⎥⎦ =

⎡⎢⎢⎢⎢⎣

z2

z4

z6

z8

z10

⎤⎥⎥⎥⎥⎦ , (41)

⎡⎢⎢⎢⎢⎣

z2

z4

z6

z8

z10

⎤⎥⎥⎥⎥⎦ =

⎡⎢⎢⎢⎢⎣

v1

v2

v3

v4

v5

⎤⎥⎥⎥⎥⎦ , (42)

where v is a new input to be determined. We obtain a sim-ple relationship between the output q and the new input v:

v = q = q∗ + Kder˙q + Kproq, (43)

where q = q∗−q, Kder and Kpro are positive definite ma-trices. After linearization, one can consider an outer loopimpedance regulation which can be used to drive the robotbetween obstacles or to collaborate with other robots.

7. Virtual impedance control strategy

The control objective requires multiple goals, such asreaching targets, or avoiding static and dynamic obsta-cles. In order to solve the above-mentioned problems, wepropose a control strategy based on a dynamic structureof the robot and the impedance control technique. Thismodel was proposed by Arai and Ota (1996) in order togenerate only forces. In our work we will use that con-cept to generate forces in a low level outer loop. It allowsus to modify the robot trajectory in terms of the imposedimpedance Zd. This technique determines the motion ofa robot by means of a desired trajectory q∗ modified by asum of different forces (Goldenberg, 1988; Hogan, 1985).The closed loop dynamical equation for our robot must beexpressed as

Md(q∗ − q) + Bd(q∗ − q) + Kd(q∗ − q)= −Fext, (44)

where Fext =∑

i Fobsirepresents all the forces ex-

erted on the robot, Fobsiis the force which avoids the

i-th obstacle. Zd = Mdp2 + Bdp + Kd is the desired

impedance, Md, Bd, Kd are diagonal positive definite ma-trices of desired mass, damping and spring impedance ef-fects, p ≡ d/dt. Equation (44) can be expressed in termsof the desired impedance and the trajectory tracking as

ed = (q∗ − q) +Fext

Zd, (45)

where ed is a new auxiliary signal error ed = q∗d − q. Ifed → 0, then Eqn. (44) is realized. The new desired tra-jectory q∗d can be seen as the sum of the desired trajectoryq∗ and the force correction Fext/Zd.

The control law given by Eqn. (39) is then modifiedto take into account the presence of obstacles. So the newdesired trajectory is given by q∗d(t) = q∗(t) + Fext/Zd

and the v signal from Eqn. (43) by

v = q∗d + Kder(q∗d − q) + Kpro(q∗d − q). (46)

Page 10: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

610 S. Djebrani et al.

The magnitude Fobs is obtained as (Carelli et al., 1999;Borenstein and Koren, 1991)

Fobs = aFobs − bFobs(dobs(t) − dmin)2. (47)

where aFobs and bFobs are positive constants satisfying thecondition

aFobs = bFobs(dmax − dmin)2, (48)

dmax being the maximum distance between the robotand the detected obstacle that causes a nonzero repulsiveforce, dmin represents the minimum distance acceptedbetween the robot and the obstacle, and dobs(t) is thedistance measured between the robot and the obstacledmin < dobs(t) < dmax (see Fig. 9). Note that the bound

Fig. 9. Repulsive force caused by an obstacle.

dmax characterizes the repulsion zone, which is the regioninside which the repulsion force has a non-zero value.

As mentioned in Section 2, we introduce an adaptivefuzzy algorithm as an intelligent control solution to selectthe desired behavior Zd (Abdessemed et al., 2004; Ab-dessemed and Benmahammed, 2001). Figure 10 gives aschematic block diagram of this architecture. In this fig-ure one can notice that the inputs to the fuzzy controllerare the generated virtual forces (Fobs) and measured dis-tances named d4 and d5. These distances d4 and d5 con-cern the distances measured with the lateral sensors. Fig-ure 11 shows the impedance fuzzy sets associated withthe generated forces and Fig. 12 presents the member-ship functions of d4 and d5. Each membership functionis a triangular-shaped membership function with the col-lection of linguistic values: {VL,L,M ,H ,VH }. Themeaning of each linguistic value should be clear from itsmnemonics; for example, VL stands for verylow , L forlow , M for middle , H for high and VH for veryhigh .

Let us denote the fuzzy block as a three input-singleoutput controller. We construct five numerical values forthe desired behavior Zd, {VS ,S ,M ,B ,VB}. The mean-ing of each linguistic value, VS stands for verysmall , Sfor small , M for middle , B for big and VB for verybig .

Fig. 10. Block diagram of the controlled system.

Fig. 11. Membership functions of input Fobs.

Consequently, simple robot impedance generationcan be described as the following linguistic rules:

Rule 1 : IF Fobs is VL and d4 is VH and d5 is VHTHEN Zd1 is VS

Rule 2 : IF Fobs is L and d4 is VH and d5 is VHTHEN Zd2 is S

Rule 3 : IF Fobs is M and d4 is VH and d5 is VHTHEN Zd3 is M

Rule 4 : IF Fobs is H and d4 is VL and d5 is VLTHEN Zd4 is B

Rule 5 : etc.(49)

such that Fobs, d4 and d5 are the inputs and Zd is theoutput. Based on the above rules, the Sugeno defuzzi-fier strategy is chosen as described by Sugeno and nishida(1985) in order to derive Zd as the output. We defuzzifythe membership function using min-operation implica-tion, and we have

Zd =

nrules∑l=1

μlZdl

nrules∑l=1

μl

, (50)

l = 1, 2, . . . , nrules, nrules being the number of rules, Zdl

Fig. 12. Membership functions of inputs d4 and d5.

Page 11: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 611

the rule’s consequent of the l-th rule whereas μl is thecorresponding degree of fulfillment for the l-th rule.

8. Simulation results

Our simulations were realized on a model of the omni-directional mobile manipulator. Its description and mod-elling were presented in Section 5 with a1 = a2 = 0. Allthe simulations experiments were carried out by consid-ering a set of physical parameters for the dynamic modelof the omnidirectional mobile manipulator given by themass link 1 m1 = 10 kg, the mass link 2 m2 = 5 kg, theinertia link 1 I1 = 0.05 kg · m2, the inertia link 2 I2 =0.025 kg · m2, the length link l1 = l2 = 0.5 m, the basemass mR = 20 kg, the radius of the platform R = 0.3 m,the moment of inertia of the platform IR = 0.9 kg·m2, themoment of inertia of the motor Im = 1.380e − 5 kg.m2,the armature resistance Ra = 0.317 Ω, the viscous fric-tion coefficient bm = 0.004 N ·m, the electromotive forceconstant Ce = 3.02e− 2 V · s/rad, the motor torque con-stant Cm = 3.02e − 2 N · m/A, the radius of the spherer = 0.03 m, Rimax = 0.2 m and Rimin = 0.13 m.

The simulation results are shown in Figs. 13–17, andindicate the successful control operation for the input tra-jectories imposed for the base from t0 = 0: x∗(t) =0.05 sin(1.6t + 0.2) + 0.09 sin(2t + 0.15) and y∗(t) =0.08 sin(2.6t + 0.02) + 0.02 sin(1.2t + 0.35), the articu-

lar movement imposed for the arm is q∗r =[q∗r1

, q∗r2

]T =[0.1 sin(2t + 0.1), 0.2 cos(t + 0.1)]T . Based on the eval-uation method of the obstacles configuration from the in-formation of the sensors, the mobile manipulator succeedsto reach the goal position in an environment cluttered withobstacles. The input trajectories imposed for the base are[x∗(t), y∗(t), ϑ∗(t)]T = [0.1t, 0.1t, π/4]T , the articular

movement imposed for the arm is q∗r =[q∗r1

, q∗r2

]T =[π/2,−π/2]T . Figures 18–22 illustrate the navigation ob-stacle avoidance strategy.

9. Conclusion

In this article we developed a new approach to control anomnidirectional mobile manipulator. Nonlinear equationsof motion for the robot were derived including a kinematicmodel and a dynamic model. Based on these models,nonlinear control design for the robot was studied usingthe input-state linearization method. The robot model waslinearized to obtain a linear model, and a linear controllerwas used to achieve tracking control of the robot position.The use of impedance control as an outer loop allows us tounify the control structure in the main case of robot inter-action with the environment. Furthermore, the impedanceadaptation allows us to overcome instability problems interms of trajectory following.

The simulation results showed good behavior in the

presence of obstacles for different values of the desiredimpedance. The perspectives of this work concern first thegeneralization of this process to add more functionalitiessuch as physical cooperation with the humans. Impedanceadaptation can give more flexibility in system control.Second, this work can be extended to the case of remoteinteraction with an operator. This interaction can givetheir the feeling of real experiment conditions, such ashaptic feedbacks. All these tools must be integrated.

Fig. 13. Desired and measured x-trajectories, velocities of theplatform.

Fig. 14. Desired and measured y-trajectories, velocities of theplatform.

ReferencesAbdessemed, F. and Benmahammed, K. (2001). A two-layer

robot controller design using evolutionnary algorithms,Journal of Intelligent and Robotic System 30(1): 73–94.

Abdessemed, F., Benmahammed, K. and Monacelli, E. (2004).A fuzzy-based reactive controller for a non-holonomic mo-bile robot, Journal of Robotics and Autonomous Systems47(1): 31–46.

Page 12: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

612 S. Djebrani et al.

Fig. 15. Angular velocities ωv1 , ωv2 and ωv3 .

Fig. 16. Desired and measured qr1 angular trajectories, veloci-ties of the arm.

Abdessemed, F., Benmahammed, K. and Monacelli, E. (2006).A learning paradigm for motion control of mobile manip-ulators, International Journal of Applied Mathematics andComputer Science 16(4): 475–484.

Albers, A., Brudniok, S., Ottnad, J., Sauter, C. and Sed-chaicharn, K. (2006). Upper body of a new humanoidrobot: The design of ARMAR 3, 6th IEEE-RAS Inter-national Conference on Humanoid Robots, Genova, Italy,pp. 308–313.

Ambrose, R.O., Savely, R.T., Goza, S.M., Strawser, P., Diftler,M.A., Spain, I., Radford, N. and Martin, L. (2004). Mobilemanipulation using NASA’s Robonaut, Proceedings of theIEEE International Conference on Robotics and Automa-tion, ICRA’2004, New Orleans, LA, USA, Vol. 2, 2104–2109.

Arai, T. and Ota, J. (1996). Motion planning of multiple mobilerobots using virtual impedance, Journal of Robotics andMechatronics 8(1): 67–74.

Fig. 17. Desired and measured qr2 angular trajectories, veloci-ties of the arm.

Fig. 18. Robot motion with a cluttered obstacle environment.

Bayle, B. (2001). Modelisation et commande cinematiquedes manipulateurs mobiles a roues, Ph.D. thesis, LAAS-CNRS, Toulouse University, Toulouse .

Bischoff, R. and Graefe, V. (2004). Hermes: A versatile personalassistant robot, Proceedings of the IEEE 92(11): 1759–1779.

Borenstein, J. and Koren, Y. (1991). The vector field histogram-fast obstacle avoidance for mobile robots, IEEE Journal ofRobotics and Automation 7(3): 278–288.

Campion, G., Bastin, G. and D’Andrea-Novel, B. (1996). Struc-tural proprieties and classification of kinematic and dy-namic models of wheeled mobile robots, IEEE Transac-tions on Robotics and Automation 12(1): 47–62.

Carelli, R., Secchi, H. and Mut, V. (1999). Algorithms for sta-ble control of mobile robots with obstacle avoidance, LatinAmerican Applied Research 29(3/4): 191–196.

Djebrani, S. and Abdessemed, F. (2009). Multi-agent proto-typing for a cooperative carrying task, IEEE International

Page 13: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 613

Fig. 19. Desired and measured x-trajectories, velocities of theplatform.

Fig. 20. Desired and measured y-trajectories, velocities of theplatform.

Conference on Robotics and Biomimetics, ROBIO’2009,Guilin, Guangxi, China, pp. 1421–1426.

Djebrani, S., Benali, A. and Abdessemed, F. (2009). Force-position control of a holonomic mobile manipulator,12th International Conference on Climbing and WalkingRobots and the Support Technologies for Mobile Machines,CLAWAR’2009, Istanbul, Turkey, pp. 1023–1030.

Djebrani, S., Abdessemed, F. and Benali, A. (2010a). A multi-agent strategy for a simple cooperative behavior, Interna-tional Journal of Information Acquisition 7(4): 331–345.

Djebrani, S., Benali, A. and Poisson, G. (2010b). Input-state lin-earisation of an omni-directional mobile robot, IEEE Inter-national Symposion on Industrial Electronics, ISIE’2010,Bary, Italy, pp. 1889–1894.

Djebrani, S., Benali, A. and Abdessemed, F. (2011). Modellingand feedback control of an omni-directional mobile manip-ulator, IEEE Conference on Automation Science and Engi-neering, CASE’2011, Trieste, Italy, pp. 785–791.

Fig. 21. Angular velocities ωv1 , ωv2 and ωv3 .

Fig. 22. Variation of impedance Zd.

Goldenberg, A. A. (1988). Implementation of force andimpedance control in robot manipulators, Proceedings ofthe 27th IEEE International Conference on Decision andControl, Philadelphia, PA, USA, Vol. 3, pp. 1626–1632.

Hashimoto, S. (2002). Humanoid robots in Waseda University:Hadalay-2 and Wabian, Journal of Autonomous Robots12(1): 25–38.

Hogan, N. (1985). Impedance control: An approach to ma-nipulation, I: Theory, II: Implementation, III: Applica-tions, ASME Journal of Dynamic Systems, Measurementand Control 107(1): 1–24.

Isidori, A. (1995). Nonlinear Control Systems, 3rd Edn.,Springer-Verlag, New York, NY.

Khalil, W. and Kleinfinger, J. (1986). A new geometric nota-tion for open and closed loop robots, Proceedings of theIEEE International Conference on Robotics and Automa-tion, ICRA’86, San Francisco, CA, USA, Vol. 3, pp. 1174–1180.

Page 14: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

614 S. Djebrani et al.

Khatib, O. (1986). Real-time obstacle avoidance for manipula-tors and mobile robots, International Journal of RoboticsResearch 5(1): 90–98.

Khatib, O., Yokoi, K., Chang, K., Ruspini, D., Holmberg, R. andCasal, A. (1996). Coordination and decentralized cooper-ation of multiple mobile manipulators, Journal of RoboticSystems 13(11): 755–764.

Konno, A., Nagashima, K., Furukawa, R., Nishiwaki, K., Noda,T., Inaba, M. and Inoue, H. (1997). Development of ahumanoid robot Saika, Proceedings of the IEEE/RSJ In-ternational Conference on Intelligent Robots and Systems,IROS’97, Grenoble, France, pp. 805–810.

Kosuge, K., Sato, M. and Kazamura, N. (2000). Mobile robothelper, Proceedings of the IEEE International Conferenceon Robotics and Automation, ICRA’00, San Francisco, CA,USA, pp. 583–588.

Liu, K. and Lewis, F.L. (1990). Decentralized continuous ro-bust controller for mobile robots, Proceedings of the IEEEInternational Conference on Robotics and Automation,ICRA’90, Cincinnati, OH, USA, Vol. 3, pp. 1822–1827.

Mourioux, G., Novales, C., Poisson, G. and Vieyres, P. (2006).Omni-directional robot with spherical orthogonal wheels:Concepts and analyses, Proceedings of the IEEE Interna-tional Conference on Robotics and Automation, ICRA’06,Orlando, FL, USA, pp. 3374–3379.

Pin, F.G. and Killough, S.M. (1994). A new family of omni-directional and holonomic wheeled platforms for mobilerobots, IEEE Transactions on Robotics and Automation10(4): 480–489.

Poisson, G., Parmantier, Y. and Novales, C. (2001).Modelisation cinematique d’unrobot mobile omnidirec-tionnel a roues spheriques, XVieme Congres Francais deMecanique, Nancy, France, pp. 3–7.

Sciavicco, L. and Siciliano, B. (2000). Modelling and Controlof Robots Manipulators, 2nd Edn., Advanced Textbooksin Control and Signal Processing Series, Springer-Verlag,London.

Slotine, J. J. and Li, W. (1991). Applied Nonlinear Control,Prentice-Hall, Upper Saddle River, NJ.

specAmotor (2011). Re-40-148867: Electric motor datasheet,http://www.specamotor.com/pdf/datasheet_RE-40-148867_en.pdf.

Spong, M.W., Hutchinson, S. and Vidyasagar, M. (1989). RobotDynamics and Control, John Wiley, New York, NY.

Sugeno, M. and Nishida, M. (1985). Fuzzy control of a modelcar, Fuzzy Sets and Systems 16(2): 103–113.

Watanabe, K., Shiraishi, Y., Tzafestas, S.G., Tang, J. andFukuda, T. (1998). Feedback control of an omnidirectionalautonomous platform for mobile service robots, Journal ofIntelligent and Robotic Systems 22(3–4): 315–330.

Williams, R.L., Carter, B.E., Gallina, P. and Rosati, G. (2002).Dynamic model with slip for wheeled omnidirectionalrobots, IEEE Transactions on Robotics and Automation18(3): 285–293.

Yamamoto, Y. (1994). Control and Coordination of Locomo-tion and Manipulation of a Wheeled Mobile Manipulator,Ph.D. thesis, University of Pennsylvania, Philadelphia, PA.

Salima Djebrani is currently a lecturer of electrical engineering at theUniversity of Batna, Algeria. She has received a B.Sc. degree in electri-cal engineering (industrial control) and an M.Sc. degree, both from theUniversity of Batna, in 1997 and 2002, respectively. She is currently aPh.D. student in robotics. She has worked for two years at the schoolof ENSI de Bourges in France as part of a cotutelle Ph.D. Her researchinterests include robotics, multi-agent systems, intelligent systems andcontrol.

Abderraouf Benali is currently an associate professor with the Depart-ment of Electrical Engineering and the PRISME laboratory at Bourges,France. He received his diploma in electrical engineering from the Tech-nical University of Algiers in 1988, and the M.Sc. and Ph.D. degreesin control and robotics from the University of Paris VI, France, in 1991and 1997, respectively. From 1997 to 1999 he was a research assistantat the Robotic Laboratory of Paris. In 2000, he joined ENSI at Bourges,France. He is mainly interested in haptic interface control, sensor-basedrobot motion planning, and hybrid control systems.

Foudil Abdessemed is an associate professor at the University of Batna,Algeria. He had worked as an academic member for 2 years in theRobotic Laboratory of Paris in France, where he finished his Ph.D. Hisqualifications include a B.Sc., an M.Sc., and a Ph.D. in electrical engi-neering with honors. Through 16 years of teaching and research, he hasgained in-depth knowledge of many scientific subjects and experience.He has been involved in many scientific and research projects and hasdirected some others. Work in the field of robotics has allowed him todevelop skills in the areas of modern control, electronics, evolutionaryalgorithms, network, computer, communications, and robotics.

Appendix

The motion equation (27) gives

[M

(11)r M

(12)r

M(21)r M

(22)r

][ωr1

ωr2

]

+

[C

(11)r1 C

(12)r1

C(21)r1 C

(22)r1

][ωr1

ωr2

]+

[C

(1)r2

C(2)r2

]

=[

τr1

τr2

]−[

R(11)r R

(12)r R

(13)r

R(21)r R

(22)r R

(23)r

]⎡⎣ ωv1

ωv2

ωv3

⎤⎦ ,

(51)

where

C(11)r1

= −m2l1lc2 sin(qr2)ωr2 ,

C(12)r1

= −m2l1lc2 sin(qr2) (ωr1 + ωr2) ,

C(21)r1

= +m2l1lc2 sin(qr2)ωr1 ,

C(22)r1

= 0,

Page 15: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

Modelling and control of an omnidirectional mobile manipulator 615

C(1)r2

= (−2I2l1l2 sin(qr2))ωr2ωv3 ,

C(2)r2

= (2I2l1l2 sin(qr2)) ωr1ωv3 + (I2l1l2 sin(qr2)) ω2v3

,

R(11)r = [−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ)] I2

− I1l1 sin(qr1 + ϑ),

R(12)r = [+l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ)] I2

+ I1l1 cos(qr1 + ϑ),

R(13)r =

[(−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ))2

+ (l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ))2

+2] I2 + I1

(l21 + 2

),

R(21)r = −I2l2 sin(qr1 + qr2 + ϑ),

R(22)r = +I2l2 cos(qr1 + qr2 + ϑ),

R(23)r = I2

[l1l2 cos(qr2) + l22 + 2

].

The motion equation (28) yield⎡⎢⎣ M

(11)v1 M

(12)v1 M

(13)v1

M(21)v1 M

(22)v1 M

(23)v1

M(31)v1 M

(32)v1 M

(33)v1

⎤⎥⎦⎡⎣ ωv1

ωv2

ωv3

⎤⎦

+

⎡⎢⎣ C

(11)v1 C

(12)v1 C

(13)v1

C(21)v1 C

(22)v1 C

(23)v1

C(31)v1 C

(32)v1 C

(33)v1

⎤⎥⎦⎡⎣ ωv1

ωv2

ωv3

⎤⎦+

⎡⎢⎣ C

(1)v2

C(2)v2

C(3)v2

⎤⎥⎦

=

⎡⎢⎣ E

(11)v E

(12)v E

(13)v

E(21)v E

(22)v E

(23)v

E(31)v E

(32)v E

(33)v

⎤⎥⎦⎡⎣ τv1

τv2

τv3

⎤⎦

⎡⎢⎣ M

(11)v2 M

(12)v2 M

(13)v2

M(21)v2 M

(22)v2 M

(23)v2

M(31)v2 M

(32)v2 M

(33)v2

⎤⎥⎦⎡⎣ ωv1

ωv2

ωv3

⎤⎦

⎡⎢⎣ R

(11)v R

(12)v

R(21)v R

(22)v

R(31)v R

(32)v

⎤⎥⎦[ ωr1

ωr2

],

(52)

where

M (11)v1

= M (22)v1

= M (33)v1

= 4rIR +4 mR r

9

+Im n2

m

r,

M (12)v1

= M (13)v1

= M (21)v1

= M (23)v1

= M (31)v1

= M (32)v1

= 4rIR − 2 mR r

9,

C(11)v1

= C(22)v1

= C(33)v1

=CmCe n2

m

r Ra+

bm n2m

r,

C(12)v1

= C(23)v1

= C(31)v1

=−2rmRϑ

3√

3,

C(13)v1

= C(21)v1

= C(32)v1

=2rmRϑ

3√

3,

C(1)v2

= −2I1l1 cos(qr1 + ϑ)ωr1ωv3 ,

− 2I2

[l2 cos(qr1 + qr2 + ϑ)

+ l1 cos(qr1 + ϑ)]ωr1ωv3

− 2I2l2 cos(qr1 + qr2 + ϑ)ωr2ωv3

− I1l1 cos(qr1 + ϑ)ω2r1

− I2

[l2 cos(qr1 + qr2 + ϑ)

+ l1 cos(qr1 + ϑ)]

ω2r1

− I2l2 cos(qr1 + qr2 + ϑ)ωr1ωr2 − I2l2 cos(qr1 + qr2 + ϑ)

ωr2ωr1 − I2l2 cos(qr1 + qr2 + ϑ)ω2r2

,

C(2)v2

= −2I1l1 sin(qr1 + ϑ)ωr1ωv3

− 2I2

[l2 sin(qr1 + qr2 + ϑ)

+ l1 sin(qr1 + ϑ)]ωr1ωv3

− 2I2l2 sin(qr1 + qr2 + ϑ)ωr2ωv3

− I1l1 sin(qr1 + ϑ)ω2r1

− I2

[l2 sin(qr1 + qr2 + ϑ)

+ l1 sin(qr1 + ϑ)]ω2

r1

− I2l2 sin(qr1 + qr2 + ϑ)ωr1ωr2

− I2l2 sin(qr1 + qr2 + ϑ)ωr2ωr1

− I2l2 sin(qr1 + qr2 + ϑ)ω2r2

,

C(3)v2

= −2I2l1l2 sin(qr2)ωr2ωv3

− I2l1l2 sin(qr2)ωr1ωr2

− I2l1l2 sin(qr2)ωr2ωr1

− I2l1l2 sin(qr2)ωr2 ,

E(11)v = E(22)

v = E(33)v =

Cmnm

rRa,

E(12)v = E(13)

v = E(21)v = E(23)

v = E(31)v

= E(32)v = 0,

M (11)v2

= I1 + I2,

M (12)v2

= 0,

M (13)v2

= [−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ)] I2

− I1l1 sin(qr1 + ϑ),

M (21)v2

= 0,

M (22)v2

= I1 + I2,

M (23)v2

= [l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ)] I2

+ I1l1 cos(qr1 + ϑ),

M (31)v2

= [−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ)] I2

− I1l1 sin(qr1 + ϑ),

Page 16: MODELLING AND CONTROL OF AN OMNIDIRECTIONAL MOBILE MANIPULATORmatwbn.icm.edu.pl/ksiazki/amc/amc22/amc2239.pdf · Modelling and control of an omnidirectional mobile manipulator 603

616 S. Djebrani et al.

M (32)v2

= [+l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ)] I2

+ I1l1 cos(qr1 + ϑ),

M (33)v2

=[(−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ))2

+ (l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ))2

+ 2]I2 + I1

(l21 + 2

),

R(11)v = [−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ)] I2

− I1l1 sin(qr1 + ϑ),

R(12)v = −I2l2 sin(qr1 + qr2 + ϑ),

R(21)v = [+l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ)] I2

+ I1l1 cos(qr1 + ϑ),

R(22)v = +I2l2 cos(qr1 + qr2 + ϑ),

R(31)v =

[(−l2 sin(qr1 + qr2 + ϑ) − l1 sin(qr1 + ϑ))2

+ (l2 cos(qr1 + qr2 + ϑ) + l1 cos(qr1 + ϑ))2

+ 2]I2 + I1

(l21 + 2

),

R(32)v = I2

[l1l2 cos(qr2) + l22 + 2

].

Received: 14 April 2011Revised: 13 October 2011Re-revised: 21 April 2012