IMPLEMENTAREA CONTROLLERULUI FUZZY IN MODELUL SIMULINK
Dupa ce controllerul fuzzy a fost configurat (intrarile, iesirea si setul de reguli), acest a fost salvat sub un anumit nume (Ex: speed - fiind 535b14f un controler de viteza).
Se deschide MatLab > Help> Demos si se alege psbpmmotor.mdl
Se poate observa ca este o schema de simulare pentru o masina sincrona cu magneti permanenti, cu regulator PI clasic. Se ruleaza schema, in prima faza cu parametrii din demo, se salveaza graficele (viteza, cuplu, curenti), urmand ca viteza impusa de 700 rpm sa o inlocuiti cu un bloc treapta, in care viteza sa reverseze (ex: 1000rpm, iar dupa 1secunda masina sa aibe -450rpm); din noi se salveaza graficele si se compara cu precedentele.
Se va inlocui regulatorul (controllerul) clasic PI cu un controller fuzzy:
Se observa ca acest controller are o singura intrare! In acest caz se procedeaza astfel:
Dublu click pe controllerul fuzzy, la "fis matrix" se trece un nume (Ex: abc), iar la "refresh rate" e indicat sa se puna o valoare mica, 0,2 secunde (pentru a putea observa cum sunt "atinse" cele 49 de reguli).
Pentru implementarea controllerului fuzzy din FLC Toolbox in modelul simulink, se procedeaza astfel:
in fereastra de comanda din MatLab se scrie comanda:
<nume>=readfis('<numeflc>') urmata de Enter, unde:
<nume> - este numele dat controllerului fuzzy din modelul simulink (in Ex: abc)
<numeflc> - este numele dat controllerului fuzzy realizat si salvat in FLC Toolbox (in Ex: speed)
Dupa ce comanda a fost data, se revine la modelul simulink, se verifica daca numele "abc" este atribuit controllerului fuzzy >ok, se ruleaza schema.
|