Fuzzy logic control application on aircraft landing
1
Author: Fan Feng
Student ID number: 14162995
Introduction Imagine during the process of aircraft landing, when the airplane's height above ground become lower and lower, lower, the vertical vertical of velocity of airplane should be correspondingly correspondingly decrease decrease in order to make airplane touching down very gently to avoid damage and the uncomfortable feeling caused by vibration.I think we can put an fuzzy logic control system on the process of gradually decreasing the airplane's vertical velocity according to the height and external force.
Project description 1.
In the expe experi rime ment nt I have have two two input input,, the the height height of the aircr aircraf aftt above above the groun ground d and the vertical velocity of aircraft. The output will be a force that, when applied to the aircraft, will
2
alter its height and velocity. In order to make easy to control, the force is just the combination of the weight of airplane and external force which is used for changing the vertical velocity. And in the experiment, upward is positive direction. 2.
In order order to make make the range range of of parameter parameter large large enough enough so that that we can can effect effectively ively use use it in the the simulation later, I just set the range of the height is -200(ft) to 1000(ft), the the range of vertical velocity is -300(ft/s) to 300(ft/s). The value of -300ft/s means the direction of vertical velocity of aircraft is down. The range of control force is -30(lbs) to 30(lbs).
3.
Here Here are are my membe membersh rship ip funct functions ions for two two input input and and outpu output. t. 1)
The member membershi ship p functi function on of Height( Height(ft) ft)::
Figure-1 NZ: Near zero; S:Small; S:Small; M:Medium; L:Large L:Large 2)
The membe members rship hip functi function on of Vert Vertica ical-v l-velo elocity city(ft (ft/s) /s)
Figure-2 DL:Down large; DS: Down small; Z: zero; US: up small; UL: Up large 3)
The member membershi ship p funct function ion of Cont Control rol force( force(lbs lbs))
3
Figure-3 4)
The The matr matrix ix for for rul rules es is belo below w Velocity DL DS (ft/s) Down large Down
Zero
US Up small
UL Up large
small Height(ft) L Large
Z Zero force
DS Down
DL Down large
DL Down large
DL Down large
M Medium
US Up
Small force Z Zero force
Force DS Down
Force US Down large
Force UL Down large
S Small
force UL Up large
US Up
small force Z Zero force
Force DS Down
Force DL Down large
NZ Near zero
force UL Up large
force UL Up large
Z Zero force
small force DS Down
force DS Down
force
force
small force
small force
small
small
Table-1 5)
The sur surface ace of of out outpu putt
4
Figure-4 6)
The figure figure of outp output ut fire fired d by differ different ent input input
Figure-5
Simulation When we design a fuzzy logic control system, it is necessary to using some model to simulate the system to verify if the fuzzy system we designed is effective. In my experiment, my process of simulation is like this. During the process of landing, at higher altitudes, a large downward velocity is desired. As the height diminishes diminishes,, the desired downward downward velocity velocity gets smaller smaller and smaller. smaller. For desired condition, in the limit, as the height becomes vanishingly small, the downward velocity also goes to zero. In this theory, we can approximately construct a curve that describe the relation between vertical velocity of the plane and height of the aircraft above the ground is shown like Figure-6
5
Figure-6 2 p= v1 ∆ f 1 t ∆ .mv 0(t (lb /s/m ) ft ) ∆vt m ∆= .== 0= ( f bs
Then, we need to initialize the parameter we need. Let's consider an airplane with m weight moving moving with with veloci velocity ty v has momentum momentum . If no extern external al force forcess are applied, applied, the airpla airplane ne will will continue in the same direction at the same velocity, v. If a force f is applied to over a time interval , a change change in velocity of will result. If we let and , we obtain obtain , or the change change in velocity is proportional to the applied force. force. Thus, we get
vi +1 = vi
+
f i
;
hi +1
=
hi
+ vi ⋅ ∆t
Then, put this algorithm into Matlab-Simulink toolbox to create a model for simulation. The simulation model is like this.
6
Figure-7 Here are some initializations of toolbox in the model.
7
Figure-8 First experiment: Initial conditions means I set the initialized height of airplane is 500ft, and its vertical velocity is 100ft/s, the direction of velocity is downward, so it is -100. And I set the simulation runs about 20 seconds. When I load the fuzzy system into the Fuzzy logic controller, the result is like this.
8
Figure-9 height
Figure-10 vertical velocity Figure-11 Figure-11 control force Our object of the simulation is to find when the plane touches the land, if the vertical velocity of plane approximately approaches to 0. If it does, this means our fuzzy control system is effective. In the Figure-9, we can see that at about t=9s, the plane touch the land. Correspondingly, 9
in the Figure-10, when t=9s, the values of vertical velocity is quiet small, approximately equals to -10ft/s, which is near to zero, and at t=14s, the velocity equals to 0. I think why the velocity is not exactly equals to 0 at the same time when airplane touching the land is because when the plane touching the land at the first moment, it still has some velocity and it has to taxiing on the ground for a while, then it stop. So its velocity still has some component product on vertical direction but after it stop, it has no velocity so the vertical velocity will equals to 0 all time. This explain when t=14s, the velocity is finally equals to 0 which we can also say that at t=14s, the airplane finally stop on the ground. This condition is also corresponding to the Figure-11. When t=14s, the vertical velocity of airplane is equals to 0 which means we do not need extra control force anymore. So the force should also be 0, in the Figure-11, we can clearly see that at t=14s, its value equals to 0 which matches what we want. So, the simulation verify that my fuzzy control system works.
Change the parameter in the fuzzy logic system to test difference. Next step I am going to change some some parameter in the fuzzy fuzzy logic system in order to test if its result is going to change. 1.
First, First, change change the range range of of membersh membership ip functio function n of input input or output. output. (secon (second d experimen experiment) t)
For easy to see the result, i just change the range of vertical velocity, specifically, I just enlarge the range of membership function of Z.The other parameters are not change and the simulation result is shown like this.
Figure-12
10
Figure-13 height
Figure-14 vertical velocity Figure-15 control force According to Figure-13, at t=7s, the plane touch the land, at this time, the vertical velocity of airplane is about -40ft/s, which is still very large. In this condition, since the airplane still has quiet 11
large vertical velocity, so the passenger on the airplane will feel more uncomfortable because of vibration during landing. Also with larger velocity means larger momentum which also means larger downward inertia, so it does not touch the land smoothly. So this larger inertia may cause the damage to the airplane when it touching the land. The reason is that if we enlarging the range of Zero membership function, the description of the vertical velocity would become more fuzzy. In other words, when the vertical velocity equals to -70ft/s, it may still belongs to range of downward small velocity. However, since we enlarge the membership function of Zero so it leads to that the -70ft/s is belongs to zero state of velocity. So, when the fuzzy system implement the rules we designed, the output will be not much corrective as the experiment I designed at the beginning of the experiment. Through this, we can conclude that if we define the membership function more specifically or precisely, the output will be more accurate or reasonable. Also, if we put more membership functions to describe the different state of the fuzzy set, we will get more accurate result which closely matches what we want. 2.
Next, Next, let's let's change change the the shape shape of of member membership ship func functions tions.(Th .(Third ird experi experiment ment))
I just chang the shape of membership function in vertical velocity from triangle to psigmf, the other parameters are not change. The result is shown below
Figure-16
Figure-17 height
12
Figure-18 vertical velocity Figure-19 control force Compared with the first experiment, although in the third experiment the usage of time for airplane landing is shorter but at t=7s when the airplane touch the land, its vertical velocity is 13
approximately equals to -40ft/s, which is also a little bit large. So in this condition, it may also cause the same negative effect like the analysis I made in the second experiment. Actually, Actually, when I look at the triangle shape and psigmf shape, I notice that the range and area covered by the latter shape is bigger than the triangle shape, which means that psigmf shape also increase the fuzziness because it just make the area which should not belong to it belongs to it. In other words, we roughly put some condition which should not be the same into the same rules or same logic linguistic description. This effect is just same as enlarging the range of membership function. So, when we change the shape of membership function to psigmf, the result is less accurate and reasonable. Actually, I think using triangle shape to describe the membership function should be the most precise way to define the relation between membership functions and fuzzy set because the area covered by triangle is the minimum value among the different shape of membership function. This means the triangle shape has the most sharp or precise effect for describing the properties of membership membership function. 3.
Fourth Fourth exp experi erimen mentt about about chang changee the numb number er of of fuz fuzzy zy rules rules
Since in the first experiment, I already have 29 rules in the fuzzy system, so i randomly delete some rules to see the result. In this experiment, I just change the number of rules to 10.
Figure-20 rules table The simulation result is shown below
Figure-21 height
14
Figure-22 vertical velocity
Figure-23 control force In the Figure-21, we can see that at t=15s, the vertical velocity of airplane is equals to 0 and 15
also there is no control force at this time, which means the airplane should touch the land at t=15s but actually it does not touch the land because at t=15s, the height approximately equals to 50ft. I think this is because when we using less rules, we do not have enough linguistic descriptions for all condition happened during the process. So when there is no specific rules for height equals to 50ft, then the system do not give any output. So the control force equals to 0 at t=15s. Therefore, we can conclude that if we do not enough rules for fuzzy system, the result will be less accurate or reasonable.
Conclusion Fuzzy logic actually comes from our brain so it is kind of unreliable so when we want to apply it on the daily life or things, we have to use rigorous reasoning process and maybe verified algorithm to modify it and also maybe we need to collect data which is going to be used by the fuzzy system. Then we have to make simulation to verify if our fuzzy system works. In this project, after I simulate the fuzzy system I designed by using simulink, I can verify that my fuzzy system works very well. Moreover, by the experiment of changing the parameter in the fuzzy system, we conclude that the more rules we use, the more precise shape or number of membership functions we use, the result given by fuzzy system we designed will be more accurate and precise and maybe approaches to what we really want.
16