blob: a30f2c92e5ad5523765ced2174076c600e18a524 (
plain)
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
|
//Code automatically generated with fuzzylite 6.0.
FUNCTION_BLOCK SimpleDimmer
VAR_INPUT
Ambient: REAL;
END_VAR
VAR_OUTPUT
Power: REAL;
END_VAR
FUZZIFY Ambient
RANGE := (0.000 .. 1.000);
TERM DARK := Triangle 0.000 0.250 0.500;
TERM MEDIUM := Triangle 0.250 0.500 0.750;
TERM BRIGHT := Triangle 0.500 0.750 1.000;
END_FUZZIFY
DEFUZZIFY Power
RANGE := (0.000 .. 1.000);
TERM LOW := 0.250;
TERM MEDIUM := 0.500;
TERM HIGH := 0.750;
METHOD : COGS;
DEFAULT := nan;
END_DEFUZZIFY
RULEBLOCK
RULE 1 : if Ambient is DARK then Power is HIGH
RULE 2 : if Ambient is MEDIUM then Power is MEDIUM
RULE 3 : if Ambient is BRIGHT then Power is LOW
END_RULEBLOCK
END_FUNCTION_BLOCK
|