Documente Academic
Documente Profesional
Documente Cultură
CUPRINS
Introducere 2
Sisteme de conducere 5
Arhitecturi de conducere 9
Concluzii 12
Sisteme de actionare 42
Generalitati 47
Model general 51
Exemplu de deplasare rectilinie a robotului, utilizand pasirea cu oscilatii verticale ale corpului 73
Bibliografie 77
Introducere
Robotii prin structura si functiile lor reprezinta o clasa de sisteme ce sintetizeaza elemente de
varf dintr-o serie de domenii tehnico-stiintifice. Este evident, deci, ca robotul reprezinta un sistem
extrem de complex, descris prin modele matematice sofisticate definite prin sisteme de ecuatii
diferentiale neliniare, cu parametri variabili, deterministe sau stohastice, cuprinzand un numar mare
de variabile de intrare si iesire.
Structura de conducere a unui robot este o structura ierarhica. Acest principiu de conducere este
datorat complexitatii deosebite a sistemelor ce intra in componenta robotului si dificultatilor create
de sarcinile de operare impuse.
Organizarea ierarhica a sistemelor de control pentru roboti este e tip vertical, fiecare nivel
ierarhic acoperind nivelul inferior sub raportul problemelor de conducere abordate. Un nivel de
control comunica cu nivelul imediat inferior prin instructiuni de control si primeste de la acesta
informatii caracteristice care, impreuna cu deciziile furnizate de nivelul imediat superior, ii permit sa
stabileasca strategia viitoare de actiune.
nivel 3 / nivel tactic – se genereaza traiectoriile de miscare functie de gradele de libertate ale
robotului;
In functie de sistem principalele cerinte ale unui sistem de conducere pot fi:
In contrast cu tehnicile conventionale, metodele fuzzy de conducere ofera solutii mult mai
pragmatice, cu evidente facilitati de aplicare in domenii diverse, impunand cunostinte de nivel
acceptabil in domeniul sistemelor, logica de control si tehnologie.
Utilizarea logicii fuzzy in implementarea unor sisteme de conducere in conditiile absentei unei
informatii totale asupra sistemului a reprezentat, de asemenea, unul din factorii care au determinat
larga raspandire a controlului fuzzy in cele mai diverse domenii. Am asistat ( in ultimele doua
decenii) si asistam la o adevarata explozie a tehnicilor de implementare de tip fuzzy atat in
problemele clasice de control cat si in domeniul sistemelor expert, ale inteligentei artificiale sau in
complexele probleme de decizii in domeniul economic.
In ultimul timp logica fuzzy si retelele neuronale formeaza sisteme de conducere neuro-
fuzzy.
Sisteme de conducere
Sarcinile care stau in fata unui sistem de conducere determina o impartire a informatiilor de
lucru in doua clase, pe de o parte informatii ce asigura regimul de miscare dorit si pe de alta parte
informatii ce acopera functia tehnologica impusa robotului.
Programele de miscare cuprind elemente de baza ale algoritmilor de miscare ce calculeaza intre
anumite puncte, prin tehnici de interpolare, traiectoria robotului.
Cea mai simpla modalitate de realizare a programelor este bazata pe exploatarea secventiala
a blocurilor componente in cadrul unei structuri fixe, de lungime constanta (Fig. 2.2.).
Fiecare bloc de informatie contine ansamblul de date ce defineste o anumita comanda. Succesiunea
de comenzi, intr-o ordine bine precizata, determina o operatie tehnologica completa a robotului.
IMPLEMENTARI
TEHNOLOGICE
ALE SISTEMELOR
DE CONDUCERE
Complexitatea
sistemului de
conducere si gradul de
dificultate al operatiilor
executate determina
adoptarea unor
tehnologii specifice de
implementare a legilor
de conducere.
Solutiile oferite de majoritatea robotilor si manipulatoarelor industriale pot fi grupate in doua
clase: implementari in logica cablata si implementari in logica flexibila (programata). Prima clasa
este reprezentativa pentru acele tipuri de roboti secventiali si manipulatoare care au sisteme de
conducere cu cel mult doua nivele ierarhice (inferioare), nivelul executiv si tactic.
Legile de conducere sunt de tip secvential si prezinta un pronuntat caracter de rigiditate, traiectoriile
de miscare, impuse de operatiile executate, pastrand constante forma si marimile lor semnificative.
Tehnologic aceste sisteme sunt realizate in doua variante: fluidic si electronic. Solutia fluidica este
intalnita la primele tipuri de manipulatoare industriale, in momentul de fata preferandu-se aproape
in exclusivitate tehnologiile de tip electronic. (Fig. 2.4.).
Solutiile flexibile de conducere corespund cerintelor impuse de robotii industriali moderni. Ele
ofera avantaje deosebite atat sub raportul performantelor realizate cat si in ceea ce priveste
complexitatea problemelor tratate si simplitatea structurilor hardware utilizate. Practic, aceste
sisteme sunt implementate in patru variante: cu logica flexibila de tip microprogramat, cu automate
programabile, microprocesoare si microcalculatoare.
CONCLUZII
Intrucat aceste modele sunt, in general, destul de precise, este de asteptat ca traiectoria
realizata de robot prin exercitarea acestui control sa fie destul de corect executata.
Sinteza acestui control este realizata, de obicei, off-line definind mai intai traiectoria de
miscare in conformitate cu cerintele tehnologice de functionare ale robotului si calculand apoi
marimile de control necesare pentru actionarea acestuia. Aceasta inseamna ca nivelul de control
tactic se reduce la o simpla memorare a traiectoriilor si a secventelor de control. adecvate.
Aceasta solutie este, in general, unanim acceptata in aplicatiile industriale ale robotilor si
manipulatoarelor, calculul off-line al controlului fiind realizat intr-un calculator suficient de puternic,
ce acopera un numar mare de sisteme de conducere, in timp ce controlul efectiv al robotilor la nivel
executiv cade in sarcina unor automate locale, microprocesoare sau microcalculatoare specializate.
Complexitatea modelelor matematice ale intregii structuri mecanice face, de cele mai multe
ori, improprie implementarea unor algoritmi de conducere. In acest caz, este preferata decuplarea
modelului in subsisteme, in mod normal fiecarei articulatii (sau a unei grupe de articulatii) asociindu-
i-se un subsistem. Legea de conducere este determinata din conditiile de stabilizare locala a fiecarui
subsistem ceea ce nu conduce intotdeauna la o comportare satisfacatoare pe ansamblul problemei
de conducere. In astfel de situatii se introduc suplimentar bucle de reactie globala care sa
imbunatateasca performantele dinamice ale sistemului. Noua configuratie de conducere obtinuta
poate deveni atat de complexa incat decuplarea realizata in prima faza isi pierde sensul.
Cu toate aceste neajunsuri, tehnica decuplarii poate fi utilizata cu succes daca se tine cont
de faptul ca, in conditiile definirii fiecarui grad de libertate ca un subsistem propriu, cuplajul intre
subsisteme este determinat de fortele si momentele in articulatie. Este posibil sa se elimine
interactiunea dintre subsisteme prin introducerea unor bucle de compensare adecvate. Aceasta
metoda prezinta inconvenientul utilizarii unor traductoare forta - moment, in general traductoare
pretentioase, costisitoare. Cu toate acestea, procedura este atractiva datorita, in special, utilizarii
unor algoritmi de conducere mult mai simpli decat in varianta clasica.
Indiferent de modul de tratare, exemplele de mai sus permit stabilirea unui model matematic
general ce caracterizeaza dinamica unui brat mecanic.
(*)
unde q este vectorul coordonatelor generalizate (nx1) pentru cele n articulatii ale sistemului
mecanic, J(q) este matricea (nxn) de inertie, V este o matrice de frecare vascoasa (nxn), F( ,
,q); i,j=1,…,n este vectorul fortelor Coriolis si centrifugale (nx1), G(q) este vectorul (nx1) asociat
termenilor dependenti de gravitatie iar M este un vector (nx1) al fortelor de intrare generalizate.
Sistemul nervos uman sta in atentia cercetatorilor, principalele lor obiective fiind intelegerea
acestuia si realizarea unor modele artificiale ale acestuia.
La baza sistemului nervos sta o celula denumita neuron, care are proprietatea de a primi, prelucra si
transmite semnale denumite excitatii. Elementele principale ale neuronului sunt: corpul neuronului si
prelungirile neuronului (dendritele si axonul) (Fig.2.1.).
Dendritele sunt in numar variabil, terminatiile lor fiind in contact fie cu un axon, fie cu celule
epitale. Prelungirea axonica este unica si prezinta la extremitatea libera o ramificatie bogata. Din
punct de vedere functional neuronul este element excitoconductor avand atat proprietatea de a se
excita, cat si aceea de a conduce excitatia. Excitabilitatea si conductibilitatea nu sunt specifice
neuronului, ele sunt atribuite materiei vii. Ca o proprietate specifica neuronului, trebuie considerata
interiorizarea sau formarea de engrame. Aceasta consta in aceea ca, ca o modificare produsa in
neuron sub influenta unui excitant este conservata si dupa incetarea excitatiei, iar mai tarziu ea
poate fi reprodusa.
Prin excitarea neuronului ia nastere influxul nervos. Neuronul transmite acest influx fie altor
neuroni, fie unor organe efectoare (muschi, glande), punandu-le in stare de functiune. Circulatia
influxului nervos se face intr-un sens bine determinat si anume:
neuroni senzitivi – primesc excitatiile receptionate de la celulele senzoriale din mediul extern sau
din mediul intern;
In sistemul motor neuronii sunt legati in lanturi, fie intre prelungiri si corpul neuronului
(axon-dendrita), fie intre prelungiri si corpul neuronului. Conexiunea aceasta se numeste sinapsa.
Trebuie remarcat ca mai multi neuroni sinaptici converg pe un neuron pestsinaptic, iar acesta
transmite informatiile primite la un numar mare de neuroni. Sinapsele functioneaza ca adevarate
macazuri, putand selecta, amplifica sau bloca influxul nervos.
Scoarta cerebrala sau cortexul cerebral este locul celor mai complexe functii de relatie cu
mediul inconjurator si de integrare a partilor corpului intr-un tot unitar. Scoarta cerebrala contine un
numar de 14 – 18 miliarde de neuroni. In cortex se intalnesc doua feluri de legaturi: unele care
exista din nastere si au caracter definitiv si altele care se formeaza in timpul vietii si au caracter
temporar.
cu propagare inapoi;
cu contrapropagare.
Retele neuronale Hopfield – presupun o topologie cu un nivel de intrare si unul de iesire, iar
iesirile sunt readuse la nodurile de intrare. Daca iesirile sunt binare, atunci toate iesirile posibile
reprezinta varfurile unui hiper-cub. Iesirea activa va trece de la un varf la altul pana cand ajunge
intr-o stare stabila.
Retele de tip memorii asociative bidirectionale – sunt de fapt heteroasociative, adica daca
avem un vector la intrare se obtine la iesire un alt vector, asocierea fiind memorata in sinapse la
antrenarea retelei. Reteaua are sens bidirectional adica la aplicarea la intrare a vectorului obtinut la
iesire duce la obtinerea vectorului pereche. Daca vectorul de intrare este perturbat intre anumite
limite, iesirea ramane corecta.
Capacitatea de invatare
retelele neuronale artificiale nu necesita programe puternice ci sunt mai degraba rezultatul unor
antrenamente asupra unui set de date;
Capacitatea de sinteza - retelele neuronale artificiale pot lua decizii sau trage concluzii cand
sunt confruntate cu informatii complexe sau cu zgomote irelevante sau partiale. De exemplu o retea
poate fi antrenata cu o secventa de versiuni distorsionate ale unei litere. Dupa un proces de
antrenare adecvat, aplicarea unei versiuni distorsionate a acelei litere (alta decat cele folosite la
antrenare) va avea ca rezultat la iesirea retelei litera corecta. Deci se poate spune ca reteaua a
invatat sa recunoasca ceva ce nu a vazut mai inainte.
O retea artificiala consta intr-o reuniune de unitati de procesare simple care comunica prin
trimiterea semnalelor intre ele printr-un mare numar de conexiuni ponderate.
Se pot distinge o serie de aspecte majore ale unui model paralel distribuit:
o multime de unitati de procesare – fiecare unitate receptioneaza intrarea de la vecini sau din
surse externe si o foloseste pentru a calcula un semnal de iesire care se propaga la alte
unitati;
conexiunea intre unitati – in general fiecare conexiune este definita printr-o pondere w ij care
determina efectul pe care il are semnalul unitatii j asupra unitatii i;
o regula de propagare, cu care se determina intrarea efectiva ii din intrarile sale externe;
o functie de activare Fi care determina noul nivel de activare bazata pe intrarea efectiva ii(t) si
starea curenta ai(t);
un mediu in interiorul caruia sistemul trebuie sa lucreze, furnizand semnalele de intrare si – daca
este necesar – semnalele de eroare.
Arhitectura retelei
retele neuronale recurente (recurrent networks) care contin conexiuni inverse. Spre
deosebire de retelele fara reactie, aici sunt importante proprietatile dinamice ale retelei.
In unele cazuri, valoarea de activare a unitatii trece printr-un proces de relaxare care
face ca neuronul sa evolueze intr-o stare stabila in care aceasta activare nu se mai
modifica. In alte aplicatii, modificarile valorilor de activare ale neuronului sunt
importante, in care comportamentul dinamic constituie chiar iesirea retelei.
O retea neuronala trebuie sa fie configurata astfel incat aplicarea unui set de intrari sa
produca un set de iesiri. O cale este setarea explicita a ponderilor, folosind o cunoastere anterioara
a lor. Alta cale este sa “instruiasca” reteaua neuronala din alimentarea ei cu modele (pattern) de
invatare si permitandu-i sa isi modifice ponderile in conformitate cu niste reguli de invatare.
Paradigmele invatarii
Cele doua paradigme prezentate mai sus au drept rezultat ajustarea ponderilor conexiunilor dintre
unitati, in conformitate cu niste reguli de ajustare. Ideea de baza este ca daca doua unitati i si j sunt
active simultan, trebuie intarita interconexiunea dintre ele.
Conducerea bazata pe teoria multimilor vagi (logica vaga), sau conducerea fuzzy, este mult
mai pragmatica, putand prelua si utiliza o caracterizare “lingvistica” a calitatii desfasurarii procesului
si adapta aceasta caracterizare functie de cerintele concrete de desfasurare a acestuia.
Logica fuzzy constituie un mod de abordare a unor modele de procese sau sisteme incomplet
cunoscute sau definite si opereaza cu inferente logice (judecati) similare cu rationamentul uman.
Implementarea ei conduce la realizarea unor controlere ce contin elemente de inteligenta artificiala.
Comanda in logica fuzzy este avantajoasa (prezinta interes) pentru urmatoarele motive:
poate trata intr-un cadru comun cunostinte furnizate numeric (de traductoare, instrumente
de masura) si cunostinte exprimate simbolic (de catre un observator sau operator
uman);
este usor de realizat si de adaptat conditiilor functionale ale procesului, deci flexibila.
Principalele particularitati ale conducerii fuzzy a proceselor pot fi sintetizate prin urmatoarele:
conducerea fuzzy poate fi asigurata dupa mai multe marimi ale procesului fiind incadrabila din
acest punct de vedere in categoria structurilor de conducere cu conexiuni multiple; prin
aceasta, regulatorul fuzzy devine multivariabil la intrare (eventual si la iesire) si se apropie ca
si continut de regulatoarele dupa stare;
principial, regulatoarele fuzzy sunt regulatoare fara dinamica, dar domeniile de utilizare si
performantele lor, respectiv ale sistemelor de reglare automata cu regulatoare fuzzy pot fi
largite prin extinderea regulatoarele fuzzy propriu-zise cu module “cu dinamica”; ca efect se
obtin asa numitele regulatoarele fuzzy cu dinamica; cum dinamica introdusa creeaza
componente de tip derivativ si/sau integrator, aceste regulatoare vor fi denumite
regulatoarele fuzzy cvasitipizate;
Indiferent de numarul marimilor de intrare in regulatorul fuzzy, acesta trebuie sa aiba cel
putin una, notata in schema cu e1, care sa corespunda erorii de reglare:
Informatia fuzzificata este prelucrata pe baza unui set de reguli (baza de reguli) care in vederea
conducerii procesului in cauza trebuie sa fie “bine precizate”. Principiile (regulile de evaluare)
a setului de reguli poarta denumirea de schema de inferenta, iar rezultatul il
constituie forma vaga a comenzii u (comanda vaga
Comanda vaga trebuie convertita intr-o exprimare “ferma”, cu valoare numerica bine precizata
si, ulterior, si natura fizica bine precizata, direct utilizabila la nivelul elementului de executie.
Operatia poarta numele de defuzificare.
Blocul de inferente reprezinta partea principala a unui CLF. Acest bloc genereaza legea de
control sub forma unei familii de reguli logice de tipul IFTHEN ce descriu relatiile intre intrarea e
(eroare) si iesirea u a controlerului. Adaptand un model direct, aceste reguli implementeaza de fapt
o lege de forma generala:
Din considerente practice, implementarea unei astfel de legi pentru este extrem de
complexa si dificil de aplicat. In mod curent, legea de control de mai sus capata forma simplificata:
sau:
Existenta unei legi de conducere de tipul (1.6.9)-(1.6.11) nu inseamna 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 IFTHEN sub forma:
un astfel de CLF este numit CLF-Mamdani dupa numele cercetatorilor Mamdani si Assilian care l-au
propus prima data in anul 1975 (Fig. 2.4.)
Interfatarea pe intrare a unui astfel de controler este realizata prin blocul de fuzificare.
Acesta trebuie sa asigure:
Conversia marimilor de intrare (eroare) e intr-o forma digitala compatibila cu procesarea
ulterioara in 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.
In Figura Fig.2.5.c sunt prezentate functiile de apartenenta ale multimilor fuzzy ce reprezinta
acceleratia miscarii ( ), in conditiile in 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 .
Functiile alese pot fi simetrice sau nesimetrice (in 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:
,
,
O analiza elementara indica ca prima relatie 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 in calculele numerice ale CLF. Particularitatile specificate mai sus sunt valabile pentru
functiile de apartenenta asociate numai variabilelor de intrare intr-un CLF. Variabilelor de iesire,
marimile crisp, li se asociaza de asemenea functii de apartenenta, dar acestora nu li se mai impun
restrictiv aceste conditii.
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 in 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 indeplinirii conditiilor regulii.
Pentru a fixa ideile vom exemplifica baza de reguli pentru un sistem de conducere al unui
brat in miscare de translatie (Fig.2.6.).
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 atat in ceea ce priveste
variabilele de intrare cat si pe cea de iesire, iar functiile de apartenenta au forma din Fig. 2.7.
In sinteza, baza de reguli pentru exemplul discutat, contine noua reguli in forma urmatoare:
THEN u este Z
Aceasta regula sugereaza ca in conditiile in care eroarea este negativa si variatia ei este
pozitiva, comanda generata u poate fi zero, evolutia sistemului ducand catre domeniul e=0. Celelalte
reguli au interpretari similare.
THEN u este N
THEN u este N
THEN u este P
THEN u este Z
THEN u este N
THEN u este P
THEN u este P
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 in conditiile in care dimensiunea bazei este rezonabila, numarul de variabile de
intrare in CLF nedepasind valoare trei. In 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 in Tabelul 2.1.
N Z P
e
P Z N N
Z P Z N
N P P Z
Matrice cuprinde, pe linii si coloane etichetele lingvistice ale variabilelor e si Δe, respectiv.
Fiecare pereche linie, coloana defineste conditiile unei anumite reguli iar in 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 in CLF. De exemplu, daca conditiile in CLF sunt date de e, Δe si
Δ2e (acceleratia sistemului), atunci baza de reguli poate fi sintetizata prin matricea de inferente din
Tabelul 2.2.
N Z P
N Z P N Z P N Z P
e
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
Procedura poate fi extinsa pentru structuri mai complexe, cu un numar mai mare de variabile
de intrare, dar trebuie avut in 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 in implementarea practica a algoritmului de control.
Este evident ca procesarea unor reguli intr-o baza (mecanismul de inferenta) impune
determinarea, in primul rand, 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.
THEN DECIZIA Dj
Considerand , multimea fuzzy asociata conditiei C1, gradul de activare al conditiei pentru
o valoare x=x* in universul de discurs este exprimat prin
(1.9.1)
Pentru o regula completa definita prin conditiile C1, C2, , Cp carora li se asociaza multimile fuzzy
, i=1, 2, , p
Sinteza deciziei, la nivelul unei reguli, este obtinuta in general prin algoritmul Mandami care
formal este scris sub forma:
Pentru exemplificarea ultimului operator, in Figura 1.30 este prezentata functia max aplicata
pe cele doua reguli j si m ilustrate in Fig.2.11.
De asemenea, se utilizeaza si forma „prod - suma” in care operatorul AND este tratata dupa
relatia de mai sus, iar OR prin:
Defuzificarea
Defuzificarea prin „centru de greutate” este cea mai raspandita procedura de reconversie a
deciziei fuzzy de la iesirea CLF intr-o variabila crisp. Aceasta metoda se bazeaza pe evaluarea
functiei de apartenenta a deciziei fuzzy dupa aceleasi reguli ca cele utilizate in calculul centrului de
greutate din mecanica clasica. In acest mod se asociaza functiei de apartenenta a decizie variabilei
de iesire o valoare crisp corespunzatoare.
unde:
O interpretare si mai facila, desi evident destul de aproximativa, se poate obtine daca functia
de apartenenta contine un maxim sau domenii maximale (2.15.).
Prin analogie, o lege de conducere obtinuta intr-un CLF, de aceasta forma se va numi CLF –
PD.
Daca regulile unui CLF nu genereaza valoarea u(k), ci variatia marimii de iesire Δu(k):
atunci aceasta lege se poate asocia cu cea oferita de un regulator conventional de tip PI
descris prin relatia:
In acest sens, un CLF a carei baza de reguli defineste un algoritm de forma (1.12.4) 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:
O forma modificata a legii (1.12.6) care poate fi acceptata in definirea unui CLF – PID poate
fi de forma:
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) in structura regulilor,
determina o implementare extrem de dificila si in multe cazuri cu totul nepractica. Din acest motiv,
introducerea a mai mult de doua variabile de intrare in structura regulilor este acceptata numai in
conditii de performante cu totul speciale.
Pentru a transforma domeniile de operare ale variabilelor de intrare masurate e(k), Δe(k) in
universul de discurs normalizat se utilizeaza factori de scala:
Acesti coeficienti vor transforma valorile reale masurate ale intrarilor in CLF, e(k), Δe(k), in
valorile e*(k), Δe*(k) din universul normalizat:
unde:
In 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 inchis [-1,1].
Factorii de scala joaca un rol extrem de important in proiectarea unui CLF. Este evident ca
scalarea erorii si a variatiei acesteia inseamna efectiv o transformare a spatiului de stare ceea ce va
determina o modificare automata a performantelor. In literatura de specialitate sunt mentionate
urmatoarele reguli ce se impun in selectia factorilor de scala:
Alegerea unor valori mari ale factorilor ke determina erori stationare mici, timp de crestere
mic si suprareglaj ridicat, in timp ce valori mici ale lui ke determina o comportare opusa;
Modelele fuzzy discutate anterior se bazau pe reguli in care atat partea conditionala cat si
cea decizionala cuprindea multimi 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 in cazul sistemelor mari si complexe, este oferita de
modelul Takagi – Sugeno – Kang (TSK) in care iesirea, decizia sistemului este obtinuta dupa o lege
non-fuzzy, ca o functionala pe variabilele de intrare.
Marele avantaj al acestui model rezida in posibilitatea de tratare a sistemelor complexe prin
decompozitia acestora in subsisteme mai simple, uneori chiar, subsisteme liniare. De asemenea, o
alta posibilitate de abordare consta in descompunerea spatiului de stare al sistemului in subspatii
disjuncte si identificarea modelelor dinamice pentru fiecare subspatiu. Iesirea finala este obtinuta
printr-o compunere logica a iesirilor fiecarui subspatiu.
In cele mai dese cazuri, partitionarea spatiului de stare este astfel realizata incat iesirea sa
poata fi generata sub forma unor modele liniare.
THEN
...
THEN
In aceasta 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 u 1, u2, ,
up (marimi crisp) in functie de variabilele de intrare (stare), variabile crisp. Iesirea globala u a
intregului model TSK se obtine printr-o medie ponderata a iesirilor crisp ui pentru fiecare subsistem
liniar. Considerand gradul de activare al fiecarei conditii Cij:
i=1,,n
j=1,,p
iar functia de activare la nivelul unei reguli:
Modelul TSK poate fi utilizat pentru implementarea unui CLF de tipul PI, PD, sau PID.
THEN
THEN
deci:
Concluzii
Printre avantajele reglajului bazat pe teoria multimilor vagi pot fi invocate cateva, deosebit
de atractive din punct de vedere practic:
cel putin intr-o prima faza (si chiar aparent), dezvoltarea Sistemului de reglare nu necesita un
aparat matematic sofisticat;
Toate acestea ofera o atractie pragmatica spre domeniu, fara insa ca solutia de conducere
sa garanteze si performante superioare (in raport cu un reglaj conventional, de exemplu).
Stabilitatea si robustetea asigurate prin baza de reguli nu sunt garantate analitic, fiind bazate doar
pe modul de intocmire a regulilor, iar verificarea teoretica si practica a acestora se dovedeste
anevoioasa.
Sisteme de actionare
Sistemul de actionare al unui robot cuprinde totalitatea surselor energetice ale robotului
precum si elementele de control direct ale acestora.
Sistemele uzuale folosesc trei surse primare de energie: electrica, pneumatica si hidraulica.
Cel mai folosit sistem de actionare electrica este cel cu motoare de curent continuu. Acesta
prezinta avantajul important ca momentul creat este practic independent de pozitia si viteza
motorului, depinzand numai de campul infasurarilor si curentul din armaturi.
Adoptand anumite configuratii de constructie se poate reduce greutatea acestora, prin utilizarea
motoarelor cu magnet permanent sau reducerea greutatii rotorului prin folosirea motoarelor disc.
Dezavantajul principal al acestui tip de actionari este greutatea componentelor. Raportul putere-
greutate este mai mic decat la actionarile hidraulice. Datorita circuitului magnetic, care necesita o
geometrie interna corespunzatoare pentru asigurarea unor performante ridicate, greutatea nu poate
fi redusa in mod semnificativ.
Utilizarea unui asemenea tip de motor in actionarea robotilor necesita urmatoarele sisteme:
Aceste ecuatii pot fi aplicate indica reglajul preferential al turatiei prin reglarea tensiunii de
alimentare u. Cele mai multe sisteme folosesc controlul in tensiune al turatiei, si numai o mica parte
controlul in curent. Controlul in tensiune al turatiei in actionarea robotilor poate fi realizata prin doua
metode: redresoare cu tensiune continua, respectiv variatoare de tensiune continua.
Una dintre cele mai utilizate structuri o reprezinta redresorul monofazat in punte, fiind folosit la
tensiuni si puteri mici. Controlul redresarii este obtinut printr-o punte de tiristoare, in circuitul
exterior al redresorului fiind montat motorul de c.c. . Controlul valorii curentului redresat se obtine
prin controlul unghiului de aprindere al tiristoarelor.
O structura mai eficienta, sub raportul puterii si randamentului, este redresorul trifazat in punte.
Motoarele pas cu pas sunt sisteme sincrone care realizeaza o corelatie directa intre marimea
de intrare si pozitia realizata. Acest tip de motoare asigura conversia directa a semnalului de intrare,
dat sub forma numerica, intr-o miscare de pozitionare unghiulara prin cumulari incrementale, ceea
ce determina o utilizare larga a acestora in toate sistemele de pozitionare in bucla deschisa.
Conversia intrinseca a comenzii in pozitie asigura scheme de control simple, eficiente sub aspect
tehnic si economic.
Deci nu motor pas cu pas poate fi considerat un dispozitiv electromecanic cu miscare discreta
care transforma impulsurile electrice de tensiune in deplasari discrete, pentru fiecare impuls
realizand o deplasare cu un unghi bine precizat, numit unghi de pas. Cu alte cuvinte rotorul nu se
poate situa, in raport cu axa magnetica rezultanta a statorului, decat in anumite pozitii stabile
determinate fie de principiul reactantei minime, fie de componenta tangentiala a fortei de atractie a
polilor de nume contrar. Din acest punct de vedere putem face urmatoarea clasificare:
motoare pas cu pas cu reluctanta variabila – motoare cu rotor pasiv, avand crestaturi uniform
repartizate pe suprafata motorului. Prin alimentarea unei faze statorice, rotorul se va roti
astfel incat circuitul magnetic sa prezinte reluctanta magnetica minima. Comutand
alimentarea pe faza urmatoare se obtine o deplasare a rotorului pentru o noua reluctanta
minima (aliniere a dintilor statorici si rotorici), se creeaza deci un cuplu;
Principalele dezavantaje ale motorului pas cu pas sunt: acceleratii si deceleratii discontinue,
variatia cuplului cu pozitia rotorului, puteri mici.
Dupa solutiile constructive utilizate aceste motoare se impart in: motoare cu structura
monostatorica (o singura unitate stator-rotor) si motoare cu structura polistatorica.
Durata alimentarii: comanda potentiala sau in impulsuri – comanda potentiala se refera la durata
alimentarii unei faze in raport cu durata intre doua tacturi de comanda, 1/f, unde f este
frecventa de comanda a servomotorului. Daca durata de alimentare a fazei este cel putin
egala cu 1/f atunci este vorba de comanda potentiala, deci in acest caz durata aplicarii
tensiunii pe faza variaza invers proportional cu frecventa de comanda. Daca durata
alimentarii este constanta si intotdeauna mai mica decat 1/f atunci este vorba de o comanda
in impulsuri;
Sensul tensiunii pe durata unei perioade: comanda unipolara sau bipolara – se refera la sensul
tensiunii pe o faza pe durata unei perioade complete. In cazul comenzii unipolare, fiecare
infasurare este strabatuta de curent intr-un singur sens, pe cand la comanda bipolara se
inverseaza polaritatea tensiunii de alimentare la capetele infasurarii, si deci si curentul prin
faza;
Simetria impulsurilor pe durata unei perioade: comanda simetrica sau nesimetrica – comanda
este simetrica daca pentru orice tact de comanda avem alimentate acelasi numar de faze.
Pentru o comanda nesimetrica cu injumatatirea unghiului de pas avem o dublare a
numarului de pasi pe rotatie, pe cand o comanda nesimetrica cu salt se micsoreaza numarul
de pasi crescand unghiul de pas.
Se pot folosi si alte tipuri de motoare electrice (de exemplu motor asincron bifazat), dar desi
pentru motoarele asincrone raportul consum performanta este mai bun partea de comanda necesita
scheme complexe, nefiind utilizate pe scara larga. Totusi in ultimul timp datorita cercetarilor in
domeniu acestea se impun tot mai mult.
Dispozitivul cu cea mai larga utilizare in aceste sisteme este reprezentat de pistonul hidraulic
liniar (Fig.3.2.). O structura similara este utilizata si pentru actionarea intr-o miscare de rotatie.
Aceste dispozitive se utilizeaza pe scara larga in actionarea robotilor datorita unor avantaje
specifice: realizarea unui raport putere/greutate mare, posibilitatea actionarii directe, interconetarea
lor directa in articulatiile de rotatie ale robotului, etc. .
Un rol esential in comanda acestor actionari il joaca sistemele de control al cailor de fluid,
servovalvele. Aceste dispozitive permit blocarea unor cai de fluid, schimbarea sensului pe o anumita
cale sau comutarea traseelor de cale dupa o logica impusa (Fig.3.2.).
Raspandirea acestui tip de actionari este data de urmatoarele avantaje:
puterea realizata in aceste sisteme este mult mai mare decat a oricarui sistem, luand ca referinta
greutatea echipamentului utilizat;
actionarile hidraulice sunt mult mai robuste decat cele electrice, amplificarea realizata este mai
mare, precizia si raspunsul la frecventa sunt mai bune;
incompresibilitate fluidului, factor esential intr-o actionare hidraulica, devine element deficitar in
conditiile in acre se impune implementarea unei legi de reglare. Realizarea unor elemente de
reglare fluidice de tip P, PI, PID se obtine extrem de dificil cu dispozitive electro-mecanice
complexe. Mai mult, daca o servovalva blocheaza o cale de fluid, aceasta devine practic
neoperanta, controlul fluidic incetand cu totul.
Functiile de operare ale sistemelor pneumatice sunt similare cu cele hidraulice, particularitatile
tehnologice si constructive specificelor fiind datorate schimbarii fluidului, cu specificul si proprietatile
sale.
Deoarece fluidul folosit (aerul) este compresibil, sistemele pneumatice sunt folosite in special la
elementele mecanice care lucreaza pe principiul totul sau nimic fara a fi necesar un reglaj
intermediar.
Controlul pozitiei unui element mecanic prin sisteme pneumatice este rar utilizat datorita
performantelor sale slabe in comparatie cu cele hidraulice sau electrice, performante datorate
compresibilitatii fluidului care introduce un timp de propagare, de intarziere in dinamica
dispozitivului. De asemenea, o deficienta de baza, o constituie faptul ca aceste sisteme utilizeaza
controlul dupa debit, parametru ce nu este intotdeauna indicat pentru controlul pneumatic al unei
miscari. Din acest motiv, se recomanda utilizarea unui control al presiunii ceea ce creste
performantele, dar este mult mai complex si creste costurile.
GENERALITATI
Fig. 3.3. Set de
structuri
A – structuri adaptive
B – structuri senzitive
C – structuri controlate
D – structuri active
E – structuri inteligente
Raspunsul materialelor active la schimbarile de mediu (stimuli) poate consta in modificarea lungimii
materialului, modificarea vascozitatii, a conductivitatii electrice s.a.
Forta exterioara aplicata poate fi clasificata in trei categorii:
In functie de tipul de raspuns pe care il genereaza, materialele active pot fi impartite in doua
categorii:
Semnalul de intrare este transformat totdeauna in efort, care poate fi folosit pentru a introduce
miscare (dinamica) intr-un sistem. Aceste materiale constituie grupul cel mai des folosit pentru a
construi o structura inteligenta (materiale active integrate intr-o structura mecanica, de exemplu o
constructie sau elicea unui elicopter), cu scopul de a modifica dimensiunile geometrice ale
structurilor.
Dispozitivele pe baza de materiale care raspund prin modificarea lungimii sint denumite
adesea actuatori (sau actuatori in stare solida).
Materialele active pot fi folosite si ca senzori, atunci cind efortul aplicat asupra materialului este
transformata intr-un semnal care permite estimarea nivelurilor de tensiune in sistem. Figura 3
ilustreaza principiile unui material actuator/senzor. in functie de directia stimul – raspuns, un
dispozitiv cu material activ poate fi folosit atat ca actuator, cit si ca senzor.
Figura 2. Dispozitive cu materiale active utilizate ca actuator (a) si senzor (b)
A doua categorie de materiale active contine acele materiale care raspund la stimuli prin
modificarea unei proprietati cheie, de exemplu conductivitatea electrica sau viscozitatea. Aceste
materiale sunt mai putin integrate in structuri mecanice, fiind folosite mai degraba pentru
reprezentarea modulelor complexe, de exemplu cuple, dispozitive de fixare, valve, intrerupatoare.
Aceste materiale sunt folosite in mod frecvent ca senzori.
Desi materialele din aceasta categorie nu genereaza o tensiune la aplicarea unui stimul extern,
ele sunt uneori denumite sisteme actuatoare. Exemple in acest sens sunt fluidele electro si
magnetorheologice, care raspund prin cresterea vascozitatii la aplicarea unui camp electric sau
magnetic extern.
Anumite caracteristici specifice ale materialelor fac ca acestea sa poata fi folosite in aplicatii ca
materiale inteligente. Aceste proprietati sunt:
efectul piezoelectric;
efectul magnetostrictiv;
efectul electroplastic;
proprietati electroreologice;
proprietati pirosenzitive.
modificarea proprietatilor dielectrice a unui fluid electrorheologic, aflat in camp electric, sun
actiunea unor forte exterioare. Acest aspect conduce la posibila utilizarea a acestor fluide ca
senzori;
modificarea vascozitatii sub actiunea unui camp electric. Aceasta proprietate, combinata cu un
sistem hidraulic deformabil longitudinal, dar nu transversal, avand ca fluid de lucru fluid
electrorheologic, poate fi utilizata la constructia unui actuator flexibil, foarte fiabil.
sunt usor miniaturizabile datorita structurilor lor simple putand fi folosite la realizarea unor
microroboti specializati utilizati in spatii cu mai multe restrictii;
au multe grade de libertate (pitch, yaw, stretch) disponibile pentru structurile robotice;
Model general
Tehnicile de proiectare pentru roboti pasitori implica de obicei existenta unor mecanisme
complicate si un numar foarte mare de cabluri intre roboti si controlere. Realizarea practica a unor
astfel de roboti necesita multe dispozitive precum: motoare electrice, angrenaje reductoare, senzori,
rulmenti, lagare, cuzineti si elemente de brat mecanice.
Pot fi usor proiectati roboti pasitori cu mecanisme simple si miniaturizate folosind microactuatori
flexibili ca roboti-picioare.
starea de repaus - cand nici o camera nu este presurizata si atunci piciorul are forma de repaus,
adica un cilindru de lungime L;
starea de alungire – cand toate trei camerele sunt presurizate cu aceeasi presiune si atunci
piciorul are forma unui cilindru cu lungimea , alungirea acestuia aparand ca efect al
presiunii din camere;
starea de curbare si/sau alungire – apare in situatia in care presiunile din camere au valoare
diferita si atunci cel putin una dintre camere se alungeste, acest efect ducand la curbarea
piciorului in directie opusa presiunii celei mai mari.
Algoritmi de comanda pentru modelul proiectat
Se compun oricare doua din fortele de incovoiere (de exemplu ca in figura F1 cu F2) si
rezultanta acestora (R12) se compune cu cea de-a treia forta. Rezultanta (R12-3) da directia de
incovoiere-indoire a piciorului (Fig. 5.2.).
Considerand ca sistemul atasat piciorului robotului are planul XOY in planul piciorului (practic
este identic ca orientare cu sistemul XOY al corpului robotului) si avand axa OY de-a lungul liniei de
separare dintre camerele 1 si 2 putem calcula unghiul pe care in face rezultanta cu axa OX, respectiv
cu axa OY.
Calculam marimea rezultantei si unghiul acesteia cu axa OX.
Intr-un paralelogram stim ca suma a doua unghiuri alaturate este 180o. Cum in
paralelogramul OABC stim ca unghiul AOC este de 120o rezulta ca unghiul OAB este de 60o. Folosind
teorema lui Pitagora generalizata putem determina rezultanta R12 (Fig. 5.3.).
Deci
Dar OA = F2 si OC F1, deci
Aplicam din nou teorema lui Pitagora generalizata in triunghiul OAB pentru determinarea
unghiului BOA.
deci
Deoarece AOD = 120o si DOA’ = 900 atunci AOA’ = 30o, deci unghiul rezultantei R12 fata de
axa OX este
Din figura se observa ca unghiul tinde catre valoarea de 30o pentru F1 aproximativ egal
cu zero, respectiv tinde catre valoarea 150o pentru F2 aproximativ egal cu 0 (unghi masurat fata de
axa OX in sens trigonometric)
Analog se determina rezultanta R12-3. In paralelogramul DOBE unghiul DOB este egal cu
270o - . Deci unghiul OBE este egal cu 180o - DOB.
, deci
cum obtinem
Aplicand teorema generalizata a lui Pitagora in triunghiul OED obtinem valoarea unghiului
EOD, respectiv .
de unde obtinem
Acest set de ecuatii ne ajuta in cazul unui studiul experimental pentru stabilirea dependentei
presiuni-forte.
Acest program este realizat prin intermediul programului CAD AutoCAD, apeland la unul din
mediile de programare integrate, respectiv Visual Basic.
Mediul de dezvoltare AutoCAD pune la dispozitia utilizatorului trei medii principale de
programare.
Primul si cel mai vechi este mediul de programare AutoLISP. Este pus la dispozitia utilizatorului si
un editor – VisualLISP. Acest limbaj de programare este un interpretor si deci foarte lent in executie,
desi ofera avantajele executiei unui program pas cu pas, observandu-se efectele programului pe
masura ce acesta se executa. De asemenea este specializat in lucrul cu liste, listele fiind
**principalul tip de date folosit de AutoCAD (de exemplu coordonatele unui punct constituie o
lista/vector cu trei elemente (x,y,z)).
Cel de-al doilea mediu de programare ARX este o versiune a limbajului de programare C, fiind de
asemenea utilizat impreuna cu primele versiuni de AutoCAD. Prezinta avantajul unei executii rapide,
acest limbaj de programare fiind un compilator. Ca dezavantaje putem aminti neintegrarea unui
editor de programe in AutoCAD, necesitatea, evidenta de altfel, de a compila programele inainte de
rularea lor in AutoCAD, ceea ce face complicata depanarea lor.
Cel de-al treilea mediu de programare ales este Visual Basic preai partile bune din cele doua
medii de programare enumerate mai sus. Este rapid in executie, lucreaza direct cu obiectele din
baza de date AutoCAD, putand genera obiecte complexe, respectiv lucrul cu solide si operatii cu
acestea (ceea ce AutoLISP nu putea). De asemenea in AutoCAD este inclus un editor de programe
Visual Basic complet. Mediul Visual Basic lucreaza cu ferestre Windows, deci nu este necesara
apelarea la mediul de dezvoltare DCL pentru crearea acestora. Unul din avantajele principale este
lucrul cu obiecte Windows, si respectiv ActiveX.
Programul dezvoltat permite generarea direct in baza de date a AutoCAD a modelului robot in
orice pozitie, creand chiar o animatie a acestuia. Se pot configura atat elementele geometrice ale
robotului, cat si pozitia picioarelor in mod independent.
In continuare
sunt
prezentate
modulele
programului.
Private Sub CommandButton1_Click()
centruPicioare
For ii = 0 To 5
distRev(ii) = 2# * DP * 2
unghirev(ii) = -pi / 4
unghirev1(ii) = 0
Next ii
CreazaRobot
End Sub
ThisDrawing.Regen acAllViewports
End Sub
End Sub
Afis.AddItem ('')
Afis.AddItem ('')
Afis.AddItem ('')
'initializare variabile
DiP = CDbl(DI.Value)
DP = CDbl(D.Value)
LP = CDbl(L.Value)
GpP = CDbl(GP.Value)
AlungireP = CDbl(Alungire.Value)
nrSecvP = CDbl(NrSec.Value)
UnghiMaxP = CDbl(UnghiMax.Value)
ThisDrawing.Regen acAllViewports
'Dim i As Integer
'grila
CreazaRobot
Afis.AddItem ('')
ThisDrawing.ActiveViewport.Direction = NewDirection
ThisDrawing.ActiveViewport = ThisDrawing.ActiveViewport
'ThisDrawing.ModelSpace.Layout
ZoomAll
End Sub
Sub CreazaRobot()
CalculaxaRevolutie
height = -LP
Dim i As Integer
Dim j As Integer
Dim m As Integer
Dim color As AcadAcCmColor
For j = 0 To 5
angle = unghirev(j)
For i = 0 To 2
c(0) = c1(i, 0)
c(1) = c1(i, 1)
c(2) = c1(i, 2)
raza = DiP / 2
startAngle = pi + pi / 6 + unghicamera(i)
raza = DP / 2
startAngle = pi + pi / 6 + unghicamera(i)
endAngle = 11 * pi / 6 + unghicamera(i)
raza = DiP / 2
endAngle = 11 * pi / 6 + unghicamera(i)
raza = DP / 2 - GpP
regionObj = ThisDrawing.ModelSpace.AddRegion(frontiera)
For m = 0 To 11
frontiera(m).Delete
Next m
ssetObj.AddItems regionObj
' color cc
If angle = 0 Then
Else
End If
ssetObj.Erase
'solidobj.Rotate3D (punct1,punct2,unghi)
'color cc
Next i
Next j
ICorp = LP / 6
corpObj.TrueColor = color
End Sub
Public pi As Double
' procedura temporara care face initializarile manual pana la calcularea acestora
Sub ini()
Dim ii As Integer
pi = 3.141592
c1(0, 0) = 255
c1(0, 1) = 0
c1(0, 2) = 255
c1(1, 0) = 255
c1(1, 1) = 50
c1(1, 2) = 0
c1(2, 0) = 0
c1(2, 1) = 255
c1(2, 2) = 252
unghicamera(0) = 0
unghicamera(1) = -2 * pi / 3
unghicamera(2) = 2 * pi / 3
' distanta dintre centrele picioarelor este de 3 ori raza de curbura a piciorului
DistCentruP = 6 * LP / pi
centruPicioare
revol
'unghirev(4) = 0
End Sub
' Procedura calculeaza unghiurile pentru arcul de la conturul interior al camerei
piciorului
Sub unghi()
a = GpP / 2
b = DiP / 2 + GpP
c = DiP / 2 + GpP
p = (a + b + c) / 2
t1 = (p - b) * (p - c)
t2 = p * (p - a)
t3 = t1 / t2
t4 = Math.Sqr(t3)
a = GpP / 2
b = DP / 2 - GpP
c = DP / 2 - GpP
p = (a + b + c) / 2
p = (a + b + c) / 2
t1 = (p - b) * (p - c)
t2 = p * (p - a)
t3 = t1 / t2
t4 = Math.Sqr(t3)
alfa2 = 2 * Math.Atn(t4)
End Sub
Sub centruPicioare()
End Sub
Sub revol()
For ii = 0 To 5
distRev(ii) = 2# * DP
unghirev(ii) = -pi / 2
unghirev1(ii) = 0
Next ii
End Sub
Sub grila()
' color cc
For i = 0 To 50
lineObj.TrueColor = color
lineObj.TrueColor = color
Next i
End Sub
Sub CalculaxaRevolutie()
Dim ir As Integer
For ir = 0 To 5
ptRev(ir, 2) = centru(ir, 2)
OD = distRev(ir) * Cos(alfa1rev)
DirRev(ir, 0) = OC - OD
DirRev(ir, 1) = distRev(ir) * Sin(alfa1rev)
DirRev(ir, 2) = 0
Next ir
End Sub
Exemplu de deplasare rectilinie a robotului, utilizand pasirea cu oscilatii verticale ale corpului
In fig,5,9. este prezentat robotul in pozitie de repaus. In aceasta pozitie actuatorii nu sunt actionati,
ei putand sustine greutatea robotului prin constructia lor (camasa exterioara, peretii camerelor,
electrod interior). In aceasta pozitie toate cele sase picioare au contact ferm cu solul, poligonul de
sustinere fiind un dreptunghi.
In continuare poligonul de sustinere este un triunghi descris de cele trei picioare care au contact cu
solul, adica picioarele 1, 3 si 5, desi putem admite ca poligonul de sustinere este descris de toate
picioarele, acestea avand contact cu solul.
Urmatoarea comanda elimina presiunea din camerele picioarelor care au contact cu solul,
respectiv 1, 3 si 5. Aceasta duce la destinderea acestor picioare, adica la scurtarea lor pana la pozitia
de relaxare/repaus. Din acest motiv picioarele 2, 4 si 6 ajung ferm pe sol, datorita miscarii verticale
de coborare a corpului robotului, in timp ce picioarele 1, 3 si 5 nu mai au contact cu solul. Poligonul
de sustinere va fi un triunghi descris de picioarele 2, 4 si 6.
Ultima miscare din acest semiciclu este de fapt miscarea de inaintare a robotului. Picioarele 2, 4
si 6, care acum au contact cu solul sunt comandate pentru alungire maxima fara curbare, egaland
presiunea in toate camerele cu presiunea maxima admisa. Corpul robotului va efectuao miscare de
inaintare pe orizontala si o miscare de ridicare pe verticala, rezultanta acestor miscari fiind o miscare
inainte si in sus.
Acest algoritm se repeta pentru obtinerea pasirii (miscarii de inaintare) si cu celelalte trei
picioare.
Se poate obtine o deplasare spre inainte (rectilinie) fara deplasari pe verticala ale corpului
robotului. Curbarea si deplasarea picioarelor se va face in lateral, efectuandu-se o rotire a picioarelor
care au contact cu solul, ceea ce provoaca o miscare oscilatorie a corpului robotului in plan orizontal.
Pentru deplasarea robotului astfel incat corpul acestuia sa nu oscileze in plan vertical sau
orizontal ar trebui controlata pozitia actuatorilor flexibili astfel incat curbarile pentru pozitionare sa
asigure numai jumatate din cursa maxima, cealalta jumatate de cursa sa fie folosita pentru
inaintare. In acest caz deplasarea utila se micsoreaza cel putin la jumatate.
Bibliografie
Sonia Degeratu, Nicu George Bizdoaca, Aliaje cu memorie a formei, Ed. Universitaria, Craiova,
2003
Stefan Preitl, Radu Emil Precup, Introducere in conducerea fuzzy a proceselor, E. Tehnica,
Bucuresti 1997
Dan Mihai, Comenzi numerice pentru sisteme electromecanice, Ed. Dicactica Nova, Craiova,
1996