Journal of Vibration and Control OnlineFirst, published on January 21, 2008 as doi:10.1177/1077546307080025
Generalized Design of an Anti-swing Fuzzy Logic Controller for an Overhead Crane with Hoist MOHAMED B. TRABIA Department of Mechanical Engineering, University of Nevada, Las Vegas, NV 89154-4027, USA (
[email protected])
JAMIL M. RENNO Center for Intelligent Material Systems and Structures, Virginia Polytechnic Institute and State University, Blacksburg, VA 24061, USA
KAMAL A. F. MOUSTAFA Department of Mechanical Engineering, United Arab Emirates University, Al Ain, UAE (Received 16 May 20061 accepted 16 February 2007)
Abstract: The behavior of many mechanical systems, such as overhead cranes, can be predicted through intuitive observation of their motion under various forces. Mathematical modeling of an overhead crane shows that it is highly coupled. Nonetheless, it is surprisingly easy for an experienced crane operator to drive payloads to target positions with minimal cable swing. This observation naturally promotes the use of fuzzy logic to control overhead cranes. Traditionally, fuzzy logic controllers of overhead cranes were presented for specific crane system/motion parameters. This work presents a novel approach for automatically creating anti-swing fuzzy logic controllers for overhead cranes with hoisting. The model of the crane includes the distributed mass of the cable. The presented approach uses the inverse dynamics of the overhead crane and the desired motion parameters to determine the ranges of the variables of the controllers. The control action is distributed among three fuzzy logic controllers (FLCs): The travel controller, hoist controller, and anti-swing controller. Simulation examples show that the proposed controller can successfully drive overhead cranes under various operating conditions.
Key words:
1. INTRODUCTION The area of swing control of overhead cranes has attracted considerable attention. AbdelRahman et al. (2003) presented a thorough review of various proposed crane models and control strategies for overhead cranes. Recently, many researchers have applied fuzzy logic to control overhead cranes, since this method can mimic human behavior. The following is a brief overview of recent relevant published research on the use of fuzzy logic in this area. Yasunobu and Hasegawa (1986) applied predictive fuzzy control to a shipyard crane control problem. Their objective was to control the motion of the crane using four performance
Journal of Vibration and Control, 00(0): 000–000, 2007 1 12007 SAGE Publications Los Angeles, London, New Delhi, Singapore Figures 3–22 appear in color online: http://jvc.sagepub.com
DOI: 10.1177/1077546307080025
Copyright 2008 by SAGE Publications.
2 M. B. TRABIA ET AL.
characteristics: Evaluation of safety, stop-gap accuracy, minimum container swing, and minimum carrying time. A simple pendulum model was used and motion in one plane only was considered. Itoh et al. (1993) used fuzzy logic to eliminate residual swing of overhead cranes. They used a modified bang-bang motion profile to drive the trolley. The deceleration time was extended to dampen the swing of the payload. Suzuki et al. (1993) introduced a control method for container cranes using fuzzy control to transport the load without swing. They calculated the traveling acceleration time considering the position of obstructions and the cable length at the maximum traveling speed. When the trolley decelerated, the traveling time of the constant speed section was adjusted as a function of the swing angle and its rate of change at the beginning of the deceleration. Benhidjeb and Gissinger (1995) compared fuzzy logic control with the Linear Quadratic Gaussian control for an overhead crane, considering the applicability of the control algorithms in real time. They presented a complete reference trajectory model and examined a number of possible perturbations to study the robustness of the control algorithm in real time. Kijima et al. (1995) optimized a fuzzy controller for an overhead crane. Since their fuzzy controller had six inputs and one output, the total number of fuzzy rules was very large. They reduced the number of rules by using cooperative fuzzy control, and adjusted the membership functions with an improved genetic algorithm (GA). Beliveau et al. (1996) developed a linear time varying state equation for hoisting and lowering operations of a crane system model. They showed that bang-bang control is time-optimal and that the number of switches can be limited. Through parameterization of switching times, a set of fuzzy control variables and an iterative switching time update scheme were extracted to find a set of time-optimal switching times. Nowacki et al. (1996) proposed two independent feedback loops: A proportional regulator for crane velocity, and a fuzzy proportional derivative controller to improve the damping of load swing. Sousa et al. (1996) presented an experimental comparison of different cost functions, using a container crane control example. They compared conventional quadratic criteria with a conjunctive aggregation of fuzzy goals. Moon and VanLandingham (1997) derived a set of energy reducing rules for asymptotic stable feedback control using only position and angle information to simultaneously regulate the crane load angle and transport distance. Liang and Koh (1997) presented a concise approach for implementing an antiswing algorithm for overhead cranes using fuzzy control. Their algorithm, which is based on heuristics, could be incorporated into a fuzzy crane controller by creating proper displacements on the fuzzy rule plane. Gutiérrez and Soto (1998) used fuzzy logic to resemble the behavior of a pre-calculated trolley acceleration profile. They showed that load angular displacement overshoot does not depend on trolley travel distance. Nalley and Trabia (2000) considered the problem of controlling three-dimensional overhead cranes with large payloads. They divided the control action between trolley travel and swing controllers for each motion, to enable detailed tuning of the controllers. A bang-bang profile was used, based on the natural frequency of the payload, to ensure that large amplitudes of load swing are not produced. Cho and Lee (2000) designed an overall controller consisting of a position servo controller, via loop shaping method, and a fuzzy logic controller to suppress load swing. Ha et al. (2001) designed a controller using an algorithm where trolley position, velocity, and load weight were used as parameters to find proper control rules of the controller. Cho and Lee (2001) proposed a controller consisting of a position servo controller and a fuzzy logic controller for a three-dimensional crane system. The position servo controller
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 3
was used to control the position of the crane and the length of the cable, while the fuzzy logic controller was used to suppress load swing. A gain tuning criterion was provided, and results were demonstrated experimentally. Akbarzadeh and Meghdadi (2001) applied a lookup table scheme for fuzzy systems to learn and imitate human control strategies in tracking control of an overhead crane. They focused on fuzzy learning, allowing for the random nature of human behavior. Yi et al. (2002) proposed an anti-swing and positioning fuzzy controller, based on Single Input Rule Modules, for an overhead crane. Lui et al. (2002) proposed a GA based on a two-stage fuzzy controller. Two fuzzy sub-controllers were designed, one each to control the swing and trolley displacement. A real-valued GA was used at two different stages to adjust the parameters of the controllers and ensure trolley positioning precision, minimization of travel time, and damp swing angle at target position. Sharkawy et al. (2003) studied the stability of overhead cranes with fuzzy logic control using Lyapunov functions. Their control law resulted in a stable scheme that was able to exploit the dynamic variables of the system in a linguistic way. The proposed method enables the designer to derive the rule base of the control systematically. Lui et al. (2003) used two sliding mode controllers (SMCs) to control an overhead crane with hoist. One SMC controller is dedicated to hoist and lower payload while the other controls trolley position and payload swing angle. A fuzzy tuning algorithm is used to adjust the relationship between trolley position control and payload sway control. Renno et al. (2004) proposed a one-phase fuzzy controller that was based on inverse dynamics for overhead cranes. While this controller achieved stability and robustness, it exhibited some trolley overshoot and load swinging during motion. Hayajneh et al. (2006) proposed a method for fuzzy logic control of overhead cranes with long and massive payload with a reduced number of rules. Abdel-Rahman et al. (2003) stated that “fuzzy logic strategies are especially hard to tune.” The above literature survey confirms this observation. Most of the reviewed research assumed no hoisting while transporting the load (except for Liu et al. (2003)), but efficient crane operation necessitates hoisting or lowering the load during crane travel. Additionally, fuzzy logic controllers proposed in most of these publications are valid only for specific crane parameters and/or motion variables. This is obviously a severe restriction on general implementation of these controllers since extensive re-tuning will be required whenever there is a change in the specifications of the crane, payload, and/or motion parameters. The objective of this paper is to develop an anti-swing fuzzy logic controller for an overhead crane that moves while the payload is being hoisted or lowered. Developing a single controller for such a crane’s operation is a formidable task. This paper suggests, therefore, using three fuzzy logic controllers: Travel controller, hoist controller, and anti-swing controller. In addition to proposing fuzzy rules and formulae for spacing the fuzzy variables, the paper presents a novel method for calculating the ranges of the variables of the controllers based on the inverse dynamics of the crane and the parameters of its desired motion. The proposed control strategy can thus be easily modified to work with any modification of desired motion or system parameters. The remainder of this paper is divided as follows. Section 2 presents a model for the dynamics of the crane. In Section 3, the fuzzy controllers are developed. Section 4 presents the simulation examples and results. Finally, conclusions for this paper are drawn in Section 5.
4 M. B. TRABIA ET AL.
Figure 1. Schematic representation of an overhead crane with hoist.
2. DYNAMIC MODEL OF THE OVERHEAD CRANE WITH VARIABLE CABLE LENGTH Figure 1 shows a schematic of an overhead crane with hoist. The crane is composed of a trolley of mass mT that moves along straight horizontal rails. The trolley has a drum that hoists a cable of length l and linear density 1 C . The payload m P is attached to the end of the cable. Based on the model proposed by Lee (1998), a system of three equations is used to represent the dynamics of the overhead crane. In this model, the cable is assumed to be inextensible, and friction and slip are not considered. Two forces control the motion of the crane: F x at the trolley and Fl along the cable control of the crane. 1 5 x2 2 2 2 6 3 2 22 [A] 3 4B5 6 4F5 3 2 2 2 7 4 2 2 l
(1)
where A, B, and F are defined as: 8
m P 3 mT 3 1C l 9 1C l [A] 6 9
m P 3 2 l cos 425 m P 3 12C l sin 42 5
m P 3 12C l l cos 425 m P 3 12C l sin 425 m P 3 13C l l 2 0 0
mP 3
1C l 4
3
(2)
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 5
1 2 2 1 2 7 7 2 l 1 8 m l 2 sin 425 8 12 1 C l 2 27 sin 425 2 P 2 C 2 2 2 2 2 2 2 3 l7 cos 425 2m P 3 32 1 C l 27 3 1 C x7 2 3 1 4B5 6 721 7 C l 3 4m P l727 3 1 C l727 cos 42 5 l 2m 3 1 l g sin 3 2 l 425 P C 2 2 2 2 2 2 1 1 l72 8 m 3 1 1 l l 27 2 8 1 1 l 27 cos 425 3 x7 x7 2 2 P 8 C 2 C 2 C 2 2 2 4 8 m P 3 1 C l g cos 425
5 2 2 2 2 2 2 2 2 2 2 6 2 2 2 2 2 2 2 2 2 2 7
3
(3)
and, 1 5 2 Fx 2 2 2 3 6 4F5 6 6 0 2 2 2 4 F 2 7
(4)
l
3. DEVELOPMENT OF THE FUZZY LOGIC CONTROLLER Study of the equations of motion of the crane system shows that x, 2 and l are coupled. Attempting to design a single fuzzy logic controller for an overhead crane that is traveling and hoisting the load simultaneously can be daunting, as it may be difficult to establish heuristic relations between all the variables based on intuition and observation of the system’s behavior. Therefore, control action is distributed between three controllers, as shown in Figure 2. Each controller has two inputs and a single output1 the inputs used are the errors with respect to the desired motion and velocity profiles of the trolley, swinging movement, and payload. The first control is the Travel Fuzzy Logic Controller (TFLC) whose inputs are the errors ex and edx in the displacement and velocity of the trolley travel. The output of this controller is a force signal to the trolley actuator, F T . The Hoisting Fuzzy Logic Controller (HFLC) has the displacement and velocity errors of the payload, el and edl , for its inputs. The output of the controller is the force signal to the drum actuator, Fl . Gravitational effects on the payload are canceled using feed-forward control. Finally, the third controller is used to suppress the residual load swing, and is called the Anti-swing Fuzzy Logic Controller (ASFLC). The inputs of this controller are the errors e2 and ed 2 of the angular rotation and angular velocity of the payload. The output of ASFLC is a force signal to the trolley actuator, F2 . F T and F2 combine to give F x , the force that drives the trolley. In this work, the desired trolley motion profile is a bang-bang acceleration profile, exciting two opposite load swings and having zero values of the swing angle and angular velocity at the end of the active motion. A corresponding desired payload hoisting/lowering profile and desired payload swing motion profile are proposed in Appendix A and Appendix B respectively.
6 M. B. TRABIA ET AL.
Figure 2. Distributed fuzzy logic controller for an overhead crane with hoist (gravity feed-forward is not shown).
3.1. Design of the Controllers
Fuzzy rules for the three controllers are derived based on observations of the behavior of the crane. Gaussian membership functions are used to describe the membership functions of all fuzzy variables: 74x5 6 e
84x8c52 28 2
6
(5)
The center of gravity method is used for defuzzification (Langari and Yen, 1999). 3.1.1. Design of the TFLC and HFLC
Three membership functions (negative big (NB), zero (Z), and positive big (PB)) are used to describe each of the inputs to these two controllers. Five membership functions (NB, negative small (NS), Z, positive small (PS) and PB) are used for each output. The rules of
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 7
Table 1. Rules of the Trolley Fuzzy Logic Controller (TFLC).
edx
NB Z PB
ex 9 Z NS Z PS
NB NB NS Z
PB Z PS PB
Table 2. Rules of the Hoisting Fuzzy Logic Controller (HFLC).
edl
NB Z PB
el 9 Z NS Z PS
NB NB NS Z
PB Z PS PB
the TFLC and HFLC are listed in Tables 1 and 2 respectively. The rules of TFLC and HFLC are based on observations of the behavior of a PD controller for an inertial system (Passino and Yurkovich, 1998). The membership functions for all variables are symmetrical about the zero value of each variable. Membership functions for the nth input variable of a controller j are arranged according to the following equations: 8 P B3 j3i3n 8 Z3 j3i3n
6 9 j3i3n c P B3 j3i3n 6 j3i3n 8 P B3 j3i3n 3
(6) c Z 3 j3i3n 6 0
(7)
where 9 j3i3n and j3i3n are design parameters controlling the standard deviations of the Gaussian membership functions (the subscripts i and o refer to input and output, here and afterwards). These two parameters, with c P B3 j3i3n , control the shape and distribution for the other membership functions for a variable. The design parameters 9 j3i3n and j3i3n are to be selected by the user to achieve best performance. Due to the symmetry of membership functions, one can write: 8 N B3 j3i3n 6 8 P B3 j3i3n 3
c N B3 j3i3n 6 8c P B3 j3i3n 6
(8)
Similarly, the membership functions for the output variable of a controller j are arranged according to the following equations: 8 P B3 j3o 6 9 j3o31 c P B3 j3o 3
(9)
8 P S3 j3o 6 j3o31 8 P B3 j3o 3
8 Z 3 j3o 6 j3o31 8 P S3 j3o 3
(10)
c P S3 j3o 6 j3o31 c P B3 j3o 3
c Z3 j3o 6 06
(11)
8 M. B. TRABIA ET AL.
Figure 3. Typical control surface for the TFLC or HFLC.
Due to symmetry, equations similar to (9), (10), and (11) can also be written for the parameters of the NB and NS membership functions. Choosing the fuzzy rules and shapes of membership functions for TFLC and HFLC results in a control surface (shown in Figure 3) that is flat near the zero point of input variables, and also near the extremes of the range. This surface design ensures that these two controllers do not excite the system as the value of the error approaches zero. 3.1.2. Design of the ASFLC
Experimenting with the model of the crane shows that a more complex controller is needed to deal with the swinging of the payload. Therefore, the ASFLC uses seven membership functions (NB, negative medium (NM), NS, Z, PS, positive medium (PM), and PB) for the output and each of the two inputs for this controller. The rules of the controller are listed in Table 3. The rules for the ASFLC are selected to produce input whenever the payload is swinging away from the vertical direction. The membership functions for all variables are symmetric about the zero value of each variable. These functions are arranged similar to those of the TFLC and HFLC, which are presented in the previous section (see also Renno et al., 2004). This choice of the fuzzy rules and shapes of membership functions for ASFLC results in a control surface that is only flat at two corners, as shown in Figure 4.
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 9
Figure 4. Typical control surface for the ASFLC.
Table 3. Rules of the Anti-swing Fuzzy Logic Controller (ASFLC).
ed 2
NB NM NS Z PS PM PB
NB PB PB PM PM PS PS Z
NM PB PM PM PS PS Z NS
NS PM PM PS PS Z NS NS
e2 9 Z PM PS PS Z NS NS NM
PS PS PS Z NS NS NM NM
PM PS Z NS NS NM NM NB
PB Z NS NS NM NM NB NB
3.2. Defining the Ranges of the Controllers’ Variables Using Inverse Dynamics
The behaviour of the controllers is de2ned by the ranges of input and output variables. Instead of leaving these ranges static or empirically modifying them, this work proposes a method for adjusting these ranges whenever the parameters of the crane or the desired crane path change. The range of the input variables for the three controllers is chosen as a function of the desired crane motion and system parameters. The remainder of this section presents a method of obtaining the range of forces for each controller corresponding to the desired crane motion. The absolute values of the desired forces are obtained via the inverse dynamics of the system (see Appendix C). These values correspond to the desired center of gravity of the PB
10 M. B. TRABIA ET AL.
membership function of the output variables of the controllers. For an output variable of a controller, , the maximum value of the mean of the PB membership function, c P B33o31 , for a given center of gravity C G P B33o , can be calculated using the following equation: c P B33o31
C G P B33o31 6
4
xe
8 x8c P B33o31 2 8 2P B33o31
52 dx
8 c P B33o31
4
e
8 x8c P B33o31 2 8 2P B33o31
6
52
(12)
dx
8
Solving the above equation symbolically yields c P B33o31 6 R3o31 C G P B33o31
(13)
where 2
R3o31 6 6 2 8 29 3o31
(14)
3.2.1. Defining the Ranges of the Parameters of the TFLC
The means of the variables of the TFLC are defined as cT F LC3P B3ex 6 T F LC3P B3ex max x D
(15)
cT F LC3P B3edx 6 T F LC3P B3edx max x7 D
(16)
and
where T F LC3P B3ex and T F LC3P B3edx are design parameters controlling the range of the TFLC inputs. The desired center of gravity of the PB membership function of the output force of the TFLC is calculated using C G T F LC3P B3FT
6 max 4 Fx D 5 3
max 4 T2 D 5 cos 4max 42 D 55 min 4l5
3 max 4 Fl D 5 sin 4max 42 D 55
(17)
where T 2 D is a torque that should be applied at the point where the cable leaves the drum to obtain the desired degree of swing in the cable. The above equation uses the inverse dynamics reported in Appendix C to calculate the force that the TFLC should produce to generate this desired motion. The above equation combines the inverse dynamic force that is needed to drive the trolley and the component of the inverse dynamic swinging force and cable force in the trolley direction. The center of the output PB membership function is
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 11 cT F LC3P B3FT 6 RT F LC3o31 C G T F LC3P B3FT 6
(18)
3.2.2. Defining the Ranges of the Parameters of the HFLC
The ranges of the variables of HFLC are defined as c H F LC3P B3el 6 H F LC3P B3el l 405 8 l 4t D 5
(19)
c H F LC3P B3edl 6 H F LC3P B3edl max 7l D
(20)
and
where H F LC3P B3el and H F LC3P B3edl are design parameters controlling the range of the HFLC inputs. The center of the PB membership function of the output force of the HFLC can be calculated by first identifying the center of gravity of this function using the equation C G H F LC3P B3Fl 6 max 4 Fl D 5
(21)
(Fl D can be calculated using Appendix C.) The center of the output PB membership function is c H F LC3P B3Fl 6 R H F LC3o31 C G H F LC3P B3Fl 6
(22)
3.2.3. Defining the Ranges of the Parameters of the ASFLC
Based on the desired swing of payload from Appendix B, the ranges of the variables of the ASFLC are defined as c AS F LC3 P B3 e2 6 AS F LC3 P B3 e2 2 D max
(23)
c AS F LC3 P B3 ed2 6 AS F LC3 P B3 ed2 27 D max
(24)
and
where AS F LC3 P B3 e2 and AS F LC3 P B3 ed2 are design parameters controlling the range of the ASFLC inputs. The trolley motor is used to dampen swinging errors, producing the force necessary to counteract this swinging. The center of the PB membership function of the output force of ASFLC can be calculated using C G AS F LC3P B3F 2 6
max 4 T2 D 5 cos 4max 42 D 55 6 min 4l5
(25)
12 M. B. TRABIA ET AL.
Table 4. Values of the design parameters.
Design parameter 9 T F LC3i3n 6 9 H F LC3i3n 6 9 AS F LC3i3n n 6 13 2 9 T F LC3o31 6 9 H F LC3o31 6 9 AS F LC3o31
T F LC3i3n 6 H F LC3i3n 6 AS F LC3i3n n 6 13 2
T F LC3o31 6 H F LC3o31 6 AS F LC3o31
T F LC3P B3ex 6 H F LC3P B3el
T F LC3P B3edx 6 H F LC3P B3edk
AS F LC3P B3e2
AS F LC3P B3ed2
Value 0.3 0.3 0.5 0.5 0.01 0.10 0.1 1
Table 5. Specifications of the cranes tested.
Overhead crane I II
mT (Kg) 1000 20
m P (Kg) 300 10
1 C (Kg/m) 1.4 0.1
The center of the PB membership function, c AS F LC3P B3F2 , is c AS F LC3P B3F2 6 R AS F LC3o31 C G AS F LC3P B3F2 6
(26)
4. CASE STUDIES Based on extensive simulation, the parameter values given in Table 4 were found to achieve a good overall performance. The controllers developed in the preceding sections are applied here to the two overhead cranes whose specifications are listed in Table 5. Liu et al. (2003) used the specifications of Crane II in this table, but without including the distributed mass of the cable, and the results of our proposed controller are compared with those of Liu’s algorithm. The sampling frequency is 10 Hz. The maximum desired swing, 2 Dmax , is five degrees in both examples. Table 6 shows the parameters of two possible crane motion and hoisting scenarios. The duration of both the acceleration and deceleration periods of the trolley motion, ta (Appendix A), is six seconds in each motion scenario. In the second motion scenario, the payload goes through a three-stage motion1 the payload is hoisted and lowered in nine seconds using a bang-bang acceleration profile. The duration of acceleration and deceleration periods for both hoisting and lowering is three seconds in this example. Four case studies are presented in this paper to demonstrate the flexibility of the proposed controller: (a) Crane I with motion scenario S, (b) crane II with motion scenario L, (c) crane I with motion scenario L, and (d) crane II with motion scenario S. Due to size limitations, the results of the last case are only discussed briefly in the remainder of this work. Tables 7 to 9 list the ranges of the variables of the fuzzy controllers for the first three of the four case studies considered. As expected, (a) and (c), which both use
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 13
Table 6. Characteristics of the simulated motion scenarios.
Motion scenario
S L
Desired trolley travel (m) 10 40
Active motion time, t D , (s) 16 30
Total simulation time (s) 30 40
Number of hoisting phases 1 3
Initial cable length (m) 12 10 5 5
Final cable length (m) 4 5 5 10
Desired cable phase time (s) 16 16 8 16
Table 7. Ranges of the input and output variables of the fuzzy controllers for case study (a).
TFLC
HFLC
ASFLC
Ranges of fuzzy variables cT F LC1P B1ex cT F LC1P B1edx cT F LC1P B1FT c H F LC1P B1el c H F LC1P B1edl c H F LC1P B1Fl c ASLC1P B1e2 c ASLC1P B1ed2 c AS F LC1P B1F2
Value 1 0.1 m 1 0.1 m/sec 1 1108.1 N 1 0.08 m 1 0.08 m/sec 1 59.2 N 1 0.009 rad 10.058 rad/sec 1683.7 N
Table 8. Ranges of the input and output variables of the fuzzy controllers for case study (b).
TFLC
HFLC
ASFLC
Ranges of fuzzy variables cT F LC1P B1ex cT F LC1P B1edx cT F LC1P B1FT c H F LC1P B1el c H F LC1P B1edl c H F LC1P B1Fl c ASLC1P B1e2 c ASLC1P B1ed2 c AS F LC1P B1F2
Value 1 0.4 m 10.17 m/sec 126.94 N 1 0.05 m 10.083 m/se 13.64 N 1 0.009 rad 10.058 rad/sec 111.76 N
crane I, have significantly higher values for cT F LC1P B1FT , c H F LC1P B1Fl , and c AS F LC1P B1Fl than (b), which uses a much lighter crane and payload. While (a) and (c) use the same crane and payload, the motion scenario resulted in different force ranges of the three controllers, as can be seen by comparing the values of the ranges in Tables 7 and 9. Figures 5 to 7 show the motions of the system for case (a), while Figures 8 and 9 show the forces for the trolley and hoist, respectively. The trolley experiences a limited overshoot of 0.8%. Similarly, hoisting experiences limited overshoot of 0.4%. The maximum swing of the payload is 2.5 degrees. Swinging has been practically eliminated by five seconds after the end of the desired motion time. Travel and anti-swing forces largely cancel each other
14 M. B. TRABIA ET AL.
Figure 5. Desired and actual motion of the trolley for case (a).
Table 9. Ranges of the input and output variables of the fuzzy controllers for case study (c).
TFLC
HFLC
ASFLC
Ranges of fuzzy variables cT F LC3P B3ex cT F LC3P B3edx cT F LC3P B3FT c H F LC3P B3el c H F LC3P B3edl c H F LC3P B3Fl c ASLC3P B3e2 c ASLC3P B3ed2 c AS F LC3P B3F2
Value 0.4 m 0.17 m/sec 919.1 N 0.05 m 0.083 m/sec 107.97 N 0.009 rad 0.058 rad/sec 346.02 N
out after the end of the desired motion stage, and force-time histories show that the trolley and hoisting forces roughly correspond to the bang-bang profile used for generating the desired motion. Figure 9 shows that the travel force shows some fluctuations whenever there is a switch between acceleration and deceleration. The frequency and magnitude of these oscillations are not particularly high, and can readily be reproduced by industrial controllers. Similar observations can be established for case (b) (Figures 10 to 15), where the overshoot of the trolley is 0.8% while the hoist overshoot is 0.36%. The maximum payload swing is 3.2 degrees. Swinging is eliminated within eight seconds of the end of the desired motion time. Time history of the control forces follows the acceleration profile. The performance in case (c) can be seen in Figures 16 to 21. The maximum overshoot is 1.2% and 0.4% for the trolley and hoist respectively. The maximum payload swing is 3.2
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 15
Figure 6. Desired and actual motion of the payload for case (a).
Figure 7. Payload swing for case (a).
16 M. B. TRABIA ET AL.
Figure 8. Motion of the crane payload (plotted once per second) for case (a).
Figure 9. Travel and anti-swing forces for case (a).
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 17
Figure 10. Hoisting force for case (a).
Figure 11. Desired and actual motion of the trolley for case (b).
18 M. B. TRABIA ET AL.
Figure 12. Desired and actual motion of the payload for case (b).
Figure 13. Payload swing for case (b).
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 19
Figure 14. Motion of the crane payload (plotted once per second) in case (b).
Figure 15. Travel and anti-swing forces for case (b).
20 M. B. TRABIA ET AL.
Figure 16. Hoisting force for case (b).
Figure 17. Desired and actual motion of the trolley for case (c).
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 21
Figure 18. Desired and actual motion of the payload for case (c).
Figure 19. Payload swing for case (c).
22 M. B. TRABIA ET AL.
Figure 20. Motion of the crane payload (plotted once per second) for case (c).
Figure 21. Travel and anti-swing forces for case (c).
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 23
Figure 22. Hoist force for case (c).
degrees, as in case (b). Swinging is eliminated within nine seconds of the end of the desired motion time. Forces follow the same pattern as the previous example. Figures 8, 13, and 19 display the Cartesian motion of the payload for case studies (a), (b), and (c) respectively. The results displayed in the time history plots of the travel, swing and hoisting are clearly reflected in these three figures. Six quantities are used to assess the efficacy of the proposed controller. These are: Trolley overshoot index (TOI), trolley steady state error index (TSSI), hoist overshoot index (HOI), hoist steady state error index (HSSI), swing range (SR), and swing settling index (SSI). These measures are calculated as follows: T OI
6
T SS I
6
HOI
6
H SS I
6
max 4x5 8 max 4x D 5 max 4x D 5 xt6t f 8 max 4x D 5 max 4x D 5 max 4l5 8 max 4l D 5 max 4l D 5 lt6t f 8 max 4l D 5 max 4l D 5
S R 6 max425 8 min425 SS I
6
Time at which 2 is less than 0.06 deg 6 td
(27)
(28) (29)
(30) (31) (32)
24 M. B. TRABIA ET AL.
Table 10. Performance results.
Case (a) (b) (c) (d)
TOI 0.008 0.008 0.005 0.005
TSSI 0.00120 0.00025 0.00125 0.00050
HOI 0.0075 0.0040 0.0040 0.0013
HSSI 0.00005 0.00002 0.00002 0.00005
SR (deg) 4.57 6.08 5.92 4.66
SSI 1.38 1.27 1.31 0.99
Table 10 below shows the results of the above simulations in terms of these performance measures. Overall, the results are consistent for the four presented cases, showing the flexibility of the proposed approach. The magnitudes of the trolley and hoisting overshoots, as well as the times required to eliminate them, are acceptable and compare well with those of other techniques as shown in the results for case (b). The steady state error of the hoisting motion is negligible for all cases. However, the steady state errors of the trolley travel are consistently higher than those of the hoisting motion, which may be due to the coupling between the travel and swing motions. Analogous results are observed for the travel and hoisting overshoot, and can again be explained by the coupling within the system. Results show that while the swing angle is limited, it takes more time to dampen than to correct overshoot of the trolley and hoisting, which is a reflection of the fact that the crane in underactuated with respect to swing. These results are also consistent with those of other overhead crane controllers that were surveyed in the literature.
5. CONCLUSIONS This paper presents a distributed fuzzy logic controller for an overhead crane that simultaneously moves and hoists its payload. The control action is distributed between three controllers: 1. The TFLC, whose inputs are the displacement and velocity errors of the trolley. The output of the controller is the force signal to the trolley actuator. 2. The HFLC, whose inputs are the displacement and velocity errors of the payload. The output of the controller is the force signal to the drum actuator. Gravitational effects on the payload are canceled using feed forward control. 3. The ASFLC, whose inputs are the angular displacement and velocity errors of the payload. The output of the controller is the force signal to the trolley actuator. A novel method for adjusting the ranges of the input and output variables of the three fuzzy logic controllers using inverse dynamics is presented, based on the system’s characteristics and desired motion. The relative shapes and distribution of the membership functions with respect to each other remain fixed. The proposed method, which can be extended to other dynamic systems, has the advantage of avoiding guessing acceptable ranges of the fuzzy variables. The controller is applied to four case studies using significantly different motion profiles for the trolley and cable. Results show that the proposed controller consistently produces stable motion with minimal overshoot and payload swing. The results of the paper are com-
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 25
pared to results of a previously published work and the advantages of the present approach are shown. The values of the design parameters that control the shape of the membership functions, 9, , and , and the ranges of the input variables of the fuzzy controllers are selected here to obtain good performance under simulation. The optimum choice of these design parameters to satisfy an appropriate criterion function is currently under investigation.
APPENDIX A. DESIRED HOISTING/LOWERING OF THE PAYLOAD Hoisting/lowering of the payload has the same acceleration profile as used for the trolley: Acceleration, zero acceleration, and deceleration equal in magnitude to the acceleration of the first period and for the same duration. It is assumed that the trolley travel and hoisting start and end their desired motions simultaneously. In this work, two motion scenarios are considered: A one-stage motion scenario, where hoisting (or lowering) takes the same time as the trolley travel. The acceleration and deceleration periods are equal to ta . A more complex motion scenario, where the payload goes through these desired three stages: 1. Hoist/Lower the payload in at D , where a is less than 0.5, using the same acceleration profile as for the trolley. Durations of acceleration and deceleration periods are equal to t p. 2. Keep the cable length constant for t D 8 2at D . 3. Move in the opposite sense to step (a) for at D to return to the original position, using a bang-bang acceleration profile.
APPENDIX B. DESIRED SWINGING OF THE PAYLOAD The crane system is under-actuated, as it does not have an actuator that supplies torque to counteract the swinging of the payload. Observation of actual crane motion show that a typical payload swing profile has the following features: First, the payload swings in the opposite direction to the desired trolley motion. After reaching a maximum value, the swing angle then drops close to zero, where it stays while the crane velocity is constant. Close to the end of the desired trolley motion, the payload swings in the opposite direction to that in step (a). Again, the swing angle should come close to zero at the end of this stage. In this work, the duration of each of the first and third stages is ta , matching the desired motion profile of the trolley. Figure B.1 shows the stages of this motion, which can be achieved by several means. In this paper, a bang-bang acceleration profile (Figure B.2) is used to create the desired swing profile. The maximum acceleration used to achieve this motion is 22 D max 6
162 D max 6 ta2
(B.1)
26 M. B. TRABIA ET AL.
Figure B.1. Desired swing profile.
Figure B.2. Desired swing acceleration profile.
APPENDIX C. INVERSE DYNAMICS OF THE OVERHEAD CRANE MODEL Based on the equations of the crane dynamics, equations that describe the necessary forces to move the payload of the crane along a desired path (x D , 2 D , l D ) can be expressed as: Fx D
6
m P 3 mT 3 1C lD
m P 3 12 1 C l D l D cos 42 D 5 m P 3 12 1 C l D sin 42 D 5
1 5 x2 D 2 2 2 2 3 6 1 1 2 2 2 2 7 7 2D 3 1 C l D 8 m P l D 2 D sin 42 D 5 8 1 C l 2D 27 D sin 42 D 5 2 2 2 2 2 4 2 2 7 lD 3 7 7 3 l D cos 42 D 5 2m P 3 1 C l 2 D 3 1 C x7 D 3 2
(C.1)
GENERALIZED DESIGN OF AN ANTI-SWING FUZZY LOGIC CONTROLLER 27
T2 D
6
3 3
Fl D
6
m P 3 12 1 C l D l D cos 42 D 5 m P 3 13 1 C l D l 2D
1 2 2 x2 D 3 22 D 0 2 2 4 2 lD
5 2 2 6 2 2 7
1 l D 2m P 3 1 C l D g sin 42 D 5 3 2l7D 27 D 1 C l D 3 4m P l7D 27 D 2 1 C l7D 27 D cos 42 D 5 3 m P 3 12 1 C l D sin 42 D 5 0 m P 3 14 1 C l D
1 2 2 x2 D 3 22 D 2 2 4 2 lD
(C.2)
5 2 2 6 2 2 7
1 72 1 1 2 1 C l D 8 m P 3 1 C l D l D 27 D 8 1 C l D 27 D cos 42 D 5 3 x7 D x7 D 8 2 2 8 m P 3 1 C l D g cos 42 D 5 6
3
(C.3)
where F x D is the force that should be applied to the trolley, T 2 D is a torque that should be applied at the point where the cable leaves the drum, and Fl D is the force applied to hoist the cable.
REFERENCES Abdel-Rahman, E. M., Nayfeh, A. H., and Masoud, Z. N., 2003, “Dynamics and control of cranes: A review,” Journal of Vibration and Control 9, 863–908. Akbarzadeh-Totonchi, M. R. and Meghdadi, A. H., 2001, “Fuzzy modeling of human control strategy for overhead crane,” in Proceedings of the 10th IEEE International Conference on Fuzzy Systems, Melbourne, Australia, December 2–5, pp. 1076–1079. Beliveau, Y. J., Moon, M. S., and VanLandingham, H. F., 1996, “Fuzzy time optimal control of crane load,” in Proceedings of the 35th IEEE Decision and Control Conference, Kobe, Japan, December 11–13, pp. 1127– 1132. Benhidjeb, A. and Gissinger, G., 1995, “Fuzzy control of an overhead crane performance comparison with classic control,” Control Engineering Practice 3(2), 1687–1696. Cho, S. K. and Lee, H. H., 2000, “An anti-swing control of a 3-dimensional overhead crane,” in Proceedings of the American Control Conference, Chicago, IL, June 28–30, pp. 1037–1041. Cho, S. K. and Lee, H. H., 2001, “A new fuzzy-logic anti-swing control for industrial three–dimensional overhead cranes,” in Proceedings of the IEEE International Conference on Robotics and Automation, Seoul, Korea, May 21–26, pp. 2956–2961. Gutiérrez, M. and Soto, R., 1998, “Fuzzy control of a scale prototype overhead crane,” in Proceedings of the 37 th IEEE Conference on Decision & Control, Tampa, FL, December 16–18, pp. 4266–4268. Ha, D. Y., Choo, Y. G., Kang, S., and Lim, Y. D., 2001, “Design of container crane controller using intelligence algorithms,” in Proceedings of the 2001 IEEE International Fuzzy Systems Conference, Melbourne, Australia, December 2–5, pp. 1507–1510. Hayajneh, M., Radaideh, S., and Smadi, I., 2006 “Fuzzy logic controller for overhead cranes,” Engineering Computations 23(1), 84–98. Itoh, O., Migita, H., Itoh, J., and Irie, Y., 1993, “Application of fuzzy control to automatic crane operation,” in Proceedings of IECON93, Maui, HI, November 15–19, pp. 161–164.
28 M. B. TRABIA ET AL.
Kijima, Y., Ohtsubo, R., Yamada, S., and Fujikawa, H., 1995, “An optimization of fuzzy controller and its application to overhead crane,” in Proceedings of the 1995 IEEE 21st International Conference on Industrial Electronics, Control, and Instrumentation, Orlando, FL, November 6–10, pp. 1508–1513. Langari, R. and Yen, J., 1999, Fuzzy Logic: Intelligence, Control, and Information, Prentice Hall, Englewood Cliffs, NJ. Lee, H. H., 1998, “Modeling and control of a three-dimensional overhead crane,” ASME Journal of Dynamic Systems, Measurements, and Control 120, 471–476. Liang, Y. and Koh, K., 1997, “Concise anti-swing approach for fuzzy crane control,” Electronics Letters 33(2), 167–168. Liu, D., Yi, J., and Tan, M., 2002, “Proposal of GA-based two stage fuzzy control of overhead crane,” in TENCOM 2002 Proceedings, 2002 IEEE Region 10 Conference on Computers, Communications, Control and Power Engineering, Beijing, China, October 28–31, pp. 1721–1724. Liu, D., Yi, J., and Wao, D., 2003, “Fuzzy tuning sliding mode control of transporting for an overhead crane,” in Proceedings of the Second International Conference on Machine Learning and Cybernetics, Xi’an, China, November 2–5, pp. 2541–2546. Moon, M. S. and VanLandingham, H. F., 1997, “Fuzzy feedback control of crane with energy reducing rules,” in Proceedings of the 1997 Artificial Neural Networks in Engineering Conference (ANNIE’97), St. Louis, MO, November 9–12. Nalley, M. J. and Trabia, M. B., 2000, “Control of overhead cranes using a fuzzy logic controller,” Journal of Intelligent and Fuzzy Systems 8, 1–18. Nowacki, Z., Owczarz, D., and Wo´zaniak, P., 1996, “On the robustness of fuzzy control of an overhead crane,” in Proceedings of the IEEE International Symposium on Industrial Electronics, Warsaw, Poland, June 17–20, pp. 433–437. Passino, K. and Yurkovich, S., 1998, Fuzzy Control, Addison-Wesley, Menlo Park, CA. Renno, J. M., Trabia, M., and Moustafa, K., 2004, “Anti-swing adaptive fuzzy controller for an overhead crane with hoisting,” in Proceedings of the ASME International Mechanical Engineering Congress and Exposition, Anaheim, CA. Sharkawy, A. B., El-Awady, H., and Moustafa, K. A. F., 2003, “Stable fuzzy control for a class of nonlinear systems,” Transactions of the Institute of Measurement and Control 25(3), 265–278. Sousa, J. M., Babuška, R., Bruijn, P., and Verbruggen H. B., 1996, “Comparison of conventional and fuzzy predictive control,” in Proceedings of the 5th IEEE International Conference on Fuzzy Systems, New Orleans, LA, September 8–11, pp. 1782–1787. Suzuki, Y., Yamada, S., and Fujikawa, H., 1993 “Anti-swing control of the container crane by fuzzy control,” in Proceedings of IECON93, Maui, HI, November 15–19, pp. 230–235. Yasunobu, S. and Hasegawa, T., 1986, “Evaluation of an automatic container crane operation system based on predictive fuzzy control,” Control-Theory and Advanced Technology 2(3), 419–432. Yi, J., Yubazaki, N., and Hirota, K., 2002, “Anti-swing fuzzy control of overhead traveling crane,” in Proceedings of the 2002 IEEE International Conference on Fuzzy Systems, Honolulu, HI, May 12–17, pp. 1298–1303.