Platooning strategy of mobile robot: simulation and experiment

. Concurrent studies show vehicle platooning system as a promising approach for a new transportation system. The platooning strategy can be also applied to automated mobile robots. Including dynamic modelling in the simulation with kinematic model would yield a different result as the dynamic modelling would include the physical parameters of the mobile robot. The aim is to create a model that describes the motion of a robot that follows another robot based on predetermined distance. Dynamic model of the proposed mobile robot is simulated and the kinematic modelling was included in to simulate the motion of the mobile robot. PID controller will be used as a controller for robot’s motion and platooning strategy. A reference distance is given as the input and the PID controller computes the error and sends input to the mobile robot in the form of voltage. The robot is able to follow the leader robot by maintaining a distance of one metre with a small deviation in the direction as the robot tends to move towards the left due to forces acting on the wheel. This method can be implemented in a human following mobile robot where the leader robot is replaced with a human user.


Introduction
Development of mobile robot has proven to be useful in many sectors.Factories, shopping malls, militaries are some of the target sectors for mobile robots.Often mobile robots are used to assist humans in their daily activities such as carrying certain objects.This task requires an important function which is to track a human [1].For example, a mobile robot is developed for the elderly people to assist them as presented in [2], which could be helpful in taking care of the elderly.The navigation of mobile robots is a relevant and widely studied topic in the field of robotics [3 -4].The case of navigating robot in the presence of humans and other robots is still new to the field of robotics [5].
A logical approach to model the properties of mobile is through mathematical equations.The modelling of mobile robots can be divided into two section.First is the formulation of the plant (mobile robot) in mathematical equations.This plant formulation is known as dynamic equations that take the forces into consideration.The next part would be the derivation of the kinematic equations which describes the movement of the mobile robot.A subtle approach that is used in modelling for differential drive wheeled mobile robot (WMR) is, ignore the presence of either longitudinal or lateral wheel slippage or both to ensure the path planning is based purely on kinematics.The kinematic modelling is developed by taking into consideration of the wheel radius and angular velocity of the wheels.The angular velocity can be used to derive the moving velocity and acceleration of the WMR.The heading of the mobile robot can be determined by analysing the difference between the angular velocities of its wheels [6].Ignoring dynamic forces in a purely kinematic approach has several known issues.The results were unrealistic for a WMR with elevated loads and speeds [7].This imposes significant limitations to the applicability of purely kinematic system [8].
In order to overcome these limitations, many researchers have opted for the application of dynamic modelling in robotics [7 -9].A mathematical approach for dynamic modelling of WMR's can be classified into several methods.The first method will be the Newton-Euler which considers the forces applied to a system: the given forces and constraint forces [10].Newton-Euler approach has few practical difficulties since these forces are not easily quantifiable.In Lagrange approach, the forces are expressed in terms of energies in the system which is the kinetic and potential energy.These energies are in scalar quantities and are easily expressible in terms of the system coordinates [10].However, the Lagrangian approach usually provides a strong and versatile method in the formulation of the equation of motion for holonomic systems.Another approach would be Kane's method which uses generalised coordinated which is based on a vector approach [11 -12].
Platooning is the particular formation of a moving object which has leader-follower formation.The follower tracks and follows the leader based on a predetermined distance.This system is commonly used in autonomous cars on a highway [13].A follower requires information regarding the leader in order to achieve the platooning.There is two type of method used which is the global formation and local formation [14].The global formation gathers the distance and orientation using an image sensor for example camera whereas the local formation uses distance and orientation from a motion sensor such as infrared and laser range finder.Communication is important in platooning.The conventional PID controller is being used in this project since the system is analysed based on a linear path while ignoring lateral path.PID is chosen due to its robustness and ease to use [15 -16].
In this paper, the dynamic model of the proposed mobile robot and the kinematic modelling will be considered.The simulation results presented shows the behaviour of the mobile robot in following a moving object at a specified distance.The PID and error output is discussed to identify the behaviour of the robot.The output of the dynamic model gives the heading and velocity of the robot whereas the output of the kinematic model gives the motion of the robot with respect to the planar plane.

Simulation design and methods
The study aims at identifying the behaviour of the proposed mobile robot when following a specified target.The system is simulated in SIMULINK using block diagrams based on the proposed mathematical modelling.Both dynamic and kinematic model were used in determining the behaviour of the robot.The kinematic model is developed based on the differential drive system since the proposed robot uses two independent wheels and a free wheel.

Kinematic Model
The kinematic model is derived based on differential drive system where two independent wheels are considered.The speed of each wheel can be represented as r߱, thus the average velocity of the two wheels is: The instantaneous rotation for one wheel: The total rotation: The relation between the references frame is through the standard orthogonal rotation transformation: Considering a simple 90° point turn where ߠ = గ ଶ and substitute into Eq (4): Inverting the standard orthogonal rotation transformation, Eq (4): Thus the final form of the differential equation is as shown below where Eq (1) & (3), The constant A, B and C are matrices as shown below.The coefficient of the resistance against the robot.
The input signal is given in the form of time variance multiplied with a gain defined gain.
The input signal given is only in the form of X-axis since only linear motion is considered in this project.The simulation of the mobile robot is conducted using SIMULINK in MATLAB.The MATLAB editor is used to set the parameter of the dynamic model (i.e.state-space).The block diagrams are arranged as shown in figure 2. The kinematic model derived is used in the modelling to compute the new position of the mobile robot after it follows the user by maintaining pre-defined distance.The output of the kinematic model is the velocity in the x-direction (‫)̇ݔ‬and velocity in the y-direction ‫)̇ݕ(‬ which is then integrated to get the coordinate of the robot with respect to x direction.The output is then fed into the error computation to calculate the distance required to travel by the robot in order to maintain the distance.

Experimental setup
The experiment of the system developed is conducted on a self-developed mobile robot.The sensor used in the experiment is the Kinect sensor.Kinect sensor is used because it has depth sensor and also a camera to detect a specific object to be tracked.In this experiment, the robot is made to follow a human in linear a direction.The myRIO is used as the controller in the robot.The setup of the mobile robot is as shown in figure 3 and figure 4 shows the flow of the experimental system.The Kinect sensor detect the human and its distance from the human.MATLAB is used as interfacing software to send the distance data from Kinect to myRIO using User Datagram Protocol (UDP).The distance data received is computed in the myRIO and signal is transmitted to the motor to control the distance of the robot from the human.

Modelling results
The simulation of the platooning system of the mobile robot is conducted.The result developed is shown in figure 3 below.A tracking reference of one metre is set as the input.The target is originally set at the position (1, -2) and the robot to be at (-5, -2).When the system is initiated the robot detects a huge difference in between the target and the robot.This is shown in figure 4. The PID calculates the error and gives maximum output to the motors.Based on figure 3 the saturation is at 20V which is the maximum voltage supplied to the robot.The robot detects the huge distance and tries to maintain the distance of one metre.Thus maximum voltage is supplied and gradually decreases as the robot gets closer to the target.The voltage supplied is negative which indicates the robot is moving backwards due to overshoot.The robot undergoes series of negative and positive voltage input to the robot until the distance is one metre from the target.The velocity of the wheels is at the maximum when the robot first initiates since a maximum voltage is supplied to both motors.The maximum speed achieved is approximately 3.4ms -1 as shown in figure 5.The negative speed shows the motor moves in opposite direction to correct its position and stabilises at 0ms -1 since the distance between the target and the robot is one metre.The robot had a small heading due to the slip forces acting on it.The dynamic model of the robot includes slip forces acting on the robot which causes the robot to head left when the robot initiates.High speed and heavy chassis cause the robot to have a small amount of heading towards left.This can be observed in figure 6 where the robot has the highest heading which is 0.024 degree and gradually decreases to 0.0048 degrees.

Experimental results
The experiment of the developed system is conducted by setting up the experiment as mentioned earlier in methodology.The image processed by MATLAB is shown in figure 9.A point in the image is taken which is respective to X and Y axis of the Kinect (321, 117).A human is allowed to stand in front of the camera.Then Kinect measures the distance of the human from the camera and stores it in array form.The array of data is transmitted to myRIO using UDP.myRIO receives the depth data and process it to send a signal to the motors.In experimental setup, the PID controller was not used.Only the proportional from the PID is used in the experimental setup as an early testing.The result of the error output (difference in distance) is shown in myRIO.myRIO uses LABVIEW as programming software which enables monitoring of the output at each node similar to SIMULINK in MATLAB.The figure 10 and 11 shows the myRIO output.The graph in figure 10 represents the error between the reference distance and the original distance of the target from the robot.The robot detects the human at 1.36 metre which is 0.36 metre more than the reference distance.When the motor is turned on, the robot moves closer to the target.This is shown in figure 11 where an initial 0.7m error is detected.The robot quickly moves forward to maintain the reference distance of 1 metre.However, as the target moves the error varies as the distance enlarges.Thus the robot moves accordingly to maintain the distance of 1 metre.At point A, the error is at -1 which means the robot is closer to the target.The robot can be seen to correct the distance by moving further from the target to maintain the reference distance.
Based on the experimental result and the simulation result, the error graph can be compared.The error graph in figure 6 shows the error reduces to 0 as the robot gets closer to the target.This is same as shown in figure 11 of the experimental result where the error reduces to zero as the robot gets closer to the target.

Conclusions
In this paper, the behaviour of the mobile robot under platooning system was investigated.The mathematical model developed was used in the simulation profile along with the predetermined chassis parameters.PID controller was used as feedback controller to give input to the robot to move.The dynamic model presented shows the behaviour of the robot at given conditions Furthermore, the kinematic model is used to identify the position of the robot in the planar plane.The system developed can be used by researchers to develop a human following mobile robot that moves along with the human within a specified distance.

Fig. 5 .
Fig. 5.The output of PID controller for dynamic model.

Fig. 6 .Fig. 7 .
Fig. 6.The difference in distance between the robot and target.

Fig. 11 .
Fig. 11.The distance changes to maintain 1metre distance from the target.

Table 1 .
The mobile robot chassis parameters.