In this study, a neuro-fuzzy coordination for multiple mobile robots is presented. In coordination of a group of mobile robots in real environment, the formation and the method for communication of mobile robots are important tasks. For these problems, a method which implies two level controllers architecture based on a PID and an adaptive neuro-fuzzy is used to coordinate multi robots toward goals. A fuzzy logic system is designed with two central behaviors, path following and coordination. The fuzzy model has been identified by subtractive clustering algorithm and trained by adaptive neuro-fuzzy interface system. A learning algorithm based on neural network is developed to tune parameters of membership function, which reduce errors of coordination and path-following. Our coordination is based on a leader-followers conception which means one of the robots acts as a leader and related to its position, follower robots go along with it. Simulation and experimental results demonstrate the effectiveness of the proposed coordination.
PDF Abstract XML References Citation
How to cite this article
Multi-mobile robots can do a task faster and more structured together to increase the system effectiveness (Ishida et al., 1994; Ghabcheloo et al., 2006). The applications of multi-robot systems may involve different fields, e.g., industrial, military and service robotics (Wang, 1992; Barfoot and Clark, 2004; Chen and Luh, 1994).
Different formation control strategies (Balch and Arkin, 1998; Gerkey and Mataric, 2004; Cao et al., 1995; Wang, 1992; Ghommam et al., 2010) proposed on this topic. However, multi-robot coordination methods can be divided into three different categories: virtual structure, behaviour and leader-follower. Each of them has advantages and drawbacks.
The virtual structure approach treats the entire formation as a single virtual rigid structure (Do and Pan, 2007; Beard et al., 1999). The main disadvantage of the virtual structure implementation is the centralization, which leads a single point of failure for the whole system.
By behaviour based approach, several desired behaviours are prescribed for each robot and desirable group behaviour emerges without an explicit model of the subsystems or the environment. The limitation of behaviour based approach is that it is difficult to analyze mathematically, therefore it is hard to guarantee a precise formation control (Balch and Arkin, 1998).
In the leader-follower approach (Wang, 1992), one of the robots is designated as the leader, with the rest robots as followers. The follower robots need to position themselves relative to the leader and to maintain a desired relative position with respect to the leader. In order, to prescribe a formation manoeuvre, we need only to specify the leader motion and the desired relative positions between the leader and the followers. When the motion of the leader is known, the desired positions (desired distance and orientation) of the followers relative to the leader can be achieved by local control law on each follower. This approach is characterized by simplicity, reliability and no need for global knowledge and computation. However, the disadvantage related to this approach is that there is no explicit feedback to the formation, that is, no explicit feedback from the followers to the leader in this case.
The problem of leader-follower robot navigation and coordination is broken down: place detection, localization, path planning and formation (Cao et al., 1995). Coordination problem necessitates the knowledge of localization of leader robot and initial positions of follower robots. In leader-follower approach, leader robot should interpret the sensed information to obtain knowledge of its location to be capable of guiding the follower robots. Neuro-fuzzy based approaches are used to navigate mobile robots in known and unknown environments (Zhu and Yang, 2007; Li et al., 2004; Antonelli et al., 2007). In these studies a real-time fuzzy target tracking control scheme for mobile robots by using sensors are designed. This study focuses its attention to solve the problem of coordination of a group of mobile robots with two level controllers and considering leader-follower conception. The low level controller is designed to adjust the linear and angular velocities of each robot to allow path following with the holding constraint kinematics. On the other hand a high level controller is presented to coordinate mobile robots in different formations. Leader- followers conception is implied to coordinate among robots which means one of robots act as a leader and depends on its localization give commands to each independent follower robots to guide them on the desired path and formation. In this study we suppose robots move on the smooth paths. The neuro-fuzzy controller is trained with rules as; If robot which is leader is very far or far from followers, it will send commands to the followers robots to stop or decrease their linear velocities till the leader catch them in meanwhile the leader robot moves faster. If leader is ahead on the path, commands will send to the followers to go faster or leader robot will stop until the followers robots can catch the leader. To reach this kind of formation, we used adaptive neuro-fuzzy controller to train and control robots.
The following problems in this study have been considered:
|•||Path planning and coordination|
|•||Velocity and position control|
|•||Wireless communication based on Application Programming Interface (API) and sensor network communication|
To overcome the above problems for multiple mobile robots in a real environment, the following approaches will be presented:
|•||Develop an optimized neuro-fuzzy controller to coordinate multi robot systems while achieving different formations and control missions|
|•||Design of a wireless communication with a Zigbee technology which give capability of network communication|
In this study, we present a neuro-fuzzy control strategy to coordinate multiple robots by using localization data based on the robot which acts as leader. The proposed approach does not require the position of follower robots in training procedure, only it needs their initial positions. But positions of follower robots are measured to overcome uncertainty on their positions in path following and validate coordination algorithm. It does not require a path to be generated and tracked either for followers. The controller is able to decide about the motion direction at each time interval by processing the information obtained from the leader robot. The simulation and experimental results demonstrate the effectiveness of the developed algorithm.
All controller, path planning and coordination in this study are implemented on multiple mobile robots called EtsRos. These robots have four wheels which two front wheels are dc-motor powered.
MODELING AND KINEMATICS OF MOBILE ROBOT
Figure 1 shows the general model of system which is used to coordinate multiple mobile robots. As can be seen in Fig. 1 sensors mounted on DC motors of the leader robot can localize the leader robot and then its position can be estimated. Path following and coordination between leader and follower robots are given by a neuro-fuzzy algorithm.
Figure 2 shows a kinematics model of the mobile robot. The generalized coordinates are q = (x,y,θ,φ) where, (x,y) the Cartesian coordinates of the rear-axle midpoint, θ measures the orientation of body with respect to the x-axis and φ is the steering angle.
|Fig. 1:||Infrastructure of multi robot coordination|
|Fig. 2:||Model of mobile robot|
where, ηi = [xi,yi,θi] denote the position and orientation vector of the ith robot of the group and v i is linear velocity and ωi is angular velocity. The system is subject to nonholonomic constraints such as:
Linear velocity vi(t) and the orientation angle θi(t) with respect to t can be calculated as:
And angular velocity ωi(t) is calculated by deriving of orientation with respect to t as:
GENERATION OF TRAINING DATA
Here, the generation of training data which are based on the position and trajectory of leader robot and initial positions of follower is explained in detail. In order to plan a path following and coordination for a group of mobile robots, the principal idea is to construct a mapping between the posture of the leader robot and linear and angular velocities of the leader and followers robots. We consider sine paths which is smooth and feasible path such that the robots can follow. The first step is the generation of an appropriate training data set. The input-output data pairs have been obtained by adopting a sine wave path and discretizing it to 400 sampling points.
|Fig. 3:||Different formations of mobile robots|
The offline generation of the adopted path is based on knowing path and the initial position of robots. The training data set has been generated for the five different formation corresponding to position of leader and followers mobile robots. These five formation can be considered as follow: (1) leader robot is very far back compares to follower robots, in this situation, leader robot move very fast to reach the follower as follower robots move in desired speed, (2) leader robot is far back, in this situation, leader robot moves fast to reach the follower as follower in a desired speed, (3) leader robot is in the same position (x-reference) as followers robots, in this situation, leader robot moves in the same speed of follower on the path, (4) leader robot is far ahead, in this situation, leader robot stops and follower robots move until they catch leader and (5) Leader is very far ahead, again in this situation, leader robot stops and follower robots move until they catch leader. Figure 3 shows these different formations which are considered for training. In Fig. 3, F1 and F2 show the follower robots. Dashed lines show the desired trajectories for leader robots and red line represent desired trajectory for leader robot. Coordination between leader and follower robots is considered in training procedure.
For compatibility with the real Lab environment, a plane of 7 meters in length and 4 meters in width is considered for training which can be used in the simulation and experimental tests. Figure 4 shows the position of leader robot in x, y and θ coordination considering the training with fifth different formations. Figure 5a and b show the obtained linear and angular velocities used for the leader and follower robots in training.
|Fig. 4:||Position of leader robot in training|
|Fig. 5:||Linear and Angular velocities of robots. (a) Leader robot and (b) follower robots|
Each formation in training has been sampled to 400 points and five different formations are considered. Consequently the training data is a matrix with dimension of 2000x3 as an input and four matrixes which dimension of each is 2000x1 as outputs. The four output data are the linear and angular velocities for the leader and followers robots. We consider all follower robots as a unit and then we imply the same linear and angular velocities to them. With these input and outputs sets the subtractive clustering with Sugeno-type are made to train input-outputs.
NEORO-FUZZY CONTROLLER DESIGN
An effective solution to the online coordination and path following for a multiple mobile robots relies on the fuzzy logic based approach. The position of leader robot gives all necessary information to follow a desired path and coordinate between robots. Fuzzy networks can produce linear and angular velocities for leader and follower robots which result proper steering for robots. We have used the following type of first order Sugeno rules which is:
where, M is number of rules. The inputs to the fuzzy network controller are xl, yl and θl which present the position of leader robot in each point. These positions are obtained by the incremental encoder sensors mounted on the right and left motors on wheels of leader robot. vli, ωli and vfi, ωfi denote outputs of fuzzy networks which are the linear and angular velocities for leader and follower mobile robots. These fuzzy controllers provide the path following and formation to robots. Depends on the position of leader robot, the linear and angler velocities (vl, ωl) are calculated and sent to leader robot and in the same time the linear and angler velocities (vf, ωf) are calculated and sent as a command to follower robots. Four different 3-input 1-output training data has been prepared (from the different formations). Fuzzy rule antecedent membership functions have been identified by using the subtractive clustering algorithm with enumerative parametric search. The consequent parameters of the rules are optimized by Least Square Estimation (LSE). To find the appropriate number of rules and minimum Least Square Error (LSE), an optimization is done with different number of rules and the related LSE are obtained. Figure 6a and b show the result obtained for these 4 different fuzzy training sets.
|Table 1:||Fuzzy clustering data|
In view of the Number of Rules and LSEs, eight rule numbers are considered for all four fuzzy training networks. Table 1 shows the fuzzy clustering Fig. 6: Training data errors and rule numbers.(a) Leader robot and (b) follower robots date for these fuzzy networks. These date for these fuzzy networks. These data consist of Radius, Squash factor, LSE, accept and reject ratios.
The structure of the fuzzy inference system with 8 rules is depicted in Fig. 8. In Fig. 8, the inputs xl, yl and θl are measured by position of leader robot and outputs are the linear and angular velocities.
Figures 9a and b show the result obtained for output velocities after training is done. In this test, the initial position of leader robot is considered as and the initial position of follower robots are and .
Here, Adaptive Neuro-Fuzzy Inference System (ANFIS) which constructs a Fuzzy Inference System (FIS) whose membership function parameters are tuned (adjusted) using either a backpropagation algorithm alone or in combination with a least squares type of method is explained. The parameters associated with the membership functions changes through the learning process. To overcome overfitting the training data set by model and to process of model validation, a set of input output which sufficiently distinct from the training data is considered. In principle, the model error for the checking data set tends to decrease as the training takes place up to the point that overfitting begins and then the model error for the checking data suddenly increases. Figure 10a and b show the set of inputs and outputs used to validate ANFIS. A different formation from training is considered for checking validation. In this situation the initial position of leader robot is considered as and the initial position of follower robots are and .
The membership functions of the input variables identified by ANFIS are shown in Fig. 11.
|Fig. 6:||Training data errors and rule numbers. (a) Leader robot and (b) follower robots|
|Fig. 7:||Linear and angular velocities after a subtractive clustering. (a) Leader robot (b) follower robots|
|Fig. 8:||Fuzzy inference structure|
|Fig. 9:||Linear and angular velocities after subtractive clustering. (a) Leader robot (b) Follower robots|
|Fig. 10:||Checking data. (a) Input data (b) output data|
|Fig. 11:||Antecedent membership functions for the derived fuzzy model (Fuzzy network 1)|
|Table 2:||Antecedent parameters (leader robot)|
|Table 3:||Antecedent parameters (Follower Robots)|
|Table 4:||Consequent parameters (leader robot)|
|Table 5:||Consequent parameters (follower robots)|
The premise parameters which are identified by the cluster center c and the standard deviations σ of the extracted Gaussian membership function parameters are shown in Table 2 and 3 for all four fuzzy networks.
Figure 12 shows a general model for adaptive neuro-fuzzy used for modeling of our system. The inputs are position of leader robot and outputs are the velocities of leader and follower robots.
and the initial position of follower robots are
|Fig. 12:||Adaptive neuro-fuzzy model (fuzzy network 1)|
|Fig. 13:||Linear and angular velocities after ANFIS training. (a) Leader robot and (b) follower robots|
|Fig. 14:||Checking error versus epoch number. (a) Leader robot and (b) follower robots|
Figure 15 shows the EtsRo mobile robot used for the experimental set up. EtsRo is a four-wheel mobile robot, front wheels are equipped with two DC motors 7.5 Volt, 175 rpm which are installed on the right and left front wheels. The incremental Encoders are mounted on the motors counting with resolution 6000 pulses turn-1. The wheels have radius of r = 4.5 cm, the length, width and height of EtsRo are 23,20,11 cm, respectively. The total weight of robot is around 2.3 kg. Maximum linear velocity is 1.12 m sec-1 and maximum angular velocity is 574 rad sec-1. Figure 16 shows a general view of the experimental set up.
EtsRo has two-level control architecture as can be seen in Fig. 17. Low-level control algorithm is written in C language and run with a sampling time of Ts = 10 m sec.
There are two second-order filters designed to eliminate sparks on the velocities and two PID controllers are designed to reach the best accuracy for the right and left motors. High-level controller which is a neuro-fuzzy controller is designed in real-time simulink (Matlab) with a sampling time of Ts = 50 m sec. The PC communicates through a serial port with a modem and with API mode with robots. The speed of ZigBee modem is set on 9600 bits sec-1. In this project ATmega32 microcontroller is used which generates a PWM signal to control the motor speed. The STK500 development board is designed to be programmed from a PC computer and is supported by many software tools, such as the GCC compiler and development environment AVRStudio.
ZigBee USB-RF Modem is the communication device which used to transmit the data. The range of modem is about 100 m which make it a high-quality Modem for indoor applications. We need to communicate with the three independent entities from a single transmitter. In addition, all communication should be bidirectional.
|Fig. 15:||The mobile robot (EtsRo)|
|Fig. 16:||The general view of experimental set up|
To do this, a personal network is created to communicate with nodes (robots).
An address is assigned to each node and API mode is used to address the packets. In API mode, each node sending its data preceded by a frame which contains the destination address.
|Fig. 17:||Intelligent coordination and path-following architecture for multiple mobile robots|
The frame must be completed by a check sum which allows the receiver to confirm receipt of intact data. Leader robot send information of its position to the PC, PC receives the posture information, processes and referrals commands to each individual robot.
In each time, n data bytes will be send from PC to the robot, the size of data is 2x8 bits. Each robot sends back its position to the microcontroller and from there, left and right speeds are calculated and second-order filters remove spikes. Using the following equation we can find the right and left motor velocities:
where, vR(t) and vL(t) denote the right and left velocities and L shows the distance between wheels.
And then with using of the following equation, we obtain the linear and angular velocities:
And Cartesian coordination of mobile robots with:
In the first experimental test, the leader robot is placed far back of the follower robots with initial position of . And the initial position of follower robots are and accordingly. Figure 18 shows the results obtained in x,y coordinate which presents the position of mobile robot in path. As we can see in Fig. 18, the leader moves fast to catch the follower robots as it sends commands to followers to move in the slower speed. As soon as leader robots catch the followers, all robots continue to move on the sine path with the same speed.
In the second experimental test, the leader robot is p laced far ahead of the follower robots with initial position of . And the initial position of follower robots are and accordingly. Figure 20 shows the results obtained in x,y coordinate. As we can see in Fig. 20, the leader robot stops and sends commands to follower robots to move till all robots they arrive in the same point (x-reference). As soon follower robots catch the leader, all robots continue to move on the sine path.
|Fig. 18:||Coordination and path-following for multiple robots|
|Fig. 19:||Linear and Angular velocities for robots. (a) Leader robot (b) Follower robots|
|Fig. 20:||Coordination and path-following for multiple robots|
|Fig. 21:||Linear and angular velocities for robots. (a) Leader robot and (b) follower robots|
Path following and coordination for a group of mobile robots have been proposed in this study. The approach that has been developed is based on a leader-follower coordination conception and on-line path following. To reach the best performance and minimize the path following and coordination errors, a two level controllers are designed. To control the right and left motors mounted on the right and left wheels, a low level controller (PID) is considered and a high level controller based on a neuro-fuzzy interface is proposed which enable robots to follow the desired path and coordinate with minimum errors. Communication was designed with Zigbee technologies which enable to communicate with multiple mobile robots.
- Alexander, J.C. and J.H. Maddocks, 1987. On the kinematics of wheeled mobile robots. Intl. J. Robotics Res., 8: 15-27.
- Barfoot, T.D. and C.M. Clark, 2004. Motion planning for formations of mobile robots. Robotics Autonomous Syst., 46: 65-78.
- Campion, G., G. Bastin and B. D'Andrea-Novel, 1996. Structural properties and classification of kinematic and dynamic models of wheeled mobile robots. IEEE Trans. Robotics Automation, 2: 47-62.
- Beard, R.W., J. Lawton., F.Y. Hadaegh, 2001. A coordination architecture for spacecraft formation control. IEEE Trans. Control Syst. Technol., 9: 777-790.
- Gerkey, B.P. and M.J. Mataric, 2004. A formal framework for the study of task allocation in multi-robot systems. Int. J. Robotics Res., 23: 939-954.
- Ghommam, J., H. Mehrjerdi, M. Saad and F. Mnif, 2010. Formation path following control of unicycle-type mobile robots. Robotics Autonomous Syst., 58: 727-736.
- Wang, P.K.C., 1992. Navigation strategies for multiple autonomous robots moving in formation. J. Robotic Syst., 8: 177-195.
- Zhu, Z. and S.X. Yang, 2007. Neurofuzzy-based approach to mobile robot navigation in unknown environments. IEEE Trans. Syst. Man Cybernetics Part C: Appl. Rev., 37: 610-621.