Design and Study of an Adaptive Fuzzy Logic-Based Controller for Wheeled Mobile Robots Implemented in the Leader-Follower Formation Approach

This paper presents a new design of an adaptive fuzzy logic control by implementing the leader-follower approach. The principle is to modify the feedback control of non-holonomic Wheeled Mobile Robot (WMR) to be adaptive according to a fuzzy controller in the control loop, in order to adjust the feedback control gains according to the distance error between the reference path and the real position. The trajectory tracking control for a single WMR is extended to the formation control for two WMRs in which the first one is the leader and the second is the follower. Simulation results are presented to demonstrate the effectiveness of the proposed controller. Keywords-adaptive fuzzy control; feedback control; Wheeled Mobile Robot (WMR); leader-follower formation; trajectory tracking control; non-holonomic


INTRODUCTION
Wheeled mobile robots are very useful devices that perform a wide range of tasks [1][2][3]. For many years, single mobile robots have been used to execute simple tasks and to achieve desired goals, such as tracking a desired path or avoiding obstacles [4][5][6]. Recently, robotics research has been focused its interest to multi-robot systems. Certainly, this kind of systems could accomplish several complex tasks more economically and efficiently than a single-robot system [7,8]. A team of mobile robots that performs a complex mission in short time, is necessary to work coordinately and cooperatively with respect to a specific formation. Various formation control approaches have been mentioned in the literature, such as the behaviorbased approach [9], virtual structure approach [10], and leaderfollower approach [11][12][13]. In the behavior-based approach, different desired behaviors (e.g. formation keeping, target seeking, etc.) are specified for each robot, where its action is depended on its role in the team. Since this approach is complicated, exact formation control is hard to ensure [14][15][16]. On the other hand, in the virtual structure approach [7,9], the entire formation is considered as a single rigid body, which means that all robots work as a single complex robot. This method can control the motion of the whole robot formation, but cannot change the formation when the environment is changed, which limits the scope of its application. The leaderfollower method is also called as master-slave mode [15]. In the group shaped by multi-mobile robots, one robot is designed as the leader while the others are the followers. In this approach, the leader moves along a predefined trajectory while the followers are controlled to maintain a desired distance and bearing angle [16]. In robotics field, this is the most used technic, which allows the formation control to be transformed into two simple problems, a trajectory tracking by the leader and a control to keep the formation by the followers. Here, we must ensure permanent communication between the leader and all the followers in order to maintain the formation [4,5,7]. This paper deals with the leader-follower formations of non-holonomic mobile robots. A new, adaptive fuzzy controller is proposed to ensure tracking and formation control for two mobile robots. The modeling and control of two mobile robots where one is modeled as a leader and the second one as a follower are presented. The obtained simulation results for tracking and formation control are discussed and a comparison with conventional methods is made.

II. MULTI MOBILE ROBOT MODELING AND CONTROL
Usually, a mobile robot is presented in a Cartesian 2D frame with its coordinates, such as position coordinates ‫,ݔ(‬ ‫)ݕ‬ and its orientation ߠ [17]. In this study, a kinematic model is considered, taking into account linear and angular velocities for both leader and follower mobile robots, and a controller for each one is designed.

A. Leader-Follower Formation Modeling
In order to model the kinematics of the leader robot, we use the configuration ܲ ൌ ሾ‫ݔ‬ , ‫ݕ‬ , ߠ ሿ ் as shown in Figure 1. The control input for the leader robot is the linear velocity v l and the angular velocity w l . Mobile robot in 2D frame.
The equations of the leader robot can be written as: The mobile robot wheels exhibit purely rolling motion and that assumed without slip. The nonholonomic constraint is expressed as: The leader robot model under Matlab/Simulink is shown in Figure 2. Leader robot model.
The same constraint is observed for the follower robot. The follower robot is modeled relatively to the leader robot. It follows the leader while maintaining a desired relative distance and desired separation bearing angle with respect to the leader robot in a strategy known as separation bearing control ( Figure  1), where: ߮ is the separation bearing angle between the leader and the follower robot.
݈ denotes the separation distance between the center of the rear wheels of the leader, and the front castor of the follower robot.
‫,ݔ(‬ ‫)ݕ‬ is the position coordinates of the front castor of the follower robot.
݀ is the distance between the front castor wheel and the mid point of the rear wheels for each robot.
ሺ‫ݔ‬ , ‫ݕ‬ ሻ is the midpoint on the axis between the rear wheels. The follower position is calculated as: The follower robot model is represented with the state vector ܲ ൌ ൣ݈ , ߮ , ߠ ൧ ் expressed as: Finally, after differentiating the ܲ state vector we obtain the kinematic model for the follower mobile robot: with: Figure 3 illustrates the follower detailed model under Matlab/Simlink. The condition (7) is considered in order to avoid collision between the leader and the follower and must always be verified.

B. Control Strategy
The leader is controlled to follow a predefined path such as a circle or an eight shape. The control loop is presented in Figure 4. Considering a desired path, we can calculate the desired linear and angular velocities, and the kinematic controller is derived. In addition, the proposed adaptive controller is compare with a well-known kinematic controller presented in [18]. The kinematic controller explained with (8) is presented in detailed form in Matlab/Simlink in Figure 5.    In (8), x ൌ ‫ݔ‬ ௗ െ ‫ݔ‬ and ‫ݕ‬ ൌ ‫ݕ‬ ௗ െ ‫ݕ‬ are the current position errors in the axes ܺ and ܻ, respectively, ݇ ௫ 0 and ݇ ௬ 0 are the gains of the controller, ‫ܮ‬ ௫ ∈ Ը and ‫ܮ‬ ௬ ∈ Ը are saturation constants, and ሺ‫ݔ‬ , ‫ݕ‬ ሻ and ሺ‫ݔ‬ ௗ , ‫ݕ‬ ௗ ሻ are the current and the desired coordinates of the point of interest, respectively. The detailed model for the follower kinematic controller from [19] is given by (9) and is presented in Figure 6.  where: It is noticed that the kinematic gain controllers ݇ ௫ , ݇ ௬ , ݇ , and ݇ are constant during the mobile robot motion. So if one of the operation conditions changes, the actual gain value may no be adequate and may need to be adjusted. The main idea is to adjust the gain controller values in real time during the mobile robot operation.

A. Fuzzy Systems and Fuzzy Control
Fuzzy logic provides human reasoning capabilities to capture uncertainties, which cannot be described by precise mathematical models. Traditionally, fuzzy logic controllers have been applied to the development of a complete navigation problem of a mobile robot [3]. Fuzzy logic is widely used to control various types of systems and also to develop adaptive controllers [20,21]. The overall structure of a fuzzy controller is shown in Figure 8. Internal structure of a fuzzy controller. In this paper, the proposed fuzzy controller will be added to the main controller where it can adjust controller gains according to the distance error as presented in Figure 9. The same structure is used for all controller gains (leader and follower).

B. Adaptive Controller Parameter Calculation
Both leader and follower robots are controlled by a kinematic controller. The controller gains are unique in value in order to give best results in a specific system status. In practice, the system statuses are not the same, and we come to a point for what adaptive gain controllers are necessary to satisfy several statuses. The idea here is to make changes in gain controllers in real time when the distance error between the desired path and actual robot position is different from zero. The larger distance error, the higher adaptation value will be applied to the gain controller value. In Figure 9, we notice that if the distance error is equal to zero then we don't need the fuzzy logic adaptation, which means that if it's output is zero we must keep the original gain controller, therefore we add a constant to the proposed controller loop to avoid zero multiplication when the output of fuzzy controller is equal to zero. The fuzzy logic controller was chosen to be Mamdani inference and the membership functions for input and output are presented in Figure 10. The input is the distance error and the output is the adaptation gain.

IV. RESULTS AND DISCUSSION
To show the performance of the proposed controller, let's consider a group of two mobile robots in which one is the leader and one is the follower. The adaptation loop is inserted into the main control loop [19] for both. Circular and eightshaped paths are used to test the proposed controller. The simulations were carried out in Matlab/Simulink. All robots and controller equations were modeled in Matlab/Simulink blocs. The proposed fuzzy adaptive controller was implemented with the Fuzzy Logic Toolbox of Simulink. The simulation parameters were: Leader-follower formation parameters: The desired path generator modeled in Matlab/Simulink is shown in Figure 11. A comparison study was carried out between the kinematic controller ( [18] for the leader and [19] for the follower) and the proposed adaptive kinematic fuzzy controller, considering paths and distance error. The results of the leader with and without adaptive controller are displayed in Figure 12 which shows the results of following a trajectory with circular path (Figure 12(a)), the error distance (Figure 12(b)), and the gain adaptation for x and y gain kinematic controller (Figure 12(c) and 12(d) respectively). It is noticed that the adaptation makes results better with a fast time response. The gain controllers are adapted to the distance error. The same remarks are observed for the eightshaped path in Figure 13(a)-(c). The adaptation ensures that the system will not go out of the desired path once it reaches it because the gain controller will be decreased to a lower value while approaching the desired path. From Figure 13(b) and 13(c), we can see that at the beginning, the gain controllers are at high values because the robot is far from the desired path and decrease as the robot comes close to it. This technique will ensure that the system will not lose stability once it reaches its desired path.
As the next step, we give the results of the formation control for leader and follower with kinematic controller and our adaptive fuzzy kinematic controller. Similarly to the leader result, the two paths are tested. Figure 14(a)-(c) represent respectively the circular path, the distance between the leader and the follower, and the bearing angle between the leader and the follower. Gain controller adaptation (for ݈ and ߮ ) is displayed in Figure 15. It is clear from the results shown in Figure 15 that the adaptive controller performs better than the kinematic one. The follower reached quickly the desired distance and bearing angle with the leader. The same observations are seen in Figure 16. The obtained results show an improvement with the proposed adaptive kinematic fuzzy-based controller compared to the ones in [18,19]. Comparing the results, we can see that the system remains stable in our tests due to gains adaptation which will avoid excess value in gain controllers especially when the robot reaches its desired path. The time response will be faster and no oscillation can be seen after reaching the desired path.
V. CONCLUSION An adaptive fuzzy kinematic controller has been proposed in order to solve the tracking control and leader-follower formation problems. An auxiliary fuzzy controller was inserted into the main kinematic control loop to make the adaptive controller gains according to distance and bearing angle errors. Simulations were carried out using two paths (circular and eight shaped) to test the effectiveness of the proposed controller. The obtained results showed that the proposed controller was better when compared with the kinematic controller in terms of time response for both tracking and formation control. For future work and to enlarge the present work, dynamics and obstacles avoidance will be considered.

APPENDIX
The follower position is calculated geometrically according to the leader position using the model presented in Figure 17.