Contributii la Elaborarea Strategiilor de Control Hibrid Forta Pozitie Pentru Conducerea Robotilor Mobili
CONTRIBUȚII LA ELABORAREA STRATEGIILOR DE CONTROL HIBRID FORȚĂ-POZIȚIE PENTRU CONDUCEREA ROBOȚILOR MOBILI
TEZĂ DE DOCTORAT
CUPRINS
1. Introducere
2. Stadiul actual al cercetărilor privind controlul hibrid forță-poziție pentru conducerea roboților mobili
2.1. Cercetări recente în domeniul controlului hibrid forță-poziție
2.2. Stadiul actual al cercetărilor privind logica neutrosophică în robotică
2.3. Stadiul actual al cercetărilor privind controlul mișcării la alunecare
2.4. Stadiul actual al cercetărilor privind tehnici de comutare ale metodelor de control
3. Probleme specifice ale structurii, cinematicii și dinamicii roboților mobili
3.1. Probleme specifice structurii roboților mobili pășitori
3.2. Probleme specifice cinematicii roboților mobili pășitori
3.2.1. Matricea de transformare
3.2.2. Transformarea omogenă
3.2.3. Matricea de transformare T
3.2.4. Cinematica directă
3.2.5. Definirea matricei Jacobi
3.2.6. Cinematica inversă
3.3. Probleme specifice dinamicii roboților mobili pășitori
3.3.1. Ecuațiile Euler-Lagrange
3.3.2. Tensorul Inerțial
3.3.3. Energia cinetică pentru un robot serial cu n segmente
3.3.4. Energia potențială pentru un robot serial cu n segmente
4. Elaborarea unor strategii de control hibrid forță-poziție pentru conducerea roboților mobili pășitori
4.1. Controlul mișcării la alunecare folosind grafurile Bond
4.2. Controlul unui picior al robotului mobil pășitor
4.3. Logica Neutrosophică în determinarea contactului cu suprafața de sprijin
4.4. Controlul robotilor pășitori modulari pentru mișcări în jurul unor axe
4.5. Controlul hibrid forță-poziție în conducerea unui robot cu 4 grade de libertate 81
4.5.1. Relații uzuale folosite de controlul în Poziție
4.5.2. Relații uzuale folosite de controlul în Forță
4.5.3. Realizarea controlului hibrid forță-poziție 84
5. Cercetări experimentale asistate de calculator; simularea și validarea modelelor matematice elaborate
5.1. Descrierea robotului mobil pășitor folosit în demostrarea teoriilor propuse
5.2. Controlul mișcării la alunecare, proporțional-integrativ-derivativ
cu amplificare fuzzy
5.3. Contactul elastic cvasi-static 3D în controlul roboților
5.4. Controlul hibrid forță-poziție în conducerea unui robot mobil pășitor
5.4.1. Metoda de control cinematic
5.4.2. Metoda de control dinamic
5.4.3. Simularea robotului mobil pășitor în Matlab Simulink
5.4.4. Legea neutrosophică de alegere a matricei Sk
5.4.5. Controlul robotului mobil pășitor
5.4.6. Simularea mersului robotului mobil pășitor sub acțiunea controlului hibrid forță-poziție 150
6. Stand de simulare al unui picior al robotului mobil pășitor
7. Contribuții originale și concluzii
7.1. Lista de lucrări ale autorului
8. Bibliografie
9. Anexe
1. Introducere
În ultimele decenii, accentul s-a pus pe dezvoltarea roboților mobili, dar în special al roboților mobili pășitori, al căror control este mult mai dificil de realizat față de roboții mobili cu roți. De menționat robotul biped WL-10R construit de Ichiro Kata în 1983 ce putea merge înainte și înapoi (figura 1.1); robotul biped construit de Waseda Hitachi (figura 1.2), WHL-11 ce avea un mers controlat static și care avea ciclul unui pas de 13 secunde. Primul robot umanoid biped, a fost cel construit de Honda în 1996, denumit P2 (figura 1.3), și care a fost un pas important în crearea celebrului ASIMO[15].
Pe lângă inovările în robotică cu scop medical sau educațional și chiar pentru divertisment, cu rezultate remarcabile ce au ajutat și ajută în continuare mulți oameni, cele mai mediatizate realizări în domeniul roboticii ar fi robotul SDR (Sony Dream Robots) construit de Sony în anul 2000 ce poate merge pe un teren plat dar are și abilitatea de a recunoaște 10 fețe diferite ale oamenilor, precum și capacitatea de a exprima emoții prin vorbire. În 2001 este lansat în spațiu și instalat pe stația spațială internațională, brațul robotic SSRMS (Space Station Remote Manipulator System) construit de MD Robotics din Canada, cu ajutorul căruia a fost asamblată stația spațială internațională și care ajută și în continuare la reparațiile și adăugările stației spațiale. Iar cel mai cunoscut robot biped actual ar fi ASIMO (Advanced Step in Innovative Mobility) construit de Honda în 2002 și care este în permanență îmbunătățit.
În anii 1980, 70% din roboți erau construiți pentru industria constructoare de mașini. În acest timp, constructorii de roboți au îmbunătățit performanțele acestora, căutând să introducă roboții și în alte domenii de activitate și piețe de desfacere. Astfel, s-au construit roboți ce sudează componente, asamblează și dezasamblează echipamente, manipulează și aranjează obiecte. În plus, au apărut datorită dezvoltării roboticii și alte aplicații în domenii precum medicina, curățirea mediului dar și explorarea spațiului și a oceanelor. Aceste avansări în tehnologia roboților a fost posibilă datorită descoperirii de noi aliaje și construirii de motoare mai mici și mai performante ce au permis construcția a numeroase forme și mărimi de roboți.
Dar, cercetarea nu s-a limitat la partea fizică și materială a roboților, ci din contră. Cea mai mare parte a cercetărilor fiind pentru îmbunătățirea controlului roboților. Plecând de la un control în poziție al manipulatoarelor[20–25], s-au dezvoltat metode de control în forță[26–29], viteză și accelerație, ce au numeroase îmbunătățiri, plecând de la un control direct al lor, și ajungându-se în ziua de azi la un control în bucle de reacție, cu rejectare de perturbații și stabilitate statică și dinamică.
În viitor, construcția roboților va ajunge să depășească cu mult tehnologia actuală iar metodele de control vor trebui să țină pasul cu tehnologia constructoare, deoarece roboții vor devenii o unealtă de nedespărțit pentru oameni și umanitate. De aceea, cercetările în domeniul metodelor de control al roboților mobili pășitori sunt printre cele mai atractive, deoarece deschid calea către noi și diversificate aplicații[30 – 35] deoarece roboții vor putea să efectueze toate muncile oamenilor cu o precizie, forță și neoboseală pe care oamenii nu o pot realiza.
La momentul de față, tehnologia de control a roboților, este suficient de mare pentru a fi necesare o serie volume de robotică pentru a le putea descrie în detaliu pe toate. O asemenea carte valoroasă o reprezintă lucrarea editată de Bruno Siciliano și Oussama Khatib [88] ce prezintă numeroase tehnici teoretice de control al roboților. Aceste tehnici prezintă într-un mod teoretic cele mai performante metode de control al roboților realizate până în anul 2008. De aceea se poate considera un volum de referință în dezvoltarea tehnicilor de control al roboților.
Una dintre aceste tehnici bine cunoscute și utilizate de către comunitatea științifică și dezvoltatoare de roboți, este metoda controlului hibrid forță/poziție[160-172]. Această metodă folosește informația de poziție și forță pentru a realiza controlul mișcării unui robot, și a fost propus pentru prima oară, de Raibert și Craig[9]. Acest control, l-au denumit control hibrid poziție/forță, iar mai apoi s-a folosit termenul general de „control hibrid”. Mai târziu, Zhang și Paul[10] au modificat schema controlului hibrid, de la o formulare carteziană, la o formulare în spațiul articulațiilor, folosind aceeași metodă de separare a constrângerilor date de poziție și forță.
Controlul hibrid este avantajos, deoarece se analizează informațiile de poziție și forță separat, folosind tehnici de control performante, pentru fiecare tip de control în parte (control în poziție și control în forță). După aplicarea metodelor de control, ieșirile sunt combinate pentru a le corela și a fi convertite în valori ale cuplurilor pentru articulațiile manipulatoarelor[11]. Una din inovațiile ce au condus la succesul acestei metode hibride de control, este separarea gradelor de libertate sau a axelor de mișcare după o matrice de selecție S. Acest lucru a permis îmbinarea mai multor legi de control pentru a realiza un sistem ce este controlat pe fiecare grad de libertate de o altă lege de control, obținând performanțe ridicate în realizarea anumitor sarcini ale roboților.
Controlul hibrid forță/poziție clasic, este folosit și calculat de ingineri într-un mod static, împărțind fiecare grad de libertate sau axă de mișcare în subdomenii ce sunt apoi controlate de anumite legi de control predefinite și prestabilite. Acest tip de control se folosește de cele mai multe ori pentru roboți ce sunt în contact permanent cu o suprafață de lucru. Pentru cazul roboților mobili, se poate compara fiecare picior al unui robot mobil pășitor cu un manipulator cu baza în platforma robotului și end-efectorul talpa acestuia, ce trebuie să aplice o anumită forță pe suprafața de contact (în cazul nostru solul) pentru a susține greutatea robotului. Mai mult, odată ce legile de control au fost calculate, acestea pot fi transpuse pe robotul ce le va urmării. Dezavantajul fiind faptul că atunci când se va dori ca robotul să realizeze o sarcină cu totul diferită pentru care legile de control pe care robotul le urmează nu mai sunt la fel de eficiente, este necesar introducerea altor legi de control sau alți parametrii ce guvernează legile existente.
De aici reiese întrebarea: Cum se poate îmbunătății controlul hibrid forță/poziție pentru controlul roboților mobili pășitori și de a realiza o structură de control dinamică ce se folosește de toate atuurile legilor de control nou dezvoltate și nu mai este așa de rigid legată de predefinirile robotului și sarcinile de îndeplinit?
De asemenea, cum s-ar putea schimba structura clasică a controlului hibrid, pentru a putea beneficia de mulțimea de tehnici de control existente în prezent și apoi folosite după conceptul controlului hibrid? Și mai mult, cum să dezrobim legea de control hibrid forță-poziție de sarcinile predefinite ale robotului?
Folosind aceste premise, scopul principal al lucrării este de a realiza o metodă nouă și inovativă de control hibrid forță-poziție ce se poate adapta online, în timpul funcționării, la orice tip de situație pe care robotul o poate întâlni în mediul de lucru. Pentru aceasta, se vor defini apriori mai multe tipuri de legi de control, precum și modul de folosire a acestora, definind pentru fiecare caz și situație pe care robotul o poate întâlni, câte un set de legi de control pe care robotul le va folosi, dar și anumite zone de incertitudine pentru care se vor considera a fi folosite legi și metode de control cu un spectru mai larg de aplicabilitate.
Pentru îndeplinirea sarcinilor date, un control hibrid clasic va utiliza numai câteva legi de control ce lucrează în paralel sau într-o anume combinație, pentru fiecare grup de grade de libertate, folosind la maxim eficacitatea acelor metode. Și de cele mai multe ori, dacă nu se folosesc metode de comutare, legile de control alese, sunt utilizate în mod continuu pentru controlul robotului.
Dar, așa cum se știe, orice metodă de control are și neajunsuri, mici sau mari, în funcție de aplicația în care robotul este folosit. De obicei, pentru fiecare aplicație în care sunt utilizați roboți, sunt analizate mai multe tehnici de control, și apoi sunt folosite numai acelea ce furnizează cele mai bune rezultate.
Analizând tehnicile de control folosite pentru a îmbunătății controlul hibrid, s-a observat o lipsă a studiului aprofundat pentru roboții mobili, din punct de vedere al alegerii metodelor de control folosite în timpul funcționării, în funcție de:
Gradele de libertate sau direcțiile de mișcare controlate în poziție sau forță;
Aplicația în care robotul își folosește abilitățile;
Schimbarea parametrilor exteriori ce conduce la nevoia schimbării tipului de control pentru un anumit grad de libertate.
Cercetări recente au arătat că în comunitatea științifică globală, există interesul de a îmbunătății controlul hibrid deoarece acesta îmbină avantajele fiecărei metode de control ce ese îmbunătății controlul hibrid forță/poziție pentru controlul roboților mobili pășitori și de a realiza o structură de control dinamică ce se folosește de toate atuurile legilor de control nou dezvoltate și nu mai este așa de rigid legată de predefinirile robotului și sarcinile de îndeplinit?
De asemenea, cum s-ar putea schimba structura clasică a controlului hibrid, pentru a putea beneficia de mulțimea de tehnici de control existente în prezent și apoi folosite după conceptul controlului hibrid? Și mai mult, cum să dezrobim legea de control hibrid forță-poziție de sarcinile predefinite ale robotului?
Folosind aceste premise, scopul principal al lucrării este de a realiza o metodă nouă și inovativă de control hibrid forță-poziție ce se poate adapta online, în timpul funcționării, la orice tip de situație pe care robotul o poate întâlni în mediul de lucru. Pentru aceasta, se vor defini apriori mai multe tipuri de legi de control, precum și modul de folosire a acestora, definind pentru fiecare caz și situație pe care robotul o poate întâlni, câte un set de legi de control pe care robotul le va folosi, dar și anumite zone de incertitudine pentru care se vor considera a fi folosite legi și metode de control cu un spectru mai larg de aplicabilitate.
Pentru îndeplinirea sarcinilor date, un control hibrid clasic va utiliza numai câteva legi de control ce lucrează în paralel sau într-o anume combinație, pentru fiecare grup de grade de libertate, folosind la maxim eficacitatea acelor metode. Și de cele mai multe ori, dacă nu se folosesc metode de comutare, legile de control alese, sunt utilizate în mod continuu pentru controlul robotului.
Dar, așa cum se știe, orice metodă de control are și neajunsuri, mici sau mari, în funcție de aplicația în care robotul este folosit. De obicei, pentru fiecare aplicație în care sunt utilizați roboți, sunt analizate mai multe tehnici de control, și apoi sunt folosite numai acelea ce furnizează cele mai bune rezultate.
Analizând tehnicile de control folosite pentru a îmbunătății controlul hibrid, s-a observat o lipsă a studiului aprofundat pentru roboții mobili, din punct de vedere al alegerii metodelor de control folosite în timpul funcționării, în funcție de:
Gradele de libertate sau direcțiile de mișcare controlate în poziție sau forță;
Aplicația în care robotul își folosește abilitățile;
Schimbarea parametrilor exteriori ce conduce la nevoia schimbării tipului de control pentru un anumit grad de libertate.
Cercetări recente au arătat că în comunitatea științifică globală, există interesul de a îmbunătății controlul hibrid deoarece acesta îmbină avantajele fiecărei metode de control ce este combinată, pentru a obține o schemă de control cât mai eficientă și de încredere pentru controlul unui anumit robot. Astfel, în 2012, Mohamed publică lucrarea [135] în care prezintă un control hibrid de controlează un robot paralel, cu șase grade de libertate, ce prin intermediul rețelelor neuronale, realizează un estimator al dinamicii robotului. Rezultatul este un control hibrid de mare precizie în care metoda neuronală și clasicul PID sunt combinate pentru a controla în poziție și moment robotul ce este într-un contact permanent cu mediul de lucru ce prezintă incertitudini și perturbații. În 2011, Kumar ș.a.[140] realizează tot un control hibrid forță/poziție bazat pe rețele neuronale, dar în această lucrare controlul se bazează pe descompunerea dinamicii robotului în forță, poziție și subspațiile date de articulațiile redundante. Tot în 2011, Testart ș.a.[141] realizează un control hibrid pentru roboții mobili bipezi NAO. Acest tip de control hibrid se bazează pe o mașină de stări, astfel că robotul va fi controlat în funcție de parametrii determinați de această mașină de stări.
Controlul hibrid s-a dovedit eficient nu numai pentru controlul roboților de orice fel, iar în 2008, Elmas și Ustun[142] publică un articol ce prezintă un control hibrid utilizat în acționarea și controlul motoarelor sincron cu magneți permanenți, ce diminuează foarte mult efectul de chattering ce poate apare în anumite condiții de schimbare a parametrilor sau a legilor de control. În plus, autorii combină avantajele a două metode de control cunoscute (Controlul Mișcării la Alunecare și Controlul Fuzzy cu Rețele Neuronale).
Această variație și domeniu multidisciplinar în care este folosit și dezvoltat controlul hibrid o dovedește și aplicația lui Erginer și Altung din 2013[144] ce dezvoltă un control hibrid folosit la decolarea și aterizarea unui vehicul zburător cu patru elice orientate vertical. Deși au folosit un control simplu PD combinat cu logica fuzzy, rezultatele dovedesc utilitatea controlului hibrid în domeniul tuturor categoriilor de roboți mobili (tereștri sau zburători) sau de manipulare.
Pentru a descătușa metoda de control hibrid forță-poziție clasică de rigiditatea folosirii a câtorva legi de control în timp real, în ultimii ani, mai multi cercetatori au introdus diferite metode de comutare.
Aceste tehnici de comuntare, realizau inițial, trecerea între valorile de care aveau nevoie la un anumit moment de timp în controlul robotilor. P.R. Ouyang, W.J. Zhang, și M.M. Gupta în 2006 [1] au folosit o metoda de comutare adaptivă pentru a putea comuta între diferite amplificări folosite în controlul urmăririi unei traiectorii de către manipulatoarele seriale. Într-o altă lucrare din 2011, G.P. Moustris și S.G. Tzafestas [2] folosesc un comutator de tip fuzzy în exteriorul buclei de control pentru a trece de la o traiectorie de referință la alta, folosită în conducerea mișcării unui robot mobil. Iar G.L.Nicolás, C. Sagüés ș.a. au prezentat în 2008 un control de comutare bazat pe geometrie epipolară [3] ce avea ca scop comutarea între diferite imagini captate de către un robot mobil pentru a-și calcula traiectoria până la țintă. Aceste tehnici de comutare precum și altele [4, 5, 6] au fost folosite în principal pentru a comuta între diferite valori ale referinței, sau între diferite valori folosite la o anumită lege de control.
Dar au fost și cercetători, care au aplicat aceste metode de comutare, sau au realizat altele noi, pentru a controla roboții folosind metoda de control hibrid forță-poziție. Astfel, s-au publicat lucrări în care sunt prezentate mașini de stări cu aplicații în domeniul chirurgiei [155], folosirea logicii fuzzy[156] pentru selecția de unelte de lucru al unor mașini industriale precum și filtre cu histerezis ce elimină problema efectului de chattering.
Mergand pe ideea metodei de control al roboților a lui Vladareanu cu lucrarea[7] în care s-a introdus ideea de a folosi logica neutrosophică în controlul hibrid forță-poziție, am adoptat o funcție de comuntare bazată pe logica neutrosophică [8]. Deoarece datele de intrare pot fi de multe ori ambigue sau contradictorii, s-a folosit această nouă tehnică de control, ce se foloseste de probabilitățile de adevăr, falsitate și incertitudine din anumiți senzori sau observatori.
De aceea, pentru a îmbunătății și crește performanțele controlului hibrid forță-poziție, s-a realizat o schemă de control hibrid forță/poziție îmbunătățită, ce cu ajutorul logicii neutrosophice reușește să determine pentru fiecare sarcină și schimbare a datelor robotului, ce lege de control este necesară pentru controlul fiecărui grad de libertate și axă de mișcare. În acest sens, logica neutrosophică acționează ca o lege de comutare ce determină matricele S ale controlului hibrid forță/poziție.
Mai mult, în locul unor reguli stricte de comutare, se pot defini anumite condiții, care pot fi îndeplinite mai mult sau mai puțin Iar în funcție de datele de la toți senzorii și observatorii robotului, legea de comutare neutrosophică poate lua decizia corectă de schimbare sau nu a legilor de control ce controlează robotul mobil. Astfel, rezultă o nouă metodă de control hibrid forță/poziție mult îmbunătățită, dar care se bazează pe structura clasică a controlului hibrid și care poate schimba legile interne de control al fiecărei articulații/grad de libertate într-un mod dinamic astfel ca robotul să se poată deplasa în mediul de lucru, în ciuda perturbațiilor, incertitudinilor și a acționărilor exterioare aspura robotului. De aceea, noua metodă de control hibrid este superioară și mai eficientă în tratarea problemelor de incompatibilitate între obiectivele robotului și legile de control folosite.
Deoarece robotul mobil studiat în această lucrare este unul pășitor, datele problemei se restrâng la a deplasa într-un mod corespunzător robotul, pentru îndeplinirea obiectivelor de deplasare, suport a diverse greutăți și stabilitate orizontală și verticală a întregii structuri mecatronice.
Îmbunătățirile aduse controlului hibrid forță/poziție în această lucrare, se încadrează în domeniile de preocupare a numeroase universități și institute de cercetare din întreaga lume[160-172], dovedite de studiile de analiză realizate pe lucrări valoroase și numeroase publicate în ultimii ani de echipe de cercetare de renume mondial.
Pentru a ajunge la aceste realizări ce îmbunătățesc vizibil controlul hibrid forță/poziție, s-au realizat mai multe cercetări ce au condus la aceste rezultate. Printre acestea se numără colaborări cu universități din străinătate precum Universitatea din Gallup New Mexico, SUA; Universitatea Autonomă din Mexico City, Mexic și Universitatea din Houston SUA.
Astfel, în anul 2009, a fost realizat un schimb de experiență și susținute o serie de prelegeri la Universitatea Autonomă din Mexico City. Acolo, împreună cu profesorul Armando Baranon și colectivul său, au fost dezbătute o serie de probleme legate de roboții mobili pășitori, printre care și problema deplasării roboților mobili pășitori în jurul unei axe[45]. Mai mult, s-au analizat dificultățile întâmpinate de cercetători în realizarea unui control hibrid forță/poziție dar și idei de îmbunătățire și dezvoltare a acestui tip de control, în special aplicat roboților mobili pășitori bipezi sau hexapozi.
În același an, în 2009, a fost realizat un schimb de experiență cu universitatea din Houston SUA, cu ocazia unei conferinței internaționale[48] unde, au fost dezbătute diverse probleme legate de robotică, roboți modulari, stabilitate.
Aceste cercetări realizate în colaborare cu univeristățiile din Mexic și SUA au fost în parte susținute de proiectul „ Cercetari Fundamentale si Aplicative pentru Controlul in Pozitie al Robotilor Pasitori HFPC MERO”, ID 005/2007-2010, Programul IDEI, coordonat de ANCS (Autoritatea Națională de Cercetare Științifică).
Mai mult, în anul 2011 a fost încheiat un acord de cotutelă cu profesorul Florentin Smarandache de la Universitatea din Gallup statul New Mexico SUA, începând o colaborare cu această universitate ce a condus la publicarea mai multor articole precum [37] în domeniul logicii neutrosophice, ducând la dezvoltarea noului control hibrid forță/poziție.
În urma cercetărilor realizate pe parcursul anilor de cercetare în cadrul programului de doctorat, s-au adus mai multe îmbunătățiri metodelor de control hibrid forță/poziție dar și al altor legi și metode de control folosite în conducerea roboților mobili pășitori. Astfel, în această lucrare se vor prezenta aceste realizări. Printre acestea se numără îmbunătățirea controlului mișcării la alunecare și demonstrarea acestui lucru folosind grafurile Bond, folosirea logicii neutrosophice în controlul roboților mobili, și nu în ultimul rând realizarea unei noi scheme de control hibrid forță/poziție ce îmbunătățește performanțele structurii clasice. Toate acestea sunt prezentate pe larg, împreună cu ecuațiile matematice și acolo unde este cazul, algoritmii de conducere online a unui robot mobil pășitor.
Lucrarea de față este împărțită în 10 capitole, din care primele 7 conțin lucrarea în sine, împreună cu un capitol de contribuții originale și unul de concluzii. Ultimele 3 capitole conțin lista de lucrări publicate ale autorului, bibliografia folosită în studiul de cercetare pentru îndeplinirea obiectivelor și realizarea unei contribuții originale plecând de la studii recente în domeniul roboților, iar ultimul capitol conține anexele cu grafice, figuri și algoritmi ce nu au putut fi introduși în conținutul lucrării datorită dimensiunilor foarte mari.
Al doilea capitol al lucrării tratează problema cercetărilor actuale, problemă ce este extrem de necesar a fi cercetată deoarece prin intermediul cercetărilor prezentate, se poate dovedi contribuția originală adusă de această lucrare în domeniul controlului roboților mobili. Prin capitolul de stadiu actual, s-a detaliat principalele direcții ale cercetărilor în domeniile abordate de această lucrare, cu exemple de realizări ale cercetătorilor de renume și care au fost comparate în alt capitol cu realizările și contribuțiile aduse în domeniul roboticii de această lucrare.
Al treilea capitol detaliază probleme specifice ale structurii, cinematicii și dinamicii roboților mobili pășitori, iar al patrulea capitol constă din prezentarea pe scurt a strategiilor de control hibrid forță-poziție realizate în această lucrare.
Rezolvarea propriuzisă prin cercetări experimentale și simulări asistate de calculator a strategiilor de control propuse în capitolul 4, este realizată și prezentată în capitolul cinci. Aici contribuțiile sunt detaliate în mai multe subcapitole. Acest capitol prezintă realizările asupra mai multor legi de control, fiecare având propria experimentare asistată de calculator pentru dovedirea contribuțiilor aduse. Ultimele două subcapitole sunt printre cele mai importante deoarece prezintă controlul hibrid forță-poziție îmbunătățit precum și cercetările experimentale realizate pe standul de simulare al unui picior al robotului mobil pășitor.
Capitolul șase conține prezentarea pe scurt a contribuțiilor originale pe care această lucrare le introduce în domeniul roboticii printr-o trecere în revistă a lor cu mici descrieri, observații și motivări a fiecărei contribuții. Concluziile rezultate în urma cercetărilor și contribuțiilor științifice în domeniul roboților mobili pășitori, demonstrate de-alungul capitolelor acestei lucrări științifice sunt prezentate în capitolul 7.
Capitolul 8 prezintă lista de lucrări publicate de autor iar capitolul 9 conține lista bibliografică folosită în studiul și documentarea cercetărilor realizate. Toate anexele realizate sunt incluse în capitolul 10.
2. Stadiul actual al cercetărilor privind controlul hibrid forță-poziție pentru conducerea roboților mobili
2.1. Cercetări recente în domeniul controlului hibrid forță-poziție
Controlul hibrid clasic al roboților, este cel în care sunt combinate două legi de control, pentru a conduce un sistem către starea de referință. Modalitatea de combinare este cea ce i-a adus numele de hibrid, deoarece metodele de control sunt îmbinate și lucrează împreună pentru atingerea obiectivelor. În ultima perioadă, cercetătorii tind să folosească termenul de control hibrid, pentru majoritatea schemelor de control ce folosesc îmbinarea dintre două sau mai multe legi de control, chiar dacă acestea nu mai sunt combinate folosind tehnica clasică.
Un control hibrid performant, bazat pe schema clasică este cel realizat în 2012 de către Mohamed[135]. Acesta folosește un robot paralel cu șase grade de libertate pentru a-și demonstra validitatea cercetărilor. Autorii acestei lucrări, au folosit un control hibrid de control îm poziție/moment al robotului, pentru a conduce robotul în poziții pentru care robotul se află în contact cu mediul de lucru. Pentru aceasta au avut nevoie să cunoască dinamica robotului. Dar, în loc să o calculeze, au realizat un estimator bazat pe rețele neuronale denumit MLP-NN (MultiLayer Percetron Neural Network = Perceptron MultiStrat cu Rețele Neuronale). Parametrii neuronali au fost calculați folosind un algoritm bazat pe metodologia de analiză Lyapunov.
Estimatorul realizat, reușește să calculeze prin intermediul rețelelor neuronale, un model dinamic al robotului, astfel încât controlul hibrid să ajungă la o precizie foarte mare de control al poziției/momentului robotul folosind un control simplu PID. Problema controlului hibrid forță/poziție în situații de incertitudine a fost și este studiată în continuare, de aceea autorii au dorit să realizeze un control hibrid ce reușește să rezolve această problemă, și mai mult, s-a dorit realizarea unui sistem de control hibrid ce reușește să identifice parametrii mediului de lucru (impedanța și frecare), ce sunt în general neliniare și variabile în timp.
Figura 2.1.1 – Controlul hibrid propus de Mohamed ș.a. [135]
Rezultatele experimentale realizate în lucrarea [135] au arătat că noua metodă de control hibrid poate compensa lipsa parametrilor robotului și a mediului, iar comparativ cu o lege de control PID, aceasta este net superioară. Iar rezultatele obținute, demonstrează calitatea robustă a legii de control în ciuda variației mediului și a suprafeței de contact.
Tot un control hibrid forță/poziție bazat pe rețele adaptive neuronale este realizat în 2011 [140] de către Kumar ș.a., pentru a controla roboți formați din manipulatoare cu braț rigid. Această metodă de control se bazează pe descompunerea dinamicii robotului în forță, poziție și subspațiile date de articulațiile redundante.
În 2011, Testart și alții[141], au prezentat un control hibrid ce controlează roboții umanoizi NAO, pentru cupa internațională de fotbal a roboților. Acest control hibrid al lor, era împărțit în trei straturi: stratul de planificare, stratul de luare a deciziilor și stratul reactiv. Aceste straturi ale controlului hibrid, lucrează în paralel, pentru ca deciziile să poată fi luate căt mai repede cu putință. Stratul de planificare, realizează planificarea de lungă durată a mișcărilor robotului, folosind informațiile primite de la senzori, dar și de la ceilalți roboți din jurul lui. Acest lucru este necesar pentru a determina rolul robotului în lucrul în echipă cu ceilalți roboți coechipieri. Cel de al doilea strat, cel de luare a deciziilor, ce îndeplinește sarcinile impuse de către stratul de planificare. Aici autorii au realizat pentru fiecare obiectiv în parte câte o mașină de stări ce duce la îndeplinire fiecare mișcare a robotului. Cel de al treilea strat, stratul reactiv, are rolul de a administra resursele computaționale ale robotului, pentru ca acesta să îndeplinească toate obiectivele într-un timp cât mai scurt, pentru ca acesta să poată lucra și lua deciziile în timp real sau cu timpi de întârziere cât mai mici. Spre exemplu, detecția momentului când robotul se dezechilibrează și începe să cadă este realizată în 51ms.
Controlul hibrid s-a dovedit eficient nu numai pentru controlul roboților de orice fel. În 2008, Elmas și Ustun[142] publică un articol în care prezintă un control hibrid utilizat în acționarea și controlul motoarelor sincron cu magneți permanenți. Scopul cercetărilor prezentate în acea lucrare sunt de a realiza o metodă de control ce diminuează substanțial efectul de chattering dar care asigură și un răspuns dinamic și uniform pentru controlul motoarelor. Pentru aceasta, autorii au folosit controlul mișcării la alunecare (SMC) și rețele neuronale combinate cu logica fuzzy (NFC) pentru a testa rezultatele obținute. Testele realizate prin simulare și experimentare, au demonstrat faptul că folosirea controlului hibrid, a furnizat un răspuns mult mai bun, comparativ cu metodele simple SMC și NFC. Mai mult, metoda de control hibridă a prezentat caracteristici de robustețe, s-a reușit obținerea unui efect mai mic de chattering și rezultate mai bune din punct de vedere al preciziei și variațiilor în condițiile de lucru al motoarelor.
Acest control hibrid, a combinat avantajele celor două metode SMC și NFC, pentru a obține un control hibrid robust, cu un efect de chattering mai mic și rezultate mai bune din punct de vedere al preciziei și variațiilor în condițiile de lucru al motoarelor, față de cazurile în care metodele de control ar acționa singure.
Figura 2.1.2 – Schema de control hibrid propusă de Elmas și Ustun[142]
După cum se observă în figura 2.1.2, autorii au adăugat un comparator în locul blocului de însumare ce îmbina legile de control, în schimb, au comparat eroarea furnizată de ambele metode, și au ales-o pe cea mai bună, pentru controlul motoarelor.
Varietatea domeniilor în care controlul hibrid este folosit o dovedesc și Erginer și Altung în 2012[144], prin utilzarea acestuia în controlul unui vehicol zburător cu patru elice (quadrotor), pentru decolarea și aterizarea acestuia. Introducerea controlului hibrid în controlul elicopterelor cu patru rotoare, se datorează dinamicii complexe ale acestora. De aceea, autorii au comparat un control clasic PD (proporțional derivativ) cu un control hibrid fuzzy PD dezvoltat special pentru controlul acestor elicoptere cu patru elice. Pentru demonstrarea eficienței legilor de control autorii au folosit simularea Matlab și experimentări.
Rezultatele obținute și prezentate în lucrarea [144], arată că ambele metode sunt eficiente în controlul rotorului elicopterelor, dar controlul hibrid fuzzy PD s-a comportat ceva mai bine, și mai mult prezintă avantajele rejecției perturbațiilor dar și o ușurință în realizarea regulatoarelor.
Figura 2.1.3 – Schema roatoarelor elicopterului controlat prin metoda
controlului hibrid fuzzy PD prezentată în lucrarea lui Erginer și Altung[144]
În 2011, Kumar ș.a.[145] prezintă un control bazat pe controlul hibrid forță/poziție, ce folosește rețele neuronale pentru a controla manipulatoare formate din segmente rigide. Pentru aceasta, autorii au descompus dinamica sistemului robot în subspațiile formate de forța, poziția și articulațiile redundante ale robotului. Folosindu-le au dezvoltat un control bazat pe o rețea neuronală ce realizează stabilitatea sistemului în sens Lyapunov pentru controlul în forță dar și pentru a regla poziția robotului în spațiul Cartezian. Prin studii de simulare pe un robotul cu două grade de libertate, ce arată că rețeaua neuronală compensează dinamica roboului, iar controlul hibrid se comportă la fel de bine ca si legile de control folosite pentru a-l compune.
Dacă majoritatea cercetărilor în domeniul controlului hibrid sunt axate pe controlul roboților și al mecanismelor, în 2004, Nael El-Farr ș.a.[146], prezintă o utilizare diferită al schemei hibride prezentată în figura 2.1.4. Astfel, autorii folosesc controlul hibrid pentru a stabiliza sistemele liniare constrânse. Schema de control realizată, folosește un comutator între două metode de control. Prima este un control predictiv (MPC) ce minimizează obiectivele de performanță supuse unor constrângeri, iar a doua metodă este o lege de control de mărginire, pentru care regiunea pentru care sistemul în buclă închisă este stabil, este bine definită.
Prin simulări numerice, autorii dovedesc că metoda de control hibrid realizată asigură stabilitatea unui sistem instabil liniar. De asemenea, ideea comutării între două sisteme de control s-a dezvoltat pentru a putea realiza un anumit obiectiv ce niciuna din cele două legi de control nu îl poate realiza singură. Această comuntare a fost realizată de acești cercetători folosind o regulă strictă bazată pe regiunea de stabilitate a sistemului, în care se verifică starea sistemului în raport cu intervalele desemnate ca fiind limitele de stabilitate.
Figura 2.1.4 – Schema de control hibrid propusă în lucrarea [146]
În 2010, Cetin și Akkaya[147], prezintă un control hibrid forță-poziție fuzzy-PID cu reguli asociate (HFPIDCR [147]), pentru poziționarea cu performanțe ridicate a unui sistem hidraulic. Pentru aceasta, autorii au studiat prin simulări, comportamentul acestui tip de control și l-au comparat cu rezultatele următoarelor tipuri de control: control bazat pe logica fuzzy (FLC), control hibrid fuzzy-PID (HFPID) și controlul simplu PID. Rezultatele obținute, au demonstrat că metoda de control HFPIDCR are timpi mai buni de urmărire a referinței, ajungând la aceasta mai repede decât celelalte metode.
Figura 2.1.5 – Structura schemei de control hibrid forță-poziție fuzzy-PID cu reguli asociate
Figura 2.1.5, prezintă schema de control hibrid propusă de autorii lucrarii [147], ce îmbunătățește poziționarea sistemelor hidraulice, iar formula (2.1) prezintă semnalul de control trecut prin schema de ajustare a parametrilor [147],
(2.1)
unde, GU, KPI și KPD sunt amplificări, Uh(t) este semnalul de intrare calculat de către legile de control, iar U(t) este semnalul de control a sistemului hidraulic.
În lucrarea [136] propusă în 2009 de către Wang și Xie, autorii abordează problema în care un control hibrid forță/poziție poate să controleze un manipulator ce este liber în spațiu sau zboară. Astfel, thnica de control trebuie să poată lucra cu parametrii cinamatici și dinamici incerți. Pentru aceasta autorii au propus o lege de control adaptivă bazată pe matricea Jacobi, pentru a putea face față incertitudinilor ce apar datorită parametrilor cinematici și dinamici precum și datorită rigidității și posiției suprafeței de lucru.
În 2010, autorii lucrării [138], au realizat un control hibird ce controlează roboți cu brațe flexibile. Pentru aceasta ecuațiile mișcării includ componentele echilibrului pseudostatic dar și ale deviației de la acesta. Componenta de control direct, se bazează pe echilibrul pseudostatic, și este obținută din ecuațiile algebrice descrise de autori.
Tot în 2010[139], Visioli ș.a., au realizat un control hibrid forța/viteză. Aceștia au folosit o tehnică de control iterativă cu învățare (ILC – Iterative-Learning-Control = Control-Iterativ-cu-Învățare), pentru a realiza controlul unui robot ce execută mișcări de urmărire a unui contur.
Controlul hibrid este așa de performant, că a ajuns să contoleze poziționarea dinamică a unor platforme maritime[143]. Aceste platforme maritime trebuie să își păstreze poziția pe mare, iar controlul hibrid s-a dovedit a fi o unealtă foarte bună, pentru că a îmbunătățit performanțele și operabilitatea acestor platforme.
Din studiile prezentate, rezultă că performanțele unui control hibrid sunt direct proporționale cu performanțele legilor de control ce îl alcătuiesc. De aceea alegerea legilor de control este o decizie foarte importantă în realizarea unui control hibrid forță/poziție.
2.2. Stadiul actual al cercetărilor privind logica neutrosophică în robotică
Deoarece domeniul logicii neutrosophice este relativ recent, nu există aplicații semnificative în robotică, mai mult decât cele teoretice.
O lucrare ce compară la modul teoretic logica fuzzy și cea neutrosophică este lucrarea lui Smarandache din 2003[159]. În această lucrare, autorii, prezintă pe larg aspectele teoretice ale celor două logici comparate. De asemenea, se realizează o comparație între setul intuiționistic fuzzy și cel neutrosophic pentru a scoate în evidență avantajele pe care logica neutrosophică o are față de cea fuzzy.
La sfârșitul lucrării, autorii dau câteva exemple teoretice de aplicare a logicii neutrosophice, a statisticii neutrosophice, a regulilor de combinare clasică neutrosophică, cu aplicații directe în economie, statistică și matematică.
Dacă majoritatea lucrărilor publicate sunt teoretice, în 2011, este publicat un articol[77] în care, autorii prezintă cum ar trebui să fie aplicată logica neutrosophică în robotică. Astfel, Vlădăreanu și Smarandache, prezintă o schemă de control hibrid, în care apare logica neutrosophică în încercarea de a îmbunătății controlul hibrid al roboților. În schimb, nu apare nicio aplicație sau simulare prin care să exemplifice modalitatea de calcul și aplicare efectivă a logicii neutrosophice în controlul roboților.
După cum se poate observa, cercetarea de introducere a logicii neutrosophice în robotică este încă la început, și momentan nu există aplicații publicate care să prezinte modalități de folosire, aplicare și îmbunătățire a legilor de control ce folosesc logica neutrosophică, în conducerea roboților de manipulare sau a roboților mobili.
2.3. Stadiul actual al cercetărilor privind controlul mișcării la alunecare
Deoarece lucrarea de față folosește controlul mișcării la alunecare (SMC) pentru a controla un robot mobil pășitor, este necesar a se prezenta stadiul actual al cercetărilor privind această metodă de control.
În 2009, Xinghuo Yu, realizează un studiu asupra controlului mișcării la alunecare, și prezintă în lucrarea sa[152], cele mai importante metode de implementare a acestei metode. Astfel, el identifică Rețelele Neuronale, Logica Fuzzy și Teoria Haosului ca fiind principalele metode de implementare și îmbunătățire a SMC. Principalele probleme ale SMC identificate de autor sunt:
Efectul de chattering ce se prezintă ca o oscilație de frecvență ridicată a poziționării sistemului în jurul valorii de referință și este cauzat de prezența unor paraziți dinamici ce sunt înseriați sistemului controlat, sau de problemele funcțiilor de comutare ce nu sunt suficient de bune.
Incertitudinile ce nu sunt luate în calcul. În general SMC este o metodă robustă ce rejectează perturbațiile datorate incertitudinilor sistemului. Dar, dacă aceste incertitudini nu sunt în mulțimea de incertitudini pe care condiția SMC le poate elimina, atunci legea de control SMC va fi dependentă de acești parametrii, lucru ce nu este dorit.
Dinamica nemodelată este o altă problemă a SMC. Teoretic este imposibil ca un sistem practic să fie modelat. De aceea, în realizarea unui sistem, vor fi mereu și elemente ale dinamicii ce nu au putut fi modelate. Acest lucru poate cauza probleme mari dacă dinamica nemodelată conține elemente dinamice de frecvență ridicată[152].
Interconectarea dintre efectul de chattering, incertitudinile ce sunt și nu sunt luate în calcul și dinamica nemodelată.
Alunecare, Non-Alunecare și Mișcare Zero, însemnând că există trei mișcări posibile ale sistemului controlat, datorită metodei folosite de comutare. Această metodă este necesară pentru că în cazul mișcării la alunecare, orice mișcare realizată de sistemul controlat se va afla într-o stare ce este atrasă ca de un magnet de starea de alunecare, reprezentată de zona de echilibru din jurul referinței.
Prima metodă descrisă de autor, este metoda Rețelelor Neuronale. Această metodă se cunoaște că se folosește de elemente simple, denumite neuroni, cu ajutorul cărora se realizează o rețea ce prin diferite procedee învață să realizeze anumite operațiuni, în cazul nostru să furnizeze anumiți parametrii către legea de control SMC. Cele mai des întâlnite structuri folosite sunt rețelele neuronale fără buclă de control (control direct), rețelele neuronale bazate pe funcții radiale de bază[153] sau retelele neuronale recursive în buclă de reacție.
Cea de a doua metodă specificată de autorul studiului, este cea bazată pe logica fuzzy, ce este de asemenea foarte răspândită în rândul cercetătorilor ce utilizează SMC. Logica fuzzy ajută legea de control SMC prin faptul că reușește să exprime și să reprezinte matematic probleme ce altfel ar fi greu de exprimat folosind modele matematice deterministice și probabilistice.
Ultima metodă amintită ca fiind printre cele mai importante în realizarea SMC, este metoda ce folosește elemente din teoria haosului dar și alte părți componente ale rețelelor de încredere și de învățare.
În 2011, Wang, Hou, Dong și Xiao[149], prezintă un control adaptiv fuzzy al mișcării la alunecare (AFSMC) pentru sisteme neliniare și incerte SISO. Folosind simularea și un sistem al pendulului invers, s-a experimentat legea de control dezvoltată. Rezultatele prezentate de autori, arată un control precis al unghiului dorit pentru pendulul inversat, obținut în condiții de perturbații și incertitudine a sistemului. Rezultă o îmbunătățire a sistemului convențional SMC prin folosirea logicii fuzzy împreună cu dinamica SMC. A se observa faptul că autorii nu au folosit o tabelă de obținere a datelor fuzzy ci o formulă în care sunt introduse datele obținute după fuzificarea intrărilor, pentru a obține ieșirea, într-o manieră cât mai continuă și în timp real.
Tot în 2011, Li și Duan, prezintă o lucrare[150] în care folosesc controlul mișcării la alunecare pentru a controla distanța dintre două autovehicule ce se deplasează pe un drum. Pentru aceasta, autorii au luat în considerare pe lângă viteza de deplasare și accelerația autovehiculului pentru un mai bun control al distanței, pentru ca sistemele de control automat al vitezei să fie îmbunătățite din punct de vedere al siguranței rutiere. Pentru aceasta, se prezintă o schemă de control, prezentată și în figura 2.3.1.
Figura 2.3.1 – Schema de control prin SMC a Accelerației
Analiza și rezultatele simulărilor prezentate în [150] arată că metoda de control la alunecare poate controla eficient distanța dintre autovehicule, luând în considerare și accelerația relativă dintre corpuri.
Metoda de control al mișcării la alunecare (SMC), a fost adaptată pentru a controla nivelul de PH dintr-o soluție, de către autorii lucrării [148] în 2011. Pentru aceasta s-a folosit un control adaptiv fuzzy de control a mișcării la alunecare (FSMC) ce pentru această aplicație este impropriu zis. Astfel, autorii combină controlul fuzzy cu cel SMC pentru a obține o robustețe mare și o abilitate de adaptare bună. Simulările realizate pentru care autorii au prezentat rezultatele, arată că perturbațiile ce apar în sistem, chiar și cele mari, nu afectează sistemul. De asemenea, autorii subliniază faptul că metoda de control SMC folosește toată informația obținută de la modelul procesului și depinde foarte mult de reprezentarea canonică a acestuia, iar metoda acestora FSMC, are nevoie numai de datele de intrare/ieșire ale sistemului.
Pentru cazul unor sisteme neliniare incerte cu mai multe intrări și mai multe ieșiri (MIMO), autorii lucrării [154], prezintă un control terminal adaptiv al mișcării la alunecare bazat pe logica fuzzy(TSM). Acest nou control prezentat, a fost implementat pe un manipulator cu două segmente rigide, pentru a se trece apoi la testarea mișcării genunchiului și gleznei la persoanele cu disfuncționalități ale acestor articulații.
Scopul realizării acestor cercetări, dar și a realizării metodei de control TSM este, așa cum spun autorii lucrării, de a asigura o convergență mai mare și o poziționare mai precisă a manipulatoarelor față de ceea ce asigură controlul clasic SMC. Totuși, metoda de control TSM introduce singularități în sistemul discontinuu de control și sunt necesare cunoștiințe mult mai detaliate ale sistemului controlat. De aceea, legea de control propusă de autori, combină legea de control TSM continuă și fără singularități cu un algoritm adaptiv de învățare și logica fuzzy pentru a estima dinamica sistemului controlat. Astfel, autorii au putut asigura stabilitate în buclă de reacție și o convergență în urmărirea erorii într-un timp limită.
Rezultatele experimentale prezentate, confirmă o creștere a eficienței metodei de control la alunecare față de controlul clasic SMC. De asemenea, s-au înregistrat rezultate ce prezintă un control constant și fără fluctuații, ce nu au necesitat identificare apriori a dinamicii sistemului controlat.
În lucrarea [151], autorii prezintă o schemă de control fuzzy hibrid, al mișcării la alunecare cu ajustare on-line a amplificărilor (SMHFLC) pentru manipulatoare robot. Folosirea metodei de control la alunecare este justificată datorită calităților sale de neliniaritate și robustețe. De asemenea, autorii au folosit ajustarea on-line a parametrilor metodei SMC, pentru a compensa mai eficient parametrii dinamici, structura robotului și incertitudinile nemodelate ale sistemului controlat.
Figura 2.3.2 – Controlul adaptiv hibrid fuzzy SMC[151]
Folosind schema de control din figura 2.3.2, autorii lucrării, au folosit primele 3 grade de libertate ale robotului PUMA pentru a demonstra eficiența metodei de control. Astfel, s-a arătat diferența dintre un control fuzzy FLC și controlul SMHFLC, concluzionând că metoda nouă de control are o urmărire mai bună a referinței și elimină subreglajul. Iar în momentul introducerii unui parametru de eroare în sistem, de tipul zgomotului alb, noua metodă de control, nu este afectată de acest lucru evidențiind robustețea legii de control.
Un studiu detaliat ce cuprinde mai multe metode de abordare a controlului mișcării la alunecare prin abordări inteligente, este realizat de Shafiei în 2010 în lucrarea[158, 182]. Aici, autorul realizează o comparație între controlul clasic al mișcării la alunecare SMC și alte trei metode de control inteligent, ce îmbunătățesc controlul SMC al manipulatoarelor rigide cu n grade de libertate.
Prima metodă folosită este controlul simultan al regulatoarelor PID și logica Fuzzy pentru a folosi avantajele celor trei metode în controlul manipulatoarelor. Rezultatele obținute prezintă robustețe împotriva incertitudinilor modelului și al perturbațiilor din afară, un răspuns rapid al legii de control pentru orice modificare a referinței, precum și ajustarea on-line a parametrilor de amplificare cu ajutorul logicii fuzzy.
În al doilea caz studiat, autorul a folosit o combinație dintre SMC și controlul Fuzzy în care s-au luat în considerare trei aspecte ale controlului manipulatoarelor: limitarea cuplului de control datorită saturării actuatoarelor, frecarea și incertitudinile din modelare.
Al treilea caz este unul mai complex, realizat din dorința de a obține o precizie cât mai mare a poziționării roboților. Astfel autorul a folosit un procedeu cu auto-învățare și a combinat controlul mișcării la alunecare cu un control PID și unul bazat pe rețele neuronale. În acest caz, trebuie să ne gaândim că SMC este o metodă robustă în fața incertitudinilor dar este dependentă de structura modelului și necesită amplificări mari de control. De aceea s-a folosit abordarea rețelelor neuronale. Adunând toate acestea într-o schemă de control a poziționării unui manipulator rigid, s-a realizat un control stabil Lyapunov, cu un răspuns de mare precizie.
Toate simulările, au fost realizate pe un manipulator cu două grade de libertate și au prezentat îmbunătățiri față de metoda convențională SMC. Totuși, controlul s-a realizat în spațiul articulațiilor lucrul de înseamnă că nu s-au luat în calcul incertitudinile de modelare a cinematicii inverse. De aceea, s-a putut pune problema poziționării de mare precizie.
În lucrarea [137] publicată în 2008, autorii, reușesc să folosească controlul mișcării la alunecare pentru a realiza un control hibrid forță/poziție ce poate să controleze o serie de roboți cu brațe flexibile. Analiza stabilității au realizat-o plecând de la anumite ipoteze și date de intrare: în primul rând se cunosc datele constructive ale robotului, spre exemplu, lungimile segmentelor din care este construit; de asemenea, matricea Jacobi are rangul maxim; iar mediul este presupus a fi rigid.
Controlul mișcării la alunecare s-a bucurat de o atenție sporită din partea anumitor cercetători și s-a dezvoltat, reușind prin anumite procedee de abordare inteligentă să fie îmbunătățit. De asemenea, cercetările realizate, au lăsat loc de îmbunătățiri datorită faptului că majoritatea cercetărilor s-au axat pe combinarea dintre diferite medote și nu neapărat pe perfecționarea lor. Mai mult, cercetările în domeniul roboticii pe acest domeniu, au dorit să realizeze experimente în spațiul articulațiilor pentru demonstrarea eficienței legilor de control, deși în practică, metodele de control necesită referințe în spațiul operațional, pentru ca roboții să poată interacționa conform dorințelor operatorului, cu mediul de lucru.
2.4. Stadiul actual al cercetărilor privind tehnici de comutare ale metodelor de control
Controlul hibrid forță-poziție clasic, nu are nevoie de o funcție cu rol de supervizor ce să realizeze trecerea de la o schemă de control la alta, deoarece, legile de control sunt îmbinate apriori în modul dorit de dezvoltator. Dacă în schimb legea de control hibrid nu mai este cea clasică, atunci este posibil să fie necesar a se implementa și o funcție ce ține locul unui supervizor ce comută între anumite legi de control atunci când condițiile impuse sunt îndeplinite.
Un supervizor bazat pe o mașină de stări, este prezentat în lucrarea [155], în care autorii, au implementat un control hibrid pe un sistem robot destinat chirurgiei noninvazive. Pentru aceasta, s-au utilizat două metode de control. Prima este metoda clasică PID iar cea de a doua este un control bazat pe modele ce împreună realizează un control hibrid datorită legii de comutare între cele două legi de control. Pentru aceasta, în funcție de obiectivul impus robotului, legea de comutare, determină ce metodă să folosească pentru fiecare sarcină a robotului.
Figura 2.4.1 – Diagrama de control hibrid cu supervizor[155]
Figura 2.4.1 prezintă schema propusă de autorii lucrării [155] pentru implementarea supervizorului realizat. Acest supervisor, este bazat pe un automaton de stări, ce alege între cele două legi de control, în funcție de poziția end-efectorului robotului medical controlat. Astfel, autorii au ales ca cele două stări ce determină metoda de control folosită să fie determinate de șase evenimente. Aceste 6 evenimente sunt declanșate de poziția end-efectorului în raport cu axele spațiului Cartezian în care robotul se mișcă, împărțind spațiul de lucru în șase semiplane.
Demonstrarea rezultatelor obținute, a fost realizată mai întâi prin simulare cu ajutorul programului de modelare Matlab Simulink împreună cu uneltele din pachetul SimMechanics. Astfel, autorii au demonstrat rezultatele înainte să le implementeze pe robotul real, precum și ajustarea parametrilor sistemului de control, pentru a ajunge în limitele de precizie și repetabilitate dorite.
În comparație cu alte metode, controlul hibrid prezentat de autori, este considerat a avea o performanță mai mare comparată cu un control simplu. Rezultatele obținute de precizie, repetabilitate și stabilitate a sistemului robot controlat s-au încadrat în limitele impuse de autori, rezultând un sistem de control stabil ce poate fi folosit cu succes în poziționarea robotului medical fără a cauza probleme pacienților.
Această aplicație demonstrază capacitatea algoritmilor hibrizi de a îndeplini o multitudine de sarcini în condiții în care precizia este absolut necesară pentru a nu cauza daune celor din mediul de lucru. Și în plus, faptul că legile supervizoare de comutare bazate pe un automaton de stări sunt utile și își îndeplinesc obiectivele cu succes.
Legile de comutare și alegere a anumitor metode de control, pot fi comparate cu cele ce aleg uneltele de lucru pentru anumite mașini spcializate în prelucrarea de componente, în care numărul de unelte necesare este foarte mare. De aceea este necesar studierea acestor metode ce sunt utile în determinarea legilor de comutare în domeniul roboticii.
În lucrarea [156] din 2012, autorii prezintă o lege decizională bazată pe o logică hibridă și fuzzy, pentru selectarea uneltelor necesare mașinilor unelte pentru realizarea unor utilaje adaptabile oricăror cerințe de prelucrare.
Astfel, autorii au realizat un system de decizie (DSS) ce folosește abordarea hibridă a proceselor analitice fuzzy. Această metodă evaluează criteriile de determinare a uneltei necesare, sau mai abstract, determină ieșirea necesară sistemului, iar rezultatului îi este aplicată metoda Prometheus [156]. De aceea este necesar să se implementeze o sortare a cariteriilor și o serie de funcții ale preferinței dezvoltatorului sau utilizatorului mașinii. Metoda Prometheus fiind bazată pe o extensie a noțiunii de criteriu de selecție. Autorii rezolvă incertitudinea deciziilor luate prin introducerea proceselor analitice ierarhice fuzzy, ce împreună cu criteriile de evaluare a priorităților, reușesc să găsească respectivele criterii pentru a lua decizia corectă. Simularea realizată are capacitatea de a folosi un număr nelimitat de criterii dar și abilitatea de a schimba valorile încrederii fiecărui criteriu afectând deciziile ulterioare. Astfel autorii au realizat un program de decizie ce este dinamic și ai cărui criterii de selecție se adaptează în mod continuu, pentru ca decizia următoare să poată fi luată mult mai repede.
Rezultă că acest sistem dezvoltat de autori, de alegere a uneltelor, face o selecție a uneltelor necesare pentru ca obiectivele propuse să fie îndeplinite. De aceea, acest sistem de slecție și comutare poate fi integrat unui sistem robotic, rezultând un sistem complex ce poate alege o anumită metodă de control în funcție de obiectivele sistemului, iar acest sistem se adaptează în funcție de necesitățile din acel moment pentru o anumită sarcină.
O altă metodă de realizare a algoritmilor de comutare este prezentată în 2013 în lucrarea [157]. Autorii acestei lucrări, au dezvoltat o metodă de comutare bazată pe histerezis. Astfel, sunt realizate o serie de funcții de comutare bazate pe filtre cu frecvență finită.
Deoarece prin lucrarea lor, autorii au dorit realizarea comutării prin filtre, problema se pune în a realiza o familie de filtre de frecvență finită. Deoarece domeniile filtrelor propuse se suprapun, este ușor de văzut de ce autorii au dezvoltat metoda de comutare bazată pe histerezis.
Figura 2.4.2 prezită regula de comutare realizată de autori, ce se bazează pe histerezis, în care se realizează comutarea între două filtre Fi și Fj. Traiectoriile (a) și (b) prezintă mecanismul de comutare atunci când parametrul P se deplasează din punctul Pi în punctul Pj sau invers. Iar comutarea, în cazul prezentat, se realizează atunci când traiectoria parametrului monitorizat ajunge la una dintre suprafețele de comutare.
Figura 2.4.2 – Regula de comutare bazată pe histerezis
Ca și metode de comutare, s-au cercetat și realizat o gamă destul de mare și diversificată de către cercetători, iar aceste metode pot fi cu ușurință adaptate legilor de control folosite în robotică. Pe lângă realizarea acestor metode de comutare, este necesar ca dezvoltatorii legilor de control ce folosesc astfel de componente, să aibe în vedere stabilitatea acestora, determinându-le înclinația spre instabilitate prin metode matematice (metoda Lyapunov), sau prin metode inginerești bazate pe simularea pe calculator a legilor de comutare și control pentru a ajusta parametrii acestora prin observațiile realizate.
3. Probleme specifice ale structurii, cinematicii și dinamicii roboților mobili
3.1. Probleme specifice structurii roboților mobili pășitori
Un robot mobil pășitor este de cele mai multe ori format din mai multe lanțuri cinematice seriale, unite între ele de un corp rigid sau articulat, prin intermediul unor articulații. Lanțurile cinematice seriale sunt formate din segmente ce fac legătura între articulații. Toate articulațiile robotul formează spațiul articulațiilor, iar acestea pot fi de mai multe tipuri:
articulații de rotație (R) – exemplu: articulația unei balamale
articulații de translație (T) – exemplu: articulația prezentă la o antenă radio
Mai mult, articulațiile pot avea unul sau mai multe grade de libertate în funcție de tipul articulației. Pentru articulațiile de translație sau prismatice, putem avea articulații ce se deplasează pe o singură axă (un grad de libertate), pe două axe (două grade de libertate) sau pe toate cele trei axe carteziene (trei grade de libertate). Pentru articulațiile de rotație putem avea și aici unul, două sau trei grade de libertate. De asemenea, se pot realiza o multitudine de combinații între aceste două mari categorii de articulații.
De cele mai multe ori, roboții mobili pășitori folosesc articulații de rotație, cu unul (articulații de rotație simple), două sau chiar trei (articulații sferice) grade de libertate fiecare.
Parametrii variabili al acestor două tipuri de articulații sunt unghiul de rotație „” al articulației de rotație și deplasarea „d” a articulației prismatice.
În realizarea structurii cinematice a unui robot, este necesar a se lua în calcul toate variabilele posibile ce pot aduce modificări structurii acestuia. Pentru un manipulator serial, cele mai folosite articulații sunt cele de rotație dar sunt adăugate și grade de libertate de translație de câte ori este nevoie de o deplasare liniară. Deși cu două articulații de rotație se poate simula deplasarea liniară a celei de translație, când vine vorba de calcularea parametrilor fiecărui motor, problema se complică deoarece articulațiile de rotație introduc soluții suplimentare sistemului ce trebuie să o aleagă pe cea mai bună.
Pentru un robot mobil pășitor, soluțiile cele mai întâlnite sunt cele bazate pe articulații de rotație cu două, trei (figura 3.1.1[132]) sau mai multe grade de libertate. Dar cercetătorii au realizat și roboți mobili pășitori cu picioare cu un singur grad de libertate[133] (figura 3.1.2).
Figura 3.1.1 – Picior cu 3 grade de libertate folosit în construirea roboților mobili pășitori [132]
Figura 3.1.2 – Robot mobil pășitor cu picioare ce prezintă un singur grad de libertate [133]
O aplicație comercială a picioarelor cu trei grade de libertate o reprezintă roboții hexapozi ca și cel din figura 3.1.3[134].
Figura 3.1.3 – Un robot hexapod cu picioare ce prezintă trei grade de libertate [134]
Un alt exemplu de realizare a unui picior al roboților mobili pășitori este cel din figura 3.1.4 [131] în care autorii au realizat o structură în care unul dintre gradele de libertate de rotație are un actuator liniar (de translație).
Figura 3.1.4 – Picior cu două grade de libertate de rotație, cu actuator liniar pentru articulația din genunchi [131]
Problemele cel mai des întâlnite în realizarea unor astfel de roboți le reprezintă realizarea unor structuri cât mai ușoare, rezistente, pentru a putea realiza structuri cât mai diferite și care să îndeplinească obiectivele propuse (spre exemplu deplasări pe terenuri moi, sau cu denivelări mari și chiar structuri pentru roboți destinați reabilitării locomotorii a persoanelor cu dizabilități). O altă problemă întâlnită destul de des o reprezintă dimensiunile motoarelor ce pot dezvolta cupluri mari. Rezolvarea cea mai la îndemână o reprezintă adăugarea de reductoare ce nunumai că ridică limita maximă a cuplului nominal dar asigură o creștere a preciziei de poziționare. Partea negativă o reprezintă accelerația diminuată a articulației.
Dacă acum câțiva ani realizarea unei structuri cinematice reprezenta un lucru dificil, acum, datorită mulțimii ridicate de programe software ce pot realiza cu ajutorul tehnicilor 3D o simulare realistă a structurilor cinematice, procesul de dezvoltare și creare a unor astfel de structuri este mult simplificat.
3.2. Probleme specifice cinematicii roboților mobili pășitori
Plecând de la structura unui lanț cinematic, pentru anumite valori ale variabilelor din articulații, este necesar să se cunoască poziția fiecărui segment din lanțul cinematic. Aceste poziții ale segmentelor sunt calculate în relativ, unul față de celălalt, folosind ecuațiile cinematice.
3.2.1. Matricea de transformare
Pentru aceasta, se asociază fiecărui segment „i” un sistem de coordonate carteziene (xi, yi, zi) fixat pe acel segment (figura 3.2.1). Pentru aceasta se folosește de obicei reprezentarea Denavit-Hartenberg (D-H). Referința întregului sistem este luată în baza manipulatorului (segmentul 0) având rol și de sistem inerțial de referință[85].
Figura 3.2.1 Relațiile cinematice dintre segmente, pentru un lanți cinematic serial
Relația dintre sistemul de coordonate „i-1” și „i” este dat de matricea de transformare:
(3.2.1)
Majoritatea parametrilor din matricea de transformare, sunt ficși. Parametrii segmentelor sunt „i” (unghiul de rotație dintre cele două capete ale segmentului „i”) și „ai” (lungimea segmentului „i”). Parametrii articulațiilor sunt „i” (unghiul din articulație) și „di” (deplasarea articulației). Dacă articulația „i” este articulație de rotație, atunci variabila corespunzătoare este „i”, iar deplasarea „di” este constantă. Dacă articulația „i” este prismatică, atunci variabila corespunzătoare este „di”, iar unghiul „i” este constant. Parametrul „ai” pentru o articulație prismatică este nul, deoarece lungimea segmentului este variabilă și descrisă de „di” [85].
Conform convenției D-H, pentru o articulație de rotație, rotația „i” are loc în jurul axei „zi-1”, iar pentru una prismatică, de-alungul axei „zi-1”. Astfel, coordonatele segmentului „i” sunt atașate de capătul dinspre end-efector.
Matricea de transformare Ai este o funcție definită de un singur parametru, variabila articulației, deoarece toți ceilalți parametrii ai respectivei articulații sunt ficși. Astfel, dacă un manipulator are „n” segmente, vectorul de variabile ale articulațiilor, „q”, este un vector de dimensiune „n”, format din variabilele tuturor articulațiilor. Deci, „q” este în general, o combinație de unghiuri „i” și lungimi „di”. De exemplu, pentru un manipulator de tipul RRR (rotație-rotație-rotație), „q” este:
(3.2.2)
Componentele vectorului „q” sunt variabilele „qi” ce pot reprezenta fie un unghi „i”, fie o distanță „di”.
3.2.2. Transformarea omogenă
Matricea de transformare A, este o matrice omogenă de forma:
(3.2.3)
unde, Ri este o matrice de rotație, iar Pi este un vector de translație. Dacă avem un punct mi în spațiu, descris în raport cu sistemul de coordonate al segmentului „i”, același punct are coordonatele în raport cu segmentul „i-1” date de relația:
(3.2.4)
Transformarea omogenă, este o matrice de dimensiune pentru a putea descrie rotațiile și translațiile, iar vectorii de translație sunt de ordinul 4 și au forma:
(3.2.5)
unde, xi, yi, zi sunt coordonatele punctului în sistemul de coordonate i.
Din relațiile (3.2.3) și (3.2.4) rezultă:
(3.2.6)
în care, avem doar o rotație Ri, aplicată coorodonatelor din sistemul de coordonate „i”, plus o translație Pi.
Matricea de rotație R, are proprietatea de a fi ortogonală, adică . Această matrice are o singură valoare proprie, , iar vectorul propriu este axa de rotație. O rotație în jurul axei x, va arăta în felul următor[85]:
(3.2.7)
3.2.3. Matricea de transformare T
Pentru a obține coordonatele unui punct al manipulatorului în raport cu sistemul de coordonate al bazei (segmentul 0), se folosește matricea:
(3.2.8)
Apoi, dacă avem coordonatele unui punct mi în raport cu sistemul de coordonate atașat segmentului „i”, coordonatele aceluiași punct în raport cu sistemul de coordonate al bazei (segmentul 0) este dat de relația:
(3.2.9)
Definim pe Ti ca un lanț cinematic de transformări.
Matricea T este definită de relația:
(3.2.10)
unde, n este numărul de segmente ale manipulatorului. Astfel, dacă mn sunt coordonatele unui punct definit pe ultimul segment, coordonatele sale în raport cu segmentul de bază sunt:
(3.2.11)
Această relație este foarte importantă, deoarece coordonatele unui punct din sistemul de coordonate „n”, poate reprezenta poziția unui obiect în raport cu end-efectorul. În plus, punctul m0 reprezintă poziția obiectului în raport cu sistemul de coordonate de bază, ce este poziția absolută a obiectului, în raport cu baza manipulatorului[85].
3.2.4. Cinematica directă
Cinematica directă presupune aflarea poziției și orientării end-efectorului în raport cu baza manipulatorului știind parametrii unghiulari și de translașie ce determină respectiva poziție și orientare. Acestea sunt aflate folosind matricea de transformare T ce poate fi descrisă de următoarea relație:
(3.2.12)
Astfel, orientarea axelor din sistemul de coordonate al end-efectorului sunt descrise în raport cu sistemul de coordonate al bazei, prin intermediul matricei de rotație R = [n o a]. Originea sistemului de coordonate a end-efectorului are o poziție P în sistemul de coordonate al bazei.
Fig. 3.2.2 Un end-efector în raport cu baza manipulatorului
Cei trei vectori, n, o, a și p sunt definiți ca în figura 3.2.2. Vectorul „a” este axa de apropiere a uneltei; vectorul „o” este axa de rotație a orientării uneltei; vectorul „n” este ales conform regulii mâinii drepte în raport cu axele „a” și „o”.
Prin urmare, (n, o, a) sunt coordonatele unui sistem cartezian (x, y, z) atașat end-efectorului. Vectorul de poziție „p” conține locația originii sistemului (n, o, a) în raport cu sistemul platformei bază.
Această reprezentare a orientării end-efectorului dată de sistemul (n, o, a) nu este eficientă. Acest sistem de coordonate este format dintr-o matrice de dimensiune , având astfel 9 parametrii. Matricea pătratică este una de rotație ce are coloanele ortogonale, rezultând că cei 9 parametrii nu sunt independenți unul față de celălalt. Alte metode mai eficiente de specificare a orientării end-efectorului ar fi unghiurile lui Euler. Dar motivul pentru care se folosește acest sistem (n, o, a) este acela că matricea de transformare T se poate calcula mai ușor folosind matricele A în funcție de parametrii manipulatorului și variabilele articulațiilor[85].
3.2.5. Definirea matricei Jacobi
Dacă avem o transformare neliniară pornind de la variabilele articulațiilor și ajungând la ,
(3.2.13)
se poate defini Jacobianul asociat cu ca:
(3.2.14)
Matricea Jacobi se poate folosi în liniarizarea buclei de reacție și deci în controlul manipulatoarelor. Este de asemenea mijlocul prin care se poate transforma viteza, accelerația și forța dintre sistemele de coordonate.
3.2.6. Cinematica inversă
Cinematica inversă joacă un rol foarte important în controlul și simularea de corpuri articulate. De cele mai multe ori, aceste corpuri, prezintă numeroase grade de libertate, făcând foarte dificilă sarcina de a controla și anima toate aceste corpuri articulate unul cu celălalt. Cinematica inversă este problema inversă cinematicii directe, în care parametrii cunoscuți reprezintă poziția și orientarea end-efectorului unui robot, iar necunoscutele sunt unghiurile și deplasările din articulații.
Folosind un algoritm de calcul a cinematicii inverse, se introduce traiectoria dorită a end-efectorului, iar calculele de conducere și mișcare a corpurilor articulate sunt efectuate de algoritmul de calcul. Pentru aceasta, algoritmul poate fi folosit în simularea performanțelor unor sarcini reale pentru manipulatoare articulate.
Majoritatea sistemelor de simulare și vizualizare a unor reprezentări computerizate și animate a corpurilor articulate au preluat tehnica de calcul a cinematicii inverse din robotică. În aceste abordări computerizate, problema cinematicii inverse este analizată ca un sistem de ecuații neliniare sau ca o problemă de optimizare ce poate fi rezolvată ca un algoritm iterativ. Deoarece algoritmii de calcul a cinematicii inverse sunt concepuți pentru abordarea problemelor roboticii, aplicarea lor directă în simulările pe un calculator nu este posibilă, iar de cele mai multe ori aceasta prezintă numeroase probleme [86].
Pentru un manipulator compus dintr-un lanț cinematic serial, problema cinematicii inverse este de a găsi valorile poziției din articulații atunci când se cunosc poziția și orientarea end-efectorului în raport cu sistemul de coordonate al bazei și ținând cont de parametrii geometrici ai întregului ansamblu robot. Altfel spus, se calculează poziția din articulații știind transformarea omogenă dintre două elemente importante. Pentru cazul unui manipulator serial ce prezintă șase grade de libertate, transformarea este notată cu . Dacă ne uităm la formularea acestei transformări, descrisă de cinematica directă, se poate observa că problema cinematicii inverse pentru manipulatoare seriale, necesita soluționarea unui set neliniar de ecuații. Pentru cazul manipulatorului cu șase grade de libertate, trei dintre ecuații descriu vectorul de poziție în cadrul transformării omogene, iar celelalte trei descriu matricea de rotație. Pentru cazul matricei de rotație, aceste trei ecuații nu pot fi calculate pornind de la același rând sau coloană, din cauza dependenței din interiorul matricei de rotație.
Pornind de la aceste ecuații neliniare, este posibil să nu existe soluție de rezolvare a sistemului, sau este posibil să existe soluții multiple[87]. Pentru ca sistemul creat să aibă soluție, este necesar ca poziția și orientarea end-efectorului să fie cuprinsă în spațiul de lucru finit al manipulatorului. Atunci când se obțin soluții, acestea nu pot fi expuse întotdeauna în forme închise și astfel este necesară folosirea unor metode numerice[88].
Altfel spus, poziția end-efectorului este specificată în coordonatele bazei de către matricea de trasnformare T, dar poziția sa este descrisă de variabilele din articulații qi. Astfel, se poate calcula matricea T știind vectorul q. Iar găsirea matricei T din vectorul q este problema cinematicii directe.
Problema cinematicii inverse constă în determinarea varibilelor din articulații qi, știind setul de date (n, o, a, p) din matricea T:
(3.2.15)
Această problemă este importantă pentru controlul manipulatoarelor, deoarece pentru o anumită sarcină se specifică poziția și orientarea carteziană a end-efectorului. Apoi, soluția problemei cinematicii inverse calculează variabilele qi, din articulații, necesare poziționării și orientării manipulatorului.
Datorită funcțiilor implicate în realizarea matricei T, relația dintre qi și (n, o, a, p) este una neliniară. Dar acestea trebuiesc inversate pentru a obține cinematica inversă și astfel aflarea soluției qi. Soluțiile pentru qi, nu sunt în general unice. Dacă ultimele trei axe ale manipulatorului se intersectează într-un punct, atunci se poate împărți problema cinematicii inverse în două părți. Dar, pentru un manipulator cu șase grade de libertate, se determină întâi q1, q2 și q3 necesare obținerii poziției carteziene P. Apoi, sunt determinate variabilele din articulația end-efectorului, q4, q5 și q6 ce sunt folosite la obținerea orientării (n, o, a).
Atunci când vine vorba de controlul unui manipulator sau picior de robot mobil, este nevoie de cinematica directă pentru a afla poziția end-efectorului sau a tălpii piciorului. Pentru aceasta se poate folosi destul de ușor sistemul de calcul, dezvoltat de către Dennavit-Hartenberg. Dar când este necesară calcularea parametrilor din articulații, necesari poziționării într-un anumit punct a manipulatorului sau a piciorului, atunci se folosesc algoritmi de calcul a cinematicii inverse. Deși este ușor a folosi in scheme și pe hartie rezultatul unor astfel de algoritmi, acest lucru devine mult mai dificil atunci când este nevoie de calcularea explicită a valorilor.
Principala problemă în aflarea parametrilor de poziție din articulații este apariția singularităților în calculele cu matrice, precum și determinarea unui singur set optim de date. Deoarece pentru poziționarea într-un anumit punct, un manipulator poate avea, în funcție de numărul de grade de libertate, un număr mare de posibilități, este necesară aflarea soluției optime și minime. Această soluție este găsită de multe ori aplicând o normă, sau calculând distanța minimă dintre punctele ce determină articulațiile robotului.
Dacă alegerea unei soluții cât mai optime dintr-un set de valori posibile este relativ ușoară, eliminarea punctelor de singularitate s-a dovedit a fi una dintre problemele cele mai mari ale cinematicii roboților. Astfel, dacă se dorește un control în spațiul operațional al unui robot mobil pășitor, atunci va fi nevoie de calcularea erorii în spațiul articulațiilor, plecând de la eroarea în spațiul operațional, calculată prin intermediul cinematicii directe. Pentru aceasta, calcularea valorilor de poziție ale articulațiilor, plecând de la valorile de poziție ale tălpii piciorului, necesită un algoritm de calcul a cinematicii inverse.
Principalele metode de calculare a cinematicii inverse constau în calcularea erorilor de poziționare a articulațiilor, folosind matricea Jacobiană. Prima metodă și cea mai intuitivă de găsit este aceea ce folosește inversa matricei Jacobiene, rezultând relația . Este evident că pentru aflarea erorii este necesar calcularea inversei matricei Jacobiene. Deoarece această matrice are parametrii variabili, calculul trebuie realizat în timp real, de fiecare dată când este necesar a se cunoaște valorile lui . Deși la prima vedere pare o metodă cât se poate de directă si precisă, apare problema punctelor de singularitate, când determinantul matricei Jacobiene are valoarea zero. Deoarece pentru majoritatea structurilor manipulatoarelor, există puncte de singularitate în poziționarea lor, acest lucru poate duce ca manipulatorul să se blocheze sau ca mișcarea lui să nu fie conform referinței, ajungând chiar la deteriorarea obiectelor din jurul manipulatorului.
Pentru evitarea acestor puncte de singularitate se folosește matricea Jacobi pseudo-invesă. Totuși și această metodă are problemele sale. Astfel, atunci când talpa piciorului robotului mobil se află în apropierea unui punct de singularitate, metoda de control va conduce motoarele din articulații către unghiuri foarte mari față de poziția curentă, chiar și atunci când end-efectorul este foarte aproape de punctul de referință. Partea bună a acestui algoritm este că legea de control nu va încerca să miște manipulatorul către o poziție imposibilă, iar în practică, rotunjirea erorilor face ca end-efectorul să ocolească de cele mai multe ori, punctele de singularitate.
Metoda de calcul a cinematicii inverse ce elimină problema punctelor de singularitate, este aceea ce folosește în calcule, matricea Jacobiană transpusă. Deoarece calcularea acestei matrice nu necesită cunoșterea matricei invese, ci doar elemetele matricei Jacobiene, punctele de singularitate nu au niciun efect asupra legii de control. Formula generală de calcul este în care se poate observa apariția coeficientului . Acest coeficient, calculat folosind valorile lui e (eroarea), împreună cu matricea Jacobi precum și cu transpusa sa, este responsabil de precizia algoritmului. De aceea, această metodă nu este la fel de precisă în urmărirea referinței ca și metoda ce folosește matricea Jacobiană inversă. Dar, în ciuda urmăriri mai lente a referinței, eliminarea completă a problemelor legate de punctele de singularitate, face ca această metodă să fie mai atractivă. De aceea, în această lucrare, s-a folosit algoritmul de calcul a cinematicii inverse bazat pe matricea Jacobi transpusă, în anumite situații detaliate, dar și calcularea efectivă a parametrilor, prin metode geometrice pentru obținerea valorilor reale din articulațiile robotului.
3.3. Probleme specifice dinamicii roboților mobili pășitori
În timp de ecuațiile cinematice descriu structura și mișcarea unui robot, acestea nu iau în considerație parametrii ce apar datorită forțelor și momentelor din sistemul mecatronic. De aceea, se folosesc ecuațiile ce descriu dinamica unui robot, pentru a descrie explicit relația dintre forțele de acționare și mișcarea robotului. Aceste ecuațiie sunt importante în realizarea și conceperea roboților, precum și în simularea și animarea lor.
Problema simulării numerice a sistemelor compuse din trei componente structurale, cum ar fi manipulatoarele, este de obicei tratată ca două probleme separate: problema dinamici directe pentru calcularea accelerațiilor sistemului și problema integrării numerice pentru a avansa în timp starea sistemului. Interacțiunea acestor două probleme poate fi importantă și a dus la noi concluzii despre eficiența totală a algoritmilor de simulare a sistemelor cu mai multe corpuri[120]. În particular, cele mai rapide metode pentru dinamica directă nu sunt neapărat și cele mai stabile numeric și în cazuri rău condiționate pot încetinii cel mai des întâlnite metode, cu integrare adaptivă a mărimii pasului. Acest fenomen este denumit formularea rigidității[119].
Simularea dinamicii roboților a fost folosită în sarcini off-line cum ar fi testarea modelului unui robot, programarea roboților și validarea blocurilor de control. Recent, necesitatea pentru performanța în timp real a devenit foarte importantă pentru aplicațiile on-line, cum ar fi mediile virtuale pentru antrenarea operatorilor umani, afișaje predictive pentru teleoperare cu întârziere de timp și dezvoltarea unor scheme avansate de control al roboților. De aceea a devenit foarte important să se înțeleagă și compara performanțele actuale ale algoritmilor de simulare[121].
De acum 3 decenii de când s-a început munca pentru dinamica roboților, s-au adus numeroase contribuții. În domeniul dinamicii mecanismelor, cercetătorii ce s-au orientat spre studiul roboților, s-au axat mai mult pe eficiența computațională, pentru a obține viteze de calcul superioare, cu scopul de a dezvolta roboți ce pot lua decizii în timp real. Cei mai mulți algoritmi eficienți computațional, dezvoltați pentru calculul dinamicii, sunt aplicabili unei game mari de mecanisme, și au fost dezvoltați de către cercetători ce studiază comportamentul și controlul roboților[110- 113].
Pentru roboți ce nu sunt îngrădiți în mișcări de contactul cu mediul, nu sunt necesari algoritmi de control în buclă de reacție, iar pentru simularea unor asemenea roboți, metoda eliminării duce la o formulare ODE (ecuații diferențiale ordinare) ale ecuațiilor mișcării[119]:
(3.3.1)
unde este vectorul de dimensiune Nx1 al cuplurilor (forțelor), aplicat de actuatoarele articulațiilor; q este vectorul de dimensiune Nx1 al variabilelor articulațiilor (și sunt vitezele și respectiv accelerațiile din articulații; M este matricea de dimensiune NxN a inerțiilor în spațiul articulațiilor (JSIM-joint space inertia matrix) sau matricea inerțiilor generalizate; c este vectorul de dimensiune Nx1 ce reprezintă cuplurile (forțele) datorate acclerației gravitaționale, accelerației centrifugale și Coriolis, și oricare moment și forțe exterioare ce acționează asupra end-efectorului manipulatorului. Cu N s-a notat numărul de grade de libertate ale manipulatorului respectiv.
Deși cea mai importantă parte a unui algoritm de control este eficiența computațională, sunt importante și alte aspecte ale problemei dinamicii. Pentru aceasta, algoritmii trebuie să fie formulați, folosind un set compact de ecuații pentru ușurința dezvoltării ulterioare a algoritmilor. Mai mult, este necesară introducerea acestor relații într-un algoritm recursiv, pentru a se putea prelua eficiența și rapiditatea computațională a acestor tipuri de algoritmi. Utilizarea notațiilor spațiale[114, 115] și a operatorilor algebrici spațiali este folositoare în această privință. De asemenea, este necesară dezvoltarea de algoritmi generali, ce nu sunt condiționați de geometria sistemului mecanic al roboților. Această cerință a apărut datorită faptului că primii algoritmi erau concepuți pentru manipulatoare specifice, cu lanțuri cinematice deschise, cu articulații de rotație sau prismatice, rezultând algoritmi ultra specializați, specifici numai unor anumite structuri de manipulatoare[111-113]. De aceea a apărut nevoia dezvoltării unor algoritmi de calcul pentru manipulatoare cu articulații date de un model generalizat, și care pot fi aplicați unui set mult mai larg de configurații ale sistemelor robot[110, 114].
Abordarea clasică în exprimarea ecuațiilor mișcării se bazează pe formularea Lagrange[114, 116]. Acești algoritmi bazați pe formularea Lagrange erau de ordin O(N4), și trebuiau să fie adaptați pentru controlul în timp real. De aceea, s-au căutat algoritmi eficienți, de ordin mai mic, pentru trei tipuri de calcule majore:
Dinamica inversă, în care se calculează cuplul/forțele din actuatoarele articulațiilor, plecând de la o traiectorie a manipulatorului, dată de poziție, viteză și accelerație.
Dinamica directă, în care se calculează accelerațiile din articulații, plecând de la cuplul/forțele din articulații.
Matricea de inerție a manipulatorului, ce specifică accelerațiile din articulații în raport cu forțele din aceleași articulații.
Dinamica inversă este folosită în controlul în buclă de reacție, iar dinamica directă este necesară pentru simulare. Matricea de inerție este folosită în analizarea datelor, în controlul în buclă de reacție, pentru a liniariza dinamica și este o parte integrată a multor metode de calcul a dinamicii directe.
Ecuațiile dinamicii mișcării asigură relația dintre actuatoare (comandă) și forțele de contact ce acționează asupra robotului precum și mișcarea și accelerația ce rezultă din acesta. Dinamica este importantă pentru dezvoltarea controlului și simularea structurilor robotizate. Un număr de algoritmi reies din această nevoie de simulare și control: algoritmi de dinamică inversă și dinamică directă, algoritmi de calcul a matricei inerțiale în spațiul articulațiilor și în spațiul operațional.
În această lucrare s-au folosit ecuațiile Euler-Lagrange pentru determinarea parametrilor dinamicii roboților, ecuații ce vor fi descrise și explicate în cele ce urmează. De asemenea, se va mai prezenta și formularea Newton-Euler deoarece algoritmul rezultat din aceasta este un algoritm foarte răspândit pentru calcularea dinamicii inverse.
3.3.1. Ecuațiile Euler-Lagrange
Ecuațiile Euler-Lagrange asigură o formulare a ecuațiilor dinamice ale mișcării echivalentă cu cele descrise de Legea a doua a lui Newton (Forța = masa * accelerația). Dar, abordarea Euler-Lagrange este mai avantajoasă pentru sisteme mult mai complexe cum ar fi roboții cu mai multe segmente unite prin intermediul articulațiilor.
Ecuația Euler-Lagrange (3.3.2), pentru care funcția L reprezintă diferenta dintre energia cinetică și cea potențială și este denumită Lagrangianul sistemului.
(3.3.2)
Energia cinetică a unui obiect rigid este suma a doi termeni: energia de translație obținută prin concentrarea întregii mase a obiectului în centrul de masă și energia cinetică de rotație a corpului din jurul centrului de masă a acelui corp. În figura 3.3.1, se observă în centrul de masă al obiectului sistemul de coordonate atașat. Astfel, energia cinetică a corpului rigid este dată de relația (3.3.3) [117].
Figura 3.3.1 – Un corp rigid generalizat împreună cu sistemul de coordonate atașat
(3.3.3)
unde, m este masa totală a obiectului, v și sunt viteza liniară și respectiv unghiulară iar I este o matrice simetrică de dimensiune 3×3, denumită Tensorul Inerțial.
3.3.2. Tensorul Inerțial
Este subînțeles faptul că vitezele liniară și unghiulară sunt exprimate în sistemul de referință inerțial, rezultând că viteza unghiulară poate fi calculată folosind matricea simetrică față de diagonala principală din relația (3.3.4)
(3.3.4)
unde, R este matricea de transformare a orientării dintre corpul atașat sistemului de coordonate și sistemul inerțial. De aceea este necesară exprimarea tensorului inerțial, I, și în sistemul inerțial pentru a putea calcula produsul TI. Tensorul inerțial relativ la sistemul de referinte inerțial va depinde de configurația corpului/obiectului. Daca vom considera că I este tensorul inerțial în locul corpului atașat sistemului de referintă, atunci între cele două matrice se poate scrie transformarea
(3.3.5)
Matricea inerțială exprimată în sistemul de referință atașat corpului este o matrice constantă independentă de mișcarea obiectului și deci este ușor de calculat.
Dacă luăm densitatea de masă a unui obiect a fi reprezentat ca o funcție de poziție, (x, y, z), atunci tensorul inerțial în sistemul de referință atașat corpului este calculat ca în relația (3.3.6) [117]:
(3.3.6)
unde,
(3.3.7)
Integralele din relația (3.3.7) sunt calculate pe spațiul ocupat de către corpul/obiectul rigid studiat. Elementele de pe diagonala principală a matricei tensorului inerțial, și anumite Ixx, Iyy și Izz, sunt numiți Momentele Principale ale Inerției în jurul axelor x, y și respectiv z. Celelalte elemente Ixy, Ixz, Iyx, Iyz, Izx și Izy sunt numite Produsele Transversale ale Inerției. Dacă distribuția masei în corp este simetrică, în raport cu sistemul de referință atașat corpului, atunci produsele transversale ale inerției sunt egale cu zero.
3.3.3. Energia cinetică pentru un robot serial cu n segmente
Dacă vom considera un manipulator serial format din n segmente, atunci putem exprima în funcție de matricea Jacobi și derivatele variabilelor din articulații, vitezele liniare și unghiulare din orice punct și orice segment al robotului. Pentru un caz în care variabilele din articulații sunt coordonatele generalizate, atunci putem considera pentru matricele Jacobi Jvi și Ji urmatoarele relații[117]:
(3.3.8)
Mai mult, dacă vom considera „mi” masa segmentului „i” al robotului, iar matricea de inerție a aceluiași segment calculată în sistemul de coordonate paralel cu sistemul de coordonate „i”, dar al carui origine este în centrul de masă al segmentului respectiv este egală cu „Ii”, atunci folosind relația (3.3.3) putem calcula energia cinetică totală a robotului:
(3.3.9)
Energia cinetică din formula (3.3.9) se mai poate scrie sub forma:
(3.3.10)
unde, B(q) este o matrice simetrică pozitiv definită ce este denumită matricea de inerție.
3.3.4. Energia potențială pentru un robot serial cu n segmente
În cazul dinamicii corpurilor rigide, singura sursă ce generează energie potențială este forța gravitațională. În anumite cazuri apar și efecte ale frecării cu mediul, dar în cazurile studiate în această lucrare acestea au fost neglijate. Astfel, energia potențială a segmentului „i” al unui robot serial poate fi calculată dacă presupunem că masa obiectului este concentrată în centrul de masă al acestuia, rezultând relația:
(3.3.11)
unde g este vectorul gravitațional în sistemul de referință inerțial iar vectorul rci este vectorul ce conține coordonatele centrului de masă a segmentului „i” al robotului. Deci, energia potențială totală pentru robotul cu „n” segmente se poate scrie sub forma[117]:
(3.3.12)
Dacă structura robotului ar conține și elemente elastice (articulații flexibile) atunci energia potențială va trebui să includă și termenii ce conțin energia acumulată în elementele elastice.
O remarcă utilă asupra energiei potențiale este aceea că energia potențială depinde numai de configurația robotului și nu și de viteza acestuia.
Deoarece în această lucrare se studiază roboți mobili pășitori cu structuri particularizate, s-au descris problemele de dinamică ale căror rezolvare această lucrare le abordează. Mai mult, metodele descrise de rezolvare a dinamicii sunt sunt detaliate pentru structuri cinematice particulare iar ecuațiile sunt rezolvate pentru metodele de control ce folosesc parametrii dinamici ai roboților, în capitolele de elaborare și cercetare a strategiilor de control hibrid forță/poziție a roboților mobili pășitori.
4. Elaborarea unor strategii de control hibrid forță-poziție pentru conducerea roboților mobili pășitori
Pentru elaborarea strategiilor de control hibrid forță-poziție, mulți cercetători și-au adus contribuția. O astfel de contribuție este realizarea unui control hibrid forță-poziție ce controlează robotul în spațiul articulațiilor. Astfel, plecând de la metoda clasica descrisă de Raibert și Craig[122], Fisher și Mujtaba[173] au schimbat schema de control hibrid folosind un set de matrice de proiecție ce au permis descompunerea unui vector în două componente perpendiculare[174] folosind o matrice de transformare. Astfel, autorii au reușit să evite singularitățile provenite din calcularea cinematicii inverse cu metode clasice și deci rezolvarea uneia din problemele controlului hibrid.
Deși numeroși cercetători au realizat scheme de control hibrid ce nu mai seamănă cu schema originală[155, 156] strategiile de control hibrid forță-poziție elaborate în această lucrare au ca punct de plecare a dezvoltării, metoda clasică a controlului hibrid forță-poziție și particularizată pentru conducerea roboților mobili pășitori.
Plecând de la schema clasică (figura 4.1) a lui Raibert și Craig[122], s-a dorit dezvoltarea unei noi scheme de control hibrid forță-poziție prin care dezavantajele unui control hibrid clasic să fie eliminate cât mai mult. Mai mult, deoarece s-a dorit elaborarea unor strategii de control hibrid forță-poziție pentru conducerea roboților mobili pășitori, au fost luate în considerare particularitățile acestor roboți în dezvoltarea schemelor de control.
Figura 4.1 – Schema clasică de control hibrid forță-poziție[122]
Dacă ne gândim că schema clasică de control hibrid forță-poziție se referă la controlul unor roboți ce sunt în permanență în contact cu suprafața de lucru, atunci controlul hibrid forță-poziție nu ar fi cel mai potrivit pentru conducerea roboților mobili pășitori, deoarece în timpul mersului, un robot pășitor va ajunge în faza de pendulare a fiecărui picior, moment în care talpa acestuia se desprinde de sol. Acest lucru face ca ramura de control în forță să fie inutilă, iar axa verticală de poziționare să nu mai fie la fel de bine controlată. De aceea, un picior al robotului mobil pășitor ar trebui controlat de legi de control cât mai potrivite pentru fiecare fază a mișcării acestuia pe toată durata unui singur pas.
Astfel, pentru a controla un robot mobil pășitor folosind controlul hibrid forță-poziție, s-a conceput o schemă de control hibrid care păstrează același format al controlului hibrid clasic, dar care să poată asigura robotului mobil pășitor legile necesare pentru fiecare fază de mers. Pentru aceasta a fost necesar a se putea schimba fiecare lege de control a robotului, atunci când poziția robotului și mediul în care se realizează deplasarea se schimbă suficient de mult pentru ca legile de control folosite în schema hibridă să nu mai fie corespunzătoare stării în care se află robotul.
De aceea, s-a realizat o schemă de control hibrid forță-poziție în care se pot adăuga numeroase legi și tehnici de control ce sunt selectate prin intermediul matricei de selecție S. În schema clasică, matricea S și deci și selecția fiecărui tip de control se efectuează în regim offline rezultând că legile de control nu pot fi schimbate decât atunci când robotul este oprit, lucru indezirabil deoarece se dorește ca robotul să aibe o mișcare cât mai uniformă și neîntreruptă. De aceea, noutatea și îmbunătățirea introdusă este de a avea o selecție online a tehnicilor de control prin intermediul matricii S. Pentru a realiza acest lucru, s-a utilizat metoda logicii neutrosophice pentru a calcula online valorile matricei S.
Logica neutrosophică este dovedită pentru comportamentul de a decide eficient între anumite stări sau opțiuni, în funcție de anumite date de intrare, așa cum și în această lucrare este prezentat acest lucru.
Cu alte cuvinte, s-a pornit în elaborarea noii strategii de control, folosind schema de control hibrid clasic, pe baza căreia s-a dezvoltat noua metodă de control. Această nouă metodă, urmărește îmbunătățirea controlului hibrid prin introducerea unei selectii dinamice a vectorului Sk ce determină cum este controlată fiecare articulație a robotului. Această tehnică poate fi comparată cu un comutator între diferite stări ale sistemului. Diferența constă în faptul că acest comutator ia deciziile în timp real, în funcție de anumite date de intrare, și va furniza la ieșire n + m matrice ce vor face filtrarea între cele „n” metode de control în forță și cele „m” metode de control în poziție a articulațiilor robotului mobil pășitor.
Așa cum a fost prezentat în capitolul de stadiu actual, s-a adoptat ideea lui Vlădăreanu[77] de a folosi logica neutrosophică pentru a dezvolta o lege de comutare între diferite legi de control folosite în a controla un robot mobil pășitor. Folosind probabilitățile de adevăr, falsitate, incertitudine și contradicție calculate pornind de la informațiile primite de la anumiți senzori, s-a calculat momentul când este necesar a fi folosită fiecare lege de control.
Figura 4.2 – Schema controlului hibrid îmbunătățit forță-poziție
Schema de control propusă pentru îmbunătățirea controlului hibrid forță-poziție este prezentată în figura 4.2. Se observă că această schemă este similară celei clasice prin faptul că pentru fiecare tip de control avem o matrice S ce selectează gradele de libertate ale robotului ce sunt controlate de respectiva lege de control. Ca și la schema clasică suma tuturor matricelor S folosite în schema de control la un moment dat, va fi egală cu matricea unitate, fiecare dintre aceste matrice fiind pătratice, cu elemente nenule numai pe diagonala principală.
(4.1)
unde, Spi și Sfi sunt matricele ce desemnează ce legi de control în poziție și respectiv în forță vor fi utilizate, iar matricea unitate InrDOF reprezintă suma acestor matrice, și are dimenziunea determinată de gradele de libertate controlate ale robotului.
Aceste matrice Spi și Sfi sunt calculate folosind date furnizate de senzorii montați pe robotul mobil pășitor. Datele senzoriale sunt preluate de blocul de Comutare Neutrosophică ce verifică datele de intrare și pe baza funcțiilor neutrosophice dar și a celor particulare respectivului robot, dezvoltate odată cu robotul, se decide în timp real ce metode de control sunt necesare pentru a controla fiecare grad de libertate a robotului mobil pășitor.
Se observă în schema de control faptul că referința de poziție a robotului este dată în coordonate Carteziene în spațiul operațional al robotului. Acest lucru face ca generarea și calcularea acestei referințe în funcție de tipul de interacțiune pe care robotul îl are cu mediul înconjurător să fie mult simplificate, iar legile de predicție și modificare a referinței în funcție de datele de echilibru și obiectiv să nu mai trebuiască să realizeze calcule complicate ale cinematicii inverse. În caz contrar fiind necesare precalcularea off-line a diferite referințe în spațiul articulațiilor pentru fiecare acțiune în parte. Acest lucru ar presupune o muncă uriașă înainte de punerea în funcțiune a robotului, dar și o eficiență computațională în timpul funcționării datorate precalculării acestor valori. Deoarece în medii reale, este practic imposibil să se genereze referințe pentru orice eveniment, mai ales că această schemă de control se folosește de mai multe legi de control diferite pentru controlul în poziție/forță, este necesară adăugarea unei funcții de calculare a cinematicii inverse a robotului, înainte ca legile de control să preia datele de referință.
Același lucru este necesar și pentru controlul în forță. Referința este generată pentru o forță pe care robotul trebuie să o aplice în spațiul operațional. Astfel, vectorul forței este preluat și prelucrat pentru ca articulațiile controlate în forță să poată urmări referința impusă.
Plecând de la schema de control hibrid dezvoltată pentru a corespunde oricărei cerințe de control a unui robot mobil pășitor (figura 4.2), aceasta se poate restrânge plecând tot de la schema originală (figura 4.1) astfel ca schema de control să fie particularizată pe cele mai comune aplicații ce folosesc roboți mobil pășitori.
Figura 4.3 – Schema de control hibrid forță-poziție restrânsă la trei legi de control
Figura 4.3 prezintă schema de control hibrid forță-poziție după ce a fost restrânsă la trei legi de control. Aceste trei legi de control (nestabilite) pot cuprinde majoritatea cazurilor de control a unui robot mobil pășitor, ce folosește un control în forță pentru susținerea greutății dinamice a robotului deoarece în timpul deplasării centrul de masă se poate deplasa, modificând greutatea susținută de un anumit picior la fiecare moment de timp. Iar cele două tipuri de control în poziție, dacă sunt alese bine, pot controla robotul în multe situații prevăzute și neprevăzute de dezvoltatorii robotului.
Figura 4.4 – Schema de control hibrid forță-poziție pentru care s-au ales legile de control
Figura 4.4 reprezintă o soluție la schemele din figurile 4.2 și 4.3, deoarece au fost alese două legi de control pentru conducerea robotului mobil pășitor. Aceste legi de control, pe lângă faptul că pot controla eficient robotul în funcție de condițiile de mediu prevăzute și aleatorii, sunt asignate fiecărui grad de libertate într-un mod dinamic. Asignarea dinamică în timpul funcționării robotului este realizată de controlul neutrosophic ce comută între o lege de control sau alta în funcție de stările robotului în raport cu mediul de lucru și măsurate de senzori montați pe acesta.
Așa cum se poate observa, schema de control hibrid propusă de această lucrare poate fi modificată astfel încât să corespună cât mai bine cerințelor de control a fiecărui robot în parte. Dar modificările pe care un cercetător sau inginer trebuie să le aducă sunt minore deoarece este necesar numai să fie selectate legile de control ce guvernează conducerea robotului respectiv.
În consecință, schema de control hibrid forță-poziție realizată este potrivită pentru conducerea oricărui robot al cărui mediu de lucru este în continuă schimbare, iar acesta trebuie să fie capabil să lucreze în condiții ce incertitudine și parametrii dinamici ai mediului de lucru ce presupune alterarea legilor de control în timp real pentru a face față noilor condiții de lucru ale robotului.
4.1. Controlul mișcării la alunecare folosind grafurile Bond
Una dintre cele mai bune metode de a simula un sistem mecanic sau electric o reprezintă metoda grafurilor Bond. Această metodă nu este la îndemâna oricui pentru a reprezenta un sistem ce trebuie condus și este nevoie de studiu, cercetări și experimentări minuțioase pentru a reuși realizarea unui asemenea graf. În schimb avantajele oferite de folosirea grafurilor Bond conduc către realizarea de sisteme simulate prin abstractizarea anumitor subseturi ale atributelor unui model[36, 183, 184].
Grafurile Bond au fost concepute de către Henry Paynter la MIT în 1959, pentru ca apoi să fie dezvoltate și îmbunătățite de Kamopp și Rosenberg (1968[187], 1975[188], 1983[189], 1990[190]), precum și de Thoma în 1975[185] și Van Dixhoom în 1981[186].
Această metodă folosește analogia efort-flux pentru a descrie un proces reprezentat grafic de componente elementare ce au unul sau mai multe porturi de intrare/ieșire. Aceste porturi sunt locurile unde componentele sistemului interacționează unul cu altul (figura 4.1.1).
Figura 4.1.1 – Un element generic al grafurilor Bond
Folosind acest tip de modelare cu grafuri Bond, s-a realizat un sistem virtual ce modelează și simulează un picior al robotului mobil pășitor. Acesti picior este prezentat în figura 4.1.2 și are două grade de libertate, ambele de rotație cu axele de rotație paralele. A fost aleasă această structură deoarece metoda de control folosită este metoda de control a mișcării la alunecare iar relațiile de calcul ale dinamicii se reduc cu un ordin, simplificând calculele realizate offline și online. Deoarece acest tip de control a fost deja descris, în continuare se vor prezenta relațiile specifice acestei aplicații.
Figura 4.1.2 – Piciorul cu două grade de libertate a unui robot mobil pășitor
Așa cum a mai fost prezentat, cuplul din articulații este calculat cu relația:
(4.1.1)
unde,
(4.1.2)
iar parametrii acestor relații sunt s – suprafața de alunecare dată de relația (4.1.3); sat – funcția de saturație folosită pentru a limita efectul de chattering dată de relația (4.1.4); K și Kv sunt matrice pătratice și diagonale ce conțin amplificări calculate folosind logica fuzzy; H,C și G sunt matricele de inerție, efectului Coriolis și centrifugal și respectiv vectorul gravitațional specifice ecuației dinamicii inverse; e – vectorul erorii de poziționare a articulațiilor; qd – referința unghiulară a articulațiilor; 1 și 2 matricele pătratice și diagonale ce definesc amplificările PID ale suprafeței de alunecare.
(4.1.3)
(4.1.4)
Așa cum a fost precizat, este folosită logica fuzzy pentru calcularea matricelor de amplificare folosite în calcularea cuplurilor din articulațiile robotului. Pentru aceasta au fost definite funcțiile membru ale celor două intrări s și s’ prezentate în figurile 4.1.3 și 4.1.4. În plus, tabelul 4.1.1 prezintă regula fuzzy de calculare a amplificărilor.
Tabelul 4.1.1 – Regula fuzzy de ajustare a amplificărilor
Figura 4.1.5 prezintă diagrama de control ce folosește controlul mișcării la alunecare pentru a controla piciorul unui robot mobil pășitor. Această diagramă a fost implementată folosind grafurile Bond, iar figura 4.1.6 prezintă implementarea motoarelor din articulații.
Figura 4.1.5 – Diagrama de control dinamic al piciorului robotului mobil pășitor[36]
După cum se observă, diagrama de control prezintă câteva zone importante. Prim ar fi generarea referinței, calcularea matricelor H, C și G precum și calcularea funcțiilor ale căror ieșire furnizează datele erorii de poziționare, amplificarea fuzzy și valoarea funcției de saturație. Umătoarea zonă este cea de control efectiv folosind metoda de control a mișcării la alunecare. Aici, este calculată valoarea suprafeței de alunecare s, valoarea funcției f și apoi, preluând toate datele funcțiilor amintite deja, se calculează valorile cuplurilor ce trebuie dezvoltate de sistemele ce formează articulațiile robotului mobil pășitor.
După calcularea cuplurilor, valorile ajung în zona de simulare a articulațiilor robotului (figura 4.1.7) și deci de simulare a mișcării robotului mobil pășitor. Aici, fiecare motor este controlat în buclă de reacție de un control PD (proporțional-derivativ) cu filtru trece bandă pentru limitarea cuplului de referință al motoarelor.
Figura 4.1.6 – Graful Bond de simulare a unui motor
Figura 4.1.7 – Sistemul de simulare a articulației robotului
Figura 4.1.7 prezintă sistemul ce simulează o articulație de rotație a piciorului robotului mobil pășitor. Se observă că pe lânga motorul al cărei diagramă este în figura 4.1.6, avem un reductor de 1/100 ce crește cuplul din articulație și precizia de poziționare unghiulară. De asemenea avem doi senzori, unui de poziție unghiulară și unul de cuplu, ale căror date sunt folosite în controlul robotului. La finalul lanțului au fost adăugate inerții pentru simularea cât mai exactă a piciorului robotului.
În realizarea simulărilor, s-au ales ca și referință două semnale în spațiul articulațiile, reprezentate de 2 sinusoide de amplitudine 2 și 2,5 radiani. Figurile 4.1.8 și 4.1.9 prezintă rezultatele obținute prin simulare. Se observă în ambele figuri, că cele două semnale de referință prezintă după un timp de 2 secunde și respectiv 3 secunde perturbații fixe reprezentate de semnale treaptă pentru a evidenția comportamentul sistemului în cazul când apar perturbații în sistem sau semnalul de referință nu este bine condiționat. Aceste perturbații sunt mai evidente în graficele erorii din cele două figuri.
Figura 4.1.8 – Articulația 1: a) Eroarea unghiulară, b) Poziția reală, c) Poziția de referință
Figura 4.1.9 – Articulația 2: a) Eroarea unghiulară, b) Poziția reală, c) Poziția de referință
Figura 4.1.10 – Eroarea articulației 1 mărită
Figura 4.1.11 – Eroarea articulației 2 mărită
Figurile 4.1.10 și 4.1.11 prezintă graficele erorilor unghiulare din articulații mărite astfel încât se observă mult mai bine precizia de poziționare. Astfel, se observă că eroarea pentru articulația 1 ajunge într-un interval mai mic de 0,25 secunde sub o valoare de +/- 0,002 radiani însemnând 0,11 grade. Iar eroarea pentru articulația 2 se încadrează în intervalul +/-0,004 radiani însemnând 0,22 grade. Pe lângă această eroare, se observă că timpul de revenire în vecinătatea suprafeței de alunecare a tălpii piciorului robotului mobil pășitor este relativ mic, lucru datorat unei îmbunătățiri aduse controlului mișcării la alunecare, și în special calculării suprafeței de alunecare pentru care componenta integrativă este eliminată atunci când eroarea scade sub un anumit prag. Acest lucru este introdus, deoarece perturbațiile introduse în sistem afectează pe termen lung componenta integrativă, aceasta păstrându-și valoarea mare până când sistemul ajunge să anuleze această valoare printr-un suprareglaj la fel de mare. Relația (4.1.5) prezintă condiția de eliminare a componentei integrative din calcularea suprafeței de alunecare.
(4.1.5)
Introducerea acestei condiții suplimentare suprafeței de alunecare nu influențează cu nimic stabilitatea metodei de control, dar reduce foarte mult suprareglajul sistemului de control datorită perturbațiilor exterioare și ajută la reducerea fenomenului de chattering ce împreună cu funcția de saturare realizează un control eficient al acestui fenomen.
Figurile 4.1.12 și 4.1.13, prezintă valorile parametrului s pentru cele două articulații, putând să analizăm mai bine comportamentul sistemului în funcție de valoarea pe care calcularea funcției pentru suprafața de alunecare o are în timpul funcționării simulării. Astfel se observă că semnul și amplitudinea lui s depinde de forma semnalului de referință precum și de viteza cu care acesta variază de la un interval de eșantionare la altul. Mai mult, se observă momentele în care apar perturbațiile prin creșterea bruscă a parametrului s, și în special al componentei derivative a acestuia, dar care scade relativ repede, compensând rapid efectele perturbației în motoarele controlate.
Figura 4.1.12 – Valoarea parametrului s pentru articulația 1
Figura 4.1.13 – Valoarea parametrului s pentru articulația 2
Dacă am compara rezultatele aceastei simulări cu ale altor cercetători, se observă că grafurile Bond reprezintă o soluție eficientă de testare a sistemelor de control a roboților mobili pășitori, deși este una dificil de realizat.
Performanțele obținute prin simulări, au arătat că modificările aduse controlului mișcării la alunecare pentru controlul unui picior al unui robot mobil pășitor sunt îmbunătățite față de rezultatele altor cercetări în acest domeniu[83, 84, 158, 182]. Aceste performanțe sunt obținute datorită folosirii eficiente a logicii fuzzy în calcularea amplificărilor, datorită modificărilor relației ce furnizează suprafața de alunecare dar și datorită folosirii grafurilor bond în demonstrarea calității metodei de control.
4.2. Controlul unui picior al robotului mobil pășitor
În acest capitol s-a realizat o simulare ce controlează un picior al robotului mobil pășitor. Acest picior, a fost ales ca cel din figura 4.2.1. Motivația alegerii piciorului cu două grade de libertate este aceea că este mult mai ușor să fie evidențiate anumite îmbunătățiri și realizări pe stucturi simplificate și care nu necesită putere mare de calcul. Astfel, figura 4.2.1 prezintă structura unui singur picior al robotului mobil pășitor, format din trei segmente constructive și două articulații de rotație. Aceste articulații de rotație au axele de rotație paralele. Rezultă astfel o structură mecatronică neredundantă ce se poate poziționa în planul de înaintare a robotului. O a treia articulație ar fi necesară pentru poziționarea în spațiul 3D dar al cărei poziționări nu este cea mai importantă, deoarece în majoritatea cazurilor robotul se deplasează pe direcția de înainte/înapoi, iar poziționarea acestei articulații este la o poziție constantă.
Dimensiunile celor două segmente ale piciorului robotului mobil pășitor sunt d1=7 și d2=5. Aceste unități au fost alese adimensional, deoarece în acest caz, simularea realizată nu ține cont de unitatea de măsură ci doar de valorile transmise și primite de către sistemul de control.
Figura 4.2.1 – Piciorul robotului mobil pășitor
Plecând de la structura prezentată, se calculează sistemul de ecuații cinematice:
(4.2.1)
Deoarece în cazul nostru valoarea lui a1 este zero, fiind segmentul de legătură cu platforma robot a articulației 1. Plecând de la această relație se calculează matricea Jacobi din relația (4.2.2).
(4.2.2)
Pentru a se calcula cinematica inversă, în acest caz s-a decis folosirea algoritmului ce folosește matricea Jacobi transpusă. Astfel, se elimină problema singularităților ce apare în cazul altor metode de aflare a datelor cinematicii inverse.
Un astfel de algoritm în care apare problema singularităților este folosirea matricei Jacobiene inverse pentru a înlocui calculele dificile ale cinematicii inverse, presupune inversarea matricei Jacobiene, rezultând următorul algoritm:
Acest algoritm este mult mai ușor de folosit față de calcularea sistemului de ecuații din relația (4.2.1) în care variabilele necunoscute sunt schimbate. Doar că acest sistem de rezolvare a problemei prezintă instabilitate datorită calculării matricei inverse ce poate prezenta singularități, ducand la o imposibilitate în calcularea erorii de poziționare, și rezultând în blocarea programului sau a mecanismului de simulare, respectiv acționare. Din această cauză se folosesc algoritmi precum DLS (Damped Least Squares=Metoda Celor Mai Mici Pătrate) sau cei ce folosesc matricea Jacobiană transpusă.
Aplicația rezultată în urma cercetărilor prezentate în aceast capitol, folosește algoritmul bazat pe matricea Jacobiană transpusă:
(4.2.3)
În relația (4.2.3), matricea Jacobiană transpusă se calculează mult mai ușor față de cea inversă, iar aceasta nu prezintă singularități. Singura diferență negativă față de ceilalți algoritmi ce pot prezenta singularități, este faptul că aceasta converge mai încet către soluție. Constanta α este aleasă pentru a minimiza noua valoare a lui e dupa ce sistemul este reîmprospătat cu noile valori calculate ale unghiurilor din articulații[191-193].
În baza acestor valori, s-a construit o aplicație Matlab SIMULINK pentru determinarea unghiurilor din articulații, pe durata a trei pași efectuați de către picior. Pentru aceasta mai întâi au fost generate traiectoriile pe fiecare axă în parte în spațiul operațional al end-efectorului. Figura 4.2.2 prezită schema din SIMULINK de generare a semnalelor de referință, iar Figura 4.2.3 prezintă graficele rezultate pentru calcularea referinței, semnalul de zero al referinței pe axa OX nefiind reprezentat.
Figura – 4.2.2 Schema SIMULINK de generare a traiectoriei
Figura 4.2.3 conține trei grafice. Primul semnal, ce consta din trei figuri trapezoidale, ce reprezintă referința pe axa OY, și anume mișcarea orizontală a tălpii robotului mobil. Cele trei parabole reprezintă mișcarea pe axa OZ, și anume mișcarea pe verticală a tălpii robotului mobil. Cel de al treilea semnal, este unul de tip treaptă, și reprezintă condiția de mișcare a piciorului în raport cu platforma robotului, sau mișcarea platformei în raport cu talpa piciorului. Astfel se împarte mișcarea piciorului în două faze, cea de urmărire a unei traiectorii în spațiu, și cea de deplasare a platformei.
Figura – 4.2.3 Referinta pe cele doua axe OY și OZ precum și semnalul de start pentru mișcarea platformei
Figura 4.2.4 prezită schema SIMULINK pentru calcularea cinematicii directe și inverse, precum și a matricei Jacobiene.
Figura – 4.2.4 Calcularea erorilor delta teta
Folosind algoritmul de calcul a cinematicii inverse bazat pe matricea Jacobi inversă, sunt calculate erorile de poziționare ale fiecărui motor în parte. În schimb, această eroare de poziționare delta teta nu este eroarea de poziționare reală ci o estimare a acesteia, dar care poate fi folosită eficient de o lege de control de tipul PID (proporțional-integrativ-derivativ) ce nu are nevoie de precizie ridicată în calcularea acestei erori, ci mai mult de o variație cât mai realistă în timp a acesteia.
În figurile următoare sunt prezentate schema de control a celor două motoare, precum și graficele rezultate în urma simulării.
Figura – 4.2.5 Buclele de control ale celor două motoare
După cum se poate observa în figura de mai sus, ambele motoare sunt controlate de trei bucle de control, una in interiorul celeilalte. Două bucle de control sunt considerate bucle interne de control ce controlează motoarele în cuplu și viteză folosind câte un control proporțional integrativ, și o a treia buclă exterioară de control, ce furnizează eroarea de poziționare a motorului, calculată prin intermediul cinematicii inverse și a matricei Jacobi Transpuse.
Figura – 4.2.6 Urmărirea referinței pe axa OY
Figura – 4.2.7 Urmărirea referinței pe axa OZ
Aceste date, ca urmare a simulării, sunt salvate într-un fișier text pentru a putea fi folosite în animația creată pentru a vizualiza mișcarea piciorului folosind acest tip de control.
Pentru aceasta, a fost creată o aplicație în programul Adobe Flash, și folosind Actionscript 3.0 s-a animat piciorul și platforma unui robot mobil pășitor pentru care a fost pus în evidență un singur picior al robotului biped sau hexapod.
Eroarea de poziționare în timpul mersului, calculată folosind cinematica inversă, este prezentată în figurile 4.2.8 și 4.2.9, pentru articulația 1 respectiv articulația 2. Valorile sunt date în grade iar valoarea maximă a erorii, după ce piciorul ajunge în poziția de referință este sub 0,6 grade, ceea ce înseamnă o eroare de poziționare mai mică de 0,17% dacă o comparăm cu maximul de 360 de grade. Aceaste valori sunt folosite în bucla de control, fiind referința de poziționare a celor două motoare. În schimb așa cum a fost precizat, eroarea de poziționare calculată prin intermediul cinematicii inverse ce folosește matricea Jacobi Transpusă, nu este la fel de precisă precum soluționarea sistemului sau folosind matricea Jacobi Inversă. De aceea eroarea de poziționare unghiulară pare mai mare decât este în realitate. De aceea este necesar să urmărim poziționarea în spațiul Cartezian al tălpii piciorului pentru a determina precizia de poziționare a legii de control a robotului mobil pășitor.
Eroarea de poziționare a end-efectorului pe cele două axe este prezentată în figurile 4.2.10 și respectiv 4.2.11.
Figura – 4.2.8 Delta teta 1
Figura – 4.2.9 Delta teta 2
Figura – 4.2.10 Eroarea de poziționare a piciorului pe axa OY
Figura – 4.2.11 Eroarea de poziționare a piciorului pe axa OZ
Se poate observa că eroarea de poziționare pe cele două axe nu depășește valoarea de 0,5 ceea ce înseamnă că avem o eroare de poziționare verticală de maxim 3,8% pe axa OY și respectiv 1,9% pe axa OZ. Aceste procente sunt luate în funcție de valorile de referință. Se observă că pe axa verticală există două vârfuri de eroare mare. Aceste vărfuri apar în momentele de început și sfârșit a fazei de pendulare a piciorului, prima în momentul când referința trece de la o valoare constată la una cu viteză mai mare și respectiv invers, de la o viteză descrescătoare a referinței la una de viteză nulă.
Mai jos este prezentată traiectoria urmată de talpa piciorului, precum și de platforma robotului, după execuția aplicației de simulare a mișcării robotului folosind datele obținute prin simularea cu ajutorul programului Matlab Simulink.
Figura – 4.2.12 Simularea mișcării piciorului și a platformei
Figura 4.2.12 prezintă rezultatul final al simulării în flash a mișcării unui picior al robotului mobil pășitor, precum și a platformei acestuia. Se poate observa în prima fază, că mișcarea piciorului face ca talpa acestuia să treacă de suprafața de sprijin, în absența unor forțe de contact. De aceea, prima oară cand a fost rulată această simulare, nu a existat o condiție de a îndoi într-un anumit sens articulația de la genunchi. Din acest motiv, rămânea la latitudinea algoritmului de control și a procesorului de calcul, pentru a alege în ce parte să în doaie genunchiul, iar el a ales de cele mai multe ori să îl îndoaie invers față de un genunchi uman. Astfel, s-a decis introducerea unei condiții pentru ca piciorul robotului mobil pășitor să se comporte ca unul umanoid, iar valorile de urmărire a traiectoriei, au fost refăcute. Astfel, mișcarea piciorului a făcut ca genunchiul să se îndoaie așa cum se poate observa și în figura 4.2.12.
În timpul animației, în colțul din dreapta sus se pot observa unghiurile reale din articulații, precum și fazele de mișcare a piciorului. Acestea sunt determinate de semnalul roșu din figura 4.2.3 ce face ca atunci când platforma este luată ca punct fix se mișcă piciorul în raport cu aceasta, sau atunci când talpa piciorului este considerată ca referință a sistemului Cartezian, iar platforma este cea ce se mișcă în raport cu acesta. Diferența de alegere a sistemului de referință face ca sistemul de control să alterneze între valori ale referinței lucru de poate afecta sistemul de control. De aceea s-a decis ca sistemul de referință să fie păstrat pe tot parcursul simulării pe platforma robotului. Astfel, singura dificultate a fost să se conceapă o referință în raport cu acest punct în spațiul Cartezian relativ la platforma robotului mobil pășitor pentru ca piciorul robotului să treacă prin toate fazele de mișcare și suport a platformei robotului.
4.3. Logica Neutrosophică în determinarea contactului cu suprafața de sprijin
Pentru a se putea lucra mai ușor cu termenii și a conceptul neutrosophic, se vor descrie mai întâi câteva definiții și concepte pe care logica neutrosophică le introduce, pentru ca mai apoi să fie detaliată aplicația ce folosește logica neutrosophică în determinarea contactului cu o suprafață de sprijin al unui robot mobil pășitor.
Logica neutrosophică este considerată a fi un cadru general pentru unificarea majorității logicilor existente. Conceptul de bază al acestei logici îl constă caracterizarea fiecărei afirmații într-un spațiu tridimensional format din procentajele de adevar (T), falsitate (F) și nedeterminare (I) a respectivei afirmații. Abrevierile provin de la termenii în limba Engleză true, false și indeterminacy. Aceste procentaje fac parte din seturi de numere reale, seturi ce pot fi standard sau mulțimi de seturi standard, ale cărori valori vor face parte din intervalul ]0-, 1+[. Deoarece procentajele T, I și F sunt independente, suma lor poate fi mai mare ca 1 sau mai mică decât 1 [75].
Dacă luăm U ca fiind un spațiu de lucru sau universul de lucru, considerăm un set Neutrosophic M inclus în U. Dacă luăm un element x din U, atunci îl putem scrie în raport cu multimea M astfel: x(T, I, F). Acest element x va aparține mulțimii M cu următoarele proprietăți: x se știe că este în mulțimea M cu o probabilitate de t% (procentajul de adevăr); x nu se știe că este în mulțimea M cu o probabilitate de i% (procentajul de nedeterminare sau incertitudine); și x se stie că nu este în mulțimea M cu o probabilitate de f% (procentajul de falsitate). Aceste valori ale probabilităților t%, i% și f% variază în intervalele T, I și F. Din punct de vedere statistic, T, I și F sunt subseturi, mulțimi sau intervale, dar în mod dinamic acestea pot fi funcții sau operatori, depinzând de diverși parametrii.
Dacă ne uităm la probabilitatea clasică atunci am avea suma maximă a celor trei probabilități t%+i%+f%1. Dar, în probabilitatea neutrosophică știm că valorile t%, i% și f% pot varia în intervalul ]0-, 1+[. Astfel, suma celor trei probabilități neutrosophice va fi t%+i%+f%3+.
Dacă probabilitatea neutrosophică este o generalizare a probabilității clasice, statistica neutrosophică este analiza unor evenimente descrise de probabilitatea neutrosophică. Astfel, vom avea o distribuție neutrosophică definită de o funcție ce modelează probabilitatea neutrosophică a unei variabile oarecare x:
(4.3.1)
unde, T(x), I(x) și F(x) reprezintă probabilitatea de apariție, de incertitudine a apariției și respectiv de a nu apare a valorii lui x.
Așa cum a fost descrisă de autorul său, dr. F. Smarandache în 1995 și descrisă mai pe larg în 1998[76], Neutrosophia este considerată a fi o noua ramură a filozofiei, studiind originea, natura și obiectivul elementelor neutre. În această teorie avem noțiunea unei afirmații, notate cu <A>. Această afirmație își are opusul în valoarea <Anti-A>. Pe lângă aceste două valori clasice mai avem si noțiunea de neutralitate, <Neut-A> dar și cea de negație a lui <A>, <Non-A>, ce reprezintă însumarea valorilor <Neut-A> și <Anti-A>.
Neutrosophia este considerată ca fiind baza pentru logica neutrosophică, seturile neutrosophice, probabilitatea si statistica neutrosophică. Dar, lumea neutrosophică nu se oprește aici, ci se dezvoltă din ce în ce mai mult incluzând mai multe domenii de cercetare[75]:
Geometria Neutrosophică;
Numerele Neutrosophice și operații aritmetice;
Operații Neutrosphice logice, ce includ n-norme[77];
Masele de Neutrosophicare;
Tehnici de Deneutrosophicare;
Modele Neutrosophice;
Structuri algebrice Neutrosophice;
Matrice Neutrosophice;
Grafuri Neutrosophice;
Reguli de fuziune Neutrosophice;
Aplicatii ale Neutrosophiei:
Baze de date relationale
Procesare de imagine
Variabile lingvistice
Tehnici computaționale în comerțul și studiul electronic
Controlul Roboților Mobili
Teoria Dezert Smarandache, pe scurt DSmT, este o teorie al raționamentului plauzibil și paradoxic ce a fost dezvoltată pentru a putea se putea folosi surse de informații imprecise, incerte sau conflictuale. Această teorie se folosește cu preponderență acolo unde alte teorii eșuează datorită stărilor conflictuale dintre sursele de informații, cum ar fi urmărirea unei traiectorii, supravegherea prin satelit, analiza unei situații, analiza de imagini, recunoaștere de obiecte, robotică, medicină, biometrică, etc.
Spațiul de lucru pentru DSmT se notează cu și cuprinde n elemente finite[78]:
(4.3.2)
(4.3.3)
Setul multi dimensional D este definit ca un set al tuturor afirmațiilor din cu operatorii și astfel încât[78]:
;
Dacă , atunci și ;
Elementele mulțimii D sunt obținute în mod exclusiv folosind regulile de la punctele a și b.
Dacă vom considera spațiul de lucru de mai sus, relația (4.3.2), pentru fiecare sursă de generare a datelor S, putem defini o hartă
(4.3.4)
asociată sursei. Această hartă m(.) este numită funcție generalizată de bază pentru desemnarea încrederii (gbba) atunci când satisface relațiile:
(4.3.5)
Funcția generală de încredere și cea de plauzabilitate sunt definite astfel:
(4.3.6)
(4.3.7)
Folosind datele de mai sus, se poate exprima regula clasică DSm de combinare pentru k2 surse independente:
(4.3.8)
unde este un model DSm, iar , [78], iar sursele independente reprezintă observatorii implicați în procesul de luare a deciziilor.
În urma aplicării metodei clasice DSm, se vor obtine patru categorii de date, valori de certitudine de Adevărat sau Fals pentru anumite evenimente pentru care se aplică logica neutrosophică, valori ale Incertitudinii pentru respectivele evenimente, în funcție de numărul de observatori folosiți, și nu în ultimul rând valori ale Contradicției între valorile furnizate de către observatori.
Pentru a calcula procentajele acestor probabilități, se pleacă de la faptul că avem mai mulți obervatori folosiți în a determina starea unui obiect sau mașină. De aceea, s-a testat utilitatea logicii neutrosophice în raport cu cea fuzzy, atunci când avem de controlat un robot mobil pășitor. De data aceasta, pentru compararea celor două metode, s-a luat un caz simplu a unui robot ce trebuie să coboare o scară.
Se presupune că structura robotului este cea prezentată deja în capitolul 5. Pentru un robot biped, coborâtul unei scări despre care robotul nu cunoaște structura, forma și poziția fiecărei trepte în parte, este o adevărată provocare din punct devedere al generării referinței de poziționare a picioarelor. De aceea se folosesc senzori pentru a detecta fiecare treaptă pe care robotul trebuie să calce. Senzorii folosiți pentru compararea celor două metode sunt unul de proximitate și unul de forță, amplasați pe talpa picioarelor.
Acești doi senzori vor reprezenta observatorii prin intermediul cărora se va determina dacă piciorul robotului este în contact cu suprafața de sprijin. Pentru aceasta, s-a considerat schema din figura 4.3.1, prin intermediul căreia, se va prelucra informația și apoi se va decide dacă piciorul este sau nu în contact cu suprafața de sprijin.
Figura 4.3.1 – Logica neutrosophică aplicată în cazul a doi observatori
După cum se observă din figura 4.3.1, logica neutrosophică are un algoritm similar celui fuzzy, prin faptul că mai întâi se preia informația în stare brută, informație ce este trecută printr-un bloc/funcție de neutrosophicare. Datele furnizate de această funcție sunt defapt probabilități ce sunt apoi preluate de către funcția de calculare a logicii Clasice DSm ce furnizează cei patru parametrii probbilistici: adevăr, incertitudine, falsitate și contradicție. Folosind acești patru parametrii se construiește o funcție ce are scopul de a deneutrosophica datele, luând decizia dacă talpa piciorului este sau nu în contact cu solul.
Motivul unui asemenea algoritm este acela că o astfel de decizie este necesară atunci când se dorește ca robotul să fie controlat de o lege de control în faza de pendulare a piciorului când talpa sa nu este în contact cu solul, și de o altă lege de control atunci când talpa piciorului atinge solul și robotul trebuie să pășească pe sol susținându-și greutatea. Pentru aceasta este nevoie ca anuite perturbații, cum ar fi lovirea senzorilor de forță de o piatră sau lipirea de obiecte ușoare pe talpa piciorului păcălind senzorul de proximitate, să poată fi eliminate prin fuziunea informațiilor celor doi senzori.
Similar ca la metoda fuzzy, se realizează două grafice, pentru a împărți domeniile de valori furnizate de cei doi senzori, în date ce pot fi prelucrate de legile de decizie, acest lucru fiind faza de fuzificare/neutrosophicare.
Figurile 4.3.2 și 4.3.3 prezintă graficele de neutrosophicare pentru cei doi senzori: proximitate și respectiv forță.
Figura 4.3.2 – Neutrosoficarea/Fuzificarea datelor provenite de la senzorul de proximitate
Figura 4.3.3 – Neutrosophicarea/Fuzificarea datelor provenite de la senzorul de forță
După cum se observă din figurile 4.3.2 și 4.3.3, neutrosoficarea și fuzificarea datelor de proximitate și de forță presupune alegerea unor praguri X și F. Aceste praguri determină probabilitatea ca piciorul să fie în aer sau pe sol, pentru cazul fuzzy, în funcție de aceste două praguri. Pentru cazul neutrosofic, avem trei probabilități: în aer, indecidere și contact. Acestor probabilități le asociem valorile de adevăr, nedeterminare și respectiv adevăr, deoarece se dorește detecția contactului cu solul.
Pentru cazul senzorului de proximitate, pentru o valoare mică înregistrată de acesta de X-Y, rezultă că talpa piciorului este în vecinătatea sau în contact cu o anumită suprafață. Dacă valoarea aceasta este în jurul valorii de prag X, atunci nu se poate spune cu o anume certitudine dacă piciorul este sau nu în contact cu un obiect/suprafață. Iar dacă valoarea furnizată de acest senzor este una peste o limită X+Y atunci știm cu certitudine că talpa piciorului nu este în contact conform informațiilor furnizate de acest senzor.
Pentru senzorul de forță, datele sunt puțin inversate, deoarece pentru o valoare mică F-T, înregistrată de acest senzor, rezultă că talpa piciorului nu este în contact cu un obiect oarecare sau cu suprafața de sprijin. Dacă informația transmisă de acest senzor este una ce se apropie cu un F de valoarea de prag F, atunci nu se cunoaște dacă talpa piciorului este în contact cu o suprafață rigidă sau nu, putând fi doar o apăsare neuniformă sau călcarea pe o denivelare a tălpii piciorului robotului mobil pășitor, rezultând această valoare de incertitudine. Iar dacă valoarea înregistrată este una suficient de mare, de minim F+T, atunci știm cu certitudine că talpa piciorului este în contact cu un anumit obiect, conform datelor furnizate de senzorul de forță.
Calcularea valorilor procentajelor de adevar/nedeterminare/falsitate sunt conform tabelelor 4.3.1 și 4.3.2.
Tabel 4.3.1 – Corespondența valorilor neutrosophice a valorilor fuzzy pentru senzorul de proximitate
Tabel 4.3.2 – Corespondența valorilor neutrosophice a valorilor fuzzy pentru senzorul de forță
Pentru cazul fuzzy, vom avea aceleași figuri 4.3.2 și 4.3.3 ce prezintă funcțiile de fuzificare. Astfel, se observă că folosind o valoare de prag și un interval luat simetric în jurul acesteia, se determină dacă piciorul este în starea de contact sau este în faza de pendulare/apropiere de sol. Din punct de vedere fuzzy, aceste date sunt preluate și printr-o lege de defuzificare se calculează ieirea ce în cazul nostru este o alegere între două stări: de contact cu solul sau ce în care talpa piciorului nu este în contact cu o suprafață de sprijin.
Deoarece s-a dorit numai compararea celor două metode, s-a decis conceperea unei simulări care să fie suficient de simplă dar și complexă pentru ca diferența dintre metode să fie cât se poate de clară. Astfel, s-au simulat poziția tălpii piciorului precum și poziția suprafeței de sprijin, în cazul nostru fiind o scară ce coboară.
Pentru aceasta s-a dezvoltat o simulare Matlab Simulink, al cărei diagramă este prezentată în figura 4.3.4.
Figura 4.3.4 – Sistemul de comparație a celor două metode
În cadrul schemei de simulare se observă trei zone. Aceste trei zone împart schema în cele trei de funcții: de calculare a detelor de intrare, de prelucrarea a acestora și furnizarea valorilor de ieșire.
Prima categorie o reprezintă datele de intrare sub forma semnalelor de referință și determinarea valorilor pentru cei doi senzori de proximitate și forță, deoarece valorile acestor senzori trebuiesc calculate fiind vorba de o simulare pe calculator și nu una pe un robot echipat cu senzori.
Cea de a doua categorie o reprezintă funcțiile de calculare a datelor fuzzy și neutrosophice, precum și luarea deciziei în funcție de acestea.
Figura 4.3.5 – Funcțiile de calculare a deciziei neutrosophice
Figura 4.3.6 – Funcțiile de calculare a deciziei fuzzy
Figurile 4.3.5 și 4.3.6 prezintă schemele de calculare a stărilor piciorului: în contact cu solul și fără contact. Aceste scheme folosesc funcțiile detaliate în anexa 2. După cum se vede în această anexă, ambele funcții de fuzificare și neutrosophicare folosesc aceleași date. Datele rezultate în urma fuzificării/neutrosophicării sunt apoi folosite de funcții de prelucrare a acestora pentru a determina dacă piciorul este în contact sau nu cu o suprafață de sprijin.
Figura 4.3.7 – Datele de intrare
Figura 4.3.7 prezintă graficele datelor de intrare reprezentate de poziția pe verticală a tălpii piciorului, față de un punct fix în spațiu. De asemenea este reprezentat în cea de a doua diagramă graficul poziției verticale a suprafeței de sprijin față de același punct din spațiu. În figura 4.3.4 se observă generarea unui al treilea semnal ca date de intrare. Acesta este poziția pe verticală a platformei robot ce este luat cu valoarea zero, fiind introdusă în algoritm pentru cazurile în care se dorește testarea funțiilor atunci când poziția pe verticală a platformei se schimbă.
Aceste date de intrare sunt apoi preluate de funcțiile de generare a celor doi senzori, rezultând două semnale ce conțin măsurătorile senzorilor de proximitate și respectiv forță. Figura 4.3.8 prezintă schema de calcul a celor două valori.
Figura 4.3.8 – Schema de calcul a valorilor celor doi senzori de proximitate și forță
Pentru simularea senzorului de proximitate, s-au adunat și scăzut valorile pe verticală a poziționării tălpii piciorului și a suprafeței de sprijin. Mai mult s-a adăugat o sinusoidă de amplitudine 0,001 pentru a simula eroarea de măsurare a senzorului, iar apoi s-a aplicat un filtru trece jos pentru eliminarea valorilor negative ce apar datorită faptului că semnalul simulat pentru poziția tălpii piciorului trece prin suprafața de sprijin considerând în acel moment că proximitatea este zero.
Calcularea forței măsurate de senzorul de forță depinde de poziționarea dată de senzorul de proximitate. Acest senzor este simulat ca un contact elastic cu un amortizor și un arc, folosind relația (4.3.9) de simulare a contactelor elastice și simulat printr-o funcție descrisă în anexa 2.
(4.3.9)
unde F este forța măsurată/calculată, X este poziția furnizată de senzorul de proximitate (aici avem nevoie de poziția negativă) în modul, dX este derivata acesteia, iar K și C sunt constantele de elasticitate respectiv de amortizare ale suprafeței de sprijin.
În baza acestor date, figura 4.3.9 prezintă cele două grafice ale măsurătorilor celor doi senzori precum și cei doi vectori cu valorile de ieșire furnizate de cele două tipuri de legi de control.
Figura 4.3.9 – Ieșirea sistemului în paralel cu datele celor doi senzori
Simularea din figura 4.3.9 arată valorile calculate ale celor doi senzori. Se observă că senzorul de proximitate furnizează o secvență aproximativ repetitivă de date, cu mici diferențe ce constau într-o descreștere constantă dar foarte mică a amplitudinii maxime, ceea ce face ca sinusoida de generare a datelor să coboare mai jos de suprafața de contact conducând la o creștere constantă a forței maxime pentru fiecare pas. Această forță în mod normal ar fi dată de greutatea robotului, dar pentru simplificarea calculelor s-a deci această abordare simplă cu ajutorul căreia se pot testa cele două legi de control.
Se observă în cea de a treia diagramă a figurii 4.3.9 ieșirea sistemului, reprezentat de alegerea pe care cele două metode au facuto pentru aceleași date de intrare. Astfel, ieșirea metodei fuzzy este reprezentată de linia întreruptă de culoare roșie, iar ieșirea metodei neutrosophice este reprezentată de linia plină de culoare albastră, unde pentru o valoare de zero avem un picior ce nu este în contact cu solul, iar pentru valoarea de zece s-a considerat contactul cu suprafața de sprijin. Astfel, se vede diferența dintre performanțele celor două metode prin faptul că legea de control fuzzy nu a reușit să determine de fiecare dată când piciorul este în contact cu suprafața de sprijin datorită forței măsurate ce este mai mică decât pragul impus, si mai mult prezintă o decizie întârziată chiar și atunci când este determinat faptul că piciorul robotului este în contact cu suprafața de sprijin. Pe de altă parte, metoda ce folosește logica neutrosophică a reușit de fiecare dată să determine că piciorul este în contact cu solul chiar și pentru valori mici ale forței de reacțiune.
Pentru determinarea ieșirii neutrosophice au fost necesare așa cum s-a prezentat mai devreme, cele patru valori de adevăr, incertitudine, falsitate și contradicție. Aceste valori sunt prezentate în figura 4.3.10.
Figura 4.3.10 – Valorile de probabilitate calculate folosind teoria DSm
Parametrii din figura 4.3.10 sunt luați numai pentru primele 10 secunde ale simulării pentru a se observa mai bine schimbările ce apar în valorile celor 4 parametrii calculați. Astfel, se observă în punctele de tranziție, cum probabilitatea de contradicție atinge valori maxime precum și faptul că probabilitățile de adevăr și falsitate sunt în mare parte complementare. De asemenea nu există probabilitate de incertitudine mai mare de 0 deoarece simularea nu prizintă și anomalii ale datelor, în schimb există puncte de contradicție datorate valorilor de prag ale forței și distanței, deoarece valoarea forței crește abea după ce distanța atinge valoarea de zero.
Figura 4.3.11 prezintă încă o dată faptul că metoda de decizie ce folosește logica neutrosophică a reușit mult mai bine față de metoda ce folosește logica fuzzy să determine dacă piciorul robotului ajunge în contact cu o suprafață de sprijin. Se observă că pentru primii trei pași pe care robotul îi face și în care atinge suprafața de sprijin, logica fuzzy a eșuat în a determina că robotul are talpa sa în contact cu solul. Mai mult, tot logica fuzzy determină, pentru ceilalți pași realizați, cu o întârziere față de logica neutrosophică faptul că talpa piciorului ajunge în contact cu suprafața de sprijin. Comparativ, logica neutrosophică a determinat de fiecare dată când piciorul robotului ajunge în contact cu suprafața de sprijin. De aici putem ajunge la concluzia că logica neutrosophică poate fi utilizată cu succes în tehnicile ce determină starea unui mecanism, dacă putem găsi mai mulți observatori sub forma unor senzori sau traductoare.
Figura 4.3.11 – Comparație între datele de ieșire ale celor două metode
Folosirea logicii neutrosophice în domeniul roboților a fost foarte puțin studiată până în acest moment. De aceea utilizarea ei într-o schemă de control al unui robot mobil pășitor este în sine o contribuție adusă domeniului roboticii deoarece se observă în rezultatele obținute faptul că realizarea unei asemenea metode este mult mai eficientă și utilă față de alte metode utilizate până înprezent. În schimb trebuiesc făcute cercetări suplimentare pentru toate cazurile de aplicabilitate, pentru a verifica și dovedi îmbunătățirea performanțelor, deoarece pot exista cazuri în care metodele clasice, precum cea fuzzy, să fie mai utilă din anumite puncte de vedere față de cea neutrosophică.
Dar, pentru cazul prezentat, logica neutrosophică s-a comportat exceptional, făcând ca logica fuzzy să poată fi considerată o metodă ce si-a atins limitele și care să poată fi înlocuită.
Comparând cu cercetările de ultimă generație în domeniul comutării legilor de control, observăm că sunt mai multe tendințe de dezvoltare. Una dintre ele ar fi mașina de stări prezentată în lucrarea [155], în care autorii dezvoltă un mecanism de alegere între două metode de control. Automatonul de stări realizat, a reușit să identifice corect stările pentru care o anumită metodă de control să fie folosită. Acest lucru este foarte important, deoarece aplicația prezentată în respectiva lucrare, era folosită pentru a controlat un robot medical pentru proceduri non-invazive. Cea mai importantă diferență între automatonul de stări și metoda logicii neutrosophice, este faptul că automatonul de stări, are nevoie de stări clare a sistemului pentru a putea alege cu singuranță deplină, legea de control ce trebuie folosită, pe când metoda logicii neutrosophice nu are nevoie de o asemenea certitudine.
Dacă ne comparăm rezultatele cu lucrarea [156], putem observa că algoritmul realizat de autorii lucrarii, este unul foarte maleabil și adaptiv, ce se poate regla singur în funcție de sarcinile date. Mai mult, acesta ca și metoda logicii neutrosophice poate lucra cu foarte multe legi de control, fără ca timpul de comutare să crească foarte mult. În schimb acest algoritm, are un timp de întărziere în momentul întâlnirii unei noi cerințe, deoarece algoritmul va testa anumite stări ale sistemului, până va ajunge la cea optimă, pe care o va învăța ca fiind noul optim. Astfel, deși algoritmul este unul foarte bun deoarece poate lucra cu un număr foarte mare de stări, prezintă timpi inițiali de întârziere datorați perioadei inițiale de învățare. Comparativ, logica neutrosophică permite lucrul cu multe metode de control și mai mult, poate calcula în timp foarte scurt ieșirea și noua stare a stistemului folosind date de la un număr foarte mare de senzori și observatori, fără a exista întârzieri în procesul decizional.
Cea de a treia lucrare de referință în care metoda propusă de autori, este ingenioasă este lucrarea [157]. Aici autorii au folosit o logică bazată pe fenomenul de histerezis, în care comutarea este realizată atunci când datele observabile trec de anumite bariere impuse. Astfel, comutarea depinde rigid de aceste valori fixe, iar sistemul deși lucrează foarte bine pentru anumite sisteme, el nu este cel mai bun când vine vorba de controlul în timp real, pentru care sunt necesare decizii ultra-rapide. În schimb, această tehnică reduce semnificativ sau chiar elimină efectele de chattering, deoarece pentru revenirea la starea anterioară unei comutări, sistemul trebuie să ajungă la o valoare diferită de cea inițială de comutare.
Ca o concluzie a acestor metode de comutare, logica neutrosophică, reușește să facă față testelor de comutare și luare a unor decizii de schimbare a stărilor unui sistem, în timp real, și cu erori aproape nule. În schimb este necesară o condiție suplimentară de menținere a stărilor pentr un timp t, pentru ca sistemul să nu prezinte efectele nedorite ale fenomenului de chattering.
4.4. Controlul roboților mobili pășitori modulari pentru mișcări în jurul unor axe
Pentru roboții mobili cu roți deplasările e orice natură sunt mult mai ușor de realizat. Astfel, deplasarea pe o traiectorie curbilinie se realizează prin schimbarea diferită a direcției de mers a fiecărei roți ce dă direcția de deplasare a robotului. În schimb, pentru un robot mobil pășitor, acest lucru este mai dificil de realizat, deoarece talpa picioarelor roboților mobili pășitori atunci când este în contact cu suprafața de sprijin trebuie să fie într-o stare de nealunecare așa cum a fost prezentat în alt capitol al aceastei lucrări.
Pentru a controla mișcarea roboților mobili pășitori, sunt folosiți în general trei etape pentru a determina acțiunile robotului în timp deplasării:
Definirea traiectoriei de referință înainte ca robotul să se deplaseze.
Definirea unei legi de control pentru a conduce robotul pe traiectoria calculată.
Definirea unui control compliant pentru adecide acțiunile robotului atunci când sunt întâlnite obstacole neprevăzute la primul pas de generare a traiectoriei[176].
Mișcarea roboților mobili pășitori poate fi împărțită în segmente de dimensiunea unui pas al robotului. Această distanță este determinată de structura robotului pentru a calcula lungimea maximă a pasului respectivului robot mobil pășitor în condiții de stabilitate a robotului.
Figura 4.4.1 – Structura de bază a unui robot mobil pășitor [177, 178]
Atunci când robotul mobil pășitor cu o structură similară celei din figura 4.4.1 cu trei grade de libertate, acesta este nevoit să își schimbe traiectoria de mișcare pentru a ocoli obstacolul ce nu îl poate depăși prin a trece pe deasupra lui. Decizia de a schimba traiectoria de mișcare îi revine unei legi de control și modificare a traiectoriei în timpul funcționării robotului. Astfel se pot defini mai multe moduri de a ocoli obstacolul. Două dintre acestea sunt reprezentate în figurile 4.4.3 și 4.4.4. Aceste ocoliri sunt realizate prin rotirea picioarelor robotului, platforma sa rămânând pe aceeași direcție, cu condiția ca picioarele să nu depășeacă o limită de rotație impusă de construcția sa. Al doilea mod este realizat prin rotirea platformei, picioarele sale deplasând platforma mereu pe direcția de înainte a acesteia.
În primul caz, traiectoria platformei este una liniară ce nu impune alte probleme de rezolvat atâta timp cât robotul ocolește cu succes obstacolul. În schimb, pentru cazul de rotire a platformei, traiectoria robotului este una aparent curbilinie. În realitate traiectoria chiar dacă este una uniform curbilinie, deplasarea robotului se realizează liniar între punte pe respectiva curbă de referință. Astfel, dacă avem un singur robot mobil pășitor, putem folosi cu ușurință metodele clasice de control deoare nu apar probleme de instabilitate dacă legide de conducere sunt bine condiționate. În schimb, dacă robotul mobil pășitor face parte dintr-o structură mai mare (spre exemplu un robot hexapod ca în figura 4.4.5), în care fiecare modul biped este conectat la structura generală prin intermediul unor elemente de legătură rigide, problema deplasării pe traiectorii curbilinii ce realizează rotații în jurul unei axe verticale devine mai dificilă.
Figura 4.4.5 – O structură de robot hexapod realizată prin conectarea a trei roboți mobili pășitori bipezi
Deoarece un robot mobil pășitor cu o asemenea structură cinematică nu poate urmării o traiectorie curbilinie ci una liniară atunci, când este realizată o asemenea structură, în momentul deplasării în jurul unei axe fiecare modul robot tinde să împingă sau să tragă de structura de legătură dintre module.
De aceea s-a propus adăugarea a două noi grade de libertate pentru fiecare modul de robot biped. Aceste grade de libertate formează o structură cinematică ce face legătura dintre un robot mobil biped și structura generală a robotului.
Figura 4.4.6 – Robotul mobil pășitor cu structura cinematică de legătură cu structura robotului
Figura 4.4.7 – Structura cinematică adăugată robotului mobil pășitor biped
Figurile 4.4.6 și 4.4.7 prezintă structura cinematică adăugată fiecărui robot mobil biped. Aceasta prezintă un grad de libertate de rotație si unul de translație, permițănd deplasarea punctului de legătură cu structura generală a robotului în planul orizontal. Relația de calcul a cinematicii directe este prezentată în (4.4.1).
(4.4.1)
Pentru cinematica inversă relațiile sunt suficient de simple pentru a se putea calcula ecuațiile cinematicii inverse. Astfel, considerând știute coordonatele punctului de contact dintre robot și platformă prin intermediul structurii cinematice amintite, se calculează distanța „d” și unghiul „”. Dar de multe ori avem nevoie să cunoaștem acest punct în raport cu originea luată pe structura robotului și de aceea se va calcula în raport cu un punct de coordonate O(x0, y0, z0). Astfel se deduce:
(4.4.2)
(4.4.3)
(4.4.4)
unde, avem următoarele condiții pentru calcularea unghiului „”:
(4.4.5)
Deoarece fără acest sistem dinamic de legătură robotul mobil pășitor biped este balansat fașă de verticală datorită acțiunii celorlalte module, este necesar a se calcula centrul de greutate a fiecărui modul de robot biped. Pentru aceasta se consideră relația generală de calcul a centrului de masă (4.4.6) și se calculează relațiile (4.4.7-4.4.9) ce furnizează poziția centrului de masă a fiecărui modul al robotului în raport cu o poziție de referință luată în punctul O(x0, y0, z0).
(4.4.6)
(4.4.7)
(4.4.8)
(4.4.9)
unde, punctele Gix, Giy și Giz reprezintă coordonatele centrului de masă pentru fiecare modul al robotului, împreună cu sistemul de legătură și greutatea G ce apasă pe fiecare robot modular în punctul de legătură dintre acesta și întregul sistem mecatronic.
Având aceste relații definite putem să trecem la analizarea deplasării robotului hexapod format din trei module de robot mobil pășitor biped.
Figurile 4.4.8 și 4.4.9 prezintă schematic poziția celor trei module de robot mobil biped conectate în structura robotului hexapod și două cazuri pentru care direcția de deplasare a fiecărui robot este aceeași pentru toate modulele sau diferită în cazul când se dorește o deplasare în jurul unei axe.
Pentru a realiza deplasarea în jurul unei axe de rotație ca în figura 4.4.10, trebuie să luăm fiecare modul de robot biped și să îi analizăm traiectoria de deplasare. În cazul nostru, deoarece rotația se realizează în jurul centului robotul hexapod, fiecare robot va avea o traiectorie de lungime egală și deci similară pentru toate cele trei module. Figura 4.4.11 prezintă poziția robotului față de centrul platformei robotul hexapod, în timpul realizării unui pas ce pornește din punctul A de pe curba de referință și se termină în punctul B de pe aceeași curbă a traiectoriei de deplasare. Astfel putem calcula pentru punctul M de pe traiectoria liniară de deplasare a robotului biped din figura 4.4.11, distanța „d” și unghiul „” folosind cinematica inversă prezentată în relațiile (4.4.3) – (4.4.4).
(4.4.10)
(4.4.11)
(4.4.12)
(4.4.13)
(4.4.14)
(4.4.15)
unde, „l” este distanța de deplasare a modulului robot în timpul realizării pasului, reprezentând lungimea segmentului [AM], „L” este lungimea segmentului [AB], „r” este raza cercului de rotație, „t” este unghiul format din razele ce leagă centrul cercului de rotație cu punctele A și B, „t1” este unghiul format de raza cercului ce trece prin punctul A cu segmentul [OM] ce este o parte din raza cercului de rotație ce trece prin punctul M (adica prin poziția instantanee a robotului în timpul pasului), „c” este distanța din centrul cercului de rotație la traiectoria de deplasare liniară determinată de segmentul [AB].
Din ecuațiile de mai sus rezultă ecuația (4.4.16) a cărei valoare poate fi adunată cu poziția centrului de masă pentru a determina dacă pasul robotului este prea mare pentru ca stabilitatea robotului să fie pusă în pericol în momentul de deplasare maximă a punctului de legătură cu robotul hexapod.
(4.4.16)
Folosind aceste relații se poate dezvolta un algoritm de detecție a condițiilor de echilibru:
Figura 4.4.12 – Logica de detectare a condițiilor de echilibru
Algoritmul prezentat în figura 4.4.12 începe prin a genera o traiectorie de mișcare a robotului mobil biped ce face parte dintr-o structură mai mare a unui robot mobil pășitor. După stabilirea traiectoriei, se calcuelază lungimea pasului în funcție de viteza robotului. Apoi se verifică dacă traiectoria robotului general este una liniară sau circulară. În cazul liniar se validează pasul și se permite robotului să se deplaseze. În cazul în care traiectoria este una circulară se calculează valoarea DMAX specifică razei de rotație, dar și a valorii dMAX ce depinde și de lungimea pasului stabilită deja. Aceste două valori sunt comparate și dacă valoarea lui dMAX este mai mare față de cea a lui DMAX atunci se micsorează pasul robotului și se trece din nou la etapa de verificare a lungimii acestuia. A se observa că pasul robotului va trebui în totdeauna să îl păstreze pe acesta pe traiectoria calculată inițial. Dacă ultima condiție este îndeplinită după verificările necesare atunci se permite robotului să se deplaseze folosind lungimea pasului calculat.
Distanța „d” calculată în timpul deplasării robotului modular este dată de relația (4.4.17) și este necesară pentru a controla în timpul mersului structura cinematică de legătură cu structura robotului general.
(4.4.17)
Pentru a verifica rezultatele obținute s-a realizat o simulare Matlab, în care s-au determinat lungimile maxime ale unui pas pentru robotul mobil pășitor biped pentru diferite raze de rotație a cercului înscris în traiectoria circulară a robotului.
Figura 4.4.13 prezintă lungimea maximă pe care o poate avea pasul robotului biped în condiții de stabilitate și în funcție de raza cercului traiectoriei de rotație. Iar figura 4.4.14 prezintă traiecotria pe care robotul (linia verde) o are comparativ cu traiectoria punctului de legătură cu structura robotului hexapod (linia albastră).
Figura 4.4.15 prezintă un grafic important deoarece de furnizează distanța maximă „d” ce apare în timpul deplasării robotului pentru anumite lungimi ale pasului, considerând valoarea lui DMAX constantă și de valoare 30. Această valoare este adimensională deoarece formula de calcul este funcțională pentru orice dimensiune iar figura 4.4.15 este valabilă prin scalarea valorilor obținute.
Figura 4.4.15 – Distanța maximă „d” în raport cu lungimea pasului pentru un DMAX=30
În urma experimentelor și simulărilor realizate, se poate considera integrarea acestor rezultate în controlul în timp real al roboților moili hexapozi pentru evitarea răsturnării acestora. Iar prin folosirea structurii cinematice propuse pentru legătura dintre modulele de roboți bipezi, se poate rezolva problema de control a acestor roboți în cazurile de urmărire a unor traiectorii circulare în jurul unor axe de rotație.
4.5. Controlul hibrid forță-poziție în conducerea unui robot cu 4DOF
Controlul mișcării unui manipulator, ce folosește informația de poziție și forță, a fost propus pentru prima oară, de Raibert și Craig[122]. Acest control, l-au denumit control hibrid poziție/forță, iar mai apoi s-a folosit termenul general de „control hibrid”. Mai târziu, Zhang și Paul[123] au modificat schema controlului hibrid, de la o formulare carteziană, la o formulare în spațiul articulațiilor, folosind aceeași metodă de separare a constrângerilor date de poziție și forță. În ambele cazuri avantajul utilizării controlului hibrid forță poziție este acela că informația este analizată independent pentru a putea beneficia de avantajele tehcnicilor de control în forță și poziție, ce sunt combinate în ultima fază a schemei de control hibrid, atunci când informația de control este preluată și furnizată actuatoarelor robotului.
An și Hollerbach[124] au arătat că anumite metode de control în forță, incluzând controlul hibrid, sunt instabile. Iar Zhang[125] a arătat că schema de control hibrid poate deveni instabilă pentru anumite configurații ale manipulatoarelor ce folosesc articulații de rotație[126]. O metodă de a elimina instabilitățile cauzate de calcularea matricei inverse Jacobi folosită în calculul cinematicii inverse, este de a folosi matricea Jacobi transpusă [127-129].
Schema de bază folosită de către Raibert și Craig[122] pentru dezvoltarea controlului hibrid este cea din figura 4.5.1. Acestă schemă a fost folosită pentru realizarea experimentelor din acest capitol.
În această schemă, bucla de control din partea superioară este bucla de control în poziție, pentru care q reprezintă pozițiile unghiulare și de translație măsurate în articulațiile robotului; cx reprezintă coordonatele de poziționare și orientare în spațiul Cartezian al end-efectorului, sub forma unui vector de dimensiune 6×1; cxd reprezintă vectorul de dimensiune 6×1 dat ca și referință pentru poziționarea și orientarea end-efectorului robotuluiș iar cxe reprezintă referința sub forma unui vector de dimensiune 6×1 dată legii de control în poziție.
Bucla de control inferioară este bucla de control în forță, și este similară cu cea în poziție, dar pentru care avem următoarele variabile ce sunt folosite: H reprezintă vectorul de forțe și momente măsurate de către senzorii montați pe robot; cf reprezintă vectorul de forțe transformat pentru a corespunde cu sistemul de valori ai vectorului cfd ce reprezintă referința pentru controlul în forță; cfe reprezintă ca și la bucla de control în poziție, vectorul ce conține referința pentru legea de control în forță a sistemului hibrid[130].
Figura 4.5.1 – Schema de control hibrid forță poziție definită de Raibert și Craig[122]
O componentă importantă a schemei de control hibride, este vectorul S. Acest vector S face separarea între gradele de libertate controlate în poziție și cele controlate în forță pentru ca informația preluată de la senzori și referință să nu ajungă la schema de control în poziție sau în forță. Această separare se realizează în faza de concepere a schemei de control hibrid și nu se modifică într-un mod dinamic în timp real. De aceea, dacă apar noi cerințe de control ale robotului, atunci este necesar să fie regândită schema de control hibrid.
4.5.1. Relații uzuale folosite de controlul în Poziție
Așa cum a fost descris și mai sus, pentru fiecare acțiune pe care robotul o va urma, toate gradele de libertate sunt împărțite în funcție de tipul de control ce le va acționa. Pentru aceasa matricea S de dimensiune 6×6 conține numai valori de „0” și „1” pentru a împărți constrângerile din spațiul Cartezian, însemnând că pentru o valoare de „0” bucla de control în poziție va controla acele grade de libertate.
Primul pas în calcularea datelor de referință pentru controlul în pozitie este acela de a selecta erorile în funcție de matricea S. Astfel, se foloseste relația:
(4.5.1)
în care, se calculeaza mai întâi matricea I-S reprezentând matricea complement ortogonal a lui S, însemnând că fiecare valoare de 0 devine 1 iar fiecare valoare de 1 devine 0, pentru a avea o singură matrice S pentru ambele bucle de control forță și poziție, rezultând imposibilitatea de a avea același grad de libertate controlat și în forță și în poziție.
Pentru ca legea de control în poziție să poată folosi datele Carteziene, este necesar a se transforma aceste date din spațiul Cartezian sau cel operațional în spațiul articulațiilor. Pentru aceasta se pornește de la relația (4.5.2).
(4.5.2)
Această relație face trecerea de la variabilele din spațiul articulațiilor în variabile în spațiul operațional, dar legile de control folosesc variabilele în spațiul articulațiilor și de aceea sunt necesare thnici de calcul pentru aceste valori. Prima și cea mai vizibilă este metoda de a inversa matricea Jacobi rezultând relația (4.5.3).
(4.5.3)
Se poate observa cu ușurință faptul că pot apare probleme folosind relația (4.5.3) deoarece matricea Jacobi poate fi neinversabilă în anumite cazuri. De aceea, în această lucrare nu s-a folosit în calcularea parametrilor de referință din spațiul articulațiilor, metoda ce folosește matricea Jacobi inversă, ci s-au utilizat metode geometrice ale cinematicii inverse bazate pe structura robotului, precum și metoda de calcul ce folosește matricea Jacobi transpusă ce elimină problema punctelor de singularitate.
4.5.2. Relații uzuale folosite de controlul în Forță
Pentru controlul în forță, se folosește matricea S de selectare a gradelor de libertate controlate în forță, ce este complementul ortogonal al matricei folosite pentru controlul în poziție. Astfel, se calculează referința blocului de control, prin internediul unui produs dintre referința în forță și această matrice S de dimensiune 6×6.
(4.5.4)
Pentru a transforma forțele de referință exprimate din coordonate Carteziene în coordonate ale spațiului articulațiilor, adica în valori de cuplu, se folosește matricea Jacobi transpusă:
(4.5.5)
Față de controlul în poziție, folosirea matricei Jacobi transpusă pentru variabilele de forță ne furnizează valorile reale și nu o aproximare a acestora. Mai mult, se pot calcula erorile în spațiul articulațiilor plecând de la cele în spațiul cartezian, folosind același principiu:
(4.5.5)
Așa cum menționează și Fisher în [130], analizând din punct de vedere cinematic, ecuațiile de forță (4.5.4) și (4.5.5) sunt reprezentări matematice valide din punct de vedere geometric și algebric, acestea modelând comportamentul mediului, rezultând că aceste relații sunt în totdeauna stabile din punct de vedere cinematic.
4.5.3. Realizarea controlului hibrid forță-poziție
Structura manipulatorului controlat folosind controlul hibrid forță-poziție este cea din figura 4.5.2.
Figura 4.5.2 – Manipulatorul cu 4DOF pe care s-a aplicat controlul hibrid forță-poziție
Pentru sistemul mecatronic din figura 4.5.2 se scriu relațiile cinematicii directe:
(4.5.6)
Relația (4.5.6) prezintă cinematica directă pentru manipulatorul general din figura 4.5.2. În schimb, în simularea realizată s-au considerat ca valorile d1, a2 și a3 să fie de valoare zero. Astfel se rescrie relația (4.5.6) ținând cont de aceste valori și rezultă relația (4.5.7).
(4.5.7)
Pentru calculul cinematicii inverse s-a folosit algorimtul (4.5.9) ce utilizează matricea Jacobi Transpusă din relația (4.5.8).
(4.5.8)
(4.5.9)
Algoritmul din relația (4.5.9) a mai fost prezentat în această lucrare și de aceea se va prezenta pe scurt. Acest algoritm este preferat în locul altor calcule deoarece ecuațiile nu prezintă dificultatea calculării directe a sistemului (4.5.7) și nici nu prezintă punte de singularitate așa cum se întâmplă când se folosește matricea Jacobi inversă.
Valorile folosite în acest algoritm sunt următoarele: „eref” reprezintă eroarea maximă admisă, „ereal” reprezintă eroarea reală, parametrul „α” este ales pentru a minimiza valoarea e, iar „” reprezintă eroarea unghiulară din articulații[179, 180, 191].
Pentru a simula și testa controlul hibrid forță-poziție de conducere a manipulatorului serial cu 4 grade de libertate s-a realizat o simulare Matlab Simulink. După cum se observă în figura 4.5.2, primele trei grade de libertate sunt de rotație pentru poziționarea în spațiul 3D a manipulatorului, iar cel de al patrulea grad de libertate este unul de translație, în care se controlează poziția de apunecare a end-efectorului în funcție de forța de apucare a acestuia.
Mai întâi au fost realizate schemele de control a poziției manipulatorului. Astfel, figura 4.5.3 prezintă generarea referinței, iar figurile 4.5.4-4.5.6 prezintă semnalele generate.
Figura 4.5.3 – Generarea referinței în poziție a end-efectorului
Figura 4.5.4 – Generarea referinței pe axa OX (Poziție/Milisecunde)
Figura 4.5.5 – Generarea referinței pe axa OY (Poziție/Milisecunde)
Figura 4.5.6 – Generarea referinței pe axa OZ (Poziție/Milisecunde)
Folosind aceste semnale cu valori Carteziene ca și referința sistemului de control, se calculează eroarea de poziționare folosind funcțiile din figura 4.5.7.
Figura 4.5.7 – Calcularea valorii
Se observă în figura 4.5.7 că funcția de calculare a matricei Jacobi și a punctului M determinat de cinematica directă preia la intrare cele trei valori de referință, plus cele trei valori constante ce furnizează dimensiunea segmentelor robotului. Aceste valori a2=3, l2=6 și l3=5 sunt exprimate în metri și înmulțite cu 10 pentru ușurința calculelor. După calcularea valorilor acestea sunt furnizate unor bucle de control de tipul PI (proporțional-integrativ) ce controlează poziția, viteza și cuplul fiecărui motor din articulațiile de rotație ale robotului.
Figura 4.5.8 – Controlul motoarelor din articulațiile robotului
Figura 4.5.8 prezintă buclele de reacție pentru controlul fiecărui motor din articulațiile robotului serial, iar figura 4.5.9 prezintă modelul motorului folosit în simularea aceasta.
Figura 4.5.9 – Modelul motorului de curect continuu folosit în simulare
Modelul motorului de curent continuu foloseste urmatorii parametrii:
Iar parametrii celor doua regulatoare PI sunt:
% Parametrii controlului în cuplu
Kpt=1.38;
Kit=5880;
sat_T=3;
% Parametrii controlului în viteză
Kpw=1.17;
Kiw=527;
sat_w=18;
Dacă realizarea controlului în poziție a necesitat realizarea unui motor de curent continuu și două bucle de control intern în viteză și cuplu, controlul în forță asociat celui de al patrulea grad de libertate al manipulatorului nu mai poate fi realizat în acest mod.
Figura 4.5.10 – Schema de control hibrid a end-efectorului
Figura 4.5.10 prezintă schema de control hibrid forță-poziție a end-efectorului manipulatorului. Acesta este controlat acționând un motor ce închide sau deschide sistemul de apucare al end-efectorului. Datele de intrare în schema de control sunt poziția de translație dar și forța de apucare ce apare în momentul când acesta intră în contact cu un obiect.
Buclele de control prezintă două regulatoare ce comandă un convertizor care la rândul lui comandă motorul responsabil cu acționarea sistemului de prindere.
După realizarea schemelor de control, s-au ajustat parametrii pentru a obține rezultate cât mai bune în urma simulărilor. Astfel, figurle 4.5.11, 4.5.12 și 4.5.13 prezintă parametrul ce tinde să se stabilizeze în jurul valorii de zero deși prezintă valori nenule deoarece referința se schimbă continuu.
Figura 4.5.11 – Valoarea pentru articulația 1 (Poziție[m x 10]/Timp[ms])
Figura 4.5.12 – Valoarea pentru articulația 2 (Poziție[m x 10]/Timp[ms])
Figura 4.5.13 – Valoarea pentru articulația 3 (Poziție[m x 10]/Timp[ms])
De asemenea, figurile 4.5.14, 4.5.15 și 4.5.16 prezintă poziționarea în sistem cartezian a end-efectorului manipulatorului serial.
Figura 4.5.14 – Mișcarea robotului în raport cu referința în planul XOY în raport cu timpul[ms]
Figura 4.5.15 – Mișcarea robotului în raport cu referința în planul ZOY în raport cu timpul[ms]
Figura 4.5.16 – Mișcarea robotului în raport cu referința în planul OY în raport cu timpul[ms]
Figura 4.5.17 – Controlul hibrid al end-efectorului
Figura 4.5.17 prezintă controlul hibrid al end-efectorului manipulatorului. Se observă din graficul referinței motorului că în momentul t=1,1 secunde, robotul întâlnește un obiect de apucat, iar referința motorului crește semnificativ pentru a compensa forța de apucare. De asemenea în momentul t=10secunde este selectată comanda de eliberare a obiectului, iar referința motorului scade considerabil, ajungând rapid la valoarea de zero.
Astfel, folosind controlul hibrid forță-poziție s-a realizat controlul unui manipulator cu 4 grade de libertate ce se poziționează inițial la momentul t=1s pentru a apuca un obiect. La momentul t=1,5secunde obiectu leste apucat și deplasat către noua poziție desemnată de referința manipulatorului. După un interval de 0,5secunde după ce manipulatorul a ajuns pe poziția dorită, end-efecturului îi este dată comanda de eliberare a obiectului, robotul putând din acel moment să reia operațiunea de mutare a obiectelor. Această aplicație își are aplicabilitate în industrie, unde roboții sunt folosiți cu preponderență în operații de poziționare de mare precizie a diferite componente electronice sau mecatronice, subansamble ce formează produse de complexitate medie spre mare.
Folosind algoritmul de calculare a cinematicii inverse cu ajutorul matricei Jacobi transpuse, s-a putut realiza un control hibrid ce preia datele de referință din spațiul Cartezian și apoi să le folosească cu eficiență pentru a poziționa cu o precizie ridicată manipulatorul controlat. Mai mult, pentru a limita problema convergenței lente a acestei metode ce folosește matricea Jacobi transpusă, s-au folosit amplificări aplicate erorilor calculate forțând sistemul să impună viteze mai mari motoarelor din articulații.
5. Cercetări experimentale asistate de calculator; simularea și validarea modelelor matematice elaborate
5.1. Descrierea robotului mobil pășitor folosit în demostrarea teoriilor propuse
Pentru a putea testa legile de control, am avut nevoie de un robot mobil pășitor care nu prezintă multe probleme din punct de vedere al stabilității și răsturnării pe terenuri plane, deoarece scopul teoriilor dezvoltate nu au la bază stabilitatea roboților, ci este un scop secundar, derivat din cele principale. În continuare se va prezenta structura robotului mobil pășitor folosit în simularea și demonstrarea metodelor și algoritmilor de control dezvoltați și îmbunătățiți.
Astfel, s-a ales un robot mobil pășitor hexapod, prezentat schematic în figura 5.1.1 și care prezintă 18 grade de libertate, toate de rotație, împarțite câte trei pe fiecare picior.
Figura 5.1.1 – Robotul mobil pășitor hexapod
Dacă se analizează mai atent figura 5.1.1 se observă că robotul este împărțit în trei părți, fiecare având două picioare. Aceste părți pot fi controlate separat ca și un robot mobil pășitor biped, pentru care nu sunt necesare anumite scheme de control a stabilității, deoarece, metoda de deplasare va fi în totdeauna pe cel putin trei picioare, pentru a forma un triunghi de stabilitate între tălpile picioarelor robotului. De aceea, s-a luat decizia a se realiza toate schemele de control pentru un robot mobil pășitor biped, care va putea fi îmbinat cu alte module asemănătoare sau identice pentru realizarea robotului hexapod, sau care va putea fi îmbunătățit, adăugând legi de control a stabilității pentru a realiza un robot mobil pășitor biped de sine stătător. Acest robot mobil pășitor biped pentru care nu se pune problema stabilității este prezentat în figura 5.1.2.
Figura 5.1.2 – Robotul mobil pășitor biped[181]
Plecând de la figura 5.1.2, se alege un singur picior al robotului, pentru a prezenta notația segmentelor piciorului, precum și alegerea axelor de rotație a articulațiilor, în figura 5.1.3.
Figura 5.1.3 Structura cinematică a unui picior al robotului mobil biped/hexapod
Figura 5.1.3 prezintă parametrii din tabelul 5.1.1. Se observă ca nu s-a intrat in detaliile cinematice prin prezentarea parametrilor Dennavit Hartenberg, acestea fiind presupuse cunoscute, dar vor fi prezentate ecuațiile cinematice pentru această structură cinematică.
Tabelul 5.1.1 Dimensiunile structurii cinematice folosite în cadrul aplicațiilor
În tabelul 5.1.1, parametrii li și ri reprezintă lungimea segmentelor fiecărui picior, respectiv distanța de la capătul unui segment la centrul de masă al acestuia. De asemenea se presupune că fiecare segment constructiv al piciorului este realizat dintr-un aliaj de aluminiu, cu o densitate repartizată uniform, iar mi este masa fiecărui segment.
Pentru structura prezentată a robotului pășitor, putem scrie foarte ușor relațiile cinematicii directe:
(5.1.1)
unde, M(x, y, z) este poziția punctului din talpa piciorului în coordonate Carteziene, în raport cu sistemul inițial de referință ce este poziționat în prima articulație a piciorului. Astfel, poziția punctului M determină distanța în spațiul Cartezian dintre talpa piciorului robotului mobil și punctul de legătură cu platforma robot. Parametrii definiți de li au fost deja prezentați în tabelul 5.1.1, iar parametrii 1, 2 și 3 reprezintă parametrii unghiulari ce determină poziția fiecărei articulații de rotație a picioarelor robotului mobil pășitor.
5.2. Controlul mișcării la alunecare, proporțional-integrativ-derivativ cu amplificare fuzzy
Controlul mișcării la alunecare sau pe scurt SMC (Sliding Mode Control) a fost dezvoltat inițial de către Emilyanov în 1966 și este o metodă robustă de control ce folosește dinamica unui sistem mobil. Această strategie de control este varibilă și robustă, dar este și capabilă să controleze diferite clase de sisteme cu diferite clase de incertitudini, incluzând sistemele neliniare, sistemele MIMO (mai multe de o intrăre și mai mult de o ieșire) precum și sisteme discrete în timp[80, 81]. Pentru toate aceste clase de sisteme, metoda de control la alunecare asigură o abordare sistematica a problemei de menținere a stabilității precum și o performanță continuă în cazuri de modelare defectuoasă a sistemelor.
Metoda de control la alunecare se bazează pe interschimbarea amplificărilor ce guvernează întregul sistem de control, rezultând un sistem ce comută între mai multe categorii de control. Folosind această abordare, legea de control va păstra traiectoria sistemului pe o anumită suprafață. Pentru un sistem de coordonate bidimensional, această traiectorie se rezumă la urmărirea unei linii continue. Pentru a fi asigurată robustețea sistemului, legea de control SMC este formulată folosind o abordare Lyapunov, rezultând posibilitatea modelării sistemului chiar și în prezența unor incertitudini[82][83]. Iar utilitatea ei în controlul roboților mobili pășitori este de a păstra o altitudine constantă a robotului în timpul fazelor de suport ale picioarelor.
Scopul principal al metodei de control a mișcării la alunecare este de a menține comportamentul sistemului în interiorul unei traiectorii specificate. De fiecare dată când comportamentul sistemului conduce dinamica acestuia în afara stărilor prestabilite ca fiind preferate, legea de control modifică amplificarea sistemului pentru ca traiectoria stării sistemului să revină în interiorul spațiului de stări acceptabile. Acest lucru va realiza modificări rapide ale amplificărilor de control atunci când traiectoria se regăsește în vecinătatea graniței dintre stările acceptate și cele neacceptate.
Folosind metoda de control la alunecare, legea de control va putea conduce sistemul dintr-o poziție oarecare către o poziție din vecinătatea suprafeței de alunecare de-alungul unei traiectorii prestabilite. Odată ce sistemul este condus către această zonă de alunecare, comportamentul acestuia va urmării traiectoria prestabilită și nu va fi infuențat de caracteristici neliniare, de variații ale parametrilor precum si de eventuale perturbații în sistem și ale elementelor de control.
Dacă vom considera un sistem „n” dimensional și un hiperplan de dimensiune „n-1” (limita de alunecare) atunci S : Rn R1 pentru care s(st)=0, unde „st” este vectorul de stări ale sistemului.
Folosind un semnal de control de forma:
(5.2.1)
sistemul va avea forma următoare:
(5.2.2)
unde, out+ și out- sunt funcții definite de forma , ce forțează sistemul să intre în zona de vecinătăți a traiectoriei, indiferent dacă valorile sale sunt pozitive sau negative. Astfel, sistemul este definit de forma suprafeței de alunecare S, iar în momentul când sistemul ajunge în interiorul mulțimii definite a vecinătăților, acesta va rămâne acolo. De cele mai multe ori, variabila acestei metode, este aleasă ca fiind eroarea de urmărire a sistemului, pentru că eroarea sistemului va converge în mod asimptotic către zero.
Condiția pentru ca sistemul să intre în faza de alunecare ar putea fi următoarea:
(5.2.3)
Figura 5.2.1 Reprezentarea grafică a funcționării metodei de control la alunecare
Avantajele metodei de control la alunecare sunt descrise pe scurt de o robustețe ridicată a sistemului de control. Astfel, plecând din orice punct din spațiu, legea de control va conduce sistemul către zona de alunecare și îl va menține acolo. În timpul conducerii sistemului de către controlul la alunecare sistemul în buclă închisă este complet imperturbabil de elemente neliniare, de dinamica incertă și elimină total perturbațiile exterioare ale sistemului[84].
Datorită carecteristicilor acestei metode, ea este recomandată aplicațiilor ce necesită un răspuns rapid și care să poată elimina perturbațiile exterioare. Câteva din aceste aplicații ar fi cele militare de ghidare a rachetelor, de controlul dispozivitelor de auto navigare precum și a tuturor aplicațiilor ce necesită un control al mișcării și ghidării în spațiu al roboților mobili.
Metoda de control la alunecare prezintă și dezavantaje. Unul dinte aceste dezavantaje este timpul de convergență. Această metodă asigură convergența asimptotică, dar timpul de convergență poate tinde la infinit așa cum și condiția de convergență tinde la infinit, neputând asigura un timp limită finit.
Un alt dezavantaj este acela că sunt necesare cunoștințe ale limitelor incertitudinilor sistemului. Cu cât structura unui sistem este mai complexă, cu atât este mai dificil de a dezvolta sistemul de control. Totuși, se pot adăuga scheme de control adaptiv pentru a asigura un control optim în condițiile când sistemul nu este modelat ținând cont de toti parametrii sistemului.
Alt dezavantaj este cerința de a cunoaște toti parametrii vectorului de stări ale sistemului în timpul funcționării sistemului. Deoarece nu este mereu posibil a se cunoaște toți parametrii necesari, sunt necesare estimări ale acestora, folosind tehnici de calcul ce vor încetini și crește timpul de execuție a sistemului de control.
Cel mai întâlnit obstacol în crearea de sisteme de control la alunecare este acela dat de efectul de chattering. Acest efect se datorează naturii discontinue a semnalului de control, ce încearcă să mențină valoarea s(st) la zero. Acest lucru este realizat printr-o comutare rapidă a parametrilor de control în vecinătatea suprafeței de alunecare. Dacă frecvența de comutare tinde la infinit, nu se vor observa probleme, dar deoarece dispozitivele actuale nu sunt perfecte și prezintă timpi de comutare, frecvența de comutare este limitată. Acest lucru se reflectă în acuratețea sistemului de control precum și în oscilațiile sistemului în jurul suprafeței de alunecare, fenoment denumit ca chattering. Desi acest dezavantaj este unul foarte importat deoarece afectează puternic stabilitatea sistemului de control în vecinătatea suprafeței de alunecare, acesta este eliminat folosind diferite tehnici și metode, cum ar fi ajustarea prin metoda fuzzy a amplificărilor, un control al zonei din jurul suprafeței de alunecare, precum și folosirea de funcții de saturare în locul celor de semn pentru comutarea între valorile de amplificare.
Așa cum a fost descris, metoda de control a mișcării la alunecare este o metodă de control dinamic ce depinde de structura robotului. Această metodă, primește ca date de intrare, toți parametrii fizici ai robotului, prezentați în capitolul 5.1, precum și valorile măsurate de către senzorii și traductorii montați pe robot, pentru a determina valorile din articulațiile acestuia. Astfel, aceste valori sunt preluate și sunt calculați parametrii inerțiali prin intermediul matricei de Inerție, precum și matricea Coriolis și cea a efectului gravitațional.
După ce s-au calculat matricele principale, folosite de un control dinamic clasic, exprimat prin relația (3.3.1), se aplica tehnica controlului la alunecare, prin care ca și la controlul dinamic invers, se calculează cuplul pe care articulațiile robotului trebuie sa il dezvolte pentru ca referința de la intrarea sistemului să poată fi urmărită cu precizie ridicată.
Controlul mișcării la alunecare prezentat în această lucrare este unul în care s-a adăugat un control fuzzy[182] pentru îmbunătățirea performațelor de urmărire, prin ajustarea constantă a amplificărilor din controlul la alunecare.
Schema de principiu a controlului dinamic al robotului mobil pășitor este prezentată în figura 5.2.2. În această diagramă datele de intrare ce reprezintă referința, sunt reprezentate în spațiul Cartezian. De aceea aceste date trebuie să fie transformate în parametrii de referință în spațiul articulațiilor, deoarece metoda de control dinamic precum și cea de control a mișcării la alunecare, folosesc ca referință pozițiile unghiulare și/sau de translație la care fiecare articulație trebuie să ajungă. Astfel, a fost necesar introducerea unui bloc de calcul a cinematicii inverse. Acest bloc de calculare a cinematicii inverse, este realizat printr-o funcție ce are ca intrare datele în spațiul operațional și ca ieșire, referința în spațiul articulațiilor.
Figura 5.2.2 Schema de principiu folosită în controlul mișcării la alunecare
Pentru a ușura calculele, s-a ales inițial ca algoritm de rezolvare a acestei probleme a cinematicii inverse, algoritmul bazat pe matricea Jacobi transpusă. Dar, deoarece acest algoritm furniza un vector de eroare pentru poziționarea articulațiilor robotului, era necesară calcularea referinței unghiulare prin adunarea valorilor reale la această eroare. Numai că algoritmul de calcul a cinematicii inverse folosind matricea Jacobi transpusă, nu este un algoritm ce poate furniza o valoare precisă a erorii, rezultând că această combinare cu un control dinamic nu este posibilă, in schimb poate fi folosită cu succes la un control PID simplu al vitezei și poziției articulațiilor unui robot.
Deoarece matricea Jacobi transpusă nu a dat rezultate, iar o folosire a inversei acestei matrice nici nu a fost luată în calcul datorită problemei singularităților, s-a încercat și reușit rezolvarea problemei inverse a sistemului ce furnizează cinematica inversă a robotului, din relația (5.1.1).
Relațiile (5.2.4) reprezintă rezolvarea sistemului (5.1.1) pentru care necunoscutele sunt de data aceasta unghiurile din articulații, q1, q2 și q3 iar parametrii cunoscuți sunt poziționările pe cele trei axe Carteziene a tălpii piciorului.
(5.2.4)
unde,
(5.2.5)
Mai mult, pentru ca relațiile (5.2.4) să fie valide și să poată fi folosite într-o simulare, sunt necesare următoarele condiții suplimentare ale poziției piciorului robotului mobil pășitor prezentat în figura 5.1.3:
(5.2.6)
Utilizând relațiile (5.2.4 – 5.2.6) se transformă sistemul dintr-unul în care referința este în spațiul operațional într-un sistem în care referința este în spațiul articulațiilor. Astfel, figura 5.2.3, prezintă schema generală pentru controlul la alunecare, folosită în simularea, testarea și demostrarea îmbunătățirilor aduse acestei metode de control, ce la rândul ei, va ajuta la demostrarea îmbunătățirilor aduse controlului hibrid.
Figura 5.2.3 Schema generală a controlului mișcării la alunecare
Figura 5.2.3 prezintă într-un mod detaliat ceea ce se întâmplă în algoritmul de control al unui picior al robotului mobil pășitor. Piciorul robotului având trei grade de libertate, pe scurt 3DOF (însemnând „Degrees of Freedom” = Grade de Libertate), se observă în diagrama de control trei parametrii q1, q2 și q3 ce apar frecvent. Acești parametrii sunt unghiurile reale și măsurate din articulațiile robotului ce sunt comparați cu vectorul de unghiuri de referință qd, de dimensiune 3×1 pentru a obține eroarea de poziționare dintre valorile reale și cele de referință.
Figura 5.2.4 – Schema logicii fuzzy aplicată
Înainte de a explica relațiile controlului mișcării la alunecare se va detalia logica fuzzy folosită pentru a determina amplificarile K și Kv, ce sunt folosite ulterior pentru a calcula cuplurile ce trebuiesc dezvoltate de actuatoarele din articulațiile de rotație ale robotului.
Schema din figura 5.2.4 prezintă pe scurt logica fuzzy și modul de aplicare a ei, pentru care datele de intrare sub formă brută sunt preluate de o funcție de fuzificare pentru obținerea datelor ce pot fi prelucrate de logica fuzzy. Aceste date sunt trecute apoi printr-o alta funcție de defuzificare pentru a calcula datele de ieșire ce pot fi folosite în continuare de către sistemul din care face parte respectiva lege de control fuzzy. În cazul nostru, legea de fuzificare este prezentată în figurile 5.2.5a și 5.2.5b, pentru care datele de intrare sunt prelucrate de funcțiile membru ale logicii fuzzy. Pentru aplicarea logicii fuzzy avem nevoie de tabelul 5.2.1 ce descrie calcularea amplificarilor în raport cu cele două intrări s și ce reprezintă calcularea suprafeței de alunecare și derivata acesteia, calcule ce sunt explicate în acest capitol. Acest tabel încorporează primele două faze ale logicii fuzzy, cele două variabile de intrare fiind fuzificate prin împărțirea pe intervale, iar valorile tabelului reprezintă aplicarea logicii fuzzy. Cea de a treia etapa, de defuzificare, o reprezintă transformarea valorilor simbolice în valori numerice.
Tabelul 5.2.1 prezintă ieșirea logicii fuzzy pentru intrările s și în care s-au folosit următoarele notații: VB = foarte mare; B = mare; M = mediu; S = mic; VS = foarte mic; NB = număr mare negativ; NM = număr mediu megativ; NS = număr mic negativ; Z = zero; PS = număr mic pozitiv; PM = număr mediu pozitiv; PB = număr mare pozitiv.
Tabelul 5.2.1 – Tabela de calculare a amplificărilor fuzzy în raport cu intrările s și
Dar, deoarece această tabelă furnizează amplificări statice, ce afectează controlul articulațiile atunci când se face trecerea de la o amplificare la alta, s-a decis folosirea unei parabole pentru calcularea amplificărilor. Această parabolă corespunde tabelului 5.2.1, numai că trecerea de la o valoare la alta se face urmărind curba parabolei. Astfel, relația (5.2.7) prezintă ecuația parabolei luată ca și referință, după ce s-au realizat mai multe teste pentru determinarea parametrilor acestei relații.
(5.2.7)
Prin introducerea datelor de intrare a legii fuzzy în relația (5.2.7), s-a obținut relația (5.2.8):
(5.2.8)
Figura 5.2.6 – Parabola de calculare a amplificării Kfuzzy
pentru intrările s=0 și între -2 și 2
Această ecuație, (ecuația 5.2.8) ne va asigura calcularea parametrului Kfuzzy pentru controlul mișcării la alunecare, iar figura 5.2.6 prezintă forma parabolei pentru intrările s=0 și între -2 și 2. Introducând această relație, calculată după realizarea tabelei logicii fuzzy fără de care nu ar fi fost posibilă, s-a reusit optimizarea procedeului de calcul a valorilor fuzzy, precum și obținerea unor valori de ieșire a logicii fuzzy ce nu mai sunt segmentate datorită metodei fuzzy de a împărți în intervale și valori parametrii de intrare și pe cei de ieșire.
Acum că s-a detaliat modul de calculare a amplificărilor fuzzy, se poate trece la detalierea controlului dinamic al mișcării la alunecare. Pentru aceasta se pleacă de la relația clasică a controlului dinamic:
(5.2.9)
în care s-a împărțit în două matricea din relația (3.3.1) ce descria parametrii datorați efectului Coriolis și cel al forței gravitaționale, rezulând matricea C al efectului Coriolis și vectorul G al efectului forței gravitaționale. Matricea M reprezintă matricea parametrilor inerțiali, iar parametrii unghiulari din spațiul articulațiilor definiți de q, sunt aceeași ca valoare cu cei din spațiul operațional ce sunt definiți de valorile vectorului .
(5.2.7)
Pentru a calcula valorile matricei M, se pornește de la formula energiei cinetice din relația (5.2.8):
(5.2.8)
și folosind relația (3.3.9) se calculează:
(5.2.9)
unde,
(5.2.10)
(5.2.11)
(5.2.12)
(5.2.13)
(5.2.14)
Acum putem calcula elementele matricei inerțiale:
(5.2.15)
(5.2.16)
(5.2.17)
unde, parametrii ri, li și mi sunt determinați de valorile din tabelul (5.1.1) iar valorile w și h sunt lațimea și adâncimea segmentelor constructive ale picioarelor robotului mobil pășitor, necesare în calcularea inerției corpului rigid, și sunt considerate de dimensiune 5mm.
Matricea efectului Coriolis C, este dată de relația (5.2.18).
(5.2.18)
Așa cum se știe efectul Coriolis depinde de inerția corpurilor afectate, în relația de calcul a acestuia, se observă faptul că efectul Coriolis este o sumă de derivate parțiale ale elementelor matricei inerțiale în raport cu gradele de libertate. Astfel, știind valorile matricei inerțiale se pot determina și cele ale matricei efectului Coriolis, iar mai jos sunt prezentate elementele aceste matrice sub forma parametrilor ijk ce adunați ca în relația (5.2.18) rezultă elementele Cij ale matricei Coriolis, unde i și j reprezintă numărul liniei și respectiv al coloanei matricei.
Ultimul parametru al ecuației dinamice necesară controlului mișcării la alunecare este acela al efectului gravitațional și anume energia potențială a robotului, pentru care s-au definit relațiile (3.3.10) și (3.3.11). Astfel putem calcula vectorul de forțe exterioare ce acționează asupra robotului.
(5.2.19)
unde, valoarea lui U a fost calculată cu relația (3.3.11) rezultând:
(5.2.20)
Știind valoarea lui U, se calculează prin derivare, elementele vectorului G(q):
După calcularea vectorului prin care este calculat efectul gravitațional ce acționează asupra robotului, am finalizat calcularea parametrilor dinamicii robotului, însemnând că se pot calcula relațiile controlului mișcării la alunecare. Pentru aceasta este necesar a se alege ecuația suprafeței de alunecare din relația (5.2.21). Această relație este preluată de la Shafiei [182], deoarece este similară unui control PID, de unde și denumirea de control al mișcării la alunecare proporțional-integrativ-derivativ (PID-SMC). La acest control adăugându-se și legea fuzzy de generare a amplificărilor, vom denumi noua lege de control Fuzzy-PID-SMC.
(5.2.21)
Această relație a suprafeței de alunecare folosește eroarea de poziționare în spațiul articulațiilor a gradelor de libertate, pentru care este aplicat un PID, rezultând un PID al erorii în calculul suprafeței de alunecare, unde
(5.2.22)
iar qd reprezintă vectorul valorilor de referință pentru articulațiile robotului, respectiv q este vectorul valorilor reale ale poziționării articulațiilor robotului preluate de la senzori și traductori și sunt exprimați în spațiul articulațiilor.
În plus, parametrii 1 și 2 sunt matrice pătratice diagonale pozitiv definite, rezultând că suprafața s=0 este o suprafață de alunecare stabilă deoarece e0 când t.
Plecând de la relațiile (5.2.6) și (5.2.21) încercăm să rescriem ecuația dinamicii pentru a introduce relația suprafeței de alunecare. Astfel, rescriem relația (5.2.21) sub forma (5.2.23) precum și derivata lui s în relația (5.2.24).
(5.2.23)
(5.2.24)
Folosind relațiile (5.2.23) și (5.2.24) putem rescrie ecuația dinamicii (5.2.6) astfel:
(5.2.25)
unde,
(5.2.26)
Folosind relațiile (5.2.25) și (5.2.26) putem considera relația (5.2.27) ca și intrarea sistemului de control al articulațiilor.
(5.2.27)
unde,
(5.2.28)
și reprezintă estimarea forței f. este bucla exterioară de control PID iar Kv și K sunt matrice pozitiv definite și sunt construite pentru a satisface și garanta condițiile de stabilitate. În mod obișnuit, în locul funcției de saturație, se folosește funcția de semn, dar aici s-a folosit aceasta deoarece reduce substanțial efectul de „chattering” atunci când poziționarea articulațiilor sunt în vecinătatea suprafeței de alunecare.
Pentru a putea controla într-un mod stabil stările sistemului precum și de a ajunge la suprafața de alunecare s=0 într-un timp limită, legea de control trebuie să îndeplinească condiția următoare[82]:
(5.2.29)
Această condiție este îndeplinită așa cum a arătat Shafiei în [182].
De asemenea trebuie definită funcția de semn:
(5.2.30)
unde „s” este valoarea precalculată din relația (5.2.21), iar determină zona din jurul suprafeței de alunecare în care se dorește ca poziția articulației să rămână. Valoarea lui este aleasă la 0,167. De asemenea valorile matricelor 1, 2, K și Kv sunt ajustate pentru a obține o performanță cât mai bună.
Folosind relațiile descrise în această sectiune, s-a dezvoltat o simulare Matlab Simulink pentru a testa metoda de control la alunecare folosind anumite îmbunătățiri propuse de această lucrare. Printre acestea se număra metoda fuzzy folosită pentru ajustarea parametrilor PID-SMC ce este scrisă sub forma unei ecuații și nu tabelară. De asemenea, s-a observat faptul că dacă sistemul prezintă erori mari în timp, datorate unor perturbații ale semnalului de eroare, partea integrală se propagă în sistem, rezultând o eroare medie mai mare. De aceea, s-a decis a se introduce o funcție similară cu cea de semn, pentru a reduce valoarea lui s, ce afectează eroarea sistemului. Astfel, s-a ales ca pentru o eroare între e_min și e_max să se scaleze partea integrală cu o valoare „k” astfel:
(5.2.31)
Rezultând:
(5.2.32)
Schemele Matlab Simulink aferente programului realizat, sunt prezentate în Anexa 1. În figurile din această anexă se pot observa toate blocurile necesare simulării controlului PID-SMC cu logica fuzzy. Mai mult, se poate observa un bloc de calculare a cinematicii inverse, ce a fost folosit într-o ulterioară aplicație prezentată în această lucrare, dar care pentru demonstrarea eficienței acestei metode de control, a fost eliminată, eliminând în același timp și problemele legate de problema inversă a cinematicii unui robot. Și s-a decis prezentarea controlului a două articulații ce demonstrează eficacitatea schemei de control.
Figura 5.2.6 – Referința unghiulară pentru două articulații
Prima parte a unei simulări, este evident partea de parametrizare, în care sunt stabilite constantele. Apoi, urmează funcțiile de generare a referinței. Referința pentru acest sistem este prezentată în figura 5.2.6.
Se observă că s-au generat 2 referințe sinusoidale pentru două din cele trei articulații, deoarece s-a considerat că prima articulație, și anume aceea ce face legătura cu platforma robotului, nu este necesară pentru demonstrarea eficienței metodei de control Fuzzy-PID-SMC. Semnalul de culoare albastră reprezintă referința pentru articulația soldului, iar semnalul de culoare roșie reprezintă referința pentru articulația genunchiului. Aceste referințe au fost calculate folosind două semnale sinusoidale de amplitudine 1 și frecvența și ecuațiile din relația (5.2.33).
(5.2.33)
Plecând de la aceste semnale, s-au introdus două perturbații ce au crescut și respectiv scăzut brusc semnalul de referință pentru testarea comportamentului legii de control la perturbații după un timp de 4 secunde și respectiv 6 secunde, pentru ambele semnale de referință. De asemenea, la finalul simulării, începând cu secunda 8, semnalele de referință au crescut și respectiv scăzut către o valoare fixă de 60 respectiv 0 grade pentru cele două articulații. Figura 5.2.7 prezintă poziționarea reală a articulațiilor în raport cu semnalele de referință.
Figura 5.2.7 – Poziționarea articulațiilor în raport cu referința
Se observă în figura 5.2.7 că poziționarea din articulații urmărește foarte bine referința, iar perturbațiile sunt compensate în mod uniform, fără ca semnalul de poziționare să înregistreze deplasări bruște sau excesive. În schimb, atunci când semnalul de referință devine uniform, se observă un suprareglaj, ambele articulații încercând să compenseze diferența bruscă din eroare, și din cauză că semnalul de referință rămâne fix, semnalul de urmărire tinde către acesta. Figura 5.2.9 și 5.2.10 prezintă semnalele de eroare în grade.
Pentru ca simularea să ofere date cât mai concludente asupra comportamentului sistemului de control, s-a adăugat celor două articulații, o sarcină variabilă de amplitudine 0,5Nm prezentată în figura 5.2.8. Această sarcină are rolul de a acționa ca o perturbație exterioară variabilă și continuă pentru a se observa comportamentul sistmemului în cât mai multe cazuri.
Figura 5.2.8 – Sarcina în cuplu, atașată articulațiilor
Figura 5.2.9 – Eroarea de poziționare pentru cele două articulații
Figura 5.2.10 – Eroarea de poziționare pentru cele două articulații, mărită
Figura 5.2.11 – Eroarea de poziționare pentru cazul când k=1
După cum se poate observa, la o primă vedere, comportamenul noii legi de control Fuzzy-PID-SMC îmbunătățită cu parametrul k, prezintă o eroare de poziționare îmbunătățită precum și o viteză mai mare, de a ajunge în vecinătatea referinței. Dar, deși eroarea de poziționare este mai bună pentru cazurile în care piciorul robotului are o referință ce îl face a se mișca continuu, în cazul când referința este un punct fix în spațiu, se obervă că noua lege de control are puncte în care nu este perfect stabilă. Se observă în figura 5.2.12 pentru articulația a doua că în funcție de limitele în care parametrul k este modificat, există anumite puncte de instabilitate a legii de control.
Astfel, pentru un k, ales între limitele erorii de [0,35; 0,75] grade avem in figura 5.2.12, la secunda 7,15 o creștere bruscă a erorii din articulația 2, lucru ce nu se întâmplă în alte simulări. Iar pentru un k, ales între limitele erorii de [0,1; 0,75] grade, se observă în figura 5.2.13 că nu mai apare acea creștere bruscă de la secunda 7,15, în schimb după ce semnalul de referință devine constant, sistemul ajunge într-o stare de oscilație între limitele impuse erorii pentru calcularea parametrului k, până când viteza din articulație nu mai poate fi compensată, iar aritculația conduce piciorul robotului în afara zonei din vecinătatea suprafeței de alunecare, lucru ce se observă printr-o creștere bruscă și foarte mare a erorii. De accea, parametrul k, trebuie să fie ales astfel încât sistemul să nu ajungă în aceste stări de instabilitate. Astfel, se observă în figura 5.2.14 că pentru un k calculat separat numai pentru articulația din genunchi cu limitele erorii alese în intervalul [0,15; 0,75] grade, sistemul de control nu mai are puncte de instabilitate, rezultând un sistem Fuzzy-PID-SMC mai performant.
Figura 5.2.12 – Eroarea de poziționare pentru cazul 1, în care parametrul k al articulației 2 este rău condiționat, pentru o valoare a erorii în intervalul [0,35; 0,75]
Figura 5.2.13 – Eroarea de poziționare pentru cazul 2, în care parametrul k al articulației 2 este rău condiționat, pentru o valoare a erorii în intervalul [0,1; 0,75]
Figura 5.2.14 – Eroarea de poziționare pentru cazul 3, în care parametrul k al articulației 2 nu este rău condiționat, pentru valoare a erorii în intervalul [0,15; 0,75]
Observând figura 5.2.13, se observă că în timpul urmăririi referinței sinusoidale, eroarea oscilează în funcție de panta pe care referința o are, iar eroarea se stabilizează în intervalul [-0,5; 0,5] grade pentru prima articulație și în intervalul [-0,3; 0,3] grade pentru cea de a doua articulație. Dacă ne uităm la momentele de apariție a perturbațiilor, realizate prin scăderea respectiv creșterea bruscă a valorilor de referință, observăm o revenire în domeniul erorilor minime într-un interval de timp ce variază între 0,2 secunde și 1,5 secunde. Aceste diferențe apar datorită momentelor în care apare eroarea, sistemul reușind să compenseze mult mai rapid perturbațiile ale căror valori nu schinbă semnul vitezei erorii de poziționare.
Pentru cazul în care referința de poziție se stabilizează la o valoare fixă, obervăm că sistemul nu reușește să se stabilizeze la o valoare constată, și oscilează în intervalul de eroare de [-0,2; 0,2] grade pentru prima articulație, respectiv [-0,4; 0,4] grade pentru a doua articulație. Acest lucru se datorează cuplului de sarcină adăugat fiecărei articulații, fapt ce perturbă sistemul în mod constant influențând poziționarea unghiulară a robotului.
Dacă în schimb eliminăm această sarcină pentru o singură articulație, putem observa în figura 5.2.15 că sistemul reușește să ajungă la o eroare zero, atunci când referința devine constantă, iar eroarea de poziționare în cazul când referința este o sinusoidă, scade ajungând să fie în intervalul [-0,4; 0,4] grade.
Figura 5.2.15 – Eroarea de poziționare pentru cazul când este eliminată sarcina în cuplu pentru articulația 1
Pentru a verifica rezultatele obținute, este necesară nunumai o analiză a datelor obținute dar și o comparație cu rezultate prezentate în lucrări de specialitate. Deoarece, rezultatele obținute sunt datorate unor ecuații folosite și de către autorul lucrării [158], este necesar să comparăm performanțele rezultatelor obținute cu cele din lucrarea respectivă.
Astfel, rezultatele obținute de autorul lucrării [158] prezintă o eroare mai mică, pentru o amplitudine a semnalului de referință mai mică față de cea considerată în această lucrare, atunci când referința este sinusoidală. În plus, autorul nu a studiat efectele pe care le pot avea diverse perturbații introduse în semnalul de intrare, lucru studiat în această lucrare. De aceea, poate că eroarea de urmărire nu este la fel de precisă, în schimb, revenirea în cazul perturbațiilor este mult îmbunătățită, iar perturbațiile exterioare din motoare sunt compensate foarte bine. Dar, compensarea perturbațiilor de orice fel are o importanță mai mare în cazul roboților mobili pășitori, decât urmărirea cu o precizie de 10-3 grade.
În cazul lucrării [149], autorii prezintă rezultate foarte bune în diagramele de comparare a semnalelor de referință și urmărire, fără să prezinte exact eroarea obținută. În schimb prezintă o diagramă a semnalului s, în care se observă că acesta oscilează în jurul unei valori de 0,03. În schimb referința urmărită urmează o traiectorie în intervalul [-0,15; 0,15] grade, însemnând că sistemul nu are o amplitudine foarte mare de urmărit și de aici se și înțelege de ce sistemul are o urmărire așa de precisă. Dar, modalitatea de realizare a sistemului, în care autorii menționează 25 de reguli pentru aproximarea relațiilor sistemului, iar legea fuzzy de reglare ce are 5 valori membru, care să diferențieze intrările sistemului, înseamnă că și pentru valori mai mari de intrare, sistemul ar trebui să se comporte bine, și chiar și în cazurile de perturbații, care nici în această lucrare nu apar tratate.
Dacă în majoritatea cazurilor, cercetătorii s-au axat mai mult pe îmbunătățirea preciziei de poziționare, autorii lucrării [154] au vrut să dezvolte un control de rejecție a perturbațiilor. Astfel, comparativ cu realizările din această lucrare, autorii reușesc să obțină o eroare foarte mică pentru perturbații de +-10 unități (autorul nu prezintă unitatea de măsură). Numai că referința pentru care perturbația a fost introdusă este una constantă, iar perturbația este de tipul treaptă, sistemul reușind să compenseze aceste perturbații foarte bine.
În schimb, lucrarea [151], prezintă un control SMC care rejectează mult mai bine perturbațiile. Și chiar dacă nu se cunoaște traiectoria de referință și semnalul de perturbație, făcând o comparație între controlul clasic SMC și cel hibrid realizat de autorul publicației, se observă o creștere a performanțelor controlului SMC. Această lucrare publicată în 2011, se poate spune că depășește performanțele rezultatelor obținute în prezența perturbațiilor.
Dar, această aplicație de simulare a controlului Fuzzy PID-SMC este necesară pentru a putea prezenta principalele contribuții aduse controlului hibrid, iar prin dezvoltarea acestui control, s-au adus alte contribuții pentru îmbunătățirea controlului mișcării la alunecare.
Prima contribuție o reprezintă logica fuzzy folosită pentru calcularea amplificărilor. Această metodă presupune dezvoltarea unei funcții ce are la bază un tabel clasic de calculare fuzzy, tabel ce este defapt o tehnică de defuzificare a valorilor fuzzy calculate. Aici, defuzificarea se face folosind o funcție special concepută pentru a controla un robot mobil pășitor și printr-o simplă calculare a ieșirii în funcție de parametrii de la intrare, rezultă o optimizare a calculului în timp real pentru amplificările necesare.
O a doua contribuție o reprezintă introducerea parametrului „k” în interiorul calculării suprafeței de alunecare „s”. Prin acest parametru s-a reușit reducerea erorii unghiulare în timpul funcționării, iar optimizarea calculării acestuia, a codus la un control precis și stabil, așa cum a fost și prezentat în rezultatele obținute. Mai mult, deoarece componenta integrală a controlului este eliminată, sistemul de control nu mai prezintă supra reglaje. Aceste suprareglaje apăreau tocmai datorită componentei integrale, ce creștea foarte mult din pricina perturbațiilor introduse în sistem. Dar cea mai importantă problemă a factorului integral nu este creșterea momentană a valorii acestuia, deoarece este necesar pentru compensarea factorilor perturbatori, ci faptul că valorea mare se păstrează în timp, fiind redusă numai de o valoare negativă la fel de mare, ceea ce conduce sistemul către suprareglaj.
5.3. Contactul elastic cvasi-static 3D în controlul roboților
Contactul dintre roboți și suprafețele de lucru este un subiect special tratat de mulți cercetători folosind diferite tehnici de a controla forța de contact. În schimb, pentru roboții mobili pășitori această problemă este transformată dintr-o problemă de menținere a forței de contact într-una de a menține fiecare picior într-o poziție în care acestea să nu alunece, deoarece forța de contact poate varia, dar ea va exista în totdeauna atunci când piciorul robotului este în faza de suport al platformei acestuia. De aceea este necesar a se dezvolta algoritmi de prevenire a alunecării prin tehnici de detecție a momentelor când alunecarea poate apare. Dar, această problemă este una mai dificilă decât pare la prima vedere deoarece coeficientul de frecare µ poate varia pe suprafețele de contact, iar forța de frecare introduce fenomenul de alunecare-nealunecare sau stick-slip[175] ce apare atunci când forța de frecare are amplitudinea aproximativ egală cu componenta pe acceași direcție dar de sens opus al forței de tracțiune ce acționează asupra tălpii piciorului ce este în contact direct cu suprafața de sprijin.
Astfel au fost analizate legile de frecare Coulomb pentru contactul elastic cvasi-static 3D aplicate roboților mobili pășitori. Aceste analize reprezintă una dintre problemele mecanicii solidului, deoarece se ocupă de analiza efectelor frecării la contactul dintre două corpuri rigide. Legile și parametrii frecării neliniare (alunecare-nealunecare) sunt dependeți de timp. Acest efect de alunecare-nealunecare este cauzat de contactul dintre cele două suprafețe, alunecând și nealunecând una peste cealaltă cu o schimbare corespunzătoare în forța de frecare pentru fiecare fază.
Atunci când fenomentul de alunecare-nealunecare apare frecvent, acesta va duce la uzarea suprafețelor de contact și deteriorarea acestora. În cazul nostru se va deteriora suprafața de pe talpa piciorului robotului, suprafață ce poate conține senzori de măsurare a proximității și a forței de apăsare asupra solului.
Scopul realizării acestei aplicații este de a furniza roboților mecanismul și algoritmul de detecție a stărilor de alunecare-nealunecare în care se poate afla talpa unuia dintre picioarele robotului.
Astfel, conform autorilor articolului [175], există trei stări în care talpa piciorului se poate afla: starea de separare în care cele talpa piciorului poate să de îndepărteze de suprafața de sprijin; starea de nealunecare în care piciorul robotului se află într-un contact rigid cu surpafața de contact; și starea de alunecare în care piciorul robotului îndeplinește condiția de alunecare. Condițiile de mai jos reprezintă condițiile pe care robotul trebuie să le îndeplinească în raport cu suprafața de sprijin pentru ca piciorul robotului să se afle în cele trei stări[175].
Starea de contact deschis:
și R=0 (5.3.1)
Starea de nealunecare:
, (5.3.2)
Pentru care legea Coulomb furnizează relația:
(5.3.3)
Starea de alunecare:
(5.3.4)
Pentru care legea Coulomb furnizează relația:
, (5.3.5)
rezultând că forța de frecare rezultată are amplitudinea lui µR3 și este pe direcția opusă direcției instantanee de deplasare[175].
Iar, u3 este direcția pe verticală definită de cele trei grade de libertate de translație u1, u2 și u3 care se pot defini pentru două corpuri în contact dar și pentru talpa piciorului robotului mobil pășitor; µ este coeficientul de frecare; Rk (k=1:3) reprezintă forța de reacțiune 3D pe cele trei axe OX, OY și OZ, R3 fiind pe axa verticală.
Știind condițiile celor trei stări, se poate exprima relația de calcul a condiției limită a stărilor de alunecare și nealunecare pentru momentul de timp t:
(5.3.6)
Având această condiție se poate verifica ușor momentele de trecere de la o stare la alta prin compararea valorilor date de relația (5.3.6) dar și a evoluției în timp a acesteia. Pentru un robot mobil pășitor, această condiție este necesară pentru determinarea momentelor când piciorului robotului este pe punctul de a aluneca conducând robotul către o stare de răsturnare. Pentru a determina cât de eficient este un astfel de algoritm, s-a realizat o simulare, în care s-au testat condițiile de apariție a stărilor de alunecare și nealunecare dar și efectele pe care eșantionarea le poate avea pentru un astfel de algoritm.
Figura 5.3.1 – Generarea unghiului de înclicare a suprafeței de sprijin a robotului
Pentru realizarea simulării acestor condiții s-a considerat a avea un pendul inversat, al cărui unghi de înclinare cu orizontala este dat de funcția prezentată grafic în figura 5.3.2. Mai mult figura 5.3.1 prezintă diferitele înclinări ale suprafeței de sprijin luate în calcul, deoarece acest unghi influențează substanțial fenomentul de alunecare-nealunecare.
Figura 5.3.2 – Generarea unghiului de incidența cu solul a piciorului robotului
Se observă în figura 5.3.1 că înclinația solului pleacă de la 0 grade pentru o suprafață orizontală și ajunge la un unghi de 45 de grade prin saltui fixe de câte 15 grade la momentele de timp 3, 6 și 9 secunde de la pornirea simulării. Așa cum s-a precizat, figura 5.3.2 prezintă funcția de generare a unghiului pentru pendulul inversat, funcție ce are forma unei sinusoide cu amplitudine de 45 valoare ce reprezintă unghiul format de tija pendulului cu orizontala.
În continuare se vor prezenta rezultatele obținute pentru mai multe valori ale coeficientului de frecare.
Figura 5.3.3 – Rezultatul simulării pentru un µ=0,1 și o rată de eșantionare de 0,001s
Figura 5.3.4 – Rezultatul simulării pentru un µ=0,25 și o rată de eșantionare de 0,001s
Figura 5.3.5 – Rezultatul simulării pentru un µ=0,5 și o rată de eșantionare de 0,001s
Figura 5.3.6 – Rezultatul simulării pentru un µ=0,75 și o rată de eșantionare de 0,001s
Se observă în figurile 5.3.3-5.3.6 că pentru un coeficient de frecare foarte mic, condiția de nealunecare (5.3.6) este îndeplinită doar în anumite puncte ale poziției pendulului, puncte ce cresc odată cu valoarea coeficientului de frecare. Pentru aceste teste s-a considerat că pendulul are o greutate de 1,5 Kg ce acționează asupra punctului de sprijin, iar valorile prezentate grafic de „0” și „1” reprezintă momentele de îndeplinire a condițiilor pentru ca talpa piciorului să fie în starea nealunecare și respectiv de alunecare.
Figura 5.3.7 – Rezultatul simulării pentru un µ=0,5 și o rată de eșantionare de 0,08s
Figura 5.3.8 – Rezultatul simulării pentru un µ=0,5 și o rată de eșantionare de 0,125s
Pentru aceleași condiții de simulare, în care coeficientul de frecare a fost ales fix la o valoare de µ=0,5 s-au testat mai multe rate de eșantionare pentru a verifica influența acestora în procesul de detecție a stărilor de alunecare-nealunecare. Astfel, figurile 5.3.7 și 5.3.8 prezintă rezultatul simulării pentru intervale de eșantionare mai mari. În figura 5.3.7 rata de eșantionare a fost aleasă de 0,08 secunde și deja se observă o detecție mai târzii a momentelor de trecere de la starea de nealunecare la cea de alunecare a tălpii piciorului mobil pășitor. În schimb atunci când intervalul de eșantionare trece de 0,125 secunde algoritmul nu mai poate detecta toate schimbările deoarece datele de intrare sunt furnizate mult mai târziu, rezultând în ratarea completă a anumitor momente de alunecare ca cea prezentă la secunda 6 din figurile 5.3.5 și 5.3.7.
Discontinuitatea legii de frecare Coulomb la o viteză practic zero reprezintă o problemă computațională în problemele de contact cu frecare. Deși este simulat un algoritm ce prezintă o formă continuă a acestei probleme, nu se pot elimina complet dificultățile de calcul. Astfel, folosind tehnica iterativă Newton-Raphson de a detecta momentul de tranziție de la o stare de nealunecare la una de alunecare, aceasta poate furniza valori neconvergente atunci când rata de eșantionare nu este suficient de mare. Acest lucru a fost evidențiat și rezolvat prin reducerea pasului de eșantionare până când algoritmul de detecție a putut detecta toate momentele de trecere de la o stare de nealunecare la cea de alunecare.
5.4. Controlul hibrid forță-poziție în conducerea unui robot mobil pășitor
Pentru a demonstra validitatea noii metode de control hibrid forță-poziție elaborate, s-a implementat și simulat schema de control hibrid, folosind o reprezentare simulată a unui robot mobil pășitor, prezentat în capitolul 5.1. Ca și mai devreme, am considerat numai controlul unui singur modul al robotului, rezultând un robot mobil pășitor biped pentru care nu trebuie să ne gândim la problema răsturnării acestuia. Mai mult, s-au folosit două metode de control a robotului, reducând problema de la una în care ar trebui să se aleagă între n+m metode de control, la o problemă în care se va face comutarea între două legi de control în poziție, demonstrând că noua schemă de control din figura 4.1, este superioară celei originale prin faptul că poate beneficia de mai multe tipuri de legi de control în diferite momente de timp.
Pentru aceasta, s-a realizat o simulare complexă în Matlab Simulink. Această simulare se folosește de modulul de funcții SimMechanics (anexa 3) pentru a simula în condiții cât mai aproape de realitate robotul mobil pășitor precum și interacțiunea acestuia cu mediul înconjurator. Aceste funcții permit realizarea unei structuri a robotului, pentru care fiecare element al structurii robotului interacționează cu celălalt prin intermediul unor condiții impuse, dar sub acțiunea forței gravitaționale, elementele având masă și inerție. Mai mult articulațiile plasate sunt controlate de motoare în funcție de cuplurile furnizate ca referință. Astfel, toate legile de control sunt nevoite a fi realizate pentru un control în cuplu a articulațiilor robotului.
Ca să se demonstreze eficacitatea noii scheme de control hibrid, s-a decis ca legea de comutare neutrosophică să aleagă între două legi de control în poziție a două picioare ale robotului mobil pășitor, împărțind ca și mai devreme, robotul mobil hexapod în module de câte două picioare. Rezultă astfel o schemă de control hibrid îmbunatățit forță-poziție pentru un robot mobil pășitor biped. Deși în cazul simulat nu se folosesc legi de control în forță, acestea se pot adăuga cu ușurință, pentru alte aplicații ce au nevoie de o asemenea urmărire a forței de contact.
Figura 5.4.1 – Schema controlului hibrid forță-poziție simplificată pentru conducerea unui robot mobil pășitor biped
Pentru acest robot mobil pășitor biped, s-a realizat o formă simplificată a schemei de control din figura 4.1 prezentată în figura 5.4.1, iar pentru o mai bună înțelegere a mecanismului din spatele noului control hibrid îmbunătățit forță-poziție, s-a realizat schema de control din figura 5.4.2.
Astfel, figura 5.4.2 prezintă așa cum s-a spus deja, varianta redusă a schemei de control hibrid îmbunătățit forță-poziție pentru două legi de control. Aceste două legi de control vor controla robotul mobil pășitor biped în cuplu, plecând de la o referință în poziție exprimată în coordonate Carteziene.
Structura robotului mobil pășitor biped este aceeași structură ca cea prezentată deja în această lucrare în capitolul 5.1. Astfel, relațiile cinematicii inverse au fost deja prezentate în capitolul 5.2 în relațiile (5.2.1), (5.2.2) și (5.2.3). Având deja aceste relații se poate calcula cu o mai mare ușurință referința unghiulară a fiecărei articulații, deoarece toate articulațiile sunt articulații de rotație.
Figura 5.4.2 – Schema de control hibrid îmbunătățit forță-poziție redusă la cele două tipuri de control folosite
Înainte să detaliem realizarea robotului în mediul virtual precum și descrierea legilor de control, este necesară detalierea datelor calculate, în locul senzorilor, deoarece mediul virtual ne oferă uneltele de lucru dar nu și componente deja realizate. Cu excepția senzorilor unghiulari din articulațiile robotului, a fost necesar să se conceapă funcții de simulare a senzorilor de proximitate și forță montați pe robot. Pentru senzorul de proximitate, s-au preluat poziționările tălpilor picioarelor furnizate de mediul de lucru și în raport cu o suprafață de sprijin prestabilită s-au calculat prin însumare/scădere distanța de la talpa piciorului la această suprafață.
În schimb, senzorul de forță a fost mai dificil de realizat. Pentru aceasta se modelează interacțiunea dintre robot și suprafața de sprijin printr-un sistem de simulare a unui contact elastic. Acest sistem folosește un arc și un amortizor pentru a determina forța de reacțiune a suprafeței de sprijin, forță ce trebuie aplicată tălpii piciorului robotului în sistemul de simulare, dar și furnizată metodei de comutare neutrosophică.
Figura 5.4.3 – Interacțiunea dintre robot și suprafața de sprijin
Figura 5.4.3 prezintă exact sistemul de simulare a contactului elastic ce furnizează forța de reacțiune a suprafeței de sprijin. Acest lucru se introduce în schema de simulare printr-o funcție prezentată în relația (5.4.2).
(5.4.2)
unde, k și c sunt constantele de elasticitate ale arcului R și de amortizare ale amortizorului D, iar x reprezintă distanța de deformare a celor două elemente față de poziția inițială x0 ce împreună cu derivata ei ne permite calcularea acestei forțe de reacțiune.
Acum că se cunosc metodele de calculare a celor doi parametrii fără de care nu se poate realiza comutarea neutrosophică, este necesar a se descrie cele două tipuri de control folosite.
5.4.1. Metoda de control cinematic
Această metodă folosește informația dată de funcția de calcul a cinematicii inverse al cărei algoritm este prezentat în anexa 4. Plecând de la aceste date în spațiul articulațiilor, s-a realizat o schemă de control bazată pe date cinematice denumită „Control Cinematic”. Astfel, figura 5.4.4 prezintă această schemă în care se pot observa toate elementele componente.
Figura 5.4.4 – Schema de control cinematic
Se observă că schema de control cinematic din figura 5.4.4 pleacă de la o referință carteziană ce este transformată în valori din spațiul articulațiilor de către blocul de calcul a cinematicii inverse, valori ce sunt comparate cu cele măsurate în articulațiile robotului. Calculând eroarea de poziționare unghiulară, se trece efectiv la controlul cinematic. Astfel sunt realizate două bucle de control intern, iar cea exterioară de comparare a valorilor unghiulare este cea de a treia buclă de control a acestui sistem de poziționare. Cele două bucle de control intern controlează sistemul în funcție de viteza unghiulară măsurată din articulațiile robotului respectiv în funcție de accelerația de deplasare a articulațiilor de rotație. Toate aceste valori furnizează o eroare a cuplului din motoare, ce adunată cu valoarea anterioară de control a cuplului, se obține valoarea cuplului pe care fiecare motor din articulații trebuie să o dezvolte.
(5.4.3)
Relația (5.4.3) prezintă ecuația ce transformă datele de intrare ale controlului cinematic, în date de ieșire ce sunt furnizate motoarelor.
S-a dorit realizarea unui control simpul și eficient, pentru deplasarea picioarelor robotului în timpul mișcării de pendulare pe care fiecare picior o realizează pentru a efectua fiecare pas. Deoarece în timpul acestei mișcări nu este necesar un control de poziționare cât mai precis ci este necesar un control al vitezei și accelerației piciorului pentru ca acesta să ajungă la destinație într-un timp util efectuării unui pas. Mai mult, capacitatea de procesare a acestui algoritm este foarte mică însemnând că în timp ce piciorul în faza de pendulare are nevoie de resurse computaționale minime, aceste resurse pot fi alocate altor operațiuni de calcul a referinței sau de control al picioarelor ce sunt în contact cu solul. Aceste picioare în contact cu solul au rolul de suport al robotului și necesită resurse computaționale mai mari datorită algoritmilor mai complicați folosiți.
5.4.2. Metoda de control dinamic
Metoda de control dinamic folosită pentru demonstrarea contribuțiilor aduse controlului hibrid, este metoda de control la alunecare. Această metodă a fost deja prezentată în această lucrare pentru a evidenția contribuțiile de îmbunătățire aduse acestei metode. Deoarece se folosește aceeași structură a robotului mobil pășitor ca și în simularea deja prezentată, nu se vor mai prezenta ecuațiile dinamice ale metodei de control a mișcării la alunecare Fuzzy-PID-SMC. În schimb, deoarece de data aceasta referința este dată în sistem Cartezian, trebuie să fie prezentată schema de control dinamic, schemă ce este o parte integrantă a schemei de control hibrid îmbunătățit.
Figura 5.4.5 – Schema de control dinamic a robotului mobil pășitor
Ca și la controlul cinematic, se folosește aceleași date degenerate de către blocul de generare a referinței carteziene ce apoi sunt transformate în date reprezentate în spațiul articulațiilor de către funcția de calcul a cinematicii inverse a robotului. Având aceste date unghiulare, se calculează eroarea de poziționare ce este folosită în mod direct dar și indirect prin intermediul funcțiilor de calculare a parametrului „s” dar și a amplificărilor fuzzy, de către legea de control a mițcării la alunecare, prescurtată cu Fuzzy-PID-SMC. De asemenea, această lege de control folosește și datele dinamice ale robotului, date ce reprezintă o compomentă importantă a controlului dinamic. Rezultatul acestor calcule este compus dintr-un vector de dimensiune egală cu numărul de grade de libertate controlate ce conține referința în cuplu pe care motoarele robotului trebuie să o dezvolte în articulații.
O funcție simplă a schemei dinamice ar fi cea din relația (5.4.4).
(5.4.4)
Această funcție calculează cuplul de control al motoarelor folosind relațiie descrise în capitolul 5.2 în care s-a prezentat pe larg controlul mișcării la alunecare.
Se observă că față de controlul cinematic, aici nu avem nevoie de informația furnizată de senzorii de viteză și accelerație unghiulară, deoarece controlul se bazează pe blocul de dinamică al robotului, iar legile de calcul PID și fuzzy folosesc ca date de intrare numai eroarea de poziționare unghiulară a articulațiilor. Această schemă de control dinamic este un control în spațiul articulațiilor, de unde și nevoia de calculare a funcției cinematicii inverse.
5.4.3. Simularea robotului mobil pășitor în Matlab Simulink
Pentru a putea determina cu precizie ridicată dacă o lege de control aplicată unui robot, va funcționa în mod realist și pe o structură reală, atunci avem nevoie de anumite programe special dezvoltate. Aceste programe sunt în stare să simuleze într-un mod realist și precis structuri mecatronice. Mai mult, pe lângă reprezentarea acestor structuri, este necesar ca mediul de lucru să corespundă legilor fizicii, pentru ca interacționarea între elementele structurale ale robotului precum și între acestea și mediul înconjurător să fie cât mai aproape de realitate posibil. Acestea ar fi primele condiții impuse unui program de dezvoltare și simulare a unor structuri mecatronice. De asemenea, este necesar ca efectul gravitațional și inerțiile ce apar în timpul unei simulări să aibe un efect corect asupra structurii mecatronice.
Pentru realizarea structurii cinematice a robotului mobil pășitor s-a folosit un asemenea program de simulare și anume Matlab Simulink împreună cu libraria de funcții specializate pe modelare 3D și interacțiune cu mediu cu numele de SimMechanics V2. Folosind această librarie s-a realizat schema de simulare și comandă a robotului, prezentată în anexa 3.
Tot în anexa 3 sunt trei figuri ce prezintă robotul mobil pășitor biped obținut în urma simulărilor. După cum se poate observa în aceste figuri, programul ține cont de axele de coordonate ale fiecărui element contstructiv, precum și de centrele de masă. Pentru toate aceste elemente, au fost desemnate caracteristicile de material. Acestea sunt prezentate în tabelul 5.4.1.
Tabel 5.4.1 – Caracteristicile constructive ale componentelor robotului
Tabelul 5.4.1 prezintă caracteristicile constructive ale elementelor principale ale robotului simulat. Acestea sunt platforma robotului de care sunt prinse cele două picioare ale căror compomente principale sunt: elementul denumit șold ce face legătura între platforma robot și restul piciorului, printr-o articulație de rotație în jurul axei perpendiculare pe platformă; femurul fiecărui picior ce este prins de elementul șold printr-o articulație de rotație a cărei axă de rotație este perpendiculară pe axa de rotație a articulației anterioare elementului șold; tibia, ultimul element constructiv al piciorului ce este legat de femurul piciorului printr-o articulație de rotație a cărei axă de rotație este paralelă cu cea de dinaintea sa. Figura 5.4.6 prezintă schematic un picior al robotului mobil pășitor împreună cu articulațiile sale și denumirile fiecărui element, iar figura 5.4.7 prezintă structura unui modul din cele trei ale robotului mobil pășitor hexapod simulată în Matlab.
Figura 5.4.6 – Structura unui picior al robotului mobil pășitor
Figura 5.4.7 – Robotul mobil pășitor biped simulat folosind Matlab Simulink – SimMechanics
Pentru a putea realiza această simulare, programul software Matlab Simulink împreună cu pachetul de librării SimMechanics, oferă numai elementele de bază ce trebuiesc utilizate pentru a îndeplinii obictivele propuse. Astfel, se construiește structura robotului pornind de la elemente geometrice de bază, ce sunt legate între ele prin intermediul unor structuri ce simulează articulațiile. Mai mult aceste conexiuni se realizează la anumite deplasări față de centrul de masă al fiecărui element în parte.
Articulațiile folosite în simulare sunt articulații de rotație pentru care s-a ales axa de rotație offline din parametrii fiecărui element. Mai mult, s-a decis ca aceste articulații să fie controlate în cuplu, iar fiecare dintre ele să aibe câte trei senzori ce măsoară poziția unghiulară în radiani, viteza unghiulară în rad/s și accelerația unghiulară în rad/s2.
Figura 5.4.8 – Construirea articulației de șold și a segmentului de șold a piciorului
Figura 5.4.8 prezintă modalitatea de realizare a unei articulații și a unui segment rigid din structura unui picior al robotului mobil pășitor. Astfel, se observă că între fiecare element există un bloc de modificare a poziției, fie că este vorba de o deplasare Carteziană, fie o rotație în jurul unei axe cu un unghi fix, în cazul nostru fiind 90 de grade. În plus se observă porturile de intrări/ieșiri prin care funcția de simulare a robotului primește parametrii de comandă reprezentați de cuplurile motoare și furnizează la ieșire cele trei date măsurate de poziție, viteză și accelerație unghiulară ale articulației.
Această schemă din figura 5.4.8 se repetă pentru fiecare element constructiv al fiecărui picior, dar cu modificările necesare pentru a corespunde cu structura concepută a robotului.
O altă componentă necesară pentru a putea simula în mod corespunzător modulul robotului mobil pășitor hexapod, este introducerea unei articulații carteziene, reprezintând o articulație cu trei grade de libertate, toate de translație. Aceasta înseamnă că platforma robotului se poate deplasa pe toate cele trei axe, dar nu se poate roti. Introducerea acestei articulații ce face legătura dintre platforma robot și mediu este necesară pentru ca robotul să fie liber în spațiu și nu legat de un punct din spațiul de simulare operațional. Mai mult, se folosește articulația cu 3DOF de translație în locul uneia universale pentru că modulul de robot mobil pășitor biped face parte din structura robotului hexapod, rezultând că această platformă cu 2 picioare nu se poate roti în orice direcție datorită mișcării picioarelor, mișcare ce introduce în sistem anumite forțe de reacțiune. Figura 5.4.9 prezintă această articulație, ce ne furnizează și poziția în spațiul operațional față de un punct fix prin intermediul a trei semnale, fiecare dintre acestea măsurând poziția pe fiecare axă Carteziană dintre acel punct fix în spațiu și centrul de masă al platformei.
Figura 5.4.9 – Articulația cu 3DOF de referință cu mediul de lucru în spațiul operațional
Folosind toate aceste componente s-a realizat structura robotului mobil pășitor biped ce se poate deplasa în spațiul operațional. Numai că pentru ca mișcarea să poată să fie realizabilă, este nevoie ca în talpa fiecărui picior să fie adăugate forțele de reacțiune și de frecare cu solul. În lipsa acestora, robotul ar cădea prin podeaua/planul de suport ce este fixat la 1,1 metrii sub punctul de referință al spațiului de lucru în care este prinsă inițial platforma, și mai mult, robotul nu s-ar putea deplasa, deoarece în lipsa forței de frecare, acesta s-ar comporta ca și cum ar merge pe un strat de gheață al cărei coeficient de frecare =0.
Figura 5.4.10 – Simularea forțelor de contact cu solul din talpa piciorului
Figura 5.4.10 prezintă funcțiile prin care s-au simulat forțele ce interacționează cu talpa piciorului. Aceste forțe sunt calculate în funcție de mișcarea fiecărui picior în raport cu suprafața de sprijin și furnizate prin intermediul semnalelor de intrare, modulului de simulare a robotului. De asemenea, metoda de calculare a forței de reacțiune a solului, pentru ca robotul să nu cadă prin suprafața de sprijin este exprimată de relația (5.4.2) ce simulează contactul cu o suprafață elastică a unui corp rigid. Suprafața noastră de contact este elastică iar coeficientul de elasticitate este de ordinul 105 iar cel de amortizare de ordinul 103.
Pentru calcularea forței de frecare, s-au folosit cercetări publicate în [184]. Astfel, s-a considerat un mediu 3D în care acționează diferite forțe. În cazul nostru acționează numai forța de greutate a robotului. Pentru aceasta avem două cazuri. Primul caz este cel în care acționează numai o parte din greutatea robotului, deoarece robotul se află în starea de suport dublu, iar greutatea se împarte pe fiecare picior în parte. În cel de al doilea caz, robotul se regăsește în faza de suport pe un singur picior al fiecărui modul, iar forța de apăsare pe suprafața de sprijin crește.
Formula după care s-au realizat calculele de aflare a forței de frecare este:
(5.4.5)
unde, R1, R2 și R3 reprezintă descompunerea pe cele trei axe carteziene a forței cu care greutatea robotului apasă pe suprafața de sprijin.
Condiția (5.4.5) reprezintă limita de alunecare pentru respectivul picior. Astfel, dacă forța de apăsare îndeplinește condiția (5.4.6),
(5.4.6)
atunci se va considera că piciorul prezintă riscul de alunecare, iar forța de frecare este egală cu:
(5.4.7)
unde Ffrecare este forța de frecare, iar N este normala la suprafața de sprijin. Figura 5.4.11 prezintă grafic modalitatea de descompunere a forței rezultante ce acționează asupra tălpii piciorului, precum și normala la suprafața de contact și forta de frecare.
Figura 5.4.11 – Descompunerea forței rezultante
Folosind toate aceste lucruri descrise în acest capitol, s-a realizat o simulare precisă ce oferă date concludente în simularea controlului robotului mobil pășitor biped ce se deplasează pe o suprafață uniformă și orizontală.
5.4.4 Legea neutrosophică de alegere a matricei Sk
Având robotul construit sub forma virtuală, putem trece efectiv la controlul său. Pentru aceasta se vor folosi legile de control deja amintite mai sus, dar care vor fi selectate în funcție de anumiți parametrii de către legea de control neutrosophică. Așa cum a fost prezentată într-o altă aplicație, această lege de control construiește matricele Sk din figura 5.4.1 ce selectează pentru fiecare tip de control în parte ce grade de libertate îi sunt atribuite pentru a fi controlate. Cele două tipuri de control folosite pentru a demonstra funcționalitatea și valabilitatea schemei de control hibrid îmbunătățite sunt controlul cinematic prin schema de control din figura 5.4.4 și cel dinamic prin metoda de control la alunecare din figura 5.4.5. Aceste legi de control s-a decis să controleze toate cele 3 grade de libertate la un anumit moment de timp, deși pentru simplificarea calculelor dinamice se putea alege numai ultimele două grade de libertate deoarece acestea suportă greutatea robotului și afectează într-un mod direct poziționarea pe verticală a robotului.
Controlul cinematic, a fost ales doarece este un control simplu, suficient de precis, iar resursele computaționale necesare pentru calcularea semnalului de control al motoarelor sunt mici. Această lege de control s-a decis a fi folosită atunci când piciorul robotului se află în faza de pendulare pentr a aduce piciorul într-o poziție anterioară platformei pentru poziționarea de a efectua un nou pas.
Controlul dinamic, prin controlul la alunecare s-a folosit pentru că metoda aceasta de control este foarte bună pentru a face trecerea de la faza de pendulare la mersul de susținere a greutății robotului deoarece metoda este imparturbabilă la componente dinamice nemodelate, ce apar în momentul contactului cu solul. În plus, faza de suport a greutății robotului necesită cunoașterea și implicarea elementelor dinamice (forțe, inerții) în decizia de control al articulațiilor. Iar datorită faptului că această lege de control este foarte bună în urmărirea unui contur, aceasta va putea nunumai suporta greutatea robotului în timpul deplasării dar va putea menține înălțimea robotului în fazele de suport, pe mai multe picioare sau pe mai puține, în momentele de avansare a robotului sau respectiv de poziționare a picioarelor pentru efectuarea unor noi pași.
Având cele două metode de control bine definite, putem discuta de legea de comutare între acestea. Logica neutrosophică folosită, a fost deja demonstrată ca și eficacitate în această lucrare. Dar, demonstrarea utilității ei în robotică este realizată prin intermediul controlului al unui robot mobil pășitor simulat. Metoda de funcționare este prezentată schematic în figura 5.4.11.
Odată ce simularea pornește, legea de control hibrid începe să controleze robotul. În primă fază este necesar a se calcula ce metodă de control trebuie să fie aleasă pentru fiecare picior în parte. Schema din figura 5.4.11 prezintă calea prin care se ajunge la această decizipe pentru un singur picior. Mai întâi se preiau datele de la senzori ce inițial vor fi datele de pornire ale simulării, pentru care se va cunoaște poziția unghiulară, iar vitezele și accelerațiile vor fi inițial zero.
După citirea datelor oferite de senzori, acestea sunt trecute prin două blocuri de neutrosophicare a lor, câte unul pentru fiecare tip de senzor. Aceste blocuri furnizează datele de probabilitate pentru ca un anumit control să fie pus în drepturi de a controla robotul. Astfel, probabilitatea de adevăr, incertitudine și falsitate este procesată în funcție de intrarea de la senzori și de anumiți parametrii introduși de către proiectantul robotului, pentru ca acesta să realizeze operațiunile necesare. În cazul nostru, având un senzor de proximitate și unul de forță, se dorește determinarea stărilor și fazelor în care piciorul robotului se află pentru ca legea de control să fie optimă pentru controlul robotului din acea fază de lucru.
Următoarea etapă este de aplicare a teoriei clasice DSm (Dezert Smarandache) pentru a calcula parametrii probabilistici de Adevăr, Incertitudine, Falsitate și Contradicție. Folosind acești din urmă parametrii se trece la faza de Deneutrosophicare în care se ia decizia de a schimba sau nu legea de control a robotului. În figura figura 5.4.12, T reprezintă valoarea de Adevăr, F valoarea de Fals iar I valoarea de Incertitudine.
Figura 5.4.12 – Diagrama decizională a logicii neutrosophice
Pentru această etapă, se verifică mai întâi dacă senzorii furnizează informații ce sunt contradictorii. În acest caz, nu se poate determina starea piciorului robotului în raport cu mediul și astfel se va menține ultima lege de control calculată. Dacă informațiile nu sunt contradictorii, atunci verificam ceilalți parametrii. Pentru aceasta s-a considerat că procentajul de adevăr să corespundă trecerii la controlul dinamic, iar procentajul de probabilitate a falsității să corespundă trecerii la controlul cinematic. De aceea se compară cele două probabilități. Dacă procentajul de adevăr este mai mare sau egal cu cel de falsitate se va verifica dacă acesta este mai mare și decât cel de incertitudine. Dacă ambele verificări sunt adevărate, atunci se va trece la un control dinamic pentru respectivul picior.
Dacă valoarea de adevăr nu este mai mare sau egală cu cea de falsitate, se va compara procentajul probabilității de falsitate cu cel de incertitudine. Dacă acesta este mai mare sau egal ca cel de incertitudine, atunci legea de comuntare neutrosophică va comuta controlul la cel cinematic.
Pentru ambele cazuri ale comparației probabilităților de adevăr și falsitate, dacă aceste valori sunt mai mici ca probabilitatea de incertitudine, atunci legea de control nu va fi schimbată ci va fi menținută până când schema de luare a deciziei va considera altfel.
Această verificare cu valoarea de incertitudine are ca efect diminuarea efectului de chattering datorat comutării rapide între cele două tipuri de control, deoarece valoarea probabilității de incertitudine va fi întotdeauna mai mare în momentele de tranziție dintre stările piciorului.
Pe baza funcțiilor denumite „Treci la Controlul Dinamic” și „Treci la Controlul Cinematic”, se determină ieșirea funcției de calcul a matricei Sk. Astfel, comutarea între legile de control se realizează în momentul de dinainte trimiterii datelor de control către motoare.
5.4.5 Controlul robotului mobil pășitor
Pentru a simula aplicarea controlului hibrid îmbunătățit forță-poziție, s-a folosit așa cum s-a mai precizat, programul de modelare Matlab Simulink. Prima etapă în realizarea oricărei simulări, este stabilirea parametrilor inițiali și a constantelor sistemului.
Constantele sistemului au fost stabilite printr-o funcție inițială de atribuire simplă, prezentată și în figura 5.4.13.
Figura 5.4.13 – Atribuirea de valori ale constantelor
Odată ce constantele au fost stabilite, se pot genera referințele sistemului de control. Pentru aceasta, a fost necesar calcularea referinței pentru fiecare picior printr-o funcție separată ce atribuie fiecărei tălpi a picioarelor robotului, o poziție Carteziană în spațiul operațional. Această poziție a fost calculată în raport cu platforma robot, pentru ca apoi calculele cinematice si dinamice să fie mult mai ușor de determinat și calculat. Mai mult, a fost necesar a se cunoaște poziția platformei în raport cu mediul înconjurător, prin intermediul unui parametru primit de la senzorul de poziție al platformei. Această referință a fost concepută pentru ca piciorul să aibe o traiectorie ce urmărește curba unei elipse atunci când acesta se află în starea de pendulare, și o traiectorie rectilinie atunci când piciorul robotului se află în starea de suport și tracțiune a platformei. Din punct de vedere al generării traiectoriei piciorelor robotului, tălpile acestuia trebuie să fie în contact cu solul pentru a se trece de la o traiectorie la alta, dar nu depinde și de coeficientul de frecare cu solul, rezultând că robotul poate avea o mișcare de înaintare pe suprafața de sprijin, dar și una de alunecare, dacă acea condiție de tracțiune (5.4.6) nu este îndeplinită.
Figurile 5.4.14 și 5.4.15 prezintă referința în sistem Cartezian pentru cele două picioare ale robotului. Se observă că pe axa OY, referința rămâne constantă la zero, însemnând că deplasarea se face numai pe direcția de înaintare în fața robotului.
Pentru axa OX, știm că referința a fost calculată în raport cu sistemul Cartezian din centrul de masă al platformei robot, rezultă că deplasarea tăplii piciorului în raport cu platforma realizează o mișcare de înainte și înapoi, ce se prezintă sub forma unui grafic de tip dinți de fierăstrău. Aceste mișcări înainte-înapoi sunt corelate cu poziționarea pe verticală, pe axa OZ, a piciorului. Astfel, atunci când deplasarea se face înspre înainte, piciorul trebuie să se îndepărteze de suprafața de sprijin pentru ca apoi să se apropie în momentul când trebuie să se treacă iarăși în starea de susținere a greutății platformei. Pentru această mișcare de îndepărtare, mișcare ce reprezintă faza de balans al piciorului, s-a ales ca formă a traiectoriei tălpii, o elipsă. Această formă a fost aleasă din mai multe motive. Primul ar fi că față de o parabolă, deplasarea de îndepărtare inițială se face pe o curba cu o accelerație mai mare, evitând o frecare cu solul dacă mișcarea robotului este continuă. Un alt motiv este acela că elipsa are și o mișcare de revenire înspre poziția inițială. Acest lucru este foarte util pentru cazurile în care robotul întâlnește o suprafața de sprijin cu denivelări foarte mari. Iar pentru cazul în care în fața robotului ar fi o depresiune mai mare, acesta ar evita să calce și să își susțină greutatea pe un picior ce nu ar atinge suprafața de sprijin.
Figura 5.4.14 – Referința în sistem Cartezian pentru piciorul 1
Figura 5.4.15 – Referința în sistem Cartezian pentru piciorul 2
Se observă în figurile 5.4.14 și 5.4.15 decalajul dintre referințele celor două picioare. Mai mult, prima jumătate de secundă este o perioadă de homming pentru ambele picioare pentru a se ajunge la poziția de plecare. Apoi, în următoarele 3 secunde piciorul 1 realizează mișcarea de balans, în timp de platforma stă nemișcată. După aceste secunde, în total 3.5, platforma va intra într-o mișcare continuă, deoarece ambele picioare au o referință sincronizată pentru a realiza acest lucru.
Deoarece ambele metode de control folosesc cinematica inversă, figurile 5.4.16 și 5.4.17 prezintă referința unghiulară pentru cele trei articulații, după calculul cinematicii inverse folosind relațiile (5.2.1) și (5.2.2). Cele trei grafice din fiecare figură prezintă referința în grade pentru articulația 1 cu verde, pentru articulația 2 cu rosu și pentru articulația 3 cu albastru. Toate valorile sunt exprima te în grade și se observă o ciclicitate cu o perioadă de 6 secunde identică la ambele picioare.
Figura 5.4.16 – Referința unghiulară pentru cele trei articulații ale piciorului 1
Figura 5.4.17 – Referința unghiulară pentru cele trei articulații ale piciorului 2
Folosind aceste date furnizate de cinematica inversă, s-a calculat cinematica directă, pentru a verifica dacă datele obținute sunt corespunzătoare referinței. Astfel, figurile 5.4.18 și 5.4.19 prezintă poziția Carteziană în planul OXYZ pentru cele două picioare controlate.
Figura 5.4.18 – Poziția Carteziană a tălpii piciorului 1 după trecerea prin cinematica inversă
Figura 5.4.19 – Poziția Carteziană a tălpii piciorului 2 după trecerea prin cinematica inversă
Se observă că cinematica inversă are puncte în care prezintă o valoare eronată. Comparând cele două seturi de date Carteziene după calcularea cinematicii directe, se observă că în prima jumătate de secundă pentru primul picior și în primele 3,5 secunde pentru cel de al doilea, în timpul perioadei de homming, există o diferență de calcul pe axa OX de 15mm pentru ambele picioare. Aceeași diferență pe această axă apare și în momentul reînceperii ciclului de mers. Această eroare corespunde calculării unghiului articulației 2 (de culoare roșie în figurile 5.4.16 și 5.4.17) ce are o deviație de 0,5 grade în perioada de homming.
O altă eroare este observată pe axa OZ care este de numai 0,65 mm și care apare în aceleași perioade de timp, pentru ambele picioare. Această deviație datorată calculării cinematicii inverse, poate fi din aceeași cauză ca și cea de pe axa OX, dar deoarece piciorul este orientat spre jos, eroarea de această axă este mai mică.
Aceste erori se datorează faptului că poziția de homming corespunde unei valori de zero pentru unghiul din articulația 2, valoare ce este dificil de calculat cu formulele prezentate.
Înainte să fie prezentată soluția finală, în care logica neutrosophică va face comutarea între metodele de control, se va prezenta pe rând performanțele fiecărei metode de control pentru a se observa mai bine beneficiile controlului hibrid îmbunătățit. Se începe cu legea de control cinematic, pentru care avem referințele prezentate mai sus.
În figurile 5.4.20, 5.4.21 și 5.4.22 sunt prezentate poziționările pe cele trei axe, împreună cu referința și eroarea obținută.
Figura 5.4.20 – Poziționarea piciorului 1 pe axa OX
Folosind Controlul Cinematic
Figura 5.4.21 – Poziționarea piciorului 1 pe axa OY
Folosind Controlul Cinematic
Figura 5.4.22 – Poziționarea piciorului 1 pe axa OZ
Folosind Controlul Cinematic
În cele trei figuri, eroarea pe axa OY este cea mai mică deoarece referința este în totdeauna zero, iar eroarea de urmărire ajunge să fie de ordinul 10-13. Pe cele două axe, pe care robotul se mișcă, eroarea nu mai este zero, în schimb este o eroare constantă de cele mai multe ori, însemnând că robotul nu are mișcări bruște de încercare a compensării poziției pentru a nu introduce inerții suplimentare în sistem.
Figura 5.4.23 – Eroarea de poziționare a piciorului 1 pe axa OX
Folosind Controlul Cinematic
Figura 5.4.24 – Eroarea de poziționare a piciorului 1 pe axa OZ
Folosind Controlul Cinematic
Erorile măsurate pentru cele două axe ale piciorului 1sunt cele din figurile 5.4.23 și 5.4.24, pentru care eroarea pe axa OX este între 0,02 m în timpul mișcării de pendulare a piciorului și de -0,05 m în momentul când piciorul ajunge în contact cu solul, pentru ca în timpul mișcării de suport și înaintare a robotului, eroarea să fie de între -0,02m și -0,024m, adică o deviere de 0,004m în acest interval.
Pentru axa OZ, eroarea măsoară vârfuri de 0,04m în punctele de contact inițial cu solul și de -0,035m în punctele de început a fazei de pendulare. În rest, eroarea este uniformă pentru faza de pendulare, cu o ușoară creștere de la -0,01m către 0,01m, și între 0,001m și -0,002m pentru faza de suport a platformei, cu vârfuri de -0,035m și 0,42m în punctele de contact cu solul.
Pentru piciorul al doilea al robotului mobil pășitor, în figurile 5.4.25, 5.4.26 și 5.4.27 sunt prezentate poziționările în timp al tălpii piciorului 2.
Figura 5.4.25 – Poziționarea piciorului 2 pe axa OX
Folosind Controlul Cinematic
Figura 5.4.26 – Poziționarea piciorului 2 pe axa OY
Folosind Controlul Cinematic
Figura 5.4.27 – Poziționarea piciorului 2 pe axa OZ
Folosind Controlul Cinematic
Valorile de poziționare pentru piciorul 2, sunt comparabile cu cele ale piciorului 1 deoarece legile de control sunt aceleași.
Figura 5.4.28 – Eroarea de poziționare a piciorului 2 pe axa OX
Folosind Controlul Cinematic
Figura 5.4.29 – Eroarea de poziționare a piciorului 2 pe axa OZ
Folosind Controlul Cinematic
Erorile pe cele două axe de interes, OX și OZ sunt prezentate în figurile 5.4.28 și 5.4.29 observându-se aceleași erori pentru fiecare fază prin care piciorul trece, ca și pentru piciorul 1 al robotului mobil pășitor, cu aceleași momente de timp în care piciorul atinge suprafața de sprijin și apar vârfurile erorilor de poziționare.
Pentru cazul când se folosește numai legea de control la alunecare, se obțin următoarele date, prezentate în graficele 5.4.30, 5.4.31 și 5.4.32. Acestea conțin poziționarea pe cele trei axe Carteziene a picioarelor robotului.
Figura 5.4.30 – Poziționarea piciorului 1 pe axa OX folosind Controlul Mișcării la Alunecare
Figura 5.4.31 – Poziționarea piciorului 1 pe axa OY folosind Controlul Mișcării la Alunecare
Figura 5.4.32 – Poziționarea piciorului 1 pe axa OZ folosind Controlul Mișcării la Alunecare
Având aceleași date ca și referință, se observă o îmbunătățire semnificativă a controlului robotului, iar figurile 5.4.33 și 5.4.34 prezintă erorile pe axele OX și OZ. Deși eroarea pe axa OY este foarte mică, se observă că este cu 7 ordine de mărime mai mare față de cea pe aceeași axă atunci când robotul este controlat în poziție de către controlul cinematic.
Figura 5.4.33 – Eroarea de poziționare a piciorului 1 pe axa OX
Folosind Controlul Mișcării la Alunecare
Figura 5.4.34 – Eroarea de poziționare a piciorului 1 pe axa OZ
Folosind Controlul Mișcării la Alunecare
Se observă o creștere a performanțelor de poziționare a controlului mișcării la alunecare față de controlul cinematic, în schimb sunt necesare mult mai multe calcule pentru a realiza acest tip de control în timp real. Pentru axa OX nu mai avem erori constante de ordinul 10-2m ci de ordinul 10-4m.
Pentru piciorul 2, avem figurile 5.4.35, 5.4.36 și 5.4.37 ce ne prezintă poziționarea carteziană a acestui picior sub influența controlului dianimic al mișcării la alunecare.
Figura 5.4.35 – Poziționarea piciorului 2 pe axa OX folosind Controlul Mișcării la Alunecare
Figura 5.4.36 – Poziționarea piciorului 2 pe axa OY folosind Controlul Mișcării la Alunecare
Figura 5.4.37 – Poziționarea piciorului 2 pe axa OZ folosind Controlul Mișcării la Alunecare
Ca și în cazul controlului cinematic, controlul în poziție al piciorului 2 este similar cu cel al piciorului 1. Acest lucru se observă și din figurile 5.4.38 și 5.4.39 ce prezintă erorile de poziționare pe axele OX și OZ.
Figura 5.4.38 – Eroarea de poziționare a piciorului 2 pe axa OX
Folosind Controlul Mișcării la Alunecare
Figura 5.4.39 – Eroarea de poziționare a piciorului 1 pe axa OX
Folosind Controlul Mișcării la Alunecare
Aceste erori au aceeași formă ca cele pentru piciorul 1, deși par să aibe ușoare modificări în amplitudine în momentele de vârf maxim al erorii. Dar, deși se observă acest lucru, aceste erori apar în momentele de contact cu solul, ce pot afecta foarte mult poziționarea pe verticală a piciorului robotului.
Comparativ cu legea de control cinematică se observă că legea de control dinamică oferă o poziționare de precizie ridicată pe întreaga durată a mișcării piciorului, iar vârfurile de erori ce apar sunt și ele mult diminuate. Acest lucru dovedește încă odată că un sistem robotic de tipul folosit în aceste experimentări necesită cunoașterea și folosirea datelor dinamice pentru a putea compensa diferite forțe și inerții ce apar în timpul deplasării robotului.
5.4.6. Simularea mersului robotului mobil pășitor sub acțiunea controlului hibrid forță-poziție
Folosind schema de control hibrid îmbunătățit din figura 5.4.1, s-a realizat o simulare ce controlează robotul mobil pășitor deja prezentat. Legile de control sunt cele expuse mai sus, și anume schema de control cinematic și cea de control dinamic. Acestea au fost combinate utilizând logica neutrosophică în funcție de datele primite de la senzori. Schema logică de determinare a legii de control ce preia comanda fiecărui picior în parte, este cea din figura 5.4.12, iar figura 5.4.40 prezintă diagrama de comandă din timpul simulării de 10 secunde al robotului, în care acesta se deplasează pe direcția de înainte.
Figura 5.4.40 – Decizia neutrosophică pentru cele două picioare ale robotului
Folosind această decizie, s-au obținut următoarele date de poziționare ale picioarelor robotului mobil pășitor biped, controlat în poziție de un control cinematic și unul dinamic, alternând între ele folosind logica neutrosophică.
Figura 5.4.41 – Poziționarea piciorului 1 pe axa OX folosind controlul hibrid îmbunătățit
Figura 5.4.42 – Poziționarea piciorului 1 pe axa OY folosind controlul hibrid îmbunătățit
Figura 5.4.43 – Poziționarea piciorului 1 pe axa OZ folosind controlul hibrid îmbunătățit
Figurile 5.4.41, 5.4.42 și 5.4.43 prezintă poziționarea pe cele trei axe ale tălpii piciorului 1 a robotului mobil pășitor biped. Comparând cu poziționarea controlului cinematic, se observă că în faza de suport a greutății, poziționarea pe direcția OX este micșorată datorită controlului dinamic, dar eroarea pe axa verticală OZ este putni mai mare, dar constantă. Acest lucru înseamnă că viteza de înaintare este cea urmărită, deoarece eroarea pe axa OX este foarte aproape de zero, iar eroarea pe axa OZ este pozitivă rezultând într-o distanță mai mică cu solul dintre platformă și acesta datorită faptului că piciorul robotului trebuie să care toată greutatea acestuia.
Erorile de poziționare pot fi observate mai bine în figurile 5.4.44 și 5.4.45, în care se observă vărfuri ale erorii de poziționare pe orizontală în momentul când piciorul ajunge în contact cu solul, datorită faptului că robotul este în mișcare. De asemenea, sunt observate vărfuri pozitive și negative ale erorii de poziționare pe verticală în momentele în care piciorului robotului părăsește suprafața de sprijin, greutatea ne mai fiind suportată de acest picior, dar și în momentul când piciorul atinge suprafața de sprijin, deoarece în acel moment intervin instantaneu forțele de greutate și inerție în piciorului robotului.
Figura 5.4.44 – Eroarea de poziționare a piciorului 1 pe axa OX
folosind controlul hibrid îmbunătățit
Figura 5.4.45 – Eroarea de poziționare a piciorului 1 pe axa OZ
folosind controlul hibrid îmbunătățit
Figurile 5.4.46, 5.4.47 și 5.4.48 prezintă poziționarea pe cele trei axe Carteziene a tălpii piciorului 2 al robotului mobil pășitor biped.
Figura 5.4.46 – Poziționarea piciorului 2 pe axa OX folosind controlul hibrid îmbunătățit
Figura 5.4.47 – Poziționarea piciorului 2 pe axa OY folosind controlul hibrid îmbunătățit
Figura 5.4.48 – Poziționarea piciorului 2 pe axa OZ folosind controlul hibrid îmbunătățit
Poziționarea piciorului 2 al robotului mobil pășitor este similară cu cea a piciorului 1. Se observă ca și la piciorul 1, că momentele de control dinamic sunt mai precise când vine vorba de viteza de deplasare, ceea ce înseamnă că robotul nu va avea probleme, deoarece robotul biped face parte dintr-un ansamblu ce formează un robot hexapod. Iar dacă unul dintre picioare s-ar de plasa cu o viteză diferită de celelalte picioare ce sunt în contact cu solul, atunci robotul ar avea probleme de stabilitate. De aceea, este necesar ca viteza de deplasare să fie cât mai aproape de aceea ce reiese din referința de poziție pe direcția de înaintare. Iar această viteză de înaintare este de 1m/3secunde = 0,33m/s.
Figura 5.4.49 – Eroarea de poziționare a piciorului 2 pe axa OX
folosind controlul hibrid îmbunătățit
Figura 5.4.50 – Eroarea de poziționare a piciorului 2 pe axa OZ
folosind controlul hibrid îmbunătățit
Figurile 5.4.49 și 5.4.50 prezintă erorile de poziționare a piciorului 2 pe cele două axe de deplasare, OX și OZ. Se observă că în primele 3 secunde, eroarea de poziționare are o formă puțin ciudată. Acest lucru se datorează forței de frecare ce acționează asupra piciorului în timpul primei faze de pendulare a piciorului 1, deoarece acea mișcare este tot o mișcare de homming pentru ca robotul să ajungă în faza de start. Această mișcare inițială de pendulare este realizată cu o viteză mai mare față de fazele normale de pendulare, pentru ca robotul să ajungă cât mai repede în starea de start.
Mai sus s-a prezentat comportamentul robotului în spațiul operațional, dar de multe ori este necesar a fi vizualizat comportamentul acestuia și în spațiul articulațiilor pentru a vedea eficiența legilor de control. Figurile 5.4.51 – 5.4.56 prezintă poziționarea articulațiilor exprimată în grade, pentru cele două picioare, în raport cu referința calculată folosind funcția cinematicii inverse.
Figura 5.4.51 – Poziționarea articulației 1 a piciorului 1
Figura 5.4.52 – Poziționarea articulației 1 a piciorului 2
Din figurile 5.4.51 și 5.4.52 se observă că eroarea de poziționare din articulația 1 pentru ambele picioare nu este zero, deși referința este constantă. Acest lucru se datorează mișcării picioarelor ce afectează inerțial toate articulațiile. Dar, deși nu avem o eroare nulă, aceasta nu depășește +/-0,02 grade pentru articulația 1 a piciorului 1 și +/-0,06 grade pentru articulația 1 a piciorului 2.
Figura 5.4.53 – Poziționarea articulației 2 a piciorului 1
Figura 5.4.54 – Poziționarea articulației 2 a piciorului 2
Pentru poziționarea articulației 2 a celor două picioare se observă în figurile 5.4.53 și 5.4.54 că eroarea de poziționare este mai mică de 1 grad pentru faza de homming a piciorului 2, atunci când piciorul 1 realizează prima deplasare de pendulare cu o viteză mai mare. După aceea, eroarea este mai mică de +/-3 grade cu excepția vărfurilor de {-7; +5} grade ce apar în momentele de schimbare a traiectoriei pentru ambele picioare și datorită faptului că panta de creștere/scădere a referinței în aceste puncte este foarte mare.
Dacă unghiurile de referință a articulației 2 sunt pozitive, nu același lucru se poate spune despre articulația 3. Această articulație a fost constrânsă să aibe referința negativă pentru ca piciorul să aibe o postură mai naturală. Figurile 5.4.55 și 5.4.56 prezintă poziționarea articulațiilor din genunchii celor două picioare. Acestea prezintă o eroare generală mai bună față de eroarea din articulațiile 2. Eroarea se fixează în jurul valorii de +2 grade pentru faza de suport a greutății robotului, și are o formă asimptotică pentru faza de pendulare, cu vărfuri mai mari ale erorii în punctele de schimbare a referinței, ajungând la o eroare de -8 și respectiv +11,5 grade în aceste momente.
Figura 5.4.55 – Poziționarea articulației 3 a piciorului 1
Figura 5.4.56 – Poziționarea articulației 3 a piciorului 2
Figurile 5.4.57-5.4.60, prezintă erorile unghiulare exprimate în grade pentru evidențierea poziționării unghiulare a articulațiilor 2 și 3 a picioarelor robotului mobil biped, în condițiile de influențare dinamică a robotului.
Figura 5.4.57 – Eroarea de poziționare unghiulară a articulației 2 a piciorului 1
Figura 5.4.58 – Eroarea de poziționare unghiulară a articulației 2 a piciorului 2
După cum se observă în figurile de evidențiere a erorii de poziționare unghiulară a aritculației 2 pentru piciorul 1 și piciorul 2, eroarea de poziționare se poate spune că este periodică, deoarece prezintă aceeași formă pentru fazele repetitive ale mișcării celor două picioare ale robotului mobil pășitor.
În toate figurile ce prezintă eroarea unghiulară, observăm că în momentul controlului cinematic, erorile au un caracter asimptotic, iar în fazele de control dinamic, se observă o eroare constantă pentru ambele articulații 2 și 3. Acest lucru evidențiază diferențele de poziționare ale celor două legi de control, și faptul că folosirea controlului mișcării la alunecare este necesară pentru fazele de suport ale platformei robot, pentru ca aceasta să nu devină instabilă din cauza diferenței dintre vitezele de mișcare ale picioarelor sale.
Folosind performanțele de poziționare a celor două tipuri de control folosite dar și îmbunătățirile aduse lor se vede că acest tip de control hibrid este unul îmbunătățit ce îmbină eficient performanțele metodelor de control folosite
Figura 5.4.59 – Eroarea de poziționare unghiulară a articulației 3 a piciorului 1
Figura 5.4.60 – Eroarea de poziționare unghiulară a articulației 3 a piciorului 2
.
Pentru a controla robotul mobil pășitor biped s-au ales cele două tipuri de control deoarece, controlul cinematic are o perfornmanță ridicată în controlul poziției unui robot, dar nu poate lua în considerație dinamica robotului, iar controlul dinamic prin metoda de control a mișcării la alunecare, are rezultate foarte bune atunci când robotul are nevoie să compenseze forțele gravitaționale dar și inerțiile din sistem pentru a obține viteze constante de deplasare. Combinația celor două tehnici de control în poziție duce la o metodă de control ce poate urmării eficient computațional referința mișcării în faza de pendulare a fiecărui picior, dar mai ales, reușește să mențină robotul la o distanță de suprafața de sprijin constantă, cu o eroare destul de mică, dar și o viteză constantă de deplasare. Deși controlul dinamic necesită resurse mari computaționale, deoarece este o metodă ce se bazează pe valori discrete ale datelor furnizate de senzori iar rata de eșantionare influențează în mod direct comportamentul sistemului, controlul cinematic are nevoie de mult mai puține resurse. De aceea combinația dintre acești algoritmi devine una necesară.
Logica neutrosophică reușește să furnizeze datele cele mai bune și la momentele de timp utile, pentru ca schimbarea tipului de control să fie realizată în momentele cele mai prielnice. Folosind o sincronizare a calculării referinței, se ajunge ca într-un moment de timp să fie în execuție o lege de control cinematic și una de control dinamic, pentru robotul mobil biped. Astfel, resursele computaționale sunt folosite eficient.
Rezultă că schema de control hibrid îmbunnătățit forță-poziție este mult mai productivă față de schema clasică de control hibrid, deoarece se pot forma mult mai multe combinații ale legilor de control în timpul funcționării robotului. Astfel, la o singură aplicație se poate ajunge la o combinație de scheme de control dată de relația (5.4.8), deoarece fiecare metodă de control, așa cum este prezentat în figura 5.4.1, poate să conlucreze la un anumit moment de timp cu oricâte alte metode, pentru a controla fiecare grad de libertate ale robotului.
(5.4.8)
unde Nrcomb reprezintă numărul total de combinații ce se pot face între legile de control, x reprezintă numărul de grade de libertate ale robotului controlat, iar n și m reprezintă numărul de metode de control pentru ramura de control în forță și respectiv poziție.
Deși metodele alese în această aplicație sunt numai de poziție, simularea realizată demonstrează că noul control hibrid îmbunătățit forță-poziție este mai performant față de cel clasic deoarece pe lângă beneficiile aduse de controlul hibrid clasic, se adaugă posibilitatea de schimbare a legilor de control folosite în timpul funcționării robotului.
6. Stand de simulare al unui picior al robotului mobil pășitor
În lipsa unui robot mobil pășitor pe care legile de control prezentate să fie testate, s-a decis folosirea unui stand de teste, obținut în urma proiectului de cercetare la care autorul acestei lucrări a participat „Cercetări esențiale și aplicative pentru controlul poziției al roboțilot pășitori HFPC MERO”, ID 005/2007-2010. Acest proiect a făcut parte din programul IDEI, coordonator NCSR și a fost finanțat de către Autoritatea Națională pentru Cercetare Științifică.
Mai întâi este necesar a se descrie standul de teste și componentele acestuia. Astfel, figura 6.1 prezintă standul realizat pentru testarea legilor de control. Se observă că acesta este format din trei automate programabile (PLC), trei convertizoare de frecvență și trei motoare. Pe lângă aceste componente principale, mai există trei module de protecție a motoarelor, o sursă de tensiune ce alimentează circuitele de comandă cu 24V și un întrerupător general pentru cele trei faze de tensiune, necesare alimentării servo-motoarelor trifazate.
Toate echipamentele ce alcătuiesc aces stand de teste și încercări sunt produse de compania ABB, fiind echipamente de înaltă calitate și fiabilitate, produse a fi folosite în medii industriale.
Figura 6.2 prezintă echipamentul de alimentare cu energie a standului de teste, în care se poate observa în partea de sus de la stânga la dreapta, întrerupătorul trifazat, sursa de tensiune, cele trei module de protecție ale motoarelor și rigletele de conexiune.
După aceste module de protecție în ordinea montării pe panou, vin modulele de comandă și control a întregului ansamblu. Acestea sunt automatele programabile. Pe acest stand au fost montate trei automate programabile, pentru a putea realiza cât mai multe aplicații posibile, putând exista și trei aplicații diferite, fiecare cu motorul său.
Figura 6.1 – Standul de testare al legilor de control
Figura 6.2 –Alimentarea standului de teste
Figura 6.3 – Partea de comandă a standului de teste
Figura 6.4 – Modulul de protecție al întregului sistem
Figura 6.5 – Sursa de tensiune folosită pentru alimentarea circuitelor de comandă și control
Figura 6.6 – Modulul de protecție trifazată al motoarelor
Figura 6.4 prezintă modulul de protecție al întregului sistem, cu sistem manula de întrerupere. Figura 6.5 prezintă sursa de tensiune folosită în alimentarea circuitelor de comandă și control al sistemului. Această sursă convertește tensiunea de 230V la o tensiune de 24 volți și 5 amperi. Iar figura 6.6 prezintă unul din cele trei module de protecție ale motoarelor, ce are și un sistem de întrerupere manuală a circuitului. Aceste module sunt configurate la un curent maxim de 4A, prag limită impus hardware de declanșare a protecției și de întrerupere a circuitului. Având aceste module de protecție a circuitelor, ne putem concentra pe partea mai importantă.
Figurile 6.7 prezintă convertizoarele de frecvență folosite în a comanda cele trei motoare. Se observă unitatea de afișare ACSM1 ce configurează fiecare convertizor în parte printr-o interfață ethernet, și care poate să preia comanda locală a convertizoarelor, putând conduce motoarele cu viteza introdusă în dispozitivul de comandă locală. Convertizoarele folosite au următoarele date tehnice:
alimentare trifazică la o tenziune de 380-480V;
curentul de alimentare de 4,7A;
frecvența de alimentare 48-63Hz;
tensiunea furnizată motoarelor trifazice între 0V și tensiunea de alimentare 380-480V;
curentul furnizat de 3A;
frecvența furnizată motoarelor între 0 – 500Hz.
Aceste convertizoare pot poziționa motoarele conduse, folosind gama de frecvență între 0Hz și 500Hz, controlând viteza de rotație a motoarelor conduse. După cum se observă în figurile 6.1 și 6.7, convertizoarele sunt conectate la motoare prin cablurile cu izolație verde și portocalie. Aceste cabluri furnizează tensiunea și curentul necesar alimentării motoarelor, la frecvența impusă de convertizor, prin intermediul celui portocaliu. Iar cablul verde face legătura dintre senzorii ce furnizează convertizorului informații ale poziției și vitezei motoarelor.
Figura 6.8 – Servo Motoarele comandate de sistemul de acționare și control
Motoarele folosite în realizarea standului de testare a legilor de control au următoarele date tehnice:
Tensiunea de alimentare 380V;
Viteza maximă nominală de 3000 rotații/minut;
Frecvența nominală de 250Hz;
Puterea nominală de 1,22kW;
Cuplul nominal de 3,9Nm;
Curentul nominal de 2,8A.
Având circuitul de acționare detaliat, ce este compus din modulele de protecție, convertizoarele de frecvență și motoarele comandate, mai este nevoie să fie descris partea de comandă formată din cele trei automate programabile.
Figura 6.9 – Automatul programabil împreună cu modulele de intrări/ieșiri
Figura 6.9 prezintă mai în detaliu unul dintre sistemele cu automat programabil pentru comanda motoarelor controlate. Acest sistem este format dintr-un automat programabil ABB AC500 (figura 6.10), un modul de comunicație pe ethernet CM572 (Figura 6.11), și două module de comandă și control. Unul dintre aceste module este un modul de intrări/ieșiri digitale DC532 (Figura 6.12), ce are aceste intrări/ieșiri configurabile ca intrare sau ieșire și sunt în număr de 32. Al doilea modul este unul de intrări/ieșiri analogice AX522 (Figura 6.13), cu 8 intrări analogice și 8 ieșiri analogice.
Figura 6.10 – Automatul programabil ABB, AC500
Figura 6.11 – Modulul ABB de comunicație pe ETHERNET
Figura 6.12 – Modulul de comunicare ABB cu intrări/ieșiri digitale
Figura 6.13 – Modulul de comunicare ABB cu intrări/ieșiri analogice
Utilizând aceste echipamente și acest stand de încercări, s-a realizat un program de testare a cercetărilor. Dar, deoarece nu s-a dorit simularea componentelor hardware, a fost simulată numai metoda de control la alunecare, deoarece controlul neutrosophic de alegere între două sau mai multe legi de control necesita informații de la senzori, informații ce nu puteau fi reproduse suficient de bine în funcție de mișcarea motoarelor ce nu erau montate pe nicio structură ce ar asemăna un picior al robotului mobil pășitor hexapod. Astfel, s-au considerat aceeași parametrii ca în simularea în care s-au generat referințe pentru două articulații deoarece prima articulație a robotului nu este supusă unor forțe gravitaționale rezultând că și inerțiile sunt mult reduse, iar controlul cât mai precis. În cele ce urmează vor fi prezentate graficele obținute în urma experimentărilor folosind numai două din cele trei motoare.
Figura 6.14 – Schema de comandă și control a standului experimental folosit
Figura 6.14 prezintă schema de comandă și control a standului experimental folosit în realizarea experimentărilor.
Figura 6.15 – Diagrama de prezentare a semnalelor de referință, urmărire și eroare pentru cele două motoare controlate
Ca și în simulările realizate mai devreme, la secunda 2 și 3 s-au introdus câte o valoare fixă ca și semnal de perturbație a referinței, și pentru a testa comportamentul sistemului de control în cazul perturbațiilor sau în cazul generării defectuoase a semnalelor de referință. Astfel, putem observa că eroarea pentru articulația 1 ajunge să se stabilizeze în intervalul [-0,001; +0,001] grade iar eroarea pentru articulația 2 se stabilizează în intervalul de [-0,0025;+0,0025] grade.
Figurile 6.16 și 6.17 prezintă semnalele de referință, urmărire (semnalul de poziționare reală) și eroarea pentru motorul 1 și respectiv motorul 2. Se observă că erorile fiind foarte mici, semnalele se suprapun, și de aceea a fost aleasă o linie de grosime mai mare pentru graficele acoperite, pentru a se vedea mai bine traseul acestora.
Figurile 6.18 – 6.21 prezintă în detaliu erorile unghiulare de poziționare a motoarelor ce simulează poziționarea celor două articulații. Așa cum s-a detaliat mai sus, erorile sunt de ordinul 10-3 și sunt exprimate în grade. Deoarece și referința dată sistemului de control este exprimată în spațiul articulațiilor adica în grade, nu se pune problema apariției erorilor de calcul a conversiei datelor referențiale din spațiul operațional în spațiul articulațiilor.
Deoarece s-a lucrat cu motoare ce nu au fost legate de o structură inerțială, s-a atașat fiecărui motor câte o greutate pentru a crea momente de inerție. Acestea au introdus fiecărui motor următoarea inerție:
(6.1)
Figura 6.16 – Semnalele pentru motorul 1
Figura 6.17 – Semnalele pentru motorul 2
Figura 6.18 – Eroarea de poziționare a motorului 1
Figura 6.19 – Eroarea de poziționare mărită a motorului 1
Figura 6.20 – Eroarea de poziționare a motorului 2
Figura 6.21 – Eroarea de poziționare mărită a motorului 2
Programul realizat pentru obținirea acestor date, este prezentat în anexa 5. Acest program a fost implementat pe un singur automat programabil, și prelua datele de referință de la automatul supervizor, ce împreună cu datele unghiulare furnizate de motoare, se calculează cuplul de referință pentru fiecare motor al unui picior. De data aceasta s-a considerat un picior cu două grade de libertate, deci s-au controlat în cuplu numai două motoare.
Analizând datele obținute, se observă o îmbunătățire a performanțelor măsurate, față de exeprimentările simulate cu MatLab Simulink. Aceasta înseamnă că programele de simulare încă mai au probleme de soluționat, dar erorile mărite obținute în urma simulărilor, se datorează și algoritmilor de calcul folosiți în optimizarea ecuațiilor de către platformele de simulare a sistemelor mecatronice.
Deoarece s-au folosit numai două din cele trei motoare, iar standul de experimentări are trei sisteme de comandă și control cu automat programabil, s-a decis ca unul dintre cele trei să acționeze ca un supervizor, trimitând datele de referință celorlalte două automate. Acestea din urmă lucrând în calcularea efectivă a cuplului necesar motoarelor și apoi în calcularea vitezei de referință ce este apoi transmisă către convertizoarele de frecvență. Astfel s-a obținute un sistem modular, distribuit și descentralizat ce poate fi optimizat pentru fiecare automat în parte, dar și integrat într-un alt sistem mai mare.
Figura 6.22 – Configurarea automatului programabil, cu modulele de comunicare RS232 și ETHERNET cu schimb de date prin protocolul UDP
După cum a fost menționat, programul cu toate funcțiile automatului ce controlează piciorul robotului este prezentat în anexa 5.
În figura 6.22, se regăsește configurația automatului programabil folosit la controlul articulațiilor unui picior al robotului mobil pășitor hexapod. După cum s-a precizat și mai devreme, structura robotului nu este construită dar folosind standul de încercări, s-au putut obține rezultate ale testelor pentru legile de control folosite. În cazul de față, s-a folosit metoda de control la alunecare SMC pentru a controla în cuplu două motoare. S-au folosit numai două din cele trei motoare, deoarece erau suficiente pentru demonstrarea experimentală a rezultatelor și contribuțiilor aduse metodelor de control, iar matricele de calcul dinamice erau de ordin mai mic rezultând o încărcare mai mică asupra capacităților automatului programabil, urmând ca pe viitor să se treacă la controlul a trei motoare și compararea vitezelor de control.
În concluzie, rezultatele experimentale, s-au dovedit mult mai precise ca și control față de cele obținute prin simulare, dovedind și mai bine contribuțiile și rezultatele obținute în această lucrare.
7. Contribuții originale și concluzii
În această lucrare s-a dorit îmbunătățirea controlului hibrid forță-poziție actual. Pentru aceasta au fost analizate numeroase metode de control și de comutare pentru a îndeplinii obiectivele principale și secundare.
Capitolele de elaborare, simulări și experimentări, prezintă un nou control hibrid îmbunătățit ce folosește logica neutrosophică pentru a comuta între diverse legi și metode de control, ce controlează un număr variabil de grade de libertate ale unui robot. Acest lucru a fost demonstrat prin simulări în mai multe aplicații descrise și detaliate, rezultând că logica neutrosophică este în multe privințe superioară altor legi de comutare și alegere a metodelor de control pentru fiecare grad de libertate ale roboților. Mai mult, folosirea logicii neutrosophice în combinație cu metoda de control hibrid, crează un nou tip de control hibrid forță-poziție ce este superior celui clasic.
Deoarece robotul studiat este unul mobil pășitor, a fost necesar a se alege legi de control ce se potrivesc foarte bine pentru controlul acestui tip de robot. În plus, robotul fiind unul hexapod, s-au ales legi de control ce nu acționează asupra direcționării robotului biped către poziții stabile din punct de vedere al echilibrului, rezultând aplicații mult simplificate din această cauză, dar ale căror rezultate sunt mult mai ușor de urmărit pentru a verifica funcționalitatea metodelor folosite în controlul robotului mobil pășitor biped.
Dacă luăm pe rând rezultatele obținute, putem spune că s-a reușit o îmbunătățire a controlului mișcării la alunecare pentru cazurile în care sistemul prezintă perturbații continue sau aleatorii introduse în datele de referință sau datorate unor factori exteriori, în cazul nostru adăugându-se câte o sarcină variabilă fiecărei articulații a robotului. Rezultatele obținute sunt comparabile cu ale altor cercetători. În schimb, deoarece s-au adus contribuții de rejecție cât mai bună a perturbațiilor, sistemul nu are suprareglaje mari, rezultând o urmărire foarte bună a referinței. Prima contribuție introdusă este folosirea logicii fuzzy în calcularea anumitor aplificări ale metodei de control al mișcării la alunecare dar și relațiile de calcul folosite în calcularea amplificării fuzzy. O a doua contribuție reprezintă introducerea parametrului „k” ce scalează parametrul integrativ al erorii ce este adăugată valorii lui „s”. Acest parametru este responsabil cu reducerea suprareglajului introdus de perturbațiile ce modifică foarte mult valoarea lui „s” deoarece valoarea parametrului integral se propagă în sistem, până ce eroarea reușeste să anuleze această valoare, prin valori mari de semn opus.
Dacă ne uităm la tehnica de comutare între legile de control, logica neutrosophică se comportă foarte bine în condiții de incertitudine și contradicție. Aceste condiții apar datorită senzorilor ce pot să transmită informații ce pot păcălii sistemul. Mai mult, informațiile senzorilor pot să nu fie prelucrate suficient de bine sau pragurile de comutare să varieze în funcție de aplicații sau condițiile de mediu. Aceste probleme sunt rezolvate cu ajutorul teoriei DSm ce permite luarea unor decizii coerente și stabile chiar și în aceste cazuri. Comparativ cu cercetări ale altor cercetători de renume se observă că metoda folosită ce corespunde cu una din principalele contribuții în controlul hibrid, poate comuta între o mulție foarte mare de metode de control atâta timp cât există suficienți observatori care să furnizeze date despre starea sistemului.
Folosirea logicii neutrosophice în robotică reprezintă în sine o contribuție adusă domeniului, dar utilizarea ei pentru a îmbunătății controlul hibrid forță-poziție al roboților mobili pășitori este una dintre contribuțiile importante ale acestei lucrări. Acest lucru este accentuat și de simulările, validările și experimentările realizate pentru a susține aceste contribuții.
Dar, contribuția majoră pe care această lucrare o aduce domeniului roboticii o reprezintă modificarea schemei de control hibrid pentru a o aduce la o formă cât mai generalizată și care să poată fi folosită pentru orice robot, orice condiții de mediu și orice situații neprevăzute ce forțează schimbarea referințelor impuse robotului.
Așa cum a fost menționat, printre contribuțiile aduse de această lucrare sunt cele ce îmbunătățesc controlul mișcării la alunecare a roboților mobili pășitori. Aceste contribuții au fost testate folosind simulări complexe și experimentări pe un stand de testare. În plus, s-au realizat simulări ce folosesc tehnica grafurilor Bond. Acest lucru face ca demonstrarea rezultatelor să fie realizată mult mai bine deoarece au fost prezentate datele obținute cu trei sisteme diferite de simulare și experimentare ce au dovedit că modificările aduse schemei de control sunt întradevăr performante și aduc contribuții originale ce cresc precizia metodei de control a mișcării la alunecare. Mai mult, metoda grafurilor Bond deși dificilă de abordat, s-a dovedit mult mai bună în a evidenția comportamentul sistemelor mecatronice față de anumite cazuri realizate cu alte sisteme de simulare ce nu folosesc această tehnică de simulare și control.
Înainte a fi prezentate contribuțiile aduse controlului hibrid în care s-a integrat logica neutrosophică, a fost realizată o simulare pentru a valida sistemul de control furnizat de teoria clasică Dezert Smarandache. Astfel a fost concepută și realizată o simulare ce evidențiază printr-o analiză comparativă cât de performantă este logica neutrosophică față de cea fuzzy în a determina stările unui robot mobil pășitor în condiții de incertitudine și nesiguranță a datelor oferite de senzori. Mai mult, pentru a evidența și mai mult acest lucru, datele de intrare au fost fuzificate și neutrosophicate de aceeași funcție, obținându-se o comparație mult mai sugestivă a rezultatelor simulate. De aceea logica neutrosophică a fost aleasă pentru a îmbunătății controlul hibrid forță-poziție, și care reușește cu rezultate foarte bune să realizeze acest lucru.
Deoarece pentru a folosi logica neutrosophică în controlul hibrid forță-poziție sunt necesare date de intrare provenite de la anumiți observatori ai mediului dar și ai interacțiunii acestuia cu robotul mobil pășitor controlat de legea de control dezvoltată, a fost necesar să se studieze efectele pe care contactul dintre talpa piciorului și solul le pot aduce mișcării robotului. De aceea unul dintre observatorii logicii neutrosophice îl reprezintă senzorul de forță montat pe talpa fiecărui picior. Acesta a fost motivul cercetărilor și contribuțiilor realizate pentru efectele ce le contactul dintre talpa piciorului și suprafața de sprijin, pentru a determina dacă există riscul ca robotul să alunece pe suprafața de sprijin în funcție de mai mulți parametrii de intrare. Astfel s-au obținut anumite condiții ce trebuiesc impuse sistemelor de control pentru ca roboții controlați de acestea să nu prezinte riscul de a aluneca chiar dacă legile de control sunt bine condiționate iar semnalele de referință calculează traiectorii optime de deplasare.
Mai mult, s-au studiat efectele ce le poate avea lungimea unui pas, în momentul când se controlează un robot hexapod pe traiectorii circulare ce rotesc robotul în jurul unor axe de rotație. Toate aceste condiții contribuie la realizarea unui robot mobil pășitor ce poate evita condiții ce pot conduce robotul către stări de instabilitate și răsturnare. Mai mult, legea de control hibrid forță-poziție concepută, poate lua în calcul toate aceste condiții și poate să controleze robotul mobil pășitor către obiectivele impuse în condiții de siguranță maximă.
Analizele realizate asupra metodelor de ultimă ora publicate în reviste de specialitate, dovedesc faptul că realizările obținute în această lucrare sunt importante, mai ales din punct de vedere al dezvoltării controlului hibrid forță/poziție. Aceste analize reprezintă o altă contribuție adusă cercetării roboților mobili, deoarece prezintă și compară diferite metode realizate de diferiți cercetători, rezultând o precerepe mai bună a domeniului în care această lucrare se încadrează și mai mult, reușește să evidențieze foarte bine realizările și contribuțiile aduse.
De asemenea, folosind standul de simulare al unui picior al robotului mobil pășitor hexapod, s-au realizat experimentări care dovedesc încă odată contribuțiile aduse metodelor de control dezvoltate.
Problema îmbunătățirii controlului hibrid forță-poziție, așa cum a fost elaborată în capitolul 4, a fost demonstrată prin cercetări experimentale asistate de calculator și prin experimentări ce utilizează standul de testare cu trei motoare ce reușesc să simuleze articulațiile unui picior al robotului mobil pășitor. Acest lucru este dovedit de capitolul 5, unde algoritmii dezvoltați și simulările realizate în diferite sisteme de simulare, conduc către obiectivul acestei lucrări. Această problemă a fost îndeplinită prin transformarea schemei de control hibrid forță-poziție de la forma sa de bază la o schemă ce se modifică dinamic. Aceasta îndeplinește toate criteriile controlului hibrid forță-poziție și permite controlul unui robot în orice situație, eliminând rigiditatea de control static fixat anterior de către dezvoltatori. Deoarece controlul hibrid forță-poziție studiat în această lucrare este aplicat roboților mobili pășitori, aceștia nu aveau necesitatea controlului în forță pe toată durata unui pas, iar controlul hibrid forță-poziție îmbunătățit rezolvă această problemă prin schimbarea într-un mod dinamic a legilor de control pentru fiecare articulație în parte.
În demonstrarea îmbunătățirii controlului hibrid forță-poziție a roboților mobili pășitori, a fost necesar să fie implementate legi de control al robotului, ca parte integrată a controlului hibrid. Pentru aceasta s-a ales ca metodă de control a robotului în faza de suport, legea controlului mișcării la alunecare iar în faza de pendulare un control simplu PID în buclă de reacție.
Legile de control folosite nu sunt cele standard, deoarece s-au realizat cercetări de îmbunătățire a acestor metode de control. Astfel, sunt prezentate tot în capitolul 5 contribuțiile aduse pentru îmbunătățirea mai multor tipuri de control printre care se regăsește și controlul mișcării la alunecare. Îmbunătățirile realizate includ o precizie îmbunătățită de poziționare în condiții de perturbații exterioare și interne ale sistemului, dar și reducerea semnificativă a suprareglajului.
În plus, controlul hibrid forță-poziție îmbunătățit, folosește o lege de comutare ce îi conferă acestuia o maleabilitate pe care structura originală nu o avea. Această lege de comutare, ce folosește logica neutrosophică, realizează o detecție foarte bună a momentelor de timp când sunt necesare schimbări ale legilor de control ce guvernează mișcarea robotului mobil pășitor.
Folosirea standului de încercări, a demonstrat precizia de poziționare a controlului mișcării la alunecare, iar experimentările realizate contribuie la argumentele în favoarea îmbunătățirilor aduse de această lucrare.
Concluzia principală este că această teză contribuie semnificativ cercetărilor în domeniul controlului hibrid forță-poziție al roboților mobili pășitori. Aceste contribuții sunt reprezentate cel mai sugestiv de transformarea structurii clasice de control hibrid la o schemă ce se adaptează condițiilor de lucru în funcție de legile și metodele de control implementate, folosind logica neutrosophică ca lege de comutare. În plus controlul mișcării la alunecare a fost îmbunătățit prin folosirea eficientă a logicii fuzzy, prin ajutarea continuă și online a parametrului ce determină suprafața de alunecare rezultând un control mai performant.
În plus, folosirea logicii neutrosophice în controlul roboților este o contribuție importantă, deoarece teoria DSm este mult superioară altor tehnici de determinare a condițiilor de lucru față de metodele clasice de comutare.
De asemenea, analizele asupra tehnicilor existente de control hibrid forță-poziție, control al mișcării la alunecare și al metodelor de comutare, au contribuit la realizările acestei lucrări prin comparațiile făcute cu rezultatele obținute, demonstrând calitățile contribuțiilor de îmbunătățire a controlului hibrid forță-poziție al robotilor mobili pășitori.
Studiile ce vor urma cercetărilor din această lucrare, se vor îndrepta pe același domeniu al roboților mobili pășitori, iar acest lucru este dovedit de activitatea și cercetările realizate de-alungul timpului și culminând cu această lucrare de doctorat.
7.1. Lista de lucrări ale autorului
Alexandru Gal, Luige Vladareanu, Hongnian Yu, „Applications of Neutrosophic Logic Approaches in ”RABOT” Real Time Control”, SISOM 2013 and Session of the Commission of Acoustics, Romanian Academy, ISSN:1843-5459, Editura Media Mira, Bucharest 25-26 May 2013.
Alexandru Gal, Radu Ioan Munteanu, Octavian Melinte, Luige Vladareanu, „A New Approach of Sliding Motion Robot Control using Bond Graph”, The 8th INTERNATIONAL Symposium On Advanced Topics In Electrical Engineering May 23-25, 2013, Editura Printech, ISSN: 2068-7966, București, Romania.
“Method and Device for Hybrid Force-Position extended control of robotic and mechatronic systems”, Luige Vladareanu, Cai Wen, R.I. Munteanu, Yan Chuyan, Alexandru Gal, et al., PATENT: OSIM A2012 1077/28.12.2012.
Alexandru Gal, Luige Vladareanu, Florentin Smarandache, Hongnian Yu, Mincong Deng, „Neutrosophic Logic Approaches Applied to Robot Real Time Control”, Robotics and Autonomous Systems, 2013, Indexata ISI, Impact Factor: 1.156, ISSN: 0921-8890, în curs de publicare.
Alexandru Gal , Luige VLADAREANU , Radu I. MUNTEANU, „Sliding Mode Control with Bond Graph Modeling Applied on Robot Leg”, Rev. Roum. Sci. Techn.–Électrotechn. et Énerg., vol. 58, no 2, p, București, 2013, Indexata ISI, ISSN: 0035-4066, în curs de publicare.
Alexandru Gal, „Hybrid force-position control for manipulators with 4 degrees of freedom”, Proceedings of the 15th International Conference on Systems (part of the 15th CSCC multiconference), Recent Researches in System Science, Corfu Island, Grecia, Iulie 14-16, 2011, pag: 358-363, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Luige Vladăreanu, Nicolae Pop, Alexandru Gal, Micong Deng , „The 3D elastic quasi-static contact applied to robots control”, International Conference on Advanced Mechatronic Systems, Henan University of Science and Technology, Luoyang, China-Japonia, 2013
Luige Vladareanu, Alexandru Gal, „A Multi-Functionl Approach of the HFPC Walking Robots”, Proceedings of the 15th International Conference on Systems (part of the 15th CSCC multiconference), Recent Researches in System Science, Corfu Island, Grecia, Iulie 14-16, 2011, pag: 339-345, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Alexandru GAL, Luige VLADAREANU, Mihai S. Munteanu, Octavian MELINTE, „PID sliding motion control by using fuzzy adjustment”, SISOM 2012 and Session of the Commission of Acoustics, Romanian Acadeny, ISSN:1843-5459, Editura Media Mira, Bucharest 25-26 May 2012.
Alexandru Gal, O.Melinte, D.Marin, C.Secară, „The end-effector force-position performance improvement for 4 DOF robots”, Proceedings of SISOM & ACOUSTICS 2011, Romanian Academy, ISSN:1843-5459, Editura Media Mira, pp.305-311.
Nicolae POP, Luige VLADAREANU, Alexandru GAL, “The extension real time control method for restoring the robot equilibrium position”, Proceedings of the 1st International Conference on Mechanical and Robotics Engineering (MREN '13), pp. 137-142, ISBN: 978-1-61804-185-2, Atena, Grecia 2013.
Luige VLADAREANU, Alexandru GAL, „Performances of a haptic device when compensating for dynamic parameters”, SISOM 2012 and Session of the Commission of Acoustics, ISSN:1843-5459, Editura Media Mira,Bucharest 25-26 May 2012.
Alexandru Gal, Luige Vladareanu, Octavian Melinte, „Modular Walking Robots Control For Circular Movement Around Its Own Axis”, Proceedings of the XXIst SISOM, Romanian Academy, ISSN 2068-0481, Bucharest 27-28 May 2010.
O.Melinte, Alexandru Gal, „The Haptic Impendance Control through Virtual Environment Force Compensation”, Recent Researches in System Science – Proceedings of the 15th International Conference on Systems ICS’11, Corfu Island, Greece, July 14-16, 2011, ISSN 1792-4235, ISBN 978-1-61804-023-7, pp.381-385.
Luige Vladareanu, Ion Ion, Alexandru Gal, et al. „The Real Time Control of Modular Walking Robot Stability”, ISI Proceedings of the 8th International Conference on Applications of Electrical Engineering (AEE ’09), Houston, USA, pag. 179-186, ISSN: 1790-5117, ISBN: 978-960-474-072-7.
L.M. Velea, L. Vladareanu, Alexandru Gal, et al., “Modular automaton system with real time control for creating command instalations and electrical operations dedicated to combined forages production”, Rev. Roum. Sci. Techn. − Méc. Appl., Tome 54, No 3, P. 239–258, București, 2009.
L.M. Velea, L. Vladareanu, R.A. Munteanu, Alexandru Gal, et al. „Automatic S.A.M.D. Monitoring and common equipment systems”, Rev. Roum. Sci. Techn. – Méc. Appl., TOME 53, No 2, P. 201–209, București, 2008.
Luige Vladareanu, Gabriela Tont, Alexandru Gal, et.al. „Fuzzy Dynamic Modeling for Walking Modular Robot Control”, Proceedings of the 9th International Conference on Applications of Electrical Engineering (AEE ’10), Penang, Malaezia, 23-25 Martie, 2010, pag:163-170, ISBN: 978-960-474-171-7, ISSN: 1790-2769.
Octavian Melinte, Alexandru Gal, „Bond graph modelling for haptic interface robot control”, Proceedings of the European Computing Conference (ECC ’11), Paris, France, April 28-30, 2011, pag: 364-369, ISBN: 978-960-474-297-4.
“Real-time adaptive networked control of rescue robots”, acronim RABOT, 2012-2015, 7th Framework Program for Research, Project Marie Curie, International Research Staff Exchange Scheme (IRSES), coordonator: Staffordshire University, UK , parteneri: Institutul de Mecanica Solidelor al Academiei Române, Bournemouth University UK, Shanghai Jiao Tong University CN, Institute of Automation Chinese Academy of Sciences CN, Yanshan University CN, Prof. Hongnian Yu, UK – coordonator proiect, Prof. Luige Vladareanu coordonator IMSR, Alexandru Gal-membruîn proiectul FP7.
“Essential and Applied Research for HFPC MERO Walking Robot Position Control”, ID 005/2007-2010, Programul IDEI, Prof. Luige Vladareanu – coordonator proiect, Alexandru Gal-membru în proiect, finanțat de Autoritatea Națională de Cercetare Științifică.
„Method and Device for Dynamic Control of a Walking Robot”, Luige Vladareanu, Tudor Sireteanu, Alexandru Gal, et al., PATENT: EPO EP20100464006/19.07.2010, OSIM A/00052/21.01.2010,
„Method for the dynamic control of a walking robot, involves computing of errors generated by position and force components on the freedom axes of a walking robot”, L.Vlădăreanu, L.M.Velea, R.I.Munteanu,T.Sireteanu, Alexandru Gal,cerere de brevet RO125970, OSIM, 2011.
Octavian Melinte, Luige Vladareanu, Alexandru Gal, „Improvement of Robot Stability for Robots with Variable Dimensions”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Vlad-Grigore LASCU, Tudor SIRETEANU, Alexandru GAL, et.al „A New Method for Solving Engineering Problems: TRIZ theory”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
R.I. Munteanu, Alexandru Gal, et.al, „The PLC Real Time Control in Solid Mechanics”, The Annual Symposium of the Institute of Solid Mechanics SISOM 2009 and Session of the Commission of Acoustics.
Lucian M. Velea, Luigi Vladareanu, Alexandru Gal, et. al, „Modular Automation System with Real Time Control for Creating Command Installations and Electrical Operations Dedicated to Combined Forages Production Installations”, the XIXth SISOM, Publishing Mediamira (cotata B – CNCSIS), Editori: Luige Vladareanu, Marcel Migdalovici, Proceedings, 2009.
Luige Vladareanu, Lucian M. Velea, Alexandru Gal, et.al, „Real Time Control of the Modular Structures through Distributed and Decentralized Systems”, Proceedings of the XIXth SISOM, Editors: Luige Vladareanu, Marcel Migdalovici, Editura Mediamira (cotata B – CNCSIS), 2009.
Mihai Munteanu, Luige Vlădăreanu, Radu A. Munteanu, Alexandru Gal, et.al, „Electronic image processing in biometrics analysis through virtual instrumentation”, 1st Int. Conf. On Visualization, Imaging and Simulation (VIS'08), Bucharest, Romania, November 2008.
Lucian Marius Velea, Luigi Vladareanu, Alexandru Gal, et.al, “Modular Installations for Complex Automations”, ISI Proceedings of the 9th International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , pag. 297-302, ISBN: 978-960-6766-77-0, ISSN 1790-5117, 2008 .
Luigi Vladareanu, Ion Ion, Alexandru Gal,et al. „A New Method for Real Time Control of Actuators in Continuous Flux”, ISI Proceedings of the 9th International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , pag. 303-308, ISBN: 978-960-6766-77-0, ISSN 1790-5117.
Alexandru GAL, Referatul 1 „Stadiul Actual Al Cercetărilor Privind Controlul Hibrid Forță-Poziție Pentru Conducerea Roboților Mobili” din programa de studii doctorale, Noiembrie 2010.
Alexandru GAL, Referatul 2 „Strategii de Control Hibrid Forță-Poziție a Roboților Mobili Utilizând Modelarea Dinamică” din programa de studii doctorale, Aprilie 2011.
Alexandru GAL, Referatul 3 „Studii și Cercetări Experimentale Privind Controlul Hibrid Forță-Poziție al Roboților Mobili” din programa de studii doctorale, Octombrie 2011.
“Real time modular and configurable automation system for distributed systems”, ID 127/2007-2010, Programul PN2-INOVARE, Prof. Luige Vladareanu – coordonator proiect, Alexandru Gal-membru in proiect, finanțat de Autoritatea Națională de Cercetare Științifică.
“Real time modular and configurable automation system for decentralized systems” Project, ID 11/2007-2010, Programul PN2-INOVARE, Dr. Lucian M. Velea – coordonator proiect, Alexandru Gal-membru in proiect, finanțat de Autoritatea Națională de Cercetare Științifică.
„Electrical Motors Test Bench”, contract economicde cercetare aplicativa, 2008-2009, beneficiar Universitatea Tehnică din Cluj-Napoca, Alexandru Gal – membru in echipa de cercetare.
“Research regarding the intelligent control of a hybrid electric propulsion system with continuous transmission”, ID 72209/1.08.2008, Acronim EXPCVT, Programul Parteneriate, cocoordonator CNMP, Conf. Eugen Diaconescu – coordonator proiect, Universitatea Pitesti, Prof. Luige Vladareanu – coordonator IMSAR, Alexandru Gal-membru in proiect,finanțat de Autoritatea Națională de Cercetare Științifică.
“Hydrostatic servo-actuator for planes”, Acronim SAHA, Contract nr. 81-036 / 18.09.2007-2010, Programul Parteneriate, Prof. Luige Vladareanu – coordonator proiect, Alexandru Gal-membru in proiect, finanțat de Autoritatea Națională de Cercetare Științifică.
8. Bibliografie
P.R. Ouyang, W.J. Zhang, Madan M. Gupta, „An adaptive switching learning control method for trajectory tracking of robot manipulators”, Mechatronics, Volume 16, Issue 1, February 2006, Pages 51-61, ISSN 0957-4158, doi:10.1016/j.mechatronics.2005.08.002.
George P. Moustris, Spyros G. Tzafestas, „Switching fuzzy tracking control for mobile robots under curvature constraints”, Control Engineering Practice, Volume 19, Issue 1, January 2011, Pages 45-53, ISSN 0967-0661, doi:10.1016/j.conengprac.2010.08.008.
G. López-Nicolás, C. Sagüés, J.J. Guerrero, D. Kragic, P. Jensfelt, „Switching visual control based on epipoles for mobile robots”, Robotics and Autonomous Systems, Volume 56, Issue 7, 31 July 2008, Pages 592-603, ISSN 0921-8890, doi:10.1016/j.robot.2007.10.005.
N.R. Gans, S.A. Hutchinson, „An asymptotically stable switched system visual controller for eye in hand robots”, in: IEEE/RSJ International Conference on Intelligent Robots and Systems, Las Vegas, Nevada, October 2003, pp. 735–742.
Leonid B. Freidovich, Hassan K. Khalil, „Logic-based switching for robust control of minimum-phase nonlinear systems”, Systems & Control Letters, Volume 54, Issue 8, August 2005, Pages 713-727, ISSN 0167-6911, doi:10.1016/j.sysconle.2004.11.010.
Niu Jianjun, Fu Yongling, Qi Xiaoye, „Design and Application of Discrete Sliding Mode Control with RBF Network-based Switching Law”, Chinese Journal of Aeronautics, Volume 22, Issue 3, June 2009, Pages 279-284, ISSN 1000-9361, doi:10.1016/S1000-9361(08)60100-4.
F. Smarandache, L. Vladareanu, „Applications of neutrosophic logic to robotics: An introduction”, in Proc. GrC, 2011, pp.607-612.
Florentin Smarandache, „A Unifying Field in Logics: Neutrosophic Field, Multiple-Valued Logic / An International Journal”, Vol. 8, No. 3, 385-438, June 2002.
M.H. Raibert, J.J. Craig, „Hybrid Position/Force Control of Manipulators”, Journal of Dynamic Systems, Measurement, and Control Vol 102/127, 1981.
H. Zhang, R.P. Paul, “Hybrid Control of Robot Manipulators”, International Conference on Robotic and Automation, IEEE Computer Society, St. Louis, Missouri, pag.602-607, 1985.
William D. Fisher, M. Shahid Mujtaba, “Hybrid Position/Force Control: A Correct Formulation”, Hewlett-Packard Company, 1991.
http://datapeak.net/robotics.htm
http://www.androidworld.com/prod06.htm
http://www.plasticpals.com/?p=25340
http://davidbuckley.net/DB/HistoryMakers.htm
http://robotgossip.blogspot.ro/2005_04_01_archive.html
http://www.space.sympatico.ca/canadarm2.html
http://www.forbes.com/2002/02/21/0221tentech.html
http://www.artspace.com/hiroji_kubota/honda_asimo_robots
C. Canuda de Wit, B. Siciliano, G. Bastin, Theory of Robot Control”, Springer, 1996.
L. Sciavicco, B. Siciliano, „Modeling and Control of Robot Manipulator” McGraw-Hill, New York 1996.
C.H. An, C.G. Atkeson, J.M. Hollerbach, „Model-Based Control of a Robot Manipulator”, MIT Press, Cambridge 1988.
R.M. Murray, Z. Xi, S.S. Sastry, „A Mathematica Introduction to Robotic Manipulation”, CRC Press, 1994.
O. Khatib, „A unified approach for motion and force control of robot manipulators: The operational space formulation”, IEEE J. Rob. Aut. 3(1), pp: 43-53, 1987.
J.Y.S Luh, M.W. Walker, R.P.C. Paul, „Resolved acceleration control of mechanica manipulator”, IEEE Trans. Autom. Control. 25(3), pp: 468-474, 1980.
N. Hogan, „Impedance control: an approach to manipulation: part I-III”, ASME J. Dyn. Syst. Meas. Contr. 107, pp: 1-24, 1985.
H. Kazerooni, T.B. Sheridan, P.K. Houpt, „Robust compliant motion for manipulators. Part I: the fundamental concepts of compliant motion”, IEEE J. Robot. Autom. 2, pp:83-92, 1986.
J.K. Salisbury, „Active stiffness control of a manipulator in Cartesian coordinates”, a 19-ea IEEE Conf. Decis. Contr., pp:95-100, 1980.
D.E. Whitney, „Force feedback control of manipulator fine motions”, ASME J. Dyn. Syst. Meas. Contr. 99, pp. 91-97, 1977.
Sakagami, Y., Watanabe, R., Aoyama, C., Matsunaga, S., Higaki, N., & Fujimura, K., „The intelligent ASIMO: System overview and integration”, Intelligent Robots and Systems, IEEE/RSJ International Conference, pp. 2478-2483, 2002.
Chestnutt, J., Lau, M., Cheung, G., Kuffner, J., Hodgins, J., & Kanade, T., „Footstep planning for the Honda ASIMO humanoid”, Robotics and Automation, Proceedings of the 2005 IEEE International Conference, pp. 629-634.
Strom, J., Slavov, G., & Chown, E., „Omnidirectional walking using zmp and preview control for the nao humanoid robot”, RoboCup 2009: robot soccer world cup XIII, pp. 378-389, Springer Berlin Heidelberg 2009.
Gouaillier, D., Hugel, V., Blazevic, P., Kilner, C., Monceaux, J., Lafourcade, P.& Maisonnier, B., „Mechatronic design of NAO humanoid”, Robotics and Automation, 2009, ICRA'09 IEEE International Conference, pp. 769-774.
Chen, Chen-Yuan, and Po-Hsuan Huang, "Review of an autonomous humanoid robot and its mechanical control." Journal of Vibration and Control 18.7, pp: 973-982, 2012.
Diftler, Myron A., et al. "Robonaut 2-the first humanoid robot in space." Robotics and Automation (ICRA), IEEE International Conference, pp. 2178-2183, 2011.
Alexandru Gal, Radu Ioan Munteanu, Octavian Melinte, Luige Vladareanu, „A New Approach of Sliding Motion Robot Control using Bond Graph”, The 8th INTERNATIONAL Symposium On Advanced Topics In Electrical Engineering May 23-25, 2013, Bucharest, Romania.
Alexandru Gal, Luige Vladareanu, Hongnian Yu, „Applications of Neutrosophic Logic Approaches in ”RABOT” Real Time Control”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2013.
Nicolae POP, Luige VLADAREANU, Alexandru GAL, “The extension real time control method for restoring the robot equilibrium position”, Proceedings of the 1st International Conference on Mechanical and Robotics Engineering (MREN '13), WSEAS 2013, pp. 137-142, ISBN: 978-1-61804-185-2, Athens, Greece 2013.
Octavian MELINTE, Luige VLADAREANU, Alexandru GAL, „Performances of a haptic device when compensating for dynamic parameters”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2012.
Alexandru GAL, Luige VLADAREANU, Mihai S. Munteanu, Octavian MELINTE, „PID sliding motion control by using fuzzy adjustment”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2012.
Luige Vladareanu, Alexandru Gal, „A Multi-Functionl Approach of the HFPC Walking Robots”, Proceedings of the 15th WSEAS International Conference on Systems (part of the 15th WSEAS CSCC multiconference), Recent Researches in System Science, Corfu Island, Greece, July 14-16, 2011, pag: 339-345, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Alexandru Gal, „Hybrid force-position control for manipulators with 4 degrees of freedom”, Proceedings of the 15th WSEAS International Conference on Systems (part of the 15th WSEAS CSCC multiconference), Recent Researches in System Science, Corfu Island, Greece, July 14-16, 2011, pag: 358-363, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Octavian Melinte, Alexandru Gal, „Bond graph modelling for haptic interface robot control”, Proceedings of the European Computing Conference (ECC ’11), Paris, France, April 28-30, 2011, pag: 364-369, ISBN: 978-960-474-297-4.
Octavian Melinte, Luige Vladareanu, Alexandru Gal, „Improvement of Robot Stability for Robots with Variable Dimensions”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Alexandru Gal, Luige Vladareanu, Octavian Melinte, „Modular Walking Robots Control For Circular Movement Around Its Own Axis”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Luige Vladareanu, Gabriela Tont, Ion Ion, Lucian M. Velea, Alexandru Gal, Octavian Melinte, „Fuzzy Dynamic Modeling for Walking Modular Robot Control”, Proceedings of the 9th WSEAS International Conference on Applications of Electrical Engineering (AEE ’10), Penang, Malaysia, March 23-25, 2010, pag:163-170, ISBN: 978-960-474-171-7, ISSN: 1790-2769.
L.M. Velea, L. Vladareanu, Z. Podea, A.L.M. Velea, D. Perpelea, Alexandru Gal, O. Melinte, “Modular automaton system with real time control for creating command instalations and electrical operations dedicated to combined forages production”, Rev. Roum. Sci. Techn. − Méc. Appl., Tome 54, No 3, P. 239–258, Bucarest, 2009.
Luige Vladareanu, Ion Ion, Lucian M. Velea, Daniel Mitroi, Alexandru Gal, „The Real Time Control of Modular Walking Robot Stability”, ISI Proceedings of the 8th International Conference on Applications of Electrical Engineering (AEE ’09), Houston, USA, pag. 179-186, ISSN: 1790-5117, ISBN: 978-960-474-072-7.
R.I. Munteanu, G. Tont, V. Vladareanu, D. Perpelea, Alexandru Gal, Octavian Melinte, „The PLC Real Time Control in Solid Mechanics”, The Annual Symposium of the Institute of Solid Mechanics SISOM 2009 and Session of the Commission of Acoustics.
Lucian M. Velea, Luigi Vladareanu, Zachei Podea, Alida Lia Mariana Velea, Alexandru Gal, Octavian Melinte, „Modular Automation System with Real Time Control for Creating Command Installations and Electrical Operations Dedicated to Combined Forages Production Installations”, the XIXth SISOM, Publishing Mediamira (cotata B – CNCSIS), Editors: Luige Vladareanu, Marcel Migdalovici, Proceedings, accepted to by published in 2009.
Luige Vladareanu, Lucian M. Velea, Zachei Podea, Alexandru Gal, Octavian Melinte, „Real Time Control of the Modular Structures through Distributed and Decentralized Systems”, Proceedings of the XIXth SISOM, Editors: Luige Vladareanu, Marcel Migdalovici, Editura Mediamira (cotata B – CNCSIS), accepted to by published in 2009.
L.M. Velea, L. Vladareanu, R.A. Munteanu, M.S. Munteanu, Z. Podea, A.L.M. Velea, Alexandru Gal, “Automatic S.A.M.D. Monitoring and common equipment systems”, Rev. Roum. Sci. Techn. – Méc. Appl., TOME 53, No 2, P. 201–209, Bucharest, 2008.
Mihai Munteanu, Mihai Olteanu, Luige Vlădăreanu, Radu A. Munteanu, Alexandru Gal, Rozica Moga, „Electronic image processing in biometrics analysis through virtual instrumentation”, 1st WSEAS Int. Conf. On Visualization, Imaging and Simulation (VIS'08), Bucharest, Romania, November 2008.
Lucian Marius Velea, Luigi Vladareanu, Zachei Podea, Alida Lia Mariana Velea, Alexandru Gal, Octavian Melinte, “Modular Installations for Complex Automations”, ISI Proceedings of the 9th WSEAS International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , Published by WSEAS Press in 2008, pag. 297-302, ISBN: 978-960-6766-77-0, ISSN 1790-5117.
Luigi Vladareanu, Ion Ion, Lucian M. Velea, Mihai S. Munteanu, Octavian Melinte, Alexandru Gal, “A New Method for Real Time Control of Actuators in Continuous Flux”, ISI Proceedings of the 9th WSEAS International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , Published by WSEAS Press in 2008, pag. 303-308, ISBN: 978-960-6766-77-0, ISSN 1790-5117.
„Metodă și Dispozitiv pentru Controlul Dinamic al Roboților Pășitori”, PATENT: OSIM A/00052/21.01.2010, autori: Luige Vladareanu, Lucian Marius Velea, Radu Adrian Munteanu, Tudor Sireteanu, Mihai Stelian Munteanu, Gabriela Tont, Victor Vladareanu, Cornel Balas, D.G. Tont, Octavian Melinte, Alexandru Gal.
“Metodă și Dispozitiv pentru controlul extins hibrid forță/poziție al sistemelor robotice și mecatronice”, PATENT: OSIM A2012 1077/28.12.2012, autori: Luige Vladareanu, Cai Wen, R.I. Munteanu, Yan Chuyan, Alexandru Gal.
Vladareanu, L., Tont, G., Ion, I., Vladareanu, V., & Mitroi, D. (2010, January). „Modeling and hybrid position-force control of walking modular robots”. In American Conference on Applied Mathematics, pg (pp. 510-518).
Vladareanu, L., Tont, G., Ion, I., Munteanu, M. S., & Mitroi, D. (2010). „Walking robots dynamic control systems on an uneven terrain”. Advances in Electrical and Computer Engineering, ISSN, 1582-7445.
Vladareanu, L. (2006). „Open architecture systems for the compliance robots control”. WSEAS Transactions on Systems, 5(9), 2243-2249.
Ion, I., Vladareanu, L., Simionescu, I., & Vasile, A. (2008). „The movement of modular walking robot MERO in the obstacles' area”. WSEAS Transactions on Systems, 7(7), 843-856.
Vladareanu, L., Ion, I., Velea, L. M., & Mitroi, D. (2009). „The robot hybrid position and force control in multi-microprocessor systems”. WSEAS Transactions on Power Systems, (1), 148-157.
Ion, I., Vladareanu, L. Radu Muntanu jr., Mihai Munteanu, „The Improvement of Structural and Real Time Control Performances for MERO Modular”, Advances in Climbing and Walking Robots, Ed. Ming Xie, S. Dubowsky.
Vladareanu, L., & Peterson, T. (2003). „New concepts for the real time control of robots by open architecture systems”. Machine Building, 55.
Ion, I., Vladareanu, L., Simionescu, I., & Vasile, A. (2008). „The gait analysis for modular walking robot MERO walks on the slope”. nature, 6, 8.
Vladareanu, L., Ion, I., Sandru, O., Lucian, M. V., & Munteanu Mihai, S. (2008). „The actuators control by probabilistic mathematical modelling”. WSEAS Transactions on Systems and Control, Volume3, 547-557.
Ion, I., Marin, A., Curaj, A., & Vladareanu, L. (2008). „Design and Motion Synthesis of Modular Walking Robot Mero”. Journal of Automation Mobile Robotics and Intelligent Systems, 2(4), 25-30.
Sandru, O. I., Vladareanu, L., & Sandru, A. (2008, November). „A new method of approaching the problems of optimal control”. In Proceedings of the 10th WSEAS international conference on Mathematical and computational methods in science and engineering (pp. 390-393). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L., Ion, I., Diaconescu, E., Tont, G., Velea, L. M., & Mitroi, D. (2008, November). „The hybrid position and force control of robots with compliance function”. In Proceedings of the 10th WSEAS international conference on Mathematical and computational methods in science and engineering (pp. 384-389). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L. (2005). „Controlul in timp real cu automate programabile in mecanica solidului”. Studii si cercetari aplicative”, Ed. BREN (p. 207). ISBN 973-648-432-7.
Vladareanu, L., Velea, L. M., Vasile, A., Curaj, A., & Vasile, A. (2008, June). „Modular structures in the open architecture systems”. In Proceedings of the 9th WSEAS International Conference on Acoustics & Music: Theory & Applications (pp. 100-105). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L., & Capitanu, L. (2012). „Hybrid Force-Position Systems With Vibration Control For Improvment Of Hip Implant Stability”. Journal of Biomechanics, 45, S279.
Vladareanu, L., & Velea, L. M. „The Complex Automation Bases through Programmable Locical Controllers PLCs”.
Vladareanu, L., Velea, L. M., Munteanu, R. L., Curaj, A., Cononovici, S., Sireteanu, T., Munteanu, M. S. (2009). „Real time control method and device for robots in virtual projection”, European Patent No. EP 2105263. Munich, Germany: European Patent Office.
Haibin Wang, Florentin Smarandache, Yan-Quin Zhang, Rajshekhar Sunderraman, „Interval Neutrosophic sets and logic: Theory and application in computing.”, HEXIS Neutrosophic Book Series, No.5, 2005.
Florentin Smarandache, “Neutrosophy : neutrosophic probability, set, and logic ; analytic synthesis & synthetic analysis”, Gallup, NM : American Research Press, 1998. – 105 p., ISBN 1-87958-563-4.
F. Smarandache, L. Vladareanu, "Applications of neutrosophic logic to robotics: An introduction", in Proc. GrC, 2011, pp.607-612.
Xinde Li, Xinhan Huang, Jean Dezert, Li Duan and Min Wang, „A Successful Application of DSmT in Sonar Grid Map Building And Comparison With Dst-Based Approach”, International Journal of Innovative Computing, Information and Control ICIC International, Volume 3, Number 3, ISSN 1349-4198, June 2007.
Editori Florentin Smarandache si Jean Dezert, „Advances and Applications of DSmT for Information Fusion”, Editura: American Research Press, Rehoboth, 2004, ISBN: 1-931233-82-9.
Utkin, V. I., „Sliding Modes and their Application in Variable Structure Systems”, MIR Publishers, Moscow (1978).
Zhang, M., Yu, Z., Huan, H. & Zhou, Y., „The Sliding Mode Variable Structure Control Based on Composite Reaching Law of Active Magnetic Bearing”, ICIC Express Letters, vol.2, no.1, pp.59-63, (2008)
Slotin, J. J. E., Li, W., „Applied Nonlinear Control”, Englewood Cliffs, NJ: Prentice-Hall, New York, USA, (1991).
Fabricio Garelli, Luis Gracia, Antonio Sala, Pedro Albertos, „Sliding mode speed auto-regulation technique for robotic tracking”, Robotics and Autonomous Systems, Volume 59, Issues 7-8, July-August 2011, Pages 519-529, ISSN 0921-8890, 10.1016/j.robot.2011.03.007
Zhihong Man & Xinghuo Yu, “Adaptive terminating sliding mode tracking control for rigid robotic manipulators with uncertain dynamics”, JSMA, International Journal, Vol. 40, No.3, Series C, September 1997.
Frank L. Lewis, Darren M. Dawson, Chaouki T. Abdallah, „Robot Manipulator Control: Theory and Practice- Second Edition”, ISBN:0-8247-4072-6, 2004.
Deepak Tolani, Ambarish Goswami, and Norman I. Badler, „Real-Time Inverse Kinematics Techniques for Anthropomorphic Limbs”, Computer and Information Science Department, University of Pennsylvania, Philadelphia, published online August 15, 2000.
J. Duffy, „Analysis of Mechanisms and Robot Manipulators”, Wiley, New York 1980.
Bruno Siciliano, Oussama Khatib (Editors), „Springer Handbook of Robotics”, ISBN: 978-3-540-23957-4, Springer-Verlag Berlin Heidelberg 2008.
H.Y. Lee, C.G. Liang, „A new vector theory for the analysis of spatial mechanisms”, Mechan. Machine Theory 23(3), 209-217 (1988).
R. Manseur, K.L. Doty, „A robot manipulator with 16 real inverse kinematic solutions”, Int. J. Robot. Res. 8(5), 75-79 (1989).
M. Raghvan, B. Roth, „Kinematic analysis of the 6R manipulator of general geometry”, 5th Int. Symp. Robot Res. (1990).
D. Manocha, J. Canny, „Real Time Inverse Kinematics for General 6R Manipulators”, Tech. rep. (University of California, Berkley 1992).
B. Buchberger, „Applications of Gröbner bases in non-linear computational geometry”, In: Trends in Computer Algebra, Lect. Notes Comput. Sci. Vol. 296, ed. By R. Janen (Springer, Berlin 1989) pp 52-80.
P. Kovacs, „Minimum degree solutions for the inverse kinematics problem by application of the Buchberger algorithm”, In: Advances in Robot Kinematics ed. By S. Stifter, J. Lenarcic (Springer, New York 1991), pp 326-334.
L.W. Tsai. A.P. Morgan, „Solving the kinematics of the most general six and five degree of freedom manipulators by continuation methods”, ASME J. Mechan. Transmission Autom. Design 107, 189-195 (1985).
C.W. Wampler, A.P. Morgan, A.J. Sommese, „Numerical continuation methods for solving polynomial systems arising in kinematics, ASME J. Mech. Des. 112, 59-68 (1990).
D. Pieper, „The Kinematics of Manipulators Under Computer Control”, Ph. D Thesis (Standford University, Standord 1968).
R. Manseur, K.L. Doty, „Fast inverse kinematics of 5 revolute axis robot manipulators”, Mechan. Machine Theory 27(5), 587-597 (1992).
S. C. A. Thomopoulos, R.Y.J. Tam, „An iterative solution to the inverse kinematics of robotic manipulators”, Mechan. Machine Theory 26(4), 359-373 (1991).
J.J. Uicker Jr., J. Denavit, R.S. Hartenberg, „An interactive method for the displacement analysis of spatial mechanisms”, J. Appl. Mech. 31, 309-314 (1964).
J. Zhao, N. Badler, „Inverse kinematics positioning using nonlinear programming for highly articulated figures”, Trans. Comput. Graph. 13(4), 313-336 (1994).
D.E. Whitney, „Resolved motion rate control of manipulators and human prostheses”, IEEE Trans. Man. Mach. Syst. 10, 47-63 (1969).
H. Cheng. K. Gupta, „A study of robot inverse kinematics base upon the solution of differential equations”, J. Robot. Syst. 8(2), 115-175 (1991).
L. Sciavicco, B. Siciliano, „Modeling and control of Robot Manipulators”, Springer, London 2000.
R.S. Rao, A. Asaithambi, S.K. Agrawal, „Inverse kinematic solution of robot manipulators using interval analysis”, ASME J. Mech. De. 120(1), 147-150 (1998).
D.E. Whitney, „The mathematics of coordinated control of prosthetic arms and manipulators”, J. Dynamics Sys. Meas. Contr. 122, 303-309 (1972).
A. Balestrino, G. De Maria, L. Scriavicco, „Robust control of robotic manipulators”, in Proceedings of the 9th IFAC World Congress, Vol 5, 1984, pp 2435-2440.
W.A. Wolovich, H. Elliot, „A computational technique for inverse kinematics”, in Proc. 23rd IEEE Conference of Decision and Control, 1984, pp 1359-1363.
Samuel R. Buss, „Introduction to Inverse Kinematics with Jacobian Transpose, Pseudoinverse and Damped Least Squares methods”, Department of Mathematics University of California, San Diego, April 17, 2004.
Roy Featherstone, Davin Orin, „Robot Dynamics: Equations and Algorithms”, IEEE Int. Conf. Robotics & Automation, San Francisco, April 24-28, pp. 826-834, 2000.
R. Featherstone, „The Calculation of Robot Dynamics using Articulated-Body Inertias”, Int. J. Robotics Research, vol. 2, no. 1, pp. 13-30, 1983.
J. Y. S. Luh, M. W. Walker and R. P. C. Paul, „On-Line Computational Scheme for Mechanical Manipulators”, Trans. ASME, J. Dynamic Systems, Measurement & Control, vol. 102, no. 2, pp. 69-76, 1980.
M. W.Walker and D. E. Orin, „Eficient Dynamic Computer Simulation of Robotic Mechanisms”, Trans. ASME, J. Dynamic Systems, Measurement & Control, vol. 104, pp. 205-211, 1982.
R. Featherstone, „Robot Dynamics Algorithms”, Boston/Dordrecht/Lancaster: Kluwer Academic Publishers, 1987.
G. Rodriguez, A. Jain and K. Kreutz-Delgado, „A Spatial Operator Algebra for Manipulator Modelling and Control”, Int. J. Robotics Research, vol. 10, no. 4, pp. 371-381, 1991.
M. Brady, J. M. Hollerbach, T. L. Johnson, T. Lozano-Perez, and M. T. Mason, „Robot Motion: Planning and Control”, Cambridge, MA: The MIT Press, 1982.
Mark W. Spong, Seth Hutchinson, M. Vidyasagar, „Robot Dynamics and Control”, January 28, 2004.
Gal I. Alexandru, Referatul 3 „Studii și Cercetări Experimentale Privind Controlul Hibrid Forță-Poziție al Roboților Mobili” din programa de studii doctorale, Octombrie 2011.
Gal I. Alexandru, Referatul 2 „Strategii de Control Hibrid Forță-Poziție a Roboților Mobili Utilizând Modelarea Dinamică” din programa de studii doctorale, Aprilie 2011.
Cloutier, B., Pai, D. K., și Ascher „The formulation stiffness of forward dynamics algorithms and implications for robot simulation”, în: Proceedings of the IEEE Conference on Robotics and Automation, 1995.
Uri M. Ascher, Dinesh K. Paiy, Benoit P. Cloutierz, „Forward Dynamics, Elimination Methods, and Formulation Stiffness in Robot Simulation”, Department of Computer Science University of British Columbia, Vancouver, Canada, 1996.
J. J. Craig and M. H. Raibert, "A Systematic Method of Hybrid Position/Force Control of a Manipulator", in Computer Software and Applications Conference, IEEE Computer Society, November 1979, pp 446-451.
H. Zhang and R. P. Paul, "Hybrid Control of Robot Manipulators," in International Conf. on Rob and Auto, IEEE Computer Society, March 1985. St. Louis, Missouri, pp.602-607.
C. H. An and J. M. Hollerbach, "Kinematic Stability Issues in Force Control of Manipulators" in Int Conf on Rob and Aut, IEEE Rob and Aut Society, April 1987, pp. 897-903.
H. Zhang, "Kinematic Stability of Robot Manipulators under Force Control," in International Conf on Rob and Aut, IEEE Rob and Aut Society, ISBN: 0-8186-1938-4, May 1989, pg. 80-85.
William D. Fisher, Dr. M. Shahid Mujtaba, „Hybrid Position/Force Control: A Correct Formulation”, Meas. & Manuf. Systems Laboratory HPL-91-140, October, 1991.
Vladareanu L, Vasile A, “Real Time Control Open Systems of 5 DOF Nano-Manipulators”, Conference on Advanced Topics in Optoelectronics, Microelectronics, and Nanotechnologies, 2010, Constanta, WOS: 000287803900057, SN 0277-786X.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudo-inverse, and damped least squares methods”, Typeset manuscript, April 2004.
S. R. BUSS AND J. KIM, “Selectively Damped Least Squares for Inverse Kinematics”, October 25, 2004.
William D. Fisher, M. Shahid Mujtaba, „Hybrid Position/Force Control: A Correct Formulation”, Laboratorul de masuratori si producția Hewlett Packard, Octombrie 1991.
Jonas Fisler, C. David Remy, Roland Siegwart, „Mechanical design of a robot leg for dynamic locomotion”, Swis Federal Institute of Technology Zurich, 2008.
http://www.robotshop.com/lynxmotion-aluminium-leg-pair-thleg3-blk.html
Kevin C. Galloway, Galen Clark Haynes, B. Deniz Ilhan, Aaron M. Johnson, Ryan Knopf, „X-RHex: A Highly Mobile Hexapedal Robot for Sensorimotor Tasks”, Universitatea din Pensylvenia, Raport tehnic.
http://www.mhobbies.com/arduino-hexapod-robot-hardware-parts-with-servos-no-electronics.html
Mohamed El Hossine Daachi, Brahim Achili, Boubaker Daachi, Yacine Amirat, Djamel Chikouche, „Hybrid Moment/Position Control of a Parallel Robot”, International Journal of Control, Automation, and Systems, Springer (2012, DOI 10.1007/s12555-012-0310-z, ISSN:1598-6446 eISSN:2005-4092.
H. Wang and Y. Xie, “Adaptive Jacobian position/force tracking control of free-flying manipulators,” Robotics and Autonomous Systems, vol. 57, no. 2, pp. 173-181, 2009.
M. Farooq and D. B. Wang, “Hybrid force/position control scheme for flexible joint robot with friction between and the end-effector and the environment,” International Journal of Engineering Science, vol. 46, no. 12, pp. 1266-1278, Dec. 2008
S. Kilicaslan, M. K. Özgören, and S. K. Ider, “Hybrid force and motion control of robots with flexible links,” Mechanism and Machine Theory, vol. 45, no. 1, pp. 91-105, 2010.
A. Visioli, G. Ziliani, G. Legnani, and S. Özgören. “Iterative-learning hybrid force/velocity control or contour tracking,” IEEE Trans. on Robotics, vol. 26, no. 2, pp. 388-393, 2010.
N. Kumar, V. Panwar, N. Sukavanam, S. P. Sharma, and J. H. Borm, “Neural network based hybrid force/position control for robot manipulators,” International Journal of Precision Engineering and Manufacturing, vol. 12, no. 3, pp. 419-426, 2011.
Javier Testart, Javier Ruiz del Solar, Rodrigo Schulz, Pablo Guerrero, Rodrigo Palma-Amestoy, „A Real-Time Hybrid Architecture for Biped Humanoids with Active Vision Mechanisms”, Journal of Intell Robot Syst, pp:233–255, DOI 10.1007/s10846-010-9515-7, Springer 2011, ISSN: 0921-0296.
Cetin Elmas, Oguz Ustun, „A hybrid controller for the speed control of a permanent magnet synchronous motor drive”, Control Engineering Practice 16, pp.260–270 ISSN: 0967-0661, Elsevier 2008, doi:10.1016/j.conengprac.2007.04.016.
Asgeir J. Sorensen, „A survey of dynamic positioning control systems”, Annual Reviews in Control 35, 123–136, doi:10.1016/j.arcontrol.2011.03.008, Elsevier 2011.
Bora Erginer și Erdinc Altug, „Design and Implementation of a Hybrid Fuzzy Logic Controller for a Quadrotor VTOL Vehicle”, International Journal of Control, Automation, and Systems (2012) 10(1):61-70, DOI 10.1007/s12555-012-0107-0, ICRSO, KIEE, Springer 2012.
Naveen Kumar, Vikas Panwar, Nagarajan Sukavanam, Shri Prakash Sharma, Jin-Hwan Borm, „Neural Network Based Hybrid Force/Position Control for Robot Manipulators”, International Journal Of Precision Engineering And Manufacturing Vol. 12, No. 3, pp. 419-426, DOI: 10.1007/s12541-011-0054-3, Springer 2011.
Nael H. El-Farra, Prashant Mhaskar, Panagiotis D. Christofides, „Uniting bounded control and MPC for stabilization of constrained linear systems”, Automatica 40, pp. 101 – 110, Elsevier 2004.
Çetin Saban, Akkaya AliVolkan, „Simulation and hybrid fuzzy-PID control for positioning of a hydraulic system”, Nonlinear Dynamics 61, pp:465–476, DOI: 10.1007/s11071-010-9662-1, Springer 2010.
Juan Chen, Yawei Peng, Weisha Han, Min Guo, „Adaptive fuzzy sliding mode control in PH neutralization process”, Procedia Engineering, Volume 15, pp 954-958, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.08.176, Elsevier 2011.
Shaojiang Wang, Li Hou, Lu Dong, Huajun Xiao, „Adaptive Fuzzy Sliding Mode Control of Uncertain Nonlinear SISO Systems”, Procedia Engineering, Volume 24, pp 33-37, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.11.2597, Elsevier 2011.
Zhigang Li, Hongjun Duan, Acceleration estimation method and sliding mode control design for car-following distance control, Procedia Engineering, Volume 15, pp 1176-1180, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.08.217, Elsevier 2011.
Farzin Piltan, N. Sulaiman, Samaneh Roosta, M.H. Marhaban, R. Ramli, „Design a New Sliding Mode Adaptive Hybrid Fuzzy Controller”, Journal of Advanced Science and Engineering Research, pp: 115-123, 2011.
Xinghuo Yu, „Sliding-Mode Control With Soft Computing: A Survey”, IEEE Transactions on Industrial Electronics, VOL. 56, NO. 9, DOI: 10.1109/TIE.2009.2027531, 2009.
B. M. Wilamowski, N. J. Cotton, O. Kaynak, G. Dundar, „Computing gradient vector and Jacobian matrix in arbitrarily connected neural networks”, IEEE Trans. Ind. Electron., vol. 55, no. 10, pp. 3784–3790, 2008.
V. Nekoukar, A. Erfanian, „Adaptive fuzzy terminal sliding mode control for a class of MIMO uncertain nonlinear systems”, Fuzzy Sets and Systems 179, pp: 34–49, doi:10.1016/j.fss.2011.05.009, Elsevier 2011.
Swandito Susanto, Sunita Chauhan, „A Hybrid Control Approach for Non-invasive Medical Robotic Systems”, Journal of Intelligent & Robotic Systems, pp: 83-110, ISSN: 0921-0296, DOI: 10.1007/s10846-010-9407-x, Springer 2010.
Zahari Taha, Sarkawt Rostam, „A hybrid fuzzy AHP-PROMETHEE decision support system for machine tool selection in flexible manufacturing cell”, Journal of Intelligent Manufacturing, ISSN: 0956-5515, DOI: 10.1007s10845-011-0560-2, Springer 2012.
Heng Wang, He-Hua Ju, Yu-Long Wang, „H∞ Switching Filter Design for LPV Systems in Finite Frequency Domain”, International Journal of Control, Automation and Systems, pp: 503-510, ISSN: 1598-6446, Springer 2013.
Editor: Seyed Ehsan Shafiei, „Advanced Strategies for Robot Manipulators”, ISBN 978-953-307-099-5, Croația, 2010.
Florentin Smarandache, M. Khoshnevisan, „Fuzzy Logic, Neutrosophic Logic, and Applications”, BISC FLINT-CIBI International Joint Workshop on Soft Computing for Internet and Bioinformatics, Berkeley, California, USA, 2003.
Wen, Shuhuan, et al. "Elman fuzzy adaptive control for obstacle avoidance of mobile robots using hybrid force/position incorporation." Systems, Man, and Cybernetics, Part C: Applications and Reviews, IEEE Transactions on 42.4 (2012): 603-608.
Vladareanu, Luige, et al. "Modeling and hybrid position-force control of walking modular robots." American Conference on Applied Mathematics, pg. 2010.
Bellakehal, Saliha, et al. "Force/position control of parallel robots using exteroceptive pose measurements." Meccanica 46.1 (2011): 195-205.
Bellakehal, Saliha, et al. "Force/position control of parallel robots using exteroceptive pose measurements." Meccanica 46.1 (2011): 195-205.
Zheng, Chi-Han. "A Study of Hybrid Position/Impedance Control Applied to Peg-In-Hole Task with Robot Arm." (2013).
Rakotondrabe, Micky, and Ioan Alexandru Ivan. "Development and force/position control of a new hybrid thermo-piezoelectric microgripper dedicated to micromanipulation tasks." Automation Science and Engineering, IEEE Transactions on 8.4 (2011): 824-834.
Marconi, Lorenzo, and Roberto Naldi. "Control of aerial robots: Hybrid force and position feedback for a ducted fan." Control Systems, IEEE 32.4 (2012): 43-65.
Rabenorosoa, Kanty, Cédric Clévy, and Philippe Lutz. "Active force control for robotic micro-assembly: Application to guiding tasks." Robotics and Automation (ICRA), 2010 IEEE International Conference on. IEEE, 2010.
Visioli, Antonio, Giacomo Ziliani, and Giovanni Legnani. "Iterative-learning hybrid force/velocity control for contour tracking." Robotics, IEEE Transactions on 26.2 (2010): 388-393.
Liu, Yong, et al. "Development of a hybrid position/force controlled hydraulic parallel robot for impact treatment." Service Robotics and Mechatronics. Springer London, 2010. 61-67.
Mehdi, Haifa, and Olfa Boubaker. "Rehabilitation of a human arm supported by a robotic manipulator: A position/force cooperative control." Journal of Computer Science 6.8 (2010): 912.
Kilicaslan, Sinan, M. Kemal Özgören, and S. Kemal Ider. "Hybrid force and motion control of robots with flexible links." Mechanism and Machine Theory 45.1 (2010): 91-105.
Buschmann, Thomas, Sebastian Lohmeier, and Heinz Ulbrich. "Biped walking control based on hybrid position/force control." Intelligent Robots and Systems, 2009. IROS 2009. IEEE/RSJ International Conference on. IEEE, 2009.
Fisher W.D., Mujtaba M.S., „Hybrid Position/Force Control: A Correct Formulation”, The International Journal of Robotics Research, Vol. 11, No. 4, August 1992, pp. 299-311.
An, C.H., Hollerbach, J.M., „The Role of Dynamic Models in Cartesian Force Control of Manipulators”, The International Journal of Robotics Research,Vol.8,No.4, 1989,pg. 51-71.
Luige Vladăreanu, Nicolae Pop, Alexandru Gal, Micong Deng, „The 3D elastic quasi-static contact applied to robots control”, International Conference on Advanced Mechatronic Systems, Henan University of Science and Technology, Luoyang, China, 2013.
Springer Handbook of Robotics; editors: Bruno Siciliano, Oussama Khatib; ISBN: 978-3-540-23957-4.
Luige Vladareanu, Ion Ion, Lucian M. Velea, Daniel Mitroi, Alexandru Gal, „The Real Time Control of Modular Walking Robot Stability”, Recent Advances in Electrical Engineering, A Series of Reference Books and Textbooks, Published by WSEAS Press, Proceedings of the 8th International Conference on Applications of Electrical Engineering (AEE ’09), Houston, USA,pg.179-186, ISSN: 1790-5117 , ISBN: 978-960-474-072-7, ISI Proceedings.
Mark W Spong, M Vidyasagar, „Robot Dynamics And Control” EAN: 9788126517800.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudoinverse, and damped least squares methods”, Typeset manuscript, available from http://math.ucsd.edu/~sbuss/ResearchWeb, April 2004.
S. R. BUSS AND J. KIM, Selectively Damped Least Squares for Inverse Kinematics, October 25, 2004.
Alexandru Gal, Luige Vladareanu, Octavian Melinte, „Modular Walking Robots Control For Circular Movement Around Its Own Axis”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Seyed Ehsan Shafiei, „Sliding Mode Control of Robot Manipulators via Intelligent Approaches”, Advanced Strategies for Robot Manipulators, ISBN 978-953-307-099-5, pp. 428, Intech 2010.
Vladareanu L., Capitanu L., “Hybrid force-position systems with vibration control for improvment of hip implant stability”, Journal of Biomechanics, vol. 45, S279, Elsevier, 2012.
V. Damic, J. Montgomery, „Mechatronics by Bond Graphs: An Object-Oriented Approach to Modelling”, Springer-Verlag, Berlin-Heidelberg, pp 71-97, 2003.
Thoma, „Introduction to Bond Graphs and Their Applications”, Pergamon Press, New York 1975.
M.J.L. Tiernego and J.J. van Dixhoorn, “Bond graph modelling and simulation techniques applied to a three axes driven pendulum”, Int. J. Modelling Simulation, Vol. 1, No. 1, pp. 62-65, 1981.
DC Kamopp and RC Rosenberg, „Analysis and Simulation of Multipart Systems”, MIT Press, Cambridge, MA, 1968.
DC Kamopp and RC Rosenberg, „System Dynamics”. New York: Wiley, 1975.
RC Rosenberg and DC Kamopp, „Introduction to Physical System Dynamics”, McGraw-Hill Book Co., Inc., New York, 1983.
D. Kamopp, D. Margolis, R. Rosenberg, „System Dynamics: A Unified Approach”, John Wiley & Son Inc., New York 1990.
JASON CLARK, „Inverse Kinematics”, Powerpoint presentation, Essential Math for Games.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudoinverse, and damped least squares methods”, Typeset manuscript, available from http://math.ucsd.edu/~sbuss/ResearchWeb, April 2004.
S. R. BUSS AND J. KIM, „Selectively Damped Least Squares for Inverse Kinematics”, October 25, 2004.
9. Anexe
Anexa 1:
În figurile A1.1, A1.2 și A1.3 este prezentată schema Matlab Simulink pentru Controlul Mișcării la Alunecare, prezentat în capitolul 5.2.
Figura A1.1 – Schema Matlab Simulink partea 1.
Figura A1.1 prezintă următoarele componente ale schemei de simulare: blocul de constante, cel de calculare a matricei H(matricea inertială), a matricei C(matricea Coriolis), blocurile de generare a matricelor lambda precum și blocul de calculare a forței f. Această schemă este o parte importantă a controlului mișcării la alunecare, deoarece calculează componentele ecuației dinamicii robotului controlat.
Figura A1.2 – Schema Matlab Simulink partea 2
Figura A1.2 prezintă următoarele componente ale schemei de simulare: blocul de calculare a cinematicii inverse, cel de calcul a erorii, blocul de calculare a matricei efectului gravitațional G precum și cel ce conține funcția de calculare a valorii lui s. Aceste componente ale simulării în afară de cel de calcul a matricei efectului gravitațional ce face parte elementele de dinamică a robotului, sunt cele ce definesc suprafața de alunecare specifică controlului mișcării la alunecare.
Figura A1.3 – Schema Matlab Simulink partea 3
Figura A1.3 prezintă următoarele componente ale schemei de simulare: blocul de calcul a valorii lui s, cel de calculare a funcției de saturare, a funcției Fuzzy și a matricelor aferente, precum și blocul ce include funcția de calculare a cuplurilor pentru fiecare din cele trei motoare, cupluri ce sunt filtrate de câte un bloc de limitare a semnalelor. Aceste componente sunt specifice controlului mișcării la alunecare și calculează referința pentru fiecare motor al articulațiilor robotului mobil pășitor. Această referință este furnizată ca și cuplu de urmărire, cuplu ce este filtrat pentru a nu depăși valorile maxime admise de fiecare motor în parte.
Anexa 2:
Această anexă prezintă algoritmii Matlab de calcul pentru logica neutrosophică folosiți în simulări.
Funcția de calcul a datelor observatorului de forță este prezentată mai jos. Aceasta preia datele de intrare alcătuite din valorile senzorului de forță, le trece printr-o funcție de neutrosophicare și apoi calculează procentajele de Adevăr, Incertitudine și Falsitate în concordanță cu pragurile selectate anterior.
function [mT, mI, mF] = Force_Observer(Force)
% Forța este exprimată în Newtoni
% mT (masa-probabilitatea de adevăr),
% mi (masa-probabilitatea de incertitudine),
% mF (masa-probabilitatea de falsitate) sunt între 0 și 1
% și reprezintă procentul de adevăr pentru a avea un control dinamic
% calc mT -> mT = 1 cand Forța este mai mare
mT_min = 35; %in N
mT_max = 50; %in N
if (Force >= mT_max) % >= 50 N
mT = 1;
elseif (Force >= mT_min) % >= 35 N
mT = (Force – mT_min)/(mT_max – mT_min);
else % < 35 N
mT = 0;
end;
% calc mI
mI_min = 10; %in N
mI_med_min = 25; %in N
mI_med_max = 35; %in N
mI_max = 50; %in N
if (Force <= mI_min) % <= 10 N
mI = 0;
elseif (Force <= mI_med_min) % <= 25 N
mI = (Force – mI_min)/(mI_med_min – mI_min);
elseif (Force <= mI_med_max) % <= 35 N
mI = 1;
elseif (Force <= mI_max ) % <= 50 N
mI = 1 – (Force – mI_med_max)/(mI_max – mI_med_max);
else % > 50 N
mI = 0;
end;
% calc mF
mF_min = 10; %in N
mF_max = 25; %in N
if (Force <= mF_min) % <= 10 N
mF = 1;
elseif (Force <= mF_max) % <= 25 N
mF = 1 – (Force – mF_min)/(mF_max – mF_min);
else % > 25 N
mF = 0;
end;
Funcția de calcul a datelor observatorului de proximitate este prezentată mai jos. Aceasta preia datele de intrare alcătuite din valorile senzorului de proximitate, le trece printr-o funcție de neutrosophicare și apoi calculează procentajele de Adevăr, Incertitudine și Falsitate în concordanță cu pragurile selectate anterior.
function [mT, mI, mF] = Proximity_Observer(Proximity)
% Proximitatea este exprimată în metrii
% mT (masa-probabilitatea de adevăr),
% mi (masa-probabilitatea de incertitudine),
% mF (masa-probabilitatea de falsitate) sunt între 0 si 1
% și reprezintă procentul de adevăr pentru a avea un control dinamic
% calc mT -> mT = 1 cand Distanța de Proximitate este foarte mică
mT_min = 1; %in cm
mT_max = 1.75; %in cm
if (Proximity <= mT_min / 100) % <= 0.01 m = 1 cm
mT = 1;
elseif (Proximity <= mT_max / 100 ) % <= 0.0175 m = 1.75 cm
mT = 1 – (Proximity*100 – mT_min)/(mT_max – mT_min);
else % > 0.0175 m = 1.75cm
mT = 0;
end;
% calc mI
mI_min = 1; %in cm
mI_med_min = 1.75; %in cm
mI_med_max = 2.25; %in cm
mI_max = 3; %in cm
if (Proximity <= mI_min / 100) % <= 0.01 m = 1 cm
mI = 0;
elseif (Proximity <= mI_med_min / 100 ) % <= 0.0175 m = 1.75 cm
mI = (Proximity*100 – mI_min)/(mI_med_min – mI_min);
elseif (Proximity <= mI_med_max / 100 ) % <= 0.0225 m = 2.25 cm
mI = 1;
elseif (Proximity <= mI_max / 100 ) % <= 0.03 m = 3 cm
mI = 1 – (Proximity*100 – mI_med_max)/(mI_max – mI_med_max);
else % > 0.03 m = 3 cm
mI = 0;
end;
% calc mF
mF_min = 2.25; %in cm
mF_max = 3; %in cm
if (Proximity >= mF_max / 100) % >= 0.03 m = 3 cm
mF = 1;
elseif (Proximity >= mF_min / 100 ) % >= 0.0225 m = 2.25 cm
mF = (Proximity*100 – mF_min)/(mF_max – mF_min);
else % < 0.0225 m = 2.25cm
mF = 0;
end;
Funcția de calcul a probabilităților furnizate de logica neutrosophică este prezentată mai jos, pentru care datele de intrare sunt valorile furnizate de funcțiile de neutrosophicare ale senzorilor de forță și proxmitate. Această funcție calculează valorile teoriei clasice DSm ale probabilităților ca un eveniment sau stare să fie Adevărat, Incerct, Fals sau există o contradicție între datele de intrare.
function [mT, mI, mF, mC] = Neutrosophic_Mass_Comp(mPT, mPI, mPF, mFT, mFI, mFF)
% mT = Contact cu Solul/Control Dinamic
% mF = Picior în aer/Control Cinematic
% mI = Incertitudine
% mC = Contradicție
% le schimb numele pt ușurința urmăririi în calcule
m1T = mPT;
m1I = mPI;
m1F = mPF;
m2T = mFT;
m2I = mFI;
m2F = mFF;
mT = m1T * m2I + m1I * m2T + m1T * m2T;
mF = m1F * m2I + m1I * m2F + m1F * m2F;
mI = m1I * m2I;
mC = m1T * m2F + m1F * m2T;
sum = mT + mF + mI + mC;
Funcția de calcul a datelor neutrosophicate:
function [mT, mI, mF, mC] = Neutrosophicare(Force,Proximity)
[mFT,mFI,mFF] = Force_Observer(Force);
[mPT,mPI,mPF] = Proximity_Observer(Proximity);
[mT, mI, mF, mC] = Neutrosophic_Mass_Computation(mPT, mPI, mPF, mFT, mFI, mFF);
Funcția de calcul a datelor fuzuficate:
function [mT, mI, mF] = Fuzificare(Force,Proximity)
%#codegen
[mFT,mFI,mFF] = Force_Observer(Force);
[mPT,mPI,mPF] = Proximity_Observer(Proximity);
mT = (mFT+mPT)/2;
mI = (mFI+mPI)/2;
mF = (mFF+mPF)/2;
Funcția de calcul a deciziei neutrosophice este prezentată mai jos, în care folosind datele calculate cu ajutorul funcției teoriei clasice DSm se decide starea în care se află robotul și deci și tipul de control cetrebuie să controleze robotul.
function Control_Type = Luarea_Deciziei_Neutrosophice(mT, mI, mF, mC, Control_Type_In)
%#codegen
% mT = valoarea de probabilitate pentru Contactul cu Solul
% mF = valoarea de probabilitate pentru Poziția fără contact
% mI = valoarea de Incertitudine
% mC = valoarea de Contradicție
% mC -> daca avem o contradicție, mC = 1, atunci vom considera că piciorul nu este în contact cu solul
% daca mC < 1 atunci putem sa ne uitam la mT, mF si mI, și luam maximul.
% Daca mT este maxim, atunci avem un contact cu solul, altfel nu avem un contact, pentru că
% vom considera că pentru mI = max(mT,mF,mI) nu vom avea un contact cu solul.
% Control_Type = 10 pentru cazul când nu avem un contact cu solul
% Control_Type = 0 pentru cazul în care avem un contact cu solul
if (mC==1)
Control_Type = Control_Type_In;% păstrez valoarea anterioară
else
if (mT>=mF && mT>=mI)
Control_Type = 0;%Contact
elseif (mF>=mI)
Control_Type = 10;%Fără Contact
else
Control_Type = Control_Type_In;% păstrez valoarea anterioară
end;
end;
Funcția de calcul a deciziei fuzzy este prezentată mai jos ce este mult mai simplu de calculat față de decizia neutrosophică:
function Control_Type = fcn(mT, mI, mF, Control_Type_In)
%#codegen
% mT = valoarea de probabilitate pentru Contactul cu Solul
% mF = valoarea de probabilitate pentru Poziția fără contact
% mI = valoarea de Incertitudine
% mC = valoarea de Contradicție
% pentru un control fuzzy, avem:
% T > 0.5 un Contactul cu Solul
% F > 0.5 Poziția fără contact
% I > 0,5 -> T > F Contactul cu Solul
% F > T Poziția fără contact
% else: default: păstrăm valoarea anterioară
% Control_Type = 10 pt Poziția fără contact
% Control_Type = 0 pt Contactul cu Solul
% threshold
threshold = 0.5; %0.45
if (mT > threshold)
Control_Type = 0;%Contact
elseif (mF > threshold)
Control_Type = 10;%Fără Contact
elseif (mI > threshold)
if (mT > mF)
Control_Type = 0;% Contact
elseif (mF > mT)
Control_Type = 10;% Fără Contact
else
Control_Type = Control_Type_In;% Contact – pastrez valoarea anterioară
end;
else
Control_Type = Control_Type_In;% Contact – păstrez valoarea anterioară
end;
Funcția de calcul a valorii senzorului de forță este prezentată mai jos. Această funcție este necesară deoarece a trebuit să fie simulat senzorul de forță așa cum a fost explicat deja în lucrare.
function F = senzorul_de_forță(X, dX, K, C)
%#eml
%ground.stiffness = 100000; % N/m
%ground.damping = 4000; % N.m/s
stiffness = 100000; % N/m
damping = 4000; % N.m/s
if (X>=0)
F = 0;
F_leg = 0;
else
F = K*abs(X) – C*dX; %dX este invers ca semn
end;
Anexa 3:
Figura A3.1 – Schema de simulare a robotului mobil pășitor biped folosind Matlab Simulink – SimMechanics V2
Această schemă simulează structura mecatronică a robotului mobil pășitor biped precum și interacțiunile dintre elementele acestui robot, pentru a simula cât mai bine condițiile de mediu și mișcare a structurii robotului mobil pășitor. Schema a fost realizată folosind programul de simulare Matlab Simulink împreună cu librăria de funcții și elemente SimMechanics.
Figura A3.2 – Robotul mobil pășitor biped simulat, împreună cu sistemele de coordonate pentru fiecare segment constructiv și articulație în parte
Figura A3.3 – Robotul mobil pășitor biped simulat, împreună cu centrele de masă atașate fiecărui element al robotului
Figurile A3.2 și A3.3 prezintă robotul mobil pășitor biped realizat folosind schema din figura A3.1. Prima figură prezintă robotul în timpul realizării unui pas, adăugând sistemele de coordonate pentru fiecare element constructiv al robotului. Cea de a doua figură prezintă aceeași structură pe care s-au adăugat centrele de masă ale componentelor robotului, folosite în calculele cinematice și dinamice.
Anexa 4:
Funcția de calcul a cinematicii inverse pentru un picior al robotul mobil pășitor biped descris în capitolul 5. Calculele de obținere a acestor relații au fost realizate folosind metode geometrice.
function [qd1, qd2, qd3]= fcn(Ref_Ox,Ref_Oy,Ref_Oz, l1, l2, l3)
%functia de calcul a cinematicii inverse pentru valorile de referinta
Mx = Ref_Ox;
My = Ref_Oy;
Mz = Ref_Oz;
% valorile sunt calculate in radiani si apoi transformate in grade
if My == 0
qd1 = 0;
elseif Mx == 0
qd1 = sign(My) * pi/2; %90;
else
qd1 = atan (Mx / My);
end;
cosq3 = ( (Mz-l1)^2 + Mx^2+My^2 – l2^2 – l3^2 ) / (2*l2*l3);
sinq3 = sqrt(1-cosq3^2);
qd3 = atan2(-sinq3,cosq3);
cosq2 = ( (Mz-l1)*(l2+l3*cos(qd3)) + (Mx)*l3*sin(qd3) ) / ( (Mz-l1)^2 + Mx^2 + My^2 );
sinq2 = sqrt(1-cosq2^2);
qd2 = 2*atan(sinq2/(sqrt(sinq2^2+cosq2^2)+cosq2));
% transformarea in grade este necesara
qd1 = qd1 * 180 / pi;
qd2 = qd2 * 180 / pi;
qd3 = qd3 * 180 / pi;
Anexa 5:
Programul implementat în automatul programabil ce controlează motoarele din articulațiile unui picior.
Figura A5.1 – Programul principal ce conține cele două funcții principale, apelate ciclic
Figura A5.2 – Funcția de calcul a erorii
Figura A5.3 – Funcția de comunicare pe Ethernet cu modulul de automat master ce guvernează și calculează referința carteziană
Figura A5.4 – Funcția de calculare a amplificării fuzzy
Figura A5.5 – Funcția de calculare a funcției F necesară ecuațiilor controlului mișcării la alunecare
Figura A5.6 – Funcția de calculare a matricelor H, C, G specifice dinamicii robotului mobil pășitor considerat
Figura A5.7 – Funcția de calcul a funcției de saturație necesară pentru limitarea efectului de chattering
Figura A5.8 – Funcția de calcul a cuplului pentru fiecare motor al sistemului mecatronic al unui picior al robotului mobil pășitor, rezultat din calculele controlului mișcării la alunecare
Figura A5.9 – Funcția de calcul a parametrului S ce definește suprafața de alunecare necesară controlului mișcării la alunecare
Figura A5.10a – Funcția generală de calcul a cuplului furnizat motoarelor, ce combină toate funcțiile anterioare și le apelează atunci când este nevoie de calculele respective
Figura A5.10b – Funcția generală de calcul a cuplului furnizat motoarelor
Figura A5.10c – Funcția generală de calcul a cuplului furnizat motoarelor
Figura A5.10d – Funcția generală de calcul a cuplului furnizat motoarelor
Anexa 6.
Lista de abrevieri folosită în această lucrare
Bibliografie
P.R. Ouyang, W.J. Zhang, Madan M. Gupta, „An adaptive switching learning control method for trajectory tracking of robot manipulators”, Mechatronics, Volume 16, Issue 1, February 2006, Pages 51-61, ISSN 0957-4158, doi:10.1016/j.mechatronics.2005.08.002.
George P. Moustris, Spyros G. Tzafestas, „Switching fuzzy tracking control for mobile robots under curvature constraints”, Control Engineering Practice, Volume 19, Issue 1, January 2011, Pages 45-53, ISSN 0967-0661, doi:10.1016/j.conengprac.2010.08.008.
G. López-Nicolás, C. Sagüés, J.J. Guerrero, D. Kragic, P. Jensfelt, „Switching visual control based on epipoles for mobile robots”, Robotics and Autonomous Systems, Volume 56, Issue 7, 31 July 2008, Pages 592-603, ISSN 0921-8890, doi:10.1016/j.robot.2007.10.005.
N.R. Gans, S.A. Hutchinson, „An asymptotically stable switched system visual controller for eye in hand robots”, in: IEEE/RSJ International Conference on Intelligent Robots and Systems, Las Vegas, Nevada, October 2003, pp. 735–742.
Leonid B. Freidovich, Hassan K. Khalil, „Logic-based switching for robust control of minimum-phase nonlinear systems”, Systems & Control Letters, Volume 54, Issue 8, August 2005, Pages 713-727, ISSN 0167-6911, doi:10.1016/j.sysconle.2004.11.010.
Niu Jianjun, Fu Yongling, Qi Xiaoye, „Design and Application of Discrete Sliding Mode Control with RBF Network-based Switching Law”, Chinese Journal of Aeronautics, Volume 22, Issue 3, June 2009, Pages 279-284, ISSN 1000-9361, doi:10.1016/S1000-9361(08)60100-4.
F. Smarandache, L. Vladareanu, „Applications of neutrosophic logic to robotics: An introduction”, in Proc. GrC, 2011, pp.607-612.
Florentin Smarandache, „A Unifying Field in Logics: Neutrosophic Field, Multiple-Valued Logic / An International Journal”, Vol. 8, No. 3, 385-438, June 2002.
M.H. Raibert, J.J. Craig, „Hybrid Position/Force Control of Manipulators”, Journal of Dynamic Systems, Measurement, and Control Vol 102/127, 1981.
H. Zhang, R.P. Paul, “Hybrid Control of Robot Manipulators”, International Conference on Robotic and Automation, IEEE Computer Society, St. Louis, Missouri, pag.602-607, 1985.
William D. Fisher, M. Shahid Mujtaba, “Hybrid Position/Force Control: A Correct Formulation”, Hewlett-Packard Company, 1991.
http://datapeak.net/robotics.htm
http://www.androidworld.com/prod06.htm
http://www.plasticpals.com/?p=25340
http://davidbuckley.net/DB/HistoryMakers.htm
http://robotgossip.blogspot.ro/2005_04_01_archive.html
http://www.space.sympatico.ca/canadarm2.html
http://www.forbes.com/2002/02/21/0221tentech.html
http://www.artspace.com/hiroji_kubota/honda_asimo_robots
C. Canuda de Wit, B. Siciliano, G. Bastin, Theory of Robot Control”, Springer, 1996.
L. Sciavicco, B. Siciliano, „Modeling and Control of Robot Manipulator” McGraw-Hill, New York 1996.
C.H. An, C.G. Atkeson, J.M. Hollerbach, „Model-Based Control of a Robot Manipulator”, MIT Press, Cambridge 1988.
R.M. Murray, Z. Xi, S.S. Sastry, „A Mathematica Introduction to Robotic Manipulation”, CRC Press, 1994.
O. Khatib, „A unified approach for motion and force control of robot manipulators: The operational space formulation”, IEEE J. Rob. Aut. 3(1), pp: 43-53, 1987.
J.Y.S Luh, M.W. Walker, R.P.C. Paul, „Resolved acceleration control of mechanica manipulator”, IEEE Trans. Autom. Control. 25(3), pp: 468-474, 1980.
N. Hogan, „Impedance control: an approach to manipulation: part I-III”, ASME J. Dyn. Syst. Meas. Contr. 107, pp: 1-24, 1985.
H. Kazerooni, T.B. Sheridan, P.K. Houpt, „Robust compliant motion for manipulators. Part I: the fundamental concepts of compliant motion”, IEEE J. Robot. Autom. 2, pp:83-92, 1986.
J.K. Salisbury, „Active stiffness control of a manipulator in Cartesian coordinates”, a 19-ea IEEE Conf. Decis. Contr., pp:95-100, 1980.
D.E. Whitney, „Force feedback control of manipulator fine motions”, ASME J. Dyn. Syst. Meas. Contr. 99, pp. 91-97, 1977.
Sakagami, Y., Watanabe, R., Aoyama, C., Matsunaga, S., Higaki, N., & Fujimura, K., „The intelligent ASIMO: System overview and integration”, Intelligent Robots and Systems, IEEE/RSJ International Conference, pp. 2478-2483, 2002.
Chestnutt, J., Lau, M., Cheung, G., Kuffner, J., Hodgins, J., & Kanade, T., „Footstep planning for the Honda ASIMO humanoid”, Robotics and Automation, Proceedings of the 2005 IEEE International Conference, pp. 629-634.
Strom, J., Slavov, G., & Chown, E., „Omnidirectional walking using zmp and preview control for the nao humanoid robot”, RoboCup 2009: robot soccer world cup XIII, pp. 378-389, Springer Berlin Heidelberg 2009.
Gouaillier, D., Hugel, V., Blazevic, P., Kilner, C., Monceaux, J., Lafourcade, P.& Maisonnier, B., „Mechatronic design of NAO humanoid”, Robotics and Automation, 2009, ICRA'09 IEEE International Conference, pp. 769-774.
Chen, Chen-Yuan, and Po-Hsuan Huang, "Review of an autonomous humanoid robot and its mechanical control." Journal of Vibration and Control 18.7, pp: 973-982, 2012.
Diftler, Myron A., et al. "Robonaut 2-the first humanoid robot in space." Robotics and Automation (ICRA), IEEE International Conference, pp. 2178-2183, 2011.
Alexandru Gal, Radu Ioan Munteanu, Octavian Melinte, Luige Vladareanu, „A New Approach of Sliding Motion Robot Control using Bond Graph”, The 8th INTERNATIONAL Symposium On Advanced Topics In Electrical Engineering May 23-25, 2013, Bucharest, Romania.
Alexandru Gal, Luige Vladareanu, Hongnian Yu, „Applications of Neutrosophic Logic Approaches in ”RABOT” Real Time Control”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2013.
Nicolae POP, Luige VLADAREANU, Alexandru GAL, “The extension real time control method for restoring the robot equilibrium position”, Proceedings of the 1st International Conference on Mechanical and Robotics Engineering (MREN '13), WSEAS 2013, pp. 137-142, ISBN: 978-1-61804-185-2, Athens, Greece 2013.
Octavian MELINTE, Luige VLADAREANU, Alexandru GAL, „Performances of a haptic device when compensating for dynamic parameters”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2012.
Alexandru GAL, Luige VLADAREANU, Mihai S. Munteanu, Octavian MELINTE, „PID sliding motion control by using fuzzy adjustment”, SISOM 2012 and Session of the Commission of Acoustics, Bucharest 25-26 May 2012.
Luige Vladareanu, Alexandru Gal, „A Multi-Functionl Approach of the HFPC Walking Robots”, Proceedings of the 15th WSEAS International Conference on Systems (part of the 15th WSEAS CSCC multiconference), Recent Researches in System Science, Corfu Island, Greece, July 14-16, 2011, pag: 339-345, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Alexandru Gal, „Hybrid force-position control for manipulators with 4 degrees of freedom”, Proceedings of the 15th WSEAS International Conference on Systems (part of the 15th WSEAS CSCC multiconference), Recent Researches in System Science, Corfu Island, Greece, July 14-16, 2011, pag: 358-363, ISBN: 978-1-61804-023-7, ISSN: 1792-4235.
Octavian Melinte, Alexandru Gal, „Bond graph modelling for haptic interface robot control”, Proceedings of the European Computing Conference (ECC ’11), Paris, France, April 28-30, 2011, pag: 364-369, ISBN: 978-960-474-297-4.
Octavian Melinte, Luige Vladareanu, Alexandru Gal, „Improvement of Robot Stability for Robots with Variable Dimensions”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Alexandru Gal, Luige Vladareanu, Octavian Melinte, „Modular Walking Robots Control For Circular Movement Around Its Own Axis”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Luige Vladareanu, Gabriela Tont, Ion Ion, Lucian M. Velea, Alexandru Gal, Octavian Melinte, „Fuzzy Dynamic Modeling for Walking Modular Robot Control”, Proceedings of the 9th WSEAS International Conference on Applications of Electrical Engineering (AEE ’10), Penang, Malaysia, March 23-25, 2010, pag:163-170, ISBN: 978-960-474-171-7, ISSN: 1790-2769.
L.M. Velea, L. Vladareanu, Z. Podea, A.L.M. Velea, D. Perpelea, Alexandru Gal, O. Melinte, “Modular automaton system with real time control for creating command instalations and electrical operations dedicated to combined forages production”, Rev. Roum. Sci. Techn. − Méc. Appl., Tome 54, No 3, P. 239–258, Bucarest, 2009.
Luige Vladareanu, Ion Ion, Lucian M. Velea, Daniel Mitroi, Alexandru Gal, „The Real Time Control of Modular Walking Robot Stability”, ISI Proceedings of the 8th International Conference on Applications of Electrical Engineering (AEE ’09), Houston, USA, pag. 179-186, ISSN: 1790-5117, ISBN: 978-960-474-072-7.
R.I. Munteanu, G. Tont, V. Vladareanu, D. Perpelea, Alexandru Gal, Octavian Melinte, „The PLC Real Time Control in Solid Mechanics”, The Annual Symposium of the Institute of Solid Mechanics SISOM 2009 and Session of the Commission of Acoustics.
Lucian M. Velea, Luigi Vladareanu, Zachei Podea, Alida Lia Mariana Velea, Alexandru Gal, Octavian Melinte, „Modular Automation System with Real Time Control for Creating Command Installations and Electrical Operations Dedicated to Combined Forages Production Installations”, the XIXth SISOM, Publishing Mediamira (cotata B – CNCSIS), Editors: Luige Vladareanu, Marcel Migdalovici, Proceedings, accepted to by published in 2009.
Luige Vladareanu, Lucian M. Velea, Zachei Podea, Alexandru Gal, Octavian Melinte, „Real Time Control of the Modular Structures through Distributed and Decentralized Systems”, Proceedings of the XIXth SISOM, Editors: Luige Vladareanu, Marcel Migdalovici, Editura Mediamira (cotata B – CNCSIS), accepted to by published in 2009.
L.M. Velea, L. Vladareanu, R.A. Munteanu, M.S. Munteanu, Z. Podea, A.L.M. Velea, Alexandru Gal, “Automatic S.A.M.D. Monitoring and common equipment systems”, Rev. Roum. Sci. Techn. – Méc. Appl., TOME 53, No 2, P. 201–209, Bucharest, 2008.
Mihai Munteanu, Mihai Olteanu, Luige Vlădăreanu, Radu A. Munteanu, Alexandru Gal, Rozica Moga, „Electronic image processing in biometrics analysis through virtual instrumentation”, 1st WSEAS Int. Conf. On Visualization, Imaging and Simulation (VIS'08), Bucharest, Romania, November 2008.
Lucian Marius Velea, Luigi Vladareanu, Zachei Podea, Alida Lia Mariana Velea, Alexandru Gal, Octavian Melinte, “Modular Installations for Complex Automations”, ISI Proceedings of the 9th WSEAS International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , Published by WSEAS Press in 2008, pag. 297-302, ISBN: 978-960-6766-77-0, ISSN 1790-5117.
Luigi Vladareanu, Ion Ion, Lucian M. Velea, Mihai S. Munteanu, Octavian Melinte, Alexandru Gal, “A New Method for Real Time Control of Actuators in Continuous Flux”, ISI Proceedings of the 9th WSEAS International Conference on Automation & Information: Theory and Advanced Technology(ICAI ’08), Editor: Luigi Vladareanu , Published by WSEAS Press in 2008, pag. 303-308, ISBN: 978-960-6766-77-0, ISSN 1790-5117.
„Metodă și Dispozitiv pentru Controlul Dinamic al Roboților Pășitori”, PATENT: OSIM A/00052/21.01.2010, autori: Luige Vladareanu, Lucian Marius Velea, Radu Adrian Munteanu, Tudor Sireteanu, Mihai Stelian Munteanu, Gabriela Tont, Victor Vladareanu, Cornel Balas, D.G. Tont, Octavian Melinte, Alexandru Gal.
“Metodă și Dispozitiv pentru controlul extins hibrid forță/poziție al sistemelor robotice și mecatronice”, PATENT: OSIM A2012 1077/28.12.2012, autori: Luige Vladareanu, Cai Wen, R.I. Munteanu, Yan Chuyan, Alexandru Gal.
Vladareanu, L., Tont, G., Ion, I., Vladareanu, V., & Mitroi, D. (2010, January). „Modeling and hybrid position-force control of walking modular robots”. In American Conference on Applied Mathematics, pg (pp. 510-518).
Vladareanu, L., Tont, G., Ion, I., Munteanu, M. S., & Mitroi, D. (2010). „Walking robots dynamic control systems on an uneven terrain”. Advances in Electrical and Computer Engineering, ISSN, 1582-7445.
Vladareanu, L. (2006). „Open architecture systems for the compliance robots control”. WSEAS Transactions on Systems, 5(9), 2243-2249.
Ion, I., Vladareanu, L., Simionescu, I., & Vasile, A. (2008). „The movement of modular walking robot MERO in the obstacles' area”. WSEAS Transactions on Systems, 7(7), 843-856.
Vladareanu, L., Ion, I., Velea, L. M., & Mitroi, D. (2009). „The robot hybrid position and force control in multi-microprocessor systems”. WSEAS Transactions on Power Systems, (1), 148-157.
Ion, I., Vladareanu, L. Radu Muntanu jr., Mihai Munteanu, „The Improvement of Structural and Real Time Control Performances for MERO Modular”, Advances in Climbing and Walking Robots, Ed. Ming Xie, S. Dubowsky.
Vladareanu, L., & Peterson, T. (2003). „New concepts for the real time control of robots by open architecture systems”. Machine Building, 55.
Ion, I., Vladareanu, L., Simionescu, I., & Vasile, A. (2008). „The gait analysis for modular walking robot MERO walks on the slope”. nature, 6, 8.
Vladareanu, L., Ion, I., Sandru, O., Lucian, M. V., & Munteanu Mihai, S. (2008). „The actuators control by probabilistic mathematical modelling”. WSEAS Transactions on Systems and Control, Volume3, 547-557.
Ion, I., Marin, A., Curaj, A., & Vladareanu, L. (2008). „Design and Motion Synthesis of Modular Walking Robot Mero”. Journal of Automation Mobile Robotics and Intelligent Systems, 2(4), 25-30.
Sandru, O. I., Vladareanu, L., & Sandru, A. (2008, November). „A new method of approaching the problems of optimal control”. In Proceedings of the 10th WSEAS international conference on Mathematical and computational methods in science and engineering (pp. 390-393). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L., Ion, I., Diaconescu, E., Tont, G., Velea, L. M., & Mitroi, D. (2008, November). „The hybrid position and force control of robots with compliance function”. In Proceedings of the 10th WSEAS international conference on Mathematical and computational methods in science and engineering (pp. 384-389). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L. (2005). „Controlul in timp real cu automate programabile in mecanica solidului”. Studii si cercetari aplicative”, Ed. BREN (p. 207). ISBN 973-648-432-7.
Vladareanu, L., Velea, L. M., Vasile, A., Curaj, A., & Vasile, A. (2008, June). „Modular structures in the open architecture systems”. In Proceedings of the 9th WSEAS International Conference on Acoustics & Music: Theory & Applications (pp. 100-105). World Scientific and Engineering Academy and Society (WSEAS).
Vladareanu, L., & Capitanu, L. (2012). „Hybrid Force-Position Systems With Vibration Control For Improvment Of Hip Implant Stability”. Journal of Biomechanics, 45, S279.
Vladareanu, L., & Velea, L. M. „The Complex Automation Bases through Programmable Locical Controllers PLCs”.
Vladareanu, L., Velea, L. M., Munteanu, R. L., Curaj, A., Cononovici, S., Sireteanu, T., Munteanu, M. S. (2009). „Real time control method and device for robots in virtual projection”, European Patent No. EP 2105263. Munich, Germany: European Patent Office.
Haibin Wang, Florentin Smarandache, Yan-Quin Zhang, Rajshekhar Sunderraman, „Interval Neutrosophic sets and logic: Theory and application in computing.”, HEXIS Neutrosophic Book Series, No.5, 2005.
Florentin Smarandache, “Neutrosophy : neutrosophic probability, set, and logic ; analytic synthesis & synthetic analysis”, Gallup, NM : American Research Press, 1998. – 105 p., ISBN 1-87958-563-4.
F. Smarandache, L. Vladareanu, "Applications of neutrosophic logic to robotics: An introduction", in Proc. GrC, 2011, pp.607-612.
Xinde Li, Xinhan Huang, Jean Dezert, Li Duan and Min Wang, „A Successful Application of DSmT in Sonar Grid Map Building And Comparison With Dst-Based Approach”, International Journal of Innovative Computing, Information and Control ICIC International, Volume 3, Number 3, ISSN 1349-4198, June 2007.
Editori Florentin Smarandache si Jean Dezert, „Advances and Applications of DSmT for Information Fusion”, Editura: American Research Press, Rehoboth, 2004, ISBN: 1-931233-82-9.
Utkin, V. I., „Sliding Modes and their Application in Variable Structure Systems”, MIR Publishers, Moscow (1978).
Zhang, M., Yu, Z., Huan, H. & Zhou, Y., „The Sliding Mode Variable Structure Control Based on Composite Reaching Law of Active Magnetic Bearing”, ICIC Express Letters, vol.2, no.1, pp.59-63, (2008)
Slotin, J. J. E., Li, W., „Applied Nonlinear Control”, Englewood Cliffs, NJ: Prentice-Hall, New York, USA, (1991).
Fabricio Garelli, Luis Gracia, Antonio Sala, Pedro Albertos, „Sliding mode speed auto-regulation technique for robotic tracking”, Robotics and Autonomous Systems, Volume 59, Issues 7-8, July-August 2011, Pages 519-529, ISSN 0921-8890, 10.1016/j.robot.2011.03.007
Zhihong Man & Xinghuo Yu, “Adaptive terminating sliding mode tracking control for rigid robotic manipulators with uncertain dynamics”, JSMA, International Journal, Vol. 40, No.3, Series C, September 1997.
Frank L. Lewis, Darren M. Dawson, Chaouki T. Abdallah, „Robot Manipulator Control: Theory and Practice- Second Edition”, ISBN:0-8247-4072-6, 2004.
Deepak Tolani, Ambarish Goswami, and Norman I. Badler, „Real-Time Inverse Kinematics Techniques for Anthropomorphic Limbs”, Computer and Information Science Department, University of Pennsylvania, Philadelphia, published online August 15, 2000.
J. Duffy, „Analysis of Mechanisms and Robot Manipulators”, Wiley, New York 1980.
Bruno Siciliano, Oussama Khatib (Editors), „Springer Handbook of Robotics”, ISBN: 978-3-540-23957-4, Springer-Verlag Berlin Heidelberg 2008.
H.Y. Lee, C.G. Liang, „A new vector theory for the analysis of spatial mechanisms”, Mechan. Machine Theory 23(3), 209-217 (1988).
R. Manseur, K.L. Doty, „A robot manipulator with 16 real inverse kinematic solutions”, Int. J. Robot. Res. 8(5), 75-79 (1989).
M. Raghvan, B. Roth, „Kinematic analysis of the 6R manipulator of general geometry”, 5th Int. Symp. Robot Res. (1990).
D. Manocha, J. Canny, „Real Time Inverse Kinematics for General 6R Manipulators”, Tech. rep. (University of California, Berkley 1992).
B. Buchberger, „Applications of Gröbner bases in non-linear computational geometry”, In: Trends in Computer Algebra, Lect. Notes Comput. Sci. Vol. 296, ed. By R. Janen (Springer, Berlin 1989) pp 52-80.
P. Kovacs, „Minimum degree solutions for the inverse kinematics problem by application of the Buchberger algorithm”, In: Advances in Robot Kinematics ed. By S. Stifter, J. Lenarcic (Springer, New York 1991), pp 326-334.
L.W. Tsai. A.P. Morgan, „Solving the kinematics of the most general six and five degree of freedom manipulators by continuation methods”, ASME J. Mechan. Transmission Autom. Design 107, 189-195 (1985).
C.W. Wampler, A.P. Morgan, A.J. Sommese, „Numerical continuation methods for solving polynomial systems arising in kinematics, ASME J. Mech. Des. 112, 59-68 (1990).
D. Pieper, „The Kinematics of Manipulators Under Computer Control”, Ph. D Thesis (Standford University, Standord 1968).
R. Manseur, K.L. Doty, „Fast inverse kinematics of 5 revolute axis robot manipulators”, Mechan. Machine Theory 27(5), 587-597 (1992).
S. C. A. Thomopoulos, R.Y.J. Tam, „An iterative solution to the inverse kinematics of robotic manipulators”, Mechan. Machine Theory 26(4), 359-373 (1991).
J.J. Uicker Jr., J. Denavit, R.S. Hartenberg, „An interactive method for the displacement analysis of spatial mechanisms”, J. Appl. Mech. 31, 309-314 (1964).
J. Zhao, N. Badler, „Inverse kinematics positioning using nonlinear programming for highly articulated figures”, Trans. Comput. Graph. 13(4), 313-336 (1994).
D.E. Whitney, „Resolved motion rate control of manipulators and human prostheses”, IEEE Trans. Man. Mach. Syst. 10, 47-63 (1969).
H. Cheng. K. Gupta, „A study of robot inverse kinematics base upon the solution of differential equations”, J. Robot. Syst. 8(2), 115-175 (1991).
L. Sciavicco, B. Siciliano, „Modeling and control of Robot Manipulators”, Springer, London 2000.
R.S. Rao, A. Asaithambi, S.K. Agrawal, „Inverse kinematic solution of robot manipulators using interval analysis”, ASME J. Mech. De. 120(1), 147-150 (1998).
D.E. Whitney, „The mathematics of coordinated control of prosthetic arms and manipulators”, J. Dynamics Sys. Meas. Contr. 122, 303-309 (1972).
A. Balestrino, G. De Maria, L. Scriavicco, „Robust control of robotic manipulators”, in Proceedings of the 9th IFAC World Congress, Vol 5, 1984, pp 2435-2440.
W.A. Wolovich, H. Elliot, „A computational technique for inverse kinematics”, in Proc. 23rd IEEE Conference of Decision and Control, 1984, pp 1359-1363.
Samuel R. Buss, „Introduction to Inverse Kinematics with Jacobian Transpose, Pseudoinverse and Damped Least Squares methods”, Department of Mathematics University of California, San Diego, April 17, 2004.
Roy Featherstone, Davin Orin, „Robot Dynamics: Equations and Algorithms”, IEEE Int. Conf. Robotics & Automation, San Francisco, April 24-28, pp. 826-834, 2000.
R. Featherstone, „The Calculation of Robot Dynamics using Articulated-Body Inertias”, Int. J. Robotics Research, vol. 2, no. 1, pp. 13-30, 1983.
J. Y. S. Luh, M. W. Walker and R. P. C. Paul, „On-Line Computational Scheme for Mechanical Manipulators”, Trans. ASME, J. Dynamic Systems, Measurement & Control, vol. 102, no. 2, pp. 69-76, 1980.
M. W.Walker and D. E. Orin, „Eficient Dynamic Computer Simulation of Robotic Mechanisms”, Trans. ASME, J. Dynamic Systems, Measurement & Control, vol. 104, pp. 205-211, 1982.
R. Featherstone, „Robot Dynamics Algorithms”, Boston/Dordrecht/Lancaster: Kluwer Academic Publishers, 1987.
G. Rodriguez, A. Jain and K. Kreutz-Delgado, „A Spatial Operator Algebra for Manipulator Modelling and Control”, Int. J. Robotics Research, vol. 10, no. 4, pp. 371-381, 1991.
M. Brady, J. M. Hollerbach, T. L. Johnson, T. Lozano-Perez, and M. T. Mason, „Robot Motion: Planning and Control”, Cambridge, MA: The MIT Press, 1982.
Mark W. Spong, Seth Hutchinson, M. Vidyasagar, „Robot Dynamics and Control”, January 28, 2004.
Gal I. Alexandru, Referatul 3 „Studii și Cercetări Experimentale Privind Controlul Hibrid Forță-Poziție al Roboților Mobili” din programa de studii doctorale, Octombrie 2011.
Gal I. Alexandru, Referatul 2 „Strategii de Control Hibrid Forță-Poziție a Roboților Mobili Utilizând Modelarea Dinamică” din programa de studii doctorale, Aprilie 2011.
Cloutier, B., Pai, D. K., și Ascher „The formulation stiffness of forward dynamics algorithms and implications for robot simulation”, în: Proceedings of the IEEE Conference on Robotics and Automation, 1995.
Uri M. Ascher, Dinesh K. Paiy, Benoit P. Cloutierz, „Forward Dynamics, Elimination Methods, and Formulation Stiffness in Robot Simulation”, Department of Computer Science University of British Columbia, Vancouver, Canada, 1996.
J. J. Craig and M. H. Raibert, "A Systematic Method of Hybrid Position/Force Control of a Manipulator", in Computer Software and Applications Conference, IEEE Computer Society, November 1979, pp 446-451.
H. Zhang and R. P. Paul, "Hybrid Control of Robot Manipulators," in International Conf. on Rob and Auto, IEEE Computer Society, March 1985. St. Louis, Missouri, pp.602-607.
C. H. An and J. M. Hollerbach, "Kinematic Stability Issues in Force Control of Manipulators" in Int Conf on Rob and Aut, IEEE Rob and Aut Society, April 1987, pp. 897-903.
H. Zhang, "Kinematic Stability of Robot Manipulators under Force Control," in International Conf on Rob and Aut, IEEE Rob and Aut Society, ISBN: 0-8186-1938-4, May 1989, pg. 80-85.
William D. Fisher, Dr. M. Shahid Mujtaba, „Hybrid Position/Force Control: A Correct Formulation”, Meas. & Manuf. Systems Laboratory HPL-91-140, October, 1991.
Vladareanu L, Vasile A, “Real Time Control Open Systems of 5 DOF Nano-Manipulators”, Conference on Advanced Topics in Optoelectronics, Microelectronics, and Nanotechnologies, 2010, Constanta, WOS: 000287803900057, SN 0277-786X.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudo-inverse, and damped least squares methods”, Typeset manuscript, April 2004.
S. R. BUSS AND J. KIM, “Selectively Damped Least Squares for Inverse Kinematics”, October 25, 2004.
William D. Fisher, M. Shahid Mujtaba, „Hybrid Position/Force Control: A Correct Formulation”, Laboratorul de masuratori si producția Hewlett Packard, Octombrie 1991.
Jonas Fisler, C. David Remy, Roland Siegwart, „Mechanical design of a robot leg for dynamic locomotion”, Swis Federal Institute of Technology Zurich, 2008.
http://www.robotshop.com/lynxmotion-aluminium-leg-pair-thleg3-blk.html
Kevin C. Galloway, Galen Clark Haynes, B. Deniz Ilhan, Aaron M. Johnson, Ryan Knopf, „X-RHex: A Highly Mobile Hexapedal Robot for Sensorimotor Tasks”, Universitatea din Pensylvenia, Raport tehnic.
http://www.mhobbies.com/arduino-hexapod-robot-hardware-parts-with-servos-no-electronics.html
Mohamed El Hossine Daachi, Brahim Achili, Boubaker Daachi, Yacine Amirat, Djamel Chikouche, „Hybrid Moment/Position Control of a Parallel Robot”, International Journal of Control, Automation, and Systems, Springer (2012, DOI 10.1007/s12555-012-0310-z, ISSN:1598-6446 eISSN:2005-4092.
H. Wang and Y. Xie, “Adaptive Jacobian position/force tracking control of free-flying manipulators,” Robotics and Autonomous Systems, vol. 57, no. 2, pp. 173-181, 2009.
M. Farooq and D. B. Wang, “Hybrid force/position control scheme for flexible joint robot with friction between and the end-effector and the environment,” International Journal of Engineering Science, vol. 46, no. 12, pp. 1266-1278, Dec. 2008
S. Kilicaslan, M. K. Özgören, and S. K. Ider, “Hybrid force and motion control of robots with flexible links,” Mechanism and Machine Theory, vol. 45, no. 1, pp. 91-105, 2010.
A. Visioli, G. Ziliani, G. Legnani, and S. Özgören. “Iterative-learning hybrid force/velocity control or contour tracking,” IEEE Trans. on Robotics, vol. 26, no. 2, pp. 388-393, 2010.
N. Kumar, V. Panwar, N. Sukavanam, S. P. Sharma, and J. H. Borm, “Neural network based hybrid force/position control for robot manipulators,” International Journal of Precision Engineering and Manufacturing, vol. 12, no. 3, pp. 419-426, 2011.
Javier Testart, Javier Ruiz del Solar, Rodrigo Schulz, Pablo Guerrero, Rodrigo Palma-Amestoy, „A Real-Time Hybrid Architecture for Biped Humanoids with Active Vision Mechanisms”, Journal of Intell Robot Syst, pp:233–255, DOI 10.1007/s10846-010-9515-7, Springer 2011, ISSN: 0921-0296.
Cetin Elmas, Oguz Ustun, „A hybrid controller for the speed control of a permanent magnet synchronous motor drive”, Control Engineering Practice 16, pp.260–270 ISSN: 0967-0661, Elsevier 2008, doi:10.1016/j.conengprac.2007.04.016.
Asgeir J. Sorensen, „A survey of dynamic positioning control systems”, Annual Reviews in Control 35, 123–136, doi:10.1016/j.arcontrol.2011.03.008, Elsevier 2011.
Bora Erginer și Erdinc Altug, „Design and Implementation of a Hybrid Fuzzy Logic Controller for a Quadrotor VTOL Vehicle”, International Journal of Control, Automation, and Systems (2012) 10(1):61-70, DOI 10.1007/s12555-012-0107-0, ICRSO, KIEE, Springer 2012.
Naveen Kumar, Vikas Panwar, Nagarajan Sukavanam, Shri Prakash Sharma, Jin-Hwan Borm, „Neural Network Based Hybrid Force/Position Control for Robot Manipulators”, International Journal Of Precision Engineering And Manufacturing Vol. 12, No. 3, pp. 419-426, DOI: 10.1007/s12541-011-0054-3, Springer 2011.
Nael H. El-Farra, Prashant Mhaskar, Panagiotis D. Christofides, „Uniting bounded control and MPC for stabilization of constrained linear systems”, Automatica 40, pp. 101 – 110, Elsevier 2004.
Çetin Saban, Akkaya AliVolkan, „Simulation and hybrid fuzzy-PID control for positioning of a hydraulic system”, Nonlinear Dynamics 61, pp:465–476, DOI: 10.1007/s11071-010-9662-1, Springer 2010.
Juan Chen, Yawei Peng, Weisha Han, Min Guo, „Adaptive fuzzy sliding mode control in PH neutralization process”, Procedia Engineering, Volume 15, pp 954-958, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.08.176, Elsevier 2011.
Shaojiang Wang, Li Hou, Lu Dong, Huajun Xiao, „Adaptive Fuzzy Sliding Mode Control of Uncertain Nonlinear SISO Systems”, Procedia Engineering, Volume 24, pp 33-37, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.11.2597, Elsevier 2011.
Zhigang Li, Hongjun Duan, Acceleration estimation method and sliding mode control design for car-following distance control, Procedia Engineering, Volume 15, pp 1176-1180, ISSN 1877-7058, http://dx.doi.org/10.1016/j.proeng.2011.08.217, Elsevier 2011.
Farzin Piltan, N. Sulaiman, Samaneh Roosta, M.H. Marhaban, R. Ramli, „Design a New Sliding Mode Adaptive Hybrid Fuzzy Controller”, Journal of Advanced Science and Engineering Research, pp: 115-123, 2011.
Xinghuo Yu, „Sliding-Mode Control With Soft Computing: A Survey”, IEEE Transactions on Industrial Electronics, VOL. 56, NO. 9, DOI: 10.1109/TIE.2009.2027531, 2009.
B. M. Wilamowski, N. J. Cotton, O. Kaynak, G. Dundar, „Computing gradient vector and Jacobian matrix in arbitrarily connected neural networks”, IEEE Trans. Ind. Electron., vol. 55, no. 10, pp. 3784–3790, 2008.
V. Nekoukar, A. Erfanian, „Adaptive fuzzy terminal sliding mode control for a class of MIMO uncertain nonlinear systems”, Fuzzy Sets and Systems 179, pp: 34–49, doi:10.1016/j.fss.2011.05.009, Elsevier 2011.
Swandito Susanto, Sunita Chauhan, „A Hybrid Control Approach for Non-invasive Medical Robotic Systems”, Journal of Intelligent & Robotic Systems, pp: 83-110, ISSN: 0921-0296, DOI: 10.1007/s10846-010-9407-x, Springer 2010.
Zahari Taha, Sarkawt Rostam, „A hybrid fuzzy AHP-PROMETHEE decision support system for machine tool selection in flexible manufacturing cell”, Journal of Intelligent Manufacturing, ISSN: 0956-5515, DOI: 10.1007s10845-011-0560-2, Springer 2012.
Heng Wang, He-Hua Ju, Yu-Long Wang, „H∞ Switching Filter Design for LPV Systems in Finite Frequency Domain”, International Journal of Control, Automation and Systems, pp: 503-510, ISSN: 1598-6446, Springer 2013.
Editor: Seyed Ehsan Shafiei, „Advanced Strategies for Robot Manipulators”, ISBN 978-953-307-099-5, Croația, 2010.
Florentin Smarandache, M. Khoshnevisan, „Fuzzy Logic, Neutrosophic Logic, and Applications”, BISC FLINT-CIBI International Joint Workshop on Soft Computing for Internet and Bioinformatics, Berkeley, California, USA, 2003.
Wen, Shuhuan, et al. "Elman fuzzy adaptive control for obstacle avoidance of mobile robots using hybrid force/position incorporation." Systems, Man, and Cybernetics, Part C: Applications and Reviews, IEEE Transactions on 42.4 (2012): 603-608.
Vladareanu, Luige, et al. "Modeling and hybrid position-force control of walking modular robots." American Conference on Applied Mathematics, pg. 2010.
Bellakehal, Saliha, et al. "Force/position control of parallel robots using exteroceptive pose measurements." Meccanica 46.1 (2011): 195-205.
Bellakehal, Saliha, et al. "Force/position control of parallel robots using exteroceptive pose measurements." Meccanica 46.1 (2011): 195-205.
Zheng, Chi-Han. "A Study of Hybrid Position/Impedance Control Applied to Peg-In-Hole Task with Robot Arm." (2013).
Rakotondrabe, Micky, and Ioan Alexandru Ivan. "Development and force/position control of a new hybrid thermo-piezoelectric microgripper dedicated to micromanipulation tasks." Automation Science and Engineering, IEEE Transactions on 8.4 (2011): 824-834.
Marconi, Lorenzo, and Roberto Naldi. "Control of aerial robots: Hybrid force and position feedback for a ducted fan." Control Systems, IEEE 32.4 (2012): 43-65.
Rabenorosoa, Kanty, Cédric Clévy, and Philippe Lutz. "Active force control for robotic micro-assembly: Application to guiding tasks." Robotics and Automation (ICRA), 2010 IEEE International Conference on. IEEE, 2010.
Visioli, Antonio, Giacomo Ziliani, and Giovanni Legnani. "Iterative-learning hybrid force/velocity control for contour tracking." Robotics, IEEE Transactions on 26.2 (2010): 388-393.
Liu, Yong, et al. "Development of a hybrid position/force controlled hydraulic parallel robot for impact treatment." Service Robotics and Mechatronics. Springer London, 2010. 61-67.
Mehdi, Haifa, and Olfa Boubaker. "Rehabilitation of a human arm supported by a robotic manipulator: A position/force cooperative control." Journal of Computer Science 6.8 (2010): 912.
Kilicaslan, Sinan, M. Kemal Özgören, and S. Kemal Ider. "Hybrid force and motion control of robots with flexible links." Mechanism and Machine Theory 45.1 (2010): 91-105.
Buschmann, Thomas, Sebastian Lohmeier, and Heinz Ulbrich. "Biped walking control based on hybrid position/force control." Intelligent Robots and Systems, 2009. IROS 2009. IEEE/RSJ International Conference on. IEEE, 2009.
Fisher W.D., Mujtaba M.S., „Hybrid Position/Force Control: A Correct Formulation”, The International Journal of Robotics Research, Vol. 11, No. 4, August 1992, pp. 299-311.
An, C.H., Hollerbach, J.M., „The Role of Dynamic Models in Cartesian Force Control of Manipulators”, The International Journal of Robotics Research,Vol.8,No.4, 1989,pg. 51-71.
Luige Vladăreanu, Nicolae Pop, Alexandru Gal, Micong Deng, „The 3D elastic quasi-static contact applied to robots control”, International Conference on Advanced Mechatronic Systems, Henan University of Science and Technology, Luoyang, China, 2013.
Springer Handbook of Robotics; editors: Bruno Siciliano, Oussama Khatib; ISBN: 978-3-540-23957-4.
Luige Vladareanu, Ion Ion, Lucian M. Velea, Daniel Mitroi, Alexandru Gal, „The Real Time Control of Modular Walking Robot Stability”, Recent Advances in Electrical Engineering, A Series of Reference Books and Textbooks, Published by WSEAS Press, Proceedings of the 8th International Conference on Applications of Electrical Engineering (AEE ’09), Houston, USA,pg.179-186, ISSN: 1790-5117 , ISBN: 978-960-474-072-7, ISI Proceedings.
Mark W Spong, M Vidyasagar, „Robot Dynamics And Control” EAN: 9788126517800.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudoinverse, and damped least squares methods”, Typeset manuscript, available from http://math.ucsd.edu/~sbuss/ResearchWeb, April 2004.
S. R. BUSS AND J. KIM, Selectively Damped Least Squares for Inverse Kinematics, October 25, 2004.
Alexandru Gal, Luige Vladareanu, Octavian Melinte, „Modular Walking Robots Control For Circular Movement Around Its Own Axis”, Proceedings of the XXIst SISOM, Bucharest 27-28 May 2010, ISSN 2068-0481.
Seyed Ehsan Shafiei, „Sliding Mode Control of Robot Manipulators via Intelligent Approaches”, Advanced Strategies for Robot Manipulators, ISBN 978-953-307-099-5, pp. 428, Intech 2010.
Vladareanu L., Capitanu L., “Hybrid force-position systems with vibration control for improvment of hip implant stability”, Journal of Biomechanics, vol. 45, S279, Elsevier, 2012.
V. Damic, J. Montgomery, „Mechatronics by Bond Graphs: An Object-Oriented Approach to Modelling”, Springer-Verlag, Berlin-Heidelberg, pp 71-97, 2003.
Thoma, „Introduction to Bond Graphs and Their Applications”, Pergamon Press, New York 1975.
M.J.L. Tiernego and J.J. van Dixhoorn, “Bond graph modelling and simulation techniques applied to a three axes driven pendulum”, Int. J. Modelling Simulation, Vol. 1, No. 1, pp. 62-65, 1981.
DC Kamopp and RC Rosenberg, „Analysis and Simulation of Multipart Systems”, MIT Press, Cambridge, MA, 1968.
DC Kamopp and RC Rosenberg, „System Dynamics”. New York: Wiley, 1975.
RC Rosenberg and DC Kamopp, „Introduction to Physical System Dynamics”, McGraw-Hill Book Co., Inc., New York, 1983.
D. Kamopp, D. Margolis, R. Rosenberg, „System Dynamics: A Unified Approach”, John Wiley & Son Inc., New York 1990.
JASON CLARK, „Inverse Kinematics”, Powerpoint presentation, Essential Math for Games.
S. R. BUSS, „Introduction to inverse kinematics with Jacobian transpose, pseudoinverse, and damped least squares methods”, Typeset manuscript, available from http://math.ucsd.edu/~sbuss/ResearchWeb, April 2004.
S. R. BUSS AND J. KIM, „Selectively Damped Least Squares for Inverse Kinematics”, October 25, 2004.
Anexe
Anexa 1:
În figurile A1.1, A1.2 și A1.3 este prezentată schema Matlab Simulink pentru Controlul Mișcării la Alunecare, prezentat în capitolul 5.2.
Figura A1.1 – Schema Matlab Simulink partea 1.
Figura A1.1 prezintă următoarele componente ale schemei de simulare: blocul de constante, cel de calculare a matricei H(matricea inertială), a matricei C(matricea Coriolis), blocurile de generare a matricelor lambda precum și blocul de calculare a forței f. Această schemă este o parte importantă a controlului mișcării la alunecare, deoarece calculează componentele ecuației dinamicii robotului controlat.
Figura A1.2 – Schema Matlab Simulink partea 2
Figura A1.2 prezintă următoarele componente ale schemei de simulare: blocul de calculare a cinematicii inverse, cel de calcul a erorii, blocul de calculare a matricei efectului gravitațional G precum și cel ce conține funcția de calculare a valorii lui s. Aceste componente ale simulării în afară de cel de calcul a matricei efectului gravitațional ce face parte elementele de dinamică a robotului, sunt cele ce definesc suprafața de alunecare specifică controlului mișcării la alunecare.
Figura A1.3 – Schema Matlab Simulink partea 3
Figura A1.3 prezintă următoarele componente ale schemei de simulare: blocul de calcul a valorii lui s, cel de calculare a funcției de saturare, a funcției Fuzzy și a matricelor aferente, precum și blocul ce include funcția de calculare a cuplurilor pentru fiecare din cele trei motoare, cupluri ce sunt filtrate de câte un bloc de limitare a semnalelor. Aceste componente sunt specifice controlului mișcării la alunecare și calculează referința pentru fiecare motor al articulațiilor robotului mobil pășitor. Această referință este furnizată ca și cuplu de urmărire, cuplu ce este filtrat pentru a nu depăși valorile maxime admise de fiecare motor în parte.
Anexa 2:
Această anexă prezintă algoritmii Matlab de calcul pentru logica neutrosophică folosiți în simulări.
Funcția de calcul a datelor observatorului de forță este prezentată mai jos. Aceasta preia datele de intrare alcătuite din valorile senzorului de forță, le trece printr-o funcție de neutrosophicare și apoi calculează procentajele de Adevăr, Incertitudine și Falsitate în concordanță cu pragurile selectate anterior.
function [mT, mI, mF] = Force_Observer(Force)
% Forța este exprimată în Newtoni
% mT (masa-probabilitatea de adevăr),
% mi (masa-probabilitatea de incertitudine),
% mF (masa-probabilitatea de falsitate) sunt între 0 și 1
% și reprezintă procentul de adevăr pentru a avea un control dinamic
% calc mT -> mT = 1 cand Forța este mai mare
mT_min = 35; %in N
mT_max = 50; %in N
if (Force >= mT_max) % >= 50 N
mT = 1;
elseif (Force >= mT_min) % >= 35 N
mT = (Force – mT_min)/(mT_max – mT_min);
else % < 35 N
mT = 0;
end;
% calc mI
mI_min = 10; %in N
mI_med_min = 25; %in N
mI_med_max = 35; %in N
mI_max = 50; %in N
if (Force <= mI_min) % <= 10 N
mI = 0;
elseif (Force <= mI_med_min) % <= 25 N
mI = (Force – mI_min)/(mI_med_min – mI_min);
elseif (Force <= mI_med_max) % <= 35 N
mI = 1;
elseif (Force <= mI_max ) % <= 50 N
mI = 1 – (Force – mI_med_max)/(mI_max – mI_med_max);
else % > 50 N
mI = 0;
end;
% calc mF
mF_min = 10; %in N
mF_max = 25; %in N
if (Force <= mF_min) % <= 10 N
mF = 1;
elseif (Force <= mF_max) % <= 25 N
mF = 1 – (Force – mF_min)/(mF_max – mF_min);
else % > 25 N
mF = 0;
end;
Funcția de calcul a datelor observatorului de proximitate este prezentată mai jos. Aceasta preia datele de intrare alcătuite din valorile senzorului de proximitate, le trece printr-o funcție de neutrosophicare și apoi calculează procentajele de Adevăr, Incertitudine și Falsitate în concordanță cu pragurile selectate anterior.
function [mT, mI, mF] = Proximity_Observer(Proximity)
% Proximitatea este exprimată în metrii
% mT (masa-probabilitatea de adevăr),
% mi (masa-probabilitatea de incertitudine),
% mF (masa-probabilitatea de falsitate) sunt între 0 si 1
% și reprezintă procentul de adevăr pentru a avea un control dinamic
% calc mT -> mT = 1 cand Distanța de Proximitate este foarte mică
mT_min = 1; %in cm
mT_max = 1.75; %in cm
if (Proximity <= mT_min / 100) % <= 0.01 m = 1 cm
mT = 1;
elseif (Proximity <= mT_max / 100 ) % <= 0.0175 m = 1.75 cm
mT = 1 – (Proximity*100 – mT_min)/(mT_max – mT_min);
else % > 0.0175 m = 1.75cm
mT = 0;
end;
% calc mI
mI_min = 1; %in cm
mI_med_min = 1.75; %in cm
mI_med_max = 2.25; %in cm
mI_max = 3; %in cm
if (Proximity <= mI_min / 100) % <= 0.01 m = 1 cm
mI = 0;
elseif (Proximity <= mI_med_min / 100 ) % <= 0.0175 m = 1.75 cm
mI = (Proximity*100 – mI_min)/(mI_med_min – mI_min);
elseif (Proximity <= mI_med_max / 100 ) % <= 0.0225 m = 2.25 cm
mI = 1;
elseif (Proximity <= mI_max / 100 ) % <= 0.03 m = 3 cm
mI = 1 – (Proximity*100 – mI_med_max)/(mI_max – mI_med_max);
else % > 0.03 m = 3 cm
mI = 0;
end;
% calc mF
mF_min = 2.25; %in cm
mF_max = 3; %in cm
if (Proximity >= mF_max / 100) % >= 0.03 m = 3 cm
mF = 1;
elseif (Proximity >= mF_min / 100 ) % >= 0.0225 m = 2.25 cm
mF = (Proximity*100 – mF_min)/(mF_max – mF_min);
else % < 0.0225 m = 2.25cm
mF = 0;
end;
Funcția de calcul a probabilităților furnizate de logica neutrosophică este prezentată mai jos, pentru care datele de intrare sunt valorile furnizate de funcțiile de neutrosophicare ale senzorilor de forță și proxmitate. Această funcție calculează valorile teoriei clasice DSm ale probabilităților ca un eveniment sau stare să fie Adevărat, Incerct, Fals sau există o contradicție între datele de intrare.
function [mT, mI, mF, mC] = Neutrosophic_Mass_Comp(mPT, mPI, mPF, mFT, mFI, mFF)
% mT = Contact cu Solul/Control Dinamic
% mF = Picior în aer/Control Cinematic
% mI = Incertitudine
% mC = Contradicție
% le schimb numele pt ușurința urmăririi în calcule
m1T = mPT;
m1I = mPI;
m1F = mPF;
m2T = mFT;
m2I = mFI;
m2F = mFF;
mT = m1T * m2I + m1I * m2T + m1T * m2T;
mF = m1F * m2I + m1I * m2F + m1F * m2F;
mI = m1I * m2I;
mC = m1T * m2F + m1F * m2T;
sum = mT + mF + mI + mC;
Funcția de calcul a datelor neutrosophicate:
function [mT, mI, mF, mC] = Neutrosophicare(Force,Proximity)
[mFT,mFI,mFF] = Force_Observer(Force);
[mPT,mPI,mPF] = Proximity_Observer(Proximity);
[mT, mI, mF, mC] = Neutrosophic_Mass_Computation(mPT, mPI, mPF, mFT, mFI, mFF);
Funcția de calcul a datelor fuzuficate:
function [mT, mI, mF] = Fuzificare(Force,Proximity)
%#codegen
[mFT,mFI,mFF] = Force_Observer(Force);
[mPT,mPI,mPF] = Proximity_Observer(Proximity);
mT = (mFT+mPT)/2;
mI = (mFI+mPI)/2;
mF = (mFF+mPF)/2;
Funcția de calcul a deciziei neutrosophice este prezentată mai jos, în care folosind datele calculate cu ajutorul funcției teoriei clasice DSm se decide starea în care se află robotul și deci și tipul de control cetrebuie să controleze robotul.
function Control_Type = Luarea_Deciziei_Neutrosophice(mT, mI, mF, mC, Control_Type_In)
%#codegen
% mT = valoarea de probabilitate pentru Contactul cu Solul
% mF = valoarea de probabilitate pentru Poziția fără contact
% mI = valoarea de Incertitudine
% mC = valoarea de Contradicție
% mC -> daca avem o contradicție, mC = 1, atunci vom considera că piciorul nu este în contact cu solul
% daca mC < 1 atunci putem sa ne uitam la mT, mF si mI, și luam maximul.
% Daca mT este maxim, atunci avem un contact cu solul, altfel nu avem un contact, pentru că
% vom considera că pentru mI = max(mT,mF,mI) nu vom avea un contact cu solul.
% Control_Type = 10 pentru cazul când nu avem un contact cu solul
% Control_Type = 0 pentru cazul în care avem un contact cu solul
if (mC==1)
Control_Type = Control_Type_In;% păstrez valoarea anterioară
else
if (mT>=mF && mT>=mI)
Control_Type = 0;%Contact
elseif (mF>=mI)
Control_Type = 10;%Fără Contact
else
Control_Type = Control_Type_In;% păstrez valoarea anterioară
end;
end;
Funcția de calcul a deciziei fuzzy este prezentată mai jos ce este mult mai simplu de calculat față de decizia neutrosophică:
function Control_Type = fcn(mT, mI, mF, Control_Type_In)
%#codegen
% mT = valoarea de probabilitate pentru Contactul cu Solul
% mF = valoarea de probabilitate pentru Poziția fără contact
% mI = valoarea de Incertitudine
% mC = valoarea de Contradicție
% pentru un control fuzzy, avem:
% T > 0.5 un Contactul cu Solul
% F > 0.5 Poziția fără contact
% I > 0,5 -> T > F Contactul cu Solul
% F > T Poziția fără contact
% else: default: păstrăm valoarea anterioară
% Control_Type = 10 pt Poziția fără contact
% Control_Type = 0 pt Contactul cu Solul
% threshold
threshold = 0.5; %0.45
if (mT > threshold)
Control_Type = 0;%Contact
elseif (mF > threshold)
Control_Type = 10;%Fără Contact
elseif (mI > threshold)
if (mT > mF)
Control_Type = 0;% Contact
elseif (mF > mT)
Control_Type = 10;% Fără Contact
else
Control_Type = Control_Type_In;% Contact – pastrez valoarea anterioară
end;
else
Control_Type = Control_Type_In;% Contact – păstrez valoarea anterioară
end;
Funcția de calcul a valorii senzorului de forță este prezentată mai jos. Această funcție este necesară deoarece a trebuit să fie simulat senzorul de forță așa cum a fost explicat deja în lucrare.
function F = senzorul_de_forță(X, dX, K, C)
%#eml
%ground.stiffness = 100000; % N/m
%ground.damping = 4000; % N.m/s
stiffness = 100000; % N/m
damping = 4000; % N.m/s
if (X>=0)
F = 0;
F_leg = 0;
else
F = K*abs(X) – C*dX; %dX este invers ca semn
end;
Anexa 3:
Figura A3.1 – Schema de simulare a robotului mobil pășitor biped folosind Matlab Simulink – SimMechanics V2
Această schemă simulează structura mecatronică a robotului mobil pășitor biped precum și interacțiunile dintre elementele acestui robot, pentru a simula cât mai bine condițiile de mediu și mișcare a structurii robotului mobil pășitor. Schema a fost realizată folosind programul de simulare Matlab Simulink împreună cu librăria de funcții și elemente SimMechanics.
Figura A3.2 – Robotul mobil pășitor biped simulat, împreună cu sistemele de coordonate pentru fiecare segment constructiv și articulație în parte
Figura A3.3 – Robotul mobil pășitor biped simulat, împreună cu centrele de masă atașate fiecărui element al robotului
Figurile A3.2 și A3.3 prezintă robotul mobil pășitor biped realizat folosind schema din figura A3.1. Prima figură prezintă robotul în timpul realizării unui pas, adăugând sistemele de coordonate pentru fiecare element constructiv al robotului. Cea de a doua figură prezintă aceeași structură pe care s-au adăugat centrele de masă ale componentelor robotului, folosite în calculele cinematice și dinamice.
Anexa 4:
Funcția de calcul a cinematicii inverse pentru un picior al robotul mobil pășitor biped descris în capitolul 5. Calculele de obținere a acestor relații au fost realizate folosind metode geometrice.
function [qd1, qd2, qd3]= fcn(Ref_Ox,Ref_Oy,Ref_Oz, l1, l2, l3)
%functia de calcul a cinematicii inverse pentru valorile de referinta
Mx = Ref_Ox;
My = Ref_Oy;
Mz = Ref_Oz;
% valorile sunt calculate in radiani si apoi transformate in grade
if My == 0
qd1 = 0;
elseif Mx == 0
qd1 = sign(My) * pi/2; %90;
else
qd1 = atan (Mx / My);
end;
cosq3 = ( (Mz-l1)^2 + Mx^2+My^2 – l2^2 – l3^2 ) / (2*l2*l3);
sinq3 = sqrt(1-cosq3^2);
qd3 = atan2(-sinq3,cosq3);
cosq2 = ( (Mz-l1)*(l2+l3*cos(qd3)) + (Mx)*l3*sin(qd3) ) / ( (Mz-l1)^2 + Mx^2 + My^2 );
sinq2 = sqrt(1-cosq2^2);
qd2 = 2*atan(sinq2/(sqrt(sinq2^2+cosq2^2)+cosq2));
% transformarea in grade este necesara
qd1 = qd1 * 180 / pi;
qd2 = qd2 * 180 / pi;
qd3 = qd3 * 180 / pi;
Anexa 5:
Programul implementat în automatul programabil ce controlează motoarele din articulațiile unui picior.
Figura A5.1 – Programul principal ce conține cele două funcții principale, apelate ciclic
Figura A5.2 – Funcția de calcul a erorii
Figura A5.3 – Funcția de comunicare pe Ethernet cu modulul de automat master ce guvernează și calculează referința carteziană
Figura A5.4 – Funcția de calculare a amplificării fuzzy
Figura A5.5 – Funcția de calculare a funcției F necesară ecuațiilor controlului mișcării la alunecare
Figura A5.6 – Funcția de calculare a matricelor H, C, G specifice dinamicii robotului mobil pășitor considerat
Figura A5.7 – Funcția de calcul a funcției de saturație necesară pentru limitarea efectului de chattering
Figura A5.8 – Funcția de calcul a cuplului pentru fiecare motor al sistemului mecatronic al unui picior al robotului mobil pășitor, rezultat din calculele controlului mișcării la alunecare
Figura A5.9 – Funcția de calcul a parametrului S ce definește suprafața de alunecare necesară controlului mișcării la alunecare
Figura A5.10a – Funcția generală de calcul a cuplului furnizat motoarelor, ce combină toate funcțiile anterioare și le apelează atunci când este nevoie de calculele respective
Figura A5.10b – Funcția generală de calcul a cuplului furnizat motoarelor
Figura A5.10c – Funcția generală de calcul a cuplului furnizat motoarelor
Figura A5.10d – Funcția generală de calcul a cuplului furnizat motoarelor
Anexa 6.
Lista de abrevieri folosită în această lucrare
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Contributii la Elaborarea Strategiilor de Control Hibrid Forta Pozitie Pentru Conducerea Robotilor Mobili (ID: 112783)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
