-
Notifications
You must be signed in to change notification settings - Fork 0
/
rules_fuzzy_e_de.fis
77 lines (72 loc) · 1.38 KB
/
rules_fuzzy_e_de.fis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
[System]
Name='rules_fuzzy_e_de'
Type='mamdani'
Version=2.0
NumInputs=2
NumOutputs=2
NumRules=25
AndMethod='min'
OrMethod='max'
ImpMethod='min'
AggMethod='max'
DefuzzMethod='centroid'
[Input1]
Name='error'
Range=[-5 5]
NumMFs=5
MF1='H':'trapmf',[-5.05 -5 -1 -0.4]
MF2='W':'trimf',[-0.8 -0.4 0]
MF3='OK':'trimf',[-0.2 0 0.2]
MF4='C':'trimf',[0 0.4 0.8]
MF5='VC':'trapmf',[0.4 1 5 5.05]
[Input2]
Name='delta_error'
Range=[-0.1 0.1]
NumMFs=5
MF1='F-':'trapmf',[-0.101 -0.1 -0.04 -0.03]
MF2='OK':'trimf',[-0.01334 0 0.01334]
MF3='F+':'trapmf',[0.03 0.04 0.1 0.101]
MF4='N-':'trimf',[-0.04 -0.02 0]
MF5='N+':'trimf',[0 0.02 0.04]
[Output1]
Name='PWM_Heating'
Range=[0 255]
NumMFs=4
MF1='STOP':'trimf',[-5 0 3]
MF2='L':'trapmf',[2 45 80 120]
MF3='N':'trapmf',[80 120 180 220]
MF4='T':'trimf',[210 255 255]
[Output2]
Name='PWM_Cooling'
Range=[0 255]
NumMFs=4
MF1='STOP':'trimf',[-5 0 3]
MF2='L':'trapmf',[2 45 80 120]
MF3='N':'trapmf',[80 120 180 220]
MF4='T':'trimf',[210 255 255]
[Rules]
1 1, 1 4 (1) : 1
1 2, 1 4 (1) : 1
1 3, 1 4 (1) : 1
1 4, 1 4 (1) : 1
1 5, 1 4 (1) : 1
2 1, 1 3 (1) : 1
2 2, 1 4 (1) : 1
2 3, 1 4 (1) : 1
2 4, 1 4 (1) : 1
2 5, 1 4 (1) : 1
3 3, 1 3 (1) : 1
3 5, 1 2 (1) : 1
3 2, 1 1 (1) : 1
3 4, 2 1 (1) : 1
3 1, 3 1 (1) : 1
4 3, 3 1 (1) : 1
4 1, 4 1 (1) : 1
4 2, 4 1 (1) : 1
4 4, 4 1 (1) : 1
4 5, 4 1 (1) : 1
5 1, 4 1 (1) : 1
5 2, 4 1 (1) : 1
5 3, 4 1 (1) : 1
5 4, 4 1 (1) : 1
5 5, 4 1 (1) : 1