Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller ...
Transcript of Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller ...
International Journal of Advanced Robotic Systems Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator Regular Paper
Alexander Hošovský, Jozef Novák-Marcinčin*, Ján Piteľ, Jana Boržíková and Kamil Židek Faculty of Manufacturing Technologies, Technical University of Košice, Slovakia * Corresponding author E-mail: [email protected] Received 24 Apr 2012; Accepted 31 May 2012 DOI: 10.5772/50347 © 2012 Hošovský et al.; licensee InTech. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/3.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Abstract Pneumatic artificial muscle‐based robotic systems usually necessitate the use of various nonlinear control techniques in order to improve their performance. Their robustness to parameter variation, which is generally difficult to predict, should also be tested. Here a fast hybrid adaptive control is proposed, where a conventional PD controller is placed into the feedforward branch and a fuzzy controller is placed into the adaptation branch. The fuzzy controller compensates for the actions of the PD controller under conditions of inertia moment variation. The fuzzy controller of Takagi‐Sugeno type is evolved through a genetic algorithm using the dynamic model of a pneumatic muscle actuator. The results confirm the capability of the designed system to provide robust performance under the conditions of varying inertia. Keywords Fuzzy Controller, Adaptive Control, Evolution Process, Pneumatic Artificial Muscle
1. Introduction Pneumatic artificial muscles (PAM) belong to the group of non‐standard actuators with interesting properties
rather akin to the properties of biological muscles (hence the name). These actuators offer several appealing characteristics that, however, do not come without some cost. On the one hand are their advantageous power/weight ratio, natural compliance, cleanness and structural simplicity, on the other are their nonlinear character, hysteresis, as well as other issues associated with pneumatic systems in general (non‐negligible time delay and the need for bulky power sources). Nevertheless, a lot of effort has gone into PAM‐based systems research corroborated by a number of various works, for example see [1‐5]. There are basically two main areas for which various PAM applications have been proposed: robotics [6‐9] and biomedical engineering [10‐12]. Each of these areas has its specific requirements causing the selected approaches for a PAM‐based system design to differ slightly. Here an industrial application for a PAM‐based system is envisaged in connection with previous works and proposals [13,14]. The modelling of pneumatic artificial muscles as a part of control system design was the subject of study from the very beginning of renewed interest in PAMs as
1Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com
ARTICLE
www.intechopen.com Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012
a perspective actuator in the aforementioned areas starting with works like [15]. Quite a detailed analysis of a pneumatic artificial muscle was carried out in [1], which became one of the basic works for devising analytical models of PAMs. Also of great importance was the work [2], where a comprehensive treatise of modelling of the whole PAM‐based actuator was presented. These works were followed by others where models for specific applications [7] or muscle type [16] were derived. Enhanced modelling of a PAM was carried out in [17] where a detailed description of the muscle’s elastic properties was utilized. In [18] a model for FESTO muscles intended for a robotic application was developed using the virtual work principle and refined shape modelling. Also in [19] a dynamic model of PAM for use in a resistive training device was devised. A review of some of the approaches to modelling of PAMs was presented in [20]. The accurate control of a PAM‐based system has remained a challenging task. A natural consequence of PAM’s nonlinear and hysteretic behaviour was the effort to apply various advanced control techniques. One of the early works was [21] where a neural network was used for controlling a rubbertuator arm. In [22] three different nonlinear control methods (robust backstepping, sliding mode and gain scheduling) were tested for controlling a pneumatic actuator. The work [23] presented an adaptive robust control strategy for precise posture trajectory tracking in a parallel manipulator while a fuzzy predictive control algorithm was used in [24] to control the position of a pneumatic artificial muscle. Researchers in [25] used a learning vector quantization neural network to estimate the external inertia load according to which the optimal gains for a PID controller were set. The fusion of genetic algorithms and fuzzy logic was also applied in numerous works in robotics. In [26] the results for a fuzzy controller optimized using an ant colony algorithm and particle swarm optimization are compared to the previous results obtained using genetic algorithms. Authors in [27,28] used the fusion of Type‐2 fuzzy logic with genetic algorithms to control the model of a unicycle mobile robot. Also in [29] the membership function parameters of a fuzzy logic controller used for servomechanism control were optimized using genetic algorithms. In [30] the authors used a hybrid approach for controlling a wheeled robot. The minimization of the stabilization error was searched for using genetic algorithms while the attenuation to perturbed torques was achieved through the use of a Type‐2 fuzzy logic controller. Genetic algorithms were also used for solving an optimization problem in parallel manipulator design in [31].
In our work an industrial application of a pneumatic muscle actuator was assumed. This had some specific consequences, especially those associated with the simplification of control algorithm in relation to the actuator stiffness control. The stiffness control loop was avoided completely and the overall actuator stiffness was maximal for the given configuration. The research was driven by the idea of a low‐cost PAM‐based positioning device that would make use of advanced (e.g., soft computing) control techniques in order to compensate for the PAM nonlinearities and hysteresis. Nevertheless, it was of significant importance to take into account the rapidity of the considered processes (position servosystems), as well as possible limitations caused by the available computational power. Therefore, some compromise between the sophistication of the used control algorithm and its computational cost had to be found. Moreover, due to its unpredictability, when dealing with various loads in practice, the actuator inertia moment was to be varied in experiments in order to test the controller’s robustness to realistic plant parameter variation. It was found out in [32] that the linear controller with fixed gains could not meet the specified performance for the whole range of arm movement, as well as for a varying inertia moment. Further investigations showed that the combination of a PD‐controller with additional (nonlinear) controller leading to their complementary action would make it possible to control the system satisfactorily throughout the whole range of movement, as well as for the conditions of a varying inertia moment. For the task of a nonlinear controller, both a neural network and a fuzzy controller were considered as each of them possesses universal approximation capabilities [33]. A fuzzy controller was chosen due to its capability of accepting a heuristic input in the form of possible fuzzy rule modifications [34]. Nevertheless, a completely heuristic fuzzy controller design mostly leads to suboptimal solutions due to the difficulties with exact parameter determination. Use of genetic algorithms is one of the methods capable of solving complex combinatorial problems with low demands on the problem definition [35]. Since it is difficult to optimize the control system on a real plant using such a population‐based algorithm, an analytical model of one‐DOF pneumatic muscle actuator derived in [36] was used. The selected adaptation scheme was of direct type with signal (multiplicative) adaptation which is considered fast [37] and thus suitable for implementation in our position control system. The results showed that the optimized system was capable of following the reference model trajectory with low error, even when significant variations in the inertia moment occurred. Moreover, the evolution of the fuzzy controller contributed to the reduction of the fuzzy rule, which in turn decreased the computational cost.
2 Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012 www.intechopen.com
The main contribution is the design of a fast and relatively simple hybrid fuzzy controller, which is capable of controlling nonlinear plants even under conditions of a varying inertia moment. The technique used for controller design (i.e., evolutionary algorithms) is also applicable to other nonlinear plants for which the model might be known, but in some cases even the real‐time control design would be possible. In addition to that, the results confirm the capability of evolutionary algorithms to design a fuzzy controller with a reduced fuzzy rule base, which further simplify the control algorithm and reduce computational costs. We consider this solution relevant for practical cases where a traditional controller might perform well throughout a limited range and/or under nominal conditions, but is not robust enough to inertia moment variation (which is the case in practice). Evolutionary algorithms prove helpful in designing such a hybrid controller where an enormous number of parameters makes completely heuristic design quite difficult. 2. Materials and methods 2.1 Hardware setup The main component of the system was a pair of FESTO MAS‐20 Fluidic Muscles. The nominal length of these muscles was 250 mm and their diameter 20 mm. They were fitted with a force compensator which limited the maximum force to 1200 N. Kinematically, the configuration corresponded to a one degree‐of‐freedom system with one rotary axis driven by the opposing action of both muscles through a chain drive (Figure 1). The chain wheel was a part of a steel shaft to which an arm with added weight representing an external load was attached. The main power source of the system was a Fiac ECU air compressor providing 1.1 kW of power and maximum pressure of 800 kPa. Inflow and outflow of the compressed air to and from the muscles were controlled by two 3/3 Matrix 821 valves. The arm position was measured by IRC120 encoder with resolution of 2500 pulses/revolution. A PC with an Intel Core 2 Duo processor and 4 GB RAM was used as a controller with interaction between the PC and the plant being provided by a MF624 input / output card. Four digital outputs (valve control) and one encoder input (position sensor signal) were used during the control, while the two additional analogue inputs were used during the modelling data acquisition process (PMD60G and PS‐9302 pressure sensors) (Figure 1). The sampling period was set to 0.003 s. The muscles were positioned approximately 235 mm from the upper base of the actuator frame with slight relative asymmetry to achieve a zero arm angle in the neutral position. This, together with the shaft position,
left a clearance of 29.5 mm between the chain and the chain wheel in discharged mode. At the initial pressure of 550 kPa this resulted in the initial muscle contraction of 9.6% and the movement range of approximately ‐50o,50o. Three cylindrical weights (1.2 kg, 2.14 kg and 3.34 kg) were used in experiments to represent the variations in external load (inertia moment).
Figure 1. Schematic diagram of pneumatic muscle actuator 2.2 Pneumatic Muscle Actuator Model The model of the pneumatic muscle actuator was developed in [36], which itself was partly inspired by models derived by researchers mentioned in the introduction and our own research. The model consisted of the following sub‐models: pneumatic model, static mechanic model, dynamic mechanic model and dynamic model of a revolute joint. The mechanical part of the pneumatic muscle could be modelled as a parallel combination of variable springs and variable dampers [18] (Figure 2).
Figure 2. Mechanic model of pneumatic muscle actuator The pneumatic part of the actuator model was represented in the form of a differential equation for
3Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com
muscle pressure, where the volume flow rate of the compressed air fed into or out of the muscles was described using the valve flow characteristics [38]. The entire model could be expressed in continuous state space representations as follows (notation of time function was dropped in these expressions):
state vector Tmm PPyyyy 212211x (1)
where y1,y2 – displacement of respective muscles [m],
21, yy – rate of displacement of respective muscles [ms‐1], Pm1,Pm2 – pressure in respective muscles [Pa], – arm angle [deg], – angular velocity of the arm [degs‐1]. The state equations then have the following form:
1 2
2 1 1 3 4 6 2 1 5 3 2 5
3 4
4 2 1 1 2 5 2 3 6 3 4 6
5 4 5 5 1 5 6 1 2 5 1
6 4 6 5 3 6 6 3 4 5 3
7
(1 / ) ( , , ) ( , ) ( , )
(1 / ) ( , , ) ( , ) ( , )
( ) / ( ) ( , ) / ( )
( ) / ( ) ( , ) / ( )A
A
x xx m f x x x f x x f x xx xx m f x x x f x x f x x
x P f x f x x f x x f x
x P f x f x x f x x f xx
8
1 3 4 6 2 1 5 3 2 58
1 1 2 5 2 3 6 3 4 6
7
( , , ) ( , ) ( , )( / )
( , , ) ( , ) ( , ) L
xf x x x f x x f x x
x r J Mf x x x f x x f x x
y x
(2)
where m1,m2 – masses to move for respective muscles [kg], PA – atmospheric pressure [Pa], r – sprocket diameter [m], J – inertia moment [kgm2], f1, f2, f3, f4, f5, f6 – nonlinear functions and ML – load moment [Nm]. The nonlinear functions in (2) denote the mathematical relationships between the following variables and appropriate state variables: f1 – external force for each of the muscles, f2 – nonlinear spring force, f3 – nonlinear damper force, f4 – volume flow rate through the valves, f5 – muscle volume, f6 – rate of muscle volume. 2.3 Adaptive Control Scheme As was mentioned in the introduction, previous experiments showed that a linear controller with fixed gains was not able to provide a satisfactory performance in the whole range of arm movement under conditions of varying inertia moment. An adaptive control scheme that would adapt to changing parameters was proposed to overcome this problem. The direct adaptive control scheme was preferred over the indirect method due to its (generally) lower computational demands and simplicity. In our scheme, the desired dynamics of the system were dictated by the responses of a reference model (Model Reference Adaptive Control scheme – MRAC). The model responses must set realistic requirements on the system dynamics and thus it should be derived using some
knowledge about the system itself. We used a second‐order linear model, which was derived using the closed‐loop responses with PD control gathered from the real plant under nominal conditions. This model had the following form:
sr e
sssG 015.0
2 14723.00545.01)(
(3)
Conversion of this model to a discrete form using Tustin transformation for Ts = 0.003 s yields:
52
5525
974.097.1101.4102.8101.4)(
zzz
zzzGr (4)
This model provides slightly overdamped (ξ = 1) step response, meaning that it doesn’t overshoot the reference position. In Figure 3, the basic scheme of the hybrid adaptive fuzzy control system is shown. The meaning of the used symbols is as follows: θ*(k) – desired position of the arm, θr(k) – reference model output, θ(k) – actual position of the arm, e(k) – position error, ed(k) – actuator dynamics error, KP – proportional gain of the PD controller, KD – discrete derivative gain of the PD controller, KE – dynamics error scaling gain, KΔ – dynamics error derivative scaling gain, KA(k) – adaptation gain, uPD(k) – PD controller control signal, u(k) – compound control signal, k – time step, Δ – discrete derivative symbol.
Figure 3. The basic scheme of the hybrid adaptive fuzzy controller with signal adaptation (based on [37]) The total control effort on the PAM actuator is a result of interaction between the PD and the fuzzy controller (in the form of u(k)). The task of the fuzzy controller is to force the system to follow the trajectory determined by the reference model’s response using the compensation signal (adaptation gain KA(k)). When multiplied with the control signal of the PD controller, it produces corrective efforts to minimize the deviations from the reference model trajectory.
4 Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012 www.intechopen.com
We may define the ideal control law as follows [35]: )()(),()( ** kukekeKku PDA (5)
Where
(.)))(),(()(min
(.))()(min
)()(min*
PPDArK
PrK
rKA
ukekeKk
kuk
kkK
AA
AA
AA
(6)
where ΩA is a set of allowable values of adaptation gain and P(.) – plant transfer function. The ideal controller would be able to drive the dynamics error to zero (or, in practice, to some small nonzero value). The uPD(k) signal then represents the portion of the control law that is known and that provides satisfactory performance under nominal conditions. The adaptation gain KA tries to counteract the deviations from these conditions manifested through the dynamics error. When KA = 1 the compound control signal u(k) consists of PD controller actions only. The value of KA depends on the dynamics error e(k) and derivative of the dynamics error e(k), and this relationship is generally nonlinear. It can be approximated using a fuzzy approximator, where KA is actually the output of fuzzy controller y:
)),(),(())(),(())(),((
θkekekekeykekeK
F
A
(7)
where F(.) – fuzzy approximator function, – parameter vector. In this case it is the task of the evolution process to find the parameter vector (i.e., a fuzzy controller) for which
)(),(),((minarg ** kKkeke AF
θθθ
(8)
where ΩA is a set of allowable parameter values. 2.4 Fuzzy Controller Evolution A zero‐order Takagi‐Sugeno fuzzy controller was chosen due to its simplicity and low computational demands. Both inputs (dynamics error and its derivative) were fuzzified using the generalized Gaussian membership functions, which are said to possess adaptability [39]. This type of membership function can alter its shape from triangular‐like to trapezoid‐like using one of the geometric parameters. The mathematical formula for this type of membership function is as follows [39]:
c
abxx exp (9)
where a > 0 (controls the width of the function), ;b (controls the position on x‐axis), 0c
(controls the shape of the function). The output was calculated using weighted average defuzzification, which can be expressed in the following form:
n
i
m
j
c
ij
ijj
n
i
m
j
c
ij
ijji
ij
ij
abx
abx
p
y
1 1
1 10
exp
exp
(10)
where ip0 – output singleton for i‐th fuzzy rule, n – number of fuzzy rules, m – number of inputs, xj – j‐th
input variable, ij
ij
ij cba ,, – membership function
parameters for j‐th input and i‐th fuzzy rule and is a symbol for fuzzy min operator. It is of note that in our implementation the fuzzy controller output (y) from equation (10) is equal to the adaptation gain KA. Values of the aforementioned parameters affect the performance of a fuzzy controller and, as a consequence, the performance of the adaptive control system as a whole. The main objective was to design such a controller that would achieve minimal dynamics error throughout the whole range of movement, as well as under conditions of inertia moment variations. Determining these parameters manually would be quite difficult, not to mention almost certain suboptimal performance of the system obtained by such settings. Hence, the evolution of a fuzzy controller using genetic algorithms as a method inspired by principles of evolution in nature was used. Equation (10) contains lmn 3 parameters in total, where l is the number of fuzzy sets over respective universes of discourse. The results from previous experiments showed that seven membership functions distributed over each of the universes of discourse offered reasonable compromise between the controller’s resolution and computational demands. Thus, the number of parameters for each individual representing a fuzzy controller in the population matrix was
9172349 , where n = 72 = 49 (number of fuzzy rules), m = 2 (number of inputs, dynamics error and its derivative) and l = 7 (number of fuzzy sets). Moreover, there were an additional 49 binary parameters representing the presence (or absence) of a particular
5Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com
fuzzy rule in the fuzzy rule table. The population matrix P could then be expressed in the following form:
20,220,120,220,120,220,120,020
2,22,12,22,12,22,12,02
1,21,11,21,11,21,11,01
ccbbaapη
ccbbaapηccbbaapη
where
iiii ,49,2,1 η (11)
is a row vector of fuzzy rule existence in the fuzzy rule table of the controller for i‐th individual in the population,
49
,02,0
1,0,0 iiii ppp p (12)
is a row vector of output singletons for i‐th individual in the population,
7
,21,2
7,1
1,1,
7,2
1,2
7,1
1,1,
7,2
1,2
7,1
1,1,
iiiiij
iiiiij
iiiiij
cccc
bbbb
aaaa
c
b
a
(13)
are row vectors for the fuzzy set parameters of j‐th input and i‐th individual. The following are applied to the variables in the population matrix P:
55.0,,0
66.0,33.0,0,33.0,66.0
115.0,
;10,;1,0
,,
,
,,
,0,0
ijij
ij
ijij
ii
cc
b
aa
ppη
(14)
According to (14), the values in vector belonged to the set of binary numbers which was useful for representing the presence or absence of a particular fuzzy rule in the fuzzy rule table (1 – presence and 0 – absence). Output singletons contained in vector p0,i attained values ranging from 0 to 1, where the value of 1 indicated the activity of the PD controller only while the value of 0 indicated the negation of its activity. The bounds set on the values of aj,i, cj,i parameters were obtained from the experiments with real plants. The values of bj,i parameters were not subject to evolution and were kept fixed. Every individual was evaluated using the fitness function in which both dynamics error (during some control interval) and fuzzy controller complexity (expressed in the number of used fuzzy rules) were taken into account:
iD
N
krE KkkKF ηdim
1
(15)
where k – time step, N – number of samples in control
interval, KE – dynamics error weight coefficient, r(k) –reference model output, θ(k) – actual position of the arm, KD – fuzzy controller complexity weight coefficient, dim(i) – dimension of fuzzy rule presence vector. KE was set to 0.8 and KD to 0.2. 2.4.1 Genetic Algorithm Settings
The number of individuals in the population was set to 20, which, together with the individual genome length of 140, resulted in a population matrix with dimensions of 20×140. The gene of every individual was created randomly within the bounds shown in (14). The individuals were selected based on their position in the rank list (calculated using the raw fitness scores). The selection itself was carried out using the roulette wheel selection, where each individual is assigned a portion of a roulette wheel perimeter according to its expectation and a random number is used for selecting an individual with probability equal to its area [40]. Elitism was used to keep the genome of the fittest individual preserved to the next generation. 80% of the population exchanged its genetic material using heuristic crossover, where children are created randomly on the line between parents slightly closer to a fitter one and farther away from a worse one [40]. Moreover, the remaining 20% of the population was mutated using an adaptive mutation algorithm, which determined new mutation directions using the results from the previous generation. The population was encoded with mixed integer (binary) / real representation as follows from (14). The main stopping criterion (i.e., the one which caused the stopping of every run of optimization) was function tolerance set to 10‐6. The whole evolution process of a fuzzy controller for adaptive fuzzy hybrid control was implemented in Matlab/Simulink software using its proprietary genetic algorithm solver under Global Optimization Toolbox and our own actuator model sketched in equation (2). The settings of the solver were chosen based on the results from trial‐and‐error experimentation. 3. Results and Discussion
3.1 Simulation Results
The fuzzy controller was evolved during the control interval of Tc = 100 s. In order to simulate a varying parameter scenario, three changes of the inertia moment occurred in this interval. These changes corresponded to the changes of external load for the real actuator, calculated as J1 = 2.9Jn, J2 = 4.4Jn, J3 = 6.5Jn (where Jn = 0.0144 kgm2). Since the evolution process ran completely offline, it was possible to subject the model to arbitrary yet realistic conditions in terms of the range of
6 Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012 www.intechopen.com
the controlled variable (i.e., arm angle). Taking the nonlinearity of the actuator into account, it was decided to use an APRBS (Amplitude Pseudo Random Binary Sequence) signal which has good excitatory capabilities for nonlinear systems. In Figure 4 an APRBS signal used for excitation of the system model during the control interval is shown. A reference model response for the APRBS signal shown in Figure 4 was used as a reference for determining the dynamics error of the model. The gains of the PD controller were set to the following values: KP = 0.058 and KD = 0.001. The controller set to these values provided satisfactory responses (in terms of reference model responses) for most of the arm angle range, but only for nominal inertia moment values.
Figure 4. APRBS signal used for system model excitation (blue) and changes in inertia moment representing parameter variation (dashed red) The optimization process was run six times and the results for each run are shown in Table 1. Each of the runs was stopped after having the change in fitness function between generations less than 10‐6. As is clear from the table, each of the evolved controllers used less than half of all the rules in the fuzzy rule base. On the other hand, the range of fitness values is quite large which might have been caused by a relatively quick domination of the population by elite individuals in each run. This is also visible in Figure 5, where the mean fitness can be observed to descend quickly to smaller values (indicating the loss of population diversity). At the end of the run, only the close proximity of the elite individual is searched by mutation (from approximately 150th generation to the end).
Run Fitness Dim(i) Iteration
1 908.95 21 75
2 271.96 25 162
3 412.7 21 104
4 79.58 23 237
5 245.69 26 105
6 576.92 21 200
Table 1. The results of six runs of fuzzy controller evolution
This will be the subject of further research in order to improve the current results. Elitism is supposed to be kept as it should provide the convergence of the algorithm while options for increasing the diversity of population will be researched.
Figure 5. Best and mean fitness values for the evolution with fittest resulting individual (F = 79.58) The result from run 4 achieved the lowest value of fitness function and was thus selected as a controller for testing in real‐time control. In Table 2 the resulting fuzzy rule table is shown, where Ei – i‐th fuzzy set over dynamics error universe of discourse and DEi – i‐th fuzzy set over dynamics error derivative universe of discourse. E1 E2 E3 E4 E5 E6 E7
DE1 0.83 0.24 0.73 0.9
DE2 0.3 0.94
DE3 0.13 0.27
DE4 0.14 1 0.97 0.65 0.96
DE5 0.77 0.99
DE6 0.8 0.21 0.84 0.75 0.91 0.48
DE7 0.05 0.84
Table 2. The output singletons of evolved fuzzy controller with fitness function value of F = 79.58 The designed controller uses a reduced fuzzy rule table with 23 rules in total. It is observed that the distribution of rules is asymmetrical as is the distribution of their values. The values at the centre of the table are around 1, indicating the non‐compensatory activity of the fuzzy controller. This can also be seen visually in Figure 6, where a fuzzy surface is depicted. Some other regions are also associated with lower compensation activity (values closer to 1 in Table 2) where the PD controller’s action might be sufficient.
7Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com
It is of note that the obtained results cannot be currently guaranteed to be the best achievable mainly due to modelling errors and their possible non‐optimal conditions in a global sense, and both areas will be the subject to further research.
Figure 6. A fuzzy surface of the best of evolved fuzzy controllers (KA – adaptation gain, edn – normalized dynamics error, edn – normalized dynamics error derivative) 3.2 Real‐time Control Results
Real‐time control was implemented in the Matlab/Simulink environment using the Humusoft MF624 I/O card and the card manufacturer’s proprietary real‐time control toolbox (Real‐Time Toolbox). The best individual from all evolution processes was selected to be tested under the conditions of a varying inertia moment during changing reference position steps. The real‐time control sequence was set to Trc = 40 s. The PWM frequency used during the real‐time control was 200 Hz. In order to avoid the chattering around the reference position in steady‐state, a dead zone with the width of two position pulses (±1 pulse equal to ±0.144o) was used (KE = 0.04 and D = 0.025) In Figure 7 the performance of both adaptive control and PD control for J = 2.9Jn is shown. It is clear from the figure that the PD controller caused larger deviations from the reference model trajectory, especially for larger steps in a negative direction (towards negative arm angles). It is assumed that this might be caused by the PD controller’s inability to cope with the actuator asymmetry (caused by the muscles themselves). The compound action of both controllers improves the performance noticeably: IAEPD = 8072.8 and IAEFUZ = 4933.5 (i.e. 39% reduction in dynamics error).
Figure 7. The test control sequence for J = 2.9Jn
In Figure 8 the action signal (depicted in absolute value) during the test control sequence is shown. It is obvious from Figure 7 that the actions of the PD controller are causing deviations from the reference model dynamics by being too strong. The red signal in Figure 8 shows the resulting (compound) action signal compensated by the effect of adaptation gain.
Figure 8. The action signals (PD controller and compound action signal) for the first test control sequence (J = 2.9Jn)
Figure 9. The test control sequence for J = 4.4Jn In Figure 9 the second test control sequence for J = 4.4Jn is shown. In this case, the PD controller’s inability to keep the dynamics dictated by the reference model is more pronounced in the form of oscillations. Some oscillations are still present also in the adaptive case, yet the improvement is again noticeable: IAEPD = 8604.8 and IAEFUZ = 4940.8 (42.6% reduction in error dynamics with only 0.1% increase in IAEFUZ for the second control sequence). In Figure 10 the action signals for the second test control sequence is shown. As can be seen in the figure, the PD controller acts in the same way (as the position error and its derivative are the same), but in this case, due to the higher inertia moment, this leads to a more oscillatory response. The multiplication compensation of the PD controller action signal by means of the fuzzy controller helps to prevent these oscillations to a good extent (as is clearly visible in the fifth step, for example). Still, some small oscillations are present also in adaptive mode and these could probably be attributed to some non‐smooth regions left on the fuzzy surface after evolution.
8 Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012 www.intechopen.com
Figure 10. The action signals (PD controller and compound action signal) for the first test control sequence (J = 4.4Jn) In Figure 11 the third test control sequence for J = 6.5Jn is depicted. In this case, the effect of PD controller’s action signal leads to significant oscillations, which are effectively suppressed by the action of adaptation gain. The values of integral criteria for this case are: IAEPD = 8520.3 and IAEFUZ = 5359.9 (37.1% reduction in error dynamics with 8.5% increase in IAEFUZ for the third control sequence).
Figure 11. The test control sequence for J = 6.5Jn In Figure 12 the actions signal for the third test control sequence are shown. It can again be observed that the greatest amount of compensation is needed for movements in a negative direction, where also the uncompensated action of the PD controller causes the strongest oscillations. In the figure, one can see that the small deviations from the steady‐state value (last five seconds of the control sequence) are corrected solely by the action of the PD controller, which is in accordance with the shape of the fuzzy controller surface.
Figure 12. The action signals (PD controller and compound action signal) for the first test control sequence (J = 6.5Jn)
By reviewing the results shown, it is obvious that in general unequal compensation effort is needed for various values of dynamics error and its derivative, which is encoded in the fuzzy surface of the controller in the adaptation loop. As was previously mentioned, the value of adaptation gain should be equal to 1 in steady‐state. This is corroborated by the plateau around the centre region of the fuzzy surface (around zero error and its derivative). The PD controller alone provides a significantly less satisfactory response (in terms of reference model dynamics) to increasing inertia moment variation, which was manifested through larger deviations from the reference model trajectory and/or an excessively oscillatory response throughout the range of reference positions. The advantage of signal adaptation is clearly visible in very fast action, which would not be possible with parametric adaptation. It is of note that the model responses to input signal were more conservative in the expression of oscillatory components, which resulted in more significant damping for fast changes in reference positions compared to the real plant responses. Nevertheless, the overall shape of the fuzzy surface reflected the action signal needed for the successful compensation of overly strong actions of a PD controller. Improvements in the accuracy of reference model tracking were approximately proportional to the magnitude of inertia moment variation. For example 42.6% reduction in error dynamics was achieved for 51.7% increase in inertia moment (from J = 2.9Jn to J = 4.4Jn) and 37.1% reduction in error dynamics for 47.7% increase in inertia moment (from J = 4.4Jn to J = 6.5Jn). It also follows from the results (Figure 7) that despite the fact that there were no significant oscillations in responses for pure PD control, the deviations from the reference model trajectory were not negligible. As was mentioned at the beginning of this paragraph, the steady‐state error was given by the width of dead zone set to avoid the chattering problem. The arm was driven to this zone under every tested condition, meaning that the maximum steady‐state error was ±1 pulse (0.144o at given sensor resolution). To improve the results for the adaptive case (further reduction of IAE values for every verifiable nominal inertia moment multiple), one might consider increasing the accuracy of the available dynamic model to better reflect the damping characteristics of the real plant, as well as incorporating the actuator hysteresis. 4. Conclusion and Further Work
Here a model‐based evolution of a fuzzy controller for an adaptive hybrid control scheme was presented. The resulting system was tested for its robustness to a varying inertia moment, which is generally unpredictable in practice. We used a nonlinear dynamic model developed
9Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com
for the actuator to evolve a fuzzy controller achieving minimal value of fitness function in which the dynamics error between the reference model trajectory and trajectory of the system was taken into account. The results showed that a fuzzy controller with a reduced fuzzy rule base (compared to a full fuzzy rule base containing n2 rules where n – number of fuzzy sets over each of the inputs) was capable of achieving very good performance (in terms of dynamics error) even under conditions of a varying inertia moment. The signal adaptation also proved to be fast in achieving improved performance. In future work, we expect to concentrate on improving the current results. It is obvious that no guarantee exists that the evolution results are the global optimum for relevant fitness function. A detailed analysis of the effects of various genetic algorithm parameters is still lacking and will be the subject of further work. Moreover, the system shall be tested for other types of test signals (ramp signals for instance), as well as for the disturbance rejection capabilities. 5. Acknowledgements
The research work is supported by the Project of the Structural Funds of the EU, Operational Programme Research and Development, Measure 2.2 Transfer of knowledge and technology from research and development into practice. Title of the project: Research and development of nonconventional pneumatic artificial muscles‐based actuators. ITMS code: 26220220103 6. References
[1] Chou Ch‐P, Hannaford B (1996) Measurement and Modeling of McKibben Pneumatic Artificial Muscles. IEEE Transaction on Robotics and Automation, Vol.12, No.1: 90‐102
[2] Tondu B, Lopez P (2000) Modeling and Control of McKibben Artificial Muscle Robot Actuators. Control Systems, IEEE, Vol.20, No.2: 15‐38
[3] Verrelst B et al. (2005) The Pneumatic Biped “Lucy” Actuated with Pleated Pneumatic Artificial Muscles, Vol.18, No.2: 201‐213
[4] Rothling F, Haschke R, Steil J.J, Ritter H (2007) Platform Portable Anthropomorphic Grasping with the Bielefeld 20‐DOF Shadow and 9‐DOF TUM Hand. Proceedings of the 2007 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Diego, CA, USA
[5] Klute G.K, Czerniecki J.M, Hannaford B (1999) McKibben Artificial Muscles: Pneumatic Actuators with Biomechanical Intelligence. IEEE/ASME 1999 International Conference on Advanced Intelligent Mechatronics, Atlanta, GA, USA
[6] Smagt V.D.P, Groen F, Schulten K (1996) Analysis and Control of a Rubbertuator Arm. Biological Cybernetics 75: 433‐440
[7] Colbrunn R.W, Nelson G.M, Quinn R.D (2001) Modeling of Braided Pneumatic Actuators for Robotic Control. Proceedings 2001 IEEERSJ International Conference on Intelligent Robots and Systems Expanding the Societal Role of Robotics in the Next Millennium, Hawaii, USA
[8] Vanderborght B, Verrelst B, Van Ham R, Lefeber D (2006) Controlling a Bipedal Walking Robot Actuated by a Pleated Pneumatic Artificial Muscles. Robotica, Vol.24, No.4: 401‐410
[9] Palko A, Smrček J (2011) The Use of Pneumatic Artificial Muscles in Robot Construction. Industrial Robot, Vol.38, No.1: 11‐19
[10] Židek K et al. (2010) New Trends in Application of Artificial Muscles for Automation Devices in Nonproductive Sector. Manufacturing Engineering, Vol.9, No.4: 78‐80
[11] Waycaster G, Wu S‐K, Shen X (2011) Design and Control of a Pneumatic Artificial Muscle Actuated Above‐Knee Prosthesis. Journal of Medical Devices, Vol.5, No.3
[12] Versluys R et al. (2006) IPPAM, Intelligent Prosthesis Actuated by Pleated Pneumatic Artificial Muscles: Mechanical Concept and Dimensioning of Actuators. 9th International Conference on Climbing and Walking Robots and the Support Technologies for Mobile Machines, Brussels, Belgium
[13] Balara M (2011) The Linearized Control System of the Pneumatic Actuator. Annals of DAAAM for 2011 & Proceedings of the 22nd International DAAAM Symposium on ʺIntelligent Manufacturing & Automation: Power of Knowledge and Creativityʺ, Vienna, Austria
[14] Hošovský A, Havran M (2011) Use of Hill’s Muscle Model for Dynamic Modeling of Pneumatic Artificial Muscle. Strojárstvo Extra, Vol.16, No.5: 42/1‐42/5
[15] Inoue K (1988) Rubbertuators and Applications to Robots. The 4th International Symposium on Robotics Research, Cambridge, MA, USA
[16] Daerden F (1999) Concept and Realization of Pleated Pneumatic Artificial Muscles and Their Use as Compliant Actuation Elements. Doctoral Thesis, Vrije Universiteit Brussel
[17] Davis S, Caldwell D.G (2006) Braid Effects on Contractile Range and Friction Modeling in Pneumatic Muscle Actuators. The International Journal of Robotics Research, Vol.25, No.4: 359‐369
[18] Kerscher T, Albiez J, Zollner J.M, Dillmann R (2006) Evaluation of the Dynamic Model of Fluidic Muscles Using Quick‐Release. International Conference on Biomedical Robotics and Biomechatronics, Pisa, Italy
[19] Serres J.L (2008) Dynamic Characterization of a Pneumatic Muscle Actuator and its Application to a
10 Int J Adv Robotic Sy, 2012, Vol. 9, 40:2012 www.intechopen.com
Resistive Training Device. Doctoral Thesis, Wright State University
[20] Tóthová M, Piteľ J (2012) Classification of Models of Pneumatic Artificial Muscles. Proceedings of Workshop on Automation and Control in Theory and Practice ARTEP 2012, Stará Lesná, Slovakia
[21] Smagt V.D.P, Schulten K (1993) Control of Pneumatic Robot Arm Dynamics by a Neural Network. Proceedings of the World Congress on Neural Networks, Portland, OR, USA
[22] Carbonell P, Jiang Z.P, Repperger D (2001) Nonlinear Control of a Pneumatic Muscle Actuator: Backstepping vs. Sliding Mode. Proceedings of IEEE Conference on Control Applications, Saint‐Petersburg, Russia
[23] Zhu X, Tao G, Yao B, Cao J (2008) Adaptive Robust Posture Control of Parallel Manipulator Driven by Pneumatic Muscles with Redundancy. IEEE/ASME Transactions on Mechatronics, Vol.13, No.4: 441‐450
[24] Petrovic P.B (2002) Modeling and Control of an Artificial Muscle. Scientific Bulletin of the ʺPolitehnicaʺ University of Timisoara, Transaction on Mechanics, Vol.47 (61)
[25] Ahn K.K, Thanh T.D.C, Ahn Y.K (2005) Intelligent Switching Control of Pneumatic Artificial Muscle Manipulator. JSME International Journal, Series C, Vol.48, No.4: 657‐667
[26] Castillo O, Martinez‐Marroquin R, Melin P, Valdez F, Soria J (2012) Comparative Study of Bio‐inspired Algorithms Applied to the Optimization of Type‐1 and Type‐2 Fuzzy Controllers for an Autonomous Mobile Robot. Inf. Sci. 192: 19‐38 (2012)
[27] Castillo O, Melin P, Garza A A, Montiel O, Sepulveda R (2011) Optimization of Interval Type‐2 Fuzzy Logic Controllers Using Evolutionary Algorithms. Soft Comput. 15(6): 1145‐1160 (2011)
[28] Martinez‐Soto R, Castillo O, Aguilar L.T (2009) Optimization of Interval Type‐2 Fuzzy Logic Controllers for a Perturbed Autonomous Wheeled Mobile Robot Using Genetic Algorithms. Inf. Sci. 179(13) : 2158‐2174 (2009)
[29] Cazarez‐Castro N.R, Aguilar L.T, Castillo O (2010) Fuzzy Logic Control with Genetic Membership Function Parameters Optimization for the Output Regulation of a Servomechanism with Nonlinear Backlash. Expert Syst. Appl. 37(6): 4368‐4378 (2010)
[30] Astudillo L, Castillo O, Aguilar L.T, Martinez‐Soto R (2007) Hybrid Control for an Autonomous Wheeled Mobile Robot Under Perturbed Torques. IFSA (1) 2007: 594‐603
[31] Lopes A.M, Pires E.J.S, Barbosa M.R (2012) Design of a Parallel Robotic Manipulator using Evolutionary Computing. International Journal of Advanced Robotic Systems, Vol.9, 1‐13
[32] Piteľ J, Boržíková J (2008) Nonlinearity of Static Characteristic of the Antagonistic System. Proceedings of Conference on Mathematical Methods in Technics and Technologies MMTT‐23, Saratov, Russia
[33] Karray F.O, de Silva C (2004) Soft Computing and Intelligent Systems Design. Harlow: Addison‐Wesley, 560 pp.
[34] Hrehová, S, Vagaská A. (2012) Application of Fuzzy Principles in Evaluating Quality of Manufacturing Process. WSEAS Transactions on Power Systems, 2012, Vol.7, No.2: 50‐59
[35] Passino K.M (2005) Biomimicry for Optimization, Control and Automation. London: Springer, 926 pp.
[36] Hošovský A, Havran M (‐) Dynamic Modeling of One Degree of Freedom Pneumatic Muscle‐based Actuator for Industrial Applications. Unpublished yet.
[37] Kovacic Z, Bogdan S (2006) Fuzzy Controller Design: Theory and Applications. Boca Raton: Taylor & Francis, 392 pp.
[38] Beater P (2007) Pneumatic Drives: System Design, Modeling and Control. New York: Springer, 323 pp.
[39] Zhang H, Liu D (2006) Fuzzy Modeling and Fuzzy Control. Cambridge: Birkhauser Boston, 416 pp.
[40] The MathWorks Inc. (2010) Global Optimization Toolbox User’s Guide. Natick: The MathWorks Inc.
11Alexander Hošovsk, Jozef Novák-Marcinčin, Ján Pitel’, Jana Boržíková and Kamil Židek: Model-based Evolution of a Fast Hybrid Fuzzy Adaptive Controller for a Pneumatic Muscle Actuator
www.intechopen.com