DIFFERENTIAL DRIVE MOBILE ROBOT TRAJECTORY TRACKING WITH USING PID AND KINEMATIC BASED BACKSTEPPING CONTROLLER

: In this study, the mathematical model of a nonholonomic vehicle was derived. A PID and kinematic based backstepping controller (KBBC) was designed for a differential drive mobile robot to be able to track a desired trajectory. The KBBC was used to overcome the nonlinearity of the trajectory tracking and the PID controllers was used for the DC motors’ speeds adjustments. Responses of the vehicle’s controller in the square shaped trajectory had obtained and results were graphically presented. The effectiveness of the designed controller has been discussed


INTRODUCTION
Ground mobile robots may be separated into several groups that are wheeled mobile robots, legged mobile robots and tracked mobile robots.In these groups, wheeled mobile robot s are mostly used in consequence of low energy consumption, low mechanical complexity and fast motion capability.
Navigaition of wheeled mobile robots and their controls have been studied in recent years much more than the past years due to their applicability to the wide range of challenging situations with developing control techniques.A differential drive mobile robot is a common type that has an application area in the robotic research often.Despite the apparent simplicity of the mathematical model of this robot, the existence of nonholomic constrains make difficult to control this system.Because of Brockett's conditions, a smooth, time-invariant, static state feedback control law cannot be used.To DOI: 10.15317/Scitech.2017.65

MATHEMATICAL MODELLING OF THE DIFFERENTIAL DRIVE MOBILE ROBOT
The dynamics model of the nonholonomic mobile robot was derived by Langrange method.The mathematical model and the controllers of the nonholonomic mobile robot was implemented in the Matlab/Simulink environment.The kinematic based backstepping controller was designed based on Lyapunov Theorem that the stability of the system is proved by.The PID controller was used for each DC motor.A square shaped trajectory was chosen to perform simulation.  .

Kinematics of the
In the Figure 1, R is the radius of each wheel, d is the distance between the center of mass (point D) and mid point of the axis center of driving wheels (point A), L is each wheel distance to point A, ̇ ̇ is the right and left wheel angular speed respectively, is the degree between the robot frame (front direction) and the inertial frame, C is the distance between point A and instantaneous centre of curvature (ICC).
The orthogonal axis ( ) skidding constraint: The longitudinal axis ( ) slipping constraint for the right and left wheel, respectively: Using the rotation matrix ( ) (1), Equations ( 2) and (3), three constraint Equations can be obtained and these Equations are written in the matrix form below (Solea et al., 2015): In this Equation (4), A is the constraints matrix and q are generalized coordinates.
Kinematic is the study of the motion without considering the forces.The purpose of the kinematic modelling is to derive robot velocities as a function of the driving wheels' velocities in predefined constraints.Robot's wheels have same angular speed according to the instantaneous curvature centre.So the right wheel and the left wheel velocity relation can be obtained as below (Mac et al., 2016); (5) The linear and the angular velocity of the robot as follow, respectively; In order to find velocities and the final position following Equations ( 7), ( 8) can be used; In robot coordinate system and inertial coordinate system, Robot's velocity according to point A for the robot coordinate system and inertial coordinate system respectively :

Dynamics of the Differential Drive Mobile Robot
The nonholonomic mobile robot with n generalized coordinates and subject to m constraints can be described by following Equation (Swadi et al., 2016;Ali et al., 2014;Tawfik et al., 2014;Dhaouadi and Hatab., 2013;Mohareri, 2009;Sidek, 2008): In this Equations; ( ) the symmetric positive definite inertia matrix, ( ̇) is the centripetal coriolis matrix, ( ̇) is the friction matrix, ( ) is the gravitation matrix, is the unknown disturbance matrix, ( ) is the input matrix, ( ) is the kinematic constraints matrix, is the Lagrange multipliers matrix.
The equation of the motion can be derived with using the kinetic and potential energies of the given system by Lagrange Method (Dhaouadi and Hatab., 2013;Mohareri, 2009;Sidek, 2008).The Lagrange equation is expressed into the following form: (11) In the Lagrangian function expressions; T is the kinetic energy, U is the potential energy, F are generalized forces, A is the constraints matrix and q are generalized coordinates.For the differentially drive mobile robot, generalized coordinates can be defined as [ ] .Using kinematic Equations ( 9), transformation matrix can be redefined according to the point D (Solea et al., 2015); Robot's kinetic energy expressions can be defined as following Equations: (14) In these Equations ( 14), (15); is the mass without driving wheels and actuators, is the mass of each driving wheel, is the moment of the inertia of the robot without driving wheels and actuators, is the moment of the inertia of each driving wheel and actuator s, is the moment of the inertia of each driving wheel and actuators about wheel axis.Using Lagrange method with the energy expression above (15), following matrices of equations can be obtained for this study: Next, the system is transformed into the alternative form to eliminate Lagrange multipliers.The first derivative of the transformation matrix Equation ( 13) with respect to time is; The transformation matrix (13) is the null space of the constraints matrix (4) and this expression can be written as below ; By replacing these Equations ( 20), ( 21) with equivalent terms in dynamic Equations of the robot, the new dynamic equation can be derived that can be used in simulations; The dynamic equations reduced to the form as below:

Actuator Modelling
Permanent magnet DC motors were used to drive the mobile robot.DC motors can be controlled with voltage, so the following equations are used for simulations (Solea et al., 2015) (29) In these Equations ( 26), ( 27), ( 28), ( 29), ( ) is the input voltage, is the resistance of the armature, is the inductance of the armature, ( ) is the angular speed of the motor , ( ) is the current input electromotive voltage, is the counter electromotive voltage, is the back electromotive force constants , is the torque constant , is the transmission ratio, is the output torque, is the motor torque.

CONTROLLER DESIGN
In the proposed control system, two postures will be used: the reference posture [ ] and the current posture [ ] .

Figure 2. Trajectory tracking errors
The control problem will be to determine a control rule for the nonholonomic mobile robot, which can estimate the velocities ( linear velocity, angular velocity) that make the system asymptotically stable.The proposed kinematic based control rule is (Kanayama et al., 1990): where and are positive constants.These constants are gains of the kinematic based backstepping controller.Lyapunov stability method will be used to prove the stability of the control rule in the next section.In the following simulations; initial values for linear and angular velocities are selected as 0. The simulation time t = 65 seconds, the angular speed for the trajectory w = 0.1 rad/s, the scale factor k = 1.5 meter.The square trajectory general equation defined as below for (x, y, θ) is (0, 0, 0);

RESULT AND DISCUSSION
Trajectory following results for without the PID controller and with the PID controller are considered below .The PID controller parameters are tuned as .For graphically presented initial pose [x, y, θ] for the first condition is [0, 0, 0], for the second condition is [0, 0, pi/2], for the third condition is [0, 0, pi/2].In the Figure 6, the results show that after applying the PID controller to the kinematic based backstepping controller; settling time decrease.Also, decereasing of error were observed at small rate.In the Figure 7, the results show that after applying the PID controller to the kinematic based backstepping controller; the settling time and overshot decrease significantly.Also, decreasing of the error were observed at the small rate.In the Figure 8, the results show that after applying the PID controller to the kinematic based backstepping controller; the settling time and overshot decrease significantly.Also, decreasing of the error were observed at the small rate.In the Figure 9, for the comparison between the KBBC+PID and KBBC minimum errors were chosen.In the Figure 11, differences between controllers' errors were at the small rate.In the Figure 10, for the KBBC, it can be said that it needs more torque than the KBBC+PID.At the 15.71, 31.42 , 47.13, 62.84 seconds for both DC motors instantaneous change at the torque rate for the KBBC+PID.As estimated, in the Figure 12, a sudden change in the linear velocity can be seen at the same times for the KBBC+PID.

For
detailed examination, the KBBC Controller's chosen parameters are without the PID controller and with the PID controller.Controller parameters are tuned as for PID controller.Initial pose is [0, 1.5, -pi/4].

Figure
Figure 10.Torque outputs

Table 1 .
Parameters For Robot and DC-Motors