Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Mobile Robot Paper

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

Bond Graph Modeling and Simulation

of a Differential Drive Mobile Robot

Jyoti Joshi, Rushali Pant, Narendra Gariya, Avi Raj Manral,


and Pushpendra Kumar

Abstract Wheeled mobile robots (WMRs) are being used in many walks of life due
to their simple structure and easy control. Furthermore, a differential drive robot is
the simplest form of a WMR, which is having two independent actuators to drive
its two tractive wheels. The steering is performed using the difference of velocities
of two wheels; hence, two wheels velocities are manipulated in order to control
the velocity and orientation of the robot. Modeling is the first step for the control
system design. A kinematic model is not enough to represent the real behavior of the
robot. Therefore, this paper deals with the dynamic modeling of a differential drive
mobile robot. The model considers the multi-domain nature of the robot and includes
electrical actuators and mechanical dynamics. A multi-domain graphical modeling
tool called bond graph (BG) is used to develop the robot’s model. The developed
BG model is verified through simulation and the robot’s motion is analyzed on the
surfaces with different coefficients of friction.

Keywords Differential drive · Mobile robots · Bond graph

1 Introduction

A mobile robot is the robot whose base is not fixed such as wheeled, legged, drones,
underwater mobile robots, etc. Wheeled mobile robots (WMRs) have increasingly
been used in many applications due to their simple design. Some applications include
transportation, industries, and disaster missions. WMRs can have different number
of wheels such as two, three, four, and many more. A WMR with two tractive wheels
on the same axle line is called differential drive robot, where orientation of the robot
is obtained by different angular velocities of the two wheels. In addition, there may
be one or two passive supporting wheels. In this work, we focus on dynamic analysis
of a differential drive mobile robot.

J. Joshi · R. Pant · N. Gariya · A. R. Manral · P. Kumar (B)


Department of Mechanical Engineering, Graphic Era Deemed To Be University, Dehradun
248002, Uttarakhand, India
e-mail: kumar.pushpendra@geu.ac.in

© The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd. 2021 473
P. Joshi et al. (eds.), Advances in Engineering Design, Lecture Notes
in Mechanical Engineering, https://doi.org/10.1007/978-981-33-4684-0_48
474 J. Joshi et al.

Modeling is the first step in analyzing a robot; further it is necessary to develop


some control strategies. In the existing literature, kinematic models of differential
drive robots have been analyzed for different controls [1–3]. Furthermore, dynamic
models of differential drive robots have been developed for controller design [4, 5]. In
[6], a controller is designed to solve the problem of trajectory tracking of a differential
drive robot, where both the kinematic and dynamic models are considered.
Besides analytical models, graphical models are of interest to cope up with the
complexity of a system. Among those graphical models, bond graph (BG) is a suit-
able graphical tool to model multi-domain complex systems [7]. On contrary to other
graphical tools, BG represents edges carrying power not signal. BG has been used to
model mobile robots [8, 9]. In the present work, we focus on BG modeling of a differ-
ential drive mobile robot considering its chassis, wheels, and actuators dynamics. The
developed model is analyzed through simulation over various surfaces with different
coefficients of friction.
The rest of the paper is organized in the following sections. Section 2 presents an
introduction of BG modeling. The BG model of differential drive robot is developed
in Sect. 3. Simulation results are presented in Sect. 4. Finally, the paper is concluded
in Sect. 5.

2 Introduction to Bond Graph Modeling

Bond graph (BG) is a graphical modeling approach based on power exchange


phenomena between systems. The power exchange is represented by a half arrow
called power bond. This power bond carries two unified variables of power (P)
namely, effort (e) and flow (f ). Mathematically, it is represented by the relation:

P = ef (1)

Since BG is based on the energy exchange, it can be applied to the systems of


multi-domain nature such as mechanical, electrical, and thermal. The applications of
BG in various domains with corresponding effort and power variables are described
in Table 1.
Refer to Table 1, BG has been applied to various domains of physics because
power (P) is common to all the domains. Therefore, power is exchanged between
multi-domain physical systems using power bonds in BG. The multi-domain physical
systems are modeled using unified BG elements, which are single port (source of
flow SF and source of effort SE, resistance R, compliance C, and inertia I), double
port (transformer TF and gyrator GY), and multi-port (common effort 0-junction and
common flow 1-junction) elements. There comes a term called causality, which helps
to determine the direction of effort and flow in a power bond. The main advantages of
BG modeling include (i) multi-domain modeling tool, (ii) graphical tool, (iii) suitable
to model complex systems, and (iv) can be used for control as well [7]. Therefore,
in this work BG is used for modeling the differential drive mobile robot.
Bond Graph Modeling and Simulation … 475

Table 1 Bond graph in


Domain Effort (e) Flow (f ) Power (P)
different domains
Mechanical Force (F) Velocity (v) P = Fv
translation
Mechanical Torque (τ ) Angular P = τω
rotation velocity (ω)
Electrical Voltage (V ) Current (i) P = Vi
Thermal Temperature Entropy flow P = T ṡ
(T ) (ṡ)
Hydraulic Pressure (p) Mass flow rate P = pq̇
(q̇)

3 Bond Graph Modeling of the Differential Drive Mobile


Robot

3.1 Description of the Robot

In this work, a WMR called differential drive robot is considered, which is having two
active wheels on the same axle line and one or more passive supporting castor wheels.
The active wheels are actuated by two independent direct current (DC) motors. The
schematic diagram of the quadcopter is shown in Fig. 1.
Refer to Fig. 1, there are two coordinate frames, first one is the inertial frame
E{x, y} fixed to the earth, while second frame CM{x b , yb } is the body-fixed frame
attached to the center of mass (CM) of the robot. The CM of the robot is assumed to
be located at the center point of the line joining the rotation axes of the two wheels.
The angular velocities of the two wheels are represented by ω1 and ω2 , for the left
and the right wheels, respectively. The wheels’ radii are equal and denoted by r. The
linear velocities of wheels are represented by v1 and v2 . The velocity of robot’s CM is
denoted by v, while its orientation is θ. The robot is having three degrees of freedom

Fig. 1 Schematic diagram


of the differential drive
mobile robot
476 J. Joshi et al.

(DoF) in the two-dimensional (2D) plane. The three motions along the three DoF
include longitudinal ( ẋ), lateral ( ẏ), and yaw (θ̇) motions. The steering of the robot
is performed using the difference between the angular velocities of two wheels.

3.2 Kinematics of the Robot

The relationship between the body-fixed frame and the earth-fixed frame is given by
the following transformation.
   
 ẋ   ẋb 
ẏ = [R] ẏ (2)
   b
θ̇ θ̇

where [R] is the rotation transformation matrix between the inertial frame and the
body-fixed frame, which is given by:
 
cos θ − sin θ 0
[R] =  sin θ cos θ 0  (3)
0 0 1

The nonholonomic constraint restricts the motion of the robot in yb direction,


hence, ẏb = 0. Also, we know ẋb = v. Finally, velocities in the inertial frame are
given by:

ẋ = v cos θ (4)

ẏ = v sin θ (5)

The wheel velocities can be given by the following relations.

v1 = v − l θ̇ (6)

v2 = v + l θ̇ (7)

The wheels’ linear velocities v1 and v2 are caused by the rotation of wheels with
angular velocities ω1 and ω2 .
Bond Graph Modeling and Simulation … 477

3.3 Bond Graph Dynamic Modeling of the Robot

In this subsection, we will develop the dynamic BG model of the robot using the
kinematic equations presented in the previous subsection. The kinematic constraints
at some points automatically reflect in the BG dynamic model, because it is based
on the energy flow between various points. In the present paper, the dynamic model
of the robot considers the multi-domain components including electrical motors and
the mechanical dynamics of the robot’s CM. The robot’s wheels are actuated by two
independent DC motors. The following modeling assumptions are made: (i) the robot
moves in a plane with three DoF, i.e., longitudinal, lateral, and yaw, (ii) rigid body
dynamics is considered, (iii) since the robot moves in a known indoor environment,
hence, suspension, roll, and pitch dynamics are ignored, and (iv) wheels are actuated
by two independent DC motors. The BG model of the robot is developed in Fig. 2.
In Fig. 2, the half-headed arrows represent the power bonds in BG, while the
full-headed arrows represent the measurements, say detector of flow (Df). Each Df
is a sensor, which measures the flow at the junction where it is attached. Eight 1-
junctions say, 1v , 1θ , 1i1 , 1ω1 , 1v1 , 1i2 , 1ω2 , and 1v2 , are corresponding to linear and
angular velocities of CM, motor current, angular and linear velocities of the left
and right motor-wheel systems, respectively. Two 0-junctions say, 0F1 and 0F2 , are
corresponding to the left and right wheel forces, respectively. Theses wheels’ forces
F 1 and F 2 are transmitted to the robot’s CM. Two 1-junctions say, 1x and 1y , are

Fig. 2 Bond graph model of the differential drive mobile robot


478 J. Joshi et al.

corresponding to the longitudinal and lateral velocities of the robot in the inertial
frame, the transformers TF moduli ct and st represent sin θ and cosθ, respectively.
Refer to BG in Fig. 2, there are various parameters related to the robot’s dynamics.
In CM dynamics, m and I z are mass and rotary inertia of the robot; transformers TF
moduli l and nl represent the robot’s dimension, where nl means negative l. In the
electrical part of the left motor-wheel system, U 1 , i1 , L 1 , R1 , and k 1 represent the
input voltage, current, inductance, resistance, and motor constant, respectively. In the
mechanical part of the left motor-wheel system, ω1 , J 1 , and B1 represent the angular
velocity, rotary inertia, and viscous friction of the motor’s rotor shaft. In the wheel-
ground part of the left motor-wheel system, r and S 1 represent the wheels radius and
the coefficient for the contact dynamics, which depends on the normal load and the
friction between the wheel and ground. In the same way, different parameters in the
right motor-wheel system can be defined. The expressions for the S 1 and S 2 are given
as follows.
µmg
S1 = S2 = (8)
2

where µ is the friction coefficient between the wheel and ground. In this way, a
complete dynamic model of the robot is developed which includes the actuators and
the wheel-ground contact dynamics as well.

4 Simulation

The model is verified through simulation in a dedicated software for BG modeling


and simulation called SYMBOLS [10]. Once BG model of a system is drawn in
SYMBOLS, it automatically generates the equations of motion of the system, and
simulation can be carried out (Fig. 3).
The aim of this simulation study is to verify the model and to analyze the dynamic
behavior of the robot when it moves on various surfaces with different coefficients of
friction. The following numerical values of the parameters are taken for simulation:
L 1 = L 2 = 0.05 H, R1 = R2 = 0.5 , k 1 = k 2 = 0.1 N-m/A, J 1 = J 2 = 0.2 kg/m2 ,
B1 = B2 = 0.1 N m s/rad, r = 0.05 m, µ = 0.6, m = 5 kg, l = 0.15 m, and I z =
1.5 kg m2 . First, same input voltage is given to both the motors, say 10 V. The results
are shown in Fig. 4, where it can be observed that the robot moves along X direction
in the straight line and there is no motion along Y direction, which is an expected
behavior for the equal angular velocities of the wheels.
Now, the robot’s behavior is analyzed for the different angular velocities of the
wheel, the left wheel’s motor is excited with U 1 = 10 V and the right one with U 2
= 15 V. The results are shown in Fig. 5, where we can see the expected behavior of
the robot with positive anticlockwise orientation and circular trajectory.
In order to analyze the behavior of the robot over various surfaces, we have
simulated the robot with different coefficients of friction, i.e., 0.5, 0.6, 0.7, and 0.8.
Bond Graph Modeling and Simulation … 479

Fig. 3 BG modeling and simulation software SYMBOLS

Fig. 4 Equal input voltage to both the motors: a angular velocities and b trajectory

The different input voltages are given to motors U 1 = 10 V and U 2 = 15 V. The


results are shown in Fig. 6, where it can be seen that the changing values of friction
coefficient affect the wheel forces, which leads to change in orientation and trajectory
of the robot.
480 J. Joshi et al.

Fig. 5 Different input voltages to both the motors: a angular velocities, b trajectory, c orientation,
and d velocity of the center of mass of the robot

Fig. 6 a Trajectories and b left wheel forces for different values of coefficient of friction

5 Conclusion

This paper presents the dynamic model of a differential drive mobile robot using a
graphical modeling tool called BG. The model considers the chassis, wheels, and
actuators dynamics of the robot. The developed model is verified through simulation.
The obtained simulation results show the expected dynamic behavior of the robot.
Further, the robot’s model is simulated over various surfaces with different friction
Bond Graph Modeling and Simulation … 481

coefficients. For future work, it is interesting to use the developed BG model for
control design with some faulty components.

References

1. Chung Y, Park C, Harashima F (2001) A position control differential drive wheeled mobile
robot. IEEE Trans Industr Electron 48(4):853–863
2. Huang P, Zhang Z, Luo X, Zhang J, Huang P (2018) Path tracking control of a differential-drive
tracked robot based on look-ahead distance. IFAC Papers OnLine 51(17):112–117
3. Yazdjerdi P, Meskin N (2018) Design and real-time implementation of actuator fault-tolerant
control for differential-drive mobile robots based on multiple-model approach. Proc Inst Mech
Eng Part I J Syst Control Eng 232(6):652–661
4. Alves TG, Lages WF, Henriques RV (2018) Parametric identification and controller design for
a differential-drive mobile robot. IFAC Papers OnLine 51(15):437–442
5. Martins FN, Sarcinelli-Filho M, Carelli R (2017) A velocity-based dynamic model and its
properties for differential drive mobile robots. J Intell Rob Syst 85(2):277–292
6. Abdulwahhab OW, Abbas NH (2018) Design and stability analysis of a fractional order state
feedback controller for trajectory tracking of a differential drive robot. Int J Control Autom
Syst 16(6):2790–2800
7. Mukherjee A, Karmakar R, Samantaray AK (2006) Bond graph in modeling, simulation and
fault identification. IK International, New Delhi, pp 342–346
8. Kumar P, Merzouki R, Conrard B, Coelen V, Bouamama BO (2014) Multilevel modeling of
the traffic dynamic. IEEE Trans Intell Transp Syst 15(3):1066–1082
9. Sahoo SR, Chiddarwar SS (2016) Dynamic modelling of four wheel skid mobile robot by
unified bond graph approach. In: 2016 international conference on robotics: current trends and
future challenges (RCTFC). IEEE, pp 1–6
10. Mukherjee A, Samantaray AK (2001) System modelling through bond graph objects on
SYMBOLS 2000. Simul Ser 33(1):164–170

You might also like