 Open Access
 Total Downloads : 352
 Authors : Boru Diriba Hirpo , Prof. Wang Zhongmin
 Paper ID : IJERTV6IS100138
 Volume & Issue : Volume 06, Issue 10 (October 2017)
 Published (First Online): 26102017
 ISSN (Online) : 22780181
 Publisher Name : IJERT
 License: This work is licensed under a Creative Commons Attribution 4.0 International License
Design and Control for Differential Drive Mobile Robot
Boru Diriba Hirpo #1 Prof. Wang Zhongmin #2
School of Mechanical Engineering, Tianjin University of Technology and Education,
Tianjin 300222, China
Abstract: Differential drive wheeled mobile robots are the most common mobile robots. In this paper first, the mechanical structure of the differential drive wheeled service robot platform was designed. The total mechanical structure of the robot platform was prepared in detail and assembly drawing and the 3D model was prepared. The second part of this paper is control of the robot platform. Kinematic based PID control system is used. The gains of PID controller is tuned to achieve the desired speed.. SIMULINK model is prepared for DC motor and for whole robot system and the simulation result was discussed. MATLAB/SIMULINK package is used to model and simulate.
Key words: Differential drive, Kinematic modeling, PID controller, SIMULINK model

INTRODUCTION
Mobile robots are robots that can move from one place to another autonomously. Unlike the majority of industrial robots that can move only in a specific workspace, mobile robots have the special feature of moving around freely within a predefined workspace to achieve their desired goals. This mobility capability makes them suitable for a large repertory of applications in structured and unstructured environments. Differential drive wheeled mobile robots are the most commonly used mobile robots. The drives of the wheeled mobile robot can be a differential drive. The differential drive consists of two fixed powered wheels mounted on the left and right side of the robot platform. The two wheels are independently driven. One or more passive castor wheels are used for balance and stability. If the wheels rotate at the same speed, the robot moves straightforward or backward. If one wheel is running faster than the other, the robot follows a curved path along the arc of an instantaneous circle. If both wheels are rotating at the same speed in opposite directions, the robot turns about the midpoint of the two driving wheels[6] [2]. The aim of this research paper is to design, the total mechanical structure, and speed control, of differential drive mobile robot platform. PID controller based on kinematic modeling is used to control the speed of the DC motor and/or whole robot platform.

MECHANICAL STRUCTURE DESIGN
The maximum dimension of the robot platform Maximum height of the robot platform=50cm Maximum diameter (base diameter) of the robot platform=55cm
Radius of the wheel = 12.7cm Axle distance(L)= 500mm
maximum speed of the robot=0.4m/s

CAD MODEL OF ROBOT PLATFORM
CAD software CATIA V5R19 is used to design 3D model of the robot platform. The 3D model gives the details of fits and functionality of each and every component. The robot platform over all structure is composed of the main body of the robot platform. The main body of the robot platform comprises of Walking device, driving device, power device, sensing devices and controlling devices. The bottom of the main body is provided with chassis. Walking devices, magnetic sensor, power unit and the drive unit are provided in the chases. Walking devices consists of the PMDC motors, arranged in crossreveres direction; each motor is connected to the power wheel. In the middle of chassis there are caster wheels. The caster wheels are used for stability purpose. Power unit is Lead acid 22AH2 block battery (lithium iron phosphate battery). The magnetic sensor has an ability of sensing at a distance of 0.510cm and reaction time of 220ms.Two Ultrasonic sensors are arranged in the middle of the main body; they have the ability of sensing in 60 degree angle and at a distance of 0.35m. Two Inferred sensors are located and arranged at the bottom of main body; they have the ability of sensing at a distance of 0.510cm with a reaction time of 220ms. Figure 1(a) below shows the 3D model of the chassis of robot platform and 1(b) shows whole body of the robot platform.
a)
b)
Fig.1. (a) 3D model of the chassis (b) Whole body of the robot platform
The detail assembly of the parts are shown below

b)

Fig.2. a) Wheel motor assembly b) castor wheel assembly
Fig. 3. Robot Assembly


MATHEMATICAL MODELING
Mathematical modeling is the basic input for control system design. In this paper Kinematic modeling and DC motor modeling are considered.

Kinematic modeling
Kinematics is the most basic study of how mechanical systems behave. In mobile robotics, we need to understand the mechanical behavior of the robot both in order to design appropriate mobile robots for tasks and to understand how to create control software for an instance of mobile robot hardware [8].

Motion model
The position of a deferentially derived mobile robot can be described by two coordinate systems, Inertial coordinate system and robot coordinate system. As shown in the figure 4 an Inertial coordinate system is a global frame which is fixed in the environment in which the robot moves in. It is reference frame. Robot coordinate system is a local frame attached to the robot and moving with it [5]. As shown in figure 4, Inertial coordinate system is denoted as
{ XI, YI} and robot coordinate system is denoted as {Xr, Yr}. point C which is a midpoint of the axis between the two wheels is the origin of the robot.
Fig. 4. Position of the robot
The robot position is described by C {X, }, when expressed in Cartesiancoordinate of the inertial frame. Robot frame and inertial frame can be related by using basic transformation matrix.
(1)
As shown in figure 5 for the robot under consideration, the forward motion is achieved when both wheels are driven at the same rate; Turning left is achieved by driving the right wheel at higher rate than the left wheel. Driving the left wheel at higher rate results in turning right. When one wheel turn forward and the other turns in opposite direction, the robot turns on the spot.
Fig.5. The Robot Motion model

Kinematic Modeling
For the robot platform under consideration as shown in figure 4, the radius of each wheel is R, and the distance between the center of the robot wheels is L. Given that angular velocity of right wheel( r) and left wheel(l), R, L, the forward kinematic can be modeled.
The relationship between linear speed (V) of each wheel to angular speed of each will can be given as in (2).
(2)
Assume that the robot moves forward along +Xr, consider the contribution of each wheel's angular speed to the linear
speed of the robot at point C along +Xr. If the right wheel
The robot speed in the inertial frame is
(6)
(7)
rotates while the left wheel is at rest, there is no contribution of the left wheel to the linear speed of the robot at point C. Because C is half way between the two wheels, the robot linear speed at point C is given as
in the direction +Xr. and vice versa if the left wheel is spinning while the right wheel is at rest. The summation of this speeds is used to calculate the linear velocity of the robot.
Therefore
Substituting for value of V and from (5) and putting in matrix form
(8)
Equation (8) is the kinematic model of the robot.
are the inputs of the controller.
From this equation, we can say
(3)


DC motor modeling
DC motor is the actuating device used to control the
 If the spinning speed of each wheel is opposite and the same in magnitude, the robot is stationary and spinning. which means V=0

If the spinning speed of each wheel is the same and in the same direction the robot moves straight along +xr

No lateral slip motion was assumed; then the value of
linear velocity along yr is zero
To determine the angular speed of the robot, we consider the contribution of each wheel. when the right wheel is rotating forward, the robot turns in the counter clockwise direction along point C. the angular speed 1 at point C can be computed because the robot is instantaneously moving
the arc of a circle of radius L. . when the left wheel is rotating forward, the robot turns clockwise around point C. The angular speed 2 at C can be determined
motion of differentially derived mobile robot. The control of the whole robot system can be reduced to control of DC motor. For the robot under consideration Permanent magnet brushed DC ( PMBDC) motor is used.
Electrically, permanent magnet brushed DC motors can be modeled as a series of three basic electrical components: a resistor(R), an inductor(L), and a source of electromotive force (EMF), or voltage (Figure 6). The mechanical portion of the model consists of a rotating mass (with inertia J with units of kg_m2), and a linear viscous damping force b ( units of b is N/m/sec).
similarly.
Therefore
Relating robot velocity to wheel velocity
(4)
(5)
Fig.6. Schematic representation of PMDC motor
From Electric portion
from mechanical portion
(9)
We can represent the Robot speed in the robot frame in terms of the center point C.
Transfer function for DC motor
(10)
Using the Laplace transform, equations (9) and (10) can be written as:
from equation (12) I(s) can be expressed as
Substituting in equation (11) we obtain
(11)
(12)
(13)
Table 1 Effects of increasing each of the PID parameters
(14)
from (14) the transfer function of the input voltage, V (s), to the output angle, Ã˜, directly follows:
(15)
The transfer function of the input voltage, V(s), to the angular velocity, , is:
(16)
The transfer function can be shown in block diagram
Fig.7. DC motor block diagram


CONTROL SYSTEM DESIGN

PID speed controller
PID controller is a lowlevel controller used to control the rotational speed of DC motor with the help of the values of the constants KP, KD, and KI. KP depends on present error, KI depends on the accumulation of past errors, and KD is a prediction of future errors. They provide control signals that are proportional to the error between the reference signal and the actual output (proportional action), to the integral of the error (integral action), and to the derivative of the error (derivative action), namely
Respon se
Rise Time
Overshoot
Settling Time
Steatystate Error
Kp
Decrease
Increase
Small increase
Decrease
KI
Small decrease
Increase
Increase
Large decrease
KD
Small decrease
decrease
decrease
Minor change
Block diagram for PID controller with DC motor is shown below.
Fig.8. Block diagram of DC motor with PID controller
where: r is reference input Y is actual output
B is converted actual output
e is the error obtained by subtracting B form r

Simulink model For motor with PID controller in Matlab/Simulink
The Simulink model for Dc motor with PID controller is shown in Figure 9. This model is created in Matlab/Simulink package. PID controller is used with Dc motor in order to control the speed of the motor (wheels). Feedback sensor (tachometer) is used to detect the error between actual and desired speed and the error signal is input for the PID controller. PID gains KP, KI, KD is tuned manually to reach at the desired linear speed. From this model, we can develop Simulink model for whole robot system
where U(t)= control signal e(t)= error signal Kp=proportional gain KI=Integral gain KD=The derivative gain
(17)
The PID controller is mainly to adjust an appropriate
proportional gain ( K p ), integral gain (K I ), and differential gain (KD) to achieve the optimal control performance. The following table shows the effects of increasing each of the controller parameters KP, KI and KD. This table can be used when the values of the constants KP, KD, and KI must be tuned jointly on the closed loop performance of stable plants in Matlab Simulation and realworld certainly[7] .
Fig.9. DC motor with PID controller Simulink model

Simulink model for whole robot system with PID controller in Matlab/simulink
Based on Simuling model for the motor with PID controller we can develop Simulink model for the whole robot system. Figure 10 shows Simulink model for robot linear speed, robot angular speed, robot heading orientation angle theta and turning radius of the robot
Fig.10. Simulink model for whole robot system
Additional Simulink models for robot platform can be modeled. X and Y linear speed and X and Y position can be modeled as shown in Figure 11. Figure 12 a) shows Simulink model for linear and angular speeds of the robot. Figure 12 b) shows Simulink model for right and left angular and linear speeds of robot wheels.
Fig.11. Simulink models for X and Y direction speeds and position of the robot
a)
b)
Fig.12. Simulink model for a) linear and angular speed of robot b) linear and angular speeds for right and left robot wheel's


Testing and Simulation Result
To test the Simulink model developed, we need the DC motor specification. The DC motor used in this paper is 12V Permanent magnet brushed DC with gear head of gear ratio n=3 and Tachometer with Ktack=1.8is used with the motor. In addition some motor parameters are shown in table2.
Table 2 parameter for 12v DC motor
parameter
Symbol
unit
Motor1
Motor2
Torque constant
kt
Nm/A
0.062
0.062
Back EMF
constant
kb
v/rad/s
0.062
0.062
Geared motor
inertia
Jm
Kg/m2
0.0551
0.0551
Viscous
damping
bm
Nm/rad/s
0.188
0.188
Armature
resistance
Ra
Ohoms
0.56
0.56
Armature
Inductance
La
mH
0.97
0.97
The desired wheel linear speed () of the robot is 0.4m/sec. which is assumed to be equal to robot speed. The desired angular speed of the wheels is
The desired Voltage corresponding to is V=12V. The control problem is then to control this desired and then controlling Robot linear speed. First, we want to test the simulation for Dc motor with the wheel for KP=1 KI=0 and KD=0. The result of the simulation indicates the robots linear speed is equal to 0.1076m/s. When it is compared with the desired robot linear speed there is an error of 0.2924. The simulation result is shown in fig. 13.
Fig.13. Simulink result of motor speed with Kp=1, KI=0 and KD=0
Then we want to tune the PID gains until we get the desired robot linear speed. For the value of KP=17.5, KI=1.2 and KD=8 we obtain robot linear speed V=0.400m/s, which is the desired speed. The simulation result is shown in figure 14.
Fig.14. Simulink result of motor speed with Kp=17.5, KI=1.72, and KD=8
Once we are done with the desired Robot speed we can test the Simulink model for the whole robot system. we have four possible options for robot motion
vr = right wheel linear speed vl = left wheel linear speed
case1: when the wheels rotate with the same speed (vr = vl) The robot moves forward.
case2: When the wheels rotate with the same speed and opposite in direction (vr = vl) the robot turns on the spot
case3: When vr > vl the robot turns towards the left.
case4: When vr < vl the robot turns towards the right.
Figure.15. shows the model simulation of the whole robot for vr = vl
Fig.15. Whole robot system simulation for vr = vl
For equal speeds of right and left wheels (vr = vl): The relationship between the robot speeds along x and y direction, position of the robot in x and yaxis, linear and angular speed of the robot, right and left robot wheel speeds can be shown as in figure 16. The turning radius of the robot is zero.
c)

d)

b)
e)
Fig.16. a) x and y speed per time b) linear and angular speed per time c) X and Y position per time d) linear speed of left and right wheels per time
e) Left and right wheel angular speed per time
For velocity of wheels is not equal vr (12V)> vl (3V_): The relationship between x and y speed of the robot , x and y position of the robot, linear and angular speed of the robot, left and right wheel angular and linear speeds and radius of curvature can be shown as in figure 17.
a)
b)
c)
d)
e)
Fig.17. a) x and y speed per time b) X and Y position per time c) linear and angular speed per time d) linear speed of left and right wheels per time e) Left and right wheel angular speed per time
It is also necessary to show the result of some motion characteristics of the robot. The robot motion for vr = vl and vl > vr can be shown as in figure 18.
a)
b)
e)
Fig.18.(a) x and y position graph for vr = vl, (b) Vx and Vy graph for vl
> vr and (c) x and y position graph for vl > vr
CONCLUSION
In this work, the mechanical structure for the service robot platform is designed. PID based speed control is accomplished and the results are detected as shown in figure 16,17 and 18. As the values for wheel speeds change the results for linear speed and angular speed of the robot changes. The position and velocities along x and yaxis of the robot also change. The angular speed of the wheels and turning radius of the robot also changes. in addition, some motion characteristics of the robot are shown. This work will be used as an input for the designers of the differential drive service robot to develop control system design for obstacle avoidance and tracking control.
ACKNOWLEDGMENT
First of all, I thank my God for his Guidance in all of my life. Next, I have special thanks to my advisor Prof.Wang zhongmin, professor at Mechanical Engineering department, Tianjin university of Technology and education.
REFERENCES

Tianran Peng, Jun Qian*, Bin Zi, Jiakui Liu, Xingwei Wang "Mechanical Design and Control System of an Omnidirectional Mobile Robot for Material Conveying" School of Mechanical and Automotive Engineering, Hefei University of Technology,
Hefei230009, China

Marco Ceccarelli "Service Robots and Robotics: Design and Robots Application" University of Cassino, Italy[3] Marco Ceccarelli "Service and Robotics: Design and Application"
University of Cassino, Italy

Dr. J. L. Minase Assistant Professor, "Design of a differential drive mobile robot platform for use in constrained environments" Department of Mechanical Engineering, Sinhgad College of Engineering, Pune Maharashtra, India

Farhan A. Salem "Dynamic and Kinematic Models and Control for Differential Drive Mobile Robots"Department of Mechanical Engineering, Faculty of Engineering, Taif University, 888, Taif,
Saudi Arabia

Rached Dhaouadi* and Ahmad Abu Hatab "Dynamic Modelling of DifferentialDrive Mobile Robots using Lagrange and Newton Euler Methodologies: A Unified Framework" College of Engineering, American University of Sharjah, Sharjah, UAE

Spyros G. Tzafestas "Introduction to Mobile Robot Control" School of Electrical and Computer Engineering National Technical University of Athens Athens, Greece

Cherry Myint#1, Nu Nu Win#2 "Position and Velocity control for TwoWheel Differential Drive Mobile Robot"International Journal of Science, Engineering and Technology Research (IJSETR)

Sandeep Kumar Malu & Jharna Majumdar "Kinematics, Localization and Control of Differential DriveMobile Robot" Nitte Meenakshi Institute of Technology, India
I think that formula (1) contains an error, since there are no coordinates of translational motion in the 3×3 matrix and it is not clear what T is.