Table of Contents Author Guidelines Submit a Manuscript
Discrete Dynamics in Nature and Society
Volume 2011 (2011), Article ID 516031, 11 pages
Research Article

An FPGA-Based PID Controller Design for Chaos Synchronization by Evolutionary Programming

1Department of Electrical Engineering, National Chin-Yi University of Technology, Taichung 411, Taiwan
2Department of Electrical Engineering, Far-East University, No. 49, Zhonghua Rd., Xinshi Cist., Tainan 74448, Taiwan
3Department of Electrical Engineering, National University of Tainan, Tainan 700, Taiwan

Received 7 April 2011; Accepted 26 June 2011

Academic Editor: Marko Robnik

Copyright © 2011 Her-Terng Yau et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


This paper is concerned with the design of a field programmable gate arrays- (FPGAs-) based digital proportional-integral-derivative (PID) controller for synchronization of a continuous chaotic model. By using the evolutionary programming (EP) algorithm, optimal control gains in PID-controlled chaotic systems are derived such that a performance index of integrated absolute error (IAE) is as minimal as possible. To verify the system performance, basic electronic components, including OPA resistor and capacitor elements, were used to implement the chaotic Sprott circuits, and FPGA technology was used to implement the proposed digital PID controller. Numerical and experimental results confirmed the effectiveness of the proposed synchronization procedure.

1. Introduction

In recent years, chaos synchronization has attracted the interest of researchers in various fields [1]. Chaos synchronization has many potential applications in physics and engineering and particularly in secure communication [2]. The idea of synchronizing two identical chaotic systems was first introduced by Pecora and Carroll [3]. In continuous-time chaotic systems, synchronization is usually achieved by a master-slave or drive-response approach. Given a master (drive) and slave (response) in a chaotic system, the goal is synchronizing the behavior of the slave (response) system to that of the master (drive) system. To achieve the synchronization, a nonlinear controller must be designed to obtain signals from the master and slave systems and to manipulate the slave system. Recently developed control methods can achieve chaos synchronization between two identical chaotic systems with different initial conditions [1]. However, none of the proposed methods in our surveyed papers can obtain an optimal or near-optimal digital controller for synchronizing continuous chaotic systems according to a performance index specified by an FPGA chip.

Conversely, evolutionary programming (EP) algorithms have proven effective and easy to implement for global optimization of complex functions and for solving complex control problems in engineering [4, 5]. Generally, the four steps in the global optimization algorithm are initialization, mutation, competition, and reproduction. Furthermore, Cao [4] also developed a quasirandom sequence (QRS) for generating an initial EP population that avoids formulating clusters around an arbitrary local optimal.

In fact, implementing this technique in digital electronic devices such as field programmable gate arrays (FPGAs) can accelerate the development of prototype circuits such as control and real-time simulation circuits [6]. The FPGA comprises thousands of logic gates, some of which are grouped into a configurable logic block (CLB) to simplify higher-level circuit design. Because of its simplicity and programmability, the FPGA is the preferred option for chip prototype design.

The main objective of this work was to develop an EP-based digital PID control scheme for solving synchronization problems in FPGA-based chaotic systems. The EP algorithm derived optimal control gains in PID-controlled chaotic systems such that the performance index of integrated absolute error (IAE) was minimized and the master and slave chaotic systems were synchronized. The optimal architecture for digital controller was then implemented and simulated by very high-speed description language (VHDL) and ModelSim. The developed architectures for each component were then implemented and tested under the Xilinx Spartan-3 FPGA. Finally, simulation and experimental results were compared to confirm the effectiveness of the proposed EP-based digital PID scheme for chaos synchronization.

2. System Description and Problem Formulation

First, consider two single-input single-output (SISO) master and slave systems described by the following differential equations:

Master system:

Slave system: where and are the state vectors of master and slave systems, respectively. The is a given nonlinear function. The and are the outputs of the master and slave systems, respectively. The and are the system matrices. The is the control input included in the slave system (2.2) to synchronize the master and slave systems. Generally, many chaotic systems can be expressed by (2.1). For example, the Sprott circuit, the modified Chua's circuit, the Duffing-Holmes system, the Lorenz system, and the Lu system all belong to the class defined by (2.1).

Let the error states be . The objective of this study was to use the EP algorithm to design a simple but effective PID controller that can synchronize coupled systems (2.1) and (2.2) under different initial conditions such that

The procedure for determining the PID controller is to first define the output error signal and then to define the continuous form of a PID controller with input and output . The conventional equation is where is the proportional gain constant, is the integral time constant, and is the derivative time constant. When using the FPGA chip to implement this controller, the continuous-type PID controller (2.4) is reformulated as a digital-type PID controller as shown below:

Here, is the th sampling output data of the PID controller, is the error sum, and is the sampling time constant. Therefore, (2.5) can be rewritten as where is the integral gain constant and is the derivative gain constant.

The performance criterion or objective function of a controller design can generally be defined according to the desired specifications. The two performance criteria typically considered in the EP algorithm are the integrated squared error (ISE) and the integrated absolute error (IAE). This study uses the IAE index as the objective function (OF), which is given as where , is the Euclidean norm of a vector, is the sampling time point, and is the total number of samples. Below, the EP algorithm is used to minimize the objective function score (2.7) by tuning the digital PID controller and optimizing the gain parameters.

3. Evolutionary Programming (EP) Algorithm for Solving the Optimization Problem

Since the EP algorithm is considered an easily implemented and promising technique for the global optimization of complex functions, this study introduces an EP algorithm for solving this problem. Figure 1 shows the proposed EP-based PID control system includes synchronized master and slave chaotic systems, a PID controller, and an EP algorithm. The is the output of the master system, is the output of the slave system, and is the control input generated by the PID controller as defined in (2.5). The parameters of the proposed PID controller are derived by the EP algorithm such that the value of IAE given in (2.7) is minimized.

Figure 1: Block diagram of chaos synchronization system.

This section proposes an extended EP algorithm for obtaining the digital PID controller with optimal gain parameters to minimize the following objective function () score (2.6). Let be the continuously differentiable matrix-valued function defined for , where and is the bounded search space. The optimization problem is to find such that the performance index of the system is minimized. Mathematically, the optimization problem (P1) can be formulated as follows. (P1): To find such that is minimized.

Based on the simulation results obtained in [4], an extended EP algorithm for solving the above optimization problem is applied as follows.

Step 1. Generate an initial population of size by randomly initializing each 3-dimensional solution vector according to the quasirandom sequence (QRS).

Step 2. Calculate the fitness score (objective function) for each , where

Step 3. Mutate each , based on the statistical data to double the population size from to , and generate by using where denotes the th element of the th individual, represents a Gaussian random variable with a mean zero and variance , is the sum of all fitness scores, and is a parameter to scale .

Step 4. Use (3.2) to calculate the fitness score for every . In the stochastic competition process, randomly competes with . If , wins; otherwise, wins, and is replaced by . After completing the competition process, select winners for the next generation, and let the individual with the minimum objective function in the winners be .

Step 5. If the value converges to a minimum value, then let be the global optimum value and such that the OF performance index of the system is minimized. Otherwise, return to Step 3.

4. Simulation and Experimental Results

This section describes the proposed EP-based digital PID controller design for synchronizing Sprott circuits, which are the chaotic systems typically studied in the literature [7, 8]. Now consider the following Sprott circuits:


Slave: where and denote the derivatives of and , respectively, with respect to time . In this example, the initial conditions for master and slave are and , respectively. Matlab and Simulink are used to solve the optimization problem (P1), where and . The proposed EP algorithm generates according to the QRS. Several manipulations of the EP algorithm gets the convergence curve of IAE value versus iteration depicted in Figure 2. Figure 2 clearly shows that convergence occurs after about 170 iterations, and the final value of IAE is . The corresponding PID control gains are . Figure 3 also shows the , , and trajectories during the evolutionary procedure. Figure 4 shows the output response when using the resulting PID control gain . The simulation results confirm that the EP algorithm and proposed PID controller effectively synchronize Sprott chaotic systems.

Figure 2: Convergence curve of IAE.
Figure 3: Iteration response of .
Figure 4: Time responses using the EP-based PID controller. (a) . (b) . (c) . (d) The error states . (e) The control input. (The control is activated at  sec.).

The proposed PID controller was then tested in an actual system. Figure 5 [8] shows the experimental results when (4.1) and (4.2) were applied in a circuit connected in a master/slave configuration. Figure 6 shows how the controller was implemented with Xilinx Spartan-3 FPGA and AD/DA converters and a 1289 kHz sampling rate. Figure 7 shows that the slave circuit response was synchronized to the master circuit response after the control was activated at second. The experimental results of error dynamics in Figure 7(d) show the convergence to a very small synchronization error.

Figure 5: Electronic implementations of Sprott circuits. (a) master system; (b) slave system.
Figure 6: The Black diagram (a) and the photograph (b) of the proposed chaos synchronization system.
Figure 7: Experimental results of synchronization. (a) (b) . (c) . (d) The error states .

5. Conclusions

A simple and successful digital PID controller for an FPGA chip was proposed for using an evolutionary programming algorithm to synchronize two chaotic systems. The derived EP algorithm efficiently obtains the gains for three PID controllers by solving specified optimization problems. Moreover, the effectiveness of the proposed EP-based PID scheme was then demonstrated in a chaotic circuit system. The simulation and experimental results confirm that the proposed methods are effective and practical. Compared to existing methods of chaotic synchronization, the proposed FPGA-based optimal PID controller is not only effective, but also simple in terms of design and implementation.


The authors would like to thank Y.-C. Pu for his contribution to this paper.


  1. G. Chen and X. Dong, From Chaos to Order: Methodologies, Perspectives and Applications, World Scientific Publishing Company, Singapore, 1998. View at Zentralblatt MATH
  2. L. Kocarev and U. Parlitz, “General approach for chaotic synchronization with applications to communication,” Physical Review Letters, vol. 74, no. 25, pp. 5028–5031, 1995. View at Publisher · View at Google Scholar
  3. L. M. Pecora and T. L. Carroll, “Synchronization in chaotic systems,” Physical Review Letters, vol. 64, no. 8, pp. 821–824, 1990. View at Publisher · View at Google Scholar · View at Zentralblatt MATH · View at MathSciNet
  4. Y. J. Cao, “Eigenvalue optimization problems via evolutionary programming,” Electronics Letters, vol. 33, no. 7, pp. 642–643, 1997. View at Google Scholar
  5. W. D. Chang and J. J. Yan, “Optimum setting of PID controllersbased on using evolutionary programming algorithm,” Journal of the Chinese lnstitute of Engineers, vol. 27, no. 3, pp. 439–442, 2004. View at Google Scholar
  6. Z. Zhou, T. Li, T. Takahashi, and E. Ho, “FPGA realization of a high-performance servo controller for PMSM,” in Proceedings of the 9th IEEE Applied Power Electronics Conference and Exposition, vol. 3, pp. 1604–1609, 2004.
  7. J. C. Sprott, “A new class of chaotic circuit,” Physics Letters, Section A, vol. 266, no. 1, pp. 19–23, 2000. View at Publisher · View at Google Scholar
  8. D. I. R. Almeida, J. Alvarez, and J. G. Barajas, “Robust synchronization of Sprott circuits using sliding mode control,” Chaos, Solitons & Fractals, vol. 30, no. 1, pp. 11–18, 2006. View at Publisher · View at Google Scholar