ADAPTIVE BASED BLOCK FUZZY CONTROLLER OF FLEXIBLE ROBOT ARM
Transcript of ADAPTIVE BASED BLOCK FUZZY CONTROLLER OF FLEXIBLE ROBOT ARM
Fourth Assiut University Int. Conf. on Mech. Eng. Advanced Tech. 478 1 For Indus. Prod., December 12-14 (2006)
ADAPTIVE BASED BLOCK FUZZY CONTROLLER OF FLEXIBLE ROBOT ARM
_______________________________________________________________
Khalil A.K.1 , Ayman A. Aly2 and Ahmed Abo. Ismail3
1,2,3 Mechatronics Section, Department of Mechanical Engineering, Faculty of Engineering, Assiut University (71516), Egypt
1Assictant Lecture [email protected] 2Assistant Prof [email protected] 3 Prof. of Automatic control [email protected]
ABSTRACT– The objective of this paper is to design an intelligent control policy to enhance the flexible arm dynamics, while achieving the required tip position accuracy with fast speed of response irrespective to the payload. A simple Fuzzy Logic Control (FLC) policy that consists of (PD+PI) control actions is applied for the tip position control and tip deflection compensation. In addition, namely two different control polices are implemented. Adaptive Fuzzy Controller (AFC) and Adaptive Based Block Fuzzy Controller (ABBFC) to enhance the arm dynamics. All these techniques are designed and implemented experimentally. Comparison of the results indicates that the (ABBFC) controller has better capabilities in controlling the tip position of the arm. KEYWORDS: Fuzzy –Control – Flexible – Robot - Arm 1. INTRODUCTION The study of light robotic manipulators has become of increasing interest in recent years. Within the industrial sector, most robotic manipulators operate slowly and have very poor weight to payload ratios. Typical designs for industrial manipulators are usually heavy and rigid in nature to avoid exciting vibrations in the links during operation. It should be noted, however, that even rigid link manipulators are prone to vibrations when operated at fast speeds. Intelligent controllers and smart actuators are currently used to enhance the dynamics of flexible robots. A modified fuzzy PI controller for a flexible-joint robot arm with uncertainties was designed for handling nonlinearity, flexibility, and uncertainty of the flexible arm system [1]. Design of a fuzzy proportional integral derivative (PID) controller is implemented for a flexible-joint robot arm with uncertainties resulted from time-varying loads. The fuzzy PID controller is achieved by applying a simple and practical (PD+I) controller configuration, which have self-tuning (adaptive) capabilities in set point tracking performance. Moreover, these variable gains make the fuzzy PID controller robust with faster response time and less overshoot than in conventional PID design [2]. Genetic Algorithm (GA) is utilized for the design of the FLC system. The developed controller is applied for experimental flexible manipulator, and experimental results demonstrating its performance are presented and discussed. Using neural network to adjusted membership functions for (PD+PI) type fuzzy controller by tuning the scaling factors, a genetic algorithm is implemented to learn the weight and shape of the sigmoidal function of the neural network [3, 4]. A different design of a fuzzy-logic-based (PI+D)2 control scheme was developed for both vibration suppression and set-point tracking[5]. The stability of the internal dynamics by adding a boundary-layer correction based on singular perturbations is guaranteed [6], by designing a neural control system applying three–layer feed forward networks. In order to simulate the transient response of the rotating elastic manipulator system, a single-input, single output state space representation is investigated for a nonlinear model [7]. A novel approach applying a block based fuzzy controllers is introduced [8]. The new controller is constructed by several fuzzy controllers with less fuzzy rules to carry out control tasks. One of the motivations in the current research is to design several intelligent control policies to enhance the arm dynamics. 2. EXPERIMENTAL SETUP
The objective of this section is to derive a dynamic model of a single flexible arm, which can be considered as uniform distributed beam driven by DC-servomotor through a rigid joint, as shown in Fig. 1. A payload is attached to the free end of the beam. The coordinate frame xyz is the original inertial
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 479
to the hub coordinate system with z in vertical direction, while x1y1z1 is the coordinate system attached to the hub, with z1 coinciding with z.[9] The transversal bending deformation at a point x є [0, l] along the link is described by w(x,t) , Fig. 1.
)(tθ )(toϕ
Tip Deflection
Z, Z
Flexible Arm (ρ,E,I,l)
T
w(x,t)
Payload MP
X
X1
Y1Y
Tip Position y(l,t)
)(ttipθ
Fig. 1: A flexible arm with a rigid joint and payload. The tip position is described by the following relation
y(l,t) = θ(t) x + w(x,t) (1)
θtip(t)=(180/π ) y(l,t) (2)
where: y(l,t) = tip position (rad) , θ(t) = joint angle (degree), w(x,t)= tip deflection (mm) and θtip(t) = tip position angle (degree) The physical parameters of the present arm are given in Table 1.
Table 1: The physical parameters of the arm. Paramete r Value Unit
Length (l) 0.5 m Width (B) 0.003 m Height (H) 0.05 m Length Density 0.403 kg/m Bending Stiffness (EI) 7.85 Nm2
Tip Payload Mass Mp
No load 0.5
kg The experimental apparatus as shown in Fig. 2 consists mainly of a flexible arm, actuator and rotary encoder at the hub. The arm is an aluminum link of a rectangular shape with a payload at the free end. The arm system is driven by a DC-servomotor, which is controlled by a PWM servo amplifier through a reduction gearbox. A tachometer is used to measure the rotary velocity of the joint. The flexible arm is positioned in a way such that it can freely bend in the horizontal plane. Two strain gauges are used to measure the strain at the base of the arm which is an indication for the tip deflection, while a rotary encoder is used for measuring the hub position signal. A PC III 500 MHZ is used as a digital controller for signal processing and control. A c-program is written for interfacing and controlling the arm system. Also a digital low pass filter based on hamming window with a length of six stages and cut-off frequency of 60 Hz is used to eliminate the noise from the deflection-measured [10].
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 480
HubFlexible Arm
PC- 500 Hz
Payload
DC-Servomotor
Strain Gage
Fig. 2: The experimental setup.
3. DESIGN A FUZZY (PD+PI) CONTROLLER
In this section, a fuzzy (PD + PI) controller is designed for vibration suppression and set-point tracking control of the flexible-link robot arm [11]. The fuzzy (PD + PI) controller is shown in Figure 3 This fuzzy controller preserves all the features of the conventional (PD + PI) controller, yet containing two sub-controllers for fuzzy PD and fuzzy PI-control actions.
Fig. 3: The fuzzy (PD+PI) control system.
The Fuzzy (PD+PI) controller
)t(e 1&
∫t0 2 )t(e
θtip(t)
3.1 THE FUZZY (PD+PI) CONTROLLER
According to Fig. 3, u1(t) = KPt e1(t)+ Kedot )(1 te& Where u1(t) is the fuzzy control action of the PD
controller, e1(t) is the error signal, from the tip position and is the rate of change of the error signal, and K
)(1 te&pt and Kedot are the gains to be determined from the design. The fuzzy PD controller is
designed by following the standard fuzzification, inference rules, and defuzzification procedures used in
fuzzy control theory. The PI controller shown in Fig.3 is described by u2(t)= KPde2(t)+ K . ie )t(et0 2∫
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 481
Where u2(t) is the fuzzy control action of the PI controller, e2(t) is the error signal from the tip deflection
and )t(et0 2∫ is the rate of change of the error signal, and Kpd and Kie are the gains to inbe determ ed
y
rol outputs signals u1(t), u2(t) and two e of change of
utputs
rence) rules for the fuzzy PD and PI controllers, the membership ural
combining the reco mendations
from the design. The fuzzy PI controller is designed by following the standard Fuzzification, inference rules, and defuzzification procedures used in fuzzy control theor . 3.2 A Fuzzification For The Fuzzy PD And PI Controllers
The fuzzy PD and PI controllers have a single incremental continputs signals as indicated in Fig. 4. These inputs are the errors signals e1(t), e2(t), the rat
the e trror signal )t(e1& and the integral of the error signal )t(e0 2∫ . The input and output membership functions of the PD and PI controllers are illustrated in Fig. 4, where the range of all inputs is [-1, 1] and the range of all o is [-60, 60] 3.3 Fuzzy Inference Rules Of The Fuzzy PD And PI Controllers
To establish the control (or infefunctions shown in Fig. 4 are implemented. The rules shown in Table 2 are established by a nattracking control performance analysis.
NL NM
-1 0 1 e1(t),e2(t),)t(e&and∫ t0 2 )t(e
NS Z PS PM PL
NL NM NS Z PS PM PL
Fig. 4: The input and output membership function for the PD controller. The “center of gravity” (COG) Defuzzification method is firstly considered for
represented by the implied fuzzy sets from all the rules. m Let bi denote the center of the membership function and ∫ )(iμ denote the area under the
membership function µ(i). The COG method computes ∫ )(iμ = )(hW Where: W is a base width
U
2
2
−
of triangular and h is the height of the area under triangular “chopped off”. The COG method Computes
h
crisp from the following relation:
∑ ∫
∑ ∫= =
n
1i
n1i )i(b
uμ
=
n
1i
n1
crisp)i(μ
(3)
-60 -45 -30 -15 0 15 30 45 60 u1(t),u2(t)
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 482
Table 2: The Fuzzy PD and PI control rules 7x7.
and. Change of error e1(t)∫0
2 )t(e&
Output u1(t) / u2(t)
M PL NL PL PL PL NM PM PS Z NM PM NS NS PM PM
1 2
4. SELF -TUNING SCALING FACTORS FOR FUZZY (PD+PI) CONTROLLER
Fuzzy PI control action is known t m ra , it is difficult for e fuzzy PD to remove the steady at rol ion however, known to give
oor performance in the transient response for higher order systems due to the internal integration peration. To improve the performance of the arm control system, a fuzzy controller that processes the
time. The scaling factors are defind by: kd = kds/бk β = бk/ βs
e peak time tk
re we can use the same idea as in the para )) and g (e(t)) as shown equations (4) and (5)
(4
β
ror. In the other hands, the error will be zero and ƒ(e(t)) will entually be eq
will be equal means that be
t
NL NM NS Z PS P
PL PM PM PS Z PL PS Z NS NM
Z PL PM PS Z NS NM NL PS PM PS Z NS NM NM NL
PM PS Z NS NM NM
NM NL
Error e (t) / e (t)
PL Z NS NM PM NL NL NL
o bee error. The fuzzy
ore p ctical t PI cont
han fuzzy PD act
actionis,
since thp
st
ofine characteristic of the PID control actions only is applied, using the error and the rate of change of error as its inputs [12]. 4.1 Adjusting The MF And The Self- Tuning Scaling Factors
The response processes can be divided into different phases by the peak value times. The parameters regulator turns the controller parameters kd and β simultaneously at each peak time signal and according to the peak value at that
Where kds and βs are initial value of kd and β, respectively. бk is the absolute peak value at th(k=1,2,3,…). The block diagram of the adaptive fuzzy controller is shown in Fig. 5. If we do not change the fuzzy rules and scaling factors, we can adjust the membership function (MF) to improve the steady state response of the performance. Therefo
meter adaptive method and fined the functions ƒ (e(t
ƒ (e(t)) = a1[abs(e(t))] + a2 )
g(e(t)) = b1[1-abs(e(t))]+ b2 (5)
where a1, a2, b1 and b2 are all positive constants. Then the self-tuning scaling factors changing with time are described by the following relations
kds(e(t)) = kd g (e(t)) (6)
s (e(t)) = β ƒ(e(t)) (7)
Where kd and β are the initial values of the scaling factors. The objective of the function ƒ(e(t)) is to decrease βs(e(t)) with the change of er
ual to a2. However, the function g(e(t)) is the inverse objective, in the steady state, g(e(t)) (b1+ b ). So we can adjust the β (e(t)) and k (e(t)) roughly with the error of the time. It also
ev2 s ds
sides tuning Kedot , Kei ,α and β, we can add the parameters a1, a2, b1, b2 to expand the region of tuning parameter. The adaptive fuzzy (PD+PI) controller structure is shown in Fig. 5. To find how the parameters a1, a2, b1 and b2 are very important, we can progress in the following way when e(t)=1 ; ƒ(1)= a1+ a2 , g(1)= b2 So in the beginning, βs(e(t)) is equal to (a1+ a2)β; in the steady state, it is equal to (a2)β. We can adjust a1 and a2 to tune (a1+ a2)β and (a2)β to decide the initial value and the final so the value of βs(e(t)). It is desired to satisfy the following equal: ƒ(1)g(1) = ƒ(0)g(0) to keep the proportional component not to change much and the system can always react quickly against the error.
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 483
Fig. 5: Adaptive fuzzy (PD+PI) controller for the arm system (AFC).
. BLOCK BASED FUZZY CONTROLLERS The size of fuzzy rule base grows exponentially as the number of controller input grows. A complete
le base for the fu put will results in n) rules.. Therefo rol applications.
he precision of the fuzzy controller can be achieved by using (5, 7 or 9) membership functions at the value to achieve higher precision. For
increased at the expense of computational cost
The mo ership functions for each , as shown in Fig. 7. If the base values of membership functions in the conventional fuzzy controller
hanges in the range [-2a, 2a] and the block based fuzzy controller consists of two sub-fuzzy controllers, e base values of the first fuzzy controller change in the range [-2a, 2a] and the base values of the second zzy controller change in the range [-a, a]. If it consists of three sub-fuzzy controllers, the base values of
the third fuzzy controller cha h sub-fuzzy controller in the bloc
6
ru zzy controller with (n) input and (m) membership functions per inre, rule base education is very important for fuzzy controller in cont(m
Tinputs. Most of the membership functions can assigned around zero better precision, the number of membership functions can be
. The fuzzy controller structure shown in Fig. 6 denoted as block based fuzzy controller which uses several fuzzy controllers having very small rule base [8]. The block based fuzzy controller implemented in this study consists of sum of two fuzzy controllers with small rule base.
Fig. 6: Scheme of block based fuzzy controller. st suitable fuzzy controller with small rule base includes three memb
inputcthfu
nge in the range [-a/2, a/2]. The rule base for eack based fuzzy controller is the same [8]. Figure 7 shows the membership functions and the rule of
FLC1and FLC2 for the block based fuzzy controller described by Fig. 7 and Table 3 respectively. The previous sections present an introduction to based block fuzzy (BBFC) system technique.
3*3=9 Fuzzy Rules
3*3=9 Fuzzy Rules
+ Z +
X
Y
Course tuning
Fine tuning
-K-
out system
flexible
Tip angle
Tip Angle
1/s
Integrator
g(e1)
Gain3
kd
Gain1
f(e1)
Gain2
B
Gain
Fuzzy PI
Fuzzy PD
du/dt
Derivative
Deflection
kd
ku θtip(t)
ref.
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 484
In the following section, Adaptive Block Based Fuzzy Controllers (ABBFC) is implemented as described in Fig. 8, applying the previous membership functions and control rule explained in Fig. 7 and Table 3.
e(t)
Fig. 7: Membership functions and rule based for Block based fuzzy controller.
Table 3: The Based block Fuzzy (PD +PI) control rules 3x3.
NTAL RESU The closed loop control system for a singl xible ot arm investigated experimentally, where
igh static accuracy and high speed respo with overshoot are required as technical design iterion. Different control polices are applied for regulating the single flexib robot arm and tested for a ference input of θref =10o and different payloads. The experimental results for the arm step response are esented with different controllers and subjected to different operating conditions as shown in Fig. 9 and
error (e ) indicated on the response curves are evaluated expe
ip functions and start the learning process to generate a set of fuzzy if-then
de(t) N Z P
7. EXPERIME LTS
e flense
rob no
ish of cr lereprFig. 10. The steady state values for the ss
rimentally at time ts=3 sec. It is clear from the results shown in Fig. 9 and Fig. 10 that the response is enhanced by applying
adaptive based block fuzzy (PD+PI) controller (ABBFC). The advantages of this scheme, is that it combines the advantages of both fuzzy logic and adaptive fuzzy controller, while avoiding their individual drawbacks. (ABBFC) can refine fuzzy if-then rules obtained from human experts to describe the input/output behavior of complex system. However, if human expertise is not available, we can still set u reasonable initial membershp
rules to approximate a desired data. The comparison confirms that the adaptive Based Block Fuzzy policy has achieved remarkable good response and has achieved the desired target conditions.
N N N Z
Z N Z P
P Z P P
-2c 0 2c - c 0 c
-2b 0 2b
N Z P
de -b 0 b
N Z P
N Z P
de
-2a 0 2a e
N Z P
-a 0 a e
N Z P
u1
N Z P
u2
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 485
Fig. 8: Adaptive Block Based Fuzzy (PD+PI) Controllers (ABBFC).
Fig. 9: Experimental results for the tip position of the arm Based on FLC, AFC and ABBFC θref =10 o with No load
-K-
out
-K-
ff
f(e1)
f
Tip angle
Tip Angle
1/s
I
B
Gain
g(e1)
G
Fuzzy PI
Fuzzy PD
Fuzzy PD
system
Flexible
Deflection
du/dt
D
kd
θtip(t) ref.
ku ku
)
0 0.5 1 1.5 2 2.5 3
0
1
2
Time (Sec)
Con
trol
Vol
tage
(V
0 0.5 1 1.5 2 2.5 3-1
0
1
Time (Sec)
Def
lect
ion
(m
m)
0 0.5 1 1.5 2 2.5 30
5
10
15
Time (Sec)
Ang
le
(deg
ree)
FLCAFCABBFC
FLCAFC)
ABBFCtu(
),tlw
()t(
θ tip
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 486
Fig. 10: Experimental results for the tip position of the arm Based on FLC, AFC and ABBFC θref =1 0 o with MP =0.5 kg.
. CONCLUSION The experimental results of position tracking of a single flexible arm using fuzzy logic technique
showed fast tracki ce input θref =10o so the fuzzy controller is ng. (AFC) combines the vantages of both fuzzy logic and Adaptation, while avoiding their individual drawbacks. (AFC) can fine fuzzy if-then rules obtained from human experts to describe the input/output behavior of complex
an expertise is not available, we can still set up reasonable initial membership
ads”IEEE Transactions on Control Systems echnilogy,Vol.5,No.3,May 1997.
. O. Tokhi, “GA-Based Fuzzy Logic Control of Flexible-Link Manipulators”,
le-Link
[5]
2
8
ng performance and zero steady state error in position with referenAlad
capable of compensating the effect of sudden loadi
resystem. However, if humfunctions and start the learning process to generate a set of fuzzy. The experimental results showed that the adaptive based block fuzzy controller is an efficient method for controlling the flexible are with zero steady state error, while satisfying fast speed of response.
10. REFERENCES [1] W.Tanga, G. Chena and R. Lub. “A modified fuzzy PI controller for a flexible-joint robot arm with uncertainties” Fuzzy Sets and Systems Vol.118,pp 109-119, 2001.[2] H. A. Malki, D. Misir, D. Feigenspan and G. Chen. “Fuzzy PID Control of a Flexible –Joint Robot
Arm with Uncertainties from Time-Varying LoT
[3] M. N. S. Siddique, MProc. 8th Int. Congress on Sound and Vibration, Hong Kong, pp. 371–378 July, 2001.
troller of Flexib[4] M. N. S. Siddique, M. O. Tokhi, “GA-Based Neuro-Fuzzy ConManipulators”, Proceeding of the IEEE Intertional Conference on Control Applications Glasgow Scotland U.k., pp. 471-476, September 2002. P. Sooraksa and G. Chen. “Mathematical Modeling and Fuzzy Control of A Flexible-Link Robot Arm” Mathl. Comput. Modeling Vol. 27,No.6,pp73-93,1998.
[6] J. Lin, F.L. Lewis “Two-Time Scale Fuzzy Logic Controller of Flexible Link Robot Arm”, Fuzzy Sets and Systems, Vol.139, pp. 125–149, 2003.
0 0.5 1 1.5 2 2.5 3
0
1
Time (Sec)
Con
trol
Vol
tage
(V
)
FLCAFCABBFC
0 0.5 1 1.5 2 2.5 3-4
-2
0
2
4
Time (Sec)
Def
lect
ion
(m
m)
0 0.5 1 1.5 2 2.5 30
5
10
15
)t
Time (Sec)
Ang
le
(deg
ree)
FLCAFCABBFC
w(l,
t)
θ tip
(t)
u(
Mech. Eng. Advanced Tech. For Indus. Prod., December 12-14 (2006) 487
[7] Chung-Feng J. k. and Ching-J.L. “Neural Network Control of A Rotating elastic Manipulator”, Computer and Math. With Application Vol. 42, pp.1009-1023, 2001. Mehmet Karaköse and Erhan Akýn “Block B[8] ased Fuzzy Controller”, International Symposium on
[9] e Analysis Of Flexible -Link Flexible –
[10] le Robot Arm”, M.Sc thesis, Mechanical Eng. Depart.
[11] ntrol of A Single Flexible Arm”,
,i
E (N/m2) e1(t) The error produce from the tip (Degree)
from the deflection (mm) te error
ƒ (e(t)) Function of error (m)
n fuzzy controller e) ed on fuzzy controller
ional gain /mm) controller
) m) ) ad)
kds) )
) )
)
Innovations in Intelligent Systems and Applications (INISTA 2005) Istanbul June 2005. Degao LI, J.W., Andrew A. G. “Dynamic Modeling And ModJoint Robots” Mech. Mach. Theory,Vol.33,No. 7, PP.1031-1044,1998. Khalil A.K. “Intelligent Control of FlexibAssiut University, Egypt 2006. Khalil A.K., Ayman A. Aly and Ahmed Abo. Ismail “Tip Position CoProceedings of the 2nd International Conference on Mechatronics, ICOM'05 Kuala Lumpur, Malaysia. May 2005.
[12] Zhi-Wei Woo, Hung-Yuan Chung and Jin-Jye Lin “A PID Type Fuzzy Controller with Self-Tuning Scaling Factors”, Fuzzy sets Systems Vol.115, pp.321-326, 2000.
11. NOMENCLATURE
a , b ,ba1 2 1 2 Positive constants B The center of the membership function
Young's modulus
e2(t) The error produce ess Steady sta
g (e(t)) Function of error H the height of the area under triangular Ke Tip proportional gain based o (v/degreKe2 Deflection proportional gain bas (v/mm) Kedot Derivative gain Kei Integral gain KPd Deflection proport (vKu Output gain from fuzzy l The length of arm (m) MP Mass of payload in tip (kg) W The base width of triangular (m) w(x,t Tip deflection (my(l,t Tip position (rβ, kd Controller parameters βs, Initial value of kd and β θ(t Joint angle (degreeθref(t Reference joint angle (degreeµ(i) The membership function θtip(t) Tip position angle (degree