Abstract

We present a fractional order PI controller (FOPI) with SLAM method, and the proposed method is used in the simulation of navigation of NAO humanoid robot from Aldebaran. We can discretize the transfer function by the Al-Alaoui generating function and then get the FOPI controller by Power Series Expansion (PSE). FOPI can be used as a correction part to reduce the accumulated error of SLAM. In the FOPI controller, the parameters () need to be tuned to obtain the best performance. Finally, we compare the results of position without controller and with PI controller, FOPI controller. The simulations show that the FOPI controller can reduce the error between the real position and estimated position. The proposed method is efficient and reliable for NAO navigation.

1. Introduction

More than 95% of the control loops are of PI/PID type in process control, but only a few of control loops work well [1]. There are some problems in PI/PID control, such as bad tuning, incorrect implementation techniques, some restrictions and limitations, and actuator and sensor problems.

Using the notion of fractional order, it may be a step closer to the real world life, because many real physical systems are well characterized by fractional order differential equations [2]. So a considerable amount of research in fractional order dynamic systems and controllers was published in scientific and engineering literature in the last few years. Modern examples of applications are bioengineering [3], physics [4], chaos theory [5], viscoelasticity [6], and many others (see, e.g., [7]). Fractional order controllers can be expressed by fractional order differential equations. Fractional order controllers have been used in industrial applications [8] and various fields such as power electronics [9], system identification [10], robotic manipulators, irrigation canal control [11], mechatronics systems [12], and heat diffusion systems [13]. In addition, the stability is an essential property of systems, for example, for the stability of conventional systems of integer order and for fractional systems. So the stability issues for fractional order have been solved [2, 1419].

In this paper, we will study fractional order PI (FOPI) controller combined with SLAM in the navigation of humanoid robot because of the limitation of PI controller. In the FOPI controller, the parameters (, , and ) need to be tuned based on some design specifications. The results will be compared without controller and with PI controller, fractional order PI controller.

The rest of this paper is organized as follows: the FOPI controller used in the NAO robot navigation control is presented in Section 2, the background knowledge of SLAM and the NAO robot are described in Section 3, and the simulation results and conclusion are given in Sections 4 and 5, respectively.

2. Fractional Order PI Controller

2.1. Fractional Calculus

The fractional order was proposed as a generalization of the PID controller [20]. A general fundamental operator is denoted as follows: where and are the limit of the operation, is the fractional order, which can be any complex number, and is the variable of integration.

Commonly, there are three methods to define the fractional calculus [21].

2.1.1. Grünwald-Letnikov Definition

Consider where is the binomial coefficient, is the integer part, is the calculation of step length, and is gamma function.

2.1.2. Riemann-Liouville Definition

Consider

2.1.3. Caputo Definition

Consider

For zero initial conditions and lower limit , the Laplace transform of fractional derivatives is

2.2. Fractional Order Controller

From the definition, it is shown that the fractional order differential is different from the integer order differential. It is not to obtain the limit values at the point, but it is related to the function values from the initial time to this point time. So the fractional order PI has memory.

The typical -term linear fractional order differential equation as is follows: where and are arbitrary real numbers. Assuming , because of no loss of generality.

Assume (6) meets the zero initial condition; we can get the continuous fractional order transfer function by using Laplace transform technique: For the discrete fractional order control system, the equation transform is available: where is the transform function from domain to domain.

In general, the discretization of continuous fractional order differentiator/integrator () can be expressed as . So the generating function and its expansion determine both the form of the approximation and the coefficients [22]. We can get different generating function because of different calculation method. As a generating function, , the following formula can be used in general: where and denote the gain and phase tuning parameters, respectively, and is the sampling period. For example, when and , the generating function (9) becomes the forward Euler, the Tustin, the Al-Alaoui, the backward Euler, and the implicit Adams rules, respectively [23]. We will consider the Al-Alaoui generating function of the form

The discretization formal for GL formula (2) is given after performing the PSE (Power Series Expansion) of . By using the short memory principle [24], the discrete equivalent of the fractional order integrodifferential operator is given by where is the sampling period, is the memory length, and are binomial coefficients (), , and .

We use the FOPI controller, and its transfer function can be expressed as

With the Al-Alaoui operation, we can obtain

The third order expansion by using PSE method is where Equation (14) can be given by And it can be expressed as So we can get

3. Background of SLAM and NAO Humanoid Robot

The simultaneous localization and mapping (SLAM) is a process by which a robot can build a map of an environment and at the same time use this map to deduce its location. In SLAM, both the trajectory of the platform and the location of all landmarks are estimated online without the need for any a priori knowledge of location [25, 26]. EKF-SLAM is very well known to navigation problems. The main steps of SLAM include robot motion prediction, new landmarks initialization, and known landmarks correction.

The observation model is where is robot state vector and landmark states, is the observation function, and is the measurement noise.

The covariance matrix is where is Jacobian matrix and is the Gaussian noise.

The EKF correction step is written as where is the innovation’s mean, is the observation position of the robot, is Jacobian matrix, and is the covariance matrix of the measurement noise.

Kalman gain is .

The update position of the robot is

The correction covariance matrix is

NAO is a new biped robot recently developed by French company Aldebaran-Robotics. This humanoid robot had been designed purposely to look approachable. With a height of 0.57 meters and weight of about 4.5 kilogram, NAO has the appealing appearance of a human toddler [27]. Based on NAO robot, the FOPI controller as the correction part is used in the SLAM simulation of NAO navigation in this paper.

4. Simulation Result

4.1. Control System Model

When NAO robot moves in 2D space, the motion is mainly influenced by three variables, namely, the robot current position, the control variable, and the disturbance variable. Therefore, it is very important to reduce the accumulated error for robot and effectively overcome the negative influence of disturbance variable.

NAO will deviate from a set target because there is no correction part to compensate noise of the sensors. When the control U is a fixed value, the real position and estimated position of the NAO will be largely different. So we use controller as the correction part to reduce the error. The correction part is based on the return error of the real position and estimated position of NAO. The outline of this correction part is presented in Figure 1.

4.2. Algorithm Performance Index

Because the NAO in SLAM mainly produces two kinds of errors, so the average error index of robot position, the average error index of landmarks, and the average variance index of robot position are proposed to test the performance of the controller. The average error index of robot position is the average different value between the real position and the estimated position. When NAO moves in steps, the definition is expressed by where is the error of and and is the number of steps.

If the number of landmarks is and is the error of the real landmarks and estimated landmarks, the average error index of landmarks is defined as follows:

According to (24) and (25), we can see that the smaller the average error, the better the control effect. But it could not judge the stability of the control system from the single average error index. So we define the average variance that shows the distribution degree of error. The average variance is defined as follows: The smaller the average variance, that is, every step error of NAO is close to the average error, the better the stability of the control.

4.3. Control Algorithm Comparison

Figures 2 and 3 show the simulation result of SLAM with the fixed U and PI controller, respectively. The three stars are the landmarks. The red points and green points are the real position and the estimated position, respectively. The circles on the green points are the covariance of the robot. The circles become smaller when the robot is near the landmark. The green circles are the estimated landmarks.

In this paper, if not specified, abscissa represents steps, and ordinate represents the error. Figure 4 shows the error of the different with PI controller in EKF-SLAM. When , the PI controller cannot effectively adjust the control variable according to the error. And when , the control variable generated from PI controller can basically make the estimated position trace to the real position. But when is too large, the PI control variable cannot keep stable, so we cannot follow the estimated position of robot.

Figure 5 shows the comparison of the errors with fixed U and PI controller. It can be seen that the error with PI controller is far less than the one with the fixed U. However, when the steps of the robot motion increase, the error generated from PI controller also gradually increases. So PI controller cannot efficiently reduce the accumulated error of the robot with the increasing steps. Therefore, we use FOPI controller to decrease the error in the motion process. There are three parameters (, , and ) to be tuned.

From Figure 6, we can know that the scope of is 0.7–0.9, is about 0.2, and is the value of about 0.1. In Figure 6(c), if the parameter increases, the result of controller will become bad. But when is too small, the effect of integral is not obvious, so the value of is about 0.1. In the permitted range of proportional coefficient and integral coefficient , the FOPI error influenced by the changing of or will not be a linear increasing trend, and its curve will move up or down with the increasing or . There is a fundamental difference between FOPI controller and PI controller. The error in FOPI controller has oscillation trend, which reflects that FOPI has a better control performance.

Based on the analysis of the parameters, this paper selects the optimal parameters (, , and ) of FOPI controller. The simulation of motion result of EKF-SLAM with FOPI controller is given in Figure 7. We can conclude that FOPI control can keep stable and get a better dynamics performance. The NAO robot’s estimated position has almost completely been close to the real position.

Figure 8 is the comparison between the optimal parameters of FOPI controller (, , and ) and PI controller (, ). We compare them with the fixed U. The results verify the validity of FOPI controller. The average error and average variance are listed in Table 1. When NAO moves 0.5 each step, we can get that the error rate has got to 14% with PI controller and the error rate to approximately 3% with FOPI controller from Table 1. According to the index, it is shown that FOPI controller has better stability and higher accuracy. In addition, the average errors of the real landmarks and estimated landmarks with PI and FOPI controller are given in Table 2. We get the errors between the real landmarks and estimated landmarks based on the coordinates [1, 2, 5, 8, 11, 14]. In order to ensure the accuracy of simulation, we do the simulation 30 times, respectively, and get the in Table 2. We can see that the errors between the real landmarks and estimated landmarks based on FOPI controller with EKF-SLAM are much smaller than PI controller.

From the above figures and tables we can see that the pros and cons of three control methods are very obvious. FOPI controller is superior to PI controller, and PI controller is better than the fixed U control. The error of the robot movement with FOPI controller gradually tends to zero with the increasing steps. Moreover, the error of FOPI controller will not gradually increase and remain oscillation trend within a certain number of steps. It is shown that FOPI has a better performance than PI.

5. Conclusion

In this paper, FOPI controller with EKF-SLAM is proposed. FOPI can be applied as a correction part. FOPI controller with EKF-SLAM can effectively reduce the accumulated error. The simulation shows that the FOPI controller is better than PI controller in NAO robot. The feasibility of FOPI is valid for the error of robot position and the error of landmarks. The feasibility of the proposed algorithm is validated by simulation results. In the future work, we can apply FOPI controller with SLAM to NAO platform and do the experiment in order to finish the navigation indoors environment. In addition, it is worth studying how to generalize the two-dimensional EKF-SLAM problem to the multidimensional EKF-SLAM problem.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

The work was partly supported by the National Natural Science Foundation of China (NSFC) under the Project Grant no. 51275439 and the 973 Plan under the Project no. 2013CB733003, and the Natural Science Foundation of Hebei Province of China under the project no. F2014203095.