Projekt_LSR/Projekt-LSR/bin/application/ocena_sredni.fcl
2020-06-14 13:43:10 +02:00

38 lines
668 B
Plaintext

FUNCTION_BLOCK ocena_dlugosc
VAR_INPUT
dlugosc: REAL;
END_VAR
VAR_OUTPUT
ocena : REAL;
END_VAR
FUZZIFY dlugosc
TERM krotki := (40, 1) (80,0);
TERM sredni := (60, 0) (90, 1) (120,1) (150,0);
TERM dlugi := (130, 0) (170,1);
END_FUZZIFY
DEFUZZIFY ocena
TERM slaby := (5,1) (11,0);
TERM srednia := (9,0) (15,1) (21,0);
TERM dobry := (19,0) (25,1);
METHOD : COG;
DEFAULT := 0;
END_DEFUZZIFY
RULEBLOCK No1
AND : MIN;
ACT : MIN;
ACCU : MAX;
RULE 1 : IF dlugosc is krotki THEN ocena IS slaby;
RULE 2 : IF dlugosc is sredni THEN ocena IS dobry;
RULE 3 : IF dlugosc IS dlugi THEN ocena IS slaby;
END_RULEBLOCK
END_FUNCTION_BLOCK