1. Introduction
The well-known proportional–integral–derivative (PID) controllers are still widely employed in industrial process control even though many kinds of control theories have been developed. The popularity of a PID controller can be attributed to its good performance and functional simplicity. The three-mode controller contains a proportional (P), an integral (I), and a derivative (D) term to make a system yield a desirable response in settling time, steady-state error, and overshoot. An engineer can efficiently tune the three gains through experience or some simple principles, such as the classical tuning rules proposed by Ziegler-Nichols [
1]. Moreover, a simplified PI or PD controller is also popular for a multitude of practical applications.
A fuzzy logic controller (FLC) is based on fuzzy rules and fuzzy inference. The fuzzy rules can reflect human experience or knowledge, and exhibit nonlinearity to control more complex plants, which can be linear or nonlinear. Like conventional PI or PD controllers, FLCs also have PI-type or PD-type controllers. Essentially, a FLC design includes the type of FLC, the number and shape of membership functions (MFs), and the fuzzy rules [
2]. The genetic algorithm (GA) is employed to determine the optimal parameters of a system. Since the design techniques of conventional linear PID controllers have matured, it is advantageous to use the GA to optimize fuzzy PID controller design. Researchers have introduced an analytical design for an optimal fuzzy PID controller [
3], which has a simple structure, but uses complicated procedures. Another optimal fuzzy PID controller combining a fuzzy PI controller with a fuzzy D controller was proposed [
4], but this device is actually a conventional PID controller with an adaptive control capability with complicated analytic formulas. An optimal fuzzy PID controller can also be built by combining a fuzzy PI controller and a fuzzy PD controller in parallelism [
5] with optimal tuning of scaling factors and MFs. The conventional PID controller can also be directly put in the optimal design for fuzzy controllers [
6], where the PID control is the master controller, and the fuzzy control is the slave control to enhance the master one.
The controller structure should be the primary consideration for a fuzzy PID controller design. As for the fuzzy control rules, in principle, they should follow conventional PID control. Then the problem of tuning the MFs in order to improve system performance must be solved [
7]. The shape of MFs can be defined by chromosome bits and optimized by the GA [
8,
9] to improve the system responses, such as speed and precision of control [
9,
10]. On the other hand, each fuzzy variable MF is usually set to a symmetrical shape. The adjustment of a MF from symmetrical [
11] to asymmetrical can also obtain improvements in system performance [
12]. Moreover, some researchers use scaling factors to normalize the operating ranges and tune scaling factors to finish optimization [
13]. In this paper, we choose to tune the operating ranges, which are important parameters for defining the equivalent FLC from a conventional PID controller.
In recent decades, many evolutionary algorithms have been developed, such as the particle swarm algorithm (PSO), cuckoo search (CS), and so on. Evolutionary programming (EP) claims that the traditional GA will not only have a premature convergence, but may also be trapped in the local optima. A fuzzy PID controller design using a novel PSO-EP based hybrid algorithm has been found in [
14]. Furthermore, it is shown that a FLC + EP based PID controller provides a more rapid response than a FLC + GA based PID controller [
15]. In this paper, we will still apply GA, and give each optimized parameter its own crossover point in the GA process to enhance the GA’s efficiency.
As most optimal fuzzy PID controller designs with complex structures or a large number of tuning parameters, this study developed an optimal fuzzy PID controller with less parameters and a concise controller structure. Based on our previous work, the equivalence between fuzzy PID controllers and conventional PID controllers is shown in [
16]. Nonlinear factors are further proposed to represent the nonlinearity of the MFs distributed in the operating ranges. For each MF itself, it will exhibit an asymmetrical shape. In the proposed optimal fuzzy PID controller, there will be only a total of eight adjusted parameters. Moreover, if a conventional PID controller design can be obtained in advance, an equivalent FLC in the initial GA design can be used and this can potentially speed up the optimization process. Pelusi previously researched designing optimal control systems through GA and neuro-fuzzy techniques [
17,
18,
19], and the results can be utilized as a benchmark to compare with the proposed design. Furthermore, the proposed optimal fuzzy PID controller is also applied to the motor control system [
20], and the simulation results indicate speed control with good performance and the capability of disturbance rejection [
21].
This study presents the optimal fuzzy PID controller design (
Section 2), followed by the simulation results of Matlab/Simulink for verifying the proposed design (
Section 3). Finally, the concluding remarks are discussed (
Section 4).
3. Simulation Results
This section evaluates the performance of the proposed optimal fuzzy PID controller by considering a two-order plant and motor control systems. The simulation is verified by use of Matlab/Simulation.
Simulation 1: A Two-Order Plant
A two-order controlled plant is shown below with transfer function [
19]:
First, the unit feedback control structure is adopted, as shown in
Figure 5. A preliminary conventional PID controller design with
,
, and
can be obtained through some basic traditional techniques. Experiments to verify the proposed design approach can be seen in the following section.
Subsequently, we built the equivalent FLC for the above conventional PID controller design through the procedure shown below, which will satisfy Equation (4).
is set as , which is the range for .
is set as to satisfy .
is set as to satisfy .
is set as to satisfy .
The parameter
is set as 5, resulting in 5 fuzzy sets for each input variable of the FLC.
Figure 6 shows the settings of all the MFs in the Matlab environment. The linearity of the equivalent fuzzy PID controller can be verified by the control surface view shown in
Figure 7, which is similar to the plan surface shown in [
23]. The resulting equivalent fuzzy PID controller has almost the same system response as the conventional PID controller.
With the conventional PID controller design and the corresponding equivalent FLC, we finally have a basic understanding about the operating ranges of fuzzy I/O variables for a FLC. We can then add additional nonlinear factors and enlarge the operating ranges to find the optimal fuzzy PID controller through GA.
For the GA optimization, we use an 11-bit binary coding for each variable, and each generation contains 20 individuals. The search domains are confined to , , , and .
Moreover, the mutation rate is set as 0.1, and the elitism is applied to keep the best two individuals across generations. It is required to initialize a population with randomly generated individuals and evaluate the fitness value of each individual for the first step of GA. In this stage, our first attempt is taking the above equivalent FLC design,
= [1.33, 0.266, 44.33, 199.5, 1, 1, 1, 1], as one individual in the population of the first generation.
Figure 8 shows the performance of GAs across generations, where the optimal design with initial equivalent FLC may yield faster convergence with higher quality than the optimal design without initial equivalent FLC.
The step responses with the conventional PID controller (
,
,
) and the proposed optimal fuzzy PID controller (with initial equivalent FLC) are shown in
Figure 9. The resulting eight optimized parameters are shown in
Table 1. Furthermore,
Table 2 summarizes the response performance, including the rise time (
Tr), the settling time (
Ts), the percentage overshoot (
P.O.), and the steady-state error (
Ess), of Pelusi’s GNFC optimized controller [
19] and the proposed optimal fuzzy PID controller. Pelusi has provided many kinds of controllers, such as the genetic fuzzy controller (GFC), the neuro fuzzy controller (NFC), and the genetic neuro fuzzy controller (GNFC), but the GNFC has the best performance. Compared with Pelusi’s design, the proposed optimal FPID has smaller
Tr and
Ts, but a very small overshoot occurred at peak time
t = 0.08 s with amplitude 1.0173, as shown in
Figure 9. On the other hand, Pelusi’s GNFC controller belongs to a PD-type FLC, so
Ess cannot be eliminated.
Figure 10 shows the MFs of the fuzzy I/O variables in the proposed optimal fuzzy PID controller, and the control surface view under
is shown in
Figure 11.
Simulation 2: DC Motor Speed Control
High-performance motor drives are very important in many industrial applications. Based on the design procedure in Simulation 1, a separately excited dc motor with the physical parameters listed in
Table 3 is used as the controlled plant [
20], and
Figure 12 shows the constructed model in Simulink.
This is a speed control problem with the desired speed at 1200 rpm [
20]. The control structure is shown in
Figure 13 for both the PID controller and the proposed optimal fuzzy PID controller. The resulting speed responses of the initial conventional PID controller design with
,
, and
, and the proposed optimal fuzzy PID controller are shown in
Figure 14. The search domains of the operating ranges for this case are confined to
,
,
,
, and
.
The resulting eight optimized parameters are shown in
Table 4, and
Table 5 summarizes some response parameters of Singh’s optimized fuzzy-GA controller [
20] and the proposed optimal fuzzy PID controller. It shows that the proposed design has smaller
Tr and
Ts than Singh’s design. Finally,
Figure 15 shows all the resulting MFs of the fuzzy I/O variables.
Simulation 3: DC Motor Speed Control with Load Disturbance
To further verify the feasibility and disturbance rejection capability of the proposed design, a DC motor speed control example with load disturbance [
21] is adopted.
Table 6 shows the DC motor parameters, and
Figure 16 and
Figure 17 illustrate the desired speed command and load disturbance at
t = 3 s, respectively.
In this case, the sample-and-hold unit and the zero-order hold unit, which can be used to model A/D (analog-to-digital) and D/A (digital-to-analog) converters, are added to make a discretized FLC, as shown in
Figure 18. It must be noted that the gain (K) in the “discrete-time integrator” and “discrete derivative” is set as 1 [
16]. The system input and the resulting responses are shown in
Figure 19, with sampling period
ts set as 0.1 ms. The system responses in
Figure 19 include the initial conventional PID controller design (
= 0.42,
= 25.127,
= 0.012), and the proposed optimal fuzzy PID controller design. Furthermore, since we cannot obtain the response waveform of Al-Maliki’s design [
21], we run a similar response to Al-Maliki’s design by the proposed FPID.
Table 7 shows the eight optimized parameters of the proposed FPID design. The search domains of the operating ranges are confined to
,
,
,
, and
. Then the performance comparison between Al-Maliki’s Fuzzy PID with KF (Kalman Filter) [
21] and the proposed optimal FPID is summarized in
Table 8. Simulation results demonstrate that the proposed optimal FPID has smaller
Tr and
Ts than Al-Maliki’s design, but has a larger overshoot. Furthermore, the proposed design has good performance in disturbance rejection.
Finally,
Figure 20 shows all the resulting MFs of the fuzzy I/O variables of the proposed optimal FPID, and the control surface view under
is shown in
Figure 21.
There is another main reason for us to run a system response which is similar to Al-Maliki’s design [
21], as shown in
Figure 19. As we also hope to compare the responses of the controller outputs, which will indicate the power consumption of the implemented controllers, and this is very important to help us understand the transient behaviors of the system. For a separately excited DC motor, the speed is controlled by varying the source voltage to armature.
Figure 22 shows the controller outputs of the proposed optimal FPID and the proposed FPID with similar response to Al-Maliki’s design. The controller output of the proposed optimal FPID has a higher peak than Al-Maliki’s design.
To summarize of the above simulation examples, the proposed optimal fuzzy PID controller has quicker responses with smaller rising time and settling time. However, we still cannot claim that the proposed optimal FPID has outperformed other methods. In order to compare it with other approaches, we used the same
IAE performance index, shown in Equation (6), but it is not practical to only consider the error signal without considering the energy or the power consumption of the controller output. The proposed optimal FPID design features a simple controller structure and a straightforward design approach based on conventional PID control and only eight nonlinear factors.
Table 9 shows comparisons with the number of tuning parameters for different controllers.