Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Roboti Industriali Sisteme de conducere fuzzy

tehnica mecanica











Sisteme de conducere fuzzy



12.1 Introducere


Metodele de conducere conventionala se bazeaza pe o modelare corespunzatoare a sistemului supus reglarii si o tratare analitica cu ajutorul functiilor de transfer sau a ecuatiilor de stare. În majoritatea cazurilor, o tratare completa a problemei conducerii impune cunostinte avansate de matematica si sisteme de conducere.

În contrast cu tehnicile conventionale, metodele fuzzy de conducere ofera solutii mult mai pragmatice, cu evidente facilitati de aplicare în domenii diverse, impunând cunostinte de nivel acceptabil în domeniul sistemelor, logica de control si tehnologie.

Utilizarea logicii fuzzy în implementarea unor sisteme de conducere în conditiile absentei unei informatii totale asupra sistemului a reprezentat, de asemenea, unul din factorii care au determinat larga raspândire a controlului fuzzy în cele mai diverse domenii. Am asistat ( în ultimele doua decenii) si asistam la o adevarata explozie a tehnicilor de implementare de tip fuzzy atât în problemele clasice de control cât si în domeniul sistemelor expert, ale inteligentei artificiale sau în complexele probleme de decizii în domeniul economic.

Conceptul de Logica Fuzzy a fost introdus pentru prima data de Lotfi A. Zadeh de la Universitatea din California, Berkley, în 1965 în lucrarea Fuzzy Sets [1]. La acea epoca, de afirmare a calculatoarelor numerice bazate pe logica exacta 0, 1, un astfel de concept parea neverosimil. Zadeh, prin aceasta logica fuzzy a impus o alta modalitate de tratare a problemelor în care marimile ce determina evolutia unui sistem nu au frontierele clar definite, 0 sau 1, alb sau negru, aceasta putând fi asociate unei anumite zone incerte, "gri". De fapt, logica fuzzy da o noua interpretare a "logicii cu mai multe valori" formulata de Lukasievici [2]. De exemplu, sistemele ternare (cu trei valori logice 0, 1/2, 1) au fost studiate în nenumarate lucrari de algebra de comutatie, dar Zadeh a introdus conceptul de multime fuzzy, "vaga" pentru cazurile când frontiera valorii 1/2 are o caracteristica incerta.

Primele aplicatii ale acestui nou concept au aparut în jurul anilor 1975 în domeniile economic si medicina. Ulterior, japonezii au introdus metodele fuzzy în sistemele de control cu aplicatii diverse în industrie sau în echipamente electrocasnice.

Sfârsitul secolului trecut marcheaza o crestere spectaculoasa a metodelor fuzzy datorata atât noilor domenii de aplicatie: robotica, inteligenta artificiala, industrie usoara, industria materiilor compozite, navigatie, economie, etc., cât si extinderii geografice a noilor utilizatori în SUA si Europa.


12.2 Principiul logicii fuzzy


Logica fuzzy poate fi interpretata ca un concept de implementare a logicii umane în problemele de tip ingineresc. În limbajul uman exista diferite tipuri de inceritudini numite frecvent "incertitudini lexicale" care identifica imprecizia în evaluarea unor concepte sau în stabilirea unor concluzii.

Sa consideram cuvinte ca "barbat înalt", "barbat tânar" sau "zi calda", ce nu exprima foarte clar atributul asociat. Un barbat poate fi înalt daca are 1,80 m, dar unul care are numai 1,79 m nu poate fi considerat imediat ca unul de "înaltime medie". De asemenea, atributul de înalt poate fi diferit interpretat de un copil, pentru care toti barbatii sunt înalti, si altfel de un adult.

În aceeasi maniera se poate interpreta "barbat tânar". Pentru un om de 60 de ani, toti cei care au 54 de ani pot intra în aceasta categorie, ceea ce evident ca nu corespunde unor alte criterii de apreciere. Acesta poate fi considerat "între doua vârste" sau "în vârsta", dar delimitarea nu poate fi în nici un caz exacta.

Aceste exemple sugereaza faptul ca o eventuala abordare a acestor incertitudini într-o tratare logica necesita introducerea unui model matematic.

Sa reconsideram, pentru exemplificare, modelul lingvistic "barbati înalti". Într-o tratare conventionala, conform teoriei multimilor, multimea "barbati înalti" va cuprinde toti barbatii cu înaltime peste 1,77 m (de exemplu). Deci se poate introduce o functie care sa poata identifica exact apartenenta sau neapartenenta unui element (barbat) la aceasta multime (figura 12.1).


În figura 12.2 este prezentata o multime în care elementele ei pot fi "mai mult sau mai putin" definite ca "barbati înalti". Aceasta multime este o "multime fuzzy".Fiecarui element al acestei multimi i se poate asocia un anumit grad de apartenenta la "barbati înalti". Acest grad este numit "grad al functiei de apartenenta" m(x) al elementului x X.



Reprezentarea printr-o functie continua a functiei de apartenenta este redata în figura 12.3. Rangul lui m este de la 0 la 12.















Figura 12.3 Functia de apartenenta m(x)















Figura 12.4 Functii de aprtenenta pentru câteva etichete lingvistice


Exemplul de mai sus poate fi extins si pentru alte "etichete lingvistice" cum ar fi: "barbati scunzi" si "barbati de înaltime medie" carora li se vor atribui functii de apartenenta corespunzatoare (figura 12.4).

Deci functia de apartenenta transforma X într-un spatiu M al functiei de apartenenta m(x). Daca M contine numai doua puncte 0 si 1, atunci caracterul incert dispare si se poate discuta de o multime conventionala (figura 12.5).











Figura 12.5

Daca se considera submultimea barbatilor cu înaltime "peste 1,80 m" atunci fiecare element x al universului de discurs poate apartine sau nu (cu certitudine) acestei submultimi:


mA:X



Sa consideram universul X definit de multimea valorilor unghiulare ale unui brat robot în coordonate cilindrice. În jurul pozitiei de echilibru a bratului se pot defini urmatoarele etichete lingvistice: ZERO, POZITIV MEDIE, POZITIV MARE, NEGATIV MEDIE, NEGATIV MARE, ceea ce corespunde unei delimitari în coordonate unghiulare ca cea sugerata în figura 12.6. Acestora li se pot asocia functiile de apartenenta reprezentate în figura 12.7.

Elementele prezentate mai sus permit introducerea conceptului de "multime fuzzy" si identificarea elementelor sale specifice.

O multime clasica (multime crisp) este definita ca o colectie de elemente sau obiecte x X care poate fi finita, numarabila sau nu. Daca consideram acum o submultime A, A X, un element x poate sa "apartina lui A" sau sa "nu apartina lui A". Daca x A atunci declaratia "apartine lui A" este adevarata, în caz contrar fiind falsa.

O multime fuzzy este o multime de perechi ordonate:



unde este functia de apartenenta a lui x în . De exemplu, sa consideram pozitia bratului . Pentru cele 5 variabile lingvistice reprezentate în Figura 12.7, pozitia va fi definita prin:



Deci, multimea fuzzy asociata multimii POZITIV MARE va fi:



Pentru submultimea ZERO obtinem:



În mod similar pot fi construite submultimile fuzzy pentru celelalte functii de apartenenta prezentate în figura 12.7.


O notatie destul de frecvent întâlnita în literatura de specialitate [2, 3] pentru un univers de discurs discret si finit este data de:


iar în cazul universului de discurs continuu si infinit se utilizeaza:



Functii de apartenenta


Exemplele precedente au pus în evidenta importanta cunoasterii functiei de apartenenta în conditiile definirii corecte a unei multimi fuzzy. Conform elementelor prezentate anterior, considerând X un univers de discurs si o submultime A a lui X, atunci submultimii fuzzy i se asociaza functia caracteristica, functia de apartenenta:


(12.12)


prin care este specificat gradul prin care x este un membru al submultimii A.

Formele cele mai des întâlnite ale functiilor de apartenenta în aplicatii industriale sunt cele triunghiulare si trapezoidale (figura 12.8) [2], [3].



















Figura 12.8    Functii de apartenenta triunghiulare si trapezoidale

Gradul de apartenenta este exprimat, în aceste cazuri, prin relatii liniare. În mod normal, aceste functii sunt definite prin punctele de referinta M1, M2, M3 sau M1, M2, M3, M4, respectiv.

Sunt utilizate de asemenea si alte forme [3] (figura 12.9).



















Figura 12.9 Functii de apartenenta "clopot"


definite prin relatiile:


;


respectiv:


;


unde x0 defineste pozitia vârfului pentru μ=1 iar a reprezinta largimea domeniului.

O functie de apartenenta care deriva din caracteristica trapezoidala si cea definita de relatia (12.14) poate fi determinata de relatiile [3]:


;

;

;


Forma acestei functii este prezentata în figura 12.10.
















Figura 12.10 Functia de apartenenta definita prin relatiile (12.15 - 12.17)


Forma generala a unei functii de apartenenta este prezentata în Figura 12.112. În structura reprezentarii distingem urmatoarele zone:

baza functiei de apartenenta definita ca acea regiune a universului de discurs pentru care .

suportul corespunde acelei regiuni a universului pentru care .

frontierele functiei de apartenenta sunt definite ca acele regiuni pentru care . Punctelor de pe frontiera le sunt asociate o "anumita incertitudine".


























Figura 12.11    Forma generala a unei functii de apartenenta


12.4 Strategia de control lingvistica


Sa reconsideram cazul comenzii unui brat de robot (figura 12.6). Sa presupunem ca dorim sa miscam bratul din pozitia initiala () în pozitia de origine, dorita (). Conducerea conventionala a bratului este bazata pe procesarea erorii,


(12.18)


utilizând regulatoare standarde PI sau PID (figura 12.12).










Figura 12.12 Sistem de conducere conventional


Algoritmul de control al bratului determina o lege de variatie a cuplului de actionare M(t) astfel încât eroarea stationara a sistemului sa tinda catre valoarea zero.


(12.19)


O astfel de abordare impune o analiza exacta a miscarii bratului, determinarea ecuatiilor diferentiale ce guverneaza miscarea precum si calculul corespunzator al parametrilor regulatorului în scopul obtinerii performantelor dorite.

O tratare cu totul diferita de procedura de control conventionala este oferita de asa numita "strategie de control lingvistica". Un operator uman poate realiza un control cu performante acceptabile printr-o evaluare euristica a pozitiei (a erorii de urmarire) si luarea unor decizii corespunzatoare. În esenta, un operator va actiona dupa urmatoarele reguli:

Porneste bratul din pozitia initiala cu o valoare "medie" a cuplului M.

Daca distanta fata de pozitia dorita "mare", creste valoarea cuplului la o valoare "mare".

Daca distanta este "medie" el micsoreaza valoarea cuplului la o valoare "medie".

Daca distanta este "zero" valoare cuplului este redusa la "zero" sau se poate impune chiar o valoare "negativa zero" astfel încât sa fie realizata oprirea în pozitia dorita.

Regulile precizate impun introducerea unor multimi fuzzy corespunzatoare pe universul de discurs reprezentat de "cuplul de actionare". Conventional acestea vor fi notate prin: NEGATIV ZERO, POZITIV ZERO, MEDIE, MARE si carora li se va asocia functii de apartenenta de tip triunghiular (figura 12.13).













Figura 12.13 Functii de apartenenta ale cuplului de actionare


Scrise într-un formalism specific controlului fuzzy, regulile de mai sus sunt specificate prin asa numitele "reguli If-Then".

Regula 1 If Unghiul=POZITIV MARE

Then Cuplul=MARE

Regula 2 If Unghiul=POZITIV MEDIU

Then Cuplul=MEDIE

Regula 3 If Unghiul=ZERO

Then Cuplul=NEGATIV ZERO

Regulile prezentate mai sus definesc asa numitul mecanism de "inferenta" ce reprezinta o etapa importanta în introducerea conceptului "fuzzy" într-un sistem de conducere. Evident, aceste reguli au, în acest exemplu, o forma simpla, corespunzând problemei tratate.

Sa presupunem ca miscarea bratului din pozitia initiala pâna în pozitia dorita face parte dintr-un ciclu tehnologic de preluare a unei piese supusa unui proces de tratare termica. Introducând o noua variabila TEMPERATURA , asociindu-i acesteia domeniile: TEMPERATURĂ JOASĂ, TEMPERATURĂ MEDIE, TEMPERATURĂ MARE si asociindu-le functiile de apartenenta din figura 12.14, regulile prezentate mai sus vor introduce conditii suplimentare. Aceste conditii sunt impuse în corpului regulii prin operatori sI (AND), respectiv SAU (OR), în functie de logica interpretarii.

Astfel, noile reguli vor avea forma:

Regula 1     IF Unghiul=POZITIV MARE AND Temperatura =

TEMPERATURA JOASĂ

THEN Cuplul=POZITIV ZERO

Regula 2     IF Unghiul=POZITIV MEDIU AND Temperatura =

TEMPERATURĂ MEDIE

THEN Cuplul=MARE















Figura 12.14 Functii de apartenenta ale variabilei Temperatura


Regula 1 se interpreteaza astfel: daca piesa ce urmeaza a fi preluata nu este suficient încalzita (TEMPERATURĂ JOASĂ) atunci miscarea bratului nu este necesara (Cuplu=POZITIV ZERO).

Pentru Regula 2 avem urmatoarea interpretare: daca Temperatura atinge valoarea necesara (domeniul TEMPERATURĂ MEDIE) si daca bratul are pozitia initiala (Unghiul=POZITIV MARE) atunci bratul este pus în miscare (Cuplu=MARE) pentru prinderea piesei, etc.

Desigur, în alte situatii pot apare si operatori de tipul SAU (OR) sau negatie (NOT) care implementeaza în concept fuzzy logica clasica.


12.5 Operatori în logica fuzzy


Operatorii uzuali NEGAŢIE, sI, SAU sunt tratati în logica fuzzy prin aplicarea regulilor "min", "max" asupra functiilor de apartenenta.


12.5.1 Operatorul SAU (OR)


Se vor considera trei multimi fuzzy , , , definite pe acelasi univers de discurs X. Operatorul SAU corespunde operatiei de reuniune:


(12.20)


În tratarea fuzzy, operatorul este realizat prin functia de maxim aplicata la nivelul functiilor de apartenenta (figura 12.15):



În cazul în care variabilele sunt diferite, procedura se pastreaza:



Evident ca anumite proprietati ale algebrei logice conventionale (booleene), comutativitatea si idempotenta se pastreaza.



Operatorul SAU poate fi construit si prin operatia aritmetica de adunare, mai precis de mediere


(12.25)



Divizarea prin 2 s-a impus pentru a exclude eventualele depasiri a valorii 1 a functiilor rezultate prin însumare.


Figura 12.15    Operatorul SAU realizat prin "maximum"


12.5.2 Operatorul sI (AND)


Ca si în algebra conventionala acest operator se obtine prin operatia de intersectie realizata la nivelul functiilor de apartenenta prin operatorul "minim":


(12.27)


În figura 12.16 este prezentat operatorul sI prin operatia de "minim" aplicata functiilor de apartenenta.

Toate proprietatile descrise mai sus se regasesc si la acest operator:



În foarte multe aplicatii, operatorul sI este realizat prin operatia aritmetica de înmultire:


(12.31)


Figura 12.16    Operator sI realizat prin operatia "minimum"



12.5.3 Operatorul NEGAŢIE (NOT)


Acest operator realizeaza complementul functiei de apartenenta în raport cu 1 (figura 12.17):


(12.32)

(12.33)


Figura 12.17 Operatorul NU (Negatie)


1.6 Proprietati generale ale unui sistem de conducere

în logica fuzzy


Sistemele conventionale de conducere ale unui robot (ale componentelor sale mecanice) se încadreaza în configuratia clasica a sistemelor de reglare (figura 12.18).



Figura 12.18    Sistem conventional de conducere


Într-o astfel de structura, valoare dorita a variabilei de pozitie (de referinta) qd este comparata cu valoarea reala masurata de traductor (qT). Eroarea rezultata este procesata într-un regulator care genereaza marimea de comanda a sistemului de actionare u si prin aceasta este determinata miscarea elementului mecanic (bratul robotului):



Regulatoarele uzuale utilizate în aceste sisteme sunt de tipul P, PI si PID, ele asigurând, în conditii de alegere corespunzatoare a parametrilor regulatorului, performantele de control dorite.


Un sistem de conducere în logica fuzzy (SCLF) respecta configuratia generala a oricarui sistem de conducere, rolul regulatorului conventional fiind preluat de un Controler în Logica Fuzzy (CLF) (figura 12.19).

Figura 12.19 Sistem de conducere în logica fuzzy


Un CLF va implementa, deci, un algoritm de conducere care, prin procesarea erorii e (sau a unui vector eroare ) sa determine performantele calitative dorite pentru întregul sistem de conducere, în mod curent obtinerea unei erori stationare zero.

În contrast cu regulatorul standard, CLF nu implementeaza o relatie mate-matica bine definita (algoritmul de reglare) ci utilizeaza inferente cu mai multe re-guli bazate pe variabile lingvistice si care sunt tratate prin operatori în logica fuzzy.

Configuratia generala a unui CLF cuprinde trei parti (figura 12.20) [2, 3, 6]:


Fuzificare

Inferente (baza de reguli)

Defuzificare.













Figura 12.20 Structura unui CLF


Blocul de fuzificare transforma datele de intrare, eroarea sistemului, în marimi fuzzy, atribuind acestor marimi variabile lingvistice si asociindu-le functii de apartenenta corespunzatoare.

Blocul de inferente reprezinta partea principala a unui CLF. Acest bloc genereaza legea de control sub forma unei familii de reguli logice de tipul IF...THEN ce descriu relatiile între intrarea e (eroare) si iesirea u a controlerului. Adaptând un model direct, aceste reguli implementeaza de fapt o lege de forma generala:


(12.34)


Din considerente practice, implementarea unei astfel de legi pentru este extrem de complexa si dificil de aplicat. În mod curent, legea de control de mai sus capata forma simplificata:


(12.35)


sau:


(12.36)


Existenta unei legi de conducere de tipul (12.42)-(12.6.44) nu înseamna ca CLF poate fi definit printr-o functie de transfer sau printr-o ecuatie de diferente. Legea de control este generata prin baza de reguli IF...THEN sub forma:


(12.37)


si deci iesirea actuala se obtine sub forma:


(12.38)


un astfel de CLF este numit CLF-Mamdani dupa numele cercetatorilor Mamdani si Assilian care l-au propus prima data în anul 1975 (figura 12.21) [12].










Figura 12.21 Variabilele de intrare si iesire într-un CLF


Fiecare din regulile bazei este caracterizata printr-o parte IF numita "antecedent" si o parte THEN numita "consecinta". Antecedentul unei reguli contine setul de conditii, consecinta contine concluzia. Modul în care opereaza CLF-ul este urmatorul: daca conditiile antecedentului sunt satisfacute, atunci concluzia, consecinta, este activa. Deci CLF-ul poate fi privit ca un sistem care are ca intrari variabilele incluse în antecedentele regulilor si ca iesire variabila inclusa în consecinta. Deci, se va putea defini eroarea e(k) si variatia ei Δe(k) ca intrari în sistem, iar iesirea poate fi reprezentata de variatia Δu(k) (figura 12.21). Un exemplu de regula poate fi urmatorul:

IF e(k) este POZITIV AND Δe(k) este ZERO

THEN Δu(k) este POZITIV


Este evident ca intrarile si iesirile unui CLF sunt stari, sau substari ale întregului sistem controlat, deci CLF poate fi privit si ca un controler de variabila de stare guvernat de o familie de reguli si un mecanism de inferenta fuzzy.

Ultimul bloc al unui CLF, blocul de defuzificare, asigura formarea unor semnale crisp, prin metode specifice, compatibile cu sistemele de actionare utilizate în controlul robotilor.

Elementele prezentate mai sus pot pune în evidenta caracteristicile generale ale sistemelor conduse prin metode bazate pe logica fuzzy si permit identificarea avantajelor si dezavantajelor acestor noi concepte de conducere.

Avantajele esentiale pot fi sumarizate în urmatoarele [10], [11, [12]:

nu se impune un model precis al sistemului condus;

strategia de conducere se bazeaza pe operatori lingvistici si o baza de reguli usor de implementat;

pot fi conduse procese complexe cu neliniaritati dificil de modelat;

implementarea se poate realiza tehnologic relativ facil fie prin proiectarea unor configuratii particulare de controlere, fie prin utilizarea unor procesoare dedicate.

Dezavantajele utilizarii acestor sisteme sunt:

nu exista o metodica precisa pentru realizarea tuturor fazelor implementarii unui CLF: fuzificare, inferente, defuzificare, în multe situatii solutiile adoptate având un caracter euristic, artizanal, nesistematic;

dificultatea demonstrarilor, în toate cazurile, a stabilitatii sistemelor;

posibilitatea aparitiei ciclurilor limita datorita functionarii pe caracteristici neliniare;

performantele sistemului condus pot sa nu fie întotdeauna la nivelul dorit;

imposibilitatea implementarii practice a unui CLF cu un numar mare de variabile de intrare (peste 4) datorita dimensiunii bazei de reguli implicata.

În orice caz, este evident ca sistemele de conducere în logica fuzzy reprezinta o alternativa clara fata de sistemele de conducere conventionale. Acest lucru este demonstrat de numeroasele aplicatii în economie si industrie, de volumul cercetarilor pe plan mondial în aceasta directie, de eforturile tehnologice pentru a pune la dispozitie resursele software si hardware specializate.


Fuzificarea marimilor în CLF


Dupa prezentarea generala a caracteristicilor de baza în SCLF, vom aborda în detaliu principalele aspecte ale procedurilor de implementare a unui CLF.

Interfatarea pe intrare a unui astfel de controler este realizata prin blocul de fuzificare. Acesta trebuie sa asigure:

Conversia marimilor de intrare (eroare) e într-o forma digitala compatibila cu procesarea ulterioara în logica fuzzy. Daca eroarea e este un semnal continuu, se impune o conversie analog-numerica corespunzatoare. De asemenea, daca e este un semnal numeric, o procesare numerica suplimentara este necesara pentru asigurarea performantelor dorite.

Formarea variabilelor ce vor determina conditiile antecedentului în baza de reguli a CLF. În general, asa cum s-a aratat anterior, o prima variabila de intrare este eroarea e(k), dar impunerea unor conditii complexe necesita generarea si a altor variabile de intrare. Acestea pot fi definite prin marimea de eroare evaluata la câteva momente de timp, e(k-1), e(k-2),..., e(k-v) sau de alte variabile de stare ale sistemului condus, cum ar fi viteza sau acceleratia bratului mecanic (pentru controlul unui sistem robot).

Exprimarea variabilelor de intrarea ca multimi fuzzy. În acest sens, marimilor fizice li se atribuie variabile lingvistice, variabile fuzzy si functii de apartenenta. Se determina totodata universul de discurs pe care este definita fiecare variabila.


Functiile de apartenenta utilizate în sistemele de conducere au forme triunghiulare sau trapezoidale. De asemenea, universul de discurs este frecvent ales ca [-1,1] iar variabilele de intrare astfel definite sunt considerate normalizate. Este evident ca aceasta impune utilizarea unor factori de scala corespunzatori pentru fiecare variabila.

Figura 12.22 Functii de apartenenta ale variabilelor de intrare în CLF


În figura 12.22.a sunt reprezentate functiile de apartenenta a cinci multimi fuzzy ce reprezinta etichetele lingvistice ale erorii: NM, NI, Z, PI, PM (NEGATIV MARE, NEGATIV INFERIOR, ZERO, POZITIV INFERIOR, POZITIV MARE, respectiv). Rangul de operare al erorii, universul sau de discurs, se presupune    [-1,1]. Se observa ca trei multimi au functii de apartenenta triunghiulare iar doua, trapezoidale.

În mod analog, în figura 12.22.b sunt reprezentate cele trei functii de apartenenta ale multimilor fuzzy asociate etichetelor lingvistice ale variatiei erorii Δe: N,Z,P (NEGATIV, ZERO, POZITIV) al carui univers de discurs este de asemenea normalizat.

În figura 12.22.c sunt prezentate functiile de apartenenta ale multimilor fuzzy ce reprezinta acceleratia miscarii (), în conditiile în care baza de reguli ce urmeaza a fi stabilita impune introducerea acestor variabile. Sunt definite sapte multimi fuzzy asociate etichetelor NM, NS, NI, Z,PI, PS, PM (NS=NEGATIV SUPERIOR, PS=POZITIV SUPERIOR). Universul de discurs nu mai este normalizat si este utilizat chiar domeniul de variatie al variabilei de stare, acceleratia .

Cele trei exemple prezentate mai sus ilustreaza faptul ca alegerea functiilor de apartenenta nu poate sa fie supusa unor reguli foarte precise. Acestea pot fi alese simetrice sau nesimetrice (în raport cu originea), triunghiulare sau trapezoidale, echidistante sau nu, pe universul de discurs normalizat sau nu. Totusi, indiferent de modalitatile de alegere se impun categoric respectarea urmatoarelor conditii:


,

,


Semnificatia acestor conditii va fi ilustrata mai târziu dar o analiza elementara indica ca relatia (12.39) impune ca pentru orice punct din universul de discurs, U sa fie definita cel putin o functie . A doua conditie este determinata de o anumita comoditate în calculele numerice ale CLF.

















Figura 12.23 Forme ale functiilor de apartenenta

În figura 12.23 sunt prezentate câteva tipuri de functii de apartenenta care nu respecta conditiile (12.39), (12.40). Astfel de forme nu pot determina o implementare corecta a conceptului de logica fuzzy. Se remarca ca functiile descrise în figura 12.22 verifica cele doua conditii (12.39), (12.40), modelul lor servind ca referinta pentru implementari curente. Trebuie subliniat faptul ca, în functie de problema abordata, pot fi utilizate si alte tipuri de functii de apartenenta, cu forme specifice, particulare, [5, 6] care sa ofere anumite facilitati în generarea bazei de reguli (evident ca restrictiile (12.39), (12.40) trebuie sa fie satisfacute).


Pentru a evita eventualele confuzii ulterioare mentionam ca particularitatile specificate mai sus sunt valabile pentru functiile de apartenenta asociate numai variabilelor de intrare într-un CLF. Variabilelor de iesire, marimile crisp, li se asociaza de asemenea functii de apartenenta, dar acestora nu li se mai impun restrictiv conditiile (12.39), (12.740). Procesul de generare ale acestor variabile este defuzificarea si va fi discutat ulterior. Functiile de apartenenta utilizate pot fi de tipul celor prezentate în figura 12.22, dar pot avea si forma aparte ca în figura 12.24.b. Functiile de apartenenta din figura 12.24.a pot intra în categoria "normale", acestea respectând conditiile (12.39), (12.40), dar cele din figura 12.24.b, functii numite "singleton", nu verifica nici una din conditii. Aceste functii sunt utilizate frecvent în conditiile în care se doreste obtinerea, în procesul de defuzificare, a unei relatii simplificate pentru variabilele de iesire.

Figura 12.24 Functii de apartenenta pentru variabilele de iesire


12.8 Baza de reguli


Partea principala a unui CLF, cea care implementeaza algoritmul de conducere al sistemului este baza de reguli (blocul de inferente) a sistemului.

Asa cum am aratat în paragrafele anterioare, fiecare regula este formata din doua parti: partea IF numita si antecedent si o parte THEN numita consecinta.


IF

THEN

IF

THEN


Antecedentul contine conditia sau conditiile (variabile de intrare) care activeaza regula. Daca mai multe variabile formeaza conditiile de activare, acestea sunt legate prin AND. Consecinta permite generarea variabilei sau a variabilelor de iesire activate ca urmare a îndeplinirii conditiilor regulii.


Pentru a fixa ideile vom analiza baza de reguli pentru un sistem de conducere al unui brat în miscare de translatie (figura 12.25).


Figura 12.25    Sistem de conducere al unui brat robot


Se va construi baza de reguli pentru un CLF cu doua variabile de intrare e(k) si Δe(k) si o variabila de iesire u(k). Se va presupune ca universul de discurs este normalizat atât în ceea ce priveste variabilele de intrare cât si pe cea de iesire, iar functiile de apartenenta au forma din figura 12.26.


Figura 12.26 Functiile de apartenenta pentru e, Δe,u


Formarea corecta a bazei de reguli depinde de ordinul sistemului condus si de performantele dorite. În principiu, nu exista o procedura sistematica pentru determinarea regulilor, acestea fiind determinate în mare masura de abilitatea si experienta proiectantului. Totusi, pentru cazul analizat, regulile pot fi stabilite relativ usor, acestea fiind determinate de conditia evolutiei stabile a sistemului catre o dreapta de comutare [3], [7], [8]. Detaliile asupra acestei metode vor fi tratate ulterior.

În sinteza, baza de reguli pentru exemplul discutat, contine noua reguli în forma urmatoare:


Regula 1     IF e este N AND Δe este P

THEN u este Z


Aceasta regula sugereaza ca în conditiile în care eroarea este negativa si variatia ei este pozitiva, comanda generata u poate fi zero, evolutia sistemului ducând catre domeniul e=0. Celelalte reguli au interpretari similare.


Regula 2    IF e este Z AND Δe este P

THEN u este N

Regula 3    IF e este P AND Δe este P

THEN u este N

Regula 4    IF e este N AND Δe este Z

THEN u este P

Regula 5    IF e este Z AND Δe este Z

THEN u este Z

Regula 6    IF e este P AND Δe este Z

THEN u este N

Regula 7    IF e este N AND Δe este N

THEN u este P

Regula 8    IF e este Z AND Δe este N

THEN u este P

Regula 9    IF e este P AND Δe este N

THEN u este Z


Se remarca ca fiecare regula este definita prin operatorul logic AND (sI) ce defineste intersectia conditiilor logice asociate regulii. Desi, neformulat explicit, baza de reguli contine si operatorul OR (SAU) aplicat ca operator reuniune intrinsec pe multimea regulilor bazei. Exemplu anterior poate fi rescris sub forma urmatoare:

Regula 1    .......... ..... ...... ............. , OR

Regula 2    .......... ..... ...... ............. , OR




Regula 9     .......... ..... ...... ............. .

Descrierea de mai sus a bazei de reguli este asa numita "descriere lingvistica". Ea este utilizata frecvent în conditiile în care dimensiunea bazei este rezonabila, numarul de variabile de intrare în CLF nedepasind valoare trei. În mod frecvent, baza de date poate fi reprezentata sub forma tabelara si printr-o matrice de inferenta. De exemplu, regulile stabilite mai sus pot fi redate sintetic ca în Tabelul 12.12.


e

N

Z

P

P

Z

N

N

Z

P

Z

N

N

P

P

Z


Tabelul 12.1    Baza de reguli pentru variabilele e,

Matrice cuprinde, pe li 353c29d nii si coloane etichetele lingvistice ale variabilelor e si Δe, respectiv. Fiecare pereche linie, coloana defineste conditiile unei anumite reguli iar în celula corespunzatoare a matricei este introdusa eticheta lingvistica a valorii generate, u (consecinta).

Matricile de inferente de tipul celei prezentate sunt practice pentru baze de reguli cu un numar mare de variabile de intrare în CLF. De exemplu, daca conditiile în CLF sunt date de e, Δe si Δ2e (acceleratia sistemului), atunci baza de reguli poate fi sintetizata prin matricea de inferente din Tabelul 12.2.


e

N

Z

P

N

Z

P

N

Z

P

N

Z

P

P

Z

Z

N

Z

N

N

Z

N

N

Z

P

Z

Z

P

Z

N

Z

Z

N

N

P

P

Z

P

P

Z

P

Z

Z


Tabelul 12.2 Baza de reguli pentru variabilele e,


Procedura poate fi extinsa pentru structuri mai complexe, cu un numar mai mare de variabile de intrare, dar trebuie avut în vedere ca o crestere a complexitatii bazei de date implica o procesare mai laborioasa, prelucrarea unui numar mare de variabile, un timp de calcul sporit si multe inconveniente în implementarea practica a algoritmului de control.


12.9 Implementarea bazei de reguli


Este evident ca procesarea unor reguli într-o baza (mecanismul de inferenta) impune determinarea, în primul rând, a conditiilor ce definesc regula si a gradului lor de activare. Acest lucru este obtinut prin tratarea conditiei ca multime fuzzy si prin testarea gradului de activare al acesteia cu ajutorul functiilor de apartenenta asociate.

Într-o scriere sintetica, o regula poate fi exprimata sub forma:

Regula j: IF CONDIŢIA C1 AND CONDIŢIA C2 AND ... AND CONDIŢIA CP

THEN DECIZIA Dj

Considerând , multimea fuzzy asociata conditiei C1, gradul de activare al conditiei pentru o valoare x=x* în universul de discurs este exprimat prin

(12.41)



În figura 12.26 este ilustrat grafic modul de calcul al gradului de activare.



Figura 12.26 Calculul gradului de activare


Pentru o regula completa definita prin conditiile C1, C2, ..., Cp carora li se asociaza multimile fuzzy , , ...., , definite pe universul de discurs x1, x2, ..., xp, se obtine:


, i=1, 2, ..., p (12.42)


Conditiile Ci sunt interpretate prin operatorul AND


(12.43)


unde va reprezenta functia de activare al variabilei de iesire, consecinta, decizie a regulii determinate de expresia THEN.

Sinteza deciziei, la nivelul unei reguli, este obtinuta în general prin algoritmul Mandami [12] care formal este scris sub forma:


(12.44)


unde , ,..., sunt multimi fuzzy definite pe universul de discurs U al variabilei de iesire u.


Figura 12.27 Calculul gradului de activare al unei reguli


Figura 12.28 ilustreaza tehnica de formare a deciziei în cadrul unei reguli. Pe întreaga baza, procedura este repetata pentru fiecare regula.













Figura 12.28 Generarea deciziei pentru regula j


În figura 12.29 este:


Figura 12.29 Generarea deciziilor pentru doua reguli.


prezentata generarea deciziilor în doua reguli j si m, si reprezentând multimile fuzzy corespunzatoare definite pe universul de discurs al variabilei de iesire.


(12.45)


Implementarea numerica a bazei de reguli corespunde de fapt modului de tratare a operatorilor AND - OR. Cea mai des întâlnita modalitate de evaluare este cunoscuta sub numele "min - max" în care operatorii AND sunt evaluati prin functia "min", iar operatorii OR prin "max".


(12.46)


Pentru exemplificarea ultimului operator, în figura 12.30 este prezentata functia max aplicata pe cele doua reguli j si m ilustrate în figura 12.29.


Figura 12.30    Generarea deciziei prin operatorul "max"


(12.48)


Alte proceduri de implementare sunt definite ca "prod - max", unde:


(12.49)


iar operatorul OR pastreaza forma (12.46).

De asemenea, se utilizeaza si forma "prod - suma" în care operatorul AND este tratata dupa relatia (12.47), iar OR prin:


(12.50)


Pentru ilustrarea acestor proceduri se va utiliza baza de reguli prezentata în paragraful precedent, cu functiile de apartenenta ale celor doua variabile de intrare e, Δe si de iesire u.

Se va analiza metoda "min - max" ce implementeaza conditiile logice AND si OR prin operatori min si max, respectiv. În figura 12.31 este ilustrata grafic aceasta metoda. Sunt analizate primele doua reguli ale bazei si este exemplificata procedura pentru câteva valori particulare ale variabilelor de intrare e si Δe, si .

Pentru Regula 1, determina un grad de activare , pentru functia de apartenenta N:


(12.51)


iar , pentru functia de apartenenta P, determina:


(12.52)


Conditia Regulii 1, "IF e este N AND Δe este P THEN u este Z" este tratata prin operatorul min:



Similar, pentru Regula 2 se obtine:



Cele doua functii de activare , determina deciziile , iar decizia finala (dupa doua reguli) va fi conform relatiei (12.46),



Aplicarea procedurii "prod - max" va determina câteva modificari cantitative


care se vor repercuta în noile forme ale deciziilor , si corespunzator decizia finala .


Figura 12.31 Implementarea regulilor 1 si 2 prin metoda "min-max"


În mod similar se obtine decizia prin algoritmul "prod - suma". Pentru comparare, în figura 12.32 sunt prezentate cele doua metode.














Figura 12.32 Analiza comparativa a metodelor


12.10 Defuzificarea


Paragrafele anterioare au abordat etapele principale în implementarea unui CLF, fuzificarea marimilor de intrare si procesarea algoritmului de conducere sub forma unei baze de reguli. În final, marimea de iesire este generata sub forma unei multimi fuzzy. Este evident ca se impune compatibilizarea acestei marimi cu procesul condus, deci este necesara reconversia marimii de iesire într-o marime crisp. Procedura aceasta este cunoscuta sub numele de defuzificare.

Defuzificarea reprezinta o etapa importanta în structura generala a proiectarii unui CLF si literatura de specialitate abunda în solutii [2, 3, 4, 5]. În cele ce urmeaza se vor prezenta câteva din tehnicile de implementare cele mai eficiente.

Defuzificarea prin "centru de greutate" este cea mai raspândita procedura de reconversie a deciziei fuzzy de la iesirea CLF într-o variabila crisp. Aceasta metoda se bazeaza pe evaluarea functiei de apartenenta a deciziei fuzzy dupa aceleasi reguli ca cele utilizate în calculul centrului de greutate din mecanica clasica. În acest mod se asociaza functiei de apartenenta a decizie variabilei de iesire o valoare crisp corespunzatoare.

Pentru fixarea ideilor, se va considera decizia D* reprezentata în figura 12.33. Functia de apartenenta a acestei decizii fuzzy este obtinuta din primele doua reguli ale aplicatiei discutate în paragraful precedent (figura 12.31).

Prin evaluarea "centrului de greutate" al ariei definita de functia de apartenenta a deciziei D* se obtine pe abscisa:














Figura 12.33 Defuzificarea deciziei D*



ceea ce reprezinta o masura crisp a deciziei fuzzy.

În cazul general, defuzificarea apeleaza la formula clasica a "centrului de greutate":



unde este functia de apartenenta a deciziei finale obtinuta prin relatia (12.46), numitorul reprezinta aria delimitata de functia de apartenenta, iar numaratorul defineste momentul ariei. În aceasta relatie s-a presupus ca universul de discurs U este normalizat. Într-o forma mai generala, expresia (12.59) poate fi rescrisa ca:



În mod curent este utilizata o procedura de discretizare



ceea ce permite, în cele mai multe cazuri, un calcul usor de implementat.

Pentru anumite cazuri particulare ale functiei de apartenenta, relatiile (12.59) - (12.61) pot capata anumite forme simplificate. De exemplu, daca iesirea este definita prin functii singleton, expresia (12.61) devine (figura 12.34):



unde:




Figura 12.34 Defuzificarea pentru iesire de tip singelton


O interpretare si mai facila, desi evident destul de aproximativa, se poate obtine daca functia de apartenenta contine un maxim sau domenii maximale (figura 12.35).



Figura 12.35 Defuzificarea prin valoarea maxima


12.11 Un exemplu de calcul


În paragrafele precedente a fost prezentata în detaliu metodologia de proiectare a unui CLF. Pentru a concretiza mai bine procedura si pentru a permite o mai buna familiarizare cu tehnicile de implementare, se va relua exemplul oferit de conducerea unui brat de robot (figura 12.25) cu baza de reguli prezentata în Tabelul 1 si functiile de apartenenta din figura 12.26. Se vor trata regulile de conducere prin metoda "min - max" pentru regimul de lucru definit prin:



Primele doua reguli sunt analizate în figura 12.31 si în continuare vor fi analizate celelalte sapte reguli ale bazei.

Astfel, Regula 3 impune algoritmul:

IF e este P AND Δe este P

THEN u este N

Gradul de activare al multimilor fuzzy se obtine în aceeasi maniera ca cea prezentata în paragraful 12.8:



iar functia de activare a iesirii, pe decizia N, va fi



ceea ce identifica decizia regulii, conform relatiei (12.45), ca multimea valorilor 0 în domeniul de discurs al variabilei de iesire:


,


În mod similar sunt analizate celelalte reguli Regula 4, ..., Regula 9 obtinându-se deciziile sub forma multimilor fuzzy , , , , , , respectiv.

Decizia finala, pentru variabilele de intrare se obtine dupa formula (12.46):



Întreaga procedura este ilustrata în figurile 12.36 si 12.37.


N

Z

P

ge=0




e


fN6=0




u

N

Z

P




g e=0.5



N

Z

P



e=-0.3

min

N6*





N

Z

P

ge=0.75




e

N

Z

P

ge=0.75



e

N

Z

P

g e=0






N

Z

P

fP7=0



u

min

P7*

Reg 7

Reg 6





N

Z

P

ge=0.25




e

N

Z

P



e

N

Z

P

g e=0.5






N

Z

P

fZ5=0.25




u

min

Z5*

Reg 5





N

Z

P




e

N

Z

P

ge=0



e

N

Z

P

g e=0.5






N

Z

P

fN3=0




u

min

N3*

Reg 3


N

Z

P

ge=0.75




e


fP4=0.5




u

N

Z

P




g e=0.5



N

Z

P



min

P4

Reg 4


Defuzificarea finala permite determinarea valorii crisp a marimii de iesire, conform relatiei (12.60), (12.62).


N

Z


ge=0.25




e

N

Z

P



e

N

Z

P

g e=0






N

Z

P





u



Z

P

ge=0




e


fZ9=0




u

N

Z

P




g e=0



N

Z

P



e=-0.3


min


Z9

Reg 8

Reg 9


Figura 12.36 Implementarea bazei de reguli - conducerea unui brat robot

u*=-0.22





u




D*


Figura 12.37 Defuzificarea decizie - conducerea unui robot


12.12 Analogia între CLF si regulatoarele conventionale PD, PI, PID


Exemplul analizat în paragraful precedent ilustreaza modul de calcul al variabilei de iesire u în functie de eroarea e(k)si variatia erorii Δe(k), deci determina o lege de conducere de forma


O astfel de lege de conducere este similara cu cea stabilita în regulatoarele conventionale de tip PD care genereaza un control sub forma unei combinatii între o componenta de tip proportional si una de tip derivativ [10, 11]:



unde kP si kD sunt parametrii regulatorului PD.

Prin analogie, o lege de conducere obtinuta într-un CLF, de forma (12.66) se va numi CLF - PD.

Daca regulile unui CLF nu genereaza valoarea u(k), ci variatia marimii de iesire Δu(k):



deci se implementeaza o lege de conducere generala de forma



atunci aceasta lege se poate asocia cu cea oferita de un regulator conventional de tip PI descris prin relatia:



unde kP si kI sunt parametrii regulatorului PI.

În acest sens, un CLF a carei baza de reguli defineste un algoritm de forma (12.69) se va numi de tipul CLF - PI.

Procedura poate fi extinsa pentru legi de conducere mai complexe. De exemplu, daca legea unui CLF este generata sub forma:



unde:



ea va fi de tipul PID, întrucât este similara cu cea obtinuta de regulatorul conventional cu acelasi nume:


Este evident ca o astfel de lege impune în CLF o baza de reguli mai complexa, definita pe variabilele , , . De exemplu, o regula a bazei poate fi urmatoarea:

IF este ZERO AND este MEDIE AND este POZITIVĂ

THEN este POZITIVĂ

O forma modificata a legii (12.12.6) care poate fi acceptata în definirea unui CLF - PID poate fi de forma:



care corespunde regulatorului PID discret:



Desigur, pot fi adoptate si alte legi de conducere, cu algoritmi mai sofisticati, dar este evident ca o crestere a numarului de variabile de intrare (antecedente) în structura regulilor, determina o implementare extrem de dificila si în multe cazuri cu totul nepractica. Din acest motiv, introducerea a mai mult de doua variabile de intrare în structura regulilor este acceptata numai în conditii de performante cu totul speciale.


12.13 Consideratii asupra universului de discurs


În general, universul de discurs al variabilelor de intrare si de iesire la un CLF este reprezentat de dreapta numerelor reale. În practica, fiecare univers este restrictionat la un interval bine definit între o valoare maxima si una minima în conformitate cu rangul marimilor fizice.

Sa luam, pentru exemplificare, conducerea unui brat robot (figura 12.25) unde:


(12.76)


Universul de discurs al erorii va fi definit practic de valorile maximale si minimale ale variabilelor de pozitie prescrise xd si masurate x.

(12.78)

(12.79)

(12.80)


În mod analog se vor defini universele de discurs ale variatiei erorii si ale variatiei de iesire (de control) u:


(12.81)

(12.82)

(12.83)

(12.84)


Este evident ca în functie de problema de conducere abordata, domeniile universurilor de discurs pot fi extrem de diverse. Totusi, pentru simplificarea tratarii si unificarea metodologiei de proiectare, este de preferat sa se opereze pe universuri de discurs normalizate.

Pentru exemplificare se va considera ca variabilele e(k), Δe(k) si u(k) opereaza pe domeniile , , , respectiv si se vor presupune universele normalizate corespunzatoare:


(12.84)

(12.85)

(12.86)


Pentru a transforma domeniile de operare ale variabilelor de intrare masurate e(k), Δe(k) în universul de discurs normalizat se utilizeaza factori de scala [10, 11]:


(12.87)

(12.88)


Acesti coeficienti vor transforma valorile reale masurate ale intrarilor în CLF, e(k), Δe(k), în valorile e*(k), Δe*(k) din universul normalizat:


(12.89)

(12.90)


unde:


(12.91)

(12.92)


Algoritmul bazei de reguli se va aplica marimilor normalizate si va permite dupa defuzificare, obtinerea unei variabile de iesire din universul corespunzator normalizat:


(12.93)


Implementarea completa a CLF-ului impune generarea iesirii în universul real de activare, deci este necesara o "denormalizare" printr-un factor de scala corespunzator:


(12.94)

(12.95)


ceea ce determina revenirea variabilei de iesire în domeniul .

În general, universul normalizat poate fi identic cu un rang real de operare al unei variabile, dar, pentru cele mai multe aplicatii, acesta coincide cu intervalul închis [-1,1].

Factorii de scala joaca un rol extrem de important în proiectarea unui CLF. Este evident ca scalarea erorii si a variatiei acesteia înseamna efectiv o transformare a spatiului de stare ceea ce va determina o modificare automata a performantelor. În literatura de specialitate [8, 9, 10] sunt mentionate urmatoarele reguli ce se impun în selectia factorilor de scala:

Alegerea unor valori mari ale factorilor ke determina erori stationare mici, timp de crestere mic si suprareglaj ridicat, în timp ce valori mici ale lui ke determina o comportare opusa;

Valori mari ale lui kd determina o convergenta rapida;

Timpul de crestere este ridicat pentru valori mici ale factorului ku.

12.14 Metodele Takagi - Sugeno - Kang (TSK)


Modelele fuzzy discutate anterior se bazau pe reguli în care atât partea conditionala cât si cea decizionala cuprindea multimi fuzzy

Regula i: IF CONDIŢIA C1 AND CONDIŢIA C2 AND ... MULŢIMI FUZZY

THEN DECIZIA Di MULŢIMI FUZZY

Astfel de modele nu contin nici o forma explicita a functiei obiectiv si sunt cunoscute frecvent sub denumirea de modele Mandani.

O alta modalitate de tratare, atragatoare în cazul sistemelor mari si complexe, este oferita de modelul Takagi - Sugeno - Kang (TSK) în care iesirea, decizia sistemului este obtinuta dupa o lege non-fuzzy, ca o functionala pe variabilele de intrare.

Regula i: IF x1 este C1i AND x2 este C2i AND ... MULŢIMI FUZZY

THEN MULŢIMI NON-FUZZY

Marele avantaj al acestui model rezida în posibilitatea de tratare a sistemelor complexe prin decompozitia acestora în subsisteme mai simple, uneori chiar, subsisteme liniare. De asemenea, o alta posibilitate de abordare consta în descompunerea spatiului de stare al sistemului în subspatii disjuncte si identificarea modelelor dinamice pentru fiecare subspatiu. Iesirea finala este obtinuta printr-o compunere logica a iesirilor fiecarui subspatiu.

În cele mai dese cazuri, partitionarea spatiului de stare este astfel realizata încât iesirea sa poata fi generata sub forma unor modele liniare.

Regula 1: IF x1 este C11 AND ... AND xn este Cn1

THEN


Regula p: IF x1 este C1p AND ... AND xn este Cnp

THEN

În ceasta baza de reguli, Cij (j=1,p), (i=1,n) sunt multimi fuzzy pe spatiul de stare al sistemului X1, X2, ..., Xn iar x1, x2, ..., xn sunt valori crisp ale variabilelor de intrare (stare). Partea decizionala a regulilor poate fi considerata ca modele liniare ce definesc variabilele de iesire u1, u2, ..., up (marimi crisp) în functie de variabilele de intrare (stare), variabile crisp. Iesirea globala u a întregului model TSK se obtine printr-o medie ponderata a iesirilor crisp ui pentru fiecare subsistem liniar. Considerând gradul de activare al fiecarei conditii Cij:


i=1,...,n; j=1,...,p (12.96)


iar functia de activare la nivelul unei reguli:


(12.97)


iesirea generala va fi:


(12.98)


Daca iesirea fiecarei reguli este o functie neliniara , modul de calcul dat de relatia (12.98) se pastreaza, iesirea u fiind obtinuta tot ca o medie ponderata pe iesirile neliniare ale fiecarei reguli.

Modelul TSK poate fi utilizat pentru implementarea unui CLF de tipul PI, PD, sau PID. De exemplu, un CLF - PI poate fi modelat prin urmatoarea baza de reguli:

Regula 1: IF e(k) este C11 AND Δe(k) este C21

THEN


Regula p: IF e(k) este C1p AND Δe(k) este C2p

THEN

Iesirea CLF va fi:


(12.99)


unde se obtine conform relatiilor (12.96), (12.97).

Analogia acestui model cu un regulator conventional PI permite identificarea parametrilor regulatorului:


(12.100)


deci:


(12.101)

(12.102)



12.15 Controlul cinematic diferential prin CLF


Dupa cum este bine cunoscut în literatura de specialitate [6], controlul cinematic diferential utilizeaza modelul diferential al unui robot, model ce permite calculul diferential dX al coordonatelor operationale (variabile ce definesc pozitia în spatiul de lucru) în functie de variatia dq a coordonatelor generalizate (variabile asociate fiecarei articulatii mecanice). Analitic, aceasta dependenta este scrisa printr-o matrice Jacobian, în forma


(12.103)


Structura clasica a unui control cinematic diferential este prezentata în figura 12.38.

Asa dupa cum se cunoaste, punctul slab al unei astfel de conduceri îl constituie calculul inversei matricei Jacobian, calcul ce nu poate fi realizat off-line datorita dependentei coeficientilor matricei de parametrii qi. Cu toate ca în literatura s-au dezvoltat o serie de metode care permit calculul rapid al lui , ele cer, în general, sisteme hardware de mare viteza, cu un pret de cost întotdeauna prohibitiv, pentru o operare eficienta în timp real.


J-1(q)

f(q)

xdi



qi

xi




Figura 12.38    Controlul cinematic diferential conventional


În cele ce urmeaza, se va analiza o solutie de control cinematic diferential utilizând un CLF care va permite calculul inversei matricii Jacobian adoptând euristic o baza de reguli corespunzatoare.

Este evident ca atât structura conventionala cât si cea utilizând logica fuzzy trebuie sa urmareasca acelasi criteriu de calitate, minimizarea erorii sistemului de conducere.



CLF

f(q)

xdi



qi

xi




Figura 12.39    Control cinematic diferential cu CLF


Într-o scriere generala, eroarea poate fi definita [8], [9] astfel:


(12.104)


unde Xd este vectorul de pozitie dorit în spatiul cartezian. Legea de conducere care se va introduce trebuie sa determine variatii Δq care sa permita micsorarea erorii. O solutie simpla se bazeaza pe utilizarea unei metode de tip "gradient":


(12.105)


unde η este un factor de proportionalitate ales convenabil, . Din relatia (12.104) rezulta:


(12.106)


astfel încât variatiile Δq vor fi date de legea:


(12.107)


Se poate arata usor ca adoptarea unei legi de conducere de tipul (12.107) ofera solutii bune pentru un sistem de tipul celui prezentat în Figura 12.39, o astfel de conducere determinând convergenta la zero a erorii (12.104)


(12.108)


Pentru justificarea acestei solutii se va utiliza metoda a 2-a a lui Liapunov si se va defini o functionala Liapunov de forma:


(12.109)


Derivata acestei functionale, de-a lungul traiectoriei sistemului va fi:


(12.110)


Aproximând derivata prin:


(12.111)


unde T este timpul de esantionare, se obtine:


(12.112)


sau:


(12.113)


dar, cu exceptia cazurilor în care matricea este singulara, aceasta este pozitiv definita, deci:


(12.114)


ceea ce confirma convergenta la zero a erorii e din (12.104).

Pentru ilustrarea metodei vom analiza sistemul de conducere pentru un robot planar cu doua articulatii (figura 12.40)

Coordonatele operationale sunt:


(12.115)


iar matricea Jacobian va fi:


(12.116)


Pentru o eroare de forma:


(12.117)


se impune o lege de conducere de forma (12.107) care va fi implementata într-un CLF:


(12.118)

Y

X

x


(x,y)=X

q2

q1


(12.119)


Figura 12.40 Modelul unui robot planar cu 2 articulatii


sau într-o forma simplificata:


(12.120)

(12.121)


unde Jij sunt componentele matricei Jacobian iar ex, ey reprezinta erorile pe cele doua coordonate operationale.

Pentru transpunerea celor doua relatii (12.120), (12.121) într-o baza de reguli se vor adopta functiile de apartenenta din figura 12.41.

Numarul mare de variabile (de intrare) antecedent în definirea regulilor impune construirea bazei sub forma unei tabele.

De exemplu, prima regula se va formula astfel:

Regula 1: IF ex este N AND J11 este N AND ey este P AND J21 este P

THEN Δq1 este PM.






-E

-0.1E

0.1E

+E

N

P

Z


ex, ey

Iij

-I

-0.2I

0.2I

+I

N

P

Z


-0.6Q

0.2Q

0.2Q

+0.6Q

Nm

Pm

Z


-Q

Q


PM

NM



Figura 12.41 Functii de apartenenta



J21

J11

ey

ex

N

Z

P

N

Z

P

N

Z

P

N

Z

P


P

P

PM

Pm

ZP

Pm

Pm

Pm

ZP

Pm

PM

Z

Pm

ZN

Nm

ZN

ZP

ZP

Nm

ZN

Pm

N

ZN

Nm

NM

Nm

Nm

Nm

NM

Nm

ZN


Z

P

Pm

ZN

Nm

ZN

ZN

ZP

Nm

ZP

Pm

Z

Pm

ZP

Nm

Nm

ZN

ZP

Nm

ZP

Pm

N

ZN

ZN

Nm

ZN

ZN

ZP

Nm

ZP

Pm


N

P

ZP

Nm

NM

Nm

Nm

Nm

NM

Nm

ZN

Z

Pm

ZN

Nm

ZN

ZN

ZN

Pm

ZP

Pm

N

PM

Pm

ZP

Pm

Pm

Pm

ZP

Pm

PM


Tabelul 12.3 Baza de reguli


Toate celelalte reguli se vor formula într-o maniera similara, variabila de iesire Δq1 obtinându-se din functiile de apartenenta prezentate în figura 12.41.


12.16 Proiectarea unui CLF ca un sistem ca structura

variabila


Paragrafele precedente au pus în evidenta tehnicile generale de implementare a unui CLF si asimilarea sa cu regulatoare conventionale PD, PI, PID. Metodologia de proiectare si implentare a subliniat ideea ca un CLF este un controler robust care permite obtinerea unor performante de conducere satisfacatoare în conditiile unei cunoasteri, deseori insuficienta, a modelului matematic al sistemului. De fapt, ideea agreata în aceasta proiectare consta în pozitionarea spatiului starilor si adoptarea unor legi de conducere PI sau PD în fiecare spatiu, parametrii de conducere fiind modificati la comutarea dintr-un subspatiu în altul. Deci, în esenta, un CLF este un sistem cu structura variabila.

Pentru a ilustra aceasta metoda se va considera modelul dinamic definit de ecuatia:


(12.122)


prezentat în figura 12.42.



CSV

SISTEM






Figura 12.42    Conducerea cu un controler cu structura variabila


În ecuatia (12.122), functiile si nu sunt cunoscute exact dar este cunoscut semnul si domeniul în care sunt marginite.

Starea dorita a evolutiei este definita ca:


(12.123)


iar eroarea de urmarire va fi:


(12.124)


sau:


(12.125)


Daca se considera suprafata:


(12.126)


unde este o matrice pozitiv definita, de exemplu, o matrice diagonala:


(12.127)


Suprafata:


(12.128)


este un subspatiu de dimensiune (2n-1) si este numita suprafata de comutatie. Aceasta suprafata divide spatiul în doua regiuni pentru o parte a suprafetei si pentru partea opusa.

În cazul n=1, corespunde unei drepte cu panta :


(12.129)


Un controler cu structura variabila CSV (figura 12.43) va conduce sistemul spre suprafata de comutare într-un timp finit si constrânge sistemul sa ramâna pe suprafata de comutare.


Figura 12.43    Traiectoria într-un sistem cu structura variabila


Când sistemul opereaza pe suprafata (dreapta) de comutare se spune ca acesta evolueaza în mod "alunecator" (sliding).

Una din cele mai simple legi de control poate fi:


(12.130)


dar legea de control poate fi mai complexa în functie de complexitatea sistemului.

Se va analiza, în continuare, conducerea unui brat mecanic al unui sistem descris prin ecuatia:


(12.131)


si se vor considera , , valorile dorite ale pozitiei, vitezei si acceleratiei ceea ce va determina evaluarea unor erori corespunzatoare:


(12.132)


Din relatia (12.129) se obtine:


(12.133)


si, din (12.132), (12.133), expresia (12.131) devine:

(12.134)


unde:


(12.135)


Se va presupune ca legea de control va avea forma:


(12.136)


unde c este o constanta, , a doua componenta mH asigura o compensare a componentelor definite de eroarea e si stare dorita xd iar ultimul termen uF este generat de un CLF (figura 12.44).



Brat robot

CLF








Controler conventional

u1=-cs+H



Figura 12.44    Conducerea unui brat-robot cu CLF si controler conventional





Nm

Pm

Z





PM

NM

e


Figura 12.45 Functiile de apartenenta pentru e,


Nm

Pm

Z




NM

PM

uF




Figura 12.46 Functiile de apartenenta pentru iesirea uF


Pentru a determina conditiile de stabilitate ale sistemului, se va considera metoda a 2-a a lui Liapunov. Se va utiliza o functie Liapunov de forma:


(12.137)


deci:


(12.138)


si din (12.134) se obtine:


(12.137)


Conditia de stabilitate impune


(12.138)


deci:


(12.139)

(12.140)


Pentru implementarea CLF, se vor adopta functiile de apartenenta pentru si conform figurii 12.45.

Notatiile folosite NM, Nm,Z,Pm, PM desemneaza etichetele lingvistice NEGATIV MARE, NEGATIV MEDIU, ZERO, POZITIV MEDIU, POZITIV MARE, respectiv. Pentru functia de iesire, se vor adopta, cu aceleasi etichete, functii singleton (Figura 12.46).

Baza de reguli va implementa relatia (12.142) si este prezentata sintetic în Tabelul 12.4. Se remarca ca deasupra diagonalei regulile impun o schimabare a semnului semiplanului , deci functii negative pentru uF. pe partea opusa diagonalei sunt adoptate semne contrarii pentru iesire. De asemenea, functiile de apartenenta sunt crescatoare odata cu cresterea distantei fata de diagonala. Pe diagonala s-au alocat functiile de apartenenta Z.


e e

NM

Nm

Z

Pm

PM

PM

Z

Nm

Nm

NM

NM

Pm

Pm

Z

Nm

Nm

NM

Z

Pm

Pm

Z

Nm

Nm

Nm

PM

Pm

Pm

Z

Nm

NM

PM

PM

Pm

Pm

Z


Tabelul 12.4 Baza de reguli


Regulile tabelei vor avea urmatoarea interpretare:

Regula 1: IF este NM AND este PM

THEN este Z

Regula 2: IF este NM AND este Nm

THEN este Nm


Regula 16: IF este PM AND este NM

THEN este Z






Document Info


Accesari: 4496
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )