Skip to main content
Log in

Adaptive functional-based neuro-fuzzy PID incremental controller structure

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

Abstract

This paper presents an adaptive functional-based neuro-fuzzy PID incremental controller structure that can be tuned either offline or online according to required controller performance. First, differential membership functions are used to represent the fuzzy membership functions of the input–output space of the three-term controller. Second, controller rules are generated based on the discrete proportional, derivative, and integral functions for the fuzzy space. Finally, a fully differentiable fuzzy neural network is constructed to represent the developed controller for either offline or online controller parameter adaptation. Two different adaptation methods are used for controller tuning, offline method based on controller transient performance cost function optimization using bees algorithm and online method based on tracking error minimization using back-propagation with momentum algorithm. The proposed control system was tested to show the validity of the controller structure over a fixed PID controller gains to control SCARA® type robot arm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Abbreviations

BA:

Bees algorithm

BP:

Back-propagating

FNN:

Fuzzy neural network

FFNN:

Feed-forward fuzzy neural network

FLC:

Fuzzy logic control

FLS:

Fuzzy logic system

FAM:

Fuzzy associative memory

FCE:

Fuzzy control element

FPCE:

Fuzzy proportional control element

FDCE:

Fuzzy derivative control element

FICE:

Fuzzy integral control element

MSF:

Membership function

MOM:

Mean of maxima defuzzification method

NN:

Neural network

NFPID:

Neuro-fuzzy proportional, integral, derivative controller

PID:

Proportional, integral, derivative controller

TS model:

Takagi and Sugeno model

References

  1. Ahn KK, Anh HPH (2009) Identification of the pneumatic artificial muscle manipulators by MGA-based nonlinear NARX fuzzy model. IFAC J Mechatron 19(1):106–133

    Article  Google Scholar 

  2. Anh HPH (2010) Online tuning scheduling MIMO neural PID control of the 2-axes pneumatic artificial muscle (PAM) robot arm. Expert Syst Appl 37(9):6547–6560

    Article  MathSciNet  Google Scholar 

  3. Arabshahi P, Choi JJ, Marks RJ, Caudell TP (1992) Fuzzy control of Backpropagation. IEEE international conference on fuzzy systems, 8–12 March 1992, San Diego, California, USA, pp 967–972

  4. Bao-Gang H, George KIM, Raymond GG (2001) A systematic study of fuzzy PID controllers-function-based evaluation approach. IEEE Trans Fuzzy Syst 9(5):699–712

    Article  Google Scholar 

  5. Berenji HR, Khedkar P (1992) Learning and tuning fuzzy logic controllers through reinforcements. IEEE Trans Neural Netw 3(5):724–740

    Article  Google Scholar 

  6. Breedon PJ, Sivayoganathan K, Balendran V, Al-Dabass D (2002) Multi-axis fuzzy control and performance analysis for an industrial robot. In: Proceedings of the IEEE international conference on fuzzy systems, vol 1, 12–17 May 2002, Honolulu, HI, USA, pp 500–505

  7. Er MJ, Yap SM, Yeaw CW, Luo FL (1997) A review of neural-fuzzy controllers for robotic manipulators. Thirty-second IAS annual meeting, IEEE industry applications conference, vol 2, 5–9 October 1997, New Orleans, Los Anglos, USA, pp 812–819

  8. Erbatur K, Kaynak O, Rudas I (1995) A study of fuzzy schemes for control of robotic manipulators. IECON twenty-first IEEE international conference on industrial electronics, control, and instrumentation, vol 1, 6–10 November 1995, Orlando, Florida, USA, pp 63–68

  9. Estevez PA, Nakano R (1995), Hierarchical mixture of experts and max–min propagation neural networks. IEEE international conference on neural networks, 27 November–1 December 1995, Perth, WA, Australia, pp 651–565

  10. Fahmy AA, Abdel Ghany AM (2013) Neuro-fuzzy inverse model control structure of robotic manipulators utilized for physiotherapy applications. Proc Ain Shams Eng J 4(4):805–829

    Article  Google Scholar 

  11. Fahmy AA, Kalyoncu M, Castellani M (2011) Automatic design of control systems for robot manipulators using the bees algorithm. Proc Inst Mech Eng Part I J Syst Control Eng. doi:10.1177/0959651811425312

    Google Scholar 

  12. Huang Y, Yasunobu S (2000) A general practical design method for fuzzy PID control from conventional PID control. The ninth IEEE international conference on fuzzy systems, vol 2, 2000

  13. Karasakal O, Yesil E, Guzelkaya M, Eksin I (2005) Implementation of a new self-tuning fuzzy PID controller on PLC. Turk J Electr Eng 13(2):277–286

    Google Scholar 

  14. Kawato M, Uno Y, Isobe M, Suzuki R (1988) Hierarchical neural network model for voluntary movement with application to robotics. IEEE Control Syst Mag 8(2):8–15

    Article  Google Scholar 

  15. Khan S, Adam A, Zahirul Alam AHM, Islam MR, Khalifa OO (2008) Rule-based fuzzy logic controller with adaptable reference. Int J Electr Comput Eng 3(5):574–586

    Google Scholar 

  16. Lee CC (1990) Fuzzy logic in control systems fuzzy logic controller part I. IEEE Trans Syst Manuf Cybern 20(2):404–418

    Article  Google Scholar 

  17. Lee CC (1990) Fuzzy logic in control systems fuzzy logic controller part II. IEEE Trans Syst Manuf Cybern 20(2):419–435

    Article  Google Scholar 

  18. Lin C-T, Lee CSG (1991) Neural network-based fuzzy logic control and decision system. IEEE Trans Comput 40(12):1320–1336

    Article  MathSciNet  Google Scholar 

  19. Mann G, Bao-Gang Hu, Gosine R (1999) Analysis of direct action fuzzy PID controller structures. IEEE Trans Syst Man Cybern B Cybern 29(3):371–388

    Article  Google Scholar 

  20. Ming-Kun C, Jeih-Jang L, Ming-Lun C (2011) T–S fuzzy model-based tracking control of a one-dimensional manipulator actuated by pneumatic artificial muscles. Control Eng Pract 19:1442–1449

    Article  Google Scholar 

  21. Miyamoto H, Kawato M, Setoyama T, Suzuki R (1988) Feedback-error learning neural network for trajectory control of robotic manipulator. Neural Netw 1(3):251–265

    Article  Google Scholar 

  22. Miyamura A, Kimura H (2002) Stability of feedback error learning scheme. Syst Control Lett 45(4):303–316

    Article  MathSciNet  Google Scholar 

  23. Moudgal VG, Kwong WA, Passino KM (1995) Fuzzy learning control for a flexible-link robot. IEEE Trans Fuzzy Syst 3(2):199–210

    Article  Google Scholar 

  24. Nauck D, Kruse R (1993) A fuzzy neural network learning fuzzy control rules and membership functions by fuzzy error back propagation. IEEE international conference on neural networks, pp 1022–1027

  25. Pedrycz W (1993) Fuzzy control and fuzzy systems. Wiley, NewYork

    Google Scholar 

  26. Petrov M, Ganchev I, Taneva A (2002) Fuzzy PID control of nonlinear plants. In: First international IEEE symposium intelligent systems, 2002

  27. Pham DT, Fahmy AA (2005) Neuro-fuzzy modelling and control of robot manipulators for trajectory tracking. In: Proceedings of the 16th IFAC world congress, vol 16, part 1, 2005, Czech Republic, pp 415–429

  28. Pham DT, Fahmy AA, Eldukhri EE (2008) Adaptive fuzzy neural network for inverse modeling of robot manipulators. In: Proceedings of the 17th IFAC world congress, 2008, Seoul, Korea, 6–11 July 2008, pp 5308–5313

  29. Runkler TA (1997) Selection of appropriate defuzzification methods using application specific properties. IEEE Trans Fuzzy Syst 5(1):72–79

    Article  Google Scholar 

  30. Saade JJ (1996) A unifying approach to defuzzification and comparison of the outputs of fuzzy controllers. IEEE Trans Fuzzy Syst 4(3):227–237

    Article  Google Scholar 

  31. Shankir Y (2001) Fuzzy logic systems and fuzzy neural networks for dynamic systems modelling and control. Ph.D. Thesis, University of Wales, Cardiff School of Engineering, Cardiff University, UK

  32. Shing J, Jang R (1993) ANFIS: adaptive-network-based fuzzy inference system. IEEE Trans Syst Man Cybern 23(3):665–685

    Article  Google Scholar 

  33. Sinthipsomboon K, Hunsacharoonroj I, Khedari J, Pongaen W, Pratumsuwan P (2011) A hybrid of fuzzy and fuzzy self-tuning PID controller for servo electro-hydraulic system. 6th IEEE conference on industrial electronics and applications (ICIEA), 2011

  34. Takagi T, Sugeno M (1985) Fuzzy identification of systems and its applications to modelling and control. IEEE Trans Syst Manuf Cybern SMC-15(1):116–132

    Article  Google Scholar 

  35. Tang W, Chen G, Lu R (2001) A modified fuzzy PI controller for a flexible-joint robot arm with uncertainties. Fuzzy Sets Syst 118(1):109–119

    Article  MathSciNet  Google Scholar 

  36. Terashita J, Kimura H (2002) Robustness of feedback error learning method with time delay. In: Proceedings of the 41st SICE/IEEE annual conference, vol 4, 5–7 August 2002, Tokyo, Japan, pp 2240–2244

  37. Ying H (1993) The simplest fuzzy controllers using different inference methods are different non-linear proportional-integral-controllers with variable gains. Automatica 29(6):1579–1589

    Article  MathSciNet  Google Scholar 

  38. Ying H, Siler W, Buckley JJ (1990) Fuzzy control theory: a non-linear case. Automatica 26(3):513–520

    Article  MathSciNet  Google Scholar 

  39. Yuan F, Feldkamp LA, Davis LI Jr, Puskorius GV (1992), Training a hybrid neural-fuzzy system. IEEE/IJCNN international joint conference on neural networks, vol 2, 7–11 June 1992, Baltimore, MD, USA, pp 739–744

  40. Zhang X, Hang CC, Tan S, Wang P-Z (1996) The min–max function differentiation and training of fuzzy neural networks. IEEE Trans Neural Netw 7(5):1139–1150

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to A. A. Fahmy.

Appendix: SCARA® robot dynamics

Appendix: SCARA® robot dynamics

The equations of motion can be described by a set of differential or difference equations. The equation set consists of two parts, the kinematics equations and the dynamic equation. Robot arm kinematics deals with the geometry of robot arm motion as a function of time (position, velocity, and acceleration) without reference to the forces and moments that cause this motion, while the dynamics of robot is the study of motion with regard to forces and torques.

In robotics manipulators, there are two methodologies used for dynamic modeling.

  1. (a)

    Newton–Euler formulation.

  2. (b)

    Lagrangian formulation.

An analytical approach based on the Lagrange’s energy function, known as Lagrange–Euler method, results in a dynamic solution that is simple and systematic. In this method, the kinetic energy (K) and the potential energy (P) are expressed in terms of joint motion trajectories. The resulting differential equations then provide the forces (torques) which drive the robot. Closed-form equations result in a structure that is very useful for robot control design and also guarantee a solution. The dynamics of n-link manipulators are conveniently described by Lagrangian dynamics. In the Lagrangian approach, the joint variables, q = (q 1, …, q n )T, serve as a suitable set of generalized coordinates. The kinetic energy is a quadratic function of the vector \(\dot{q}\) of the form:

$$K = \frac{1}{2}\sum\limits_{i,j = 1}^{n} {d_{ij} (q)\dot{q}_{i} \dot{q}_{j} } = \frac{1}{2}\dot{q}^{T} D(q)\dot{q}$$
(27)

where the n × n “inertia matrix” D(q) is symmetric and positive definite for each q. The gravitational potential energy P = P(q) is independent of \(\mathop q\limits^{.}\). The Euler–Lagrange equations for such a system can be derived as follows. Since

$$L = K-P = \frac{1}{2}\sum\limits_{i,j = 1}^{n} {d_{ij} (q)\dot{q}_{i} \dot{q}_{j} - P(q)}$$
(28)

where L is the Lagrangian, then the dynamic equations of an n-joint robotic manipulator described by Lagrange’s equations can be expressed as:

$$D(q)\textit{\"{q}} + C(q,\dot{q})\dot{q} + G(q) + B(\dot{q}) = \tau$$
(29)

where q is the generalized coordinates of the robot arm, \(\dot{q}_{i}\) is the first derivative of q i ; D(q) is the symmetric, bounded, positive-definite inertia matrix; vector C(q, \(\dot{q}\)) \(\dot{q}\) presents the centrifugal and Coriolis torque; G(q), B(\(\dot{q}\)) and τ represent the gravitational torque, friction and applied joint torque, respectively.

D(q) (n × n matrix) expressed as:

$$D(q)\mathop = \limits^{\varDelta } \sum\limits_{k = 1}^{n} {\left\{ {\left[ {A^{k} (q)} \right]^{T} m_{k} A^{k} (q) + \left[ {B^{k} (q)} \right]^{T} D_{k} (q)B^{k} (q)} \right\}}$$
(30)

where A k and B k represent 3 × n Jacobian submatrices, m k is the mass of link k, and D k is the n × n link inertia tensor which depends on q. The equation of velocity coupling vector C(q, \(\dot{q}\)) is:

$$C(q,\dot{q}) = \sum\limits_{k = 1}^{n} {\mathop C\nolimits_{kk}^{i} } (q)\dot{q}_{k}^{2} + \sum\limits_{k = 1}^{n} {\sum\limits_{j = k} {\mathop C\nolimits_{kj}^{i} (q)} \dot{q}_{k} \dot{q}_{j} }$$
(31)

The equation of gravity loading vector (n × 1) is:

$$G_{i} (q)\mathop = \limits^{\varDelta } - \sum\limits_{k = 1}^{3} {\sum\limits_{j = i}^{n} {g_{k} m_{j} A_{ki}^{j} (q)} }$$
(32)

and the frictional force model for joint k is expressed as:

$$B_{k} (\dot{q}) = b_{k}^{v} \dot{q}_{k} + \text{sgn} \,\,(\dot{q}_{k} )\left[ {\mathop b\nolimits_{k}^{d} + (\mathop b\nolimits_{k}^{s} - \mathop b\nolimits_{k}^{d} )e^{f} } \right]$$
(33)

where f = \(\frac{{ - \left| {\dot{q}_{k} } \right|}}{\varepsilon }\), \(b_{k}^{v}\) represent the coefficient of viscous friction, \(b_{k}^{d}\) is the coefficient of dynamic friction, and \(b_{k}^{s}\) is the coefficient of static friction for joint k, and ε is a small positive parameter. The dynamic equation derived by using the Euler–Lagrangian method for the first two arms of the SCARA configuration will be as follows [6]:

First joint:

$$\begin{aligned} \tau_{1} & = \left[ {\left( {\frac{{m_{1} }}{3} + m_{2} } \right)a_{1}^{2} + m_{2} a_{1} a_{2} C_{2} + \frac{{m_{2} }}{3}a_{2}^{2} \textit{\"{q}}_{1} } \right] \\ &\quad + \frac{{m_{2} }}{2}a_{1} a_{2} C_{2} + \frac{{m_{2} }}{3}a_{2}^{2} \textit{\"{q}}_{2} - m_{2} a_{1} a_{2} S_{2} \left( {\dot{q}_{1} \dot{q}_{2} + \frac{{\dot{q}_{2}^{2} }}{2}}\right) + b_{1} \left(\dot{q}_{1} \right) \\ \end{aligned}$$
(34)

Second joint:

$$\tau_{2} = \left[ {\frac{{m_{2} }}{2}a_{1} a_{2} C_{2} + \frac{{m_{2} }}{3}a_{2}^{2} } \right]\textit{\"{q}}_{1} + \frac{{m_{2} }}{3}a_{2}^{2} \textit{\"{q}}_{2} + \frac{{m_{2} }}{2}a_{1} a_{2} S_{2} \dot{q}_{1}^{2} + b_{2} (\dot{q}_{2} )$$
(35)

where m i is the mass and a i is the length of link i, C and S represent the cos(q) and sin(q), respectively. Let the state defines as x T = [q T, v T], where v = q. Since n = 2, the manipulator inertia tensor is a symmetric 2 × 2 matrix. From the coefficients of the joint accelerations, the distinct components of D(q) are:

$$D_{11} (q) = \left( {\frac{{m_{1} }}{3} + m_{2} } \right)a_{1}^{2} + m_{2} a_{1} a_{2} C_{2} + \frac{{m_{2} }}{3}a_{2}^{2}$$
(36)
$$D_{12} (q) = \frac{{m_{2} }}{2}a_{1} a_{2} C_{2} + \frac{{m_{2} }}{3}a_{2}^{2}$$
(37)

Because D(q) is symmetric, then

$$D_{12} (q) = D_{21} (q)$$
(38)
$$D_{22} (q) = \frac{{m_{2} }}{3}a_{2}^{2}$$
(39)
$$\varDelta (q) = D_{11} D_{22} - D_{12} D_{21}$$
(40)
$$\dot{q}_{1} = v_{1} ,\,\,\dot{q}_{2} = v_{2}$$
(41)
$$\begin{aligned} \dot{v}_{1} & = \frac{1}{\varDelta (q)}\left[ {D_{22} (q)\left\{ {\tau_{1} + a_{1} a_{2} S_{2} m_{2} \left( {v_{1} v_{2} + \frac{1}{2}v_{2}^{2} } \right) - b_{1} (\dot{q}_{1} )} \right\}} \right. \\ &\quad \left. { - D_{12} (q)\left\{ {\tau_{2} - \frac{{m_{2} }}{2}a_{1} a_{2} S_{2} v_{1}^{2} - b_{2} (\dot{q}_{2} )} \right\}} \right] \\ \end{aligned}$$
(42)
$$\begin{aligned} \dot{v}_{2} & = \frac{1}{\varDelta (q)}\left[ { - D_{21} (q)\left\{ {\tau_{1} + a_{1} a_{2} S_{2} m_{2} \left( {v_{1} v_{2} + \frac{1}{2}v_{2}^{2} } \right) - b_{1} (\dot{q}_{1} )} \right\}} \right. \\ &\left. {\quad + D_{11} (q)\left\{ {\tau_{2} - \frac{{m_{2} }}{2}a_{1} a_{2} S_{2} v_{1}^{2} - b_{2} (\dot{q}_{2} )} \right\}} \right] \\ \end{aligned}$$
(43)

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fahmy, A.A., Abdel Ghany, A.M. Adaptive functional-based neuro-fuzzy PID incremental controller structure. Neural Comput & Applic 26, 1423–1438 (2015). https://doi.org/10.1007/s00521-014-1807-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-014-1807-6

Keywords

Navigation