The document describes using fuzzy logic to control a container crane. Conventional PID control was unsuccessful due to the non-linear nature of the control task. Fuzzy logic mimics the "rules of thumb" that human operators use to consider both position and sway angle. The fuzzy logic system defines linguistic variables for distance, angle, and motor power. It then develops inference rules relating these variables and uses fuzzification, inference, and defuzzification to generate motor power control signals. The fuzzy logic approach provides an effective yet transparent solution compared to conventional non-linear modeling and control techniques.
2. Container Crane Case Study.
? In crane control, the objective is to position a load over a target
point.
? While the load connected to the crane head by flexible cables may
well sway within certain limits during transportation, the sway must be
reduced to almost zero for load release when the target position is
reached.
? Hence, a controller must use at least two input variables, for example
position and sway angle.
? Conventional PID control was not successful because the control task
is inherently non-linear. For example, sway minimization is important
only when the container is close to the target.
? Others have tried to derive a mathematical model of the crane to use
this in a model-based controller. They came up with a fifth-degree
differential equation that describes the mechanical behavior.
3. Although in theory, controller design based on this model
should work, in reality it does not. The reasons for this are:
? The weight of the container is unknown.
? The crane motor behavior is by far not as linear as
assumed in the model, and its gear box involves slack
(relaxed parts).
? The crane head only moves with friction and its cables
involve elasticity.
? Disturbances such as wind gusts cannot be included in the
model.
Container Crane Case Study.
6. Container Crane Case Study.
? In spite of the difficulties involved with automated control, human
operators can control cranes quite well in most cases.
? The analysis of the operator's actions reveals that the operator uses some "rules of
thumb" to describe his control strategy:
? Start with medium power.
? If you get started and you are still far away from target, adjust the motor power so
that the container gets a little behind the crane head.
? If you are closer to the target, reduce speed so the container gets a little ahead of
the crane head.
? When the container is very close to the target position, power up the motor.
? When the container is over the target and the sway is zero, stop the
motor.
No differential equations are required for this, and disturbances and nonlinearities are
compensated by the operator's observation of the container's position.
8. Fuzzification: Linguistic variable
? The Linguistic Variables Are the ¡°Vocabulary¡± of a Fuzzy Logic System
? Term Definitions:
Distance := {far, medium, close, zero, neg_close}
Angle := {pos_big, pos_small, zero, neg_small, neg_big}
Power := {pos_high, pos_medium, zero, neg_medium, neg_high}
Membership Function:
9. Fuzzy inference : Rules
? The Rules of the Fuzzy Logic Systems Are the ¡°Laws¡± It Executes !
? Computation of the ¡°IF-THEN¡±-Rules:
#1 : IF Distance = medium AND Angle = pos_small THEN Power = pos_medium
#2: IF Distance = medium AND Angle = zero THEN Power = zero
#3: IF Distance = far AND Angle = zero THEN Power = pos_medium
1. IF Distance = far AND Angle = zero
THEN power = pos_medium
2. IF Distance = far AND Angle = neg_small
THEN power = pos_big
3. IF Distance = far AND Angle = neg_big
THEN power = pos_medium
4. IF Distance = medium AND Angle = neg_small
THEN power = neg_medium
5. IF Distance = close AND Angle = pos_small
THEN power = pos_medium
6. IF Distance = zero AND Angle = zero
THEN power = zero
10. Fuzzification: Linguistic variable
Computation of the ¡°IF-THEN¡±-Rules:
#1 : IF Distance = medium AND Angle = pos_small THEN Power = pos_medium
#2: IF Distance = medium AND Angle = zero THEN Power = zero
#3: IF Distance = far AND Angle = zero THEN Power = pos_medium
11. Fuzzy--Inference:: -- Aggregation
? Aggregation Computes How ¡°Appropriate¡± Each Rule Is for the Current
Situation !
Boolean Logic Only
Defines Operators for 0/1 :
Fuzzy Logic Delivers a Continuous Extension:
AND: ?AvB = min{ ?A; ?B }
OR: ?A+B = max{ ?A; ?B }
NOT: ?-A = 1 - ?A
Aggregation of the ¡°IF¡±-Part:
#1 : min{ 0.9, 0.8 } = 0.8
#2: min{ 0.9, 0.2 } = 0.2
#3: min{ 0.1 , 0.2 } = 0.1
12. Next develop the rules use matrix form How
many rules maximum?
Distance
Angle
NBNSZEPSPB
Too far zero close med far
13. Fuzzy--Inference:: Composition
Composition Computes How Each Rule Influences the Output Variables !
Computation of the ¡°IF-THEN¡±-Rules:
#1 : IF Distance = medium AND Angle = pos_small THEN Power = pos_medium
#2: IF Distance = medium AND Angle = zero THEN Power = zero
#3: IF Distance = far AND Angle = zero THEN Power = pos_medium
Aggregation of the ¡°IF¡±-Part:
#1 : min{ 0.9, 0.8 } = 0.8
#2: min{ 0.9, 0.2 } = 0.2
#3: min{ 0.1 , 0.2 } = 0.1
Result for the Linguistic Variable "Power":
pos_high with the degree 0.0
pos_medium with the degree 0.8 ( = max{ 0.8, 0.1 } )
zero with the degree 0.2
neg_medium with the degree 0.0
neg_high with the degree 0.0
14. Conclusion
? Fuzzy Logic Enables the use of experience and
experimented results to deliver more efficient
solutions.
? Fuzzy Logic Extends traditional automated control
techniques by adding supervisory control
capabilities.
? In container controller case, Fuzzy Logic provides
a transparent and simple solution that is much
harder to solve using conventional engineering