Documente Academic
Documente Profesional
Documente Cultură
~proiect~
Cuprins
1. Generalitati .3
1.1. 1.2. 1.3. Introducere in sisteme fuzzy ..3 Scurt istoric ..3 Concepte de baza .4
3.
2008
3.2.1. Procesul de fermentare .20 3.2.2. Controlul temperaturii procesului de fermentare ..21 3.2.3. Implementarea unui controller logic fuzzy de reglare a temperaturii ....................................................................................21 3.2.4. Fuzzificarea 22 3.2.5. Defuzzificarea .26 3.2.6. Implementare Simulink .27 3.2.7. Rezultate experimentale ..28 3.2.8. Concluzii .31 3.3. Concluzii generale .31
Anexa 33 Bibliografie .. 34
2008
Capitolul I Generalitati
1.1.
Sistemele fuzzy sunt o alternativa la metodele traditionale de tratare a apartenentei si a logicii, ce isi are originile in antica filozofie greaca si aplicatii inspre domeniul inteligentei artificiale. In ciuda originilor sale longevive, este realtiv un domeniu nou si de aceea este suficient spatiu pentru cercetare. Logica fuzzy este o metodologie de rezolvare a problemelor prin controlul sistemului ce se aplica intr-un vast numar de aplicatii, de la micro-controllere mici, simple, pana la computere cu multi-canale, aflate in retele, sau statii de lucru bazate pe achizitie de date si control al sistemelor. Pot fi implementate hardware, software, sau o combinatie de ambele moduri. Logica fuzzy furnizeaza un mod simplu de a decide asupra unei concluzii clare pe baza neclaritatii, ambiguitatii, imprecizitatii, zgomotului, sau lipsei de informatiei de intrare. Abordarea de manipulare a problemelor prin logica fuzzy imita modul in care un individ ar lua o decizie, insa mult mai rapid.
2008
intrigatoare, dar in cele din urma s-a hotarat pentru logica quadri-valorica deoarece parea a fi cea mai simpla adaptabila logicii aristoteliene. Knuth a propus o logica tri-valorica similara lui Lukasiewicz, din care a speculat ca matematica va deveni chiar mai eleganta decat in traditionala logica bi-valorica. Intuitia lui, aparent ceea ce i-a scapat lui Lukasiewicz, a fost sa foloseasca gama intreaga [-1, 0, +1] in loc de [0, 1, 2]. In cele din urma, aceasta alternativa a esuat a fi acceptata si a fost trecuta in obscuritate. Abia recent logica infinit-valorica a fost redescoperita. In 1965 Lotfi A. Zadeh a publicat inceputurile studiilor sale despre Multimi fuzzy care descriau matematica teoriei multimilor fuzzy, iar prin extensie, logica fuzzy. Aceasta teorie propunea ca functia de apartenenta (sau valorile adevarat si fals) sa opereze in gama de numere reale [0.0, 1.0]. Noi operatii de calcul a logicii au fost propuse si demonstrate a fi in principiu o generalizare a logicii clasice.
2008
Maria apartine categoriei oamenilor batrani. Aceasta afirmatie poate fi simbolic redata cu multimi fuzzy astfel: mBATRAN(Maria)=0.80 unde m este functia de apartenenta, operand in cazul acesta asupra multimii fuzzy de oameni batrani, care returneaza o valoare intre 0.0 si 1.0. In acest punct este important a se face distinctie intre sisteme fuzzy si probabilitati. Ambele opereaza in aceeasi gama numerica si la prima vedere ambele au valori similare: 0.0 reprezentand fals (sau neapartenenta) si 1.0 reprezentand adevarat (sau apartenenta). In orice caz, exista o distinctie de facut intre cele doua afirmatii: formularea probabilistica afirma Exista 80% sanse ca Maria sa fie batrana, in timp ce terminologiei fuzzy ii corespunde formularea Gradul de apartenenta al Mariei in multimea oamenilor batrani este de 0.80. Diferenta semantica este importanta: prima abordare presupune ca Maria este sau nu este batrana, cu 80% sanse ca ea sa apartina unei multimi. In contrast, terminologia fuzzy presupune ca Maria este mai mult sau mai putin batrana, corespunzator valorii 0.80. Exista cativa pasi de baza ce trebuie urmati in logica fuzzy: 1) Definirea obiectivelor de control si criteriilor: Ce se doreste a fi controlat? Ce este necesar de implementat pentru controlul sistemului? Ce fel de raspuns este necesar? Care sunt modurile posibile (probabile) de esuare ale sistemului? 2) Determinarea relatiilor de intrare si iesire si alegerea unui numar minim de variabile de intrare pentru sistemul fuzzy (tipic eroarea si variatia erorii). 3) Folosind structura bazata pe reguli a logicii fuzzy, se imparte problema controlului intr-o serie de reguli IF X AND Y THEN Z care sa defineasca raspunsul dorit la iesirea sistemului pentru conditii date la intrare. Numarul si complexitatea regulilor depinde de numarul parametrilor de intrare care trebuie procesati si de numarul variabilelor fuzzy asociate fiecarui parametru. Daca este posibil, se folosesc cel putin o variabila si timpul sau derivativ. Desi este posibil sa se foloseasca doar una singura, eroarea instantanee fara a i se stii variatia erorii. 4) Crearea functiilor fuzzy de apartenenta care definesc valorile termenilor de intrare/iesire folositi la reguli. 5) Crearea rutinelor de preprocesare si postprocesare necesare logicii fuzzy in implementare software, sau programarea regulilor in motoarele cu logica fuzzy pentru implementare hardware. 6) Testarea sistemului, evaluarea rezultatelor, ajustarea regulilor si functiilor de apartenenta, apoi retestarea pana cand sunt obtinute rezultate satisfacatoare. Logica fuzzy nu necesita intrari precise, este intrinsec robusta, si poate procesa orice numar rezonabil de intrari, insa complexitatea sistemului creste semnificativ cu numarul intrarilor si iesirilor. Procesoarele distributive ar fi probabil mai usor de implementat. Regulile bazate pe limbajul simplu de genul IF X AND Y THEN Z sunt folosite pentru descrierea raspunsului dorit al sistemului in termeni de variabile lingvistice, mai degraba decat prin formule matematice. Numarul acestora este dependent de numarul intrarilor, iesirilor si de scopurile proiectantului in controlul raspunsului.
2008
2008
Domenii in care logica fuzzy a avut succes sunt adeseori domenii concrete. Prima aplicatie comerciala majora a fost in controlul cuptorului de ardere pentru cimentare. Alte aplicatii care au avut beneficii din utilizarea sistemelor fuzzy sunt controllerele fuzzy pentru operarea trenurilor, sistemele de navigare pentru masini automate, controllerele pentru nivelul apei in laboratoare, controllerele pentru roboti cu vedere artificiala, controllerele grafice pentru automatele de schite ale politiei, si multe altele. Sunt mentionate aici cateva din aceste aplicatii.
2.1.
2.1.1. Introducere Probabil ceva la care nimeni nu se gandeste atunci cand apasa pe pedala de frana. Scopul unui ABS este de a monitoriza sistemul de franare al autovehicului si de a elibera franele chiar inainte de blocarea rotilor. Un computer decide cand este cel mai bun moment pentru aceasta. Doi factori principali in determinarea acestui moment sunt viteza autovehiculului cand franarea se aplica si cat de repede franele sunt slabite. De obicei, se doreste ca sistemul ABS sa functioneze cu adevarat atunci cand viteza autovehiculului este mare si se apasa rapid frana. Aici exista posibilitatea de eroare, si de aceea ABS-ul trebuie sa lucreze suficient de destept ca sa nu permita niciodata erorii sa depaseasca pragul peste care rotile s-ar bloca. Cu alte cuvinte, nu permite apartenentei in multime sa devina prea slaba. 2.1.2. Functionare Cand se apasa pedala de frana, se genereaza presiune hidraulica in cilindrul principal, ce se transmite actuatoarelor cilindrii rotilor si pistoanele prin liniile de franare, si astfel se aplica franarea. Operatia de franare depinde de integritatea sistemului hidraulic, cilindrul principal trebuie sa fie capabil sa genereze o presiune de cateva sute de kilograme pe centimetru patrat, iar restul sistemului trebuie sa pastreze presiunea fara scurgeri.
2008
Majoritatea sistemelor automotive utilizate astazi au discuri de franare frontale si frane cu tambur la rotile posterioare, insa si sistemle cu 4 discuri de franare sunt intalnite. Scopul sistemului ABS este de a minimiza distanta de franare in timp ce directionarea autovehiculului ramane posibila chiar si atunci cand are loc o franare puternica. Pentru intelegerea mai amanuntita a efectului fizic ce duce la blocarea rotilor in timpul franarii se considera figura 2.1. Coeficientul de frecare este determinat ca functie de alunecarea rotii (figura 2.2).
max aluneca
Coeficient ul de frecare
re
smax
Alunecarea rotii
R
v
FL
Fz
Fig. 2.2 Modelul rotii
2008
10
La inceputul unei franari necontrolate complete, punctul de operare este la a=0, apoi creste abrupt si ajunge varful la . Dupa aceea roata se blocheaza in cateva milisecunde datorita coeficientului de frecare descrescator caracteristic, care se comporta ca o linie de reactie pozitiva. In acest moment forta rotii ramane constanta la un nivel scazut al frecarii de alunecare. Directionarea autovehiculului nu mai este posibila. De aceea este necesar un sistem de control rapid si exact pentru a mentine alunecarea rotilor in regiunea hasurata din figura 2.1 2.1.3. Viteza autovehiculului Un moment crucial in dezvoltarea sistemelor de control a alunecarii rotilor este determinarea vitezei autovehiculului. Exista mai multe metode posibile: pana acum, s-a masurat viteza cu ajutorul senzorilor inductivi pentru viteza unghiulara a rotii. In special in cazul alunecarii franelor, viteza masurata nu corespunde cu cea reala. Pentru a obtine rezultate cat mai exacte, senzori optici sunt folositi printr-o metoda de corelare. Acesti senzori sunt scumpi si de aceea nu sunt prea intalniti in sitemele ABS. 2.1.4. Estimarea vitezei autovehiculului folosind logica fuzzy O metoda de calcul a vitezei autovehiculului este folosind multi-senzori cu fuziune a datelor, adica mai multi senzori masoara viteza independent unul de celalalt, iar estimatorul decide care senzor este mai exact. Figura 2.3 reprezinta structura schematica a estimatorului fuzzy. Sunt folosite semnalele celor 4 senzori ai rotilor ( ), precum si semnalul senzorului de acceleratie ( ). Indicii <s,f>, <d,f>,<s,s>,<d,s> reprezinta pozitia rotii: stanga-fata, dreapta-fata, stanga-spate si respectiv dreaptaspate.
2008
11
Preprocesare de date
Estimato r fuzzy
Fig. 2.3 Estimarea vitezei autovehiculului In blocul de pre-procesare a datelor semnalele masurate sunt filtrate printr-un filtru trece-jos si sunt calculate intrarile pentru estimatorul fuzzy: alunecarile rotilor si valoarea acceleratiei . Un timp de intarziere T este exprimat prin termenul 1/z. Estimatorul fuzzy este divizat in 2 parti: prima (Logic 1) determina care senzor furnizeaza informatia cea mai corecta, si a doua (Logic 2) decide asupra sigurantei integralitatii senzorului de acceleratie, precum in figura 2.4.
Logic 1
Logic 2
Fig. 2.4 Structura estimatorului fuzzy Incepand cu blocul Logic 1 si Logic 2 intrarile sunt fuzzificate. Figura 2.5 arata functiile de apartenenta pentru intrari (Ivar) cu 4 valori lingvistice ( negativ, zero, pozitiv si foarte pozitiv).
2008
12
Negati v
Zero Poziti v
Foarte Pozitiv
-8
-6
-4
0 2 , [%]
1 0
Fig. 2.5 Domeniul de variatie al intrarilor Regulile in acest caz se formeaza astfel: o pozitiv si foarte pozitiv: franare, toate rotile au pondere mica datorita aparitiei alunecarii o zero: daca rotile se invart constant, acceleratia are pondere mica in ajustarea senzorilor o negativ: accelerare, informatia principala este preluata de la rotile de tractiune. Figura 2.6 arata domeniul de variatie al iesirilor (Ovar), unde sunt suficiente 3 variabile lingvistice.
1 0.8 Valor 0.6 i Ovar 0. 4 0. 2 0 20 1 0 0 1 0 20 3 ,0 4 0 50 60 70 Mic Mediu Mare
2008
13
2.1.5. Algoritmul fuzzy-ABS Controlerul fuzzy foloseste 2 valori de intrare: alunecarea rotii:
si acceleratia rotii: unde viteza rotii si viteza autovehiculului sunt date de estimatorul fuzzy.
Variabilele de intrare sunt transformate in variabile fuzzy alunecare si de catre procesul de fuzzificare. Ambele variabile folosesc 7 valori lingvistice: alunecare = {zero, foarte mica, prea mica, mai mica decat optima, optima, prea mare, foarte mare} = {negativa mare, negativa medie, negativa mica, negativa putina, zero, pozitiva mica, pozitiva mare} Folosind aceste doua variabile fuzzy de intrare, se poate determina valoarea fuzzy de iesire, presiunea: presiune={pozitiv rapid, pozitiv incet, zero, negativ incet, negativ rapid} Presiunea optima de franare rezulta din defuzzificarea variabilei lingvistice presiune. Un controller cu 3 nivele determina pozitia valvelor magnetice astfel incat presiunea poate fi crescuta sau scazuta, cu diferite trepte de viteza, sau mentinuta constanta.
2008
14
pmar zer fmi pmi mo op fmar e 1 c o c e Valor i Ivar 1 2 Alunecarea 5 rotii nm np nmar nmi zer pmic pmar ed 1 c e o e Valor i Ivar 0 0 pr p i zer o ni n r
F
0 0 1
Presiunea
0 -100
Acceleratia rotii
100
Fig. 2.7 Structura controllerului fuzzy ABS Implementarea sistemelor fuzzy-ABS au condus la excelente rezultate in franare, directionarea ramanand posibila, iar distanta de oprire reducandu-se considerabil.
2008
15
de permisie si inhibare a airbag-ului sunt filtrate pentru a evita raspunsuri bruste la schimbarea presiunii tranziente in scaun. Cand un ocupant relativ mare este detectat pozitiv, o decizie de permisie este mentinuta atata timp cat forta totala asupra senzorilor din scaun depaseste un anumit prag. Detectia in infrarosu a ocupantilor: este un sistem ce foloseste raze infrarosii (precum telecomanda televizorului) pentru a detecta distanta dintre pasager si airbag si astfel se ia decizia asupra fortei de desfasurare corespunzatoare. Senzori capacitivi-reflectivi: sunt situati in spatarele scaunelor si in bordul masinii pentru a identifica distanta pasagerilor de bord. Acesti senzori au abilitatea de a diferentia intre un ocupant uman si obiecte inanimate, precum o punga de cumparaturi. Acest mecanism este foarte economic din punct de vedere financiar atunci cand soferul este unicul ocupant al autovehiculului, deoarece impiedica declansarea inutila a airbag-ului pentru pasager. Unitate electronica de control centralizata: noile unitati de control sunt capabile sa foloseasca toate intrarile din tehnologia senzoriala curenta si cu ajutorul software-ului corespunzator pot desfasura airbag-ul atat cat este necesar.
2.2.3. Functionare Un set de 4 date, provenind de la 4 senzori ce determina greutatea si inaltimea pasagerului, viteza si respectiv acceleratia autovehiculului, sunt variabile de intrarare ale unitatii de control fuzzy, iar 3 variabile de iesire (deschide airbag pentru copii, deschide airbag pentru adulti, nu deschide airbag) sunt folosite ca iesiri de control pentru comanda airbag-ului, precum in figura 2.8.
Deschide airbag pentru copii Deschide airbag pentru adulti Nu deschide airbag
Fig. 2.8 O unitate de control fuzzy pentru controlul airbag-ului In acest caz exista 4 variabile de intrare: Greutatea pasagerului, variind in gama [0..225kg] Inaltimea pasagerului, variind in gama [0..3m] Viteza autovehiculului, variind intre [0..160km/h] Acceleratia autovehiculului, variind intre [0..100km/h] si 3 variabile de iesire pentru controlul airbag-ului:
2008
16
deschide airbag pentru copii deschide airbag pentru adulti nu deschide airbag
Definirea domeniilor de variatie pentru cele 4 variabile de intrare este conform figurilor 2.9, 2.10, 2.11 si 2.12:
2008
17
Domeniul de variatie al iesirii controlerului pentru comanda airbag-ului este conform figurii 2.13:
Fig. 2.13 Domeniul de variatie pentru controlul airbag-ului Definirea algoritmului se poate face pe baza unor reguli precum: DACA Greutatea este Copil SI Inaltimea este Copil SI Viteza este Medie SI Acceleratia este Mare ATUNCI Deschide airbag pentru copii sau DACA Greutatea este Adult SI Inaltimea este Adult SI Viteza este Mare SI Acceleratia este Medie-Mare ATUNCI Deschide airbag pentru adulti
2008
18
Scopul robotilor mobili autonomi este de a construi sisteme fizice care sa se miste cu scopuri bine definite si fara interventie umana. Posibile domenii in care ei pot fi folositi sunt birourile companiilor mari (livrarea corespondentei), spitale, spalarea podelelor in fabrici etc. Contrar progreselor facute in ultimii ani in acest domeniu, exista inca o serie de probleme, majoritatea lor provenind din lumea reala. In primul rand, cunostintele apriorice despre mediu sunt in general incomplete, nesigure si aproximative. De exemplu, hartile omit unele detalii, iar relatiile spatiale intre obiecte se pot schimba in decursul unui timp mai indelungat. In al doilea rand, informatia perceptibila este de obicei nesigura, deoarece pot exista conditii de mediu si de observare inproprii (ceata, slaba iluminare), si astfel se poate ajunge la perturbatii si date imprecise. In al treilea rand, lumea reala ofera o dinamica impredictibila si complexa: obiectele se pot misca, alti factori pot influenta mediul, iar caracteristici relativ stabile se pot schimba cu timpul. In cele din urma, efectele actiunii controlate nu sunt complet sigure, de exemplu rotile unui robot pot aluneca, ceea ce duce la o acumulare de erori odometrice. Problema navigatiei robotului poate fi impartita in alte doua subcategorii: Atingerea obiectivului final: este importanta topologia spatiului pentru gasirea cailor bune inspre destinatie. Evitarea obstacolelor: problema ce poate fi rezolvata numai local, iar in cazul unui mediu impredictibil nu poate fi rezolvata in advans deoarece robotul trebuie sa simta obstacolele inainte de a i se cere sa le evite. O posibilitate de implementare bazata pe control logic fuzzy pentru evitarea obstacolelor este folosind 3 intrari principale:
1. Distanta dintre robot si cel mai apropiat obstacol 2. Unghiul dintre robot si cel mai apropiat obstacol
, unde
dintre linia dreapta ce uneste pozitia curenta si pozitia finala dorita, iar directia curenta a robotului, conform figurii 2.14.
2008
19
Fig. 2.14 Date si coordonate in pozitionarea robotului mobil Variabila de iesire este comanda motorului . Toate aceste variabile pot fi
pozitive sau negative, oferind informatii atat asupra magnitudinii cat si asupra directiei, stanga sau dreapta, a robotului. Scopul controlerullui fuzzy este de a furniza o functie de control care sa comande motorul intr-un mod cat mai convenabil pe baza intrarilor. Cu alte cuvinte, functia de comanda trebuie sa conduca robotul inspre pozitionarea finala dorita, dar si sa forteze robotul sa se miste inapoi atunci cand se apropie de un obstacol. Algoritmul fuzzy Controllerul fuzzy se poate baza pe principiile de control dezvoltate de Sugeno. Fiecare variabila de intrare este partitionata in multimi fuzzy, precum in figura 2.14 (a, b, c). Iesirea finala a unitatii de control este data de o medie ponderata a tuturor regulilor, precum in figura 2.14 (d)
2008
20
Fig. 2.14 Intrarile (a, b, c) si iesirea (d) unitatii de control Diferenta dintre aceasta abordare si cea clasica consta in faptul ca in acest caz, in care s-a folosit logica fuzzy pentru comanda robotului, acesta din urma ia in considerare in navigatia sa doar cel mai apropiat obstacol pentru a decide urmatoarea miscare. Acest lucru duce la reducerea senzorilor si a calculelor necesare. Insa reducerea informatiilor despre mediul in care se afla robotul poate duce la blocarea lui si pot exista rute la tinta dorita fara ca robotul sa le recunoasca.
2008
21
3.1. Generalitati
Printr-un set de reguli stabilite de o persoana cu experienta se modeleaza comportarea procesului reglat, printr-o modelare vaga.
Fig. 3.1 Schema bloc a sistemului de reglare unde: F = bloc de defuzzificare BR = baza de reguli D = bloc de decizie DF = bloc de defuzzificare PROC = procesul condus RF = regulator fuzzy 3.1.1. Fuzzificarea Fuzzificarea determina pe baza unor valori nevagi ale erorii e sau ale variatiei erorii e' , termenii lingvistici ai variabilei eroare respectiv variatia erorii ( e sau e') precum si gradul de apartenenta la acesti termeni pentru valoarea curenta a erorii sau variatiei erorii.
2008
22
e = u uref e= e/t In cadrul acestui bloc se stabilesc domeniile in care se modifica e si e'. Acest domeniu se acopera cu functii de apartenenta ce corespund termenilor variabilei lingvistice eroare. Acelasi lucru se face si pentru variatia erorii. In mod similar se procedeaza in cazul domeniului variabilei de comanda q care reprezinta marimea de iesire a regulatorului. Termenii variabilelor e si e' se aleg aceiasi. 3.1.2. Blocul de decizie Blocul de decizie reprezinta un program care aplica regula combinationala de inferenta vaga. Deci el va genera la un moment dat o multime vaga care corespunde reuniunii tuturor efectelor produse de regulile amorsate in acel moment (el furnizand un maxim). 3.1.3. Deffuzificare Prin defuzzificare se transforma marimea fuzzy intr-o marime de comanda nevaga, bine determinata, cu care se comanda procesul in sensul anularii erorii. Pentru defuzzyficare se folosesc mai multe metode (metoda centrului de greutate, metoda centrului sumei, metoda Singelton etc.). Criteriile pentru alegerea unei metode depind de parametrii impusi reglarii.
2008
23
ramane. Zaharul din borhot este exprimat prin gravitatia specifica a borhotului, care devine mai usor ca zaharul si este transformata in alcool si alte compuse. Fermenatia este controlata prin reglarea temperaturii, a continutului de oxigen si a variatiei de amestecare, de exemplu, cantitatea de drojdie de bere pusa in rezervorul de fermentare. Temperatura are un efect important atat asupra vitezei de fermentare cat si asupra gustului berii. Cresterea drojdiei poate fi controlata prin continutul oxigenului. Variatia de amestecare afecteaza viteza fermentarii, insa nu asa de mult precum temperatura. Exista si alti factori care influenteaza fermentarea, precum compozitia borhotului si conditia drojdiei de bere. Ideal, acesti factori trebuie sa fie constanti, asa incat predictabilitatea fermentatiei este mentinuta. Cu toate acestea, in practica nici unul dintre acesti factori nu este static. Variatia naturala a maltului induce variatii ale compozitiei borhotului, desi astfel de variatii pot fi diminuate prin recalcularea retetelor. 3.2.2. Controlul temperaturii procesului de fermentare Precum s-a mentionat anterior, reactia ce are loc in fermentor intre drojdie si borhot este o reactie exotermica (se genereaza caldura). Deoarece fermentarea se doreste a avea loc la o temperatura specifica (de exemplu 16C), echipamentul de control este realizat astfel incat sa mentina constant temperatura la valoarea dorita. Schema bloc pentru un controller fuzzy al temperaturii este prezentata in figura 3.2:
X(t) +
e(t)
fuzzificar e
Evalua re reguli
defuzzificar e
y(t)
-1
Fig. 3.2 Schema bloc a unui sistem cu reactie negativa cu control logic fuzzy 3.2.3. Implementarea unui cotroller logic fuzzy de reglare a temperaturii Cu ajutorul unui controller logic fuzzy se doreste sa se controleze valvele de racire intr-un proces de fermentare a berii. Inchiderea si deschiderea valvei este direct controlata de un servomotor conectat la valve. Se doreste ca temperatura optima de fermentare (To) sa fie de 16C si aceasta este valoarea ce trebuie mentinuta tot timpul, pe cat posibil. In anumite perioade ale zilei, temperatura (Tx) poate oscila in jurul valorii optime din diferite motive (reactii chimice etc).
2008
24
Scopul proiectarii este de a varia tensiunea de la iesirea controllerului la servomotor pentru ca motorul sa poata controla valva, deci sa poata regla racirea fermentorului.
Fig. 3.3 Diagrama controlului temperaturii in procesul de fermentare 3.2.4. Fuzzificare PAS 1: Se definesc 3 variabile lingvistice pentru sistemul fuzzy: Eroarea de reglare a temperaturii temperr (C), ca diferenta dintre temperatura masurata de termocuplu (Tx) si valoarea optima (To): temperr=Tx-To, unde To=16C Temperatura de schimbare vartemp (C/S), ca variatia temperaturii, ce arata tendinta schimbarii temperaturii. Tensiunea (V) ca iesire a controllerului, in gama 0-10V; 0V inseamna ca motorul nu opereaza si valva este complet inchisa, iar 10V inseamna ca servomotorul este complet operational si valva este complet deschisa. PAS 2: Se stabileste domeniul de variatie al fiecarei variabile lingvistice: Eroarea de reglare a temperaturii temperr (C) are 3 functii de apartenenta: o Negativ -> Tx < To
2008
25
o Zero -> Tx = To o Pozitiv -> Tx > To Variatia temperaturii vartemp (C/S) are de asemenea 3 functii de apartenenta: o Negativ -> temperatura scade o Zero -> temperatura e constanta o Pozitiv -> temperatura creste Tensiunea de iesire (V) are 3 functii de apartenenta: o Zero o Mediu o Mare
PAS 3: Aceste domenii de variatie pentru fiecare valoare sunt definite astfel, cu ajutorul Editorului Fis din Matlab:
2008
26
2008
27
PAS 4: se definesc urmatoarele reguli, pe baza comportamentului si cunostintelor procesului de fermentare. In functie de aceste reguli, controllerul comanda motorul cu o anumita tensiune intre 0 si 10V. Motorul deschide valva la un unghi corespunzator tensiunii ce ii este aplicata, si astfel se raceste reciepentul de bere atat cat este necesar.
2008
28
3.2.5. Defuzzificare S-a ales metoda centrului de greutate, deoarece produce iesiri ale controllerului mai line. Performanta software-ului implementat se poate vizualiza cu ajutorul functiei 3D de transfer a sistemului, dupa cum se observa in figura 3.8:
2008
29
3.2.6. Implemenare Simulink Simularea sistemului a fost realizata folosind Simulink v.7:
Fig. 3.9 Implementare Simulink a procesului Se calculeaza eroarea de reglare in blocul eroare de reglare, si cu ajutorul multiplexorului este introdusa alaturi de variatia temperaturii in controllerul fuzzy, ca o singura intrare. Controllerul comanda valva de racire prin aplicarea unei tensiuni functie de temperatura existenta in recipient si de variatia temperaturii. Variatia temperaturii in recipient este simulata, deoarece nu exista o situatie reala. Reactia chimica a berii este simulata printr-o functie sinusoida, astfel incat temperatura sa creasca si sa descreasca in jurul valorii de 16C. Bineinteles ca nu este situatia reala si normala in care fermentarea are loc, insa este o posibilitate de a vedea cum are loc reglarea. Altfel, temperatura ar fi doar crescanda si nu ar mai avea loc nici o reglare.
2008
30
Fig. 3.10 Simulare Simulink a recipientului de fermentare 3.2.7. Rezultate experimentale Se poate observa la iesirea recipientului de fermentare efectului reglarii (figura 3.11). Temperatura este mentinuta cat mai aproape de 16C.
2008
31
Pentru siguranta asupra reglari, se poate face comparatie in cazul cand aceasta nu exista (figura 3.12 ). In acest caz, temperatura urca pana peste 19C (cazul actual), asa cum a fost definita in simularea reactiei chimica a berii.
Fig. 3.12 Inreruperea reglarii de temperatura in recipientul de fermentare Interesant de urmarit este si semnalul de comanda de la intrarea valvei (figura 3.13):
2008
32
Se poate observa care regula a avut ponderea cea mai mare in luarea deciziei. De exemplu, daca exista o eroare de reglare temperr 3 si o variatie a temperaturii vartemp 0.5, este activa regula 4, ceea ce corespunde unei tensiuni de comanda de 8.5V (figura 3.14).
Fig. 3.14 Exemplul 1 de luare a deciziei In cazul in care mai multe reguli sunt active, ca de exemplu pentru temperr 2.2 si vartemp 0.3, atunci are prioritate regula cu ponderea cea mai mare, indicata pe figura 3.15 prin cursorul rosu in cel de-al zecelea graf al iesirilor. In cazul de fata, este voba despre regula 1, cu tensiunea corespunzatoare, 4.26V.
2008
33
Fig. 3.15 Exemplul 2 de luare a deciziei 3.2.8. Concluzii S-a demonstrat controlul cu logica fuzzy ca fiind o metoda mai buna de control decat cea conventionala cu ajutorul PID. Sistemul de control poate fi implementa cu usurinta, iar variatia erorii este redusa. Aceasta metoda ofera o performanta globala superioara. Regulatoarele fuzzy au o robustete mai mare, sunt mai putin sensibile la perturbatii, la modificari ale parametrilor procesului si la neliniaritati. Ele se pot utiliza in cadrul traductoarelor cu sistem de reglare automata, convertoare A/D si D/A mai putin precise decat in cazul regulatoarelor clasice.
2008
34
2008
35
Bibliografie:
1. C. D. Caleanu Sisteme fuzzy - curs 2. www.wikipedia.org 3. Alte diverse surse internet
2008