6

CONDUCEREA ROBOŢILOR

PREFAŢĂ
La Universitatea „Politehnica” din Timişoara realizările din domeniul roboticii au o tradiţie ale cărei începuturi pot fi dovedite din anul 1978. În luna octombrie a anului 1979 a luat fiinţă Colectivul Multidisciplinar de Robotică, din iniţiativa Prof.dr.ing. Dr.H.C. Francisc Kovács şi Prof.dr.ing. Tiberiu Mureşan decani ai facultăţilor de Mecanică şi de Electrotehnică, la acea vreme. Unul dintre rezultatele remarcabile ale activităţii acestui Colectiv a fost punerea în funcţiune a primului robot industrial de concepţie şi de fabricaţie românească: REMT – 1, la 8 februarie 1982. Robotul a deservit prima celulă de fabricaţie flexibilă funcţională din România, destinată prelucrării prin aşchiere a arborilor rotoarelor motoarelor electrice, din seria mijlocie, fabricate la Întreprinderea „Electromotor ” din Timişoara. Realizarea a fost distinsă cu Premiul „Traian Vuia” al Academiei Române la 25 noiembrie 1983. Întâmplarea a făcut ca, în anul 1982, să coincidă cooptarea mea în Colectivul de robotică cu achiziţionarea la facultatea noastră a unui prim sistem cu microprocesorul 8085, din occident. Era chiar perioada în care apariţia şi răspândirea microprocesoarelor deschideau calea spre ceea ce avea să determine o adevărată revoluţie în tehnică, iar domeniile de aplicaţie pentru microsisteme se estima să fie limitate numai de imaginaţia utilizatorilor. De atunci, m-am ocupat cu predilecţie de studiul conducerii axelor mecanice cu sisteme numerice. Tot de atunci, am început şi studiul detaliat al lucrărilor pentru robotică, în special a celor indicate ca fiind fundamentale de către iluştrii mei tutori, mai sus menţionaţi, creatori ai şcolii de robotică din Timişoara. De pe urma acestor preocupări a rezultat teza mea de doctorat, numeroase publicaţii, între care şi 3 cărţi în domeniu, chiar o disciplină nou introdusă în programa de studiu pentru studenţi. În perioada 1982-1988, Colectivul Multidisciplinar de Robotică din Timişoara realizat mai mulţi roboţi, pe baza unor contracte de cercetare-dezvoltare cu întreprinderi industriale, obţinute mai ales din iniţiativa şi pe baza străduinţelor conducătorilor Colectivului. Sarcinile mele concrete au fost legate de echipamentul electric şi electronic al roboţilor proiectaţi şi construiţi. Această activitate a fost o foarte bună experienţă pentru formarea mea profesională în domeniu. Trebuie să menţionez, aici, şi deosebita solicitudine de care au dat dovadă, la acea vreme, partenerii noştri din industrie. Cu nucleul constituit din foşti componenţi ai Colectivului Multidisciplinar de Robotică, fondat în 1979, funcţionează astăzi Filiala Timişoara a Societăţii de Robotică din România, al cărei preşedinte sunt din anul 2000.

După 1990, un important rol în întregirea documentării l-au avut numeroasele contacte internaţionale stabilite. Din acest punct de vedere, o altă coincidenţă a fost că primul meu paşaport mi-a fost eliberat pentru a participa la expoziţia mondială de robotică de la Brno, în martie 1990. Apoi contactele cu străinătatea au sporit. Prin acestea, am putut cunoaşte detaliat, la faţa locului, realizări ale unor firme, universităţi şi institute de cercetare/dezvoltare de prestigiu, din ţări avansate în domeniul roboticii. Tot prin contacte internaţionale, a fost posibil să se aducă la Timişoara mai mulţi roboţi de generaţie actuală, alte echipamente specifice robotizării, chiar şi o linie de prelucrare/montaj/control de calitate, deservită de roboţi. Astfel, s-a îmbunătăţit semnificativ dotarea laboratoarelor, s-au creat condiţii foarte bune pentru activitatea de studiu şi cercetare. Toate acestea au contribuit şi ele la completarea know-how-ului de specialitate, cu numeroase elemente de actualitate. Geneza conţinutului cărţii de faţă se află, de asemenea, în activitatea Colectivului de robotică din Timişoara. Fără excelentul cadru şi climatul de emulaţie creat şi întreţinut de cei doi renumiţi fruntaşi ai roboticii din „Politehnica” noastră, poate că aş fi avut un cu totul alt parcurs profesional şi nu aş fi scris niciodată această carte. Cuprinsul volumului are la bază un amplu şi detaliat studiu bibliografic, efectuat pe parcursul a peste 25 de ani, la care se adaugă şi activitatea experimentală mai sus rezumată. Modul de prezentare ales a rezultat din experienţa didactică personală, dobândită prin predarea la Universitatea „Politehnica” din Timişoara, timp de peste 20 de ani, a noţiunilor legate de conducerea roboţilor, atât la studenţi cu pregătire de bază de profil electric, cât şi la cei de profil mecanic. O bună parte dintre materialele didactice, pregătite de mine de-a lungul anilor, au fost preluate şi la alte universităţi din ţară. Desigur că, materialul elaborat conţine prelucrări din bibliografia studiată. Totodată, o mare parte a conţinutului îl constituie şi o sinteză a prelegerilor şi publicaţiilor proprii, realizate pe parcursul timpului. Primele două capitole ale volumului sunt introductive. După o expunere generală, în care am inserat şi pasaje cu caracter istoric, sunt prezentate rolul, locul şi modul în care intervin blocurile electrice/electronice în structura şi funcţionarea unui robot. Sunt date principalele definiţii, sunt introduse conceptele mai importante şi terminologia folosită. Robotul este tratat ca sistem, compus din mai multe subsisteme, principial distincte, dar aflate, de fapt, într-o strânsă corelaţie. Datorită numărului mare de funcţii şi operaţii pe care sitemul de conducere le are de efectuat, prezentarea lor se face sistematizat pe trei Grupe de Sarcini, de asemenea numai principial separabile. Această structurare pe Grupe de Sarcini constituie şi modul de abordare al tratării detaliate din capitolele următoare. Capitolul al treilea, Modelarea mediului, are titlul adaptat după versiunea din limba engleză World Modelling, folosită în literatura de specialitate. Obişnuiesc să spun studenţilor că le arăt modul cum se reprezintă “în mintea robotului ” lumea

Prefaţă

7

8

CONDUCEREA ROBOŢILOR

reală. Este vorba, desigur, despre modelare matematică şi utilizare de software, dar sunt arătate şi căi de evitare a modelării, în sensul propriu al acestei noţiuni, pentru cazurile simple, la care nu se justifică cheltuieli de manoperă/echipament aferente unei modelări detaliate. Este abordată şi problematica integrării subsistemului sezorial în strucutura şi funcţionarea echipamentului de conducere al unui robot, chiar dacă senzorii nu sunt trataţi ca atare. Motivul unei astfel de abordări este de natură organizatorică, fiindcă la UPT, tradiţional, subiectul senzori este obiectul unor discipline distincte în programele de studiu. Capitolul al 4-lea prezintă grupa de principală de sarcini a echipamentului electric/electronic, aceea de a genera şi coordona mişcările elementelor mecanice. Sunt tratate metodele de conducere, deosebirile dintre ele, cazurile în care se utilizează. Se prezintă aparatul matematic necesar şi modul de aplicare al acestuia. Sunt explicate etapele de implementare a funcţiei conducere. Este abordată problema timpului de calcul, adesea cu constrângerea execuţiei în timp real, precum şi tehnicile de efectuare a calculelor în diferitele moduri de conducere ale unui robot. Cel de 5-lea capitol al cărţii de faţă are un caracter de mai mare generalitate. El tratează principalele structuri numerice utilizate în echipamentele de conducere ale roboţilor. Descrierea arhitecturilor şi funcţionării calculatoarelor/microprocesoarelor nu se face până la cele mai mici detalii. O carte de robotică nu asigură spaţiul suficient şi nici cadrul adecvat pentru o prezentare exhaustivă a unor astfel de sisteme digitale, cum ar fi, de pildă, în manualele de specialitate pentru inginerii de calculatoare sau informaticieni. Am prezentat principalele caracteristici hardware şi software generale ale unor structuri frecvent folosite, cu exemple concret particularizate, iar tratarea se face la un nivel ce l-am considerat adecvat pentru un robotician. Ultimul capitol tratează aspectele conducerii propriu-zise a axelor mecanice. Sunt abordate numai cazurile de utilizare a acţionării electrice, pentru că subiectul este cel mai aproape de preocupările mele profesionale directe. Un argument, în sprijinul acestei afirmaţii, este prima mea carte „Microprocesorul în comanda acţionărilor electrice”, ce am publicat-o la Timişoara, chiar în decembrie 1989, la editura „Facla”. După cum se poate deduce chiar din titlul său, capitolului 6 prezintă noţiunile teoretice referitoare la conducerea mişcărilor, gama de echipamente electrice şi electronice, cu precădere microcalculatoare, respectiv elementele de automatică şi software aferent, folosite pentru implementarea acestei funcţii. Paragrafele prezentate aici reprezintă o sinteză a unor publicaţii anterioare, iar subiectul constituie şi obiectul unei discipline consacrate, pe care am predat–o timp de peste 15 ani studenţilor de la secţia Electronică Aplicată a Facultăţii de Electronică şi Telecomunicaţii din Timişoara. Elaborarea cărţii de faţă a durat câţiva ani. La redactarea ei am folosit numeroase materiale ce le-am scris în timp, publicate sau nu anterior. Fiind o lucrare cu profund caracter de ineterdisciplinaritate, m-am consultat cu mulţi colegi pe diferite subiecte ce aveam intenţia să le tratez. Lista ar fi prea lungă pentru ai menţiona pe toţi. Cu scuzele cuvenite, le mulţumesc tuturor în bloc.

Am reuşit să închei redactarea la puţin timp după ce Profesorul Kovács a plecat dintre noi. Înainte de toate, îi mulţumesc pentru că a acceptat, încă din anul 2004, să fie referent la această lucrare şi pentru numeroasele sale sfaturi. Dânsului i se datorează, de pildă, includerea capitolului 5 în carte. Totodată, doresc să-i aduc, şi aici, un pios omagiu şi să-i mulţumesc, pentru ceea ce a făcut pentru noi toţi din colectivul dânsului, pentru prestigiul Politehnicii din Timişoara şi, personal, pentru mine, în carieră şi în viaţă. Aceleaşi mulţumiri le aduc d-lui Prof. Mureşan, care îmi cunoaşte, poate cel mai bine, realizările, care mi-a îndrumat, chiar coordonat în anumite etape, în mod direct activitatea profesională de-a lungul anilor, acceptând să fie referent şi la această lucrare. S-a întâmplat ca, în perioada în care elaboram materialul pentru această carte, să survină o lăudabilă iniţiativă din partea unui grup de colegi din Colectivul nostru multidiciplinar, aceea de a scrie un tratat mai amplu de Robotică şi de a-l publica în editura universităţii. Ca “electrician” al colectivului de autori, am participat, desigur, şi eu la realizarea acestui tratat. Contribuţia mea a constat în a include unele părţi, pregătite iniţial pentru cartea de faţă, în volume diferite ale tratatului. Lucrarea de faţă conţine tot ce am predat de-a lungul anilor, respectiv tot ce am considerat că trebuie prezentat, ca un întreg, în legătură cu problema conducerii roboţilor. Mulţumesc Editurii “Politehnica” Timişoara, pentru acceptul dat de a republica contribuţiile mele la tratat şi aici, într-un ansamblu complet care să mă reprezinte. Nu în ultimul rând, mulţumesc colegelor şi prietenelor care m-au ajutat la redactarea materialelor grafice. Le mulţumesc şi le numesc, în ordinea cronologică a contribuţiilor lor: Alina Nueleanu, Sanda Botoacă, Carmen Sticlaru şi Antonia Hegedüs. Trebuie să mulţumesc neapărat şi familiei mele, pentru care, cel puţin din decembrie 2007, am fost mai mult un musafir trecător pe acasă. Desigur că, nu le-a fost uşor. Timişoara, Iunie 2009

Ivan Bogdanov

10

CONDUCEREA ROBOŢILOR

CUPRINS
PREFAŢĂ................................................................................................................ 5 CUPRINS................................................................................................................. 9 1. INTRODUCERE .............................................................................................. 15 1.1. Condiţiile care au condus la crearea roboţilor ............................................ 15 1.2. Automatizarea flexibilă............................................................................... 19 2. CONCEPTE, DEFINIŢII ŞI TERMINONLOGIE ....................................... 23 2.1. Schema bloc a unui robot ........................................................................... 23 2.2. Schema bloc a părţii electrice a unui robot................................................. 24 2.2.1. Sistemul de acţionare........................................................................ 27 2.3. Funcţii ale sistemului de conducere al unui robot ...................................... 28 3. MODELAREA MEDIULUI. GRUPA A DE SARCINI A CONDUCERII UNUI ROBOT ...................................................................... 31 3.1. Programarea prin învăţare........................................................................... 31 3.2. Reprezentări matematice pentru mediul în care acţionează robotul ........... 33 3.3. Reprezentări matriciale în robotică............................................................. 34 3.4. Reprezentarea etapelor unui proces tehnologic .......................................... 36 3.5. Etapele de realizare a modelării mediului................................................... 40 3.6. Exemplu de modelare a mediului pentru un proces tehnologic................. 40 3.7. Structuri de date specifice modelării mediului ........................................... 44 3.7.1. Reprezentarea unui vector de poziţie................................................ 45 3.7.2. Tipul transformare ............................................................................ 45 3.7.3. Tipul termen...................................................................................... 46 3.7.4. Tipul membru al ecuaţiei .................................................................. 47 3.7.5. Reprezentarea unei ecuaţii transformare .......................................... 48 3.8. Cuaternioni ................................................................................................. 50 3.8.1. Introducere........................................................................................ 50 3.8.2. Elemente de algebră a cuaternionilor ............................................... 50 3.8.3. Reprezentarea rotaţiilor cu cuaternioni............................................. 54 3.8.4. Reprezentarea matricială a rotaţiilor folosind cuaternioni................ 57 3.8.5. Determinarea elementelor unui cuaternion pentru o matrice de rotaţie dată ........................................................................................ 60

3.8.6. Cuaternionii şi unghiurile Euler........................................................63 3.8.7. Analiză comparativă între volumul de calcule aferent utilizării transformărilor omogene, respectiv a perechilor vector – cuaternion. ..........................................................................66 3.9. Integrarea cu senzorii, sarcină fundamentală în legătură cu modelarea mediului (sensor integration) ...................................................69 3.9.1. Noţiuni fundamentale despre Sistemul de Achiziţii de Date(SAD) ........................................................................................69 3.9.2. Senzori, traductoare şi formatarea semnalelor ..................................70 3.9.3. Blocul formator al semnalelor...........................................................70 3.9.4. Hardware-ul SAD .............................................................................73 3.9.5. Pachetul de programe al unui SAD...................................................78 3.10. Sistem de vedere artificială .......................................................................78 3.11. Cerinţe cu privire la programul pentru modelarea mediului ....................80 3.12. Simularea proceselor robotizate. realitatea virtuală .................................81 4. SPECIFICAREA, GENERAREA ŞI CONTROLUL MIŞCĂRILOR ........83 4.1. Problema conducerii unui robot ..................................................................83 4.2. Metode de conducere a roboţilor.................................................................85 4.2.1. Clasificarea metodelor de conducere a roboţilor după sursa pentru punctele ţintă .........................................................................85 4.2.2. Clasificarea metodelor de conducere după modul de efectuare a deplasărilor.....................................................................................85 4.2.3. Clasificarea metodelor de conducere după coordonatele utilizate .............................................................................................87 4.3. Traiectorii în mişcare...................................................................................88 4.4. Legătura spaţiu-timp în mişcarea unui robot...............................................88 4.5. Legătura spaţiu-timp în descrierea unei traiectorii......................................91 4.6. Legătura spaţiu-timp prin ecuaţii parametrice ............................................94 4.7. Funcţii conducere ........................................................................................95 4.8. Etapele de realizare a conducerii unui robot ...............................................97 4.8.1. Specificarea mişcării .........................................................................97 4.8.2. Generarea mişcării. Generatorul de traiectorie (GT) ........................98 4.8.3. Conducerea nemijlocită a elementelor cuplelor cinematice conducătoare .....................................................................................99 4.8.3.1. Problema conducerii nemijlocite a elementelor cuplelor cinematice conducătoare......................................100

..................c........................................................................................ 110 4..... .........191 5.........................................2................ 110 4......6......6................................ 104 4.....2..4.................................. Moduri grafice ..150 5............2..... ...... Problema timpului de calcul ...................... Generarea mişcării în coordonate carteziene.......8........................ 120 4.............2................................ STRUCTURI NUMERICE SUPORT PENTRU ECHIPAMENTUL DE CONDUCERE AL UNUI ROBOT ........................... 136 5....6...... Imprimanta.9.......1....4... Placa de reţea .183 5...184 5..............161 5..............167 5........... Conducerea unui robot în spaţiul cartezian cu matricea D(r) ..........184 5.1.......11.............2.... Modem .. Accesul direct la memorie ..................................9. 126 4...1... Memorii semiconductoare .5.........11..... Monitorul ...9........c....... Dezavantajele conducerii unui robot în coordonate c.5............ Monitoare cu OLED ............................1..................4...................172 5..3.................12.............3................ Memoria virtuală ....155 5..5........ cu orientare în spaţiul cartezian (COCM – Cartezian Oriented Cartezian Motion) ...........................................c........5.........3....... Memoria de program (ROM)............................ Portul serial.1.............6..........175 5..........156 5....... Instrucţiunile µC 8051 ........ Principii generale cu privire la microprocesoalrele de uz general (µC 8051)........3......... Echipamente periferice...................5........ 123 4.. Scanner..............151 5.............................7.............. 133 5.....175 5....5........9.. Plotter...............................10..............5......2........... Ierarhizarea memoriei................5...................................................2........... PC software .. Specificarea mişcării în cazul conducerii în coordonate carteziene .....................................155 5....10....................................................9..8................9..................................6...........................................2....2.......................... 102 4....165 5......7.......................................... 109 4...11....................3... Port paralel .....................2..................................................................c............................................. Funcţia conducere polinomială .......1...........c... Magistrale.... 107 4...........9................. Calculatorul unui robot .1.......................................................................... Structură generalǎ şi funcţionare ( µC 8051) . Etapa de alegere a funcţiei (funcţiilor) conducere şi de calcul al coeficienţilor acestora............ 111 4............. 138 5.......................4.....................................2..... Monitor multiplu. 138 5....................... 131 5..... ......146 5....... Interpolarea liniară.................. 112 4..... 131 5..................................c.......2......... Procedura de efectuare a calculelor .............................1....................................142 5.................4............ 103 4.....1..c..............................4..... 139 5.......5..........2...................... (JOCM ................c.....................178 5.c.................6............. Calculatorul ..193 ..9....10...............................2.. 125 4...........5......9................. Placa de sunet.........1... Problema interpolării .......................Cuprins 11 12 CONDUCEREA ROBOŢILOR 4...........4...................10.............171 5. Conducerea unui robot în coordonate carteziene....3...............155 5................9..3........................................ Exemple de funcţii conducere în coordonate c.....................1..........145 5.....2... Maus...............183 5................................. Concluzii cu privire la mişcarea în coordonate c..6.. 108 4........... Circuite de numărare/ temporizare ( CTC ) ........4..... Algoritmul de determinare al numărului minim de puncte exacte de pe o traiectorie spaţială................................................................................3........ Organizarea memoriei la µC 8051 ....................9..........9......2..................6.........9........................ Porturile µC 8051.................2..................164 5...c. Limbaje de programare ...144 5.... Conducerea unui robot în coordonate c............................ 109 4......................1..............9.2..........3......................................165 5...10................................c...........................c..142 5.......................................... Programarea µP/ µC.......c.....190 5....6..... Monitoare cu cristale lichide....................................192 5................. Specificarea mişcării în coordonate c.........................................6...................2.....................................3..................................................................7.......... Metoda de conducere în spaţiul cartezian cu orientare în c.....................10......6......139 5.... 108 4.....151 5................................................... 102 4............................................................................ 133 5..................................7........Joint Oriented Cartezian Motion) ...10..................................1............. Memoria de date (RAM) ...2.............. ............2... Monitoare cu ecran plat.7.......9................. Port serial ........................... 130 5.................. 122 4.........186 5........................................5..............6.....5..... Avantajele conduceri unui robot în coordonate c.9......... cu care se asigură o deviere limitată ......9................... Porturile paralele...............c...................9..............c...........................................155 5........... Memoria permanentă... Porturi..........190 5........c....................1..6.........158 5...... Etapa de determinare a punctelor de definire a traiectoriei carteziene .........3..........................1............................................................... Sistemul de întreruperi ...............6.........................................11..............9.. Tastatura ..................................... Transmisia de date...................... 110 4....................9.........................................9.............2.. Alegerea funcţiilor conducere.................................4...... Monitoare cu tub catodic.1................................. Microprocesorul (ΜP).10.......................1.........166 5...............2........................... Memoria.....7........................................146 5............... 122 4.................................................. Metoda de conducere a unui robot în spaţiul cartezian..... Generarea mişcării în coordonate c....................

.........9.......2.....5.....5... 241 6........................................2................................... Circuite de alimentare pentru motoarele pas cu pas......... 208 6. Sistem de conducere nemijlocită a unei axe implementat cu motor de curent continuu...................5.......... Acţionări cu motoare de curent continuu fără perii.. 239 6... 221 6........ 225 6.......................... Modelul matematic al sistemului .3...1................7........................ Rolul diodelor din scheme...................9.....................8.......................3.. Principiul PWM aplicat în cazul motoarelor de curent continuu..........248 6............. 219 6...............3......... 204 5.........6...............8...........7...................3............. Forma discretă a algoritmului de reglare ...........................254 6............ 232 6. 303 5...............243 6..................... 237 6............................ Servomotorul cu rotor disc şi întrefier axial.....................251 6.......7....4. Metoda comutării unui singur tranzistor de pe o diagonală a punţii ................... Dispozitivele electronice de putere utilizate în elementul de execuţie ....3................... Motorul de curent continuu (mcc) ................9................252 6............1................ Comanda şi alimentarea motorului asincron ... Moduri de adresare....3.3........Tendinţe actuale........ 219 6..... Comanda electronică a servomotoarelor .257 6............ ...........8.....3...................................................4...... Sistem de acţionare pentru conducerea unei axe implementat exclusiv numeric .................1...3.......... 213 6..........2...........1............2........9. Motorul de curent alternativ ..... Metode de comandă pentru puntea cu tranzistoare...............1............. ... Motorul de curent continuu fără perii (Brushless DC) ........8.........................1.6.....................7.................... Comanda trapezoidală aplicată la MCC FP – IC.......... Principiile de proiectarea a algoritmilor de reglare ...3.1..242 6..........8............1...8............. Microcontrolere PIC .2..4.3.........246 6......................................258 6..............3.... Memoria PIC ............... 223 6.......... Elemente de execuţie (electronica de putere) .7...............................3...................3......5....................8..........8................................2...........3.....263 ................ Exemplu de element de execuţie pentru alimentarea MCC.......................3......3...... Comanda sinusoidală aplicată la MCC FP – ID ...3..2..9..........................1..................... 213 6... 219 6.......1................................. 227 6............255 6... 228 6..................... 220 6...2... CONDUCEREA NEMIJLOCITĂ A AXELOR UNUI ROBOT....... Comanda simetrică dublă ..... Comanda simetrică simplă ............................8......Cuprins 13 14 CONDUCEREA ROBOŢILOR 5.. 238 6.........................3..6........5.......................9..... 219 6.............2...............8...... 230 6.......3....... 224 6.4...... 232 6................5.............................. 234 6........ Motorul pas cu pas.............9.... Comanda alternativă a două tranzistoare de pe o diagonală a punţii ...... Setul de instrucţiuni al µC PIC 16F84..............3........... 195 5...................... Porturile µC PIC 16F84...............6.................................................1..................... Microprocesoare pe mai mulţi biţi............3........................... 236 6......... Determinarea formei numerice a algoritmului de reglare PI.3.260 BIBLIOGRAFIE ...........3.............243 6.........252 6.4.............................. Circuite integrate de putere(IPC)........2..............253 6.2.......8.......2.......9...............9......................7.......... 205 5.................................... Module de putere......5............3.. 227 6...... Sistem de conducere local pentru o axă mecanică....... Comanda simultană a două tranzistoare de pe o diagonală ... 207 5.............................4...........................................................2...7.4....5.. Metoda trapezelor de integrare ....................................2........7............ 199 5................ 197 5...... 219 6........................... Modalităţi de efectuare al calculelor.2................ Comanda bipolară................. Comanda nesimetrică...... Alegerea algoritmului de reglare....1..............8..... Caracteristicile reglării numerice............................................ Tipuri de motoare electrice ..............3.3......................8.........8.........6. Sistemul de întreruperi la µC PIC 16F84...............244 6.................... Programarea µC PIC 16F84 .

în toate limbile slave moderne se păstrează cuvinte derivate din „rabota“. „(mod) intelectual“. RUR este o piesă science-fiction şi prezintă o fabrică în care se produc maşini umanoide. o maşină mecanică umanoidă putea fi construită încă din perioada interbelică. Electronica. La un moment dat. Termenul este creaţia dramaturgului Karel Čapek (1890 – 1938). în credinţa iudaică. lansată în anul 1921. ceea ce nu ar fi fost posibil fără roboţi. micromotoare. cu toate că la producţia propriu-zisă participă un număr tot mai mic de operatori umani (OU). a nanominiaturizării. a microminiaturizării şi. Čapek a folosit. Principial. luat ca şi cuvânt din ebraica veche. utilizate în medicină (roboţi care curăţă interiorul vaselor de sânge). Mecanizarea şi. pictor şi poet. Tendinţa de a uşura efortul fizic. Perioada interbelică a trecut. chiar de a ”pune la lucru maşinării” a existat încă din antichitate. înseamnă „pământ“. la timpul lor. situaţia s-a schimbat. Čapek declară că a creat o versiune modernă a unei legende mai vechi. în acest sens. un golem. Condiţiile care au condus la crearea roboţilor a) Condiţii economice De la începuturile existenţei sale. Inteligenţa artificială şi sistemele expert sunt o realitate a zilelor noastre (ex. nominalizat pentru premiul Nobel în 1936. b) Condiţii tehnologice După 1960 omenirea a intrat în era calculatoarelor. traductibil în limba română prin: „robie“. Este generalizată tendinţa de a conduce şi controla orice activitate cu calcu-latorul. în care la fiecare 5-6 minute un nou vehicul produs părăseşte intreprinderea. Aceşti „oameni“ pot gândi şi acţiona de sine stătător. un rabin al comunităţii evreieşti din Praga a frământat.16 CONDUCEREA ROBOŢILOR Capitolul 1 INTRODUCERE 1. denumite roboţi. răspândită în Cehia începând din secolul al XIX-lea: legenda Golemului. unul dintre cei mai importanţi scriitori cehi. este industria producătoare de automobile. . În Japonia există fabrici în care. Aceasta a permis realizarea miniaturizării. Azi există microcontrolere. Problema era comanda şi acţionarea acesteia. Chiar numele Adam. Creşterea cantitativă şi calitativă a producţiilor. schimbă şi. o fiinţă însufleţită creată exclusiv din materiale neînsufleţite (lut. chiar denumirea de robot a apărut în perioada interbelică. nu se folosesc mai mult de 15 muncitori în sensul propriu al cuvântului. tehnologia a evoluat. denumirea de robot în celebra sa piesă de teatru RUR “Roboţii universali ai lui Rossum” (“Rossumovi univerzální roboti“). după ce sistemul “Deep Blue” a reuşit să–l înfrângă pe campionul mondial en-titre Gari Kasparov). în final. argilă. Astăzi competiţia de piaţă este acerbă. distrug societatea umană. care. pentru întâia dată în lume. În ultimii ani. unde „rabota“ însemna „servitute“. De altfel. a părut că robotizarea va stagna. reducerea preţurilor de cost şi a timpilor de fabricaţie sunt acum deziderate care condiţionează nemijlocit menţinerea în competiţie a agenţilor economici. golemul este. a avut de suferit ca urmare invadării Cehoslovaciei de către nazişti. după 1938. chiar campionatul mondial de şah a fost întrerupt. „înţelepciune“. Se dezvoltă acum sisteme mecatronice embedded (dedicate). Au apărut dispozitivele semiconductoare organice. senzori ce pot fi introduşi fără dificultate într-o articulaţie mecanică. Exemplul cel mai elocvent. „sclavie“. în realitate. căruia i-a dat viaţă.1. cu excepţia unui singur om. există numeroase activităţi în care este mai rentabil să se folosească maşini inteligente. electrotehnica în general. Numele Rossum este o aluzie la cuvântul rozum din limba cehă. Apariţia şi răspândirea microprocesoarelor a permis încorporarea elementelor de inteligenţă în structura constructivă a uneltelor. automatizarea au determinat. După teminarea manuscrisului. mai nou. fratele său Josef Čapek. odată cu extinderea masivă spre China a activităţilor economice. Chiar dacă argumentul economic a devenit mai puţin determinant. pământ). De origine biblică (Vechiul Testament). “muncă silnică“. omul s-a străduit mereu să-şi eficientizeze efortul pentru procurarea de hrană sau de amenajare a unor spaţii pentru locuit. apoi. care înseamnă „raţiune“. roboţii se revoltă. Astăzi este greu de conceput un domeniu de activitate în care calculatorul să nu fie folosit. Legenda cehă spune că. pentru producerea de autoturisme. în ziarul „Lidové noviny” (“Ziarul poporului“) autorul avea să declare că adevăratul inventator al termenului a fost. S-au realizat chiar structuri nanometrice. Originea cuvântului este în slavona veche. blocuri electronice de putere realizate miniatural. De altfel. Cuvântul robot provine din cel cehesc „robota“. creşteri importante ale productivităţii activităţilor umane. la un moment dat. au cunoscut o dezvoltare fără precedent. de a spori rezultatele muncii. iar la început sunt foarte dispuşi să-şi servească stăpânul (Rossum). din argila de la malurile Vâltavei. în secolul al XVI-lea. Mai târziu. transferul sarcinilor/ funcţiilor de la hardware la software este permanentă. Golemul a apărat credincioşii iudei de persecuţiile Împăratului. decât un număr de operatori umani ieftini. „sclavie“.

existau robi. În plus. precizia pe termen lung în acţiune. amplasând motoare de puteri adecvate chiar la nivelul axei. Există situaţii în care praful. cu roţi dinţate sau cu fricţiune etc. în timpul evului mediu. o maşină poate lucra. ş. după descoperirea motoarelor termice (Otto. cu lanţuri. Viteza de calcul a unui calculator. murdăria. este importantă evoluţia ştiinţei materialelor. cu sau fără echivalent natural. însă. Este de notorietate vacarmul dintr-o hală a unei ţesătorii sau de tricotaje. prin creştere de la nivel de moleculă. dialogul la distanţă. 1. Ceramicele folosite la navetele spaţiale îşi găsesc aplicaţii în tot mai multe domenii “terestre”. pe plantaţiile de bumbac din statele din sudul SUA erau folosiţi sclavi. autovehiculele. respectiv Diesel) şi chiar târziu. dar prin trecerea la acţionarea electrică se întrevede realizarea roţilor conduse autonom.S. o greutate ridicată şi lăsată să cadă încet ca să-şi micşoreze treptat energia potenţială. unde lucrul în schimburi lungi la un acelaşi punct de lucru la o bandă de montaj determină tulburarea mintală a personajului principal (interpretat de el însuşi). deşertice sau din spaţiul extraterestru să fie folosite maşini inteligente pentru a efectua activităţi de tip umanoid. a unor activităţi fără variaţie provoacă scăderea atenţiei. Nanotehnologia permite obţinerea. o singură roată de moară (hidraulică sau eoliană). deocamdată.Cap. gazele toxice sau explozive (noxele de tot felul). fără deşeuri şi cu calităţile dorite pentru material. a enunţat pentru prima dată că maşinile inteligente vor lucra în activităţile DDD (Dirty. publicată în “Journal of Applied Mechanics” în 1955. în principiu. Pentru robotică a fost importantă contribuţia cercetătorilor J. Nu în ultimul rând. un singur arc torsionat. este greu suportabil zgomotul în ateliere pentru tăiere sau polizare/şlefuire. 24 de ore din 24.P. d) Condiţii istorice Din cele mai vechi timpuri oamenii au inventat unelte şi scule pentru ca activitatea lor să devină mai eficientă. Unele sisteme erau veritabile bijuterii tehnice (vezi ceasurile mecanice cu figurine mişcătoare). pe perioade îndelungate. temperaturile foarte ridicate sau extrem de scăzute. Trebuie menţionată şi comoditatea omului. fără întrerupere în week-end. din secolul trecut. după răspândirea cvasigenerală a motoarelor electrice. Exemplul remarcabil este cel surprins de Charlie Chaplin în filmul său “Modern Times”. Excepţia o constituie. Denavit şi R. necesară pentru punerea în mişcare a elementelor mecanice într-un sistem. activitatea pentru om. schimbarea temperaturii externe. sunt azi mult superioare la maşinile anume construite. Nu este de neglijat nici faptul că performanţele obtenabile cu o maşină sunt. au introdus o nouă metodologie de abordare şi de calcul în mecanisme. zile de sărbătoare sau concediu. c) Condiţii de mediu Multe dintre activităţile umane trebuie să se desfăşoare în medii neprietenoase sau chiar nocive pentru OU. un singur motor de mare putere (cu aburi. un timp mai scurt şi să fie din ce în ce mai eficient/productiv în acţiunile sale. Tendinţa este ca în zonele polare. Paul a preluat principiile DenavitHartemberg şi a pus bazele metodologiei de calcul pentru analiza cinematică directă şi inversă la braţele de robot. adâncimi subacvatice mari. zone expuse radiaţiilor nocive. Astăzi se procedează la acţionarea individuală a fiecărei axe în parte (eventual a 2-3). de multe ori superioare celora umane. În evul mediu s-a instaurat iobăgia. S-au construit şi elemente care să înlocuiască . Un sofisticat sistem de transmisii mecanice – cu curele. acurateţea vizuală la observarea unor obiecte/mişcări de dimensiuni microscopice sau aflate la distanţe mari şi foarte mari. – era folosit pentru a transmite mişcarea la toate axele mecanice care trebuiau acţionate. Hartemberg care cu lucrarea lor ”A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices”. Introducere 17 18 CONDUCEREA ROBOŢILOR În anii ’60. Astfel. canale subterane. la care cutia de viteze (din ce în ce mai complexă) şi cea de direcţie rămân esenţiale pentru distribuirea mişcării produse de motor. Plictisitor). – sau “ţin minte” modul în care au fost folosite). începând din secolul al 18-lea. pe vremea descoperirii maşinii cu abur (de către Eduard Sommerset [1663] şi perfecţionată de James Watt în timpul lui Napoleon). prin structuri de date adecvat definite şi programe de calculator dedicate pentru mecanica roboţilor. oboseală. chiar a sistemului nervos. radiaţiile nocive fac greu posibilă. s-a produs o schimbare radicală în ceea ce priveşte concepţia în acţionarea axelor mecanice: În antichitate. Un factor important de stres este monotonia în anumite activităţi. În antichitate şi.a. a unor materiale noi. creatorul primului robot industrial din lume. uneori imposibilă. El va dori mereu să lucreze mai uşor. concepţia constructivă avea la bază utilizarea unei surse unice care genera energia cinetică. Şi în mecanică au apărut schimbări în concepţie. Periculos. Mai târziu. de orice dimensiuni. Conceptul este chiar denumit conducere distribuită. zone vulcanice sau anaerobe. Unele zone sunt chiar inaccesibile pentru om: mlaştină. Necesitatea de a efectua activităţi incomode rămâne. Astăzi putem spera că astfel de plăgi sociale au dispărut pentru totdeauna. Sunt azi obţinute materiale inteligente şi/sau materiale cu memorie (materiale ce îşi schimbă calităţile în funcţie de condiţiile lor de utilizare – variaţia solicitării. R. spaţiul extraterestru etc. Piesele mecanice se pot realiza prin creştere de cristale. La fel. Dangereous and Dull – în româneşte Murdar. Joe Engelberger. A fost primul în lume care a creat mijloace de reprezentare. umiditate etc. Efectuarea. În primul rând este vorba de zgomotul uzinal. termic sau electric) erau folosite ca unice surse generatoare de mişcare. conducte pentru utilităţi.

) care să fie cu un mare grad de universalitate.2. reducerea timpilor de fabricaţie şi. Sensul termenului flexibil. la automobile. uleiuri. finisare. adică: . care poate fi fix sau mobil şi care este utilizat în aplicaţii industriale automatizate.etc). Observaţie: În opoziţie cu acest model. 7) Organizare. Există activităţi în agricultură. sau cel puţin are o dotare particulară. 2) Utilizarea unor braţe mecanice de lucru flexibile: a) să fie capabile de mişcări sofisticate. aceasta trebuie să fie negru”. are numai rol în supraveghere sau service. lubrifianţi. linii de alimentare cu tensiune continuă – de diferite valori. Sistemele sunt flexibile din multe puncte de vedere. încărcare/descărcare a pieselor pe/de la maşinile de lucru. În antichitate s-au inventat pârghiile. lacuri. adică produsul să fie fabricat după dorinţa clientului. electrozi de sudură de tipuri diferite. propagandă fabricaţiei sale tipizate la maximum. producţie industrială. Implementarea automatizării flexibile presupune câteva condiţii ce trebuie simultan îndeplinite: 1) Conducerea cu calculatorul a maşinilor de lucru şi a procesului de fabricaţie pe ansamblul său. mai întâi. reţea de aer comprimat. acceptându-se. comparabile cu cele ale braţului uman. care în 1913 a inventat şi introdus prima linie de asamblare pe bandă rulantă a automobilului său.a. Aceasta înseamnă. ş. reţea de apă rece/caldă curentă etc.a. modificări minime şi simplu de făcut. 5) Existenţa de multiple reţele de utilităţi (reţele de alimentare cu tensiune alternativă monofazată şi trifazată. ş. Operaţiile de bază (prelucrare. Exemplul tipic este cel din industria de automobile când. să fie necesară trecerea rapidă de la fabricaţia de serie a unui tip de produs la o serie pentru un alt tip.). c) să permită schimbarea facilă a diferite tipuri de Efectoare Finale (mâini. mese de lucru indexabile şi mobile. folii de protecţie. dezvoltarea şi extinderea aplicaţiilor pentru roboţi se poate face mult mai pe larg. ceea ce era. utilaje. uneori. avea obiceiul să declare că “dacă un client doreşte un automobil de o anume culoare. surse de încălzire/răcire programabile. O astfel de fabricaţie nu poate fi realizată decât cu o automatizare flexibilă.Cap. folosit asociat cu automatizare este “foarte uşor de modificat”. că pe o linie de fabricaţie să poată fi produse şiruri de maşini în care fiecare exemplar este de alt tip. lichide pentru spălare/răcire. o mare inovaţie. verificare/control. El făcea. În consecinţă. presupunând că fiecare client emite pretenţiile sale distincte. implicit. 1. Arhimede a făcut clasificarea pârghiilor şi a inventat scripetele mobil. Definiţie: automatizarea înseamnă executarea de operaţii tehnologice (prelucrare. la un punct de lucru sau chiar pe o linie de fabricaţie industrială. din secolul al XX-lea. instalaţii. În epoca modernă a apărut automatizarea. strângerea/destrângerea unor bacuri. vopsele. chiar transporturi. Trebuie creat un sistem logistic adecvat. Henry Ford. a preţurilor de fabricaţie. Automatizarea flexibilă Competiţia de piaţă a condus la situaţii în care. scripeţii sau roata. Mecanizarea s-a folosit de timpuriu şi a cunoscut o dezvoltare continuă. trecerea de la o operaţie la alta să presupună numai modificări simple (scoaterea sau introducerea unor bolţuri. produs pentru scopuri multiple. finisare etc. ambalare) fără participarea efectivă (nemijlocită) a omului.) folosesc. condus automat. de la o oră la alta. 6) Dotare completă cu componente şi materiale consumabile (piese– electronice/mecanice mici. conform standardului internaţional ISO 8373: ROBOTUL INDUSTRIAL este un manipulator programabil şi reprogramabil. nivelul de automatizare al activităţilor este deosebit de avansat. cu trei sau mai multe axe mecanice. aliaje de lipire. Multe dintre aceste activităţi se fac cu maşini/sisteme inteligente. O schimbare de produs înseamnă. 1. planul înclinat. logistică. scule). eventual. în timp foarte scurt. capabile să efectueze cât mai multe tipuri de operaţii tehnologice pe o aceeaşi maşină de lucru. sunt conduse adaptiv şi inteligent. transport uzinal. În zilele noastre. piaţa poate solicita schimbarea tipului de autoturism produs pe liniile de fabricaţie ale unei firme. valabile şi astăzi. Tendinţa este astăzi de a se generaliza fabricaţia orientată pe client (Customer Oriented Manufacturing).). servicii. la definiţia robotului industrial. asamblare. în care OU nu intervine de loc. Introducere 19 20 CONDUCEREA ROBOŢILOR membre umane distruse sau pierdute în accidente/lupte (vezi clasificarea instalaţiilor pentru operaţii humanoide). Desigur că descrierea condiţiilor care au condus la apariţia. schimbări de scule etc. la acea vreme. este cunoscut faptul că într-un proces uzinal peste 90% din timpul necesar fabricaţiei este cheltuit cu operaţii auxiliare – căutare în depozite. asamblare. Evident că noul produs trebuie fabricat cu aceleaşi maşini. trebuie făcute unele precizări suplimentare: Încă din anii ’ 80. În legătură cu ultimul aspect menţionat. b) să poată ajunge în orice punct al spaţiului lor de lucru. schimbarea rapidă a programelor de lucru pentru componentele de sistem. 3) Folosirea de utilaje multifuncţionale. transport uzinal bine gândite şi conduse. însă. manipulare. astfel. Prezentarea din această introducere se opreşte. butelii cu varii gaze tehnologice. se poate face prin managementul fabricaţiei. tot mai adesea cu aspect umanoid (vezi domeniile de aplicaţii ale roboticii). numai 5% din timpul total de fabricaţie. 4) Utilizarea de dispozitive mecanice ajutătoare (de fixare.

). SAP a devenit în timp cea mai mare companie de software din Europa şi a 4-a din lume . SAP a creat programe software care se folosesc în organizare. În Germania a fost creată o mare firmă specializată pe organizarea şi managementul companiilor. la cerere. care sunt sisteme integratoare ale tuturor datelor şi proceselor dintr-o organizaţie (companie. Supplier Relationship Management (SRM). 120 de ţări. c) utilizarea de instalaţii automate aducătoare/evacuatoare de piese brute/finite. Human Resource Management Systems (HRMS). Applications and Products in Data Processing". Ulterior SAP a creat produse şi pentru Întreprinderile Mici şi Mijlocii (IMM) sau. numele de la care provine şi acronimul arhicunoscut. Există chiar direcţii de studiu sau de specializare (diplome) în aceste domenii. activitatea din firma respectivă. Enterprise Portal (EP) şi SAP Knowledge Warehouse. în cca. El discută cu întreg personalul (“de la portar. în engleză. Astăzi în lume sunt peste 100. un furnizor SAP din Germania organizează cursuri de training pentru software şi aplicaţii SAP. asociaţie etc. Introducere 21 22 CONDUCEREA ROBOŢILOR a) o gândire judicioasă a succesiunii etapelor de proces (PT). Programele SAP sunt foarte scumpe.000 de aplicaţii SAP. până la director”). a devenit “Systeme. Small and Medium Sized Enterprises (SME): SAP Business One sau SAP All-in-One. studenţii de la universităţile tehnice au prevăzute în curricula lor de studiu discipline dedicate acestui subiect. b) utilizarea de maşini/instalaţii automatizate pentru depozitare în magazii computerizate şi deservite de braţe mecanice conduse automat. Anwendungen und Produkte in der Datenverarbeitung” sau în limba engleză "Systems.Cap. În ţările avansate. Firma are un mare număr de angajaţi specializaţi în managementul firmelor şi fabricaţiei. astfel încât procesele să se desfăşoare cât mai logic. Google. Aceştia sunt trimişi. Customer Relationship Management (CRM). A fost aplicat la unele firme din oraş. La început numele său a fost „System analyse und Programmentwicklung“. Product Lifecycle Management (PLM). Exchange Infrastructure (XI). 1. Alte produse cunoscute sunt: Advanced Planner and Optimizer (APO). Specialiştii de profil au o mare căutare. pe trasee optimale ca durată. în detaliu. fiind iniţial destinate firmelor mari şi foarte mari (din topul primelor 500 în lume). Produsul lor de bază este platforma mySAP ERP. Ulterior. a întreprinderilor. Organizarea fabricaţiei. după Microsoft. . la alte diferite firme. Supply Chain Management (SCM). Business Information Warehouse (BW). unde acordă consultanţă pentru optimizarea organizării. Este celebra SAP. Principalul lor domeniu este crearea de sisteme ERP (Enterprise Resource Planning). A fost chiar printre primele firme care au creat ERP. iar la Centrul de Educaţie Permanentă al Universităţii „Politehnica” din Timişoara. O astfel de consultanţă durează mai multe luni. pentru că specialistul SAP trebuie să afle. încă din 1972. Evident că o asemenea consultanţă are un preţ ridicat. care activează în universitate. să fie evitate deplasări hoinare (wandering) şi/sau manipulări inutile. Ultima este şi cel mai mare concurent american al lui SAP. şi IBM Oracle Corporation. recte în timp cât mai scurt. firmă. Şi la Timişoara SAP e prezent. d) staţii de control al calităţii complet automatizate. managementul producţiei sunt extrem de importante astăzi. fiind precedat de varinata iniţilă SAP R/3.

C. Fig. Întregul echipament este organizat în jurul calculatorului central aflat în dialog (prin intermediul circuitului de interfaţă) cu senzorii.C. un S. 2. să le analizeze. Terminologia conducere nemijlocită are semnificaţia de conducere directă. să le înţeleagă şi să le transfere calculatorului central). este valabilă schemă bloc din figura 2. DEFINIŢII ŞI TERMINOLOGIE 2. (cu structură de S.Sistemul robot Sistemul de comandă şi cel de acţionare constituie sistemul de conducere. denumit sistem robot. • sistem de percepţie = senzori şi traductoare. Sistemul de acţionare se compune din sisteme de conducere locale (S.2. Observaţii: 1. se arată o variantă ce descrie sistemul robot. blocurile componente ale unui robot se află într-o legătură bidirecţională şi se comportă împreună tot ca un sistem. • blocul calculator conţine şi circuite (de interfaţă) specifice aplicaţiilor de robotică. comandă sistemul de acţionare.-urile sunt realizate cu o structură de sistem de reglare automată (S.1.R.A.2. Procesul robotizat este procesul condus.2.2.2 .1 şi fig.2. la rândul lor. În realitate există anumite deosebiri faţă de o structură clasică da calculator: • uneori sistemul de conducere al robotului are mai multe calculatoare.3.A. care se stabileşte într-un sistem robot.-urile asigură conducerea nemijlocită a axelor unui robot.C. elementul de acţionare se compune din motor. • sistemul mecanic.nr. capabil să culeagă informaţii din mediu. Observaţie: S. 2. 2. este denumit în schema din fig.2. fără intermediar. reprezentând mai multe detalii din structura un echipament de conducere uzual.1.2: • sistem de comandă = calculator.1) sunt: • sistemul de comandă. Fig. În schema bloc din figura 2. S.2. calculator pentru că are toate caracteristicile calculatorului obişnuit compatibil IBM PC. Din punctul de vedere al circuitului informaţional. Elementul central din schema informaţională din fig. interfaţă. traductoarele şi circuitele de acţionare.24 CONDUCEREA ROBOŢILOR Capitolul 2 CONCEPTE.1. Schema bloc a unui robot Definiţie: sistemul este un ansamblu de elemente interconectate astfel încât performanţele ansamblului sunt superioare sumei performanţelor individuale ale elementelor componente. Schema bloc a părţii electrice a unui robot În fig.L.R. • sistem de vedere artificială (care e un alt calculator extern dotat cu cameră de luat vederi. propriu-zisă. Schema bloc informaţională pentru sistemul robot Observaţie: vezi corespondenţa dintre blocurile celor două scheme din fig.2. unii autori includ în sistemul de conducere şi sistemul de percepţie.L. Părţile componente ale unui sistem robot (vezi fig.L.C. . Sistemul mecanic în acţiune asupra mediului se numeşte sistem condus. transmisie şi frâne.) s-a reprezentat prin grupurile: comandă elementul de acţionare.L.2. elemente de acţionare. • sistemul de acţionare. • sistemul de percepţie.).2.) realizate la nivelul fiecărei cuple cinematice conducătoare în jurul câte unui motor de acţionare. traductor.1. Calculatorul central comandă unul sau mai multe microprocesoare/ microcontrolere care. • sistem de acţionare = sistem de acţionare.

de gabarit. De regulă este dotat şi cu un joystick cu care se pot comanda mişcările sistemului mecanic.) este amplasat pe uşa dulapului şi este compus din butoane pentru comenzi şi becuri de semnalizare. Exemple de butoane: • pornire reţea cu cheie. Prin actuator. în funcţie de context. Blocul generator de traiectorie transmite semnale de comandă (mărimi de prescriere): poziţii. senzori optici etc. Observaţie: prin situare se înţelege în robotică poziţia şi orientarea unui element mecanic sau unui obiect. Dacă robotul este unul evoluat. apropie efectorul final de bolţ. sarcină. atunci el are un calculator capabil să lucreze cu elemente de inteligenţă artificială.R. 4. Uneori în actuator se subînţelege ca fiind inclusă şi o parte electronică (de comandă sau senzor).O.) poate conduce manual robotul spre situările convenabile executării operaţiilor tehnologice. • panoul de învăţare este exterior dulapului. Exemple: există senzori de proximitate. pentru care în literatura de specialitate se folosesc mai multe denumiri: panou de instruire. modul de instruire.2. Senzorii fac parte din sistemul de percepţie şi sunt amplasaţi în mediul în care lucrează robotul sau pe braţul mecanic. Observatie: cuvântul task din limba engleză se traduce. • panoul operator se află pe uşa dulapului Specific pentru un echipament de conducere a unui robot este panoul de învăţare. definiţii şi terminologie 25 26 CONDUCEREA ROBOŢILOR Fig. se înţelege motorul cu cel puţin o parte din transmisie şi/sau frână. Pentru roboţii obişnuiţi calculatorul trebuie să realizeze modelarea mediului şi generarea traiectoriei (modelarea mediului înseamnă reprezentarea prin ecuaţii matematice a evenimentelor şi obiectelor din proces). • senzorii sunt amplasaţi în mediul de lucru al robotului.A. apucă bolţul. 2. Schema bloc detaliată a unui sistem robot Observaţie: În ultimul timp se utilizează termenul de actuator. fiind capabil să îşi autogenereze programul direct executabil. acceleraţii către sistemul de acţionare. în acest context. sunt introduse într-un dulap denumit dulap cu echipamente electrice şi electronice. Traducerea acestuia in limba română este a potrivi. Cu ajutorul panoului de învăţare operatorul uman (O.de feed-back) şi se constituie într-un S. OU poate comanda depunerea în memoria calculatorului a coordonatelor ţintă atinse de către elementele sistemului mecanic. teaching pendant. . Concepte. deplasează-te până în dreptul bolţului. 2. a ajusta.3. condu efectorul final spre o situare optimă pentru apucarea bolţului.L . Toate aceste elemente lucrează în buclă închisă (există legături de reacţie inversă . determină unde se află bolţul. Nu toate echipamentele electrice se află în acest dulap: • motoarele de acţionare şi traductoarele sunt amplasate pe sistemul mecanic. Cea de-a doua schemă reprezintă în detaliu partea electrică a unui robot. cu treabă de făcut. viteze. Exemplu: un robot inteligent “înţelege” o instrucţiune de tipul “du-te şi apucă bolţul”. care provine de la verbul to actuate din limba engleză. Sistemul de conducere al unui robot este implementat fizic cu echipamente electrice şi electronice care. de contact şi/sau forţă/ moment . tastatură si unitate de disc. Panoul de învăţare este prevăzut cu o tastatură alfanumerică (litere şi cifre) şi un afişaj alfanumeric. În dulap se află calculatorul central pentru care există display. • butoane pentru stabilirea regimului manual / automat. Lucrează cu programe elaborate la nivel task . pe când unul mai puţin inteligent va înţelege numai o succesiune de instrucţiuni de forma: 1. Pentru fiecare cuplă cinematică conducătoare este prevăzut câte un S. După ce a deplasat manual robotul. • ciupercă de avarie.U.C. 3. Panoul operator (P. 5. Este folosit în faza de programare a robotului când operatorul uman învaţă robotul ce are de făcut şi întocmeşte programul înscriind instrucţiune după instrucţiune.Cap. în majoritatea lor.

Cap. 2. Concepte, definiţii şi terminologie

27

28

CONDUCEREA ROBOŢILOR

2.2.1. Sistemul de acţionare
După cum s-a arătat şi mai sus, la nivelul fiecărei cuple cinematice conducătoare este amplasat câte un motor de acţionare. Motorul poate fi electric, hidraulic sau pneumatic. Observaţie: după tipul de motoare cu care este dotat şi robotul primeşte denumirea de robot cu acţionare electrică, hidraulică, pneumatică sau mixtă. Motorul generează mişcarea elementelor mecanice. Mişcarea este transmisă (prin blocul transmisie) la elementele cuplelor cinematice conducătoare acţionate. Motorul este comandat de un circuit electronic şi primeşte energie de la o sursă de alimentare. Întregul ansamblu, compus din motor şi circuitele electronice care îl comandă, constituie un sistem de conducere locală (S.C.L.). Într-un robot există atâtea S.C.L.uri câte cuple cinematice conducătoare trebuie comandate. S.C.L.-urile sunt realizate cu o structură de sistem de reglare automată (S.R.A.). Observaţie: S.R.A. este un sistem în care reglarea se face automat, adică fără intervenţie din exterior, spre scopul final urmărit. Sistemul de acţionare se compune din mai multe S.C.L.-uri în funcţie de numărul de grade de mobilitate ale sistemului mecanic. Observaţie: În fig.3 s-a reprezentat un singur S.C.L. (S.R.A.) şi s-a indicat cu ”6×6” faptul că în sistemul de acţionare există 6 astfel de S.C.L.-uri deoarece s-a presupus că robotul are 6 axe. Întregul S.C.L. este condus de către un controler realizat cu microprocesor sau microcontroler. Acesta realizează funcţia de regulator: 1. preia mărimea de prescriere (poziţie, viteză, acceleraţie) de la generatorul de traiectorie; 2. preia informaţia cu privire la mişcarea executată în realitate de elementele mecanice (care este mărimea de reacţie), de la traductorul aferent; 3. calculează abaterea (eroarea) dintre mărimea de prescriere şi cea de reacţie; 4. calculează mărimea de comandă cu care se corectează abaterea; calculul se efectuează cu o formulă numită algoritm de reglare (proiectat de inginerii automatişti) utilizând valoarea curentă a abaterii; 5. transmite mărimea de comandă electronicii de putere şi prin aceasta motorului, pentru a imprima elementelor cuplelor cinematice conducătoare o mişcare în sensul anulării abaterii. Observaţii: 1. cele cinci puncte menţionate anterior se constituie în problema conducerii nemijlocite a elementelor unei cuple cinematice conducătoare (în contextul de faţă conducere nemijlocită însemnând conducere directă, fără intermediar); 2. în unele cazuri intervine şi blocul interpolator care generează puncte prescrise suplimentar;

3. o parte din transmisie şi frână (electromecanică) se consideră incluse în sistemul de acţionare. Astfel, prima roată dinţată, prima faţă a unui ambreiaj, fulia conducătare a unei curele etc. – după caz, se consideră că fac parte din sistemul de acţionare. Ideal ar fi ca un robot să poată fi condus folosind un regulator global care să controleze simultan toate mişcările de pe toate axele. Acest mod de conducere nu se implementează deocamdată deoarece: a) traductoarele carteziene care pot urmări mişcarea punctului caracteristic în spaţiu sunt extrem de scumpe la preciziile pretinse de aplicaţiile din roborică; b) legăturile dintre mişcările pe diferite axe se exprimă prin ecuaţii complicate (profund neliniare). c) volumul de calcule necesar pentru realizarea unei reglări globale este foarte mare şi nu se poate realiza în timp real cu nici un calculator convenabil, ca şi cost, la momentul actual. Din aceste motive, indiferent de modul în care se realizează conducerea robotului, mişcarea propriu-zisă a sistemului mecanic se conduce cu S.C.L.-uri dispuse la nivelul fiecărei cuple cinematice conducătoare. Este utilizată metoda de conducere distribuită a mişcărilor pe axe. Blocuri, de tip S.C.L., construite anume pentru conducerea unei singure axe mecanice sunt astăzi bine puse la punct. Sisteme de acest fel, precum şi senzorii/traductoarele aferente se produc la preţuri accesibile.

2.3. Funcţii ale sistemului de conducere al unui robot
Sistemul de conducere al unui robot a cărui schema bloc s-a prezentat în figura 2.1. are de efectuat mai multe seturi de calcule şi de operaţii: • calcule de cinematică prin care se determină elementele unei traiectorii: poziţii, viteze acceleraţii (termenul „determină” are aici semnificaţia se află şi acestea impun); • calcule de dinamică; • interpretarea informaţiilor de la senzori şi traductoare; • calcule aferente reprezentării interne în calculator a lumii înconjurătoare; • calcule aferente conducerii robotului , impuse de algoritmele de reglare, în care se ţine seamă şi de calculele de cinematică şi dinamică; • comanda sistemelor de acţionare şi realizarea conducerii nemijlocite a elementelor robotului; • dialogul cu operatorul uman, realizat cu ajutorul unor dispozitive adecvate (display, tastatură, unitate de disc) şi folosind programe corespunzătoare. Operaţiile şi calculele mai sus enunţate sunt efectuate într-o anumită ordine şi după anumite priorităţi, în funcţie de condiţiile unei aplicaţii concrete. Pentru fiecare grup de calcule pot exista calculatoare dedicate sau blocuri software (pachete de programe) specializate.

Cap. 2. Concepte, definiţii şi terminologie

29

30

CONDUCEREA ROBOŢILOR

Grupele de calcule şi comenzi enunţate anterior se pot împărţi principial în trei grupe mari de sarcini ale unui sistem de conducere al robotului.

A. Modelarea mediului Reprezentarea cu relaţii matematice a mediului de lucru, a elementelor braţului robotului şi completarea acestor reprezentări cu informaţii furnizate de senzori înseamnă modelarea mediului. Cu aceasta grupă de sarcini se face reprezentarea succesivă a etapelor procesului tehnologic (P.T.). şi se determină configuraţia dispozitivului de ghidare (D.G.) în fiecare etapă de proces. La roboţii mai puţin evoluaţi modelarea mediului se face prin învăţare. B. Specificarea, generarea si controlul mişcării Reprezintă grupa principală de sarcini ale sistemului de conducere al robotului. Scopul conducerii unui robot este acela de a determina sistemul mecanic să se deplaseze unde şi cum pretinde P.T. şi eventuale impuneri suplimentare. Observaţie: efectorul final (E.F.) al unui robot trebuie condus în anumite locuri cu o anumită orientare (contează şi poziţia şi orientarea sa, deci contează situarea E.F.). Conducerea presupune o etapă de specificare a mişcărilor, pornind de la condiţiile iniţiale date, şi o etapă de comandă si reglare a acestora în vederea executării lor corecte. C. Dialogul cu operatorul uman Această funcţie apare ca de la sine înţeleasă întrucât toate comenzile şi operaţiile efectuate de către sistemul de conducere se efectuează pe baza unui dialog cu operatorul uman. Dialogul este mijlocit de dispozitive hardware adecvate (tastatură, display, unitate de disc) şi se implementează cu limbajul de programare. Programele prin care se realizează modelarea mediului (grupa A) şi specificarea, generarea şi controlul mişcărilor (grupa B) presupun dezvoltări software laborioase, utilizându-se limbaje de programare de nivel înalt (Pascal, C++,…). Controlul mişcărilor presupune, în plus, elaborarea unor programe pentru controlerele de ax (microprocesoare). Acestea se programează în limbaj de asamblare (cel mai puţin evoluat limbaj de calculator). Pentru scrierea acestor programe

trebuie cunoscute în detaliu caracteristicile componentelor (microprocesor/microcontroler) care constituie controlerul. Realizarea programelor pentru grupele A şi B de sarcini revine numai programatorului cu experienţă, care concepe o structură software prin care robotul devine funcţional. Ansamblul acestor programe constituie software-ul de bază al robotului. Utilizatorul direct al robotului are la dispoziţie un umăr de instrucţiuni (limbajul „de programare a robotului”) compus, de regulă, din cca. 25-30 instrucţiuni. Acestea sunt date în cartea tehnică a robotului şi sunt, de fapt, numai nişte funcţii şi proceduri ale software-ului de bază. Cu acestea se scriu programele de utilizator, sau altfel spus, programele de lucru ale robotului. Un program de lucru constă din înşiruirea logică a unora dintre instrucţiunile din cartea tehnică a robotului şi nu presupune cunoştinţe înalte de programare. Aceste programe de lucru, prin care de fapt se realizează dialogul cu operatorul uman (grupa C), sunt preluate, prelucrate şi executate apoi de software-ul de bază.

32

CONDUCEREA ROBOŢILOR

Capitolul 3

MODELAREA MEDIULUI Grupa A de sarcini a conducerii unui robot
Reprezintă prima grupă de sarcini pentru un sistem de conducere al unui robot. Prin această grupă se reprezintă, în calculator, obiectele din mediul de lucru al robotului, părţi ale obiectelor, dispunerea lor relativă, situarea relativă a sistemului mecanic al robotului în raport cu obiectele din mediu. În ceea ce priveşte modelarea mediului există o deosebire importantă între roboţii simplii şi cei evoluaţi.

3.1. Programarea prin învăţare
Roboţii simplii lucrează în procese tehnologice rigide, în care operaţiile se repetă mereu într-un mod binecunoscut şi neflexibil. În aceste situaţii nu este necesară dezvoltarea unui software specializat în reprezentarea mediului în care operează robotul, respectiv pentru reprezentarea succesiunii etapelor procesului tehnologic. În aceste cazuri se procedează la învăţarea prin instruire a robotului (uneori se foloseşte termenul de programare prin învăţare). În literatura de limbă engleză se folosesc termenii: • teaching by doing, • teaching by showing, • teaching by learning, • teach and play back, toate cu înţelesul de programare prin învăţare în limba română. Învăţarea prin instruire se foloseşte în faza de întocmire a programului de lucru al robotului şi începe prin a deplasa manual (cu comenzi de la butoanele aferente) sistemul mecanic al robotului, până în punctele din spaţiu în care acesta trebuie să opereze. Ţinta este să se obţină, în punctele impuse de P.T., o orientare optimă pentru elementele dispozitivului de ghidare, astfel ca operaţia respectivă să se execute corect. Urmează apoi memorarea coordonatelor relative ale elementelor cuplelor cinematice conducătoare. Exemple de învăţare prin instruire: Sudura în puncte a caroseriei unui automobil. Se realizează din lemn sau din material plastic caroseria unui tip de autoturism. Pe machetă se reprezintă toate punctele în care trebuie aplicat câte un punct de sudură (de obicei sunt 500-600 astfel

de puncte). În faza de învăţare se alimentează cu energie întregul echipament. Un operator uman deplasează sistemul mecanic cu ajutorul panoului de învăţare (folosind butoanele anume prevăzute pentru punerea în mişcare a elementelor mecanice), succesiv la fiecare dintre punctele marcate pe machetă. În fiecare dintre puncte, OU trebuie să fie atent ca efectorul final (tip cap de forţă cu cleşte de sudură) să se situeze în punctul respectiv astfel încât sudura să se efectueze corect (evident, în această fază de învăţare, cleştele de sudură nu este alimentat). În momentul în care sistemul mecanic se configurează în situarea corectă pentru executarea corectă a operaţiei din punctul respectiv, OU apasă pe butonul de memorare de pe panoul de învăţare şi toate coordonatele transmise de traductoarele de pe robot sunt depuse în memoria calculatorului său. După memorarea coordonatelor aferente unui punct se trece la punctul următor ş.a.m.d. La încheierea fazei de învăţare, se trece robotul în regimul de funcţionare automat şi, fără a se alimenta capul de sudură, se generează mişcările spre punctele anterior învăţate. Acum se aplică corecturile eventual necesare. În etapa de verificare operatorul uman poate interveni de la panoul de învăţare pentru a opri robotul sau pentru a corecta configuraţia, dacă acest lucru se impune. Observaţie: de cele mai multe ori etapa de verificare se execută în “slow motion” (mişcare cu încetinitorul) pentru a urmări acurateţea mişcărilor robotului După etapa de verificare şi corectare, când punctele au fost corect memorate şi reproduse, se înregistrează pe un disc toate coordonatele atinse, pentru ca acestea să poată fi utilizate ori de câte ori este nevoie. Observaţii: de cele mai multe ori, în faza de învăţare, operatorul uman realizează simultan şi întocmirea programului de lucru propriu-zis. Pe panoul de instruire sunt prevăzute taste speciale (cu litere sau cuvinte) cu care operatorul uman poate înscrie instrucţiuni ale programului, pe care apoi le completează cu coordonatele memorate. Astfel, la sfârşitul fazei de învăţare, după verificare, OU obţine pe disc întregul program de lucru pentru procesul învăţat. Vopsirea prin pulverizare. Se foloseşte în cazul vopsirii unor suprafeţe plane şi suficient de mari. Un OU, vopsitor cu experienţă, participă direct la etapa de învăţare. Se leagă, în sensul propriu al cuvântului, mâna OU de efectorul final al robotului şi se alimentează partea electrică a robotului. Operatorul uman execută operaţia de vopsire, iar sistemul mecanic al robotului execută, în tandem cu OU, mişcarea respectivă. În acest caz, butonul de memorare a coordonatelor de pe panoul de instruire se trece pe poziţia memorare automată şi, la anumite intervale de timp, se memorează (automat) coordonatele atinse în mişcare de către dispozitivul de ghidare. Frecvenţa de memorare este cuprinsă între 20 şi 200 Hz, în funcţie de viteza de operare a calculatorului. Cu cât calculatorul este mai rapid se înregistrează puncte mai des, deci memorarea se face cu o frecvenţă mai mare, obţinându-se o precizie mai bună.

P. Deşi învăţarea prin instruire este caracteristică roboţilor mai puţin evoluaţi. Astfel se economiseşte. Există situaţii în care dimensiunile de gabarit ale robotului nu permit legarea fizică cu OU.2. configuraţia sistemului mecanic cu care se efectuează corect operaţia tehnologică din etapa respectivă. Fie cazul unui efector final tip dispozitiv de prehensiune cu două degete (fig. Se comandă memorarea (automată sau manuală) a coordonatelor atinse de robotul adevărat. 3.altfel “ (“if…. în fiecare etapă de proces. În procese Fig. 3. Exemple: P – pin. Apoi fiecărui obiect. • apar situaţii neprevăzute sau imprevizibile. timp şi putere de calcul.3.then …. echipamentul de conducere al robotului trebuie dotat cu un anumit nivel de inteligenţă pentru a deveni capabil să ia decizii. Pentru aceste situaţii echipamentul de conducere al robotului trebuie dotat cu posibilitatea de a-şi reprezenta obiectele din mediu şi de a stabili ordinea de desfăşurare a etapelor de proces. tehnologice de tipul indicat mai sus nu se poate folosi învăţarea prin instruire deoarece desfăşurarea procesului tehnologic nu este apriori complet cunoscută.Cap.3.. În cele ce urmează se prezintă mijloacele matematice utilizate în robotică pentru a se implementa o modelare propriu-zisă. SC ataşat EF tip DP cu două degete Cei trei versori au următoarele orientări: • a versorul apropiere (approach) – este orientat după direcţia şi sensul apropierii efectorului final de obiectul asupra căruia trebuie să se opereze..) triortogonal. substanţial. Legătura electrică dintre pilot şi robot poate fi realizată prin fire sau wireless. Acest sistem de coordonate ataşat primeşte şi el numele obiectului aferent. atunci…. etapele procesului tehnologic nu se succed într-o ordine cunoscută. Grupa A de sarcini a conducerii unui robot 33 34 CONDUCEREA ROBOŢILOR Învăţarea cu utilizarea unei structuri master-slave. 3. Operatorul uman se leagă de efectorul final al pilotului şi execută operaţiile impuse de procesul tehnologic. . Scopul modelării mediului este de a determina (de a afla).else ”). De multe ori primesc nume şi părţi ale obiectelor sau anumite situări relative ale acestora.motion.3. În aceste cazuri se realizează un robot pilot care reproduce la scară (mai mică sau mai mare. Mai întâi obiectele primesc un nume (name). La învăţare. Reprezentări matriciale în robotică Metoda folosită în robotică pentru modelarea mediului este cea de reprezentare matriceală a situării relative între obiecte.. ci este o metodă prin care se evită. traiectoriile nu pot fi planificate dinainte şi/sau pot suferi modificări. după caz) robotul adevărat. De pildă la roboţii cu gabarite mari sau foarte mari şi la microroboţi. În punctul de sculă (T. utilizarea de relaţii matematice (uneori sofisticate). o . În timpul învăţării. Configuraţia dispozitivului de ghidare determinată cu metodele de modelare a mediului este transmisă apoi blocului care înfăptuieşte conducerea propriu-zisă a sistemului mecanic.1). Şi în acest caz se procedează la verificarea şi corectarea mişcărilor învăţate impunând robotului mişcări slow. a .tool point) se ataşează EF un sistem de coordonate format din versorii n .. atât robotul pilot cât şi cel învăţat se menţin alimentaţi cu tensiune şi execută mişcările în tandem cu OU. întrucât nivelul de inteligenţă al robotului este scăzut (calculatorul său nu este performant).. CAM – cameră de luat vederi. Învăţarea prin instruire nu este o modelare a mediului în sensul propriu al cuvântului. metoda se utilizează şi la roboţi evoluaţi pentru cazul proceselor sau etapelor de proces neflexibile. Pentru astfel de cazuri. • survin situaţii în care trebuie luate decizii de genul: “dacă…. Reprezentări matematice pentru mediul în care acţionează robotul Există situaţii în care procesul tehnologic nu este complet cunoscut înainte de a se derula: • evenimente din anumite etape ale procesului tehnologic care depind de evenimente petrecute în etapele precedente. de fapt. părţi sau situări care a primit nume îi este ataşat câte un sistem de coordonate (S. se depun succesiv în memoria calculatorului coordonatele necesare situărilor elementelor mecanice în fiecare etapă a procesului tehnologic. Modelarea mediului.C.1. În program aceste nume se reprezintă prin simboluri (de obicei litere). H – gaură.

de regulă. Matricea T se compune din: ⎡n x ⎢n y T= ⎢ ⎢n ⎢ z ⎢0 ⎣ ox oy oz 0 ax ay az 0 px ⎤ py ⎥ ⎥ pz ⎥ ⎥ 1⎥ ⎦ (3. care exprimă numele sistemului de coordonate a cărui poziţie şi orientare o descrie (“ pe cine”). la rândul său.2. Se ataşează bazei robotului un sistem de coordonate numit R.) Se alege un sistem de coordonate universal U (cu o situare oarecare). Poziţia şi orientarea sistemului de coordonate ataşat efectorului final. • ax. de Ref. pentru a completa un sistem de 3 axe ortogonale. az sunt componentele versorului a al SC ataşat EF (unui obiect) în raport cu un alt sistem de coordonate (cel de referinţă).4. obiectului.) este dată de vectorul de poziţie p . sculei. ny. cu două degete. Indicii pot fi cifre sau litere. oy. acest lucru înseamnă că se cunoaşte matricea[sTH ]. este fixat rigid de podeaua halei printr-un dispozitiv de lucru DL. Poziţia originii acestui sistem de coordonate în raport cu sistemul de coordonate de referinţă (S. astfel încât situările obiectelor din mediu şi ale elementelor robotului să se poată exprima cât mai simplu.Cap. matricea de situare a găurii H faţă de scula S. Exemplu: Fie cazul unui proces tehnologic PT în care un robot industrial RI cu efectorul final EF tip dispozitiv de prehensiune DP. Se presupune că într-o anumită etapă a procesului tehnologic se cunoaşte situarea sculei în raport cu gaura – situare impusă de modul în care trebuie efectuată operaţia tehnologică aferentă etapei respective de proces. Reprezentarea etapelor unui proces tehnologic Pentru a reprezenta obiectele implicate într-un proces tehnologic se stabileşte un sistem de coordonate de referinţă. doi indici: a) indicele dreapta jos.3. 3. Dispozitivul de ghidare al robotului şi efectorul final – cu scula prinsă – trebuie să opereze asupra unui obiect O situat într-o hală (de exemplu să-l găurească). • n versorul normal (normal) – n = o × a . • px. ay. py. nz sunt componentele versorului n al SC ataşat EF (sau în general unui obiect) în raport cu un alt sistem de coordonate (cel de referinţă. Grupa A de sarcini a conducerii unui robot 35 36 CONDUCEREA ROBOŢILOR • o versorul orientare (orientation) – are orientarea după direcţia liniei de unire a degetelor efectorului final. dispozitivului de lucru şi găurii (ca parte a obiectului). • un operator care aplicat unui sistem de coordonate îl transformă într-un altul. Modelarea mediului.2) submatricea de orientare Submatricea de poziţie submatricea de poziţie exprimă în acelaşi timp şi o translaţie (după vectorul p ) – ne arată la ce translaţie trebuie supusă originea sistemului de coordonate (cel de referinţă. . pz sunt componentele versorului de poziţie care exprimă poziţia originii sistemului de coordonate ataşat efectorului final (unui obiect în general) în raport cu axele unui alt SC (cel de referinţă. Observaţie: de fiecare dată expresia matricii T este aceeaşi. • ox. Observaţie: în notaţiile pentru matricea T se folosesc. în raport cu un alt sistem de coordonate (cel de referinţă. de pildă) se reprezintă cu matricea de situare numită şi matrice de transformare sau matrice transformare.C. ⎡ nx ⎢n T = ⎢ y ⎢ nz ⎢ ⎣0 unde: ox oy oz 0 ax ay az 0 px ⎤ py ⎥ ⎥ pz ⎥ ⎥ 1 ⎦ (3.1) 3. Obiectul. • nx. are prinsă în efectorul final o sculă S. iar dacă cel din stânga sus este 0 nu se mai scrie. De asemenea se ataşează sisteme de coordonate efectorului final. oz sunt componentele versorului o al SC ataşat EF (unui obiect) în raport cu un alt sistem de coordonate (cel de referinţă). de pildă). de pildă) pentru a ajunge în originea altui SC. (fig. de pildă). Matricea T poate fi interpretată în trei moduri: • ca matrice de situare care exprimă situarea relativă (poziţie şi orientare) a două sisteme de coordonate. b) indicele din stânga sus care exprimă numele sistemului de coordonate faţă de care se exprimă poziţia şi orientarea (“faţă de cine”). • ca transformare la care trebuie supus un sistem de coordonate pentru a deveni altul (de aici şi numele). este perpendicular pe o şi a cu sensul determinat de regula burghiului. Submatricea de orientare ne arată la ce rotaţii trebuie supuşi versorii triortogonali ai unui sistem de coordonate pentru a obţine orientările versorilor triortogonali ai altui SC. Din punct de vedere matematic. dar interpretarea semnificaţiei acesteia este diferită. De obicei U este legat rigid de hala în care îşi desfăşoară activitatea robotul industrial şi se alege convenabil. considerat absolut şi numit sistem de coordonate universal (sau universul U).

4) Fig. pot fi reprezentate şi grafic ca în figura 3. În consecinţă. Reprezentarea grafică a ecuaţiei fundamentale de modelare a unei etape de proces Observaţii: 1) O transformare poate fi reprezentată şi prin graful transformării. Folosind un raţionament similar cu cel precedent obţinem: ⎡ U TH ⎤ = ⎡ U TDL ⎤ × ⎡ DL TO ⎤ × ⎡ O TH ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ Relaţiile (1E) şi (2E) exprimă acelaşi lucru. În acest exemplu.3. De exemplu.3) În relaţia de mai sus s-a descris poziţia şi orientarea găurii în raport cu universul. În continuare. Situările relative între obiecte şi transformările succesive aplicate sistemelor de coordonate ataşate acestora.3. pe traseul legat de robot. alegând un traseu legat de robot.2. Observaţie: ordinea de aplicare a transformărilor nu se poate inversa (înmulţirea matricilor nu este comutativă). Graful unei transformări este o săgeată cu originea în sistemul de coordonate folosit ca referinţă şi cu vârful în sistemul de coordonate a cărui situare o exprimă. situarea găurii în raport cu baza robotului industrial se determină cu relaţia: ⎡ R TH ⎤ = ⎡ R TEF ⎤ × ⎡ EF TS ⎤ × ⎡ S TH ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (3. În general în toate aplicaţiile de robotică exprimarea situărilor se face în raport cu universul U. Aplicând [UTH] sistemului de coordonate universal se ajunge la sistemul de coordonate ataşat găurii. Grupa A de sarcini a conducerii unui robot 37 38 CONDUCEREA ROBOŢILOR Problema de modelare constă în a exprima (matematic) poziţia şi orientarea întregului robot (cu scula prinsă) pentru a efectua o operaţie tehnologică şi de a exprima situările relative ale obiectelor în etapa respectivă de proces. astfel că rezultă egalitatea: (2E) ⎡ U TH ⎤ = ⎡ U TDL ⎤ × ⎡ DL TO ⎤ × ⎡ O TH ⎤ = ⎡ U TR ⎤ × ⎡ R TEF ⎤ × ⎡ EF TS ⎤ × ⎡ S TH ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (E) Această ecuaţie exprimă o etapă a procesului tehnologic şi se numeşte ecuaţia fundamentală în modelarea mediului. 3. pentru a exprima situarea găurii în raport cu efectorul final se procedează la următoarea succesiune de transformări matriciale: ⎡ EF TH ⎤ = ⎡ EF TS ⎤ × ⎡ S TH ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (3. iar transformarea [EFTS] se cunoaşte întrucât se ştie cum anume este prinsă scula în efectorul final. transformarea [EFTH] este complet determinată.3) ne arată la ce transformări succesive trebuie supus sistemul de coordonate al EF al robotului pentru ca situarea efectorului final al robotului să ajungă să coincidă cu sistemul de coordonate al găurii. Exemplu de proces tehnologic robotizat Relaţia (3. transformarea [STH] este cunoscută din modul cum trebuie efectuată operaţia tehnologică.3.Cap.3. Situarea găurii în raport cu universul U poate fi exprimată şi pe un traseu legat de celelalte obiecte din mediul de lucru al robotului (fără robotul industrial). Fig. exprimate cu ecuaţii ca cele de mai sus. Modelarea mediului. Fiecare etapă a procesului tehnologic robotizat se exprimă prin câte o ecuaţie de acest gen. În acest caz situarea găurii în raport cu universul este: ⎡ U TH ⎤ = ⎡ U TR ⎤ × ⎡ R TEF ⎤ × ⎡ EF TS ⎤ × ⎡ S TH ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ (1E) .

7. • [STH] se cunoaşte din modul de efectuare al operaţiei tehnologice (este impusă de proces).3. Se adaugă suplimentar comenzi şi decizii pe baza informaţiilor furnizate de senzori.Cap. 8. De altfel. • [UTDL] se cunoaşte din dispunerea dispozitivului de lucru în hala de lucru. se consideră că întregul proces este comandat de către calculatorul robotului.3. Obiectele din mediu.3. Din ecuaţia fundamentală pentru modelarea mediului se poate calcula [RTEF] cu relaţia: . din ele. părţi ale obiectelor şi situări importante pentru desfăşurarea procesului tehnologic primesc câte un nume. configuraţia sistemului mecanic în fiecare etapă de proces. Se exprimă etapele procesului tehnologic cu ecuaţii matriceale. care efectuează după aceea conducerea robotului spre configuraţiile necesare efectuării operaţiei din etapa respectivă a procesului tehnologic.4. Modelarea mediului. Se construiesc structuri de date specifice pentru reprezentarea. Reprezentarea unei etape de proces cu grafuri Reprezentarea cu graful transformărilor este utilă nu numai pentru că este sugestivă ci şi pentru că permite utilizarea graficii pe calculator. Poziţia şi orientarea pinilor de pe curea este sesizată de o cameră de luat vederi (fig. 3.6).5. 4. • [DLTO] se cunoaşte din modul de prindere al obiectelor în dispozitivul de lucru. Valorile obţinute pentru [RTEF] în fiecare etapă de proces sunt apoi supuse analizei cinematice inverse şi transmise blocului (calculatorului) pentru specificarea şi generarea mişcărilor. Se alcătuiesc structuri de date specifice pentru reprezentarea sistemelor de coordonate şi a situărilor relative. 3. Se extrag valorile situărilor [RTEF] în fiecare etapă de proces şi se transmit blocului/calculatorului care înfăptuieşte conducerea propriu-zisă. le “înţelege” şi le “traduce” în ecuaţii matriceale corespondente. 3. 3. Fig. succesive şi fără echivoc. Observaţii: 1) Din fiecare ecuaţie de reprezentare a câte unei etape de proces se calculează matricea [RTEF] care exprimă de fapt configuraţia braţului robotului faţă de baza robotului în etapa respectivă de proces.5. • [OTH] se cunoaşte deoarece se ştie unde trebuie efectuată aura în obiect. a fiecărei etape. Calculatorul preia informaţiile introduse în grafic. Procesul tehnologic este defalcat în etape distincte. utilizatorul poate reprezenta pe ecranul calculatorului o etapă a procesului tehnologic cu săgeţi.6. această sarcină îi revine inginerului tehnolog. 2. Se procedează la etapizarea procesului tehnologic. o etapă a procesului tehnologic poate fi reprezentată ca în figura nr. 6. Cu o astfel de dotare. 3. 2) Scopul scrierii ecuaţiilor fundamentale este tocmai acela de a se calcula. Exemplu de modelare a mediului pentru un proces tehnologic Este cazul unui braţ de robot care trebuie să introducă nişte pini în găurile unui obiect cubic. 5. Etapele de realizare a modelării mediului La modelarea mediului trebuie parcurse următoarele etape: 1. Graful unei transformări 2) Folosind graful transformărilor şi ecuaţiile de exprimare a transformărilor. Fiecărui nume i se ataşează câte un sistem de coordonate triortogonal reprezentabil în raport cu un alt sistem de coordonate prin matricea de transformare (situare). Pinii sosesc pe cureaua transportoare a unui conveior. 3) În ecuaţia fundamentală pentru modelarea mediului (E) se cunosc toate situările cu excepţia lui [RTEF]: • [UTR] se cunoaşte din amplasamentul robotului în hală. • [EFTS] se cunoaşte din forma şi dimensiunile geometrice ale sculei şi din modul de prindere al sculei de efectorul final. comandat de calculatorul robotului.5. Grupa A de sarcini a conducerii unui robot 39 40 -1 -1 CONDUCEREA ROBOŢILOR ⎡ R TEF ⎤ = ⎡ U TR ⎤ × ⎡ O TDL ⎤ × ⎡ DL TO ⎤ × ⎡ O TH ⎤ × ⎡ S TH ⎤ × ⎡ EF TS ⎤ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ ⎣ ⎦ -1 (E1) Fig. în bloc.

• analiza imaginilor. 6 – se opreşte mişcarea dispozitivului de ghidare în momentul contactului pinului (apucat în dispozitivul de prehensiune) cu gaura. 7 – se aliniază pinul după direcţia axei găurii.6. CAM – cameră de luat vederi. Grupa A de sarcini a conducerii unui robot 41 42 CONDUCEREA ROBOŢILOR Fig. P – situarea pinului în raport cu universul. cu observaţia că operaţia 1 pentru pinul 2 poate fi executată în timpul efectuării operaţiilor 2-10 pentru pinul 1 (multiplexare în execuţie).situarea dispozitivului de prehensiune în raport cu pinul la strângere (apucarea pinului). Numele folosite în acest proces sunt: CAM – situarea camerei de luat vederi în raport cu universul.situarea efectorului final. succesive. fiind dotat cu calculator. fără echivoc. De exemplu: P – pin. convenabilă apucării).3. Procesarea imaginilor presupune următoarele etape: • achiziţie de imagini cu camera. ceea ce înseamnă determinarea obiectelor căutate. H – gaură (parte a obiectului). În exemplul ales. o. cu pinul apucat. PD – Pin Departure – situarea efectorului final în raport cu vechea poziţie a pinului în momentul depărtării(plecării) sale. după concepţie. configuraţia braţului de robot fără efectorul final). recunoaşterea de forme ş. Şi părţi de interes ale obiectelor primesc câte un nume. determinarea poziţiei şi orientării acestora. de tip n .a. 2 – folosind informaţia furnizată de sistemul de prelucrare a imaginilor. PA – Pin Approach – situarea efectorului final în raport cu pinul în apropierea acestuia (înainte şi după apucare). 10 – se îndepărtează dispozitivul de ghidare de obiectul cubic. De pildă: • PA – (Pin Approach) – poziţia şi orientarea efectorului final în raport cu pinul într-un moment anterior apucării (poziţia apropiată de pin. în situarea de apucare optimală a acestuia. În continuare se repetă aceleaşi operaţii pentru inserarea celui de-al doilea pin. Modelarea mediului. se atribuie câte un nume şi situărilor importante din procesul tehnologic. PC – situarea pinului în raport cu camera de luat vederi. Inginerului mecanic tehnolog îi revine sarcina de a descrie procesul tehnologic în etape de operaţii distincte. cu pinul apucat. Echipamentul de procesare a imaginii. Fiecărui nume i se ataşează câte un sistem de coordonate triortogonal de versori unitate. Sistemul de prelucrare a imaginilor determină poziţia şi orientarea pinului pe curea. 9 – se eliberează pinul din dispozitivul de prehensiune. respectiv asupra fidelităţii modelului pe calculator al procesului. 3.Cap. Fiecare obiect din procesul tehnologic primeşte câte un nume. 3 – dispozitivul de prehensiune apucă pinul. Procesul tehnologic robotizat. . Etapizarea procesului tehnologic robotizat reprezintă un pas foarte important în modelarea mediului întrucât ea are implicaţie directă asupra eficienţei robotizării procesului. H – situarea obiectului cubic în hală. Z – situarea bazei robotului în raport cu universul. a . • îmbogăţire (enhacement) şi refacerea părţilor din imagine deteriorate în timpul achiziţiei. 5 – se comandă deplasarea dispozitivului de ghidare până când dispozitivul de prehensiune. în apropierea găurii în care se face inserarea. Recunoaşterea şi culegerea unor pini de pe o curea transportoare Observaţii: Camera face parte dintr-un sistem de prelucrare a imaginilor – sistem de sine stătător dotat cu un calculator separat care procesează imaginile preluate de camera de luat vederi. De asemenea. ajunge în dreptul primei găuri a obiectului cubic. trebuie scris într-o formă cât mai adecvată reprezentării sale prin programe pentru calculator. • PHA –(Pin Hole Approach) . E – situarea efectorului final în raport cu capătul mecanismului generator de traiectorie. se comandă deplasarea sistemului mecanic astfel încât dispozitivul de prehensiune să se apropie până deasupra pinului. 4 – se ridică pinul de pe cureaua transportoare. 8 – se inserează pinul în gaură. PG – Pin Grasp . este capabil să prelucreze foarte multe date şi să transfere calculatorului robotului informaţiile cerute de acesta în formă adecvată. T6 – situarea capătului mecanismului generator de traiectorie în raport cu baza robotului industrial (de fapt. etapele procesului tehnologic se succed astfel: 1 – conveiorul primeşte de la calculatorul robotului industrial un semnal de pornire şi se opreşte în momentul în care sistemul de prelucrare a imaginilor îi semnalează că un pin a fost detectat pe cureaua transportoare.

7. Pentru etapele enunţate în procesul ales. Reprezentarea grafică a etapei a 3-a a procesului 3.7.2 situarea găurii i în raport cu obiectul cubic.3. PAL – Pin ALigned – situarea pinului în raport cu axa găurii în poziţia de aliniere cu aceasta. apucat în dispozitivul de prehensiune. • legături între transformări. grafurile transformărilor sunt: Fie etapa a 3-a din procesul tehnologic considerat. Pentru ca viteza de calcul să sporească şi pentru corelarea mai comodă a datelor se realizează structuri de date compacte care să conţină: • elementele variabile ale matricii transformare. • date suplimentare (eventual).7. PHA – Pin Hole Approach – situarea pinului apucat de dispozitivul de prehensiune în apropierea unei găuri. şi 3.8. PH – Pin Hole – situarea pinului inserat în gaură. Fig. 3.8. Graful transformărilor în etapa a 3-a a procesului Fig. Modelarea mediului. Grupa A de sarcini a conducerii unui robot 43 44 CONDUCEREA ROBOŢILOR HRi – i = 1. când dispozitivul de prehensiune apucă pinul.3. PCH – Pin Contact Hole – situarea pinului.Cap. Structuri de date specifice modelării mediului Programele de modelare a mediului operează cu matrici de transformare (de situare). la contactul cu gaura. . Graful transformărilor este reprezentat în figura 3. Cu aceste denumiri etapele procesului tehnologic se reprezintă cu ecuaţii matriceale – ecuaţii de transformare şi/sau graful acestora.

Grupa A de sarcini a conducerii unui robot 45 46 CONDUCEREA ROBOŢILOR 3. a.y. „Valid” ia valoarea „false” dacă asupra transformării respective s-au operat modificări. culori. 3.1. o. Ideal. Reprezentarea unui vector de poziţie Observaţie: se vor prezenta variabile implementate în limbajul PASCAL pentru că în robotică s-a folosit de multă vreme acest limbaj şi pentru acest limbaj se consideră foarte cunoscut. • “valid” este o variabilă de tip logic (care poate avea valorile „true” sau „false” – adevărat sau fals – variabile de tip boolean). Localizarea unui tip articol în memoria calculatorului se face cu ajutorul unor indicatori (pointeri). o. 3. Se spune că: „tipul vector este un articol compus din trei elemente reale”. prin care se înţelege un pachet de informaţii cu privire la variabile.3.Cap. Tipul vector 3.7. type transpointer = ↑ transformare transformare = record n.3. Deocamdată astfel de tipuri fizice nu au fost puse la punct. 3. Tipul termen este un grup de trei pointeri păstraţi împreună în memorie şi foloseşte la reprezentarea modului în care un tip transformare este inclus într-o ecuaţie matriceală (ce descrie o etapă de proces). semnificaţia notaţiilor este: care se păstrează împreună. y şi z sunt proiecţiile unui vector. Tipul termen Este o structură de date folosită pentru reprezentarea unui termen dintr-o ecuaţie matricială (ecuaţie care descrie o etapă din procesul tehnologic). Un tip (de variabile) mai evoluat este tipul articol (type record). Schematic tipul vector se reprezintă ca în figura nr. .10.z: real end. rigidităţi. numit transpointer (pointer de transformare). P este un termen potrivit pentru a fi reprezentat cu tipul descris în acest paragraf.adică direct vizibilă de programator). Elementele x. Această variabilă este de tip articol (record) şi permite păstrarea împreună în memoria calculatorului a tuturor elementelor componente (reale) la un loc. Modelarea mediului. p sunt variabile de tip vector (fiecare conţine câte trei numere reale) • “inversa ” este un pointer care indică la tipul aferent transformatei inverse. În reprezentarea obiectelor folosind tipuri geometrice sunt păstrate împreună informaţii cu privire la dimensiunile geometrice ale obiectului. Observaţie: specifică pentru modelarea mediului este operarea cu tipuri. rugozităţi ale suprafeţelor. Tipul transformare este o variabilă de tip articol (record) ce conţine 4 vectori şi 3 câmpuri suplimentare de memorie.7. Fig.…. inversap: boolean end. Un important tip geometric este tipul transformare: Acest pointer se include în pachetul de date memorat la un loc.10. Accesul la tipul transformare este printr-un pointer (↑). Acestea sunt elementele unei matrici T. p: vector. • “inversap” este tot o variabilă booleană care are valoarea „true” dacă structura de date este aferentă unei transformări inverse (ajută la parcurgerea rapidă a listelor de date). pentru robotică ar fi dacă s-ar crea tipuri fizice în care să se memoreze la un loc informaţiile cu privire şi la alte proprietăţi fizice cum ar fi: mase.2. pentru se a găsi rapid unde anume în memorie se află depusă matricea inversă. după axele unui sistem de coordonate de referinţă.9: În figura 3. Pentru definirea unui vector se foloseşte tipul vector ca o variabilă de tip articol cu trei elemente reale: type vector = record x. Fig. inversa: transpointer. Reprezentarea conţinutului pentru tipul transformare • n.7.3. a.10. valid: boolean. Variabila tip transformare este un pachet de date de forma reprezentată în figura 3. Această variabilă se foloseşte la verificarea rapidă cu privire la modificările situărilor obiectelor din mediul în care operează robotul industrial. Deocamdată acestea sunt tipuri geometrice. În PASCAL structurile de date sunt definite folosind tipuri de date. Tipul transformare Se foloseşte la reprezentarea unei matrici transformare.De exemplu în ecuaţia Z X T6 X E = P X PA.9. deoarece în rezolvarea ecuaţiilor matriceale apar frecvent şi matricile inverse. Observaţie: un pointer este un index care specifică “adresa” la care se află tipul respectiv în memorie (în PASCAL adresa concretă nu este transparentă.

indică pointerul transpointer: • „următor” este un pointer care indică la o altă variabilă de tip termen şi anume la cea care corespunde următorului termen din membrul ecuaţiei (termenul următor în dreapta). 3. E-1 care indică la transformarea aferentă propriu-zisă). trans: transpointer end. acest lucru înseamnă că pointerul respectiv nu indică nicăieri (termenul reprezentat este ultimul termen). În PASCAL . Reprezentarea conţinutului unui tip termen şi a conexiunii sale cu tipul transformare aferent La grupul de trei indicatori. Modelarea mediului. pentru ecuaţia Z X T6 X E = P X PA. tot ca o variabilă de tip articol: type poziţiepointer = ↑ poziţie poziţie = record t6ptr. Grupa A de sarcini a conducerii unui robot 47 48 CONDUCEREA ROBOŢILOR type termpointer = ↑ termen termen = record următor. Doi termeni şi conexiunile realizate la inversele acestora Fig. Fig.5.14. inv: termpointer. Z-1. Ultimul termen al acestui membru are câmpul „următor” = NIL.3. • „trans” este un pointer care indică la variabila transformare propriu .11. Mai întâi se defineşte tipul poziţie (fig.zisă (indică unde anume se află tipul transformare unde este de fapt depusă matricea). De exemplu.7. Fiecare dintre tipurile termen incluse în această structură de date conţine câte un transpointer (notaţi pe fig. T6-1.7.Tipul membru al ecuaţiei Pentru a spori mai mult viteza de calcul se procedează la construcţia unui întreg membru al ecuaţiei transformare. ce alcătuiesc tipul termen (fig.). Reprezentarea unei ecuaţii transformare Datele aferente unei ecuaţii matriciale.15). Reprezentarea unui membru al unei ecuaţii transformare Fig.3.Cap. se pot reprezenta şi ele grupat.12. T6.3.4. Z. • „inv” e un pointer care indică la variabila de tip termen aferentă transformării inverse (pentru că şi matricea inversă apare într-o ecuaţie matriceală). membrul stâng se realizează ca un pachet de date obţinute prin înlănţuirea tipurilor termen.3. Conexiunea între două tipuri termen şi tipurile transformare aferente 3. care exprimă o anume etapă din procesul tehnologic. 3.3. Fig.13. sculăptr: termpointer end.3. E.14.11.3.

O altă alternativă de abordare a modelării în robotică este aceea de a utiliza perechi cuaternion-vector.5) . Motivele pentru care cuaternionii au fost definiţi sunt: • pentru a găsi o modalitate de a defini împărţirea vectorilor.fig.3. i = 0 ÷ 3 (3.15. modelarea translaţiilor şi rotaţiilor în spaţiul tridimensional se face folosind transformări omogene.15. 3.t) care indică locul unde se află tipul transformare aferent (matricea propriu-zisă).16.Cap. utilizează metoda de conducere cunoscută (R.1. trebuie utilizate entităţi cuadruple. Aceşti doi pointeri indică în interiorul unui lanţ de tipuri termen (lanţ poziţie . Introducere În mod obişnuit. Apoi se construieşte o structură de date tip poziţie. Teoria cuaternionilor a fost introdusă pentru prima dată în matematică în anul 1853 de Hamilton. Este necesar să se adauge un al patrulea parametru real.). Fiecare tip termen din acest lanţ conţine câte un pointer (cel din mijloc . Modelarea mediului. Metoda prezentată a fost denumită “Controlul traiectoriei carteziene”. pe care Hamilton le-a numit cuaternioni. p 2 . Hamilton a demonstrat că un cât al doi vectori nu se poate reprezenta printr-un vector descris cu numai trei parametrii reali.Paul) dar foloseşte cuaternioni la reprezentarea rotaţiilor.8. Observaţie: termenii aferenţi transformărilor inverse sunt legaţi între ei „ pe dos” deoarece în rezolvarea ecuaţiei matriceale inversele se înmulţesc în ordine inversă decât cele directe.3. i = 0 ÷ 3 q i ∈ ℜ. Tipul poziţie este compus in doi pointeri (t6ptr şi sculăptr). Cuaternioni 3.Fiecare tip termen este legat de un altul după modul în care el se situează în ecuaţia respectivă. • pentru a se defini un tip de produs vectorial. p1 . • “sculăptr ” este un pointer care indică la tipul termen aferent extremităţii sculei. q 2 . Tipul pozţie În figura 3. Lanţul poziţie p = (p 0 . 3.3.P. construit corespunzător unei ecuaţii ce descrie o etapă a PT.16. • o entitate hipercomplexă. p 3 ) q = (q 0 . Modul cel mai simplu de reprezentare al unui cuaternion este ca un cuadruplu de numere reale.: • “t6ptr ” este pointerul care arată unde anume se află tipul termen aferent lui T6. q 3 ) p i ∈ ℜ.8. Deci. Elemente de algebră a cuaternionilor Un cuaternion poate fi definit ca: • un cuadruplu de numere reale. Dacă p şi q sunt doi cuaternioni: Fig. Se constituie o înlănţuire de tipuri termen: mbs – membrul stâng şi mbd – membrul drept. q1 . • un “vector” cu patru dimensiuni. În 1979 Taylor a remarcat pentru prima dată că dacă la un robot se reprezintă rotaţiile cu cuaternioni calculul este mai eficient. 3.2. iar mişcarea sistemului mecanic este mai lină. Grupa A de sarcini a conducerii unui robot 49 50 CONDUCEREA ROBOŢILOR Fig. cu care se reprezintă o etapă a procesului tehnologic robotizat.8.

j.18) q 1q 2 = − v 1 ⋅ v 2 + v 1 × v 2 (3. b1 .8) de înmulţire dată de Hamilton.0. s ⋅ p 2 .este produsul cuaternional scalar-scalar (identic cu produsul a doi termeni reali). v ] . a.14) (3. cu o singură unitate 1. v 2 ] = (0. a1 .10) (3. Astfel. v1 ] = (0. 0. a. Acesta din urmă având s= 0 a fost denumit vector-cuaternion sau ternion şi reprezintă imaginea unui vector real în spaţiul cuadridimensional de bază (1. j.16) Observaţie: produsul cuaternional se scrie pq fără a se utiliza vreun simbol “× “ sau “ · ” între termenii produsului.13) Notând i. c).8) ai + bj+ ck s − (a i + b j + c k s2 − a2 + b2 + c2 s − (ai + bj + ck ) s2 + a2 + b2 + c2 ) (3.1) j = (0. prin următorul tabel de înmulţire al elementelor bazei: e1 e2 e3 e4 e1 e1 e2 e3 e4 e2 e2 . obţinut prin combinarea unui scalar cu un vector (tridimensional) real. k ale bazei câmpului cuaternionilor pot fi interpretate ca trei vectori ai unei baze de axe carteziene. p1 ± q1 . i. c1 ) şi q 2 = [0.e1 În caz general. s ⋅ p1 . c2 ) (3. i.15) sau: (3. k cu i.0).20) se obţin aplicând regula (3. Produsul scalar a doi cuaternioni se notează cu “· “ şi: q 1 ⋅ q 2 = s1 ⋅ s2 + v 1 ⋅ v 2 (3.e1 . unităţile i. cu 1. c ) = s ⋅1 + a ⋅ i + b ⋅ j + c ⋅ k = s + v (3. jk = − kj = i. (3.17) Totodată a definit şi o algebră A (în câmpul K). în general.e2 e4 e4 . ki = −ik = j (3.0). p 2 ± q 2 . pe care i-a notat.19) Urmărind tabelul şi utilizând notaţiile (3. a2 . 0.1. j. Proprietăţile de bază din algebra cuaternionilor sunt: Partea scalară a lui q q q q q s Partea vectorială a lui Conjugata lui Norma lui Reciproca lui Cuaternionul unitate: pq = [(p 0 q 0 − p1q1 − p 2 q 2 − p 3q 3 ). (p 0q 3 + p1q 2 + p 2q1 − p 3q 0 )] (3.e4 e3 e3 e3 e4 . Mai întâi înmulţim cei doi cuaternioni q1 şi q2 obţinând rezultatul: . unde s 2 + a 2 + b 2 + c 2 = 1 (3. o bază de patru elemente e1. .12) (3. 0. numerele complexe (s. k). b2 . k: 1 = (1. Modelarea mediului. Cu acestea. (p 0q 2 − p1q 3 + p 2q 0 + p 3q1 ). 3.0. s2 v1 . 0) cu două unităţi 1 şi i şi vectorii din spaţiul tridimensional (0.20) Cele două rezultate (3. în câmpul cuaternionilor. j. i = (0. i 2 = j 2 = k 2 = −1 ij = − ji = k .9) • Produsul cuaternional este distributiv faţă de adunare şi scădere: p(q ± n ) = pq ± pn ( ) ) ( s + ai + bj + ck .0. Grupa A de sarcini a conducerii unui robot 51 52 CONDUCEREA ROBOŢILOR • Adunarea (scăderea): Hamilton a definit următoarele proprietăţi ale cuaternionilor: p ± q = (p 0 ± q 0 .0.e1 . a.sunt produse cuaternionale scalar-vector (identice cu câte un produs scalar-vector real). unde s ∈ ℜ. p 3 ± q 3 ) q = (s.v1 ⋅ v 2 + v1 × v 2 . b.Cap. s1v 2 . s ⋅ p 3 ) = ps • Înmulţirea a doi cuaternioni (produsul cuaternional): Astfel. Înmulţirea cuaternionilor poate fi scrisă şi în forma: q 1q 2 = (s1 + a1i + b1 j + c1k )(s 2 + a 2 i + b2 j + c2 k ) = = (s1s 2 − v 1 ⋅ v 2 + s2 v 1 + s1 v 2 + v 1 × v 2 ) Hamilton a definit. e2.18) şi (3.respectiv.1.12) rezultă: 12 = 1. 0). j. e4.e3 e2 .0.un cuaternion q poate fi scris ca având o parte scalară s şi o parte vectorială v: În relaţiile de mai sus: s1s2 . k. (p 0q1 + p1q 0 + p 2q 3 − p 3q 2 ).este produsul cuaternional vector-vector.0. • Produsul cuaternional este asociativ: (pq )n = p(qn ) (3. produsul vectorial al doi vectori reprezentaţi ca şi cuaternioni nu este un vector ci un cuaternion. un cuaternion poate fi definit ca un vector cu patru dimensiuni. fie doi vectori: q1 = [0. e3.7) q = [s.0 ). v ∈ ℜ 3 • Înmulţirea cu un scalar: sp = (s ⋅ p 0 . k = (0. b.11) • Produsul cuaternional este.6) (3. necomutativ: pq ≠ qp Observaţie: Cuaternionii includ şi numerele reale (s.

Fiind dat un cuaternion: q = s + ai + bj + ck = s + v = q[s.19) produsul a doi vectori-cuaternion (ternioni) este: q1q 2 = − v1 ⋅ v 2 + v1 × v 2 3. aşa cum rezultă din relaţia (3. s 2 c1 ] s1 v 2 = (s1 ⋅ 1 + 0i + 0 j + 0k )(0 + a 2 i + b2 j + c2k ) = Concluzie: Un cuaternion poate fi utilizat la reprezentarea unei rotaţii. pentru scalarii: s1 = (s1 . s2 considerându-i cuaternion-scalari. Vectorul r rotit şi alungit utilizând şi relaţiile (3.25) şi (3.17) este echivalent cu (3.21) q. În figura 3.d.23). adică: = (0 + s1a 2 i + s1b2 j + s1c2k ) s 2 v 1 = [0. dacă se găseşte o modalitate de a se evita alungirea. se arată că. 3. s1 ⋅ v 2 şi s 2 ⋅ v1 considerând termenii produsului ca şi cuaternion-scalari.24) (3.8): (0 + a1 ⋅ i + b1 ⋅ j + c1 ⋅ k )(0 + a2 ⋅ i + b2 ⋅ j + c2 ⋅ k ) = = −(a1 ⋅ a2 + b1 ⋅ b2 + c1 ⋅ c2 ) + + (b1 ⋅ c2 − c1 ⋅ b2 ) ⋅ i + (c1 ⋅ a2 − a1 ⋅ c2 ) ⋅ j + + (a1 ⋅ b2 − b1 ⋅ a2 ) ⋅ k (3.27) şi un vector: .0.n]T este un vector unitate (versor). în cazul general.33) = sin θ ⋅ (u × r ) + cosθ ⋅ r Acest rezultat este un vector situat într-un plan perpendicular pe un plan ce-l conţine pe u şi formează unghiul θ cu r. În final. cu aceeaşi regulă. Observaţie: rezultatul (3. un cuaternion.21).32) Se observă că dacă doi vectori sunt ortogonali v1 ⋅ v 2 = 0 şi produsul cuaternional este un vector.30) În continuare înmulţim. Modelarea mediului.0.26) Fig. adică: l 2 + m2 + n2 = 1 (3. Acest r’ se află într-un plan care-l conţine pe r şi este perpendicular pe v.3.3.0) (3.29) ↑ parte scalară ↑ parte vectorială qr = (s + ai + bj + ck )(xi + yj + zk ) = − v ⋅ r + v × r + sr + (s1 ⋅ a 2 − a1 ⋅ s 2 + b1 ⋅ c 2 − c1 ⋅ b2 ) ⋅ i + + (s1 ⋅ c 2 + a ⋅1 b2 − b1 ⋅ a 2 + c1 ⋅ s 2 ) ⋅ k (3.31) (3. se obţine: qr = (cosθ + sin θ ⋅ u )(x ⋅ i + y ⋅ j + z ⋅ k ) = (3.m.0. vectorul r iniţial este rotit în jurul lui v şi alungit.(3.24).8) de înmulţire a lui Hamilton: s1s 2 = s1s2 + 0i + 0 j + 0k În consecinţă. Reprezentarea rotaţiilor cu cuaternioni Fie un cuaternion unitate de forma: q = cos θ + l sin θ ⋅ i + m sin θ ⋅ j + n sin θ ⋅ k = = cos θ + sin θ ⋅ u unde u = [l.26) se obţine acelaşi rezultat ca în (3.28) (3. după cum şi rezultatul (3. însumând (3. (3.17. v ] Înmulţind acest vector unitate cu un vector oarecare r.22) (3. Conform (3.17.e.26).23) aplicăm regula (3. cu regula (3. De asemenea. Grupa A de sarcini a conducerii unui robot 53 54 CONDUCEREA ROBOŢILOR ⋅ (s 2 + a 2 ⋅ i + b2 ⋅ j + c 2 ⋅ k ) = q 1q 2 = (s1 + a1 ⋅ i + b1 ⋅ j + c1 ⋅ k ) ⋅ = s1 ⋅ s 2 − a1 ⋅ a 2 − b1 ⋅ b2 − c1 ⋅ c 2 + r = xi + yj + zk (3. r' = v × r + s ⋅ r (3. (3.29). (3.21) + (s1 ⋅ b2 − a1 ⋅ c 2 + b1 ⋅ s 2 + c1 ⋅ a 2 ) ⋅ j + Apoi înmulţim cei doi scalari s1. Adică. s 2 a1 . este important de observat că produsul dintre un cuaternion şi un vector este.8.25) Se mai calculează şi produsul ternional v1v2. s 2 b1 .13).Cap.0 ) şi s 2 = (s2 . perpendicular pe un altul u.0. dacă partea vectorială v a unui cuaternion este ortogonală cu un vector r produsul cuaternional qr este un vector r’. respectiv ternioni.19) este acelaşi cu (3.

46) Aplicând regula (3. adică l 2 + m2 + n2 = 1 Utilizând acest cuaternion.17). întrucât u este un vector unitate şi sin2θ + cos2θ = 1.42) ( ) Se poate demonstra acum că.45) (3.40) Obţinem: (3. (3. s2+ v2 = 1. r] şi.produs al doi vectori ortogonali s(v × r ) = − s (r × v ) − (v × r ) × v = v × (v × r ) (3.36) exprimă rotaţia cu un unghi θ a oricărui vector r în jurul axei de versor u (fig.43) cu sin2θ + cos2θ = 1. În continuare. Expresia reciprocei cuaternionului unitate q considerat este: cos θ − (l sin θ i + m sin θ j + n sin θ k ) q −1 = = (3.17) de înmulţire a cuaternionilor: q1q 2 = s1s2 − v1 ⋅ v 2 + s2 v1 + s1 v 2 + v 1 × v 2 (qr )q −1 = s 2r + 2s(v × r ) + (v ⋅ r )v + 2 v × (v × r ) − − (v ⋅ r )v + v 2 r = (s 2 + v 2 )r + 2s(v × r ) + 2 v × (v × r ) (3.17): (qr )q −1 = (− v ⋅ r + s ⋅ r + v × r )(s − v ) = = − s (v ⋅ r ) − (s ⋅ r + v × r )(− v ) + s(s ⋅ r + v × r ) + + (− v ⋅ r ) ⋅ (− v ) + (sr + v × r ) × (− v ) = = − s (v ⋅ r ) + srv + (v × r ) ⋅ v + s 2 r + s (v × r ) + + (v ⋅ r )(v ) − s (r × v ) − (v × r ) × v În această ultimă relaţie se observă că: − s (v ⋅ r ) + sr ⋅ v = 0 (v × r ) ⋅ v = 0 . au fost eliminate atât condiţia de ortogonalitate dintre r şi u cât şi alungirea ce se producea iniţial. Modelarea mediului.41) se obţine: .38) Fig.35) Întucât q este un cuaternion unitate.). calculăm produsul cuaternional: qrq −1 = (qr )q −1 (3. Reciproca sa este: q-1 = s – v Fie un şi un vector-cuaternion arbitrar r = [0. Grupa A de sarcini a conducerii unui robot 55 56 CONDUCEREA ROBOŢILOR Observaţie: Utilizarea produsului qr la reprezentarea rotaţiilor se limitează doar la cazurile în care u şi r sunt ortogonali.Cap.44) unde: u = li + mj + nk este un vector unitate.18.39) Exemplu: O rotaţie cu 90° în jurul axei carteziene k. cu acesta.3. relaţia: qrq-1 Folosind regula (3.3.42) exprimă rotaţia unui vector r fără nici o alungire.34) cos 2 θ + sin 2 θ l 2 + m 2 + n 2 = cos θ − sin θ u Reciproca lui q este egală cu conjugata sa. Rotaţia cu un unghi θ a unui vector r în jurul axei de versor u θ θ Prin utilizarea cuaternionului de forma particulară q = cos + sin u şi a 2 2 Astfel: (qr )q −1 = s 2r + 2s(v × r ) + (v ⋅ r )v + v × (v × r ) = = s 2r + 2s(v × r ) + (v ⋅ r )v + 2[v × (v × r )] − v × (v × r ) produsului qrq .37) (3. se obţine în final: qrq −1 = r + 2 s (v × r ) + 2 v × (v × r ) q = cos θ + l sin θ ⋅ i + m sin θ ⋅ j + n sin θ ⋅ k = = cos θ + sin θ ⋅ u (3. Pentru aceasta. dacă q este un cuaternion unitate de forma: (3. 3.18. relaţia (3. urmată de o rotaţie cu 90° în jurul axei j se poate reprezenta cu produsul cuaternional: q1q 2 = (cos 45° + j sin 45°) ⋅ (cos 45° + k sin 45°) -1 Aplicând regula lui Gibbs de transformare a produsului vectorial în produs scalar a doi vectori: v × (v × r ) = (v ⋅ r )v − (v ⋅ v )r (3. calculăm întâi: q ⋅ r = (s + v )(0 + r ) = 0 − v ⋅ r + s ⋅ r + (v × r ) = = −v ⋅ r + s ⋅ r + v × r (3. se consideră un cuaternion cu forma anume aleasă: q = cos θ 2 + sin θ 2 u (3. Să considerăm acum un alt cuaternion unitate q: q = s + v. folosind tot regula (3.

45).8) şi.19 este reprezentată şi rotaţia sistemului de coordonate fix xOyz în jurul unei axe paralele cu ∆.53) 2 se scrie în forma (3. Respectând regulile (3. Modelarea mediului.θ) se obţine forma ce o notăm cu (3.54) unde R este o matrice 3×3 care poate fi privită ca fiind echivalentă cu o matrice de rotaţie Rot(u. Observaţie: componentele vectorului r’ în raport cu axele x 1Oy1z1 sunt aceleaşi cu proiecţiile vectorului r după axele xOyz.19. Rezultă. mai ales. La fel. j. (3. cu acelaşi unghi θ.4. ambii membrii ai ecuaţiei (3. 3.51) Aşa cum s-a văzut în relaţia (3. Detaliind calculele pentru Rot(u.52) (3. 3. Reprezentarea matricială a rotaţiilor folosind cuaternioni Fiind un „vector” cu patru dimensiuni.3.53) au scalarul nul.50) l 2 + m2 + n2 = 1 θ s = cos unde membrul drept al relaţiei este constituit din produsul cuaternional scris în formă matricială. obţinut prin rotirea lui r unde v este vectorul în spaţiul tridimensional. k. În figura nr. Înlocuind q şi q-1 cu valorile lor particulare se ajunge. vectorul rotit se calculează cu: ⎡r '⎤ ⎡r ⎤ −1 ⎢ 0 ⎥ = q ⎢0 ⎥ q ⎣ ⎦ ⎣ ⎦ (3.47) l 2 + m2 + n2 = 1 = cos 60° + Cu acest cuaternion se poate calcula vectorul r’ obţinut prin rotirea unui vector r în jurul unei axe ∆. Sistemul de axe rotit este x1Oy1z1. Grupa A de sarcini a conducerii unui robot 57 58 CONDUCEREA ROBOŢILOR q 1q 2 = cos 45° ⋅ cos 45° − 0 + cos 45° ⋅ sin 45° j + + cos 45° ⋅ sin 45°k + sin 2 45° ⋅ i = 2 2 2 2 1 2 2 = ⋅ −0+ ⋅ ⋅ j+ k+ i= 2 2 2 2 2 2 2 = 1 i + j+k 1 i + j+k 3 + = + ⋅ = 2 2 2 2 3 i + j+k 3 ⎛ i + j+k ⎞ sin 60° → Rot⎜ .θ). 3.48) Fig.120° ⎟ ⎜ ⎟ 3 ⎝ ⎠ şi: ⎡l ⎤ u = ⎢m ⎥ = [l ⎢ ⎥ ⎢n⎥ ⎣ ⎦ m n]T (3. Vectorul r’.42) produsul qrq-1 nu are parte scalară.48) astfel: θ ⎤ ⎡ ⎢ l sin 2 ⎥ ⎡a ⎤ ⎢ θ⎥ v = ⎢b ⎥ = ⎢m sin ⎥ ⎢ ⎥ ⎢ 2⎥ ⎢c ⎥ ⎢ θ⎥ ⎣ ⎦ ⎢ n sin 2 ⎥ ⎦ ⎣ (3. la o formă ce poate fi scisă astfel: r ' xO yz = R × r ' x1O y1 z1 (3. efectuând un calcul laborios. iar s este scalarul. de vesor u. Astfel: ⎡r '( x1Oy1 z1 ) ⎤ −1 ⎡r '( xOyz ) ⎤ ⎥q ⎢ ⎥=q⎢ ⎢ 0 ⎥ ⎢ 0 ⎥ ⎣ ⎦ ⎣ ⎦ (3.17) produsul cuaternional se defineşte matricial cu: ⎡ s v + s v + v1 × v 2 ⎤ q1q 2 = ⎢ 2 1 1 2 ⎥ s1s 2 − v1 ⋅ v 2 ⎣ ⎦ Conform relaţiei (3.Cap. cuaternionul poate fi reprezentat şi în formă matricială: ⎡v⎤ q=⎢ ⎥ ⎣s⎦ (3.55): .8. o rotaţie cu 120° în jurul unei axe egal înclinată cu câte 54° 44’ 8” în raport cu fiecare dintre axele i. cu unghiul θ. astfel.49) Cuaternionul unitate: q = cos θ 2 + sin u 2 θ cu vectorul unde şi cu scalarul u = li + mj + nk (3. întrucât rotaţia în jurul axei ∆ nu le modifică.

8. in literatura de specialitate se foloseşte o altă formă de reprezentare pentru Rot(u. b şi c. în forma generală: ⎡ a11 ⎢a ⎢ 21 ⎢ a31 ⎣ 2 θ 2 − sin 2 θ 2 θ⎞ ⎛ + l 2 ⎜1 − cos 2 ⎟ + 2⎠ ⎝ + l 2 sin 2 = cos 2 θ 2 + 1−1 = (3. v ] = q(s.59) θ Rot(u. a. Determinarea elementelor unui cuaternion pentru o matrice de rotaţie dată În cele de mai sus s-a prezentat modul în care se pot calcula elementele unei matrici de rotaţie echivalente.53) la forma (3.56) cu l + m + n2 = 1 sunt: s = cos θ 2 Produsul cuaternional qrq-1 este echivalent cu o rotaţie ce poate fi exprimată şi sub forma: ⎡2 a 2 + s 2 − 1 2(ab − cs ) 2(ac + bs ) ⎤ ⎢ ⎥ 2 2 Rot(u. Rezumat: Dacă se utilizează un cuaternion de forma: θ θ q = s + ai + bj + ck = cos + m sin Observaţie: Calculele ce se efectuează pentru a ajunge de la forma (3.57) sau (3.θ ) = ⎢ 2(ab + cs ) 2 b + s −1 2(bc − as ) ⎥ ⎢ 2(ac − bs ) 2(bc + as ) 2 c 2 + s 2 − 1⎥ ⎣ ⎦ ( ) ( ) ( ) (3.55): ( ) (3.5. 3.54) demonstrează faptul că produsul qrq-1. pornind de la elementele unui cuaternion unitate folosit pentru a reprezenta o aceeaşi rotaţie. utilizând forma particulară (3.51) pentru cuaternionul unitate q. Este însă la fel de important de arătat şi modul de echivalare în sens invers. în jurul unei axe de versor u.55) să se scrie numai utilzând s. θ ) = 2 Se urmăreşte ca expresia (3.51) avem că elementele cuaternionului: q[s. θ θ θ θ q = cos 2 + l sin 2 i + m sin 2 2 k (3.58) θ 2 + 2 2 θ 2 − sin 2 2 θ 2 + l 2 sin 2 2θ a12 a 22 a32 + l 2 sin = 2 cos 2θ − 1 + cos + 2l sin 2 2 θ 2 θ 2 − sin 2θ = a13 ⎤ a 23 ⎥ ⎥ a33 ⎥ ⎦ j + n sin (3. De pildă: cosθ + l 2 (1 − cosθ ) = cos 2 θ 2 − sin 2 θ 2 + ⎡ cos θ + l 2 (1 − cos θ ) ⎢ = ⎢lm(1 − cos θ ) + n sin θ ⎢nl (1 − cos θ ) − m sin θ ⎣ lm(1 − cos θ ) − n sin θ 2 cos θ + m (1 − cos θ ) mn(1 − cos θ ) + l sin θ nl (1 − cos θ ) + m sin θ ⎤ ⎥ mn(1 − cos θ ) − l sin θ ⎥ cos θ + n 2 (1 − cos θ ) ⎥ ⎦ θ θ⎞ ⎛ + l 2 ⎜1 − cos 2 + sin 2 ⎟ = 2 2⎠ ⎝ = cos 2 3.θ ) = ⎢ 2(ab + cs ) 2 b + s − 1 2(bc − as ) ⎥ ⎢ 2(ac − bs ) 2(bc + as ) 2 c 2 + s 2 − 1⎥ ⎣ ⎦ a = l sin θ 2 ( ) ( ) b = m sin c = n sin θ 2 (3. Grupa A de sarcini a conducerii unui robot 59 60 CONDUCEREA ROBOŢILOR Rot(u.60) 2 2 − 1 = 2 s + 2a − 1 Efectuând toate calculele se obţine in final: se pune problema de a calcula elementele corespondente ale cuaternionului.θ): Din relaţia (3.Cap.59) unde a 2 + b 2 + c 2 + s 2 = 1 şi sunt numiţi parametrii Euler. Modelarea mediului. a.55) ⎡2 a 2 + s 2 − 1 2(ab − cs ) 2(ac + bs ) ⎤ ⎢ ⎥ 2 2 Rot (u.50) k (3. De regulă. θ ) = ⎡ cos θ + l 2 (1 − cos θ ) ⎢ = ⎢ lm(1 − cos θ ) + n sin θ ⎢nl (1 − cos θ ) − m sin θ ⎣ cos θ + m (1 − cos θ ) mn(1 − cos θ ) + l sin θ 2 lm(1 − cos θ ) − n sin θ nl (1 − cos θ ) + m sin θ ⎤ ⎥ mn(1 − cos θ ) − l sin θ ⎥ cos θ + n 2 (1 − cos θ ) ⎥ ⎦ (3.50) . Astfel. reprezintă o rotaţie de unghi θ a unui vector. fiind dată o matrice de rotaţie 3×3. c ) θ 2 j + n sin 2 θ 2 2 2 + l sin 2 i+ (3. b.

61) deoarece în cazurile în care θ are valori apropiate de 180° sau 0° se obţine o acurateţe scăzută.1b) (3.63) ci se foloseşte o notaţie intermediară t: t= Considerând cazul sinθ > 0. unghiul θ nu se calculează din ecuaţiile (3. m = ± 22 . Grupa A de sarcini a conducerii unui robot 61 62 CONDUCEREA ROBOŢILOR Acestea se obţin egalând (3.3) Dacă l are cea mai mare valoare absolută valorile lui m şi n se calculează cu: m= (a32 − a23 ) + (a13 − a31 ) + (a21 − a12 ) 2 2 2 a11 + a22 + a33 − 1 pentru cos θ > 0 ⎧ a tan t ⎪π + a tan t pentru cos θ < 0 ⎪ ⎪ θ = ⎨π pentru cos θ = 0 ⎪2 ⎪ ⎪0 pentru cos θ = 1 ⎩ (3. Modelarea mediului.61.71) .61. 1 − cosθ 1 − cosθ În continuare urmează: a32 − a23 = sl sin θ a13 − a31 = 2m sin θ a − cosθ n = ± 33 1 − cosθ (3.68.70) (3.d.61) mn(1 − cos θ ) + l sin θ echivalent. Astfel: l > 0 dacă a32 − a 23 > 0 l < 0 dacă a32 − a 23 < 0 ş.61).61. m.1) Se obţine în final: (3.61. calculul se continuă după cum urmează: a 21 + a12 = 2lm(1 − cosθ ) (3.69) Cu aceasta se obţine: Dacă m are cea mai mare valoare absolută: l= a32 + a23 a21 + a12 n= 2m(1 − cos θ ) 2m(1 − cos θ ) (3.67) a 21 − a12 = 2n sin θ Ridicând la patrat şi adunând: sin θ = ± 1 2 (a31 − a23 )2 + (a13 − a31 )2 + (a21 − a12 )2 (3. n vor avea semnul acelaşi cu cel al diferenţelor dintre termenii aferenţi din membrul stâng ai ecuaţiilor (3. Cu scopul de a se obţine o mai bună precizie în calcul şi pentru a se evita degenerări ale mecanismelor.66. Pentru a se obţine cea mai bună acurateţe.67) pentru l. De aceea se continuă calculul egalând termenii diagonalelor principale ale celor două matrici: a11 = l 2 (1 − cos θ ) + cos θ a 22 = m 2 (1 − cos θ ) + cos θ (3.68.a.m. m. Se calculează întâi valorile (3.4) l=± a33 = n 2 (1 − cos θ ) + cos θ Întrucât l + m + n .3) (3. n şi se găseşte care dintre acestea are cea mai mare valoare absolută.3) Din această egalitate se obţine: 2 2 2 a11 + a 22 + a33 = 3 cosθ + l + m + n (1 − cosθ ) 2 2 ( ) (3. trebuie să fie 1: a11 + a 22 + a33 = 1 + 2 cos θ ⇒ cosθ = 1 (a11 + a22 + a33 − 1) 2 a11 − cosθ a − cosθ .1) a31 + a13 = 2nl (1 − cos θ ) a32 + a23 = 2mn(1 − cos θ ) a21 + a12 2l (1 − cos θ ) (3.2) (3. Nici parametrii l.2) (3. De obicei se consideră θ ≤ 180°.60) = (3.68.Cap.63) Soluţia pozitivă a ecuaţiei corespunde unei rotaţii de unghi pozitiv θ ≤ 180°.66.64) n= a31 + a13 2l (1 − cosθ ) (3. 3. iar soluţia negativă înseamnă θ > 180°.55): ⎡ a11 a12 ⎢a ⎢ 21 a22 ⎢ a31 a32 ⎣ a13 ⎤ a23 ⎥ = ⎥ a33 ⎥ ⎦ lm(1 − cos θ ) − n sin θ cos θ + m 2 (1 − cos θ ) nl (1 − cos θ ) + m sin θ ⎤ ⎥ mn(1 − cos θ ) − l sin θ ⎥ cos θ + n 2 (1 − cos θ ) ⎥ ⎦ 2 Dacă θ = 0 se obţine matricea ⎢0 1 0⎥ şi nu este definit vreun cuaternion ⎢ ⎥ ⎢0 0 1 ⎥ ⎣ ⎦ ⎡1 0 0⎤ ⎡ cos θ + l 2 (1 − cos θ ) ⎢ = ⎢lm(1 − cos θ ) + n sin θ ⎢nl (1 − cos θ ) − m sin θ ⎣ (3.62) (3. parametrii l. m şi n nu se calculează din ecuaţiile (3.61.66.1) (3.62) şi (3.2) (3.65) Dacă n are cea mai mare valoare absolută: l= a31 + a13 2n(1 − cos θ ) m= a32 + a23 2n(1 − cos θ ) (3.

ψ). Rot (z.θ) pot reprezenta totodată şi rotaţiile axelor sistemului de coordonate xOyz cu un unghi θ în jurul unei axe (paralele cu ∆) de versor u. Rot (x.74) Cea de a doua rotaţie se exprimă cu: − − − r2 = qθ r1 qθ 1 = qθ qψ r qψ1 qθ 1 [ ] (3. Cuaternionii şi unghiurile Euler După cum s-a arătat. De aici rezultă o foarte importantă concluzie: Matricile (3. Succesiunea de rotaţii Rot (z. De aceea in figura nr. (3. Ca exerciţiu se va utiliza reprezentarea matricială a cuaternionilor. Modelarea mediului. k este dată de ψ ⎡ q ψ = ⎢0 0 sin 2 ⎣ − r1 = qψ r qψ1 (3. Pentru simplicitate se va considera acest al doilea caz. de unghiuri Euler. Dacă rotaţiile se exprimă în raport cu axele sistemului fix de coordonate ele trebuie efectuate în succesiune inversă. în produsul cuaternional qrq-1 r este un vector arbitrar.β. adică Rot (z.55) şi (3.γ) şi matricile (3.φ).θ). sunt cei care se folosesc pentru a reprezenta rotaţiile în jurul axelor Oy respectiv Oz.ψ).3.19 se prezintă alături de rotaţia vectorului r şi rotaţiile axelor sistemului de coordonate. În acelaşi timp.8.44. adică u = i.59) sunt numite parametrii Euler.75) (3.44) qψ = cos ψ 2 + sin ψ 2 se utilizează pentru a reprezenta rotirea. Rot (x.ψ).Cap. Astfel.76) Cu aceste consideraţii. j.6. Rot (z. calculând produsul cuaternional qrq-1. cea de a treia rotaţie este dată de: − − − r3 = qφ qθ qψ r qψ1 qθ 1 qφ 1 [ [ ] ] . Grupa A de sarcini a conducerii unui robot 63 64 CONDUCEREA ROBOŢILOR 3. ψ ⎤T cos ⎥ 2⎦ θ ⎤T ⎡ θ q θ = ⎢sin 0 0 cos ⎥ 2⎦ ⎣ 2 φ φ ⎤T ⎡ q φ = ⎢0 0 sin cos ⎥ 2 2⎦ ⎣ Prima rotaţie în jurul oricăruia dintre versorii i. dacă rotaţiile se exprimă în raport cu axele sistemului de coordonate care se roteşte. i (3. cu un unghi θ.20. Rot (z2.72) u (3. j. atunci cuaternionul (3. respectiv ψ.59) Rot (u. Cei trei cuaternioni unitate care vor exprima cele trei rotaţii succesive de unghiuri φ. θ.φ).59) trebuie să fie o egalitate. În mod analog cuaternionii: θ θ q y = cos + sin j (3. 3.φ). Dacă u este chiar chiar versorul axei Ox al unui sistem de coordonate.44.44) devine: q x = cos θ 2 + sin θ 2 Nu trebuie scăpat din vedere faptul că. între matricea compusă Euler (α. sunt: În final.44. 3. cuaternionul de forma particulară: θ θ q = cos 2 + sin 2 qφ = cos qθ = cos φ θ 2 2 + sin + sin φ θ 2 2 k i k (3. definite fie în raport cu axele sistemului de coordonate fix. Observaţie: Din acest motiv elementele matricii (3.55) sau (3. să exprimăm cazul sistemului de unghiuri Euler de speţa I (sau unghiurile Euler Z-X-Z) folosind cuaternioni. k ai axelor unui sistem de coordonate xOyz. ele se efectuează în ordinea Rot (z. Acesta poate fi şi unul dintre versorii i.θ).73) Rotaţia completă (orientarea) axelor unui sistem de coordonate se obţine prin trei rotaţii succesive.2) 2 2 q z = cos θ 2 + sin θ 2 k (3. a unui vector r în jurul unei axe de versor u. fie în raport cu sistemul de axe rotit.1) Acest cuaternion poate fi utilizat la reprezentarea rotaţiilor în jurul axei Ox a unui sistem de coordonate. Rot (x1.θ).3) Fig.

adică a matricilor cu 4×4 elemente reale.79) q Euler (3. k.7. În reprezentarea cu cuaternioni se utilizează matricea qEuler: (3.1) .8.78) ψ −φ ⎤ ⎡ θ ⎢ sin 2 ⋅ cos 2 ⎥ ⎢ θ ψ −φ ⎥ ⎢ sin ⋅ sin ⎥ 2 2 ⎥ =⎢ ⎢ cos θ ⋅ sin ψ + φ ⎥ ⎢ 2 2 ⎥ ⎢ θ ψ +φ ⎥ ⎢cos ⋅ cos ⎥ 2 2 ⎦ ⎣ r q −1 Euler sau: −1 r3 = q Euler rq Euler unde s-a notat cu q Euler produsul cuaternional final: q Euler = qφ qθ qψ (3.80). Rot (u.77) (3.84) unde termenii: s = cos a = sin b = sin θ θ θ 2 cos cos sin ψ +φ ψ −φ 2 2 unde r este.Paul.81) şi cu aceasta se efectuează produsul matricial: r * = Euler (φ . j. Tranformările omogene sunt mai bine cunoscute şi prezintă avantajul utilizării lor facile şi eficiente pe calculator. Desigur că şi în acest caz a2 + b2 + c2 +s2 = 1. (3. componentele cuaternionului echivalent pentru unghiurile Euler. respectiv unghiul Euler θ ⎣ 2 2 ⎦ din qEuler (3.72) şi utilizând regula (3.Analiză comparativă între volumul de calcule aferent utilizării transformărilor omogene. Observaţie: Trebuie semnalată deosebirea dintre semnificaţiile lui θ utilizat θ θ ⎤ ⎡ în expresiile q ⎢cos .55).44). Modul clasic de reprezentare este acela de a utiliza matricile de rotaţie cu unghiuri Euler de speţa I.80) b. (3. Grupa A de sarcini a conducerii unui robot 65 66 CONDUCEREA ROBOŢILOR Întrucât produsul cuaternional este asociativ. Modelarea mediului. Dacă se face o comparaţie între reprezentarea orientărilor cu cuaternioni şi cea clasică cu unghiuri Euler de speţa I: ⎡n x ⎢n T=⎢ y ⎢n z ⎢ ⎢0 ⎣ ox oy oz 0 ax ay az 0 px ⎤ py ⎥ ⎥ pz ⎥ ⎥ 1⎥ ⎦ (3. sin u ⎥ (3. unul dintre versorii i.θ .P. θ . Situarea (poziţia şi orientarea) se exprimă cu matricea transformare T: 2 θ ψ +φ c = cos sin 2 2 2 sunt aşa numiţii parametrii Rodriguez-Hamilton. 3. respectiv a perechilor vector – cuaternion Cea mai des utilizată metodă de reprezentare a transformărilor spaţiale este aceea de a utiliza transformările omogene.ψ ) = ⎡cos φ cosψ − sin φ cosθ sinψ = ⎢sin φ cosψ + cos φ cosθ sinψ ⎢ ⎢ sin θ sinψ ⎣ − cos φ sinψ − sin φ cosθ cosψ − sin φ sinψ + cos φ cosθ cosψ sin θ cosψ sin φ sin θ ⎤ − cos φ sin θ ⎥ ⎥ ⎥ cosθ ⎦ q Euler sau: q Euler = cos + sin θ 2 ψ +φ 2 + sin θ 2 cos 2 ψ −φ 2 k i+ θ 2 sin ψ −φ 2 j + cos θ 2 sin ψ +φ (3.80) Înlocuind valorile elementelor cuaternionului unitate (3. 2 ψ −φ (3.82) 3. după efectuarea calculelor: θ ψ −φ⎤ ⎡ ⎢ sin 2 ⋅ cos 2 ⎥ ⎢ θ ψ −φ⎥ ⎥ ⎢ sin ⋅ sin 2 2 ⎥ =⎢ ⎢ cos θ ⋅ sin ψ + φ ⎥ ⎢ 2 2 ⎥ ⎢ θ ψ + φ⎥ ⎢ cos 2 ⋅ cos 2 ⎥ ⎦ ⎣ cos şi se efectuează produsul cuaternional: r * = q Euler (3. Acest mod de reprezentare a fost pentru prima oară utilizat de Denavit-Hartemberg.53) scris în formă matricială.Cap. iar în robotică a fost introdus de R. în ambele cazuri.θ) (3.ψ ) × r (3. se poate scrie: − − − r3 = qφ qθ qψ r qψ1qθ 1qφ 1 ( )( ) a.49) de efectuare a produsului cuaternional în forma matricială se obţine.83): Euler(φ .

c. Transferul de date din/ în memorie se face cu o importantă economie de cicluri maşină la execuţia în timp real. Grupa A de sarcini a conducerii unui robot 67 68 CONDUCEREA ROBOŢILOR notată în formă restrânsă T = [n o a p]. datorită creşterii duratei necesare pentru transferarea unui operand din/ în memorie. sin u ⎥ 2 2 ⎦ ⎣ Tabelul I Execuţie secvenţială Operaţie Norma T Q √ Execuţie paralelă T √ Q * Spatial Trans Compunere Inversa Normalizare Spatial Trans Compunere Inversa ⎠ ⎠ ⎠ + * 15 31 15 8 23 39 23 + 15 27 12 3 18 30 15 EP 9 24 6 6 9 24 6 cicluri 4 4 5 12 16 16 17 EP cicluri 9 22 9 4 9 22 9 6 6 5 5 11 11 10 - 15 12 33 24 15 9 30 16 45 28 63 40 45 25 0 0 0 2 2 2 2 0 0 0 1 1 1 1 (3.cuaternion Q = (q. Astfel. Ultima linie a matricii conţine chiar numai 0 . Determinant se consideră. Dacă însă este necesar şi calculul normei. Funda. În cazul utilizării perechilor vector . o. timpul de calcul creşte dacă gradul de compactare al datelor este scăzut. Elementele lui n se calculează efectuând produsul vectorial n = o × a. a) Reprezentări interne şi termeni de comparaţie În evaluarea avantajelor relative ale diferitelor metode de reprezentare trebuie avute în vedere atât gradul în care datele necesare pot fi compactate. b) Rezumatul comparaţiei cu privire la timpul de calcul Din tabelul I cele două modalităţi de reprezentare sunt echivalente în ceea ce priveşte calculul. respectiv cuaternionii la: tranformarea spaţială a unui vector. Numeroşi autori sunt de părere că reprezentarea rotaţiilor în spaţiul tridimensional utilizând cuaternioni sporeşte eficienţa calculelor. d. iar în robotică de Taylor. în ceea ce priveşte eficienţa în efectuarea calculelor. denumindu-le perechi cuaternion-vector. p) şi. Având însă în vedere faptul că norma unui cuaternion se calculează relativ rapid. În tabel sunt indicaţi timpii de calcul atât pentru cazul procesării secvenţiale. Tabelul I prezintă o comparaţie în ceea ce priveşte timpii de calcul aferenţi operaţiilor efectuate utilizând transformările omogene. şi fără utilizarea normei. Cu toate că diferenţa dintre cele două moduri de reprezentare. “ + “.44) o pereche cuaternion-vector reprezentând o rotaţie q şi o translaţie p se scrie în forma: Q = (q. Observaţii: a. Folosind un cuaternion unitate q de forma: θ ⎤ ⎡ θ q = [s. timpul de calcul. e. În cazul modului de procesare paralelă. Cu toate aceste dezavantaje. a.p). De aceea reprezentarea ei poate fi compactată: Submatricea de rotaţie conţine trei vectori ortogonali n. b. calculul este mai rapid folosind transformări omogene. de regulă. reprezentarea cu matrici continuă să rămână cea mai frecventă alegere în aplicaţiile din robotică Cuaternionii au fost introduşi în matematică de Hamilton. iar cicluri este numărul de cicluri de maşină. Taylor şi Paul au pus şi problema de a găsi o alternativă cuaternională pentru reprezentările cu matrici de tip T. necesitând memorarea a şapte numere reale.85) O astfel de entitate se memorează în calculator ca o tipletă (s. utilizarea perechilor cuaternion-vector este mai eficientă.p) (3. Măsurat cu numărul de cicluri maşină ale unităţii centrale a procesorului. precum şi eficienţa în efectuarea calculelor aferente operaţiilor de bază. Observaţie: prin ”secvenţial ” se înţelege aici calculul cu un singur procesor. Simbolurile “ * “. Simbolul “ · “ din coloana “Norma” indică faptul că nu este inclus timpul de calcul pentru a calculula apriori norma. Acest tip de matrici conţin termeni redundanţi pentru reprezentarea a şase grade de libertate independente. “√ “ au semnificaţia principalelor operaţii matematice. O astfel de redundanţă implică un surplus nejustificat de volum de memorie şi un timp de calcul crescut. n se recalculează. sunt memorate în mod explicit numai elementele tripletei de vectori (o. cât şi pentru cazul procesării paralele.uri şi un 1. v ] = ⎢cos . compunerea a doi vectori şi calculul inversei unui operator spaţial. EP semnifică numărul de elemente care sunt procesate. calculul matricilor omogene de rotaţie necesită un efort mai mare de calcul. .v. Modelarea mediului. Cu privire la timpul de calcul sunt şi publicate analize comparative între metoda de reprezentare matricială şi cea care utilizează cuaternioni. ori de câte ori este necesară matricea T. 3. a şi se procedează numai la memorarea elementelor aferente lui o şi a.Cap.p) este necesară memorarea a şapte variabile reale. perechile cuaternion-vector au nevoie de un volum de memorie mai restrâns. O transformare T = [n o a p] conţine un număr semnificativ de termeni redundanţi. Simbolul “ ⎠ “ are semnificaţia că timpul de calcul aferent calculării normei a fost inclus în timpul de calcul total aferent efectuării operaţiei. în modul de lucru secvenţial şi dacă nu este necesar calculul normei. nu este semnificativă.

mai ales în cazul proceselor complexe.3. pachetul software.viteze.a. Grupa A de sarcini a conducerii unui robot 69 70 CONDUCEREA ROBOŢILOR 3.21. iar toate celelalte sunt numite senzori (de gabarit. blocul de formatare a semnalelor. Prin port se înţelege un set de conexiuni electrice prin care face legătura între două sisteme distincte. Un senzor transmite o informaţie electrică – un semnal logic de 1 sau 0 – semnal care este “citit” pe linie de intrare a calculatorului şi apoi se interpretează prin program starea “citită”. În robotică se consideră că dispozitivele care transmit informaţii cu privire la parametrii cinematici ai mişcărilor (poziţii.atunci…. Fig. în majoritatea lor. De cele mai multe ori amplitudinea acestor semnale trebuie mărită pentru a fi apoi prelucrată. le transmite către calculator în forma şi la momentele potrivite. Noţiuni fundamentale despre Sistemul de Achiziţii de Date(SAD) La utilizarea curentă a unui calculator personal achiziţia de date se realizează direct la intrările acestuia: • prin portul serial. în programele de studiu din UPT astfel de dispozitive au fost obiectul unor discipline distincte. La un calculator uzual prin conexiunile cu exteriorul se asigură dialogul cu dispozitivele ce sunt absolut necesare la utilizarea sa (tastatura. Integrarea cu senzorii. Un SAD (fig.21 se prezintă schema bloc a unui SAD. Cel mai frecvent citaţi pentru roboţi sunt senzorii de vedere. Modelarea mediului.. Există situaţii în care în programul principal sunt incluse instrucţiuni specifice pentru declanşarea de acţiuni în funcţie de o anumită stare citită la un moment dat de la un anumit senzor. de proximitate. mai ales dacă variaţia mărimii urmărite este mică.21) este absolut necesară pentru a asigura următoarele funcţiuni: a. Amplificarea – semnalele culese de la senzori şi traductoare sunt. de gabarit.21) se compune din următoarele blocuri: senzori şi traductoare. transmite comenzile de la calculator către senzori şi traductoare. în literatură se constată o neconcordanţă în utilizarea acestora la autori diferiţi. În funcţie de rezultatul prelucrat din informaţiile furnizate de senzori.1. SAD este coordonatorul sistemului de percepţie din sistemul robot. sarcină fundamentală în legătură cu modelarea mediului (sensor integration) În modelarea mediului un aspect deosebit de important este acela al interacţiunii – hardware şi software – cu diverşi senzori amplasaţi pe robot sau în mediu de la care se culeg informaţii cu care se completează modelul mediului. de forţă-moment. traductoare şi formatarea semnalelor Observaţie: În ceea ce priveşte denumirile senzor şi traductor. acceleraţii) sunt traductoare. Informaţiile de la senzori se culeg în general prin monitorizare (polling .. trebuie achiziţionate multe sau chiar foarte multe date şi trebuie utilizat un SAD. În figura 3. anume dedicate. Citirea şi interpretarea se execută în paralel cu execuţia programului principal. • • • • • 3. Dacă însă calculatorul este utilizat la conducerea unui proces.altfel” (“if. Observaţii: Prin magistrală se înţelege un set de conexiuni electrice (cu sau fără fir) pe care se transmit informaţii care au sursa şi destinaţia comune la un moment dat. 3. RS 485 ş.utilizând interfeţe de tip RS 232.3. tactili. Schema bloc a unui SAD 3. calculator. tradiţional. 3.se traduce cu urmărirea stărilor de la senzori într-un mod “ invizibil” pentru programul principal). de apropiere. . Blocul formator al semnalelor Includerea acestui bloc în structura unui SAD (fig.9.3.else”).9.Cap. Rolul SAD este de a gestiona schimbul de informaţii dintre senzori/traductoare şi calculator: preia informaţiile de la senzori şi traductoare. semnale de mică amplitudine. Prezentarea şi descrierea unor tipuri specifice de senzori şi traductoare nu s-a făcut în lucrarea de faţă deoarece. mouseul etc.then..). • pe magistralele intrare-ieşire standard ca USB.2. asigură alimentarea senzorilor (dacă este cazul).). PC MCIA. programul principal execută operaţii de tipul “dacă….9. de alunecare etc. 3. Senzori. • prin portul paralel. ISA.9.. display-ul. placa SAD.

d. Semnalele sunt transmise de la circuitul de comandă către circuitele de putere din proces (sau invers) fără legătură electrică. Filtrarea (fig. Grupa A de sarcini a conducerii unui robot 71 72 CONDUCEREA ROBOŢILOR b. infraroşii. c.22 sunt prezentate două variante de circuite care asigură separarea galvanică între circuite. care induc în circuite semnale parazite ce se suprapun peste semnalele utile. respectiv alte cazuri în care tensiunea de alimentare este alternativă. Exemple de circuite de izolare galvanică Observaţi: Ca principiu. Principiul utilizat este acela că fiecare semnal este transmis pe fir în momentele în care celelalte semnale nu trebuie transmise sau lipsesc. Legătură electromagnetică Multiplexarea se realizează implementându-se chei electronice care comută accesul câte unui circuit la conductorul de legătură în momente convenabile sau dorite.este necesară pentru eliminarea semnalelor nedorite ce se suprapun peste semnale utile. Izolarea – în toate aplicaţiile se procedează la separarea galvanică (izolare electrică) între circuitele de comandă (de „ curenţi slabi”) şi circuitele de putere (de „curenţi tari”).majoritatea traductoarelor au o caracteristică de transfer (intrare-ieşire) neliniară. apare pericolul de a se transmite avaria şi la SAD şi calculator. Izolarea galvanică se asigură prin optocuploare. Pentru a corecta efectele de neliniaritate se procedează la liniarizarea caracteristicii traductoarelor încă la nivelul blocului de intrare al SAD. obişnuit.23. între 4 Hz şi 10 kHz. Filtrarea unui semnal e. Această neliniaritate influenţează negativ rezultatul măsurării.23) . Modelarea mediului. la monitorizarea temperaturii mai multe traductoare de temperatură sunt legate la câte un canal de intrare al blocului formator. . Observaţie: Dacă se analizează foaia de catalog a oricărui microprocesor/ microcontroler existent pe piaţă se constată că la câte pin al acestora sunt indicate mai multe funcţiuni.22. cu diferite frecvenţe. Tendinţa de astăzi este de a folosi acelaşi fir de legătură pentru a transmite cât mai multe semnale.3.3. Fig. Liniarizarea . în general între circuitele ce funcţionează nemijlocit în proces şi cele de comandă.3. multiplexarea se foloseşte cel mai convenabil în cazul operării cu semnale lent variabile în timp. niciodată masa de la circuitul de comandă nu se leagă electric la masa circuitului ce funcţionează nemijlocit în proces. Gama de zgomote industriale este cuprinsă. fără de care nu pot funcţiona. Pe acelaşi fir se transmit.Cap. de regulă. Sunt unele cazuri în care alimentarea se face cu tensiune continuă. Asta înseamnă că un acelaşi pin este folosit pentru a transmite semnale diferite în momente sau situaţii diferite. Legătură optică Fig. Filtrarea se realizează cu circuite şi/sau tehnici de filtrare. În mediul industrial se produc multe zgomote de natură electromagnetică. 3.3. Multiplexarea – din motive economice. În figura nr. Excitaţia – există suficiente cazuri în care senzorii/traductoarele necesită curenţi şi/sau tensiuni de alimentare. iar placa SAD comută pe rând fiecare canal de intrare la sistemul său de măsurare şi memorare a informaţiei citite. transformatoare de separare sau folosind transmisia prin unde ultrasonice. astăzi nu se mai foloseşte câte un fir conductor pentru a transmite câte un singur semnal. De pildă. În cazul unui SAD. Izolarea este necesară pentru că senzorii şi traductoarele sunt amplasate pe partea de proces unde pot exista tensiuni/curenţi mari. dacă nu ar exista izolare. mai multe semnale. iar în caz de avarie. radio. f.

Fig. Cu cât numărul de eşantioane prelevate este mai mic cu atât semnalul discret achiziţionat este mai eronat. Grupa A de sarcini a conducerii unui robot 73 74 CONDUCEREA ROBOŢILOR • Canal diferenţial : pe care se transmit două semnale (două fire). cu cât capacitatea memoriei de pe placă este mai mare poate fi memorat un număr mai mare de eşantioane şi calitatea achiziţiei creşte. sunt afectate de zgomotul industrial. iar aceasta depinde direct de viteza de lucru a procesorului plăcii. se procedează astfel la rejecţia semnalului comun. după achiziţie. semnalul de zgomot este acelaşi în ambele puncte. • Numărul de canale – o placă de achiziţie este mai performantă sau nu în funcţie de numărul de canale analogice de intrare disponibile. Canalele de intrare analogice pot fi de tip: • Canal singular: pe un astfel de canal poate fi transmis un singur semnal (conectat la un fir conductor). Discretizarea unui semnal analogic • Rezoluţia – în figura nr. Fig. Calitatea achiziţiei este mai mare dacă rata achiziţiei este mai mare. respectiv minimă acceptată.220 V. conţin fiecare mai multe canale de conversie. dacă două puncte apropiate.25). fire ecranate). De asemenea. Valoarea cea mai scăzută a semnalului sinusoidal are ca şi corespondent numărul binar 000. Pe o placă de achiziţie se află mai multe circuite integrate care.3.principiul de achiziţie discretă a unui semnal continual este acela că în momente discrete se prelevează câte un eşantion din semnalul original (vezi fig. pentru amplitudinea semnalelor analogice ce pot fi achiziţionate. dintre care mai importanţi sunt: • Domeniul de valori – pe care o acceptă o intrare analogică. fire torsadate. semnalele analogice achiziţionate trebuie să treacă printr-o conversie analog-numerică. adecvate achiziţiei de semnale analogice de la tipurile mai noi de senzori concepute anume ca să fie slab consumatoare de energie de alimentare.3.24. pe care sosesc semnale cu diverse forme de variaţie în timp. ± 12 V. cu frecvenţa şi amplitudinea oarecare. Simbolul CAN Calităţile intrărilor analogice se apreciază cu câţiva parametrii caracteristici. Circuitul care realizează conversia semnalului analogic într-un număr(binar) este denumit convertor analog-numeric (CAN).Cap. la rândul lor. ± 24 V. numeric (pe calculator). Evident că performanţele superioare presupun şi costuri de fabricaţie mai mari. Observaţie: Intrările diferenţiale sunt necesare pentru eliminarea zgomotelor.9. Unele plăci sunt prevăzute chiar cu intrări pentru microsemnale. deoarece 3. Pe traseul de transmisie a astfel de micosemnale trebuie luate măsuri speciale de protecţie împotriva zgomotelor (fire de legătură scurte. În figura nr. amplificând numai diferenţa dintre cele două semnale zgomotul este eliminat. O placă SAD este întotdeauna construită în jurul unui microprocesor/microcontroler care coordonează întregul proces de achiziţie. Principalele dotări pentru o placă SAD sunt: a.3. • Frecvenţa (Rata) de eşantionare . Astfel de plăci se produc astăzi ca produse de firmă. denumită uzual placa de achiziţie. de prelevare prin semnale analogice a unei informaţii din proces.3. Intrări analogice – sunt pinii de intrare ai plăcii.25. . Uneori se utilizează pentru acestea şi denumirea de intrări nedigitale. 3. iar valoarea cea mai mare (amplitudinea) sa corespunde valorii numerice 111.4. Hardware-ul SAD Suportul hardware al unui sistem de achiziţie de date este implementat pe placa SAD (fig. interesează numai diferenţa dintre cele două semnale. Având în vedere faptul că datele se prelucrează. Cu cât numărul de eşantioane este mai mare semnalul achiziţionat în formă discretă reproduce mai fidel semnalul analogic de origine. Orice astfel de intrare are o valoare maximă admisă.3.26 se reprezintă modul în care un semnal analogic sinusoidal este convertit într-un număr binar. 0.24. Exemple de valori mai frecvent întâlnite sunt: ± 5 V.3.21). prin conversie se obţine un număr binar reprezentat pe 3 biţi. Modelarea mediului. se prezintă simbolul utilizat pentru reprezentarea unui CAN. În exemplul prezentat. O placă SAD este mai performantă sau nu după cum poate achiziţiona sau nu mai multe eşantioane dintr-un semnal analogic de o anumită de frecvenţă.

Modelarea mediului. c.27.Cap. dacă aceste semnale sunt generate de calculator atunci este necesară o conversie de la forma digitală la cea analogică. • Acurateţea relativă – în ultimii ani termenul tradiţional de precizie a fost valoarea corespunzătoare numărului binar pe baza căruia este generat.28.26. în care printr-un un nivel de tensiune cuprins între 4. Parametrul slew-rate .28). 3. De aceea placa trebuie să fie dotată şi cu un număr de linii intrare/ieşire (input/output I/O) pe care să se vehiculeze semnale digitale. Cel mai frecvent este utilizat standardul TTL. Observaţie: Cu cât numărul de biţi de reprezentare a mărimi de ieşire este mai mare rezoluţia este mai fină. sisteme de semnalizare luminoasă. panta de creştere (slew rate) ce are influenţă în dinamica unui proces (fig. Fig. Rezoluţia la o conversie analog-numerică înlocuit cu cel de acurateţe. Din punctul de vedere al acestui parametru. Definiţia şi detalierea acestor termeni nu fac obiectul lucrării de faţă.75 V şi 5.3. cu câţiva parametrii caracteristici.3. Observaţie: semnalele generate de placa SAD la nivel TTL nu au putere electrică suficientă pentru a comanda direct elemente de execuţie într-un proces. comunicaţia pretinde utilizarea de semnale de frecvenţă ridicată (comunicaţie prin unde radio sau în infraroşu). b. În consecinţă. Intrări/ieşiri digitale – o placă de achiziţii comunică cu procesul. La fel de importantă este şi frecvenţa semnalelor numerice care se pot transmite/ recepţiona. Există situaţii în care comunicarea trebuie făcută cu procese lente (sisteme de încălzire.45 V are semnificaţia lui „ 0 ” logic. Ieşirile analogice . Pentru semnalele numerice de ieşire este importantă. Unii dintre aceştia sunt similari cu cei enunţaţi la intrările analogice: Fig. sau rapide. şi acurateţea prelucrării semnalelor este mai bună dacă regimurile tranzitorii durează mai puţin. semnalele de nivel TTL trebuie amplificate la nivelul adecvat utilizării pentru comanda efectivă a unor dispozitive ce operează nemijlocit în procese. În alte cazuri.3. Fig.) şi comunicarea se poate realiza utilizând semnale de frecvenţă mai mică. sisteme de acţionare etc. deşi şi în acest caz se procedează la multiplexare. Simbolul CNA Calităţile ieşirilor analogice se apreciază. analogic de la ieşire dacă numărul binar convertit se schimbă cu un bit. Simbolul unui CNA este cel reprezentat în figura nr. Circuitul care realizează o astfel de conversie se numeşte convertor numeric-analogic (CNA).3. • Timpul de stabilizare – procesul de achiziţie de semnale presupune numeroase comutări ale componentelor electronice de pe placa SAD. Numărul de linii I/O digitale este important fiindcă de el depinde şi numărul de unităţi externe cu care poate comunica. • Domeniul de valori – reprezintă plaja de valori pe care le poate avea semnalul • Rezoluţia la ieşire – se exprimă prin valoarea cu care se schimbă semnalul • Acurateţea relativă. cu echipamente periferice şi/sau de testare. În plus. ca parametru ce defineşte calitatea sa. un timp de stabilizare scurt reprezintă un plus de calitate pentru o placă de achiziţie. care este cel mai solicitant în funcţionarea acestora. De aceea. În consecinţă.1 V se reprezintă nivelul logic „ 1 ”. fiabilitatea unui SAD creşte dacă circuitele sale ajung rapid la o stare stabilizată.o placă SAD trebuie să şi transmită către proces diferite semnale analogice. Valoarea curentului acceptat de standardul TTL este de până la 16 mA. • Timpul de stabilizare – este timpul după care semnalul de ieşire ajunge la analogic de la ieşire. Grupa A de sarcini a conducerii unui robot 75 76 CONDUCEREA ROBOŢILOR Rezoluţia este valoarea analogică (exprimată în volţi de exemplu) cu care trebuie să se schimbe semnalul analogic de intrare. la rândul lor. Specific pentru I/O numerice este că semnalele utilizate sunt conforme unor standarde generale. iar un nivel de tensiune cuprins între 0 şi 0.3. convertoarele pot fi lente. Comunicarea presupune întotdeauna şi un schimb de semnale numerice. pentru ca numărul binar rezultat în urma conversiei să se schimbe cu un bit. În timpul comutaţiei circuitele electronice se află într-un regim tranzitoriu.27. De exemplu o servovalvă dintr-un sistem hidraulic se comandă cu o tensiune de ordinul zecilor de volţi şi un curent de ordinul amperilor.

Cap. 3. Modelarea mediului. Grupa A de sarcini a conducerii unui robot

77

78

CONDUCEREA ROBOŢILOR

Datorită utilizării unui microprocesor/microcontroler în arhitectura constructivă a unei plăci SAD, organizarea transmiterii semnalelor pe diferite căi şi componentele suplimentar utilizate sunt conforme acestei familii de circuite: d. Magistrale de date Magistrala este un set de linii de conexiune electrică, prin care se asigură schimbul de semnale necesar la sinteza unei aceleiaşi funcţii într-un sistem. Dacă setul de conexiuni este dedicat transmisiei de date ea constituie magistrala de date. Numărul căilor de conexiune ce o alcătuieşte este multiplu de 8 pentru că, în cod numeric, cuvintele sunt construite pe byţi. Observaţie: Un byte conţine 8 biţi, iar cuvântul bit s-a obţinut prin comprimarea cuvintelor englezeşti binary digit. O placă SAD este cu atât mai performantă cu cât viteza de transmisie/recepţie a datelor şi cu cât volumul de date vehiculat este mai mare. e. Magistrala de comandă Setul de conexiuni ce constituie magistrala de comandă transmite numai semnale de comandă: start/stop, activare/dezactivare, validare/inhibare, transmisie/ recepţie etc. Semnalele de comandă asigură sincronismul între evenimente ce au loc în proces, pe placa SAD şi în calculator. Exemple: se asigură declanşarea efectuării conversiilor cu momentele de disponibilitate a semnalelor ce trebuie convertite; se asigură sincronizarea transmisiei/recepţiei de semnale; se sincronizează măsurarea intervalelor de timp. Schimbul de informaţii între placa de achiziţie şi proces se face pe baza unui protocol al schimbului de semnale. În multe cazuri acest protocol se face pe principiul hand-shaking tradus de către unii autori cu principiul cerere-răspuns. f. Circuite de numărare/ temporizare (CTC) Orice echipament construit cu microprocesor/microcontroler este dotat cu circuite dedicate cu care se efectuează numărarea evenimentelor de interes, respectiv contorizarea intervalelor de timp dintre momentele în care evenimentele se produc. Astfel de circuite sunt denumite de tip timer/counter (CTC) sau simplu timer. În limba română se foloseşte terminologia de circuit de temporizare/numărare, dar se acceptă de obicei şi denumirea din engleză (vezi mai multe detalii în cap. 5., paragraful 5.9.5.). Un CTC funcţionează în mod autonom faţă de unitatea centrală de calcul degrevând–o de sarcina numărărilor simple. Există circuite CTC constructiv înglobate în microprocesoare/ microcontrolere, dar se produc şi circuite integrate de sine–stătătoare, denumite uzual timere dedicate. Un CTC poate opera în două regimuri de bază: • regimul counter (regimul de numărător): în care circuitul numără impulsuri recepţionate la una dintre intrările sale; • regimul timer (regimul de temporizator): în care circuitul devine generator de intervale de timp (cu valori programabile semnalează, cu câte un semnal emis spre exteriorul său, încheierea unei anumite durate. Principalii parametrii de apreciere a calităţii unui CTC sunt: • frecvenţa de tact – un CTC este considerat rapid dacă poate funcţiona la frecvenţe de tact ridicate;

• rezoluţia – este determinată de lungimea cuvintelor de cod cu care un CTC

poate opera. Cuvintele de programare sau rezultatul unei numărări se pot reprezenta pe 8,16, 24, 32 sau 64 de biţi, în funcţie de capacitatea circuitului. Evident că, intervalele de timp generate sau numărul evenimentelor contorizate se stabileşte cu o mai mare fineţe (cu o rezoluţie mai bună) dacă se dispune de o reprezentare pe mai mulţi biţi. Observaţie: Valori de catalog întâlnite pentru CTC-uri utilizate la plăci SAD sunt, de pildă, 24 biţi / 20 MHz, respectiv 32 biţi / 80 MHz. Diferenţa calitativă dintre cele două perechi de valori exemplificate nu mai necesită explicaţii suplimentare. g. Memorii – de tip RAM şi ROM, a căror prezentare mai detaliată este făcută în paragraful 5.2.

3.9.5. Pachetul de programe al unui SAD
Un sistem de achiziţie de date este făcut funcţional dacă şi numai dacă, este dotat şi cu un set de programe adecvat. Pachetul software este, de fapt, integratorul de sistem SAD. Utilizarea unei plăci SAD nu este posibilă fără a o conecta la un calculator şi fără pachetul de programe aferent. Software-ul ataşat unei plăci de achiziţii este alcătuit din două pachete de programe distincte: a. Software driver – este constituit din setul de programe care fac funcţională placa de achiziţie: programează direct registrele hardware de pe placa SAD, gestionează sistemul de întreruperi şi priorităţile în deservirea acestora, stabileşte modalităţile de partiţionare şi de acces la memorie (inclusiv DMA – direct memory access). Observaţie: ca sistem de operare pe calculator poate fi utilizat oricare dintre cele uzuale (Windows, Linux). b. Software de aplicaţie – se compune din programe dedicate, elaborate pe specificul câte unui tip de proces. Aceste programe utilizează faciltăţile conferite de programele driver şi le completează cu abilităţi de prelucrare a datelor achiziţionate şi de afişare a rezultatelor prelucrării.

3.10. Sistem de vedere artificială
Sistemul de percepţie al unui robot (sistem mecatronic, în general) are în componenţa sa senzori şi traductoare, care pot fi simple dar pot fi şi sisteme complexe. În unele cazuri astfel de sisteme sunt chiar deosebit de complexe, cum este şi cazul sistemelor de vedere artificială. Un sistem de vedere artificială este dotat cu senzori de vedere şi cu un sistem de prelucrare a imaginilor ce are la bază un calculator propriu. Senzorii de vedere se realizează fie cu o cameră TV fie, în ultimii ani, cu o cameră CCD. Observaţie: CCD sunt majusculele de la cuvintele englezeşti Charge Coupled Device, traduse în limba română cu dispozitiv cu cuplare prin sarcină. Acesta este

Cap. 3. Modelarea mediului. Grupa A de sarcini a conducerii unui robot

79

80

CONDUCEREA ROBOŢILOR

un grup de dispozitive electronice dispuse în linie sau în matrice în interiorul cărora se produce o conducţie de sarcini electrice, mai mare sau mai mică, în funcţie de intensitatea luminii cu care sunt iluminate. Camera sau senzorul CCD se leagă la un sistem numeric pentru procesarea imaginii. Acesta se efectuează în următoarele etape: a) digitizarea şi memorarea imaginii culese; b) îmbogăţirea imaginii (picture enhancement = completarea imaginii cu părţi pierdute la achiziţie); c) reconstrucţia imaginii; d) recunoaşterea de obiecte, recunoaşterea scenei. Observaţie: Digitizarea înseamnă că se împarte imaginea culeasă în suprafeţe elementare cât mai mici posibil. Cu cât memoria calculatorului de procesare este mai mare, cu atât suprafeţele elementare sunt mai mici. O astfel de suprafaţă elementară se numeşte pixel (prescurtare de la picture element). Pixelul este cel mai mic eşantion complet al unei imagini. Poate fi ales de formă dreptunghiulară sau pătrată, de diferite dimensiuni (mici). În acest fel, se realizează discretizarea imaginii (transformarea unei imagini continue într-o imagine compusă din elemente discrete). Se stabileşte un prag de iluminare considerat de referinţă. Toţi pixelii imaginii originale care sunt iluminaţi mai tare decât pragul stabilit primesc valoarea 1, iar cei iluminaţi sub valoarea de prag primesc valoarea 0. În memoria calculatorului se memorează imaginea pixel cu pixel, cu valoarea de iluminare aferentă. În timpul prelucrării şi digitizării imaginii aceasta poate suferi deteriorări, de aceea este necesară în continuare îmbogăţirea imaginii. Aceasta e o “restaurare” a imaginii şi se realizează folosind algoritmi speciali (care folosesc integrala de convoluţie).

După îmbogăţire se realizează şi reconstrucţia integrală a imaginii (folosind alţi algoritmi). Observaţi: cu cât echipamentul de achiziţie şi transfer (în memorie) a imaginii este mai perfecţionat, cu atât e mai simplă şi mai precisă îmbogăţirea şi reconstrucţia imaginii. La roboţii inteligenţi este posibilă şi recunoaşterea imaginii culese precum şi interpretarea scenei. Exemplu: într-un anume loc din hală se află o grămadă cu diferite scule. Un sistem inteligent de prelucrare a imaginii poate recunoaşte o sculă (pe care a învăţat-o anterior) din grămadă, indiferent de poziţia în care se află şi de care anume parte a ei este vizibilă.

3.11. Cerinţe cu privire la programul pentru modelarea mediului
În unele cazuri senzorii (de pildă cei de proximitate) se găsesc nu pe robot ci pe alte utilaje din celula flexibilă de fabricaţie (de exemplu în procesul tehnologic folosit ca model în paragraful 3.5., pe cureaua conveiorului se amplasează senzori de prezenţă pin). Şi în acest caz senzorii sunt monitorizaţi tot de calculatorul pentru modelarea mediului. Un caz special este acela al capacităţii de a se realiza anumite strategii de forţă. De exemplu, un caz deosebit de complex este conducerea unui robot care să scrie cu creta pe tablă. În acest caz punctul caracteristic trebuie să urmeze cu foarte mare exactitate o traiectorie impusă şi, în acelaşi timp, efectorul final tip dispozitiv de prehensiune trebuie să dezvolte o anumită forţă care nu trebuie să fie nici prea mică (creta să lase urme pe tablă), nici prea mare(să nu rupă creta). În aceste situaţii, programul pentru modelarea mediului trebuie să conţină instrucţiuni distincte în cadrul limbajului, prin care să expliciteze rezultatele forţei. În cazul când există astfel de instrucţiuni programul trebuie să ofere şi posibilitatea de afişare a informaţiilor culese de la senzori. Observaţie: realizarea unor bucle de reglare automată a forţei, cu utilizarea senzorilor de forţă-moment, este mai greu de realizat. Cerinţe cu privire la programul pentru modelarea mediului: a) Cursivitate. Aceasta este o cerinţă esenţială în execuţia programului. Aceasta se asigură dacă programul permite ramificări, realizarea de bucle, apeluri de subrutine şi întreruperi. Specifică şi pentru aplicaţiile de robotică este procesarea paralelă (execuţie în paralel a mai multor programe, care se întâlneşte mult mai frecvent decât la calculatoarele obişnuite). Acest lucru este necesar atât în situaţiile când într-o celulă operează mai mulţi roboţi industriali, dar şi atunci când operează un singur robot, deoarece utilajele din celula robotizată sunt comandate tot de sistemul de conducere al robotului. Cursivitatea se asigură şi prin dotarea limbajelor pentru programarea roboţilor cu interpretare, pentru ca operatorul uman să nu fie obligat ca la fiecare corectură să repete ciclul: editează, compilează, porneşte (specific compilatoarelor).

Fig.3.29. Discretizarea unei imagini

Cap. 3. Modelarea mediului. Grupa A de sarcini a conducerii unui robot

81

82

CONDUCEREA ROBOŢILOR

De regulă programele sunt dotate cu editoare de text, debuggere (depanatoare de program) şi operează cu un sistem sofisticat de fişiere. b) Fidelitate. În reprezentarea modelului lumii exterioare trebuie ţinut cont că modelul este păstrat în calculator şi de faptul că şi pentru cele mai simple obiecte e destul de greu să se asigure o fidelitate bună în raport cu lumea reală. Discrepanţele dintre modelul intern şi realitate se stabilesc la începutul programului şi trebuie menţinute pe toată durata execuţiei sale. Observaţie: la începutul întocmirii programului operatorul uman trebuie să stabilească toleranţele admise între realitatea fizică şi reprezentare. Deosebirile esenţiale între un limbaj de programare uzual şi unul de programare pentru roboţi constau în: • în primul caz, reluarea programului dintr-un anumit punct necesită doar salvarea în memorie a unor date; • în cazul roboţilor industriali orice reluare presupune şi redispunerea fizică în spaţiu a obiectelor, exact în locurile în care acestea au fost şi la prima parcurgere a programului (pentru a se asigura şi în continuare corespondenţa dintre model şi realitate). De multe ori fidelitatea modelului se strică şi din cauză că mecanismul din care e realizat robotul are o precizie limitată, respectiv de aceea că precizia sa de acţiune diferă în situaţia operării cu braţul extins faţă de cea a operării cu braţul strâns. Exemplu: există situaţii, la roboţii industriali de asamblare, când operaţia tehnologică pretinde o precizie mai mare decât cea pe care mecanismul e capabil să o realizeze. De pildă, inserarea unui pin într-o gaură când toleranţa de realizare a găurii e cu un ordin de mărime mai mică decât precizia de poziţionare a robotului. Astfel de situaţii sunt rezolvate dotând robotul cu o anumită complianţă (chiar complianţă inteligentă în ultimul timp) Fidelitatea se îmbunătăţeşte dacă se efectuează corecturi asupra programului în timpul unor încercări preliminare. În multe procese tehnologice (vopsire, nituire, găurire, sudare) reluarea programului presupune aducerea de noi obiecte în locul acelora asupra cărora robotul a acţionat la prima rulare a programului. Se întâlnesc şi cazuri când repetarea unei etape a procesului tehnologic presupune re-executarea a alte 2–3 etape anterioare aceleia care se corectează de fapt.

3.12. Simularea proceselor robotizate. Realitatea virtuală
Realitatea virtuală este o „lume” creată prin programe pe calculator. Cu aceste programe se reprezintă diferite variante de evoluţie a unor evenimente în funcţie de condiţiile create de O.U. Exemplul cel mai cunoscut şi răspândit este acela al jocurilor pe calculator. Există însă programe care creează realitate virtuală şi pentru diferite procese reale. De pildă, sunt în funcţiune sisteme de simulare a conducerii automobilului, ce

folosesc autoturisme reale care pot fi „conduse” de şofer pe „trasee” sintetizate artificial, fără ca automobilul să se deplaseze din laborator. Simulatoarele de zbor utilizate în pregătirea aviatorilor sunt astăzi realizate tot utilizând mijloace software. Sunt cunoscute diferite aplicaţii pentru analize sau lucrări de laborator, în care utilizatorul se află la mare distanţă, are reprezentat pe display-ul calculatorului său întregul laborator şi poate „opera” cu aparatura „din dotare”. Operaţiile reale din laboratorul propriu-zis se pot desfăşura concomitent sau decalat în timp faţă de manevrele utilizatorului de la distanţă. Nu în ultimul rând, se pot menţiona aplicaţile din cinematografie, în care numeroase scene la care „participă” actori reali sunt sintetizate cu calculatorul, fără ca spectatorul să poată deosebi scenele filmate în medii reale de cele sintetizate. Programele ce sintetizează realitatea virtuală sunt instalate pe sisteme de calcul extrem de puternice, dotate cu memorii foarte mari şi sisteme de interfaţare performante, prin care se asigură o legătură bidirecţională cu utilizatorul. Sistemele conţin baze de date uriaşe, care conţin informaţii cât mai complete despre procesele ce le simulează, care se completează permanent cu experienţele şi cunoştinţele noi dobândite, sunt dotate cu elemente de inteligenţă artificială. Şi în robotică se procedează la utilizarea de programe ce sintetizează realitate virtuală. Sunt disponibile discuri cu care OU poate să creeze pe display-ul unui calculator o celulă robotizată, alegându-şi componentele necesare: maşini unelte, instalaţii automate aducătoare de piese neprelucrate, instalaţii de evacuare a pieselor fabricate, depozite de scule, sisteme de control al calităţii, variante de roboţi ş.a. Cu astfel de programe OU poate simula diferite procese tehnologice robotizate, poate „învăţa” robotul să execute operaţiile ce trebuie să le execute. Robotul „dobândeşte experienţă” pe parcursul învăţării şi „ţine minte” operaţiile ce le-a „învăţat”. Dexteritatea robotului se optimizează o dată cu cea a OU care foloseşte programul. Toate firmele producătoare de roboţi au dezvoltat programe de simulare cu care inginerul proiectant concepe o nouă aplicaţie. Proiectantul foloseşte o bibliotecă de simboluri cu care reprezintă grafic toate componentele, le amplasează şi le interconectează în cadrul unei celule sau linii de fabricaţie ce se doreşte a fi nou creată. Pe ansamblul nou proiectat se pot derula, pe calculator, diferite procese tehnologice ce se vor desfăşura ulterior şi în realitatea fizică. În ultimul timp s-au creat şi sisteme ce permit programarea roboţilor în aplicaţiile sintetizate virtual. Se concep şi se scriu programele, se realizează verificările şi eventualele corecturi pe sistemul virtual, se obţin programele în varianta lor finală, iar acestea se pot converti spre a fi folosite direct şi la roboţii reali, atunci când se încheie construcţia propriu - zisă. În acest fel, se obţine o importantă economie, nefiind necesară utilizarea roboţilor şi maşinilor adevărate în faza de alcătuire şi verificare a programelor de lucru. Sunt doar necesare mici ajustări la punerea în funcţiune a unei noi celule sau linii de fabricaţie.

Observaţie: De obicei. trecerea se face fără oprire.).pentru cuplele de rotaţie – dau distanţe d – pentru cuple cinematice de translaţie. cu o anumită viteză impusă. dar exprimate în coordonate c.c. În desfăşurarea unui proces tehnologic este necesar ca dispozitivul de ghidare să aibă o mişcare lină.c.c. Cele mai multe dintre aceste puncte sunt impuse de procesul tehnologic şi reprezintă puncte ţintă (goal points). când punctele ţintă şi via sunt exprimate prin seturi de valori θi sau/şi di de la nivelul c.c. Deoarece punctele definite mai sus se află în spaţiul de lucru al robotului (impunându-se trecerea prin ele).c.” (coordonate articulare).c. GENERAREA ŞI CONTROLUL MIŞCĂRILOR Reprezintă sarcina fundamentală a echipamentului de conducere a unui robot. Orientările şi poziţiile punctului caracteristic (exprimate cu T6. Notă: q este coordonata generalizată utilizată în conducere . pe scurt. Deosebirea între un şofer experimentat şi unul începător se manifestă.1.1) unde f este o funcţie lină. O funcţie se numeşte lină dacă funcţia şi cel puţin primele sale două derivate sunt continue în timp (uneori se cere şi ca şi derivata a 3-a să fie continuă). vezi subcapitolul 3.(coordonate articulare. de cele mai multe ori. în raport cu obiectele din mediu. de însuşi procesul tehnologic (de exemplu paletizare. fără frânări şi/sau accelerări bruşte.c. el trece prin puncte via (puncte de trecere). Observaţie: Această problemă este întâlnită şi în viaţa cotidiană la conducerea automobilului: În primul rând. astfel încât punctul caracteristic să ocupe. interesează deplasarea automobilului pe drumul impus.5) pot fi calculate (în blocul pentru modelarea mediului) sau pot fi învăţate. în fiecare etapă. Conducerea unui robot poate fi realizată în coordonate operaţionale (carteziene). La trecerea punctului caracteristic printr-un punct ţintă sistemul de coordonate ataşat acestuia are anumite poziţii şi orientări care se exprimă matricial (de exemplu cu matricea T6).. coordonate c. mai ales. cu analiza cinematică inversă se determină un set de coordonate poziţionale relative ale elementelor cuplelor cinematice conducătoare sau. prin felul în care cei doi asigură o evoluţie lină vehiculului. Contează unde şi cum „pune mâna” robotul.c. o mişcare fără smucituri este impusă şi de necesitatea de a reduce la minimum uzurile din structura sistemului mecanic.c. Dintre aceste puncte via unele sunt puncte via propriu-zise (through via points).c. fără accelerări şi/sau frânări bruşte. în realitate.c. prin care trecerea este obligatorie. În deplasarea punctului caracteristic de la un punct ţintă la altul. la care trecerea se face numai prin vecinătatea lor. numite şi coordonate articulare sau coordonate robot. iar altele sunt puncte pseudovia.84 CONDUCEREA ROBOŢILOR Capitolul 4 SPECIFICAREA. În fiecare etapă a procesului tehnologic punctul caracteristic trece prin anumite puncte din spaţiul cartezian. Concluzie: problema conducerii unui robot constă din două aspecte între care există o strânsă legătură: impunerea trecerii prin punctele ţintă sau via (exprimate în coordonate c. Pe de altă parte. . Problema conducerii unui robot Conducerea unui robot presupune două aspecte aparent distincte dar aflate. De cele mai multe ori se foloseşte exprimarea în coordonate carteziene. cu evitarea obstacolelor. iar prin punctele via. sau în coordonate c. Există însă şi cazuri în care şi în punctele via este obligatorie şi oprirea. când punctele ţintă şi via sunt exprimate cu valori numerice concrete pentru elementele matricii T6. în conducerea unui robot interesează şi evoluţia în timp a mişcării acestuia. II) În afară de trecerea prin punctele ţintă şi via. sau coordonate robot). într-o interdependenţă numai principial divizibilă. ci şi orientarea în spaţiu a efectorului final. Acestea pot fi unghiuri θ . Setul de valori obţinut (cu analiza cinematică inversă) este tot un set de puncte ţintă sau via. Aşadar punctele ţintă sunt fie învăţate. fie calculate.c. Evoluţia lină în timp se asigură dacă pentru coordonata generalizată q se alege o variaţie în timp: q = f (t) (4. adică pentru q se alege o lege de mişcare lină.c. interesează ca automobilul să aibă o evoluţie lină.poate fi operaţională (carteziană) sau c. I) Parcurgerea etapelor unui proces tehnologic presupune deplasarea dispozitivului de ghidare. Acest deziderat este impus. Pornind de la coordonatele operaţionale (carteziene) care corespund trecerii punctului caracteristic printr-un punct ţintă sau via. fără smucituri. sau în coordonate operaţionale) în condiţiile asigurării unei evoluţii line (în timp) a mişcării. 4. montaj etc. Pe de altă parte. înainte de efectuarea deplasării. respectiv “conducerea unui robot în coordonate c. Se utilizează curent terminologia “conducerea unui robot în coordonate operaţionale” (carteziene). Observaţie: la trecerea printr-un punct din spaţiul cartezian contează nu numai atingerea punctului respectiv. de regulă. situări impuse sau determinate (acesta este scopul conducerii unui robot). în punctele ţintă este obligatorie şi oprirea. este natural ca punctele ţintă şi via să fie exprimate în coordonate operaţionale (coordonatele în care operează efectorul final al robotului).c.

Se poate spune că robotul învaţă cu aproximaţie o traiectorie (nu chiar strict) impusă. La această metodă se procedează la comanda simultană a tuturor motoarelor de acţionare şi. 4.2.1. Comanda PTP Exemplul clasic de aplicare a acestei metode este sudura în puncte. dar robotul învaţă mult mai multe puncte obligatorii de trecere Pe fig. operatorul uman trebuie să asigure un spaţiu de lucru lipsit de obstacole (pentru a evita coliziunile). cum se arată în fig. Întrucât traiectoria descrisă de punctul caracteristic este imprevizibilă.2. • conducerea la puncte ţintă calculate de către calculatorul (sau blocul software) pentru modelarea mediului. Comanda secvenţială a unui robot TTT O astfel de metodă de comandă este dezavantajoasă din punctul de vedere al productivităţii mici. interesează traiectoria descrisă de punctul caracteristic de la un punct ţintă la altul. Fig. în cazul unui robot T. Traiectoria descrisă de punctul caracteristic se obţine ca rezultat al mişcărilor simultane de pe toate axele. Clasificarea metodelor de conducere după modul de efectuare a deplasărilor conducerea secvenţială în care se procedează la comanda succesivă a motoarelor de acţionare.2. Specificarea. Metode de conducere a roboţilor Metodele de conducere a roboţilor se pot clasifica din trei puncte de vedere: • în funcţie de sursa pentru punctele ţintă. În cazul acestei metode interesează numai atingerea punctelor ţintă impuse (cu orientarea aferentă a punctului caracteristic) şi nu Fig. s-au reprezentat mai multe puncte de trecere impuse.4. toate la viteză maximă. conducerea multipunct – MTP -.1.Cap.3. 4.2. 4. Această metodă se aseamănă cu metoda PTP.4. Metoda se aplică la roboţii mai simpli (mai ales la manipulatoare). 4. Comanda MTP . conducerea punct cu punct sau point to point – PTP .T. s-au reprezentat cele două puncte 1-de pornire şi 2.1.T. dacă se poate.2.4. • după modul de execuţie a deplasărilor. În fig.de oprire. Fig. De exemplu.2..3.4. Clasificarea metodelor de conducere a roboţilor după sursa pentru punctele ţintă • conducerea la puncte ţintă învăţate prin instruire (programare prin învăţare). • după coordonatele folosite în conducere.4. generarea şi controlul mişcărilor 85 86 CONDUCEREA ROBOŢILOR 4.

c. la anumite valori pentru timp. valorile numerice aferente ale lui f(t) trebuie să fie egale cu valorile lui q corespunzătoare unor puncte ţintă şi via de pe traiectorie. Traiectorii în mişcare Locul geometric al punctelor din spaţiul de lucru al robotului ocupate de punctul caracteristic în timpul deplasării sale se numeşte traiectorie. 4. Prin trajectory se înţelege traiectoria spaţială. coordonate robot).c. Se generează mişcări line la nivelul fiecărei cuple cinematice conducătoare şi se urmăreşte numai mişcarea la nivel articular.c. punctul caracteristic descrie întotdeauna o traiectorie: • în unele cazuri această traiectorie este impusă de procesul tehnologic. la puncte învăţate 4. Acest caz este cazul cel mai complex de conducere a unui robot şi presupune un număr mare de calcule şi o deosebită acurateţe în execuţia mişcării.c. În acest caz. Indiferent de modul de conducere al robotului. urmă). De aceea. Mişcarea este urmărită la nivelul efectorului final. Sunt necesare multe calcule întrucât mişcarea se comandă cu motoarele de acţionare amplasate la nivelul cuplelor cinematice conducătoare. caz în care se efectuează conducere CP – pe traiectorie carteziană continuă.3. Dacă mişcările sunt line la nivelul fiecărei cuple cinematice conducătoare. pentru coordonata generalizată q se alege legea de mişcare q = f(t) (4. Prin path se înţelege strict traiectoria geometric descrisă în spaţiu (cu sensul de trasă. • evoluţie lină în timp.1) unde f(t) este o funcţie de timp lină. Exemple: 1) Metoda de conducere pe traiectorie continuă şi metoda de conducere în coordonate carteziene se folosesc (împreună) la sudarea după rost. Clasificarea metodelor de conducere după coordonatele utilizate Conducerea în coordonate articulare (coordonate c. 4. pentru atingerea (cu precizie) a fiecărui punct din spaţiu trebuie efectuată analiza cinematică inversă şi analiza cinematică directă de câte 2-3 ori . Înţelesul lor este însă diferit. Dimpotrivă. în robotică. Observaţie: metodele de conducere prezentate nu trebuie înţelese ca metode distincte. Conducerea în coordonate carteziene (coordonate operaţionale) – cartezian motion în limba engleză .. Suplimentar. cu analiza cinematică inversă. conducerea pe traiectorie continuă CP (Continuous Path). atunci şi mişcarea per ansamblu este lină. cu traiectorie. Legătura spaţiu-timp în mişcarea unui robot În conducerea unui robot interesează: • trecerea prin anumite situări impuse sau calculate.4. . generarea şi controlul mişcărilor 87 88 CONDUCEREA ROBOŢILOR Exemplul clasic de aplicare a acestei metode este vopsirea prin pulverizare a unei suprafeţe cu robot de vopsire. 2) Sudura în puncte a caroseriei unui automobil se face folosind metoda PTP asociată cu conducerea în coordonate c. iar urmărirea mişcării se face a nivelul efectorului final.2. în momente diferite. În acest scop.c. fie cu cea cu puncte calculate. Cele două metode pot fi asociate fie cu metoda de conducere la puncte învăţate. utilizate fiecare separat. acceleraţie). • în alte cazuri traiectoria descrisă nu este impusă. puncte ţintă în coordonate c. Observaţie: în literatura de limbă engleză există doi termeni: trajectory şi path care în limba română se traduc la fel. La trecerea de la un punct ţintă la altul (se comandă simultan motoarele de acţionare) punctul caracteristic descrie o traiectorie oarecare. Se obţine o traiectorie ca rezultat al tuturor mişcărilor efectuate la nivelul fiecărei cuple cinematice conducătoare. ceea ce înseamnă că funcţia şi primele sale două derivate sunt continue. În literatura de limbă engleză acest tip de urmărire a mişcărilor se numeşte joint motion. asociată cu ceilalţi parametrii cinematici ai mişcării(viteză. 4.3. interesează şi diferitele orientări pe care le au axele sistemului de coordonate ataşat punctului caracteristic în timpul evoluţiei pe traiectorie. Specificarea. se folosesc asociat câte una dintre metodele aparţinând fiecăreia dintre grupe. În conducere se procedează la comanda coordonatei generalizate către valori diferite. din punctele ţintă carteziene se calculează.c. fiind impuse numai punctele ce trebuie atinse. Legătura între spaţiu şi timp se realizează prin aceea că.Cap.

7. Fig. . dar prezintă dezavantajul că pornirea se face brusc cu viteza q =const. 4.5. Mişcarea start-stop b) evoluţie liniară pe porţiuni Fig. Profilul de viteză realizabil practic d) evoluţie după profil trapezoidal de viteză Pornind de la observaţia că nu se poate realiza o deplasare cu viteză constantă pe tot parcursul. pentru viteză se obţine o variaţie de forma prezentată în fig.4. O astfel de mişcare este foarte simplă.4. Fig.7.Cap. Este principial utilizabilă în conducerea unui robot..4.Mişcare cu aceeaşi viteză constantă Astfel de acceleraţii nu se pot obţine practic pentru că părţile mecanice mişcate au masă finită şi în momentul accelerării apar forţe de inerţie cărora li se opun forţe elastice. generarea şi controlul mişcărilor 89 90 CONDUCEREA ROBOŢILOR Exemple de legi de mişcare: a) mişcarea start – stop Fig. În consecinţă.4. Specificarea. adică o schimbare bruscă a vitezei. ca în fig.6. dar este neconvenabilă deoarece determină apariţia de şocuri. Această metodă este frecvent folosită în conducerea unui robot şi a fost denumită conducere după profil trapezoidal de viteză. ci se alege pentru viteză o variaţie trapezoidală. În final rezultă deformări în mecanism. c) evoluţie liniară O astfel de mişcare presupune deplasarea cu aceeaşi viteză constantă pe tot parcursul.4.8.4. ceea ce ar presupune o acceleraţie q = ∞ în punctul de start.4. Mişcare cu viteză constantă pe porţiuni O evoluţie liniară între două puncte ţintă sau via înseamnă deplasare cu viteză constantă între două puncte: q = k · t + n => q = k Se observă că în punctele ţintă şi via are loc o schimbare bruscă a pantei dreptei. în conducerea unui robot nu se foloseşte această metodă. în realitate. Observaţie: exemplele de mişcare prezentate mai sus constituie şi cele mai simple metode de conducere folosite la roboţi.

10. Fie o dreaptă în plan ce se presupune a deveni o traiectorie impusă (fig. iar raportul acceleraţiilor este m.4) Presupunând că această dreaptă trebuie descrisă într-un plan de punctul caracteristic. iar acesta se mişcă cu viteză constantă după direcţia axei coordonatei x şi tot cu viteză constantă după direcţia axei coordonatei y. punctul caracteristic va descrie în plan o dreaptă de pantă m.9): Ecuaţia dreptei este unde: m este panta dreptei n este tăietura dreptei. O dreaptă oarecare în plan Fig.4. generarea şi controlul mişcărilor 91 92 CONDUCEREA ROBOŢILOR Prin derivare: dy =m dx Procedând la împărţire cu dt atât la numitor cât şi la numărător: dy dt =m dt dx (4. atunci în plan se descrie o dreaptă de pantă m. iar raportul celor două viteze este m. Observaţie: În exemplul considerat s-a constatat că urmărind o anumită evoluţie în timp se obţine o anumită formă a traiectoriei din spaţiul cartezian.2.4.3) (4. realizarea unei drepte în plan se obţine alegând porţiuni cu mişcare uniform accelerată şi porţiuni cu mişcare rectilinie uniformă.7) 4. Specificarea. Continuând raţionamentul: y yt = =m x xt (4.6) (4.10. 4.): Fig.4. Legătura spaţiu-timp în descrierea unei traiectorii Fie un exemplu de traiectorie liniară într-un plan cartezian (fig.5.) y a2 y = =m x a2 x atunci în plan este descrisă o dreaptă.4.8. Din punct de vedere practic. Evoluţie după un profil trapezoidal de viteză şi (4. y = m· x+ n (4. Adică dacă pe fiecare dintre axele Ox şi Oy se alege câte o lege de mişcare: q = a2t 2 + a1t + a0 Fig.9. Puncte alese pe o traiectorie liniară .Cap.4.5) Dacă cele două mişcări după direcţia axelor de coordonate sunt uniform accelerate.

la nivelul fiecărui motor amplasat la câte o cuplă cinematică conducătoare. (4. În general vitezele şi acceleraţiile pe x şi y şi cele de la nivelul fiecărei cuple cinematice conducătoare se stabilesc cu Jacobianul aferent..6.T. dar se aplică mai greu în cazul altor tipuri de roboţi. nerealizabile fizic.Cap.13) q = a2t 2 + a1t + a0 şi rectilinie uniformă: (4. Legătura spaţiu-timp prin ecuaţii parametrice Observaţie: pentru simplificare vom arăta această legătură în cazul unei traiectorii liniare plane. • De multe ori. la nivelul fiecărei cuple cinematice conducătoare. şi a = ct. În geometria analitică se cunosc şi alte forme de reprezentare a ecuaţiei unei drepte. Dintre acestea ne interesează ecuaţiile parametrice ale dreptei: ⎧ y = a 1t + a 0 ⎨ ⎩ x = b1t + b 0 (4. De cele mai multe ori se admite deplasarea cu viteze aflate într-un raport cât mai apropiat de m şi se acceptă o anumită abatere de la dreapta impusă. Deci. 4) O astfel de metodă de conducere este direct aplicabilă în cazul unui robot T. 2) Pe fiecare dintre coordonatele x şi y se alege câte o lege de mişcare cu profil trapezoidal de viteză.2) iar în spaţiu se trasează o dreaptă de pantă m. este necesar ca la începutul şi sfârşitul trasării ei mişcarea după x şi y să se efectueze uniform accelerat cu: q = a1t + a0 (4. . metoda se aplică mai greu deoarece: • o deplasare cu x.13) se ajunge la forma ecuaţiei (4. generarea şi controlul mişcărilor 93 94 CONDUCEREA ROBOŢILOR Pe această dreaptă se aleg mai multe puncte ţintă şi via. y. după fiecare dintre axele x şi y. Pe porţiunea din mijloc se impune ca mişcarea să se efectueze cu viteze constante: vy vx ay ax =m (4. y constante nu înseamnă implicit şi o deplasare cu v = ct. 6) În cazul unui robot diferit de configuraţia T. atunci în plan punctul caracteristic descrie o dreaptă cu panta: m= ay ax = vy vx (4. cu: 4.T.6) unde t este un parametru arbitrar scalar. 5) Legile de mişcare rectilinie uniform accelerată: unde: m este panta dreptei.2) pentru dreaptă. • panta m a dreptei este impusă de traiectoria dorită şi nu întotdeauna se pot sintetiza şi practic viteze de valori astfel încât raportul lor să fie chiar m. Observaţie: eliminând t din sistemul (4. Adică spaţiul parcurs între un punct şi altul (pe porţiunile de accelerare) este diferit. 4. Pentru descrierea acestei drepte. Concluzii: metoda descrisă este direct aplicabilă pentru o structură de mecanism T.8) unde m este panta dreptei. 3) Situaţia se poate generaliza şi în spaţiul tridimensional pentru trasarea unei drepte în spaţiu. În această situaţie se alege. cea mai apropiată valoare realizabilă fizic pentru viteză şi se sintetizează deplasări cu aceste viteze rezultând o traiectorie numai aproximativ exactă. este deosebit de utilă pentru înţelegerea legăturii spaţiu-timp în conducerea unui robot. dar intervalul de timp între ele este acelaşi. dar sunt echidistante în timp. iar pe mijlocul liniei se aleg puncte amplasate mai rar.T.T. x.9) iar la sfârşitul dreptei mişcările se fac uniform încetinit cu: =m. ar n este tăietura.10) sunt funcţii line (funcţia şi primele sale două derivate sunt continue). în mişcare. deci mişcarea per ansamblu este lină.11) Observaţii: 1) Pe porţiunile de accelerare şi decelerare punctele de pe dreaptă nu sunt echidistante în spaţiu. la nivelul cuplelor cinematice conducătoare.12) ay ax =m (4. y = mx + n (4. impunând anumite valori ale vitezei pe axele x şi z şi efectuând calculul cu Jacobianul pot rezulta viteze qi . Aceasta este forma explicită de scriere. Ecuaţia unei drepte în plan este: m= ay ax = vy vx . În mod intenţionat la începutul şi sfârşitul parcurgerii dreptei se aleg puncte amplasate mai des. Specificarea. dacă se conduce robotul după un profil trapezoidal de viteză.T.T.

iar t este un parametru scalar arbitrar. Observaţii: 1). pentru că în robotică interesează evoluţia în timp a mişcării. Pornind de la aceste cunoştinţe din geometria analitică. b) legile de mişcare de la nivelul cuplelor cinematice conducătoare.19) (4. Sistemul (4.14) ⎧ F1 ( x.. Fie acestea coordonatele generalizate: qi = 1 ÷ n. 4. elipsă. 2) Denumirile “ funcţiile parametrice ale traiectoriei” sau “legile de mişcare de la nivelul cuplelor cinematice conducătoare” sau “funcţiile conducere de la nivelul cuplelor cinematice conducătoare” înseamnă acelaşi lucru. Astfel de ecuaţii parametrice există şi pentru alte curbe din plan şi spaţiu (sinusoidă. în cazul dreptei. qn ) = 0 fie cu sistemul de ecuaţii parametrice: (4. Specificarea. Funcţii conducere Pornind de la ecuaţiile parametrice ale unei curbe şi de la faptul că se impune ca deplasarea să se efectueze lin. 4. adică legea de mişcare a acesteia. 3) Ca exemplu concret. q2 . Observaţie: se pot scrie şi forme cu ecuaţii de grad mai mare. putem folosi exprimarea acesteia cu sistemul de ecuaţii parametrice: qi = fi (t ) . g şi h sunt funcţiile parametrice ale curbei. ⎪ z = h(t ) ⎩ (4. Observaţii: 1) Funcţiile de conducere sunt de fapt: a) funcţiile parametrice ale traiectoriei. curbă lănţişor. Funcţiile parametrice sunt întotdeauna polinomiale şi. nelegat de robotică. după felul cuplelor cinematice).a.7. Observaţia în legătură cu ecuaţiile parametrice ale unei curbe poate fi generalizată. o curbă în spaţiu se exprimă prin sistemul de ecuaţii: ⎧ x = f (t ) ⎪ ⎨ y = g (t ) . pentru o anumită traiectorie a punctului caracteristic.18) ⎧ y = a 3 t 3 + a 2 t 2 + a1t + a 0 ⎪ ⎨ ⎪ x = b3 t 3 + b2 t 2 + b1t + b0 ⎩ (4. qi = fi (t ) . y. g şi h sunt de acelaşi grad. z ) = 0 • forma cu ecuaţii parametrice: (4.. z.21) ⎧ x = f (t ) ⎪ ⎨ y = g (t ) ⎪ z = h(t ) ⎩ În acest caz ecuaţia curbei respective poate fi exprimată fie în forma implicită: (4. c) se aleg toate funcţiile fi (t) funcţii line.. el obţine traiectul dorit controlând exclusiv acceleraţia şi viteza motocicletei.d. se poate scrie şi un sistem de ecuaţii de gradul 2: • forma explicită: ⎧ y = a 2 t 2 + a1t + a 0 ⎪ ⎨ ⎪ x = b2 t 2 + b1t + b0 ⎩ sau: (4.16) este sistemul de ecuaţii parametrice ale curbei. în robotică se folosesc ecuaţiile parametrice ale unei curbe în care variabila scalară este timpul. y . cerc. în robotică se alege ca parametru scalar t chiar timpul. fiind aceea că cele două ecuaţii trebuie să fie de acelaşi grad. hiperbolă.20) (4. i = 1 ÷ n. b) coordonatele generalizate qi se aleg chiar coordonatele cuplelor cinematice conducătoare ale robotului (unghiuri θi sau deplasări di. Dacă scalarul t este timpul. 2). sunt funcţii line.16) unde f. Aceste funcţii qi = f i (t ) au fost numite în robotică funcţii conducere. atunci funcţiile parametrice sunt şi legi de mişcare după coordonatele carteziene. au grade diferite.m.16) O curbă în spaţiu poate fi însă exprimată şi în alte coordonate decât cele carteziene x.17) . parabolă. i = 1÷n. astfel.…). F (q1 . Aplicând această observaţie la robotică. Cele trei forme de exprimare ale unei curbe în spaţiu sunt: • forma implicită: F ( x. dar cu particularitatea că: a) se alege ca parametru scalar t timpul.Cap. să facă un salt peste mai multe obstacole sau peste un curs de apă). Pentru o dreaptă funcţiile f. În general. singura condiţie.15) ş. iar pentru traiectorii de alte forme. pentru înţelegerea conceptului teoretic mai sus detaliat. z ) = 0 (4.. generarea şi controlul mişcărilor 95 96 CONDUCEREA ROBOŢILOR La fel. se poate da cazul acrobaţiilor cu motocicleta: dacă un motociclist acrobat trebuie să realizeze o anumită traiectorie (de pildă. y ) = 0 ⎨ ⎩ F2 ( y.

La ieşirea GT se obţin. Etapele de realizare a conducerii unui robot Conducerea unui robot se desfăşoară în trei etape: 1) specificarea mişcării. acestea trebuie specificate. . care sunt impuse succesiv. pentru deplasarea elementelor mecanice.2. în engleză).y2). • să nu necesite iteraţii de calcul.. b1 care se rezolvă şi se obţin coeficienţii funcţiilor conducere. (4.8.1. Observaţie: În principiu. generarea şi controlul mişcărilor 97 98 CONDUCEREA ROBOŢILOR 4. orientări.c. Acest bloc calculează fie în coordonate carteziene. în literatura de specialitate sunt date şi câteva cerinţe suplimentare: • să fie funcţii line. Se asigură concomitent trecerea prin punctele ţintă şi via impuse şi o deplasare lină. pot să apară situaţii când specificarea trebuie efectuată online.22) În plus. Exemplu: pentru realizarea unei drepte în plan se aleg. b0. Aceste valori numerice corespund unor poziţii succesive în spaţiu pe care le ocupă elementele D. Specificarea. În acest mod.4. adică să se evite mişcările “hoinare” ale robotului (wanderer înseamnă hoinar. pentru evoluţia după coordonatele carteziene.8.11. • să aibă corespondent fizic în mişcare. În etapa de specificare se aleg funcţiile conducere (de timp) şi se impune condiţia ca. prin calcul. blocul generator de traiectorie se reprezintă ca în fig. Schematic. În sistemul de conducere al unui robot există un bloc (calculator independent sau o subrutină software) dedicat care se numeşte generator de traiectorie (trajectory planner) GT (vezi fig. Înlocuind t0 = 0 şi impunând x(t0) = x1 şi y(t0) = y1. acceleraţii. În cazul proceselor tehnologice flexibile în care etapele depind de evenimentele produse anterior. Pentru funcţiile conducere.3). Generatorul de traiectorie (GT) A doua etapă este cea în care se generează. la anumite momente. în coordonate carteziene sau c. Generarea mişcării.c.y2).8. fie în coordonate c.y1) tf → (x2. punctele traiectoriei ce trebuie descrisă în mişcare.23) adică. respectiv x(tf) = x2 y(tf) = y2 şi adăugând (eventual) condiţiile de viteză se obţine un sistem de ecuaţii cu patru necunoscutele: a0.2. GT calculează. explicitate. Schema bloc a generatorului de traiectorie GT primeşte ca date de intrare condiţiile impuse pentru deplasare şi cele impuse de dinamica sistemului mecanic (în unele cazuri primeşte chiar expresia analitică a unei traiectorii carteziene pe care punctul caracteristic trebuie să o descrie în spaţiu). • să asigure un timp de calcul cât mai scurt. Concluzie: specificarea mişcării constă în alegerea funcţiilor conducere şi calculul coeficienţilor din expresia lor.G. Calculul off-line este posibil când mişcarea care urmează a fi efectuată este pe deplin apriori cunoscută pentru procesul tehnologic respectiv. funcţiile conducere să ia anumite valori (la momente impuse funcţiile conducere să ia valorile impuse de punctele ţintă sau via).. a1. specificarea mişcării se face off-line. În aceste cazuri specificarea se face. 4.c. poziţii. cu câteva momente în avans.4. 4. locaţiile succesive în care trebuie să se situeze în timp dispozitivul de ghidare. y1). • să fie cât mai simple (ca expresie).11. iar la momentul tf prin punctul (x2. adică se efectuează înainte de demararea propriu-zisă a mişcării. x = a1t + a0 y = b1t + b0 (4. legile de mişcare (funcţiile conducere): 4. cu o frecvenţă cuprinsă între 20 Hz şi 200 Hz. mişcarea să pornească din repaos şi să se oprească în punctul final. valorile numerice discrete pentru funcţiile conducere la intervale constante de timp – cuprinse de regulă între 1/200 Hz şi 1/20 Hz (în funcţie de viteza calculatorului). fără şocuri.13) Procesul tehnologic impune ca în descrierea dreptei la un moment t0 să se treacă prin punctul de coordonate (x1. t0 → (x1.Cap. Din aceste condiţii se calculează valorile concrete pentru coeficienţii numerici din funcţiile conducere. 3) conducerea nemijlocită a elementelor cuplelor cinematice conducătoare. mai sunt impuse condiţiile: x1 = y1 = 0 x2 = y2 = 0 (4. pe baza funcţiilor conducere. Fig. totuşi. 2) generarea mişcării.c. realizând de fapt corespondenţa spaţiu-timp în mişcare. Specificarea mişcării În vederea realizării mişcărilor de către robot.

generarea şi controlul mişcărilor 99 100 CONDUCEREA ROBOŢILOR Pentru generatorul de traiectorie se cunosc două moduri de operare: a) fără sintetizarea unei traiectorii carteziene prescrise.8. Mişcările elementelor cuplelor cinematice conducătoare sunt urmărite de traductoare de poziţie. construite cu o structură de sistem cu reglare automată (SRA) (vezi şi fig. 4. În modul b) de operare generatorul de traiectorie primeşte la intrare şi expresia analitică a unei traiectorii carteziene impuse de procesul tehnologic. Schema bloc a unui sistem de conducere locală (SCL) Fiecare cuplă cinematică conducătoare este condusă de către un SCL. Observaţie: în unele cazuri se utilizează microprocesosoare sau microcontrolere mai performante şi se foloseşte un singur microprocesor sau microcontroler pentru comanda mai multor SCL (de regulă. după caz. a sau b. un agregat hidraulic. numite mărimi de reacţie. pneumatic sau mixt. EP. q r . b) cu sintetizarea unei traiectorii carteziene impuse de procesul tehnologic. Observaţie: motorul poate fi electric. viteze. acceleraţie. În etapa de specificare a mişcării generatorul de traiectorie calculează coeficienţii variabilei timp. Conducerea nemijlocită a elementelor cuplelor cinematice conducătoare Observaţie: termenul nemijlocit are. 2) Traductorul furnizează mărimile atinse în realitate de elementele mecanice: q r . 4. mărimile de la ieşirea sa reprezintă mărimi de prescriere pentru regulatoarele automate din structura sistemelor de conducere locale ce compun sistemul de acţionare al robotului. Analizând schema bloc a echipamentului de conducere a unui robot (fig.Cap. conform secvenţei de parametrii calculaţi de generatorul de traiectorie. la intervale de timp constante. pentru deplasarea elementelor mecanice. cu rolul de a amplifica. în acest context.1.4.12. punctul caracteristic descrie în spaţiu o traiectorie obţinută ca şi rezultat al mişcărilor pe toate axele (o traiectorie greu de exprimat analitic şi greu de urmărit vizual). În modul a) de operare GT primeşte ca şi condiţii impuse punctele ţintă şi via şi forma aleasă pentru funcţiile conducere. Fig.c sau carteziene). Problema conducerii nemijlocite a elementelor cuplelor cinematice conducătoare Se defineşte ca şi problemă a conducerii nemijlocite a unei axe mecanice următorul grup de 5 funcţii şi operaţii: 1) Generatorul de traiectorie furnizează (în unele cazuri prin intermediul interpolatorului) poziţia impusă qd (în unele cazuri şi/sau viteza impusă şi/sau acceleraţia impusă) numită mărime de prescriere. Conducerea fiecărui sistem de conducere locală este asigurată de un microprocesor sau microcontroler numit controler de ax (care coordonează SCL).3. acceleraţii .8.12) Componenta principală a câte unui sistem de conducere locală este motorul de acţionare care produce mişcările elementelor cuplelor cinematice conducătoare. 3) Controlerul de ax calculează abaterea (denumită uneori şi eroare). până la nivelul de putere corespunzător. ap = qd − qr av = q d − q r aa = q d − q r (4. Dacă traiectoria este complicată expresia ei se obţine prin aproximarea acesteia pe porţiuni cu segmente de curbe simple (dreaptă. maxim trei). viteză. din condiţiile impuse. coordonate (c. care fac parte din structura sistemelor de conducere locale. Indiferent de modul de conducere al robotului. Motorul este alimentat cu energie de la o sursă de alimentare (reţeaua de alimentare cu curent alternativ. comenzile către motor. Între sursa de alimentare şi motor se află etajul electronică de putere. necesare pentru deplasarea robotului. parabolă. 4.c.3) se constată că sistemul de acţionare al acestuia se compune din mai multe sisteme de conducere locală (SCL). în funcţie de tipul motoarelor folosite şi robotul este denumit cu acţionare electrică.4. În etapa de generare a mişcării GT generează.2. mişcările elementelor sistemului mecanic se provoacă la nivel articular. hidraulic. q r . pentru GT. cerc.24) . Sistemele de conducere locale asigură conducerea nemijlocită a elementelor cuplelor cinematice conducătoare. Indiferent de modul de operare adoptat. Poziţiile obţinute din funcţiile conducere trebuie să coincidă sau să aproximeze cât mai precis punctele traiectoriei carteziene impuse. şi furnizează fiecărui controler de ax informaţiile cu privire la mişcarea efectuată în realitate de elementele mecanice. În primul caz. semnificaţia direct. hidraulică. fără intermediari.…). conform condiţiilor impuse şi după funcţiile conducere alese. reţeaua de aer comprimat).3. pneumatică sau mixtă. Specificarea.

9. y rezultă din calcule astfel încât va comanda mişcarea în sensul anulării abaterii. i este cupla cinematică numărul i.c. Principalele legi de reglare sunt: • reglarea de tip P (proporţională) în care mărimea de comandă y este proporţională cu abaterea. Şi în acest caz punctul caracteristic în mişcare descrie o traiectorie. Principalele performanţe pretinse de la un algoritm de reglare sunt: • timp de răspuns cât mai scurt. Această metodă de conducere este frecvent utilizată în conducerea unui robot.c. motorul. Fiecare dintre aceste legi de reglare prezintă avantaje şi dezavantaje şi se utilizează în funcţie de performanţele urmărite în reglare.c. Specificarea. vi este viteza maxim realizabilă. cunoscute: masele care trebuie mişcate şi rezistenţele ce trebuiesc învinse se ştiu. În literatura de limbă engleză terminologia folosită este joint motion (joint înseamnă articulaţie). Observaţie: ideal ar fi ca la nivelul întregului robot să se urmărească simultan toate mişcările de pe toate axele şi să se înfăptuiască o conducere în ansamblu a robotului cu un. se consideră că elementele fiecărei articulaţii se deplasează cu viteza maxim posibilă. 4.c. b) Determinarea timpilor de deplasare După ce punctele ţintă pentru elementele cuplelor cinematice conducătoare se cunosc. • sisteme de conducere pentru câte o axă mecanică se folosesc de când se fabrică maşinile cu comandă numerică. 5) Comandă. De aceea această etapă. • legăturile dintre mişcările pe diferite axe sunt exprimabile cu ecuaţii complicate (neliniare) şi timpul de calcul necesar conducerii ar creşte exagerat de mult (conducerea în timp real devine imposibilă). la preţuri accesibile.c. prin aceasta.a. Algoritmul de reglare este proiectat astfel încât să implementeze o anumită lege de reglare. deci. iar puterea P se cunoaşte pentru fiecare motor.). integrala şi derivata ei. În cazul acestei metode specificarea mişcării presupune parcurgerea mai multor etape: a) Determinarea punctelor ţintă şi via în coordonate c. . Conducerea unui robot în coordonate c. blocul electronica de putere şi. Specificarea mişcării în coordonate c. Denumirile utilizate de diferiţi autori pentru această metodă sunt: conducerea în coordonate c. Cu aceste viteze se calculează timpul minim pentru deplasare: ti = şi: q fi − q0i vi .c.. 4. Fiecare articulaţie este prevăzută cu câte un sistem de conducere local propriu şi. se calculează matricile T6 pentru fiecare etapă a procesului tehnologic şi. Aceasta este însă obţinută ca rezultat al mişcării simultane pe toate axele (uneori nu pe toate axele). generarea şi controlul mişcărilor 101 102 CONDUCEREA ROBOŢILOR 4) Abaterea se introduce într-o formulă numită algoritm de reglare (AR). 4. ş. Observaţie: În capitolul 6 se va prezenta mai detaliat problematica reglării automate. Acest lucru nu se poate realiza momentan pentru că: • nu există traductoare carteziene de mare precizie la preţuri convenabile (preţul unui astfel de traductor este comparabil cu cel al întregului echipament electronic al robotului). la care modelarea mediului se face prin calcul. regulator global. care permite calcularea unei mărimi de comandă y cu care apoi se comandă electronica de putere şi. în acest caz. La proiectarea algoritmului de reglare se ţine seama de parametrii elementelor componente sistem (masele puse în mişcare. punctele ţintă şi via sunt memorate direct în coordonate c.c. Observaţie: Operaţiile 3 şi 4 sunt efectuate tot de controlerul de ax. • evitarea intrării în stare de oscilaţie. astfel de echipamente sunt astăzi produse de firme specializate. greu de urmărit vizual şi are o expresie analitică sofisticată. se determină punctele ţintă în coordonate c. • în cazul în care robotul a fost învăţat prin instruire (programat prin învăţare).c. proiectat de inginerii automatişti. se procedează la conducerea distribuită a axelor mecanice. parametrii etajului de electronică de putere. eventual. • reglare de tip PI (proporţional integratoare) în care y este proporţională cu abaterea şi cu integrala ei. cu analiza cinematică inversă. mişcarea elementelor mecanice în sensul anulării abaterii. în final. cazul roboţilor simpli. cu semnalul y.c.c.9.c. Cu alte cuvinte.1. motorul determinând. de asemenea. • pentru roboţii evoluaţi.c. conducerea în coordonate robot. unde i = 1÷6 (4. conducerea nemijlocită a axelor unui robot se efectuează într-un mod independent pentru fiecare cuplă cinematică conducătoare. • eroare nulă în regim staţionar. adică la nivelul fiecărei cuple cinematice conducătoare individuale. nu presupune decât preluarea din memorie a punctelor învăţate. constantele motorului de acţionare. qfi este punctul ţintă final. Mişcarea elementelor mecanice este urmărită numai la nivel articular. De cele mai multe ori traiectoria rezultată este complicată. respectiv conducerea în coordonate articulare. se observă că vitezele maxime realizabile la nivelul fiecărei axe sunt .25) q0i este punctul iniţial. • reglarea de tip PID (proporţional integrator derivativă) în care y e proporţională cu abaterea.Cap. în final.(P=ΣF x v) Într-o primă etapă. care sunt memorate.

dar există şi cazul utilizării unor polinoame de grad superior (5.Cap. Se cunosc: q (t ) = a0 + a1t + a2t 2 + a3t 3 (4. ca şi în acest caz.13 c) valorile momentane calculate să aibă corespondent fizic bine determinat. aceste condiţii sunt îndeplinite dacă funcţiile q(t) sunt polinomiale. viteza şi acceleraţia calculate pe baza lor. să se ajungă la viteza maximă.4. + cn −1t n −1 + cnt n (4. 4. Alegerea funcţiilor conducere Se alege câte o funcţie conducere q(t) pentru elementele fiecărei articulaţii în parte.26) adică cel mai lung timp dintre timpii de deplasare calculaţi la nivelul fiecărei cuple cinematice conducătoare. Adică. Coeficienţii ci .3.. generarea şi controlul mişcărilor 103 104 CONDUCEREA ROBOŢILOR Pentru elementele fiecărei axe se cunosc şi acceleraţiile maxim obtenabile şi deci se pot calcula timpii tacci de accelerare de la 0 la vi . adică poziţia. se renunţă la deplasarea cu viteza maximă a elementelor unora dintre axe. cu viteza. Ţinând cont de cele două situaţii descrise mai sus se alege ca durată a mişcării între două puncte ţintă: T= max { ti. acceleraţia constante. Funcţia conducere polinomială Pentru fiecare axă se alege. În general.2. d) să se evite realizarea de mişcări neutile (“hoinare”).4. Pentru a se realiza productivitatea maximă trebuie însă. Se cer: Să se găsească coeficienţii funcţiilor polinomiale de gradul 3 care să asigure o conducere lină între cele două puncte via impuse pentru elementele cuplei cinematice respective.. Datele problemei: Se cunosc două puncte via pentru elementele unei axe(două poziţii relative impuse elementelor articulaţiei). Observaţie: în cazul mişcării după un profil trapezoidal de viteză cazul limită este cel din fig.9. b) valorile momentane să se poată calcula prin înlocuirea directă a valorilor pentru variabila t în expresiile lor şi să nu fie necesare iteraţii de calcul. să se poată şi executa fizic. respectiv.9. este sigur că mişcările se efectuează complet pe fiecare dintre axe. respectiv de decelerare de la vi la 0 (luaţi egali). 2 sau 3. Rezolvare: Se alege o funcţie polinomială: 4. Observaţie: legile de mişcare de ordinul 1 şi 2 sunt mişcările „clasice” . 2tacci} (4. Proprietăţile impuse pentru funcţiile conducere (legile de mişcare) sunt: a) să fie funcţii continue şi să aibă cel puţin primele două derivate continue (adică să fie funcţii line). dacă altele nu se pot mişca decât mai lent. Acest mod de alegere este necesar pentru a asigura execuţia completă a mişcărilor la nivelul fiecărei axe mecanice .c. pentru fiecare valoare a lui t.27) Cel mai frecvent se utilizează polinoamele de gradul 1. Fig.13.Cazul limită la mişcarea după un profil trapezoidalde viteză În acest caz mişcarea este numai cu accelerare şi decelerare (lipseşte palierul ce indică deplasarea cu viteză constantă). În acest fel. 4. Specificarea.28) .c. Exemplul 1: Utilizarea unei funcţii polinomiale de ordinul 3 ca funcţie conducere între două puncte via. i =1 ÷ 6 se determină în etapa de specificare a mişcării din condiţiile impuse trecerii prin anumite puncte ţintă sau via. ca lege de mişcare relativă a elementelor mecanice (lege de evoluţie în timp) o expresie de forma: q (t ) = c0 + c1t + c2t 2 + . Exemple de funcţii conducere în coordonate c. Se cunoaşte şi viteza de trecere prin punctele impuse. 6 sau 7). Se cunoaşte că mişcarea începe la momentul t = 0 şi se termină la t = tf.

Rezolvare: Pornind de la parametrii motorului se pot calcula vitezele şi acceleraţiile maxime obtenabile.4. De regulă. Mişcare după un profil trapezoidal de viteză Datele problemei: Se cunosc punctul iniţial şi cel final în deplasare şi motorul de acţionare al cuplei cinematice conducătoare.b.c.4. Este cazul particular în care funcţia polinomială utilizată este de ordinul 2. vitezei şi acceleraţiei sunt ca cele reprezentate în fig. Observaţii: 1) În cazul conducerii cu profil trapezoidal de viteză trebuie asigurat câte un interval de timp pentru accelerare şi. Cu amax şi vmax se calculează în momentele t1 şi t2 în care începe şi. dacă procesul este extrem de flexibil şi desfăşurarea etapelor sale depinde de evenimente produse în etapele anterioare.30) 1 ⎡q f − q0 ⎤ − 2 [q(t f ) − q(0)] ⎣ ⎦ t tf f 3 2 Observaţie: Cel mai frecvent acest set de calcule se execută off . Cazul limită este cel redat în fig.4. ca lege de mişcare începută din repaos şi oprită în punctul final (t0 = tf = 0). Exemplu de alură pentru o polinomială de ordinul 3 . pentru decelerare.13.4.8. În acest caz elementele articulaţiei evoluează cu accelerat de la 0 la t1.4. Acest mod de lucru se poate utiliza dacă procesul este bine stabilit de la început şi nu suferă modificări. Se cere profilul de viteze după care trebuie conduse elementele axei. se termină porţiunea liniară a curbei q(t). În această situaţie acceleraţia este mică şi nu se Fig. Specificarea.8.Cap.b. generarea şi controlul mişcărilor 105 106 CONDUCEREA ROBOŢILOR Se formează sistemul: ⎧q(0) = a0 ⎪ 2 3 ⎪ ⎪q(t f ) = a0 + a1t f + a2t f + a3t f = q f ⎨ ⎪q(0) = a1 ⎪ 2 ⎪q(t f ) = a1 + 2a2t f + 3a3t f ⎩ Se rezolvă sistemul şi se obţin soluţiile: În fig. Este cazul cel mai frecvent utilizat în conducerea unui robot în coordonate c. în orice situaţie. Fig.14 se arată un exemplu de alură pentru o polinomială de ordinul 3.line. 4. cu viteză constantă de la t1 la t2 şi uniform încetinit de la t2 la tf. (4.c. respectiv.29) Exemplul 2: Funcţia conducere cu profil trapezoidal de viteze. se doreşte pornirea cu viteza şi acceleraţia maxime şi atingerea vitezei maxime posibile (pentru a se realiza productivitatea maximă). adică înainte de începerea desfăşurării mişcării propriu-zise între cele două puncte. a0 = q0 a1 = q(0) a2 = a3 = 3 tf 2 2 1 ⎡q f − q0 ⎤ − q(0) − q(t f ) ⎣ ⎦ t tf f (4. Există şi cazuri când calculul coeficienţilor polinomialei trebuie efectuat online (din mers).14. respectiv. Pentru acest caz alura curbelor aferente poziţiei.

Deşi scopul final urmărit este acela ca punctul caracteristic să treacă prin toate punctele ţintă şi via impuse de procesul tehnologic. • nu apar situaţii în care mecanismul să devină degemerat. constituie sistemul de acţionare al robotului). (după tipul cuplelor cinematice . mişcarea este executată. pentru fiecare axă. mişcarea constă dintr-o accelerare până la viteza maximă şi apoi o decelerare de la viteza maximă la 0.tf să fie mai mare decât 2tacc. în principiu. specificând şi vitezele şi acceleraţiile aferente. Cu o frecvenţă cuprinsă între 20 Hz şi 200 Hz (în funcţie de viteza de calcul a calculatorului) se calculează valorile q (t ) . Graficul q(t) se compune din numai două arce de parabolă racordate. 4. După etapa de specificare a mişcării s-au ales timpii de parcurgere şi funcţiile conducere şi s-au calculat coeficienţii variabilei timp din expresiile funcţiilor conducere. Specificarea. Aceste valori calculate de GT sunt mărimi de prescriere pentru regulatoarele din structura fiecărui sistem de conducere local de la nivelul articular . linie dreaptă. Rolul GT este acela de a calcula valorile numerice ale funcţiilor conducere şi derivatele lor la diferite intervale de timp.de rotaţie sau de translaţie). parametrii cinematici ai mişcărilor (valori ce trebuie atinse în mişcare la diferite momente). În acest caz trebuie însă asigurat ca intervalul 0 . Concluzii cu privire la mişcarea în coordonate c. (coordonate articulare.4.5. Generarea mişcării în coordonate c. Conducerea se efectuează la nivelul la care şi mişcarea este produsă (nivelul articulaţiilor). de la 0 la vmax. Pentru fiecare valoare a lui t se calculează câte o valoare qi . rezultând implicit şi o mişcare lină pe ansamblul întregului robot (se poate demonstra şi matematic). Desfăşurarea mişcării se urmăreşte numai la nivelul cuplelor cinematice conducătoare. Cu analiza cinematică inversă. încep şi se termină simultan. buclă: aşteaptă după noul interval de interpolare t = t + ∆ t. în care s-au memorat legile de mişcare stabilite pentru fiecare axă. Sunt generate astfel puncte ale traiectoriei descrise de elementele mecanice şi vitezele/acceleraţiile aferente. 4. • specificarea şi generarea traiectoriei se realizează direct în variabilele (coor• coeficienţii funcţiilor conducere se calculează simplu. 3) Cu cât acceleraţia este mai mare. foarte aproape de timpul real (adică uneori se pot executa calculele şi online).c. De aici rezultă o acurateţe mai scăzută în ceea ce priveşte situările din spaţiul operaţional al robotului. Folosind funcţii conducere polinomiale mişcările la nivelul fiecărei axe sunt line. dar sunt şi cazuri în care unele elemente se află în repaos când altele se deplasează.13.9. end. Aceste valori sunt mărimi de prescriere care se transmit controlerului de ax de la nivelul fiecărei articulaţii în parte.c. Concluzie: GT generează puncte prin care trebuie să treacă elementele fiecărei articulaţii între t0 şi tf. Avantajele conduceri unui robot în coordonate c.6. mişcările sunt urmărite numai la nivel articular. un algoritm de tipul: t = t0. i =1 ÷ n pentru funcţiile conducere şi derivatele lor. cu atât tacc e mai lung şi porţiunea liniară mai scurtă.c. Elementele Principalele avantaje ale acestui mod de conducere sunt: donatele) care sunt reglate la nivelul sistemelor de conducere locale. conducere locale (valorile momentane ale funcţiilor q(t) şi derivatelor) este redus. 2) În situaţia limită din fig. Rezultatul acestor calcule reprezintă (în fiecare moment ∆ t) mărimile de prescriere pentru regulatoarele din structura sistemelor de conducere locale de la nivelul cuplelor cinematice conducătoare. se determină punctele ţintă şi via în coordonate c. cu care asigură conducerea nemijlocită a fiecărei axe (toate sistemele de conducere locale. q (t ) şi q (t ) . incrementează variabila t de la 0 la tf. tacc este calculabil. generarea şi controlul mişcărilor 107 108 CONDUCEREA ROBOŢILOR mai ajunge la deplasarea cu viteză constantă.9. Acest mod de conducere al unui robot este considerat cel mai simplu şi cel mai mic consumator de timp de calcul. 4. pe graficul q(t) lipseşte porţiunea liniară. q(t). mişcarea nu este condusă şi controlată la nivelul punctului caracteristic (pentru care oricum nu avem traductor). La nivelul fiecărei axe a robotului se alege (se specifică) câte o lege de mişcare şi. Cu cât acceleraţia este mai mică. dacă t 〈 tf continuă bucla. Se porneşte de la procesul tehnologic şi se determină punctele ţintă şi via în coordonate operaţionale (de multe ori carteziene).c. qi . controlerul aferent corectând. Observaţie: În etapa de generare a mişcării GT. ci la nivelul fiecărei axe unde.Mişcările tuturor elementelor se desfăşoară concomitent.4. cu atât tacc este mai scurt şi porţiunea liniară e mai lungă. Aceste date sunt transferate generatorului de traiectorie.c. de fapt. qi . Generatorul de traiectorie lucrează după un program care urmăreşte. spre a fi executate. . Între mişcările elementelor ce constituie o cuplă cinematică şi elementele celorlalte articulaţii nu există de fapt decât o singură legătură: de regulă. mecanice descriu şi ele câte o traiectorie: arc de cerc. coordonate robot). q(t) {valorile coordonatelor q şi ale derivatelor lor în momentul t } dacă t = tf părăseşte bucla.c. • timpul de calcul pentru generarea mişcărilor de prescriere pentru sistemele de Observaţie: Principalul calcul pe care-l efectuează generatorul de traiectorie în parcurgerea algoritmului este acela al calculului valorilor momentane pentru funcţiile conducere şi derivatele lor.c. împreună. q(t). 4. în continuare.c.Cap. aplicată o singură dată. unde tacc este intervalul de timp necesar accelerării cuplei cu acceleraţia dată. eventualele erori locale.9.

7 % din volumul de calcule necesar în cazul conducerii în coordonate carteziene. În acest caz. robotului i se prescriu mereu valori reale şi finite ale coordonatelor. H (t ) (situare + viteză + acceleraţie) şi se efectuează calculul de conversie din coordonate operaţionale (carteziene) în coordonate c. Etapa de determinare a punctelor de definire a traiectoriei carteziene Această etapă presupune deosebirea a două situaţii diferite: a) când se cunoaşte expresia analitică a traiectoriei. În literatura de specialitate se arată că volumul de calcule necesar aferent conducerii în coordonate c.c. şi asigurarea deplasării line. Specificarea.c. La fiecare parcurgere a algoritmului se calculează elementele matricilor H (t ).c. buclă: aşteaptă pentru noul interval de interpolare t=t+ ∆ t. Specificarea mişcării în cazul conducerii în coordonate carteziene Înainte de a se trece la generarea propriu-zisă a traiectoriei (cu execuţia unui algoritm de genul celui anterior prezentat) trebuie parcurse două etape preliminare: 4. J(t). Observaţie: este necesar un volum de calcule mult mai mare decât în cazul conducerii în coordonate c.Cap. punctului caracteristic i se impune o traiectorie continuă în spaţiul cartezian. Dezavantajele conducerii unui robot în coordonate c. care acţionează fiecare articulaţie. {incrementează timpul} H(t). ci pentru elementele ce constituie fiecare cuplă cinematică conducătoare se alege câte o funcţie conducere independentă. iar GT generează câte o lege de mişcare pentru elementele fiecărei articulaţii . iar miş- carea punctului caracteristic se obţine ca rezultat al mişcărilor independente urmărite pe fiecare axă. Observaţie: mişcările elementelor mecanice sunt comandate la nivelul fiecărei articilaţii separat. în mod independent.9.. Principale dezavantaje: • mişcarea se urmăreşte la nivelul cuplelor cinematice conducătoare.10.7. respectiv cu inversul Jacobianului} dacă t = tf then părăseşte bucla. Mişcările se execută simultan. Generarea mişcării în coordonate carteziene Şi în acest caz generarea punctelor de pe traiectorie se face cu blocul generator de traiectorie. se calculează. între ele existând cuplaje (exprimate prin ecuaţii neliniare foarte complicate). În acest caz funcţia conducere se exprimă matriceal. valori se transmit ca valori prescrise sistemelor de conducere locală.c. Conducerea unui robot în coordonate carteziene În cazul conducerii în acest mod. este evident că.c. desigur.c. pentru cel puţin una dintre coordonatele c. diferite puncte care trebuie atinse în diferite momente de timp.H(t) {valorile situării vitezei şi acceleraţiei punctului caracteristic la momentul t (expresii matriciale)} -1 Q(t). De efectul acestor cuplaje trebuie ţinut cont. cu analiza cinematică inversă.10. 4.2.c. este greu de anticipat şi e o curbă greu de urmărit în spaţiul vizual uman.c. de la bun început. În structura sistemelor de conducere locale sunt introduse regulatoarele care se proiectează astfel încât să se ţină cont şi de aceste cuplaje. De aceea. H (t ).c. obţinute cu analiza cinematică inversă. Exemplul clasic de utilizare a acestui mod de conducere este în cazul robotului de sudură în puncte. 4. la care interesează numai atingerea tuturor punctelor în care trebuie aplicată sudura (cu o orientare adecvată a efectorului final) şi nu interesează pe ce traseu se deplasează efectorul final între două puncte (iar evitarea coliziunilor trebuie asigurată anticipat).2. 4.H(t).10.c. că desfăşurarea etapelor procesului tehnologic are loc astfel încât în nici un moment să nu survină pericolul de coliziune. J [H(t)] {calculul soluţiilor în coordonate c. reprezintă 1 .c. generarea şi controlul mişcărilor 109 110 CONDUCEREA ROBOŢILOR Notă: Mecanismul devine degenerat dacă pentru o anumită situare a punctului caracteristic în spaţiul operaţional se obţine. dacă t 〈 tf continuă bucla. Interesează. 4. iar aceste 4.10. end. • nu se urmăreşte direct mişcarea punctului caracteristic.1. Uneori se determină şi vitezele. Fiind condus direct în coordonate c. H(t) este o matrice cu elemente variabile în timp ce exprimă evoluţia situării punctului caracteristic de-a lungul traiectoriei. operatorul uman trebuie să garanteze. Cu analiza cinematică inversă şi cu Jacobianul aferent se calculează poziţiile.c. vitezele şi acceleraţiile de la nivelul cuplelor cinematice conducătoare. în acest mod de conducere.c. Principial.1.c valoarea q = ∞ . . Se alege şi se proiectează (se calculează) legea de mişcare a punctului caracteristic pe o traiectorie spaţială impusă de procesul tehnologic. Modul de alegere a punctelor poate fi arbitrar sau impus de anumite considerente specifice procesului. este greu de exprimat analitic. (articulare). din expresia cunoscută. în cadrul GT generarea punctelor se face rulând un algoritm (program) de tipul: t=t0. acceleraţiile cu care punctul caracteristic trebuie să se deplaseze. Consecinţă: traiectoria punctului caracteristic se obţine ca rezultat al tuturor mişcărilor. În realitate elementele cuplelor cinematice conducătoare nu se pot mişca independent.

ulterior. Pentru a înţelege complexitatea procedurii se va descrie un exemplu ipotetic.10. Acestea se exprimă cu matricile: .10.Din aceste puncte.3.3). trebuie efectuate calcule cu analiza cinematică inversă şi analiza cinematică directă de mai multe ori. totuşi. generarea traiectoriei. (COCM – Cartezian Oriented Cartezian Motion) Este metoda cea mai mare consumatoare de timp de calcul dintre metodele de conducere a roboţilor. până se ajunge la o eroare acceptabilă. Aceste situări sunt convertite apoi. generatorul de traiectorie calculează.c.Trei poziţii succesive în spaţiu pentru un EF tip DP cu două degete Pentru fiecare dintre cele trei puncte din spaţiu considerate. se cunoaşte situarea sistemului de coordonate ataşat EF . Controlul acurateţei execuţiei traiectoriei se efectuează la nivelul punctului caracteristic (reglajele şi corecţiile se efectuează în coordonate carteziene).cu analiza cinematică inversă. cu GT. Funcţiile conducere sunt.15. se procedează la aproximarea traiectoriei pe porţiuni. pentru fiecare punct în parte. Uneori se determină şi vitezele şi acceleraţiile cu care se face deplasarea.4. ca în fig.c. de regulă. procedându-se ca şi în cazul conducerii în coordonate c.c.c. Etapa de alegere a funcţiei (funcţiilor) conducere şi de calcul al coeficienţilor acestora Observaţie: cu valorile succesive ale funcţiei (funcţiilor) conducere se realizează apoi. Situarea reală se determină cu analiza cinematică directă utilizând în calcul valorile coordonatelor relative ale elementelor aferente fiecărei articulaţii. punctele de prescriere pentru mişcare.15.10. în puncte prescrise în coordonate articulare şi se transmit sistemelor de conducere locală de la nivelul axelor. prin aceea că sunt luate ca repere obligatorii mult mai multe puncte de pe traiectoria carteziană impusă. definită matricial. În acest caz se alege o singură funcţie conducere. Erorile de poziţie şi orientare se determină între situarea carteziană impusă şi situarea carteziană reală (curentă) a punctului caracteristic. o şi a şi poziţia originii prin vectorul p. cu segmente de curbe simple (dreaptă. Fig. De această dată. Etapa a doua se poate realiza în două moduri diferite: a) metoda de conducere a unui robot în spaţiul cartezian.c. citite de la traductoarele amplasate la acest nivel .c. sinusoidă. spre execuţie.. Apoi se calculează. Majoritatea calculelor şi optimizărilor se efectuează în spaţiul cartezian. ş. Conducerea unui robot în spaţiul cartezian cu matricea D(r) Conducerea unui robot în coordonate carteziene este metoda cu care robotul este condus astfel încât punctul caracteristic să se deplaseze pe o traiectorie continuă impusă în spaţiul cartezian.). Cu analiza cinematică inversă şi cu matricile Jacobiene se calculează poziţiile. Se alege apoi câte o funcţie conducere pentru elementele fiecărei articulaţii.2. cu care se generează succesiv situări prescrise în spaţiul cartezian (vezi paragraful 4. se calculează seturi de valori aferente pentru coordonatele c. Conducerea se efectuează urmărind mişcarea numai la nivelul cuplelor cinematice conducătoare. Observaţie: de regulă. Este frecvent utilizată întrucât necesită un volum de calcule mult mai scăzut decât COCM.a. cerc. polinomiale de grad mic. diferite puncte de trecere impuse. 4. b) metoda de conducere a roboţilor în spaţiul cartezian cu orientare în coordonate c.2). Specificarea.c. generarea şi controlul mişcărilor 111 112 CONDUCEREA ROBOŢILOR b) când traiectoria este complicată şi exprimarea analitică pe ansamblul ei nu se poate face. Cu aceste funcţii. 4. de cea de conducere în coordonate c. Se consideră trei situări succesive ale unui efector final tip dispozitiv de prehensiune cu două degete.Cap.prin versorii n.(vezi paragraful 4. 4. la specificarea mişcării se calculează întâi puncte ce definesc traiectoria carteziană impusă/dorită. Pentru aceasta se proiectează (se calculează) legea de mişcare a punctului caracteristic pe traiectoria impusă.c. adică orientarea axelor . cu analiza cinematică inversă. (articulare) (JOCM – Joint Oriented Cartezian Motion) În cazul acestei metode. vitezele şi acceleraţiile aferente pentru elementele articulaţiilor.4. orientată în spaţiul cartezian.9. cu expresiile curbelor utilizate la interpolare. Această metodă se deosebeşte. iar aceste valori se transmit ca mărimi de prescriere la sistemele de conducere locală. adică se procedează la o interpolare pe porţiuni a traiectoriei.2.

Pe măsură ce EF este mai aproape de poziţia finală t creşte.38) Cu expresia particulară a vectorului k în jurul căruia trebuie efectuată rotaţia de unghi θ. putem scrie matricea rotaţiei de aliniere a dispozitivului de prehensiune: .32) (4. se poate obţine cu un calcul de forma: (4. Toate aceste trei mişcări se execută simultan. y şi z sunt valorile totale ale translaţiilor necesare pentru a trece de la POZn la POZn+1.34) Fig. Matricea de rotaţie pentru alinierea dispozitivului de prehensiune este o matrice de rotaţie cu un unghi θ în jurul unei axe oarecare k.2. 4. Paul a propus ca matricea D(r) să reprezinte trei mişcări: .35) În consecinţă vectorul k se obţine cu: ⎡1 ⎢0 T(r) = ⎢ ⎢0 ⎢ ⎣0 0 1 0 0 0 rx ⎤ 0 ry ⎥ ⎥ 1 rz ⎥ ⎥ 0 1⎦ [ k] = unde x. P. .3 (4. Paul o situare oarecare k.37) D(r) = T(r) x Ro(r)1 x Ro(r)2 Matricea de translaţie este de forma: (4. Cu ajutorul matricii de conducere D(r) propusă de R. conform matricii T(r) . vers θ =1 .o rotaţie în jurul versorului a care să asigure orientarea finală impusă dispozitivului de prehensiune. Pentru simplificare vom considera că deplasarea între două puncte succesive se face după o lege de mişcare liniară. cu expresia: ⎡cosψ ⎢ sinψ Ro(z. În cazul aplicaţiei analizate.16) relaţie în care t este timpul curent. în momentul curent rotaţia fiind rθ.33) (vezi 4.o translaţie în coordonate carteziene. r creşte către valoarea 1 şi deci. . R.θ Cap. D(r) este definită cu: ⎡0 ⎤ ⎢1 ⎥ o=⎢ ⎥ ⎢0 ⎥ ⎢ ⎥ ⎣1 ⎦ Ro(z. În consecinţă. θ este unghiul de rotaţie în jurul axei k. ky şi kz sunt proiecţiile vectorului k pe axele sistemului de coordonate de referinţă.cosθ. iar T este timpul total de deplasare între POZn şi POZn+1. între două situări succesive date.16. Specificarea. versorul k se obţine rotind versorul o cu unghiul ψ în jurul versorului a. Rotaţia versorului o (4.36) Elementele kx.31) ⎡kxkxvers ⎢k k vers Ro(k. cresc şi valorile fracţiunilor efectuate din translaţiile complete.4. Evident că 0 ≤ r ≤ 1.Paul. P. POZn şi POZn+1. a fiind axa z pentru sistemul de coordonate ataşat efectorului final POZk = POZ n x D ( r ) unde r este o variabilă scalară definită cu r = t /T (4.θ ) = ⎢ x y ⎢kxkzvers ⎢ ⎣ θ + cosθ kykxvers θ − kz sinθ kzkxvers θ + ky sinθ 0⎤ θ + kz sinθ kykyvers θ + cosθ kzkyvers θ − kx sinθ 0⎥ ⎥ kzkzvers θ + cosθ 0⎥ θ − ky sinθ kykzvers θ + kx sinθ 0 0 0 ⎥ 1⎦ Ne propunem să descriem trecerea prin cele trei situări date utilizând matricea de conducere D(r) propusă pentru prima dată în literatură de R.ψ ) x o = ⎢ ⎢ 0 ⎢ ⎣ 0 − sinψ cosψ 0 0 0 0 1 0 0⎤ ⎡0⎤ ⎡− sinψ ⎤ ⎥ ⎢1⎥ ⎢ cosψ ⎥ 0⎥ ⎥ x ⎢ ⎥=⎢ ⎢0⎥ ⎢ 0 ⎥ 0⎥ ⎥ ⎢ ⎥ ⎢ ⎥ 1⎦ ⎣1⎦ ⎣ 1 ⎦ (4.o rotaţie în jurul unei axe k care să asigure alinierea versorului a de la situarea iniţială la cea finală.P. generarea şi controlul mişcărilor 113 114 CONDUCEREA ROBOŢILOR POZi = ⎡ n xi ⎢n ⎢ yi ⎢ n zi ⎢ ⎣0 o xi o yi ozi 0 a xi a yi a zi 0 p xi ⎤ p yi ⎥ ⎥ p zi ⎥ ⎥ 1⎦ unde i = 1.θ ) ⎡cosψ − sinψ ⎢ sinψ cosψ =⎢ ⎢ 0 0 ⎢ 0 ⎣ 0 0 0 1 0 0⎤ 0⎥ ⎥ 0⎥ ⎥ 1⎦ (4.

în POZ 2 s-ar produce un şoc. se obţin valorile numerice succesive concrete pentru matricile DI(r). (4. POZ 1 =POZ 1 × DI(0) = POZ 1× I. ci şi la trecerea prin poziţia POZ 2.42) calculate şi înlocuite în expresia matricii D(r). r ϕ ) = ⎢ ⎢ 0 ⎢ ⎣ 0 − s(r ϕ ) c(r ϕ ) 0 0 0 0 1 0 0⎤ 0⎥ ⎥ 0⎥ ⎥ 1⎦ n1 = (4. y. z. Este vorba. În majoritatea aplicaţiilor concrete unghiul ψ se menţine acelaşi pe ambele segmente ale deplasării şi nu este considerat ca variabilă a mişcării.39) s φ = − s ψ cψ tg ψ = o1 . se notează cu DI(r) matricea de conducere care se utilizează la deplasarea între POZ 1 şi POZ 2 (prima porţiune a mişcării). date.Cap. Incrementând r.40) n1 x + n1 y + n1 z a1 x + a1 y + a1 z o1 x + o1 y + o1 z 2 2 2 2 2 2 2 2 2 2 n2 = a2 = o2 = 2 n2 x + n2 y + n2 z a2 x + a2 y + a2 z 2 2 2 2 2 2 2 a1 = o1 = p1 = 2 2 Înmulţind cele trei matrici T(r).42) PO Zk = PO Z1 x D I (r) (4. rθ ) = ⎢ ⎢ c(rθ ) −sψ s(rθ ) −sψ s(rθ ) ⎢ 0 0 0 ⎢ ⎣ 0⎤ ⎥ 0⎥ 0⎥ ⎥ 1⎥ ⎦ (4. adică: o2 x + o2 y + o2 z p 2 x + p2 y + p2 z 2 2 2 2 p1 x + p1 y + p1 z p2 = (4. Întrucât pe parcursul mişcării de la POZ1 la POZ 3 conducerea se va face folosind mai multe matrici D(r). ce diferă între ele în funcţie de segmentul de traiectorie parcurs. Sistemul este rezolvat în literatura de specialitate şi are soluţiile (4. de o schimbare a vitezelor de parcurs pe cele două segmente ale mişcării.ψ . r φ .41) _ x = n 1 ⋅ ( p 2 − p1 ) z = a1 ⋅ ( p 2 − p1 ) y = o1 ⋅ ( p 2 − p1 ) tg θ = ( a1 ⋅ o1 ) 2 + ( o1 ⋅ a 2 ) 2 . adică DI(0) = I . θ . Problema care se pune într-o aplicaţie concretă este aceea de a determina valorile concrete pentru x. Specificarea. Rotaţia de orientare a dispozitivului de prehensiune se face în jurul versorului a. z. rz. Folosind aceeaşi matrice DI(r) s-ar putea utiliza aceeaşi lege de mişcare liniară şi pentru deplasarea între POZ 2 şi POZ 3. ry. cu un unghi φ şi se exprimă cu: ⎡ c(r ϕ ) ⎢ s (r ϕ ) Ro(a.ψ . Schimbarea pantei legii de mişcare are loc din cauze spaţiale: translaţiile şi rotaţiile totale ce trebuie efectuate sunt diferite pe cele două porţiuni. • pentru t =T. ceea ce trebuie evitat. iar acestea se transmit ca mărimi de prescriere la sistemele de conducere locale cu care sunt puse în mişcare elementele mecanice. Ro(k. φ şi va fi rezolvată în etapa de specificare a mişcării pornind de la următoarele condiţii cunoscute: • pentru t = 0.matricea unitate. r θ . iar timpul de deplasare se doreşte a fi menţinut tot T. singurul parametru variabil care se va incrementa este r. 4. efectuând înmulţiri matriciale de tipul: POZ k= POZ1× DI(r). POZ 2 =POZ 2 × DI(1) . Pentru a se asigura o deplasare lină nu numai între POZ1 şi POZ 2 şi între POZ 2 şi POZ 3. Astfel. Se realizează astfel deplasarea după o lege de mişcare liniară între POZ1 şi POZ 2. rφ) se obţine expresia finală a matricii D(r). y. de fapt.41) Cu valorile (4. rψ . a 2 a1 . rθ) şi Ro(a. se pune problema realizării unui racord între graficele ce reprezintă legile de mişcare ale parametrilor rx. din situările POZk se află coordonatele articulare. ale matricilor POZ1 şi POZ 2. Cu acestea se calculează situările succesive. θ . a 2 V θ ( n1 − n2 ) + (c 2ψ V θ )( o1 ⋅ n1 ) − s ψ c θ ( o1 ⋅ n2 ) (4. Panta graficului mişcării dintre POZ1 şi POZ 2 diferă însă de cea a celeia dintre POZ 2 şi POZ 3. adică DI(1) =POZ 2 × POZ 1-1 Din aceste condiţii se obţine sistemul de ecuaţii (4.41) Cu analiza cinematică inversă.41) Cu acest sistem se pot calcula valorile x.42). În aceste soluţii se utilizează elementele. generarea şi controlul mişcărilor 115 116 CONDUCEREA ROBOŢILOR ⎡s 2ψ V(rθ ) + c(rθ ) cψ s(rθ ) −sψ cψ V(rθ ) ⎢ 2 c ψ V(rθ ) + c(rθ ) sψ s(rθ ) −sψ cψ V(rθ ) Ro(k. φ . utilizând matricea de conducere DI(r) .

(4.4.Cap. respectiv tacc .timpul curent.4.17. Momentul începerii mişcării accelerate. ry. să se aleagă momentul începerii accelerării la r = 0. Punctele B’ sunt cele din momentul în care mişcarea accelerată s-a încheiat. între cele două porţiuni cu evoluţie liniară. Se obişnuieşte. calculată cu: Fig.44) şi utilizând t . Specificarea.4.4.4. corespunzător situării POZ 2 pentru EF.18 Schimbare de origine pentru variabilele q Fig.43) h = t + t acc 2 t acc (4. Racordarea graficelor legilor de mişcare . generarea şi controlul mişcărilor 117 118 CONDUCEREA ROBOŢILOR Pentru rezolvarea racordului necesar.43) sunt şi ele reprezentate pe graficele din fig.rz.18: Cu această schimbare de origine valoarea lui B din ecuaţiile (4.19.19. rφ O este momentul trecerii EF prin POZ1. arbitrar.9.4. în cartezian.4. Fig. se reprezintă grafic legile de mişcare pentru cei cinci parametrii rx. rφ în concordanţă cu cele trei situări date (fig.45) Fig.durata accelerării. rθ. poate fi ales.43) devine zero.17.4. în raport cu momentul plecării din POZ1.însă. Graficul de variaţie în timp a coordonatei generalizate În fig. teoretic.17: q este coordonata generalizată rx. Aşa cum se observă şi din graficele din fig.4. în punctul B. rz. Reprezentarea intervalului de timp în care are loc modificarea vitezelor Lui POZ1’ pe graficele q îi corespund punctele A’ de pe graficele din fig. un punct POZ1’ care se calculează cu: POZ 1’=POZ 1× DI(0.20. Evitarea şocului se face alegând. B este momentul trecerii EF prin POZ 2. în principiu.rθ. Acestui moment îi corespunde. C este momentul trecerii EF prin POZ 3.ry. 4.4. efectuată pentru trecerea de la o viteză la alta. adică t = 0. În vederea simplificării calculelor şi obţinerii unei expresii mai simple pentru curba de racord.9· T. care are o expresie polinomială de forma: t q = [( ∆ C acc + ∆ B)(2 − h)h 2 − 2 ∆ B]h + B + ∆ B T unde cu h s-a procedat la o schimbare de variabilă. Mărimile ∆B şi ∆C din ecuaţiile (4. se procedează la o schimbare de origine pentru variabilele q ca în fig. o lege de mişcare de racord.9) (4.19. are loc o schimbare de pantă ce va produce un şoc la trecerea acestuia prin POZ 2.17).

Dacă. . din relaţiile 4. se poate scrie că (fig. Mişcările se execută. Metoda de conducere a unui robot în spaţiul cartezian. Se presupune că această mişcare s-ar efectua tot în timpul T. se foloseşte o nouă matrice.43) se imaginează o mişcare fictivă. 4. în care pentru variabile se aleg legi de variaţie de forma: q =B+ ∆ C· h h=t/T. Dacă s-ar conduce o astfel de mişcare s-ar folosi o a treia matrice de conducere DIII(r). În acest paragraf s-a arătat cum se calculează şirul de situări aflate între POZ1 şi POZ3 în spaţiul cartezian.43). Cu acestea. În consecinţă. Datorită schimbării de origine. de la B la A’ pentru fiecare dintre coordonatele q. DII(r).9). la conducerea propriu-zisă. elementele mecanice. ci se va folosi doar ca etapă intermediară de calcul. În acest fel se execută şi ultimul segment al traiectoriei carteziene: POZk = POZ2 x D (r) Pentru a determina diferenţele ∆ B din expresia polinomialelor q(h) (4. până la urmă. POZ 1’. Se asigură. În acest fel. în timpul racordării celor două mişcări liniare trebuie schimbată şi valoarea sa. cu care se efectuează conducerea între situările POZ 2 şi POZ3. notată DV(r). k ∈ N (4. adică se ştiu expresiile polinoamelor q(h) (4. care devine astfel un punct pseudovia în coordonate carteziene. Valorile ∆ B sunt uşor de găsit din elementele matricii DIII(1). în sens invers. cu soluţiile de mai sus se calculează elementele unei a doua matrici.1) unde h este variabila (4. În momentul în care coordonatele q trec prin punctele B’ racordarea s-a încheiat. cu orientare în spaţiul cartezian (COCM – Cartezian Oriented Cartezian Motion) Este metoda cea mai mare consumatoare de timp de calcul dintre toate metodele de conducere a roboţilor. pe porţiunea de traiectorie POZ2. echivalentă deplasării efectorului final de la POZ2 la POZ 3.Cap.4. trecerea de la o valoare la alta se face după o lege de variaţie liniară de forma: ψ(h) = (ψC – ψA) • h + ψA (4. de aceea. 4.19): POZk = POZ1 ' x D IV (h ). (4. Dar aceste valori reprezintă chiar translaţiile totale şi rotaţiile totale ce trebuie efectuate în mişcarea de la B la C.48) În cele prezentate mai sus s-a presupus că unghiul ψ se menţine acelaşi pe ambele segmente liniare ale deplasării. nici una dintre coordonate nu trece exact prin punctul B şi deci nici efectorul final nu va trece exact prin POZ 2.43. O astfel de deplasare ar corespunde mişcării efectorului final de la POZ 2 la POZ 1’ cu POZ 1’=POZ1 × DI(0. la nivelul cuplelor cinematice conducătoare şi. Din cauza volumului mare de calcule legile de mişcare realizabile se compun numai din segmente de dreaptă racordate între ele. Specificarea.T ]. se cunosc legile de variaţie pentru coordonatele generalizate şi se poate scrie o nouă matrice DIV(r) care se foloseşte în conducerea efectorului final pentru efectuarea racordului. (4. generarea şi controlul mişcărilor 119 120 CONDUCEREA ROBOŢILOR Pentru a calcula expresia polinomială ce reprezintă legea de racord trebuie calculate valorile ∆B şi ∆C. Pentru calculul situărilor corespunzătoare trecerii coordonatelor q din B’ până în C.51) POZk = POZ2 x D III (r) Matricea DIII(r) nu se va folosi.astfel. evident. ψ nu poate fi acelaşi pe ambele segmente. urmând să se facă deplasarea pe cel de-al doilea segment de dreaptă.49) ∆x = xC − x B = xC ∆y = yC − y B = yC ∆z = zC − z B = zC ∆θ = θC − θ B = θC ∆φ = φC − φB = φC Deci diferenţele ∆ C din polinomoalele q(h) (4.50) t ∈ [tacc. sunt cunoscute toate elementele necesare realizării racordului dintre A’ şi B’ pe perioada t = [ -tacc. iar pe segmentul al doilea trebuie să fie ψC . pentru fiecare situare carteziană intermediară POZk se efectuează câte un calcul cu analiza cinematică inversă şi se găsesc coordonatele articulare aferente.44) aleasă şi pentru racord. Pentru că la efectuarea racordului s-a ales ca originea mişcării să fie punctul cartezian POZ1’. POZk = POZ1' x D V (h). Aceste coordonate se transmit ca mărimi de prescriere la sistemele de conducere locale care conduc. pentru simplificarea operaţiilor se va alege ca punct de început şi pentru mişcarea pe cel de-al doilea segment al traiectoriei carteziene tot POZ1’ (A’ de pe graficele coordonatelor q). k ∈ N (4.48 D III (0) = I D III (1) = POZ2 − 1 x POZ1' (4. Presupunând că pe primul segment acest unghi este ψA .47) Datorită efectuării racordurilor pentru coordonatele q. însă.tacc ].46) D II (0) = I D II (1) = P O Z3 Deci: x P O Z 2 −1 II (4. şi modificarea fără şoc a direcţiei axei k folosită ca axă a rotaţiei de aliniere.43) sunt cunoscute.10. însă.4.

cu analiză cinematică inversă se determină coordonatele articulare impuse.volumul de calcule este foarte mare şi extrem de dificil de efectuat în timp real. Problema timpului de calcul Esenţa conducerii unui robot constă în prescrierea mişcării şi punerea în mişcare a sistemului mecanic. Această metodă este cel mai frecvent utilizată pentru că necesită un volum de calcule mult mai scăzut. cărora li se aplică analiza cinematică directă. Apoi. Cu analiza cinematică directă se calculează situarea reală obţinută pentru efectorul final şi. traiectoria descrisă este un concept direct bine reprezentat în spaţiul vizual uman.11.însă. Funcţiile conducere sunt (de obicei) polinomiale de grad mic. şi c. • necesită transformări de coordonate (cartezian → c. din poziţia carteziană impusă. cu calcule iterative.culare se folosesc mult mai multe puncte exacte de pe traiectoria carteziană. Limitările de forţe/cupluri.c.c. dar finite şi/sau realizabile fizic. cu analiza cinematică inversă.a. deoarece corecţiile se realizează la nivelul situării efectorului final (a punctului caracteristic). Traductoarele carteziene de precizie sunt mult prea costisitoare spre a se putea utiliza. (JOCM – Joint Oriented Cartezian Motion) În acest caz. efectuând analiza cinematică inversă. După efectuarea mişcărilor. puse la punct metode rapide.5.c. .c. pentru coordonatele articulare folosindu-se valori apropiate de cele rezultate din calcul. • pentru o anumită situare a punctului caracteristic. Deosebirea constă în aceea că. • traductoarele de poziţie/orientare sunt amplasate la nivelul articulaţiilor. comenzile către sistemul mecanic se aplică în momente discrete (distincte) . În cazul în care se ţine cont şi de dinamică. adică există aşa numitele nesingularităţi ale mecanismului. Metoda de conducere în spaţiul cartezian cu orientare în c. Practica a dovedit că este suficientă parcurgerea de câte trei ori a şirului de calcule analiză cinematică inversă-reglare-analiză cinematică directă pentru a corecta. se calculează seturi de coordonate articulare aferente. În timp real aceste calcule se efectuează greu. 4. se poate asemui modul de aplicare al comenzilor către sistemul mecanic cu ritmul de funcţionare sacadat al unei maşini de cusut.c. Reglajele trebuie să corecteze erorile situărilor spaţiale ale efectorului final.c. Observaţie: sugestiv. Reglajul se asigură numai cu verificarea acurateţei mişcărilor elementelor cuplelor cinematice conducătoare. La comanda numerică.c. Astfel. astfel. nu este biunivocă: • există situaţii când o anumită situare a punctului caracteristic se poate realiza prin mai multe configuraţii ale braţului. Conducerea se efectuează urmărind mişcarea numai la nivelul axelor. la specificarea mişcării se calculează întâi puncte de definire ale traiectoriei carteziene impuse. Acurateţea în realizarea unei traiectorii carteziene impuse este foarte bună.10. apoi. Alte dezavantaje sunt cauzate de faptul că transformarea de coordonate cartezian → c.c.m.Cap. vitezele şi acceleraţiile realizabile sunt cunoscute pentru fiecare motor care acţionează elementele câte unei cuple cinematice conducătoare. Cu sistemele de conducere locală se comandă corecţia erorilor articulare. cu toate că se folosesc funcţii line în conducere. Aceste situări sunt convertite în puncte de prescriere în coordonate c.. prin care se face corecţia erorilor carteziene. Din aceste puncte. Principalul dezavantaj al metodei este că se pierde din acurateţea urmăririi traiectoriei carteziene impuse. amplasate la nivelul c.c. Din aceasta. Au fost . traductoarele. Cu analiza cinematică directă se determină situarea carteziană reală de la nivelul efectorului final.c.fiind deci uşor de urmărit de către operatorul uman. Observaţie: această metodă se aseamănă cu metoda de conducere în coordonate c. 4. cu suficientă precizie. Metoda prezintă însă următoarele dezavantaje: • funcţia conducere (matriceală) se calculează mai greu. o situare carteziană impusă. mecanismul devine degenerat sau situarea impusă este nerealizabilă din punct de vedere fizic.c. generarea şi controlul mişcărilor 121 122 CONDUCEREA ROBOŢILOR Controlul acurateţei execuţiei mişcării se efectuează la nivelul punctului caracteristic. şi se transmit sistemului de acţionare spre execuţie. faţă de conducerea în coordonate arti. cu analiza cinematică inversă se calculează erorile aferente fiecărei axe. Conducerea unui robot se realizează cu mijloace numerice (digitale).→ cartezian) pentru fiecare punct. transmit poziţiile articulare reale. Orice sistem mecanic are una sau mai multe frecvenţe de rezonanţă. Avantajul metodei constă în aceea că. în cazul utilizării ei. ş.c. se calculează eroarea carteziană. Acestea trebuie corelate cu constrângerile impuse de urmărirea traiectoriei carteziene.c. calculele sunt şi mai complicate. Cu toate acestea. În aceste cazuri se procedează la aproximări.c. pot rezulta pentru anumite coordonate articulare valori infinite şi. Se foloseşte o singură funcţie conducere exprimată matriceal cu care se generează succesiv situările efectorului final din cartezian. Cu sistemele de conducere locală se comandă mişcările elementelor cuplelor cinematice conducătoare spre valorile prescrise. Specificarea. 4. • calculul valorilor momentane ale acesteia presupune calculul valorilor tuturor elementelor unei matrici. Cu traductoarele de la nivelul axelor se măsoară noile poziţii reale. se alege câte o funcţie conducere la nivelul fiecărei cuple cinematice conducătoare şi se procedează la generarea traiectoriei la nivel articular.d.

Cap. 4. Specificarea, generarea şi controlul mişcărilor

123

124

CONDUCEREA ROBOŢILOR

La aplicarea unei comenzi de trecere de la un punct la altul, în momentul aplicării comenzii apare un anumit şoc. Şocul este mai mare sau mai mic în funcţie de metoda de conducere utilizată. Dacă frecvenţa de comandă de trecere de la o situare impusă la alta se alege astfel încât: f generare ≅ f rez (4.52) se produce excitarea pe una dintre frecvenţele de rezonanţă frez ale sistemului mecanic şi intrarea în oscilaţie a acestuia. Pentru a evita excitarea pe frez a sistemului mecanic este necesar ca generarea comenzilor de trecere de la un punct la altul să se facă cu o frecvenţă:

f generare ≥ 10
sau

x

f rez

(4.53)

În acţionările moderne, un sistem de acţionare comandat numeric este considerat rapid dacă operează cu o perioadă de discretizare de T = 0,8÷1 ms. Sistemul de acţionare asigură însă numai conducerea nemijlocită a elementelor cuplelor cinematice conducătoare. Evident este că, în acest interval de timp, nu se pot efectua toate calculele aferente conducerii robotului la un nou punct de prescriere. Trebuie efectuate toate calculele pentru specificarea,generarea şi conducerea nemijlocită a mişcării. Această aparentă imposibilitate, de se a efectua pe durata unui interval de timp T toate calculele, se evită adoptând ca procedeu general soluţia de a se executa în T = 0,8…1 ms numai calculele aferente conducerii nemijlocite în (calculele din sistemele de conducere locală). Pentru celelalte calcule se procedează în următoarele moduri: I. În cazul în care procesul tehnologic se cunoaşte apriori cu exactitate, calculele se efectuează off-line:

Tgenerare ≤

1 Trez 10

(4.54)

Din relaţia (4.54) rezultă că ideal ar fi ca, în conducere, toate calculele aferente găsirii unui nou punct de prescriere să fie efectuate într-un timp mai scurt decât Trez/10. În cazurile cele mai rapide Trez= 8…10 ms, adică Trez/10 = 0,8…1 ms. Un astfel de interval de timp necesar pentru efectuarea tuturor calculelor aferente conducerii unui robot la un nou punct de prescriere este o restricţie severă. Problema apare cu mai mare acuitate în cazul conducerii în coordonate carteziene cu orientare în coordonate carteziene. O astfel de restricţie impusă duratei de efectuare a calculelor (≤ 1 ms, calcule în timp real) este severă pentru orice tip de calculator .

4.11.1. Procedura de efectuare a calculelor
În comanda numerică, ca procedeu general, se foloseşte discretizarea: întreaga durată a procesului de conducere se împarte în intervale egale şi cât mai scurte de timp. Un astfel de interval a fost numit în software felie de timp, iar în automatică perioadă de discretizare, fiind notată uzual cu T. În alte discipline tehnice se foloseşte şi denumirea perioadă de eşantionare (fig.4.21). Principial, pe durata fiecărei perioade de discretizare, trebuie să se efectueze toate calculele aferente conducerii, pentru câte un pas al mişcării. Din considerentele arătate anterior trebuie să se aleagă: T ≤Trez/10.

a) în cazul conducerii în coordonate carteziene Programatorul (operatorul uman) cunoaşte cu exactitate procesul tehnologic şi impune punctului caracteristic o traiectorie optimală, realizând off-line programul de conducere pe traiectorie carteziană (calculând D(r), paragraful 4.10.3). Se incrementează (off-line) variabila t, respectiv r, şi cu valorile succesive ale acestora se calculează şirul de matrici D(r) aferente. Cu matricile D(r) astfel calculate se găseşte secvenţa de situări POZ k pe care trebuie să le ocupe punctul caracteristic în fiecare t. Pentru fiecare situare carteziană calculată se aplică analiza cinematică inversă şi se găsesc coordonatele articulare qij, i=1 ÷ 6 aferente. În final, se memorează coordonatele articulare aflate prin calcul,iar la momentul execuţiei mişcării se preiau aceste valori din memorie. b) în cazul conducerii în coordonate c.c.c. Procesul tehnologic impune trecerea prin anumite puncte carteziene. Cu analiza cinematică inversă se calculează, din punctele impuse, coordonatele c.c.c. aferente. Pentru fiecare cuplă cinematică conducătoare se alege apoi câte o funcţie (polinomială) şi se calculează coeficienţii acestor funcţii, pornind de la valorile rezultate din punctele impuse de proces. Calculul şirului de puncte concrete de trecere pe parcursul mişcării este efectuat de generatorul de traiectorie, pe baza funcţiilor conducere alese, şi se poate face, în multe cazuri, şi on-line. Observaţie: metoda b) se poate aplica şi în cazul conducerii în coordonate carteziene cu orientare în coordonate c.c.c. Metoda I se poate aplica numai dacă procesul tehnologic este foarte bine cunoscut şi nu apar situaţi necunoscute, neprevăzute şi/sau ramificaţii de tipul: „dacă,…, atunci,…, altfel...”, iar situările obiectelor din spaţiul de lucru al robotului sunt riguros respectate (disciplină tehnologică).

Fig.4.21. Împărţirea în perioade de dicretizare

Cap. 4. Specificarea, generarea şi controlul mişcărilor

125

126

CONDUCEREA ROBOŢILOR

II. În cazul unor procese tehnologice complexe sau incomplet cunoscute apriori. Modul de desfăşurare a unora dintre etapele procesului tehnologic pot depinde de evenimente petrecute pe parcursul derulării sale. Disciplina tehnologică este deseori încălcată, pot să apară obstacole, situaţii neprevăzute etc. În astfel de cazuri, situările succesive ale punctului caracteristic nu pot fi calculate off-line, ci trebuie calculate on-line. Întrucât calculele pentru câte un punct exact al traiectoriei nu se pot efectua la fiecare T, se adoptă soluţia de a calcula câte un punct (exact) numai la fiecare N perioade de eşantionare (tipic N = 25÷30). Calculele pentru următorul punct prescris pentru mişcări se efectuează în avans cu câţiva paşi (1-2 etape de proces, dacă e posibil). Pentru conducerea nemijlocită (conducerea cu controlerul de ax, vezi fig.2.1) trebuie, însă, respectată strict durata perioadei T = 0,8…1 ms. Asta înseamnă că la fiecare T trebuie să apară, pentru fiecare sistem de conducere local, câte o mărime de prescriere. Puncte de prescriere exacte sunt însă calculate numai la fiecare N •T ! În aceste situaţii se foloseşte o metodă cu care, între două puncte de prescriere exacte (calculate la intervale N•T), se calculează puncte de prescriere suplimentare cu un procedeu de interpolare liniară (vezi paragraful 4.11.2), prin care volumul de calcule este mult redus. III. În cazul în care se efectuează şi calcule de dinamică Timpul necesar efectuării calculelor pentru determinarea unui nou punct al deplasării este extrem de lung. În astfel de situaţii se procedează la oprirea robotului într-un punct cartezian (într-o situare) şi se aşteaptă terminarea calculelor aferente punctului următor.

Relaţia qi(t) (4.55) este liniară în timp, adică între două puncte de prescriere exacte se asigură o mişcare cu viteză constantă pe fiecare axă. Calculul este efectuat de un bloc dedicat numit interpolator (vezi cap.II, fig.2.3). El poate fi un bloc software sau un microcalculator. Prin introducerea acestuia se generează, către sistemele de conducere locală de la nivelul axelor robotului, câte un punct de prescriere, exact sau pseudoexact, la fiecare T. Observaţii: 1) Pentru regulatoarele care execută conducerea nemijlocită a axelor, trebuie generat câte un punct de prescriere la fiecare T. Folosind interpolarea liniară, majoritatea dintre acestea sunt pseudoexacte, dar la fiecare N•T se transmite şi câte un punct exact; 2) Interpolatorul poate fi inclus fie în generatorul de traiectorie, fie în controlerul de ax (fig.2.3); 3) Folosind puncte de prescriere pseudoexacte, desigur că acurateţea trecerii prin punctele carteziene impuse poate fi afectată. Există, însă, procedee de determinare (prin calcul) a numărului minim de puncte de prescriere exacte ce trebuie cunoscute şi utilizate în conducere, pentru ca între ele să se poată proceda la interpolarea liniară şi acurateţea deplasării în spaţiul cartezian să se menţină în limite admise.

4.11.3. Algoritmul de determinare al numărului minim de puncte exacte de pe o traiectorie spaţială, cu care se asigură o deviere limitată
În cazul utilizării interpolării liniare, folosindu-se puncte de prescriere pseudoexacte, poate să rezulte o deviere inacceptabilă de la traiectoria spaţială impusă. Situaţia se poate reprezenta ca în fig.4. 22.

4.11.2.Interpolarea liniară
Fie două puncte, din spaţiul cartezian, F0 şi F1, calculate exact într-un interval de timp N•T de către generatorul de traiectorie. Cu analiza cinematică inversă se calculează q0i şi q1i, i = 1 ÷ 6, seturile de valori în coordonate c.c.c. (articulare), aferente punctelor considerate. Între punctele de prescriere exacte calculate în coordonate c.c.c. se mai calculează, pentru fiecare axă, puncte de prescriere intermediare pseudoexacte, folosind relaţia: qi(t) = q1i - (T1-t) ⋅ (q1i-q0i)/ T1 unde: qi (t) – legea de variaţie în timp a valorilor coordonatei articulare i; q1i, q0i – puncte de prescriere exacte; T1 – intervalul de timp necesar deplasării între cele două puncte; t – timpul curent. i = 1 ÷ 6, pentru cazul unui robot uzual cu 6 axe. (4.55)

Fig.4. 22. Puncte din spaţiul cartezian situate pe şi în afara traiectoriei impuse În fig.4. 22 F0 şi F1 sunt două puncte exacte de pe traiectoria carteziană impusă. Acestea sunt calculate la intervale de timp N· T . Între cele două puncte exacte, situate

Cap. 4. Specificarea, generarea şi controlul mişcărilor

127

128

CONDUCEREA ROBOŢILOR

pe traiectorie, la fiecare T se calculează puncte de prescriere intermediare, folosind interpolarea liniară (cu care se asigură o deplasare cu viteză constantă). Se obţin, astfel, prin calcul,puncte în spaţiu pseudoexacte, notate cu x pe fig.4.22 . Punctele intermediare calculate nu se situează în mod obligatoriu pe traiectoria carteziană impusă, fiindcă ele nu au fost calculate cu matricea D(r). Între punctele intermediare elementele mecanice efectuează mişcările simultan şi cu viteză constantă. Între mişcările efectuate pe axe diferite nu există o legătură anume impusă. Dacă se efectuează analiza cinematică directă, nu există nici un motiv ca din calcul să rezulte puncte exacte de pe traiectoria carteziană. Folosind interpolarea liniară se procedează de fapt la conducerea in spaţiul cartezian cu interpolare în coordonate articulare. F0 şi F1 sunt însă suficient de apropiate pe traiectorie, fiindcă intervalele de timp N· T sunt relativ scurte. În plus, valorile cu care se incrementează variabila timp t din relaţia (4.55) sunt mici. În consecinţă, abaterile x de la traiectorie nu sunt mari. Există însă cazuri când nu se admit nici măcar aceste mici abateri. a. Calculul numărului minim de puncte exacte pentru a asigura o abatere limitată de la traiectoria carteziană impusă, când se aplică interpolarea liniară Pentru a se asigura încadrarea abaterii de la o traiectorie carteziană impusă în limitele admise de particularitatea unei anume aplicaţii, se utilizează un algoritm de corecţie ce permite determinarea numărului minim de puncte exacte de pe traiectorie care trebuie utilizate. Fie F0 şi F1 două puncte exacte de pe traiectoria spaţială (calculate cu D(r)). Cu analiza cinematică inversă se află seturile de valori aferente pentru coordonatele articulare q0i şi q1j, i, j = 1÷k, k fiind numărul de axe ale robotului. Între aceste puncte exacte, folosind relaţia (4.55), se calculează şi puncte de prescriere suplimentare qs(t). Se calculează, pe de o parte, un set de coordonate c.c.c. qi(t*), i= 1÷k, folosind relaţia de interpolare (4.55). Acestea sunt coordonatele de prescriere folosite pentru a comanda robotul într-un moment arbitrar t*. Cu analiza cinematică directă se află punctul cartezian aferent Fi(t*), situarea la care ar ajunge punctul caracteristic al robotului, dacă deplasarea ar fi codusă folosind interpolarea liniară. Apoi, cu relaţiile memorate în Generatorul de Traiectorie pentru calculul valorilor curente ale elementelor matricii de conducere D(r), se calculează punctul exact Fd (t *) în care ar trebui să ajungă punctul caracteristic (PC) în momentul t*. Situarea PC în cele două puncte Fi (t*) şi Fd (t*) se exprimă cu matricile:

Fd =

⎡ nxd ⎢n ⎢ yd ⎢ nzd ⎢ ⎣ 0

oxd oyd ozd 0

axd a yd azd 0

pxd ⎤ p yd ⎥ ⎥ pzd ⎥ ⎥ 1 ⎦

(4.57)

Evident că cele două puncte nu sunt coincidente. Între ele există atât o abatere de poziţie cât şi una de orientare. Abaterea de poziţie se calculează cu o relaţie simplă:

a p = pm − pc = ( pxi − pxd )2 + ( pyi − pyd )2 + ( pzi − pzd )2

(4.58)

În orientare eroarea se exprimă prin faptul că sitemul de coordonate ataşat PC trebuie rotit în aşa fel încât orientarea sa să ajungă de la cea aferentă Fi la cea aferentă Fd: Ri x Rot(n,Φ) = Rd (4.59) În relaţia (4.59) Rot(n,Φ) este o matrice de rotaţie în jurul axei n cu unghiul Φ, n fiind axa în jurul căreia trebuie rotit SC ataşat PC, iar Φ unghiul rotaţiei ce trebuie efectuată pentru trecerea de la Fi la Fd. Din relaţia (4.59): Rot(n,Φ) = Ri -1 x Rd (4.60) adică diferenţa de orientare între situările din cele două puncte carteziene se determină înmulţind inversa submatricei de rotaţie iniţială cu submatricea finală. Aşadar, diferenţa între cele două puncte (cel exact şi cel obţinut prin interpolare) se determină calculând: a) abaterea (eroarea) de poziţie,utilizând relaţia (4.58); b) matricea de rotaţie Rot (n,Φ) . Cu acestea se determină diferenţa dintre cele două puncte, adică se verifică dacă punctul Fi (t*) este suficient de apropiat de punctul Fd (t*) de pe traiectoria carteziană. Măsura noncoincidenţei se exprimă cu eroarea de poziţie ap şi unghiul δrot (cel din matricea Rot (n,Φ)). În general, în aplicaţii, se impune ca ap ≤ apmax şi δrot ≤ δrotmax , adică se impune: • o deviere poziţională maximă de la traiectoria carteziană; • o deviere maximă a orientării în raport cu cea corespunzătoare unui punct exact de pe traiectorie. Verificarea abaterilor trebuie efectuată des şi trebuie făcute permanent corecţii. b. Algoritmul propriu-zis În cazul conducerii unui robot pe traiectorie carteziană continuă folosind interpolarea liniară, se poate folosi algoritmul prezentat în cele de mai jos, cu care se asigură o deviere limtată de la respectiva traiectorie impusă. Observaţie: în limba engleză pentru „deviere limitată” se utilizează expresia bounded deviation.

Fi =

⎡ nxi ⎢n ⎢ yi ⎢ nzi ⎢ ⎣0

oxi o yi ozi 0

a xi a yi azi 0

p xi ⎤ p yi ⎥ ⎥ pzi ⎥ ⎥ 1 ⎦

(4.56)

arce de cerc.11. S1: Se aplică analiza cinematică inversă şi se află. să nu se depăşească erorile admise/ impuse. (4. . nyc = (ny1 + ny 0 ) /2.4) axc = (ax1 + ax0 ) / 2. atunci este suficient să se folosească numai cele două puncte exacte F0 şi F1. 4. În rezumat. În continuare se consideră perechile de puncte F0 cu Fc respectiv Fc cu F1 şi se mai efectuează odată calculele conform algoritmului descris ş. Unul dintre acestea este chiar Fc.d. algoritmul cu care se asigură o deviere limitată de la traiectoria carteziană impusă este după cum urmează: Fie F0 şi F1 două puncte carteziene exacte . i = 1÷k. ci mai trebuie adăugate şi alte puncte exacte de pe traiectorie. se poate ajunge la a se folosi patru niveluri de interpolare: 1) Aproximarea traiectoriei carteziene.calculate cu D(r). Dacă aP ≥ apmax sau dacă δrot ≥ δrot max.61) (4.a. 4) Interpolarea liniară (paragraful 4. adică legi de mişcare) (matriceale sau nu) ceea ce înseamnă că punctele din spaţiu sunt generate. qim = qi1 − (qi1 − qi 0 ) / 2 = (qi1 + qi 0 ) / 2 . pxc = ( px1 + px0 ) / 2. hiperbolă şi sinusoidă). pyc = ( py1 + py 0 ) / 2. pzc = (pz1 + pz 0 )/ 2 . setul de coordonate articulare q0i şi q1i. deşi se foloseşte interpolarea liniară. ayc = (ay1 + ay0 ) / 2. impusă de restricţia cu privire la timpul de calcul.62. Cu alte cuvinte. a p = pm − pc S4: Se verifică dacă Fm şi Fc coincid sau diferă între ele. Specificarea.Cap. 2) Dacă în urma calculelor cu analiza cinematică inversă. astfel ca interpolarea liniară să poată fi utilizată în calcule fără să provoace o deviere nepermisă de la traiectoria exactă. azc = (az1 + az 0 )/ 2 . Problema interpolării La încheierea capitolului dedicat metodelor de conducere a roboţilor. pentru unele puncte/ situări carteziene impuse se obţin valori infinite şi/sau nerealizabile pentru coordonatele articulare. trebuie făcută o menţiune cu privire la modul în care se înţelege noţiunea de interpolare.c şi se verifică dacă aP ≤ apmax şi dacă δrot ≤ δrot max . arce de parabolă.se calculează: (4.2) de la nivelul executor. se repetă de atâtea ori până când eroarea ajunge să se încadreze în limitele admise. în mod indirect. Observaţie: Volumul de calcule implicat de parcurgerea algoritmului este suficient de mare şi se efectuează off-line. cu funcţii de timp. cu segmente de curbe simple (drepte. În cel mai complex caz.62. cu câţiva paşi în avans faţă de momentul în care robotul trebuie condus la punctele stabilite cu algoritmul. i = 1 ÷ k nxc = (nx1 + nx0 ) / 2 . ozc = (oz1 + oz 0 )/2 . oyc = (oy1 + oy 0 ) / 2. mai sus prezentaţi. de la nivel articular. aferent ambelor puncte carteziene.1) (4. 4. S2: Pentru fiecare articulaţie se calculează câte un punct de mijloc: S2’: Se aplică analiza cinematică directă şi se calculează punctul cartezian Fm care corespunde punctelor qim . iar între ele se poate folosi în conducere interpolarea liniară fără riscul de a se depăşi devierea admisă de la traiectoria carteziană impusă. Această metodă constituie ea însăşi o metodă de interpolare.62.3) (4.12. i = 1÷k. astfel ca. La celelalte metode de conducere nu se folosesc decât o parte dintre nivelurile de interpolare mai sus enunţate. pe porţiuni. nu este suficientă utilizarea numai a celor două puncte exacte F0 şi F1 pentru a se putea folosi în conducere interpolarea liniară.m. Paşii S1÷S4. nzc = (nz1 + nz 0 )/ 2 oxc = (ox1 + ox0 ) / 2 . S3: Se calculează punctul cartezian de mijloc Fc situat între F0 şi F1 S-a dovedit practic că sunt suficiente două parcurgeri ale algoritmului pentru a afla numărul de puncte exacte necesare în conducerea pe traiectoria carteziană impusă.2) (4.63) (4. k fiind numărul de axe ale robotului.62. cel al conducerii unui robot în coordonate carteziene pe traiectorie impusă.64) δ rot = Φ m. 3) Generarea traiectoriei se realizează folosind funcţii conducere (care sunt funcţii de timp. se procedează la aproximarea acestor valori cu cele mai apropiate valori finite şi/sau realizabile. Dacă eroarea este mai mică decât cea maxim admisă. adică se verifică dacă eroarea se încadrează în limitele acceptate. generarea şi controlul mişcărilor 129 130 CONDUCEREA ROBOŢILOR Algoritmul îşi propune să afle numărul minim de puncte exacte de pe traiectorie care trebuie utilizate.

tastatură. În calculator. Denumirea PC (Personal Computer) sugerează faptul că acest calculator a fost conceput astfel încât să poată fi utilizat cu uşurinţă la modul individual (personal) la birou sau la domiciliu (astăzi şi în variante portabile). cu echipamente/ procese externe. an ce a devenit. Pentium 4 EE (Extreme Edition). Ulterior au apărut calculatoarele XT. Este numit curent şi. Calculatorul personal IBM-PC a apărut pe piaţă în anul 1981. Duron. El lucrează şi cu memoria suplimentar adaugată în exteriorul său. AT. Microprocesorul este un circuit digital în care a fost integrat într-o singură capsulă un sistem de calcul complet. astfel. ş. Observaţie: Prin magistrală. Cele mai recente sunt realizate chiar dual-core. Observaţie: Toate microprocesoarele mai sus enumerate sunt dezvoltări. procesor. elementul central din schema bloc informaţională a unui robot din fig. prin echipamente externe dedicate acestui scop: monitor. considerată ca fiind cea adecvată aplicaţiilor cu extindere medie. O prezentare mai explicită a problematicii legate de această importantă grupă de sarcini pentru echipamentul de conducere al unui robot trebuie întregită şi cu abordarea unor aspecte legate de variantele constructive (suportul hardware) ce se utilizează la implementarea soluţiilor cunoscute pentru conducere.1. 80486. la 8086 informaţia este organizată şi vehiculată în cuvinte exprimate pe câte o pereche 2 x 8 biţi. s-a conceput o structură care să permită dialogul cu O. Opteron. Athlon 64. este reprezentat în schema bloc din fig. I şi II). Fizic capsula circuitului integrat este prevăzută cu mai muţi pini de acces spre şi de la mediul extern. interfeţe audio-video etc. De aceea. generarea şi conducerea mişcărilor elementelor mecanice ale unui robot.compatibil IBM PC. citind şi scriind în aceasta date. în limba engleză): memorie de capacitate mai mare.1.1 se prezintă schema bloc a unui calculator personal uzual.5.1 cu un bloc denumit calculator.2. 486 şi apoi Pentium. simplu. Calculatorul După cum s-a arătat în capitolele introductive (cap. primul microprocesor pe 16 biţi (bit provine din comprimarea cuvintelor binary digit.a. mouse. important în istoria tehnicii de calcul. adunare. Dotarea internă a fost. microprocesorul este amplasat pe placa de bază (mother board . ş. se înţelege un set de linii de conexiune ce transportă informaţia aferentă execuţiei unei anumite funcţiuni. sau cele mai recente Celeron. în general să dialogheze.scădere.2. să recepţioneze. . co-procesoare aritmetice de viteză. În fig. Legătura cu memoria externă este asigurată prin magistrala de date.a. în continuare au fost introduse două capitole ce fac referire la schema bloc din figura 2. din ce în ce mai performante. Denumirea este justificată pentru că acest bloc are toate caracteristicile calculatorului obişnuit. Această structură modulară concepută şi standardele introduse au determinat o rapidă răspândire pe piaţă a acestei familii de calculatoare. Microprocesorul ştie să facă operaţii aritmetice: ŞI. În acest scop. sau unitate centrală. astfel încât orice configuraţie să poată fi completată ulterior cu elemente suplimentare (upgrade.U. SAU. 5. adică două unităţi centrale de calcul într-un singur circuit integrat. şi poate memora un anumit număr de date într-o memorie internă de capacitate limitată. la acel moment. Proiectarea s-a făcut modular pe baza unor standarde IBM. Fig. Circuitul ştie să genereze semnale de comandă. 80G86.1. în tehnica de calcul.132 CONDUCEREA ROBOŢILOR Capitolul 5 STRUCTURI NUMERICE SUPORT PENTRU ECHIPAMENTUL DE CONDUCERE AL UNUI ROBOT În capitolul 4 au fost prezentate principale noţiuni legate de specificarea. ale microprocesorului 8086. adică 2 octeţi).MB) pentru aşa numita unitate centrală de calcul a PC. Schema bloc a unui calculator uzual Nucleul central al calculatorului este microprocesorul: 80386.1 (cap. 386. 5. PS cu procesoare 286. II) şi prezintă descrierea generală a echipamentelor hardware ce se folosesc uzual în construcţia echipamentelor de conducere a roboţilor. comparaţie. 80586 (PENTIUM).

Creşterea numărului de adrese impune suplimentarea numărului de pini de legătură cu exteriorul ai capsulei microprocesorului. Există şi variante de memorii EEPROM sau E2PROM (Electrically Errasable PROM). Principalele caracteristici pentru acestea pot fi: tipul. Pentru sitemul de operare Windows este necesară o capacitate de memorie de cca. în care fiecare celulă de memorie constă dintr-un cicuit basculant bistabil. preţul de cost. Memoriile SRAM sunt cu accesul şi tranferul cel mai rapid al datelor. Memoria FLASH este cel mai nou tip de memorie. Această necesitate complică tehnologia de fabricaţie şi creşte preţul de cost. procedee anume concepute şi aplicate în funcţie de tipul memoriei. Memoriile EPROM (Errasable Programable Memory). acelaşi pin al circuitului poate fi utilizat la execuţia de funcţiuni diferite. 1. prin multiplexare se înţelege utilizarea aceluiaşi suport hardware pentru execuţia de funcţiuni diferite. calculatorul poate fi echipat cu o memorie ce poate stoca cca. la un moment dat.Cap. dar nu şi şterse.dar sunt şi cele mai scumpe. dar în care se şi poate scrie.Memorii semiconductoare Memoriile electronice utilizate într-un calculator sunt de mai multe feluri: a. În general. adică memorie care poate fi numai citită. Pentru a citi/scrie din/în memoria externă microprocesorul trebuie să transmită. În consecinţă. respectiv DRAM (RAM dinamic). 32 biţi. Într-un calculator uzual memoria ROM păstrează pachetul de programe de bază al acestuia. .2. Memoria RAM este amplasată tot pe placa de bază (MB) şi se partiţionează în module SIMM (Single Inline Memory Module) cu capacitatea de 2. amplasarea (internă sau externă). 8 Mbyte. fiind mai ieftine. care trebuie să rămână memorate şi apoi reutilizate chiar dacă alimentarea calculatorului este. adică cca. scurt. b. considerată tot din familia E2PROM.000. Astăzi procesoarele mai moderne sunt capabile să opereze chiar pe magistrale de 64 de biţi. de asemenea. Mai recent se produc şi memorii SDRAM realizate prin combinarea celor două structuri tradiţionale. el operează pe o magistrală de 32 de biţi (cazul procesorului 486). sunt acelea la care conţinutul înscris iniţial poate fi ulterior şters. Exemplu: Dacă magistrala de adrese este alcătuită din 20 de linii de conexiune se pot formula un număr de maximum 220 de adrese. 5. 8 Mbyte (1 byte = 8 bit sau. Denumirea din limba engleză Random Access Memory se traduce cu memorie cu acces aleatoriu. în momente diferite. Există o mare varietate de tipuri. Denumirea provine de la denumirea ei din limba engleză Read Only Memory. Conţinutul memoriei RAM se şterge odată cu deconectarea calculatorului. Adresa este transmisă pe magistrala de adrese. oprită. pe capsula memoriei este prevăzut un geam transparent pentru radiaţiile ultraviolete. care are un număr variabil de linii. cu sensul că este o memorie electronică din care se poate şi citi. în care memorarea informaţiei se face prin încărcarea capacităţii câte unui tranzistor MOS. Unele dintre aceste memorii sunt PROM (Programmable Read Only Memory) care pot fi numai programate. Se fabrică şi variante de memorii OTP (One Time Programmable). mai întâi. adresa locaţiei de memorie din/în care trebuie transferată informaţia. Recent au apărut chiar memorii dinamice cu dublă densitate DDRAM. 5. cu parametrii specificaţi în fila de catalog. Pentru ştergere. într-un calculator uzual există şi o mică baterie. capacitatea de memorare. 1 megacuvânt (1MB). Astfel de memoriii se inscripţionează cu aparate special construite numite programatoare.1. la care ştergerea se face aplicând. Informaţia înscrisă este păstrată intactă şi în absenţa tensiunii de alimentare a circuitului. La un circuit integrat prin multiplexare se asigură ca un acelaşi pin al capsulei sale să fie conectat la diferite circuite electrice interne. La nivelul actual al tehnologiilor de fabricaţie s-au obţinut capsule cu astfel de memorii ce pot înmagazina 1 Mbit de informaţie. iar magistrala de adrese este constituită dintr-un număr mai mare de linii.2. ce conţine anumite date. Cu cât memoria este mai mare şi adresele sunt mai multe. Memoria ROM. În funcţie de circuitele electronice cu care sunt realizate. au fost fabricate memorii SRAM (RAM static). Cu alte cuvinte. Memoria RAM. se folosesc în producţia de aparatură de mare volum. Memoria Memoria este partea dintr-un calculator care se utilizează pentru păstrarea şi regăsirea ulterioară a datelor şi programelor. care alimentează o anumită parte a memoriei RAM. fiindcă funcţionarea unei celule de memorie are la bază încărcarea şi descărcarea capacităţii unui tranzistor MOS. Este considerată o parte a memoriei permanente dintr-un caculator. La alte categorii de memorii se poate face şi ştergerea informaţiei folosind. pentru că aceste programe trebuie să fie memorate şi reutilizate şi după ce calculatorul a fost deconectat şi apoi reconectat la tensiunea de alimentare. Soluţia tehnică prin care se realizează optimizarea raportului preţ/ performanţă este aceea de a se proceda la multiplexare. la care accesul la informaţie şi ştergerea se realizează mult mai rapid. microprocesorul nu poate înscrie în aceasta vreo informaţie. care sunt livrate cu conţinutul inscripţionat definitiv şi. circuitul la iradiere cu ultraviolet se înfăptuieşte anularea informaţiei conţinute.000 de adrese. o memorie mai mare creşte performanţele calculatorului. viteza de acces sau de transferare a datelor. ca şi la memoriile în care informaţia se poate şi înscrie. 4. Pe de altă de parte. În această memorie se păstrează datele şi programele care sunt în lucru la un moment dat. Structuri numerice suport pentru echipamentul de conducere al unui robot 133 134 CONDUCEREA ROBOŢILOR Dacă microprocesorul este capabil să preia deodată. Comutarea rolului unui pin de la o funcţie la alta se face prin software (programare). în momente diferite.aşa numitul BIOS. caracteristici şi moduri de organizare ale memoriilor. 1milion de cuvinte de câte 8 biţi fiecare sau. Supunând. un impuls electric de putere mai mare. în limba română 1 octet = 8 biţi). Din acest motiv. cândva. un timp. pe un pin dedicat al capsulei. 5.

Denumirea provine din limba franceză.5×2. sistemul de operare sau un web browser solicită accesarea vreunei date. c. Memory Stick Duo. cilindrii sau partiţii. Prezintă însă deza- . odată depozitate în memoria cache. L2 şi. de volum mare. care are introdus un stick. modificarea magnetizării câte unui punct de pe materialul aflat. provenit din varianta clasică dar cu dimensiunile de cca. toate informaţiile importante pentru utilizator.d. dar mai lentă. Discurile sunt denumite platane şi sunt acoperite. în consecinţă. Braţul de acţionare este astfel construit ca fiecare cap de citire/scriere să poată acoperi. Principiul de utilizare a memoriei cache este că un pachet de date depozitate într-o locaţie a memoriei cu acces mai lent este copiat într-o altă locaţie situată în zona de memorie cu acces rapid. HDD are o capacitate mare de memorare.a. de obicei sticlă sau aluminiu. Memory stick PRO Duo. prin deplasare. d. cuprinsă între 5400 şi 10000 de rot/min sau chiar mai mult. este o memorie flash conectabilă la calculator din exterior. Este denumirea dată unei (unor) zone din memoria semiconductoare. respectiv de a provoca.m. Structuri numerice suport pentru echipamentul de conducere al unui robot 135 136 CONDUCEREA ROBOŢILOR Unii autori numesc spaţiul de memorie constituit din modulele RAM memoria fizică a calculatorului. Memory stick. În camere video digitale. cu care se conferă robotului un comportament anume dorit. o versiune micşorată a lui PRO şi cu capacitate de până la 8GB. De regulă. Versiunea PRO Duo a fost redusă ca dimensiuni la cca. Zona de memorie cache este organizată pe niveluri (de priorităţi de adresare). Face parte dintre memoriile cu acces lent. prevăzut şi cu un mod de operare de mare viteză (high speed mode). s-a generalizat denumirea de memorie principală. Comanda şi dialogul hardware cu hard-discul se realizează cu blocul numit driver de HDD. rulate într-un mod „invizibil” pentru operatorul uman. Pentru ambele suprafeţe a fiecărui platan este prevăzut câte un cap de citire/scriere. HDD este alcătuit din unul.2 mm (comparabil cu mărimea unei unghii de la deget) şi capacitate până la 2 GB. Informaţia este înregistrată pe un platan în timp ce acesta este rotit în dreptul unor capete de citire/scriere amplasate foarte apropiat (cca. Stick-urile au apărut din anul 1998 şi au devenit mereu mai performante în ceea ce priveşte capacitatea de stocare şi viteza de acces la datele memorate. însă.Cap. Constructiv.5 MB/s şi dimensiuni de ordinul 50×21. Organizarea memoriei pe hard disk-uri se face pe sectoare. Face parte din categoria dispozitivelor mobile de păstrare a datelor cu comunicare prin interfaţă USB (mobile USB storage devices). obţinându-se Memory Stick Micro. Memoria permanentă Pentru a se asigura şi o capacitate de memorare permanentă a datelor şi/sau programelor. Variante ulterior apărute sunt: Memory Stick PRO.8 MB/s. Dacă informaţia căutată nu se află în memoria cache. piste. cel mai adesea. Astfel de programe sunt. date copiate din memoria principală a calculatorului.1nm) de suprafaţa magnetică. Trebuie menţionat şi faptul că se fabrică şi variante de memorii stick pentru a fi introduse în echipamente şi/sau aparate electronice. transferată mai lent. pentru a depozita. de la verbul cacher (a ascunde) şi adverbul derivat caché (ascuns). Memoria cache. Ea poate fi amplasată nu numai alături de („înainte de”) memoria principală a calculatorului. telefoane mobile sau console pentru jocuri electronice se folosesc carduri de memorie flash USB. cu câte un strat subţire din material magnetic. Când căutarea are succes data respectivă este imediat preluată. Situaţia este numită cache hit. Capetele de citire/scriere au rolul de a sesiza. Implementarea constă în utilizarea unei zone de memorie rapidă de volum mai redus.2.2. Este cunoscut căţeluşul-robot AIBO. datele transferate după un cache miss se depozitează în memoria cache. Versiunile de stick-uri iniţial apărute erau limitate la o capacitate de până la 516 MB. cuprinsă astăzi între 160 GB şi 750 GB.5× 1.În utimul timp. în aceasta. căutarea se face întâi în memoria cahe. ea este căutată în alte zone ale memoriei şi. când acesta lucrează la calculator. printr-un port USB. ca şi cardurile USB. Rata de transfer a informaţiei stocate pe HDD a ajuns la 80 Mbyte/s. în imediata lor apropiere. L3. Datele. 2/3 din aceasta. dar pot fi şi anume apelate. pentru ca la următoare apelare să poată fi transferate rapid.1/4. două sau trei discuri din material nemagnetic solid.8 mm. în pofida creşterii performanţelor lor electrice. ci chiar pe procesor (uneori şi două niveluri) şi pe driver-ul de HDD. viteza maximă de scriere 1. iar toate acestea sunt deplasate cu un braţ de acţionare comun. sunt mult mai rapid accesabile la utilizarea următoare. ş. fixate pe un acelaşi ax vertical. Un aspect important este şi acela al dimensiunilor de gabarit al acestor dispozitive. Unitatea HDD este esenţială în funcţionarea calculatorului pentru că stochează pe timp nelimitat. pe ambele feţe. 5. dimensiunile stick-urilor au fost mult micşorate. Cu timpul. pe care sunt memorate programe scrise de proprietarul căţeluşului. cache miss.Aceasta este constituită din componente de mare viteză (SRAM). Ca software se folosesc programe de partiţionare/ formatare. de capacitate de 128 MB până la 2GB. Dacă unitatea centrală. mai nou. întreaga suprafaţă a unui platan. Platanele sunt rotite cu mare viteză. Există azi stickuri de capacitate de 8 sau 16 Gbiţi. Cele mai importante sunt: a) Hard-disk (HDD) este o unitate pe care se memorează o mare cantitate de informaţie. Înregistrarea datelor este magnetică.a. O definiţie simplă pentru memoria cache ar fi ca o zonă de memorie în care se depozitează temporar date frecvent utilizate pentru ca accesul la acestea să poată fi mai rapid. ş. un calculator este dotat cu unităţi dedicate stocării de informaţie pe termen lung. viteza maximă de citire 2. la un moment dat. 5. cu dimensiuni 15×12. notate L1. disk management.

Discul este fabricat dintr-un material plastic policarbonat transparent. cu volumul de câţiva Mbyte. memoria este organizată ierarhic. Motivul pentru care se numeşte memorie “swap” (interschimb). Nivelul L2 cache – memorie rapidă. astăzi majoritatea producătorilor preferă denumirea de Digital Vesatile Disk. La DVD-Video s-a reuşit chiar înregistrarea pe ambele feţe ale discului şi. Între aceste „gropi” se află spaţii libere de material nedeteriorat. memory stick. Ierarhizarea se face în succesiunea crescătoare ale valorilor timpului de acces la informaţie.4. c.De regulă. e. d. Ca aspect exterior un DVD nu se deosebeşte de un CD. Dacă la un CD capacitatea maximă este la limita a 900 Mbyte. Sistemul de operare o poate utiliza dacă nu mai are memorie fizică disponibilă. ca fiind un spaţiu de pe HDD.5 Mbyte.Pentru acestea calculatorul trebuie să conţină interfeţe corespunzătoare (hardware şi software). Apoi încarcă în memoria electronică. Şi pentru dischete există programe dedicate de folosire a acestora. 5. c.Cap. cu lungimea de undă în domeniul roşu. CD-ROM (CD – Compact Disk). despre care crede că nu mai sunt necesare pentru moment. Placa Video. f. Memoria virtuală Conceptul de memorie virtuală a fost introdus în tehnica de calcul încă din anii ’60. Au fost realizate şi variante de Rewritable CD (în limba română:CD care poate fi rescris). Dezavantajul dischetelor este că pot stoca numai o cantitate mică de informaţie(tipic 1. prin intermediul driver-ului de disc (unitate pentru dischetă). provocată la trecerea peste o denivelare. Aceasta poate. Memoria virtuală este adesea chiar denumită swap. floppy disck. discul optic. Ierarhia reprezintă ordinea de căutare/depozitare a informaţiei în memorie.4. de mare volum. dar spaţiul lor de depozitare de date se limitează la câteva sute de byte. regimul de lucru la viteze mari afectează fiabilitatea părţilor mecanice. Alte variante de memorii – disc optic (CD. Spaţiul swap este gestionat de un program dedicat din sistemul de operare şi. Informaţia este citită/înregistrată magnetic pe folia dischetei. are loc sau nu o trecere peste vreo denivelare. din material plastic rezistent. pe o traiectorie în spirală.. Principiul de funcţionare constă în aceea că la inscripţionare. care este reflectată în mod diferit dacă. b. respectiv la absenţa ei.2. se găseşte informaţia aferentă lui 1 sau 0 logic. constituind o dischetă. dar folosindu-se noi tehnici de formatare fizică. Citirea se face cu o rază laser. Ierarhia tipică utilizată este astfel: a. pentru ca suprafaţa respectivă să devină reflectorizantă. este că sistemul de operare ia unele date. SDRAM. lipsi dacă microprocesorul calculatorului este de mare viteză şi poate opera cu un volum mare de date. având o capacitate de memorare de sute de Mocteţi.7 Mbyte. Măsurând diferenţa de fază dintre raza directă şi cea reflectată. 5. DVD. Nivelul L3 cache – (opţional).2. uneori nefaste. acoperită cu un material magnetic. dar pot fi utilizate şi discurile Audio sau Video. o capacitate de 8. iar apoi reinscripţionate. Pe una dintre suprafeţele sale este depus un strat subţire din aluminiu pur sau aur. dar de pe astfel de discuri pot fi transmise calculatorului şi înregistrări muzicale sau fotografii. Dacă la un calculator se utilizează şi DVD-uri unitatea (driver-ul) de disc optic trebuie să fie una anume specializată. denumit spaţiu swap. Şi pentru utilizarea acestor discuri se folosesc drivere specializate (unitate de disc optic). De asemenea. astfel. asociate cu noi soluţii de formatare de aplicaţie (tehnici de compresie a datelor) s-a reuşit o creştere importantă a capacităţii de memorare. eliberată. discuri optice care pot fi şi şterse. Registrele interne ale procesorului – evident că permit accesul cel mai rapid. Ierarhizarea memoriei În orice calculator. . Folia este încapsulată într-o carcasă de protecţie. g. DVD). Este cvasi-generalizat astăzi în utilizare. Pe un CD-ROM pot fi stocate programe şi date. Informaţia este conţinută în succesiunea denivelărilor produse.. mai lentă decât L2. În mod normal la un calculator se folosesc discuri DVD-ROM. rotind discul. El a “interschimbat” datele inutile cu cele utile momentan. considerând fiecare tip de memorie utilizat. pentru că discurile de acest fel se produc pentru diferite utilizări: DVD-Video la înregistrarea de imagini filmate. DVD-Audio pentru înregistrări sonore sau DVD-ROM pentru stocarea de programe şi/ sau date pentru calculatoare. de pildă. d. Memoria principală – DRAM. care să fie păstrate separat de calculator. fiind capabil să ruleze şi aplicaţiile de procesare de imagini. însă.3. Floppy-disk (FDD). se recomandă să se folosească mai multe astfel de unităţi simultan sau să se realizeze copii ale lor. se crează şiruri de mici adâncituri („gropi”) cu dimensiuni de ordinul sutelor de nanometri în diametru şi adâncime. pe suprafaţa utilă a discului de plastic. Nivelul L1 cache (Level 1) – memorie rapidă cu volumul de ordinul zecilor de Kbyte.5 Mocteţi) şi că au o fiabilitate scăzută la utilizare repetată. Pentru a se evita efectele. de un număr de ori specificat de producător.dar foloseşte surse laser diferite pentru cele două tipuri de discuri. umiditate). şi le salvează în spaţiul swap. dar lentă. utilizatorul are acces la informaţia conţinută în acesta ca şi cum informaţia respectivă ar fi depozitată într-o memorie cu acces mai rapid. este o folie din material plastic flexibil.Capacitatea sa este în jurul a 512 Kbyte. până la câţiva Gbyte. Structuri numerice suport pentru echipamentul de conducere al unui robot 137 138 CONDUCEREA ROBOŢILOR vantajul de a fi sensibil la condiţii de mediu (praf. discul flexibil. b. cu aceasta. Deşi la apariţia sa denumirea a avut semnificaţia Digital Video Disk. Memoria pe disc (HDD) – cu cel mai mare volum.3. ale unei eventuale defectări a unităţii HDD. pentru un DVD capacitatea standard este de 4. dar cu timp de acces ceva mai lung (2 -10 ori) decât cea din nivelul 1. 5. Memoria virtuală nu este la fel de rapidă ca cea fizică şi de aceea sistemul de operare încearcă să ţină datele (în special cele des utilizate) preferenţial în memoria RAM. datele care sunt necesare în acel moment. o unitate de DVD poate recunoaşte şi CD-uri.

Aceasta depinde de tehnologiile de implementare hardware (structura şi tipul componentelor electronice integrate în interfeţele aferente). De pildă. Multi word DMA. şi alte tipuri de magistrale ca MCA (Microchannel Architecture). albă. este numit magistrală un ansamblu de legături electrice. care asigură un debit de date de 33 Mocteţi/s. compatibile sau nu între ele. Magistrala PCI (Peripheral Component Interconnect) este astăzi. Magistrale Aşa cum s-a spus şi la începutul capitolului 5. La modul serial de transmisie biţii de informaţie sunt vehiculaţi.ieşiri (South Bridge – puntea de sud). magistrala VLB (VESA Local Bus. Exemplul cel mai cunoscut a fost.3. magistrala PCI a fost concepută pe 32 de biţi şi frecvenţa de 33MHz. dimensiunile geometrice. 2.2. prin care procesorul este interconectat în sistem. permitea accesul direct la memorie (DMA). standardizate. Observaţie: Din diverse motive legate marketing. În paralel cu standardul ISA au coexistat.Cap. Magistrala ISA permitea accesul direct la componentele de sistem (în engleză: bus mastering). iar soluţia concretă de implementare este tipizată (standardizată). EISA (Extended Industry Standard Architecture). VESA fiind asociaţia care a dezvoltat standardul respectiv). precum şi datorită soluţiilor tehnologice de implementare. magistrala. • componente electrice: nivelul. Accesul direct la memorie Tehnica de acces direct la memorie. magistrale). asigurând . 5. care trebuie să comunice între ele. Aceştia sunt prevăzuţi. prin trecerea sa de la 8 la 16 biţi şi creşterea frecvenţei. pe placa de bază a calculatorului şi se disting prin culoarea lor. de aceea. în paragraful 5. în sistemele de calcul. Arhitectura are la bază două magistrale principale: magistrala procesorului (North Bridge . 32. S-a ajuns şi la aşa numitul ULTRA DMA. în timp. Fiecare transmisie-recepţie de date este numită ciclu. Un exemplu de tip de magistrală este magistrala ISA (Industry Standard Architecture). O altă caracteristică pentru o magistrală este aşa numita frecvenţă. interfaţa şi standardul au aceeaşi denumire. 4. Aceasta poate fi paralelă sau serială. printr-un circuit interfaţă specific. prin care se înţelege numărul de biţi ce se transmit sau se recepţionează pe o linie într-o secundă. informaţiile vehiculate pe o aceeaşi magistrală deservesc un ţel comun. ceea ce a condus la aşa numitele “gâtuiri” în funcţionare. frecvenţa sau puterea electrică a semnalelor. b. care interconectează diferite componente de sistem. 16. De exemplu. fără intermedierea procesorului. şi pentru alte componente de sitem (periferice. fiecare cu avatajele şi dezavantajele sale. protocoalele de comunicare utilizate. În limba engleză magistrala este numită bus. fără intervenţia procesorului. culoarea şi numărul de pini ai conectorilor utilizaţi. la timpul său. • componente ce ţin de logica folosită în comunicare: modul transmisiei de date. Cauza acestei aparente confuzii este că o magistrală asigură legăturile într-un sistem. La transmisia paralelă se asigură transferul simultan al biţilor ce constituie câte unul sau mai multe cuvinte binare. în echipamentele digitale în general. disponibil de pildă pentru magistrala ATA. DMA (Direct Memory Access).ieşiri tradiţionale. De cele mai multe ori. Structuri numerice suport pentru echipamentul de conducere al unui robot 139 140 CONDUCEREA ROBOŢILOR 5. legate şi la magistrala FSB (Front Side Bus) a procesorului şi la periferice. Prin bus expansion se înţelege posibilitatea cu care unele magistrale prevăzute cu un conector adecvat. Magistrala PCI este o magistrală intermediară conectată între cele două principale. pentru o eventuală dezvoltare a sistemului. tipul. 5. Principiul de a utiliza magistrale s-a conceput în vederea sistematizării căilor de comunicare şi. cu conductori fizici sau fără fir (wireless). Caracteristicile unui tip de magistrală sunt. la transmisia paralelă. după cum se transferă simultan 1.5. cu plăci PCI suplimentare. Fiecare dintre aceste tehnici au fost perfecţionate în timp. Se utilizează magistrale de câte 8. dar numai la primii 16 Mocteţi ai memoriei RAM. din ce în ce mai sofisticate.1 s-a făcut referire la magistrala de date şi cea de adrese. sau la un circuit/dispozitiv/echipament. Single word DMA. sau 8 cuvinte binare simultan. pentru a creşte rata de transfer a datelor. O magistrală este caracterizată prin volumul de informaţie pe care îl transportă simultan. Conectorii PCI sunt amplasaţi. care s-a folosit în calculatoarele personale până spre sfârşitul anilor ’90. ISA. în număr de cel puţin 3 sau 4. Una dintre componentele ce definesc un standard este modul de transmisie al datelor pe o magistrală. standard.puntea de nord) şi magistrala intrări . cea mai răspândită. 64 de biţi. Standardul pentru acest tip de magistrală s-a modificat în timp. Un standard este alcătuit din: • componente fizice: număr de linii de conexiune. a fost dezvoltată pentru a permite accesul la informaţia depozitată în memoria dinamică. Între frecvenţa de lucru a procesorului şi cea a perifericelor e o mare diferenţă. o cale de conexiune transportă un bit de informaţie. Au fost puse la punct două tehnici DMA: a. care foloseşte mai multe cuvinte la fiecare sesiune de transfer de informaţie. unul după celălalt. în multe surse de informaţie survin confuzii de limbaj între denumirile utilizate pentru magistrală/ interfaţă/ standard. cea care utilizează un singur cuvânt binar la fiecare sesiune de transfer de informaţie. cu suportul aferent al dezvoltării tehnologiilor. În interiorul unui calculator există mai multe magistrale. iar acesta depinde de numărul de linii de conexiune electrică din care este constituită magistrala. în serie. Iniţial. pot fi extinse şi spre exteriorul calculatorului. Rezolvarea acestei probleme sa obţinut prin dezvoltarea unei noi arhitecturi constructive concepută cu magistrale locale (Local Bus) şi interfaţarea acestora cu FSB. MCA sau EISA erau aşa numitele magistrale intrări. după cum s-a arătat anterior. De pildă. Debitul sau rata de transfer maxim a unei magistrale reprezintă cantitatea de date pe care o poate transporta magistrala în unitatea de timp.

fiind realizată fie în varianta îngustă (narrow). IDE. denumite generic DTE (Data Terminal Equipment). Debitul de date este mai mare decât la magistrala PCI (paralelă). Magistrala ATA (Advanced Technology Attachment). disponibilă din anul 2002. 5. Transmisia de date Definiţie: Prin comunicaţie de date se înţelege schimbul de informaţie numerică codificată între două echipamente care operează cu date. O intrare/ ieşire pentru o reţea de date. respectiv 188 de pini la cea de 64 bit. prin aşa numitul protocol PIO (Programmable Input/Output). este folosită la calculatoarele portabile şi este de formatul unei cărţi de credit (5. au fost dezvoltate mereu noi variante de interfeţe PCI. 3 V la calculatoarele portabile. fiind destinată aplicaţiilor grafice în care fluxul de date necesare este foarte mare. Structuri numerice suport pentru echipamentul de conducere al unui robot 141 142 CONDUCEREA ROBOŢILOR o rată maximă de transfer de 132 Mocteţi/s. Versiunea cea mai modernă este PCI-X 2. completarea sistemului cu plăci PCI convenţionale în cuple prevăzute pentru plăci PCI-X şi invers. pe 16 biţi. 5. care asigura un debit dublu.0 care poate funcţiona la frecvenţele 66. Desigur că.0 care permite funcţionarea la frecvenţele 66. după cum transmisia de date are loc în modul serial.4. versiunea AGP-8X permite un debit de 2. Există vesiunea LVD (Low Voltage Differential) pentru semnale de 3. Observaţie: În general. Magistrală diferenţială care permite transmisia pe fire lungi (tipic 25 m). fie în varianta lată (wide). ca formă şi număr de pini. pe magistrala IDE pot fi aduse informaţii din memoria dinamică. fie paralele. Au fost realizaţi şi conectori PCI Express Mini Card care fac posibilă şi implementarea tehnologiei PC Card.Cap. componentele legate la magistrala PCI – E se pot conecta/deconecta “la cald” (hot plug).0. astfel. 266 şi 533 MHz. driverul CD-ROM sau DVD-ROM. această versiune este perfect compatibilă cu formatul PCI şi permite. Conectorii PCI – Express diferă total de cei PCI. între care sunt incluse şi (micro) calculatoarele. Şi SCSI a evoluat mereu în timp. Versiunile de magistrale ATA. 4X … până la 64 X. au ajuns până la UltraATA/133 cu Ultra –DMA şi un debit de date de 133 Mocteţi/s. . Magistrala PC CARD este cunoscută mai mult sub denumirea PCMCIA. Conectorul standard PCI are 124 de pini la varianta de 32 de biţi. cu echipamentul sau extensia ce trebuie legate la calculator. Standardul impus pentru semnalele transferabile pe magistrala PCI sunt fie în varianta de 5 V (pentru 1 logic) pentru calculatoarele de birou. unul este declarat master şi este legat prin firele de culoare neagră. de regulă. plăcile PCI de tipuri diferite nu sunt interşanjabile. din 40 de fire colorate. a fost concepută pentru transmisie serială a datelor. b. De pildă. fie în varianta de 3. PCI – E (Peripheral Component Interconnect Express). ajungând la valori cuprinse între 250 Mocteţi/s şi 8 Gocteţi/s. cu care se asigură rate de transfer de ordinul 4. odată cu progresele din tehnologie. La fel ca şi în cazul ultimelor variante PCI. pe 8 biţi. iar celălalt operează în regim de slave şi este legat prin firele gri. Există două tipuri de magistrale aferente SCSI: a. 4 × 8.3. se foloseşte termenul de port şi în software. SCSI (Small Computer System Interface) este o interfaţă ce permite.4. 133. aceea a asociaţiei care a lansat-o Personal Computer Memory Card International Association. b. folosind o placă SCSI driver adaptată la conectorul PCI. SE (Single Ended). 2X. la comanda procesorului. În acelaşi timp. Magistrala AGP (Accelerated Graphics Port) este. Magistrala IDE este constituită dintr-un cablu bandă (ribbon cable) compus. una dintre ultimele variante fiind SCSI-3 Ultra-640 (Ultra-5 SCSI) ce asigură un debit de 640 Mocteţi/ s.1. ca putere electrică suportată (mai mică) şi sunt de culoarea antracitului. produsă relativ recent. de asemenea. Porturi Prin port a fost denumit un ansamblu de legături electrice care constituie împreună: a. în variantele sale mai noi are prevăzută şi facilitatea DMA. 6 MHz. Observaţie: Tensiunea de alimentare a plăcii PCI este diferită de cea impusă nivelului semnalului. Principiul de funcţionare este că fiecare semnal este transmis cu câte două fire de conexiune. Succesiv au fost dezvoltate versiuni din ce în ce mai performante. Placa este compatibilă cu un conector standard PCMCIA cu 68 de pini. varianta asimetrică care implementează o transmisie paralelă a datelor.0 la PCI 3. semnalul util fiind diferenţa dintre potenţialele firelor aferente. Din acest motiv şi conectorii aferenţi sunt diferiţi. simplu. în general. legarea la calculator a diferite tipuri de echipamente. respectiv paralel. Prin acest cablu driverele de memorie sunt legate direct la placa de bază a calculatorului (prin firele albastre). Observaţie1: În limba engleză. Iniţial a existat principiul S-ATA (Serial ATA) şi apoi cel P-ATA (Paralel ATA). cu privire la relativitatea terminologiei folosite pentru magistrală/port/interfaţă/ standard.1 Gocteţi/s la o frecvenţă de lucru de 66.27 Gocteţi/s pe 64 de biţi. În 1999 a apărut versiunea PCIX 1. 5. de la PCI 1. Principial. adică fără să fie necesară oprirea funcţionării. În plus. pentru transferarea unui program de pe un pe un calculator pe altul sau pe o o altă platformă (soft). cunoscută mai ales pe numele comercial IDE (Integrated Drive Electronics) sau EIDE (Enchanced IDE) serveşte la schimbul de date dintre memoria dinamică şi HDD. 100. Observaţie 2: Şi în cazul porturilor este valabilă observaţia de la paragraful 5. Dintre drivere. începând de la ATA -1. 3 V şi versiunea HVD (High Voltage Differential) pentru semnale de 5 V. 100 şi 133 MHz. Placa aferentă. în funcţie de versiune. Magistrala PCI – Express sau. Ulterior s-a trecut la varianta pe 64 de biţi. 5 cm). notate cu 1X. Locul de conectare a unui dispozitiv periferic la un sistem de calcul. În funcţie de modul de transmisie al datelor porturile sunt fie seriale.

În acest caz intervalul de timp între două coduri binare transmise este de lungime aleatoare. Pentru a realiza acest lucru trebuie ca fiecare cuvânt binar să fie încadrat de un bit de start şi unul sau mai mulţi biţi de stop. termenul indică numărul de tranziţii pe secundă ale semnalului transmis pe linie. Întrucât schimbul de date trebuie efectuat bidirecţional sunt folosite două conexiuni de date: recepţie (Rx). principial. în serie. simplu. modul de transfer serial presupune folosirea unei singure perechi de fire pentru interconectarea echipamentelor. Unii autori propun să se exprime nu în bit/s. 2. UART. Fig. se asigură schimbul de date cu echipamente situate în exteriorul calculatorului.4. Port serial Pe linia utilizării denumirilor imperfecte. denumire explicată prin aceea că. cu unul până la patru porturi seriale. prin ele. în pachete de cuvinte de 8 biţi. half-duplex: presupune transferul de date alternativ între cele două echipamente. respectiv transmisie (Tx). 2. Această metodă este folosită atunci când datele ce trebuie transmise sunt generate la intervale de timp aleatoare. 5. sincronă .dacă tactul receptorului este independent de cel al emiţătorului. 5. Modul de transmisie se poate efectua asincron. Structuri numerice suport pentru echipamentul de conducere al unui robot 143 144 CONDUCEREA ROBOŢILOR Din punctul de vedere al numărului de linii ce interconectează două echipamente pentru comunicaţia dintre ele se deosebesc două tipuri de conexiuni (fig.5. Transmisia de date se efectuează sincron dacă pachete de date de dimensiuni fixe sunt transmise la intervale constante de timp. modul de transfer paralel. ţinând seama nu numai de comutaţiile provocate de conţinutul de biţi din informaţia propriu-zisă. Moduri de transmisie. de regulă. porturile seriale sunt adesea numite şi interfeţe intrare – ieşire (I/O) seriale. simplex: presupune transmisia datelor într-o singură direcţie. În cazul acestui tip de comunicare este necesar ca receptorul să fie capabil să se resincronizeze la începutul fiecărui nou cuvânt de cod recepţionat. Fiecare cuvânt transmis este precedat de câte un bit de START. de fapt. tradus de unii autori cu Unitate de transmisie/recepţie Asincronă.Cap. De obicei poate fi programat de către utilizator prin cuvinte de control predefinite ce selectează diverse moduri de operare. iar biţii de informaţie sunt transferaţi. asincronă . duplex (full-duplex): presupune schimbul de date în ambele direcţii simultan. ci şi de cele provocate de codarea mesajului. Pentru a folosi un astfel de UART. în primul rând trebuie încărcată într-un registru (de mod) o anumită valoare prin care se selectează modul de funcţionare. Se generează un set de semnale de sincronizare (Cycle Start Package) la intervale fixe de timp şi astfel se asigură un debit de date fix şi un mod de adresare simplu al perifericelor. Modul serial se referă la faptul că datele sunt transmise. Comunicaţia între două echipamente poate fi de două tipuri: 1.dacă semnalele de tact ale emiţătorului şi receptorului sunt sincrone. pentru a decodifica şi interpreta corect biţii transmişi. Comunicaţia de date între două echipamente se poate realiza în trei moduri: 1. unul după celălalt. Semnificaţia acestei unităţi este aceea de număr de comutaţii transmise/sec. Circuitul de interfaţă folosit pentru realizarea transmisiei asincrone este cunoscut sub denumirea Universal Asynchronous Receiver and Transmiter sau. de conţinutul său. Parametrul esenţial pentru transmisia serială este viteza de transmisie exprimată în bit/s. ci în bauds.2): 1. Când unul din echipamente se află în starea de emisie celălalt se află în recepţie.2. 3. utilizarea unităţii baud este discutabilă. În înţelesul său. echipamentul receptor trebuie să cunoască rata de emisie a biţilor (durata unei celule bit). O configuraţie de calculator este prevăzută. Transmisia asincronă. Deoarece fiecare caracter este transmis serial. Legătura fizică se face prin conectorii amplasaţi pe cutia calculatorului.2. Având în vedere faptul că numărul de comutaţii dintr-un mesaj depinde.5. dacă datele sunt tranferate la intervale de timp aleatoare. Aceasta înseamnă că sunt folosite mai multe fire pentru interconectarea a două echipamente. care presupune folosirea câte unui fir pentru fiecare bit de date (al unui cuvânt). Când se defineşte rata de emisie a unei linii se foloseşte de obicei termenul baud. 2. pe un singur fir de legătură. . respectiv este încheiat cu un bit de STOP. Denumirea aminteşte de inginerul francez Emile Baudot (1845 -1903) care a adus importante contribuţii la dezvoltarea telecomunicaţiilor.

au greutate mare şi un consum ridicat de energie electrică.1. Blue). succesiv diferite versiuni.0 cu care se asigură un debit de tranfer de date de 480 Mbit/s. cu cristale lichide sau OLED. b. Tradiţional portul paralel este cel prin care se conectează imprimanta la un calculator. a. RS . Punctele sunt alcătuite din triade de materiale fosforescente ce luminează în momentul în care sunt străbătute de câte un flux de electroni. priză Fig. Structuri numerice suport pentru echipamentul de conducere al unui robot 145 146 CONDUCEREA ROBOŢILOR Aceştia sunt de tipul standard DB9 (fig. Era caracterizată printr-o serie de specificaţii electrice şi un set de protocoale de comunicaţie asincronă. 5.5. Monitorul Echipamentul periferic al calculatorului care serveşte pentru afişare este numit monitor (display). dacă intensitatea fiecăreia dintre ele contribuie cu o anume pondere. fişă 5. portul paralel poate servi şi ca interfaţă cu procesul. IEEE 1394 este similar cu USB dar permite rate de tranfer mult mai ridicate decât acesta. Principiul pe care se bazează un astfel de tub este următorul: imaginea este formată din puncte situate pe suprafaţa interioară a ecranului.5.4). 5. oricare culoare poate fi sintetizată din cele trei culori de bază. Principalele tipuri de porturi seriale sunt: a. fig. Acest standard permite atât transmisia sincronă. Au apărut. ce alcătuiesc câte un punct. USB (Universal Serial Bus) este adoptat cvasigeneral pentru că este mai rapid decât toate versiunile anterioare de port serial. ultima fiind USB 2. Green. Ulterior au fost dezvoltate varinatele RS – 422. a fost una dintre primele variante cunoscute pentru transmisie serială şi permitea o rată de transfer de până la 2.4. Fascicol de electroni care provoacă luminiscenţa pe ecran Principalele caracteristici prin care de deosebesc diferite tipuri de monitoare CRT sunt: . Conectorul la un port paralel este tot standard. Este cunoscut şi cu denumirile sale comerciale Fire Wire sau Lynx. verde. Monitoare cu tub catodic Sunt monitoare de gabarit mare. erori în transmisie. două pentru semnalul de tact şi două fire de alimentare. Au la bază un tub cu raze catodice CRT (Cathode Ray Tube).2 Gbit/s. Conectorul DB9 b. Există două categorii mari de monitoare: cele ce folosesc un tub catodic şi cele numite plate. galbenul deschis se obţine cu o contribuţie egală în intensitate de roşu şi verde şi o pondere nulă de albastru.5.3. apar şi influenţe electromagnetice reciproce între firele de transmisie. respectiv RS – 485. aflate interior în spatele CRT. Observaţie: Aparent mai avantajoasă. Port paralel Un port paralel asigură transferul simultan al biţilor ce constituie câte unul sau mai multe cuvinte binare. conţin adiacent 3 materiale. Conectorul USB este standardizat şi conţine 4 pini. Are prevăzută şi facilitatea hot plug. Magistrala aferentă este compusă din 6 fire. cât şi cea asincronă. În aplicaţii de tip industrial.3) sau DB25 (trapezoidali cu 9 sau 25 de pini). ultima versiune fiind IEEE 1394b-S3200 cu un debit de 3. c. doi de alimentare şi doi de date.4.Cap. Fluxul de electroni este emis de 3 tunuri electronice (câte unul pentru fiecare culoare. şi este conectat şi la placa de bază cu un cablu bandă (ribbon cable).5. În timp. DB 25.4 Mbit/s. albastru – ale modelului aditiv RGB (Red. transmisia paralelă devine mai dificilă la viteze de transmisie ridicate. Imaginea afişată se formează prin baleierea simultană pe orizontală şi pe verticală a celor 3 fluxuri de electroni începând cu colţul din stânga sus. De regulă acest port era utilizat pentru conectarea la sistem a unor periferice cu rate mici de transfer (mouse sau modem).5. Conectorii sunt legaţi şi la placa de bază a calculatorului.5. deoarece la frecvenţe mari apar întârzieri între biţii transferaţi pe fire diferite şi. De pildă. Fig. două perechi de fire pentru transmisia de date. au fost utilizate două tipuri de standarde IEEE 1394a şi apoi IEEE 1394b. astfel.232. fiecare aferent câte uneia dintre culorile primare: roşu. Versiunile actuale sunt portul EPP (Enchanced Parallel Port) şi portul ECP (Enchanced Capabilities Port) ce permit debite de până la 16 Mbit/s.3. 5. Grupurile. Principial. În plus.

Lungimea diagonalei ecranului. implementat cu triada de materiale fosforescente pe ecranul unui CRT. Avantajul unui ecran mai mare este că. Fluxul de electroni trebuie să fie extrem de îngust când ajunge la punctul de luminofor. c. Focalizarea. Suprafaţa ecranului este plată la Trinitron şi nu curbată ca la shadow mask. Ordinul de mărime este în domeniul kilohertz.Cap. în locul unui punct luminos se formează o pată difuză. În caz contrar. linii orizontale sau verticale situate la diverse distanţe. numărul de afişări într-o secundă a tuturor liniilor pe ecran. este dată de numărul de linii orizontale din care se compune imaginea şi de durata baleierii pe orizontală (fig. de fluxurile de electroni care provoacă luminişcenţa punctelor de pe ecran. se observă mai bine detaliile mai fine ale unei imagini. Fiecare flux trebuie direcţionat şi focalizat.rezoluţia unei imagini. d. d. b. şi în legătură cu acest parametru.5. Rezoluţia unei imagini reprezintă nivelul de detalii pe care o imagine le poate conţine. b. Corect este să se abordeze termenul din trei puncte de vedere: . unei măşti cu fante verticale (aperture grill). Din acest motiv este numită şi rata de împrospătare a imaginii pe ecran (refresh rate). Geometria reprezintă gradul de acurateţe cu care sunt reprezentate pe ecran anumite forme geometrice: cercuri. În tehnologiile de fabricaţie a monitoarelor CRT au fost introduse norme speciale. deşi specialiştii în domeniu nu o consideră corectă.rezoluţia unui dispozitiv de afişare (monitor).54 cm. numărul maxim de linii distincte pe întreaga lungime sau lăţime a unei imagini. numărul maxim de perechi de linii adiacente întunecate şi luminoase ce pot fi distinse pe unitatea de lungime etc. iar durata de funcţionare este mult mai mare. pentru ochiul uman apare un efect supărător de pâlpâire (flicker). Din punctul de vedere al calităţii imaginii se au în vedere câteva criterii: a. Strălucire şi contrast. Din nefericire. găsite mai multe moduri pentru a defini rezoluţia. pe acesta. de fapt. deosebit de obositor. . Tehnologia cu aperture grill (aplicată de pildă la tuburile Trinitron Sony) este mai scumpă.5. de asemenea. Observaţie: Dacă focalizarea şi convergenţa sunt corect reglate imaginii i se conferă o bună lizibilitate. definită prin capacitatea unui sistem optic (inclusiv cel al vederii umane) de a observa. el trebuie să fie focalizat pe punct. Fără strălucire şi/sau contrast imaginea este ştearsă. ceea ce este foarte deranjant pentru utilizator. unei măşti metalice cu orificii (pitch shadow mask). Cea mai răspândită variantă este aceea de a se exprima rezoluţia printr-un număr de pixeli. la un CRT trebuie asigurat ca fiecare flux de electroni să atingă precis câte un punct (spot) luminiscent de pe ecran la un moment dat. la shadow mask. iar imaginea devine neclară. Din punct de vedere tehnologic.rezoluţia optică.19 sau 21’’. adică se pot citi bine şi texte scrise cu fonturi mici. radiaţii care au un efect negativ asupra întregului organism uman. 5. Direcţionarea se face prin folosirea. imaginea este mai întunecată la colţuri. există confuzie în ceea ce priveşte modul său de definire. . Observaţie: 1 inch =1 ţol = 2. numărul maxim de linii distincte pe unitatea de lungime. . Cel mai des se foloseşte convenţia numită pixel resolution. Radiaţiile electromagnetice sunt generate. Covergenţa/divergenţa reprezintă gradul de coincidenţă al celor trei culori într-un punct. dar furnizează o imagine mai clară şi mai luminoasă.5. La tipurile mai vechi de CRT convergenţa se putea corecta şi prin reglare manuală. Această rezoluţie se poate măsura în diferite feluri: distanţa minimă la care două linii succesive pot fi distinse ca fiind diferite. o rezoluţie mai mare înseamnă întotdeauna un conţinut mai mare în detalii. nu este echivalent cu un pixel. Baleierea pe orizontală c. Cel mai cunoscut este standardul TCO (Total Cost for Ownership). În plus. Există şi producători care utilizează o tehnologie mixtă. La imaginile digitale pot fi. în principal. Structuri numerice suport pentru echipamentul de conducere al unui robot 147 148 CONDUCEREA ROBOŢILOR a. definit prin nivelul detaliilor ce pot fi redate cu acesta.5). ce trebuie respectate pentru limitarea nivelului radiaţiilor. în versiunile TCO99 sau TCO03. b. Este. Frecvenţa de baleiere pe orizontală. e. Din acest punct de vedere tehnologia aperture grill este mai bună. distinge sau înregistra detalii de un anumit nivel. imediat în spatele suprafeţei cu puncte fosforescente: a. Indiferent la care tip de imagine (analogică sau digitală) se face referire. Traducerea denumirii acestui standard este aceea de costuri totale (inclusiv cele legate de menţinerea/refacerea sănătăţii) plătite pentru calitatea de proprietar/ utilizator de calculator. Nivelul radiaţiilor electromagnetice. Observaţie: Spotul. O divergenţă mare însemnă apariţia distinctă a celor trei culori în punctele de pe ecran. Fig. astăzi se folosesc monitoare mai mari: de 17. Frecvenţa de baleiere pe verticală este mult mai mică decât cea pe orizontală (tipic 85 Hz). adică numărul de ori în care se afişează o imagine completă într-o secundă. Iniţial monitoarele se fabricau cu diagonale de 14’’. Dacă frecvenţa de baleiere pe verticală este sub 75 Hz. pătrate etc. Este dată în inchi (ţoli). definită ca nivelul detaliilor redate într-o imagine. În timpul funcţionării monitorul CRT emite radiaţii electromagnetice. Rezoluţia.

sesiza. . corect şi poate cauza ambiguităţi mai ales în reglarea rezoluţiei (care se face cu metode diferite la tipuri de monitoare diferite). inch2). cca. Rezoluţia optică este definită în fizică şi aplicată şi sistemelor tehnice. Alte convenţii indică numărul de pixel pe unitatea de lungime (inch) sau numărul de pixeli pe unitatea de suprafaţă (square inch. Şi pentru exprimarea rezoluţiei optice s-a răspândit obiceiul de a o exprima în număr de pixeli. astfel. tehnic. Prin definiţie. împărţit cu un milion. La monitoarele cu CRT rezoluţia este afectată de dimensiunile spotului de electroni. fiecare străbătut de fluxul aferent de electroni cu intensitatea comandată adecvat. Acest mod de exprimare nu este. cum e cazul senzorilor cu raze laser. Este de formă dreptunghiulară sau pătrată şi poate fi ales de diferite dimensiuni. calitatea materia-lului fluoreşcent depus pe ecran etc.1. Această categorie de monitoare sunt realizate cu benzi verticale continue de material fosforşcent şi. Moduri grafice În varianta tradiţională orice calculator este prevăzut cu o placă video numită adesea şi placă grafică (graphic adapter). Aceste tipuri de monitoare au numai dot pitch pe orizontală numit uneori şi stripe pitch (distanţă între linii). imaginea este mai sharp (mai clară.5. trebuie avută în vedere şi distanţa între pixeli. Variind corespunzător intensitatea culorilor de bază RGB. principial. GPU trebuie să fie dotat cu facilităţi dedicate reprezentării 3D. Gama de culori (colour depth). Un rol important îl are şi factorul de formă al ecranului (aspect ratio). G şi B.2288). cel de al doilea numărul de linii cu pixeli. sunt disponibili în total 24 de biţi pentru a reprezenta “valoarea” binară aferentă unei culori pentru câte un punct de pe ecran. Din acest motiv indicarea unui număr de pixeli poate fi nerelevant în aprecierea rezoluţiei. evident că rezoluţia se strică. 8 µm etc. Transferând unui monitor o imagine construită (digital) pentru un factor de formă 4/3 pe un format 16/9. iar memoria trebuie să fie de volum şi de viteză mai mare la aplicaţiile 3D decât la cele în 2D. La CRT sinteza acestor culori se realizează prin aceea că semnalele de comandă variază intensitatea fluxului de electroni aferent fiecăruia dintre cele trei grupuri de luminofor adiacente unui punct de pe ecran. Aceasta se exprimă. Imaginile pot fi reprezentate fie în plan (2D). Observaţie: Parametrul dot pitch măsurat pe verticală nu caracterizează şi tuburile CRT realizate în tehnologia cu mască cu fante verticale (aperture grill). La CRT pixelul este diferit de punctul (spot) obţinut prin iluminarea câte unui punct compus dintr-o triadă de materiale fosforescente. În plus. La reprezentarea digitală a unei imagini se foloseşte şi o tripletă de octeţi dedicaţi valorilor intensităţilor fluxurilor de electroni. însă. Sistemul poate opera cu imagini (de exemplu o cameră de luat vederi) sau nu. înţelegând că imaginea este creată ca o matrice de pixeli. Pixelii pot fi pătrate cu latura de 20 µm. dot pitch-ul pe verticală este determinat de cât de îngust este fascicolul de electroni şi de rezoluţia semnalului video de comandă. Aspectul imaginii este diferit dacă un ecran are factorul de formă 16/9 sau 4/3.1. Abilitatea de a distinge diferenţe spaţiale este numită curent rezlouţie spaţială (spatial resolution). G şi B poziţionate adiacent. se pot reprezenta binar 224. Distanţa dintre puncte se măsoară fie după diagonala ecranului. Structuri numerice suport pentru echipamentul de conducere al unui robot 149 150 CONDUCEREA ROBOŢILOR Observaţie: Pixelul este cel mai mic eşantion complet al unei imagini. 5. şi dacă numărul de pixeli rămâne acelaşi. Tehnologia de fabricaţie influenţează direct rezoluţia: tipul măştii de direcţionare a fluxului de electroni. adică o imagine caracterizată cu prima pereche de cifre redă detalii mult mai fine decât cea cu rezoluţia exprimată prin perechea a doua. într-un punct se sintetizeză. Cu cât această distanţă este mai mică. f. cel dintâi numărul de coloane cu pixeli. deşi are o semnificaţie clar traductibilă: distanţa dintre două puncte fosforeşcente adiacente de aceeaşi culoare. În consecinţă. La variantele mai noi adapterul graphic este amplasat chiar pe placa de bază. reda sau înregistra detalii fizice (geometrice) utilizând mijloace electromagnetice. cel puţin pentru faptul că sisteme diferite utilizează pixeli de dimensiuni diferite. Definiţia se aplică şi sistemelor care nu lucrează cu semnale din spectrul vizibil (raze gamma. Exemplu: o rezoluţie de 1. să se găsească funcţia de tranfer optică a sistemului. Numărul total de Mpixeli este produsul numărului de coloane şi de linii indicate în convenţia explicată mai sus. este dotată cu o memorie video (rapidă) şi operează pe o magistrală video conectată la placa de bază. O altă convenţie este aceea în care se indică numărul total de Megapixeli conţinuţi în imagine. Exemplu: 640× 480.2288 de Mpixeli are aceeaşi calitate cu cea exprimată conform con-venţiei anterioare cu 1200×1024 (1200×1024=1228800/1000000= =1. Cu această convenţie se înţelege că rezoluţia de1200×1024 este mai mare decât 640 × 480. Rezoluţia unui monitor este exprimată cu numărul de pixeli care pot fi afişaţi pe ambele dimensiuni ale monitorului. de culori. Corect din punct de vedere matematic este. Nici acest mod de exprimare nu este. 5. fie pe orizontală şi pe verticală. Majoritatea monitoarelor de calculator de astăzi pot afişa sute de mii sau milioane de culori. de multe ori. de gradul de focalizare al acestuia. g.Cap. mai detaliată). orice culoare. tehnic corect. fie în “spaţiu” (3D). radio. cu atât detaliile din imagine sunt mai fine. Acestea sunt fizic sintetizate pe ecran prin gradul de lumină emis de fiecare dintre punctele de luminofor R. Conform acestei convenţii se indică două numere întregi. rezoluţia optică este capacitatea unui sistem de a distinge. 16 milioane. câte un octet pentru intensitatea fiecăruia dintre cele trei fascicole de culoare R. în număr de perechi de linii de rezoluţie sau printr-un număr de perechi de linii/ milimetru. infraroşu etc. Valorile culorilor de bază fiind reprezentate fiecare pe câte 8 biţi. Placa grafică este construită în jurul unui procesor graphic GPU (Graphical Processing Unit). Dot pitch se foloseşte ca atare şi în literatura de specialitate în limba română.).

6. Trecerea luminii polarizate prin ansamblul LCD Dacă o asemenea structură constructivă. folosit în anii ’80 la monitoarele alb-negru.5. Pentru o anumită valoare a intensităţii câmpului de polarizare. Moleculele cristalelor lichide. astfel de monitoare se cheamă şi LCD (Liquid Crystal Display). Fig. Dacă. după direcţia spiralei din volumul de substanţă. de consistenţa unei folii din material plastic. paralel cu direcţia canelurilor de pe prima placă transparentă. Structuri numerice suport pentru echipamentul de conducere al unui robot 151 152 CONDUCEREA ROBOŢILOR Placa grafică asigură modul graphic în care imaginile sunt reprezentate. au fost modurile VGA (Video graphics Array) şi SVGA (Super Video Graphics Array) cu care au putut fi obţinute rezoluţii de până la 720 × 400 în modul text. respectiv de 640× 480 cu 16. realizate cu dispozitive electronice organice. ansamblul este perfect transparent pentru lumina polarizată. cristalele lichide sunt supuse acţiunii unui câmp electric exterior. Consumul lor de energie electrică este cu un ordin de mărime mai redus şi nu emit radiaţii electromagnetice. până la versiunile moderne QXGA (Quad eXtended Graphics Array). începând cu modul MDA (Mono chrome Display Adapter).Cap. Ca urmare.2. sunt cele cu ecran plat şi flexibil. 5. orientarea iniţială a cristalelor se schimbă pe măsura creşterii intensităţii câmpului. în primul rând datorită faptului că au dimensiuni de gabarit şi greutatea mult mai mici decât monitoarele CRT.7. pentru realizarea de display-uri şi tehnologia cu plasmă PDP (Plasma Display Panel). lumina trece de primul strat de substanţă şi apoi direcţia sa propagare este „răsucită” elicoidal. Modul grafic este caracterizat prin rezoluţia şi numărul de culori ale imaginilor. moleculele din volumul de substanţă se aşează cu o dispunere spiralată a orientării. iar moleculele aflate la suprafaţa celei de a doua plăci intră în cea de a doua reţea de caneluri cu care se află în contact. Monitoare cu ecran plat Monitoarele cu ecran plat FDP (Flat Panel Display) se extind din ce în ce mai mult. nesupusă acţiunii unui câmp electric exterior. aşa cum au fost poziţionate fizic suprafeţele canelate ale celor două plăci. Prin acest mecanism. au proprietatea de a se orienta în spaţiu sub acţiunea unui câmp electric. când direcţia de polarizare ajunge ortogonală pe cea a canelurilor de pe placa a doua. succesiv elicoidal în volumul de substanţă.2. ansamblul devine chiar opac.5. cu suprafeţele canelate faţă în faţă..5. Materialul de bază folosit la construcţia lor este sub formă de cristale lichide şi. Varianta cea mai modernă de sisteme de afişaj.7. apărute în anul 2004. începând cu primul strat orientat pe direcţia canelurilor de pe prima placă şi schimbându-şi orientarea. Fig. 5. Sub acţiunea unui câmp electric cristalele lichide se aliniază şi ansamblul LCD devine opac . astăzi vorbim de rezoluţii de 3200×2400 şi de 16 milioane de culori. până la direcţia canelurilor de pe cea de a doua placă transparentă (efectul Schadt-Helfrich). cum sunt diodele luminişcente organice OLED (Organic Light Emitting Diode) sau tranzistoare organice OFET (Organic Field Effect Transistor). însă. în modul grafic. dar astfel ca reţelele de caneluri să fie orientate perpendicular între ele.5. Plăcile sunt aşezate în paralel. În comparaţie cu aceste posibilităţi. este iluminată din spatele primei plăci cu o lumină polarizată pe direcţia canelurilor acesteia. după direcţia liniilor acestuia. la vremea lor. şi transparenţa ansamblului scade. cazul presupus în fig.5. de aceea.5. respectiv 256 de culori. fig. Consecinţa este că moleculele cristalelor din primul şi ultimul strat de substanţă au orientările perpendiculare între ele. 5.1. Aceasta nu este. Monitoare cu cristale lichide Tehnologia LCD are la bază două plăci transparente realizate cu caneluri pe câte una dintre feţele lor. folosită pentru calculatoare.6. însă. Observaţie: În ultimii ani a apărut. fiind polarizate. QSXGA (Quad Super eXtended Graphics Array).. Pe parcursul anilor au funcţionat numeroase moduri grafice. În absenţa câmpului electric exterior. Între cele două plăci se introduce un volum de substanţă cu cristale lichide. ajungând la ultimul strat cu direcţia polarizării conformă cu cea a canelurilor de pe placa a doua şi poate trece de acestea. Mai cunoscute. moleculele de cristal lichid aflate în vecinătatea primei plăci cu caneluri se aşează în canelurile acesteia.

16 milioane de culori. . Pentru a sintetiza culori. Dacă numărul de pixeli care compun o imagine este foarte mare. cantitatea de lumină emisă de ecran. Rezoluţia. Valorile uzuale sunt de 15” sau 17”. e. În rezumat. astfel. Se mai defineşte. datorită devierii situării observatorului din faţa ecranului. se comută alimentarea de la un pixel la altul. Comutând (prin hardware sau software) tensiunile de alimentare a electrozilor pentru linii şi coloane. Prin acest sistem. se poate obţine o mare varietate de culori.9.8. verde sau albastru. fiind unghiul de privire de la care imaginea se vede cu dificultate. prin reglarea intensităţii câmpului electric la care este supusă zona aferentă unui pixel. în consecinţă. adică împărţirea ei în pixeli. Procedeul este denumit cel cu matrice pasivă (fig. şi raportul maxim de contrast între imaginea cea mai întunecată. coloraţi în roşu. pentru un monitor LCD tipic. respectiv cea mai luminoasă. Structuri numerice suport pentru echipamentul de conducere al unui robot 153 154 CONDUCEREA ROBOŢILOR Principiul de sintetizare a unei imagini pe ecranul monitorului LCD pleacă de la conceptul de digitizare a unei imagini. exprimată în Cd/ m2 (candelă / unitate de suprafaţă).5. Comutarea electrozilor se realizează cu o matrice de transistoare TFT (Thin-filmtransistor). 4/3 ş. din care fiecare TFT comută câte un electrod al unui pixel la conectorii de alimentare de linie şi coloană. Este dată în inchi. 5.5. întrucât fiecare pixel ar avea câte un electrod aferent. Se exprimă în milisecunde (tipic 25 ms). nu se poate comanda fiecare individual. şi. iar electrodul ar trebui să fie prevăzut cu pini de legătură. unghi de vizibilitate 130º pe orizontală şi 110º pe verticală. Este definit cu standardul internaţional ISO 13406-2.a. Fig. Luminanţa (strălucirea). Timpul de răspuns. Alimentare cu matrice activă b. Fig. caracteristicile de catalog pot fi de exemplu: LCD. Se procedează. Fiecare pixel al imaginii este comandat individual. Alimentarea cu matrice pasivă de electrozi Varianta cea mai modernă foloseşte câte un electrod transparent pentru fiecare pixel. fiecărui pixel i se poate transmite câte un potenţial distinct. ataşat. în monitoarele LCD se procedează la divizarea fiecărui pixel în câte trei subpixeli. câte unul aferent câte unei linii. la multiplexare. folosindu-se un sistem matricial de electrozi transparenţi. rezoluţia 1024×768.5. c. Zonele de suprapunere dintre o linie cu o coloană se constituie în electrozii (transparenţi) aferenţi fiecărui pixel.). fiecare cu electrodul său. Se exprimă printr-un număr de grade sexagesimale. Alimentarea filtrelor se comandă individual tot cu matrici TFT. Această tehnologie este numită cu matrici active (fig. cu filtre de culoare corespunzătoare. f. contrast 400/1.5. Unghiul de vizibilitate pe orizontală şi pe verticală. d. Dot pitch se foloseşte netradus şi în literatura de specialitate în limba română pentru aşa zisa “granularitate” a pixelilor LCD şi descrie distanţa dintre celule LCD de o aceeaşi culoare pe un ecran. respectiv câte unul aferent câte unei coloane în matricea de pixeli care constituie o imagine.8).9). dar pentru scopuri dedicate se folosesc şi afişaje de mari dimensiuni. luminanţa 250 Cd/m2. ca fiind durata necesară pentru comutarea unui pixel de la alb la negru şi apoi din nou la alb. Lungimea diagonalei ecranului. Principalele caracteristici prin care de deosebesc diferite tipuri de monitoare LCD sunt similare cu cele prin care sunt descrise şi cele cu CRT: a. În legătură cu acest parametru se foloseşte şi pentru monitoarele LCD convenţia numită pixel resolution exprimată prin numărul de pixeli pe linie şi coloană.Display de 15.Cap.1 ţoli. timpul de răspuns 25 ms. Alimentarea este transmisă tot pe o reţea de electrozi pentru linii şi coloane. Se mai adaugă uneori şi factorul de formă (de exemplu: 16/9.

Deplasarea rapidă a imaginii se poate realiza cu rotiţa (din mijloc) de defilare (scroll). 5. Microprocesorul transmite calculatorului un cod aferent. iar firele de linie nu se alimentează. denumiri ce indică poziţionarea primelor 6 litere latine pe claviatură. echipat cu unul sau mai multe butoane şi modelat astfel încât să stea în mod natural sub mână. Codul este denumit la modul general Scancode şi poate fi: ASCII –American Standard Code for Information Interchange.3. Dezavantajul este deocamdată cauzat de durata de viaţă relativ scăzută a OLED-urilor. 5. pe porţiuni. Sunt răspândite variantele AZERTY şi QWERTY.. Prin realizarea unui contact.a. în consecinţă. pentru caractere latine. francofonii nu folosesc decât varianta AZERTY.1. fiindcă un grup este de dimensiuni submilimetrice.6. 5. Cele mai frecvente sunt mausurile cu două butoane. La PC-ul clasic numărul de taste nu a fost mereu acelaşi de-a lungul timpului. tensiune de alimentare ajunge şi pe unul dintre firele de linie.6. El serveşte. Se utilizează una sau alta dintre variante. Constructiv. Fiecare grup se compune din câte trei diode (câte una pentru fiecare dintre cele culori de bază din sistemul RGB) şi constuie câte un pixel de imagine. azi 104 – 105. preţul de cost mai scăzut.a. chirilice.5. cinci sau mai multe butoane. face un contact electric între un fir de linie şi unul de coloană dintr-o matrice de conductori liniari. pentru astfel de aplicaţii. prin depunere adecvată. iar cele organice sunt flexibile (pliabile). Este aşa numitul Multi-head System în care se folosesc două. Este diponibilă şi facilitatea „dublu clic”. Pentru anumite aplicaţii anume s-au produs şi tastaturi dedicate. a diferiţi alţi compuşi organici sau anorganici (iod. Echipamente periferice 5. La firele coloană se comută succesiv o tensiune de alimentare (procedeul este numit scanare). Butonul principal este poziţionat de obicei în partea stângă a mausului. în general a manipula componente ale imaginii cu ajutorul butoanelor sale. un maus constă dintr-un obiect cu o carcasă din material plastic. obţinându-se matrici de grupuri de triplete de diode fotoemisive. Acţionarea unuia dintre butoanele mausului este numită curent „clic”. Tastatura Tastatura (keyboard) este un echipament periferic esenţial în dotarea unui calculator. în alfabete asiatice. printr-un conector USB. iar cele germane QWERTY. în cazul unei tastaturi cu 104 contacte matricea de fire de legătură este alcătuită din 8 fire pe linii şi 13 fire pe coloane. au fost realizate matrici cu structuri de diode semiconductoare sau tranzistoare organice. în funcţie de care tastă a fost apăsată. Butoanele suplimentare atribuie mausului o varietate mare de funcţii suplimentare. de la stânga la dreapta. însă. de asemenea. compuşi organici. a cărui locaţie este cunoscută. Principiul de funcţionare are la bază faptul că fiecare tastă. Pentru utilizatorii stângaci se poate schimba prin software rolul butoanelor unui maus. Avantajul major al unui afişaj cu OLED este că nu necesită o sursă externă suplimentară de lumină (de tip backlight sau frontlight – din „spate” sau din „faţă”). pentru PC obişnuit sau aplicaţii de tip multimedia etc. respectiv „clic dreapta” pentru apăsarea pe butonul din dreapta. metale etc. la apăsarea ei. De pildă. Monitor multiplu Unii utilizatori folosesc simultan mai multe monitoare simultan pentru un sistem de calcul. Este uzuală expresia „clic stânga” pentru apăsarea pe butonul din stânga. ultimele variante de MS Windows permit lucrul cu maximum 64 de monitoare. Aceasta este foarte folositoare pentru navigarea într-un document lung.d. este necesar un suport hardware (plăci grafice) şi software adecvat. rotiţa de defilare poate fi şi apăsată.2. Tehnologia de fabricaţie este mult mai simplă şi. şi microprocesorul ce comandă tastatura. BCD – Binary Coded Decimal. sau. cu litere chirilice. Unicode sau altele.). Folosind ca substanţă de bază o folie subţire de polimer.Cap. De pildă. ş.m. Principalul avantaj obţinut este că materialele semiconductoare clasice sunt rigide şi casante. înlocuind astfel un al treilea buton (cel din centru). fiindcă pixelii sunt constituiţi din puncte ce luminează ele însele. Monitoarel pot fi. Monitoare cu OLED În ultimii ani au fost descoperite posibilităţi prin care se conferă proprietăţi semiconductoare şi substanţelor organice. ebraică. în funcţie de limba în care comunică cel mai frecvent utilizatorul. 5. cu care se provacă derularea în sus sau în jos a ferestrei curente de imagine. prin metode similare celor tipografice. La unele variante rotiţa are chiar posibilitatea de a fi înclinată. straturi de material izolator şi metal. uneori chiar clicurile multiple. recepţionează semnalul sosit. Există tastaturi . trei sau chiar mai multe monitoare pentru a se constitui o acceaşi imagine completă. pentru a deplasa. claviaturile englezeşti sunt cel mai adesea QWERTY. Există mausuri construite cu trei. Adesea. cu o tendinţă de creştere către 130.5.6. selecţiona. după denumirea similară din limba engleză. mouse) este un dispozitiv cu ajutorul căruia se poate indica un element de imagine de pe ecranul monitorului unui calculator.2.2. asiatice ş.2. Rotiţele care se înclină sunt asociate cu o pereche de senzori care determină derularea stânga-dreapta. mai nou. Codurile emise sunt într-un format de 1 până la 3 octeţi şi sunt specifice tipului de tastatură: mai vechi sau mai nou. În acest sens. pentru limba arabă. Structuri numerice suport pentru echipamentul de conducere al unui robot 155 156 CONDUCEREA ROBOŢILOR 5. Maus Un maus (scris adesea ca în engleză. Desigur că. fiind unul dintre dispozitivele principale de comunicare pentru utilizator. Tastatura se conectează la calculator printr-un conector specific PS/2 de culoare violet. utilizate să afişeze şi imagini diferite. în anii 80: 83-84. Primele variante dezvoltate au fost diodele fotemisive organice OLED: Pe o folie de polimer se depun.

Au fost inventate în anii ’80. a2. b. Mausurile optice moderne se pot folosi pe orice fel de suprafaţă. imprimând pe hârtie semnul grafic. a1. b. Mausurile optice mai vechi au un consum şi mai mare de energie. Ele foloseau o panglică îmbibată cu o cerneală. folosind tot principiul de tipărire prin impact cu bandă impregnată cu cerneală. Totuşi trebuie menţionate câteva aspecte: Mausurile optice funcţionează pe baza imaginii LED-ului reflectată de suprafaţa mousepadului. Imprimante matriciale. Mecanismul consta dintr-o roată centrală de care erau prinse jur împrejur. figuri. în relief.6. 5. Mişcarea 2D a mausului este de transformată în mişcarea unui cursor pe ecran. Formatul unui document produs de o imprimantă este de regulă A4 (210×297 mm). dar şi folie de plastic. Fotodiodele generează un semnal electric echivalat cu „1” logic când sunt iluminate.). ce avea imprimată o grilă fină de linii albastre şi gri (absorbante de infraroşu). Un maus mecanic wireless are nevoie de un curent de alimentare de aproximativ 5 mA sau mai puţin. Cu legătură prin fir. pagini întregi. Formatele mai mari se imprimă cu echipamente denumite plotter (vezi paragraful următor). Pentru tipărituri de mare volum (ziare. Semnele. cărţi etc. Structuri numerice suport pentru echipamentul de conducere al unui robot 157 158 CONDUCEREA ROBOŢILOR Partea inferioară a mausului conţine un sistem care detectează mişcarea relativă a mausului faţă de suprafaţa pe care stă (mousepad). În general se consideră că mausurile optice au calităţi superioare celor mecanice şi pentru faptul că nu trebuie din când în când desfăcute pentru curăţire de depunerile interioare de praf. lumina de la LED ajungând la fotodiodă în secvenţe ce urmăresc alternanţa fantelor. fotografii etc. Mausul optic foloseşte. Există astăzi şi mausul laser care foloseşte o mică sursă de raze laser în locul obişnuitului LED. în locul părţilor mecanice în mişcare. ca şi petalele unei margarete. ce permit obţinerea de viteze de sute de pagini/minut şi costuri/pagină tipărită cu mult mai mici. ce conţine un un detector de mişcări şi un procesor de imagini. De aceea performanţa lor pe mousepaduri multicolore este uneori nesigură. o diodă emiţătoare de lumină şi o fotodiodă pentru a detecta mişcarea pe suprafaţa unui mouspead. • cu conexiune tip bluetooth. eventual în aplicaţii la care trebuie tipărite numai linii de text. doar că mecanismul de tipărire a fost schimbat pentru a creşte viteza de tipărire. Din punctul de vedere al conexiunii cu calculatorul mausurile pot fi: a. imprimantele pentru PC sunt concepute pentru a se tipări cu ele un volum relativ mic de documente. spre deosebire de mausurile optice care au nevoie de obicei de aproximativ 25 mA pentru a asigura funcţionarea corectă pentru LED sau pentru dioda laser. Astăzi sunt rar folosite. alternativ transparente şi opace. Discurile cu fante se rotesc între câte un LED şi câte o fotodiodă. au fost realizate două tipuri: a. pe distanţe scurte (câţiva metri) şi fără vizibilitate directă între emiţător şi receptor. eventual A3 (297×420 mm). Imprimante derivate din maşinile de scris tradiţionale. respectiv un semnal de nivel „0” logic dacă lumina nu trece prin disc. Legătură fără fir (wireless).Cap.3. două tehnologii: • cu transmisie în infraroşu. braţe din metal sau material plastic. care nu erau decât maşini mecanice sau electromecanice de dactilografiat.) memorate digital în calculator. Fac parte tot din categoria imprimantelor cu impact şi derivă tot de la principiul maşinilor de scris cu bandă impregnată cu cerneală. DVD player. pe care le pun în mişcare de rotaţie. numite şi imprimante cu ace (Dot-Matrix printer). Mausul mecanic care este prevăzut cu o bilă ce se poate mişca în orice direcţie. Axul fiecărei rotiţe este comun cu cel al câte unui disc cu fante. se ridica şi aplica o lovitură pe banda cu cerneală. 5. Pentru realizarea acestui tip se utilizează. Acestea funcţionează cu un senzor optic care detectează imaginile succesive ale suprafeţei pe care se deplasează mausul. similară cu cea folosită la telecomenzile pentru alte aparate de larg consum (televizor. Principial. De aceea ele au viteză de tipărire relativ mică. adaptate spre a fi comandate cu calculatorul. Au mai fost numite şi imprimante cu impact. date (documente. Variantele mai vechi fololseau un LED cu emisie în infraroşu şi un senzor detector de infraroşu pentru a sesiza deplasarea mausului pe o suprafaţă metalică specială. ce se derula între hârtia de suport şi un mecanism ce „bătea” succesiv semnele grafice. . în corpul mausului. în principal. Suprafaţa care este urmărită se iluminează cu LEDuri.) se folosesc imprimate speciale. grafice. Pe capătul liber (cel neprins la roata centrală) braţele aveau fixate semne grafice în relief. Trecerile de la un cadru la cel următor sunt procesate cu un circuit integrat specializat. Cablul de conexiune cu mausul se conectează prin conectorul PS/2 de culoare verde direct la placa de bază a calculatorului. Braţele erau rotite cu viteză mare. iar modul lor de tipărire era caracter după caracter. pentru că imprimantele moderne tipăresc. iar când braţul cu litera aleasă ajungea în poziţia aferentă locului de tipărire dorit. de obicei hârtie. La variantele wireless există diferenţe în ceea ce priveşte consumul de energie. Dezavantajul la aceste variante de realizare este că trebuie asigurată vizibilitate directă dintre emiţătorul şi receptorul de infraroşu. Au un cap de imprimare care execută o mişcare „du-te-vino” în dreptul foii pe care tipăreşte. folosite la începuturile tehnicii de calcul. de regulă. Noua tehnologie creşte conţinutul în detalii al imaginilor captate de maus. Mişcarea bilei este transmisă la două rotiţe amplasate perpendicular una faţă de alta. Imprimanta Imprimanata (în limba engleză printer) este un echipament periferic al calculatorului care serveşte la imprimarea pe un suport solid. care erau deplasate pe poziţia „de lovire” conform comenzii calculatorului. denumit serial. Din punctul de vedere al principiului fizic de detectare a deplasării mausului. Variantele mai noi permit conexiunea prin USB. scame etc. instalaţii audio etc. Imprimante cu mecanism cap tip margaretă (daisy wheel printer). erau fixate pe braţe (pârghii) sau tambururi din metal. care au la bază o legătură emisie-recepţie cu unde de radiofrecvenţă. Mausurile mecanice nu suferă de această limitare. iar costul unei foi imprimate este relativ mare. Imprimantele pot fi clasificate după tehnologia utilizată la tipărire: a.

Cilindrul transferă. magenta şi galben) sau 4 (cian. Fiecare punct se tipăreşte cu câte un ac (o vergea) din metal. Dacă unul dintre electromagneţi primeşte o comandă electrică. Elementele de încălzire provoacă încălzirea până la temperatura de topire a colorantului. în folosinţă. nu trebuie să se tipărească nici un semn pe hârtie. În dreptul benzii de imprimare este amplasată o placă. Imprimanta cu rază laser. care foloseşte şase cerneluri. care se infiltrează în hârtie. Stropii sunt şi încărcaţi electrostatic. magenta şi galben. dacă se foloseşte un fir conductor subţire parcurs de curent ce trece prin corpul cilindrului. Este necesar să se efectueze 3. respectiv a cristalelor încărcate. astfel. de obicei roşu şi negru. pus în mişcare de rotaţie. raza laser „desenează” electrostatic pe cilindru imaginea ce trebuie imprimată. c2. acesta este acoperit cu un strat de toner pulbere ale cărui particule sunt încărcate electrostatic tot cu sarcini pozitive. dedicat tipăririi fotografiilor color digitale. implicit. Un tip special de imprimantă este Photo-Quality printer-ul. Semnul grafic ce trebuie imprimat. cilindrul. acţionat individual cu câte un electromagnet. impregnată cu un colorant ce devine vizibil prin încălzire. cyan. şi aferent acele necesare. poate fi trimis pe hârtia pe care se face imprimarea intermitent (Drops on Demand – DOD) sau continuu (Continuous Jet –CJ). Încărcarea se face fie prin efect Corona. Înainte de a se purcede la tipărire. forţează ieşirea de stropi de cerneală printr-un număr mare de orificii ale unor diuze. care povoacă descărcarea sarcinilor pozitive pe anumite zone ale cilindrului. Structuri numerice suport pentru echipamentul de conducere al unui robot 159 160 CONDUCEREA ROBOŢILOR Spre deosebire de tipurile anterioare de imprimante. stropii de cerneală pot fi produşi prin încălzire (thermal Ink Jet printer) şi crearea de bule de aer în rezervorul cu cerneală sau prin efectul piezo-electric pe baza căruia se provoacă creşterea în volum a unor cristale încărcate elctrostatic aflate în rezervor. c3. În acest fel. tipărire termică directă (direct thermal printing) are la bază utilizarea unei hârtii speciale. în funcţie de modul în care raza laser este comandată (conform imaginii dorite). Dacă. c. Imprimante cu jet de cerneală. Jetul continuu este dirijat la locul unde trebuie făcută imprimarea cu un sistem de deviere cu câmp electric sau magnetic. la un moment dat. la care hârtia impregnată se înnegreşte pe porţiunile pe care este încălzită. şi o cerneală negru-contrast. Într-un punct de pe hârtie se transmit cantităţi din fiecare cerneală colorată. pentru fiecare dintre cele două temperaturi la care este încălzită. magenta. După ce imaginea dorită s-a imprimat pe cilindru. imaginea pe hârtie. compus din stropi de cerneală. Acest cap este deplasat de-a lungul foliei de transfer aferente uneia dintre culori. Imprimanta cu tipărire termică (thermal printer). d. la imprimanta matricială fiecare semn grafic este sintetizat dintr-o matrice de puncte. Se produc şi variante cu două culori. din safir sau granat. Foliile sunt în număr de 3 (cian. el face ca acul aferent lui să lovească banda şi hârtia. producând un jet continuu de stropi. Creşterea în volum a bulelor de aer. o mare varietate de semne grafice (nu numai cele dipuse pe braţe de tipărire). utilizând ca sursă diode fotoemisive. funcţie de producător. galben şi negru). Imprimanta laser face parte din categoria imprimantelor cu toner solid. Barele sunt topite şi culorile alimentează un cap de tipărire cu cristal piezzo-electric care stropeşte un cilindru acoperit cu un ulei. calitatea imaginii obţinute în final este foarte bună. cu raza laser. în final. jetul de cerneală este complet deviat de la suprafaţa acesteia şi dirijat spre un jgheab de recuperare. Aceste tipuri de imprimante electro-mecanice s-au dovedit cele mai fiabile din categoria lor şi se mai află. tipărire termică cu cerneală solidă (phase-change printer) este o tehnologie mai recentă în care se utililizeză trei bare de culori (cyan. Se pot imprima. Jetul. Stropii sunt produşi „la comandă”. provocând tipărirea unui punct. hârtia de imprimare este în prealabil încarcată (tot prin efect Corona) cu sarcini electrice negative. la un moment dat. pe alocuri. Principiul de imprimare cu cilindru încărcat electrostatic a fost implementat şi folosind. este rulat pe hârtia pe care se face inscripţionarea finală. tipărire prin transfer termic (thermal transfer printing) al colorantului. Tipărirea se face pe hârtie. componentele sistemului aditiv CMYK cu care se poate sintetiza oricare culoare. fie prin role de contact încărcate electrostatic din exterior. se obţine comandând electromagneţii. pentru descărcare. Există varianta alb-negru. cu găuri care ghidează fiecare ac. De regulă. treceri succesive ale hârtiei prin sistemul de imprimare. respectiv 4. Pentru tipărirea de imagini color se folosesc trei cerneluri ce conţin pigmenţi de culori diferite. cu desenul util acoperit de toner. În acest fel. şi nu va adera la zonele „de fundal” ce au rămas încărcate pozitiv. În timp ce cilindrul se roteşte. În tehnologia cu jet continuu se foloseşte o pompă de presiune ridicată care pompează cerneala lichidă printr-o duză cu orificiul de dimensiuni microscopice. b. pe suprafaţa lui cade o rază laser. aplicând semnale electrice rezistenţelor de încălzire sau cristalelor piezo când un semn grafic trebuie tipărit. proporţional cu quantum-ul ce revine fiecărei culori de bază în sinteza unei alte culori. galben). Se utilizează folii din material plastic subţire pe care se află câte un strat de colorant. magenta. imprimantele folosesc. Pentru prima variantă. solide (de consistenţă similară cu ceara). 5. pentru a se constitui semnul ce trebuie să apară tipărit. care utilizează cerneluri tipografice pentru a înregistra grafice sau imagini alb-negru sau color. . Capul de tipărire constă din câteva mii de mici elemente de încălzire a căror temperatură este controlată cu precizie. cu acelaşi mecanism. nivelul intensităţii culorii imprimate. la care hârtia specială este încălzită la două temperaturi diferite. la un moment dat. raze din domeniul vizibil. Tonerul va adera la zonele de pe cilindru ce au fost descărcate de sarcina electrică. Are la bază un principiu electrostatic: Se foloseşte un cilindru transparent care este încărcat electrostatic cu sarcini pozitive. În final. care este cel mai mult utilizată.Cap. câte una pentru fiecare culoare. suplimentar. Tipărirea termică se implementează prin mai multe procedee principale: c1. Aceasta se colorează într-una sau alta dintre culori. Valorile exacte ale temperaturii determină cantitatea de colorant topit care ajunge pe hârtie şi.

Plotterele cu jet de cerneală şi cele cu laser folosesc o matrice fină de puncte pentru a forma o imagine. Procedeul este uneori numit şi xurografie. de fapt. care se deplasează continuu în dreptul hârtiei (suportului pentru imprimare). plotter înseamnă înregistrator grafic şi este un echipament periferic al calculatorului care se foloseşte pentru a desena grafice sau imagini. Mişcarea capului de scriere este paralelă cu cea a axei de rotaţie a cilindrului. de volum mai mare sau mai mic. • tipul de cartuş de toner sau cerneală. mai nou. Depinde de tehnologia folosită. d. alcătuite din pigmenţi de culoare şi un polimer. Plotter cu tipărire termică (thermal printig plotter). majoritatea imprimantelor sunt dotate cu o memorie. înainte de a se efectua prima tipărire. interfaţa paralelă sau prin cartela de reţea. g. când mai multe calculatoare utilizează o aceeaşi imprimantă. considerat ca fiind unul dintre cele mai scumpe echipamente . în care calculatorul transferă datele aferente imaginii ce trebuie tipărită. respectiv color. • cantitatea de hârtie cu care poate fi alimentată iniţial. se realizează şi reglarea automată a forţei de apăsare exercitată de cuţit pe folia de vinil. Preţul de cost este direct dependent de calităţile unei imprimante. Plotter cu rază laser (vezi imprimanta laser). • rezoluţia cu care o imagine este tipărită.ş. la exemplarele alb-negru. materiale textile. Relativ recent au fost produse chiar cutting plottere cu rază laser. • capacitatea memoriei proprii. hărţi. imagini complexe. ca să se asigure situarea relativă corectă a lamei tăietoare pe folie. desene. compuse din linii continue. adică numărul de puncte imprimate pe distanţa de un inch. tricouri pentru sportivi. • tipul de conexiune cu calculatorul. metal. Plotter electrostatic. Particulele fine de toner. Este indicat pentru fiecare imprimantă în parte. 5.Tipărirea termică se implementează prin procedeele aplicate şi la imprimante. De regulă se folosesc pentru a tipări pe formate mai mari ale hârtiei (materialului) de suport de la A3 până la A1 sau chiar A0. Inscripţionarea se face prin dirijarea particulelor încărcate. albnegru sau color. Plottere cu tambur (cu cilindru de imprimare) (drum plotter) la care inscripţionarea se face de către un cap de scriere. Plotter-ul fotogrametric este un aparat sofisticat. exprimată în număr de pagini/minut. în general. care funcţionează pe aceleaşi principii tehnologice ca şi imprimantele cu cerneală. astăzi tehnologiile de tipărire sunt mult diversificate. Hârtia este înfăşurată pe un tambur care efectuează o mişcare de rotaţie. cel mai adesea cu motoare pas cu pas. ş. de regulă prin deplasarea unei unelte de scris. c. dot per inch. Sunt şi variante la care scula de tăiere este dotată cu un mecanism de orientare. b. dintr-o succesiune de puncte discrete. de obicei numai A4. Materialul pe care trebuie făcută imprimarea este încărcat cu sarcini electrice negative prin intermediul unor electrozi (fire subţiri sau ace).Cap.). materiale plastice (viniluri) sau textile. Principalele caracteristici care definesc proprietăţile unei imprimante sunt: • viteza de tipărire. Plotter cu jet de cerneală.. e. Plotter cu creion. În unele variante. calitatea pretinsă. În funcţie de tipul de inscripţionare utilizat plotterele pot fi: a. Scula. Plotter Traducerea în limba română a verbului to plot din limba engleză este aceea de a reprezenta grafic. care are la bază un sistem de acţionare electromecanic. ea este compusă. la locul cuvenit. Plotter fotogrametric (photogrammetric plotter).4. cu un câmp magnetic sau electric (comandat de calculator).a. altele nu. care deplasează un creion într-un plan X-Y pe o suprafaţă din hârtie şi desenează grafice. cu cât dpi e mai mare rezoluţia este mai bună. Acest tip de plotter are şi alte aplicaţii importante: la rapid prototiping dacă structurile pentru care se face un model sunt de dimensiuni foarte mici sau la liniile robotizate cu care se implantează componente electronice pe plăci cu cablaj imprimat. Utilizează un toner pulbere. Unele imprimante o facilitatea de a putea fi „încărcate” cu un număr mare de coli de hârtie. Poate fi prin USB. • formatul de hârtie pe care se poate tipări. Evident că. Din punct de vedere constructiv plotterele sunt: a. dar tipăresc formate mult mai mari şi pot imprima pe hârtie. aplicându-se la acestea. Se exprimă în dpi. unde benzile de alimentare cu componente sunt tăiate. în funcţie de domeniile de utilizare. În consecinţă. astfel că. pe tot parcursul deplasării capului de tăiere. dar depinde şi de actualitatea tehnologiei pe baza căreia a fost construită. De regulă. bine ascuţită. f. tehnologia de tăiere cu laser.6. Cutting Plotter are denumirea transferată din limba engleză şi în cea română. Nu toate tehnologiile dezvoltate sunt aplicate şi la imprimantele pentru calculatoarele personale.a. cu astfel de plottere. cu diferite utilizări (reclame. 5. Din multe puncte de vedere un Cutting Plotter se aseamănă cu ceea ce este denumit. taie pe o suprafaţă de vinil forma comandată de calculator. • durata de preîncălzire. Constructiv acest tip de plotter este asemănător cu cel al unuia utilizat pentru tipărire.plăci indicatoare. Un plotter poate fi utilizat la multe tipuri aplicaţii pentru a produce grafice. doar că în locul capului de inscripţionare se foloseşte o sculă de tăiere. Sunt preferate imprimantele cu capacitate mare de memorare. sunt încărcate electric pozitiv (ioni pozitivi). deşi o linie privită cu ochiul liber apare ca fiind continuă. Structuri numerice suport pentru echipamentul de conducere al unui robot 161 162 CONDUCEREA ROBOŢILOR Desigur că. b. Plotter cu suprafaţa hârtiei plan orizontală (flatbed plotter). un robot. la unele A4 şi A3. La acest tip inscripţionarea se face prin deplasarea capului de scriere pe orizontală şi pe verticală pe suprafaţa şi în planul orizontal al hârtiei (materialului de suport pentru imprimare). acest tip de plotter se foloseşte la realizarea foliilor colante ce se lipesc pe sticlă. volumul lucrării etc. iar la variantele moderne este din ce în ce mai scurtă.

explicând eventual şi preţul.). Sub acesta se deplasează un car mobil pe care se află sursa de lumină şi elementul fotosensibil. cu programe dedicate. scannerul pentru formate mari ş. fenomene naturale (inundaţii. când sunt analizate (măsurate) obiecte apropiate. Este tipul cel mai des utilizat. Structuri numerice suport pentru echipamentul de conducere al unui robot 163 164 CONDUCEREA ROBOŢILOR de tipărit. scannerul este un echipament periferic de achiziţie de date. care operează cu baze de date. diapozitiv). Camerele pot fi montate. albastru) care constituie sursa pentru iluminare. a sonda. ş.Scanner Traducerea în limba română a verbului to scan este una dintre variantele a explora. Se realizează DEM (Digital Elevation Model). iar apoi. Un scanner funcţionează pe principiul citirii optice a informaţiei: o sursă puternică de lumină (tub fluorescent) este deplasată pe întreaga suprafaţă ce se doreşte a fi scanată. adâncimile unor gropi sau canioane etc. un grafic. cu o lăţime cuprinsă între 10 şi 20 cm. Scannere flatbed sau Desktop Scanner. de fapt. Un element fotodetector. mai nou. De asemenea se pot calcula dimensiunile unor forme de relief (munţi. Sistemul este utilizat la aparatele ce pot funcţiona şi la transmiterea de fax-uri şi fotocopiere. dar din două locaţii diferite. Constructiv. ş. scannerul cu laser. 2D sau 3D. Fotografiile pot fi efectuate cu un singur aparat. z. obiective industriale sau din agricultură. Pe baza datelor achiziţionate (astăzi numai digital) se pot realiza hărţi (numite chiar hărţi digitale). inclusiv topografice. deplasând secvenţial sursa şi traductorul. pe un avion/elicopter sau pe un satelit din spaţiul extraterestru. digitizarea dimensiunilor geometrice ale unor obiecte – în robotică sau rapid prototyping. adică modelul digital al terenului. Scannerul de mână (Hand-held scanner). activitatea unor vulcani. cele dedicate scanării de cărţi.Cap. dealuri. Costul mare nu este legat de principiul de imprimare utilizat. uneori. Documentul ce se doreşte a fi scanat se pune întins pe geam.m. Termenul fotogrametrie trebuie înţeles ca un cuvânt compus din cuvintele „fotografie” şi „metru” şi denumeşte procedeul prin care se pot afla dimensiunile. Caracteristicile care exprimă calităţile unui plotter.a. scanner plat. Este uzual denumit şi în limba română cu termenul englezesc sau. este înconjurat cu câte trei LED-uri (de culori roşu. Cu aceste elemente se reduce semnificativ consumul de energie. dar încă rezoluţia ce se obţine cu CCD-uri este superioară. Plotterul fotogrametric modern este comandat de un calculator. mai ales la roboţii mobili (de pildă la conducerea elicopterului robot) sau în vederea artificială adăugând sistemului de vedere abilităţi de măsurare. în paragraful precedent. se calculează dimensiuni geometrice. baze de date ce conţin reţele dense de valori numerice pentru coordonate spaţiale x. Fotografiile utilizate astăzi în astfel de aplicaţii sunt numite 3D. Deosebirea constă în aceea că utilizarea sa are la bază principiul fotogrametriei. cum sunt cele din oftalmologie. Un scanner de mână este de dimensiuni reduse. ale unor obiecte prin măsurători efectuate pe fotografii ale acestora. adică prin suprapunerea a două fotografii 2D ale aceloraşi obiecte. De-a lungul timpului s-au folosit şi metode analogice sau analitice pentru calculul dimensiunilor geometrice prin prelucrarea imaginilor fotografiate. pe un trepied amplasat la sol.. Elementele fotosensibile convertesc informaţiile optice achiziţionate în format digital şi le păstrează într-o memorie. .a. realizat în tehnologie CMOS complementar. CIS (Contact Image Sensor). verde. 5. complexe industriale. traductibil prin model digital al cotelor sau DTM (Digital Terrain Model). iar reflexia de la imaginea iluminată este captată de elemente fotosensibile de tip CCD sau. Cele două fotografii constituie o stereopereche. Există şi aplicaţii. El este capabil să achiziţioneze rapid un volum mare de date aferente unei imagini digitale. fără contact. sau se utilizează o cameră stereometrică. de pildă unul ce trebuie menţinut apăsat pe durata scanării sau cele de setare a rezoluţiei. Se foloseşte adesea termenul de remote sensing cu semnificaţia de telemăsurare. are un geam de sticlă poziţionat orizontal şi cu acces pentru utilizator.6.a.d. localităţi.pentru detectare de posturi de emisie neautorizate. Unele aplicaţii sunt şi pentru dimensiuni mai mici decât acuitatea vizuală umană. după caz. Este folosit la aplicaţii mai puţin pretenţioase. care explorează o imagine (un text. sunt similare cu cele enunţate. ş. Se fotografiază zonele de interes. traductibil eventual cu scanner de birou (de masă). 5. Scanare „prin defilare”. b. La fel. Pentru aceasta este necesar un calculator performant cu o memorie rapidă de mare capacitate şi de un software anume creat (scump).a. măsurare de la distanţă. ce se foloseşte cu precădere la obţinerea de hărţi pentru zone mari. Este dotat cu butoane de comandă. tipărit sau scris de mână. Carul baleiază liniar documentul. citirea de coduri de bare. se pot urmări modificări survenite pe diferite zone de interes. dar acestea nu sunt considerate ca echipamente pentru dotarea calculatoarelor personale. la care documentul este cel deplasat în dreptul sursei de lumină şi a fotoelementelor captatoare. Principalele tipuri implementate sunt: a. şi domeniile de activitate în care se foloseşte scanarea sunt diverse: scanare radio . Parcurgerea unui document sau obiect se face prin mişcarea manuală a scannerului pe suprafaţa de interes. CIS-urile se amplasează în imediata apropiere a obiectului ce trebuie scanat şi nu captează o imagine reflectată. fotografiile se înregistrează. stocare şi prelucrare a imaginilor. c. În tehnica de calcul. se pot colecta date pentru siteme GIS (Geografic Informational Sistem). Există o mare diversitate de scannere: cele pentru imagini de pe folii transparente (film. întrucât acesta poate fi oricare dintre cele mai sunt prezentate. În sistemele de astăzi se utilizează exclusiv metode digitale de captare. care sunt. din ele. pentru imprimante. y. scanare radar terestră sau aeriană. a baleia sau chiar a scana. Ele sunt obţinute prin vedere stereoscopică. evenimente meteorologice.) ale unor clădiri. o poză) sau un obiect şi îl converteşte într-o imagine digitală.5. în aşa numita fotogrametrie terestră. utilizată cu precădere în birotică. Fotogrametria a început să îşi găsească aplicaţii şi direct în robotică.

în construcţia echipamentelor modem. prin cablu ecranat. . calculatoare 5. tastaturi. S-a urmărit reducerea raportului preţ de cost/performanţe. La un scanner mai interesează comoditatea utilizării. cu transmisie prin unde radio. Istoric. De-a lungul timpului au fost folosit diferite standarde pentru protocoalele de comunicare prin modem (v. Modem Modem-ul are denumirea rezultată prin comprimarea cuvintelor modulare – demodulare şi este un dispozitiv care serveşte la transmisia de date numerice pe linii de conexiune analogice. LINE Network.7.10. dar există şi variante pentru A3. în date numerice. exprimată în numărul de pagini/minut. • un procesor specializat de tip DSP (Digital Signal Processor). a microprocesoarelor şi DSP-urilor. ce depinde de dimensiunile şi greutatea sa. pentru a se extrage informaţia numerică utilă.6. monitoare. • Formatul documentelor ce pot fi scanate. Structuri numerice suport pentru echipamentul de conducere al unui robot 165 166 CONDUCEREA ROBOŢILOR Un scanner este. ce permite transmisia. aflate distribuit în diverse puncte de lucru. iar interfaţa permite şi recepţia de muzică. fiind dependentă de numărul şi calitatea elementelor captatoare. în cazul scannerelor de birou. 5. Placa de sunet Este placa de interfaţă cu care se face posibilă atât recepţionarea cât şi transmisia de mesaje sonore. exprimată în dpi. care asigură implementarea tuturor efectelor sonore „electronice” (vibrato. Principiul său de operare este acela de a modula un semnal analogic purtător. 5. tremolo etc).6. mixer audio etc. Acest parametru depinde de rezoluţie şi de dimensiunile obiectelor/documentelor scanate. De la un microfon operatorul uman poate vorbi cu un partener de dialog.prin utilizarea. primele modem-uri au fost folosite pentru a conecta la staţii de calcul centralizate. microfonului şi a altor surse de sunet (tuner. Unele plăci de sunet au şi o ieşire SPDIF (Sonny Philips Digital Interface).) la calculator se face prin mufe jack de 3.alte surse de semnal audio. MESH Network. albastru (Line In) . nivelul de zgomot produs şi temperatura până la care ajunge să se încălzească în timpul funcţionării. complexitatea funcţiilor (de pildă transmisia simultană de voce şi date) . în care calculatoarele sunt interconectate printr-o magistrală comună. Legarea calculatoarelor în reţea poate fi realizată în diferite topologii (network topology). cu mesajul digital care trebuie transmis. consumul de energie electrică. reducerea efectului de ecou.Se află în fucţine sistemul WiFi (Wireless Fidelity) ce foloseşte comunicaţia prin sateliţi şi se bazează pe protocolul WAP (Wireless Application Protocol). • Modul de conectare la calculator. modem-urile au fost folosite pentru a se face posibilă interconectarea calculatoarelor folosind linia telefonică tradiţională (analogică). sau de la alte surse de semnale audio. Se află în plină dezvoltare sistemul WiMax (Worldwide Interoperability for Microwave Access). la care unele dintre calculatoarele reţelei se conectează prin fire separate.5. cu calculatoarele legate în stea. caracterizat cu următorii parametri: • Rezoluţia. roşu – microfon. Conectarea boxelor. ecou. În funcţie de model. Fig.a. prin cuple USB. 5. Un rol important în dezvoltarea de modem-uri şi echipamente aferente l-a avut şi firma multinaţională U. scannerele sunt conectate la calculator prin portul paralel. s-a pus accentul pe dezvoltarea implementărilor în tehnologii wireless. • Viteza de achiziţie.5 mm: verde (Line Out) – boxe. Majoritatea sunt concepute pentru formatul A4. Placa de reţea Principalele moduri de interconectare a calculatoarelor în reţea sunt prezentate în fig.8. RING Network. Placa de sunet este dotată cu: • un covertor CAN pentru conversia semnalelor analogice captate de la microfon. STAR Network. de date numerice către amplificatoare digitale. 22 – v. cu conector dedicat. Tipic este cuprinsă între 1220 şi 2400 dpi.Robotics. Mai târziu. în general. cu performanţe din ce în ce mai bune privind: viteza de transmisie a datelor (bit/s). Cel mai frecvent. Redarea semnalelor sonore se face cu două boxe anume conectate sau prin difuzoare ataşate monitorului. În ultimii ani.S.6.10. La receptor se procedează la demodularea semnalului. 5.Cap. ppm (pages per minut) ce pot fi achiziţionat. Moduri de conectare în reţea Placa de reţea – Network Card sau NIC (Network Interface Controller) – este necesară pentru a se conecta calculatorul într-o reţea de calculatoare. • un covertor CNA pentru conversia informaţiei digitale în semnale analogice transmise sistemului audio. utilizatorii înţeleg prin aceasta modul fizic de interconectare al calculatoarelor într-o reţea (physical topology): BUS network.90).6. ş. casetofon. iar apoi pentru a face posibilă transmisia de fax-uri şi chiar de a se realiza convorbiri telefonice prin calculator. interconectare în inel. Legătura cu cititorul de disc CD/DVD se realizează în interiorul calculatorului. teleimprimante. SCSI sau Firewire.

ce are loc pe magistralele interne ale calculatorului. a cărui denumire provine de la “eter”. Setul de programe shell are această denumire pentru că a fost dezvoltat în jurul nucleului (“înveleşte” nucleul). oferind şi diferite servicii programelor aplicaţii propriu-zise. Pentru o configuraţie concretă. Autonomia alimentării acestei memorii dinamice. În afara de nucleu şi drivere. Sistemele de calcul sau de conducere digitale execută sarcinile pe care le au de îndeplinit într-un mod de lucru discret (în timp). Structuri numerice suport pentru echipamentul de conducere al unui robot 167 168 CONDUCEREA ROBOŢILOR conectate într-un şir unul după celălalt. SO se ocupă de gestionarea resurselor sistemului de calcul. SO conţine şi numeroase programe utilitare (programe cu grad general de utilitate. 5. între un calculator şi conexiunea. în reţea. hardware şi software. Fig. Fiecare placă are o adresă MAC (Media Access Control) proprie şi unică prin care poate fi identificată. Aceşti parametrii trebuie setaţi (aleşi. sugerând o reţea cu legăturile “prin eter”. la transmisia serială efectuată în reţea. de cea generală a calculatorului. cochilie (de crustaceu). Placa de reţea are rolul de interfaţă. adică producătorul concepe linii de program cu care stabileşte modul general de funcţionare al unui tip de calculator.Cap. Se alocă un număr mai mare de felii de timp sarcinilor cu prioritate mai mare. a2. divizarea duratei de lucru în felii de timp scurte (time slices). mai nou. cele două plăci au adrese MAC diferite. Firmware-ul este microprogramat. se asigură folosind o mică baterie suplimentară. folosind un cablu (şi un conector dedicat) compus din opt fire. anume ataşată. de pildă. a1. Alături de nucleu. Conexiunea în interior se efectuează prin standardul sitemului (de pildă PCI sau PCMCIA). TREE Network. mai scurte sau mai lungi funcţie de viteza sa de operare. Alocarea resurselor de memorie. Unitatea centrală de calcul (procesorul) unui calculator are timpul divizat în felii de ordinul milisecundelor. Are un interpretor de comenzi. SO (în engleză Operating System). Managementul memoriei este una dintre cele mai importante atribuţii ale unui sistem de operare. Sistemul de operare alocă sarcinilor (tasks) unităţii de operare un număr diferit de felii de timp şi stabileşte ordinea priorităţilor la executarea acestora. un acelaşi calculator are o placă de reţea pentru interconectare wireless şi o alta pentru conexiune Ethernet. de la bun început. ea asigură şi coordonarea protocolului de comunicare spre şi dinspre exterior. Un sistem de operare trebuie să îndeplinească. Totodată.11. Observaţie: Cuvântul englezesc shell se traduce în limba română cu coajă. . Discretizarea presupune. Rolul ei este în primul rând acela de a face conversia de la transmisia paralelă a datelor.7. sau wireless (de exemplu WiFi). folosibile de către oricare utilizator). La conectarea calculatorului se produce. majoritatea calculatoarelor se livrează cu placa de reţea inclusă în structură (la calculatoarele portabile chiar inclusă în placa de bază). Notă: Ethernet este un sistem de interconectare a calculatoarelor într-o reţea locală LAN (Local Area Network). cu fire sau fără. În figura 5. 512 KB prin care se stabileşte comunicarea dintre hardware şi software. inerconectare arborescentă etc. numit shell dotat cu o interfaţă text şi/sau grafică prin intermediul căreia utilizatorul are acces la resursele nucleului şi poate utiliza diverse comenzi. şi invers. Dacă. următoarele funcţii de bază: a. Este definit ca fiind 5. dependentă la rândul ei de tipul procesorului. stabiliţi şi memoraţi) la instalare şi depozitaţi pe termen lung într-o memorie de tip RAM. Setul de instrucţiuni ce compun BIOS sunt componente firmware ale unui calculator. în mod automat.11 sunt prezentate sarcinile ce revin SO în coordonarea dialogului cu şi între componentele de sistem. BIOS este de fapt numai un set de instrucţiuni de iniţializare stabilit de producător şi depozitat într-o memorie ROM de capacitate 256 KB sau. arhitectura sistemului de calcul şi de frecvenţa de tact. În realitate. Alocarea resurselor de timp. Astăzi. Între hardware şi programele de aplicaţie se situează Sistemul de operare. PC Software Calculatorul devine funcţional pe baza setului de programe cu care este dotat. BIOS-ul operează cu parametrii de sistem. în principal. De aceea BIOS-ul se depozitează în memorie (OTP)ROM. Alocarea resurselor sistemului (Allocating System Resources). Rolul sistemului de operare SO are un program principal (master program) denumit nucleu (kernel) care asigură funcţionarea stabilă a calculatorului. Placa de reţea poate realiza conectarea la reţea prin fire. indiferent de topologia fizică. sistemul de operare este compus şi dintr-un set de drivere (programe de interacţiune cu dispozitive) pentru comunicarea cu diverse periferice. 5. specifici arhitecturii particulare unui calculator. există şi o logical topology care se referă la traseul urmat de informaţiile vehiculate într-o reţea. lansarea în execuţie a programului BIOS (Basic Input /Output System). carapace.

Performanţele unui calculator depind în mare măsură şi de managementul diferitelor moduri şi căi de comunicare. Sistemele de operare de astăzi permit rularea simultană a mai multe programe. astfel ca fiecare aplicaţie aflată în derulare sau în aşteptare să aibă repartizat un volum adecvat de memorie. programele par a rula simultan. Chipset-ul este. Modul lor de operare poate fi. în primul rând. CD. ID (numărul de identificare al calculatorului). prin organizarea informaţiei stocate în secvenţe. Principalele sarcini pentru un subsistem de management al memoriei sunt: alocarea optimală a spaţiilor din memorie. Mangementul fişierelor. precisă. de forme diferite. log in (înscriere). Sisteme multitasking. care devin disponibile la un moment dat. 2. de regulă. a3. spre a nu fi şterse sau supra inscripţionate accidental. Monitorizarea activităţilor din sistem. Conceptul de fişier este fundamental în organizarea modului de stocare a informaţiilor. cu alte calculatoare dintr-o reţea etc. Fişierele de pe un disc pot fi defragmentate. SO gestionează întregul sistem de fişiere create pe HDD. iar variantele noi de procesoare au chipset inclus în structura proprie. Fişierul (în engleză file) este o colecţie de informaţii.. fiecare dialog trebuie să se deruleze independent de celelalte. extinderea spaţiilor din memorie. SO tratează fiecare disc virtual ca şi cum ar fi un disc fizic separat. Componenta hardware din calculatoarele mai vechi se numea Memory Management Unit. diversitatea dispozitivelor prin care dialogul poate fi efectuat este foarte mare. unul amplasat pe northbridge şi celălalt pe southbridge. Alocarea de intrări/ieşiri (I/O). poate lucra pentru un alt program. se înţelege prin multitask-ing: . gestionarea utilizării în comun a anumitor spaţii din memorie (de exemplu a memoriei virtuale) între mai multe aplicaţii. Managementul memoriei este implementat folosind trei unelte: una hardware. Pot fi create aşa numitele discuri virtuale. user name (nume utilizator) etc. principial. în structura unui calculator. rename (redenumeşte) etc. Programele SO asigură formatarea discurilor şi/sau partiţionarea spaţiilor de stocare disponibile pe un HDD. c. de pildă în varianta unei pererechi de circuite. rezultatul unei achiziţii seriale cu SAD). unitatea centrală. Pentru pentru managementul memoriei sunt create subsisteme (hardware-software) dedicate. stocate pe unităţi fizice de memorie. move (mută). Astăzi se foloseşte un grup de cicuite integrate specializate denumite împreună chipset. care cooperează între ele la dialogul cu memoria fizică. de la un program la altul. Sunt specifice sistemelor de conducere a proceselor şi. echipamente de comunicare cu operatorul uman şi/sau procese. şi o parte din programul de aplicaţie ce este activat la un moment dat. protecţia anumitor zone ale memoriei. în locul unui singur HDD fizic ar exista mai multe. În astfel de sisteme. driverul sistemului de fişiere. 3. Managementul fişierelor şi al HDD. mult mai complex. SO trebuie să gestioneze toate cererile de transmisie/ recepţie de date la/de la driverele pentru dispozitivele de stocare a datelor. Sisteme în timp real (real-time systems) sunt acelea în care este garantat că unitatea centrală a calculatorului execută imediat (pe loc. şi asigură o organizare simplă. Protocoalele dialogurilor trebuie respectate şi supravegheate. Câteva atribuţii din această categorie sunt: • verifică dacă. Sistemul de operare alocă numărul de felii de timp fiecărui program după necesităţi şi stabileşte ordinea priorităţilor la executarea a operaţiilor din diferitele programe ce trebuie rulate “simultan”. programe din nucleul sitemului de operare. nu cumva sistemul este supraîncărcat cu sarcini de efectuat. a roboţilor industriali. Există şi variante la care chipset-ul se află pe o placă de extensie.cu circuite integrate specializate şi două software. Totodată. eliberată.3). delete (şterge). ca şi cum. • asigură securitatea sistemului cu mijloace de tipul password (parolă). 5. b2. b. Evident că. crearea şi gestionarea memoriei virtuale (swap-vezi paragraful 5. Calculatorul efectuează alternativ taskuri din diferite programe comutând resursele. unul dintre următoarele trei: 1. Structuri numerice suport pentru echipamentul de conducere al unui robot 169 170 CONDUCEREA ROBOŢILOR tehnica de coordonare şi control al modului de utilizare a memoriei unui sistem de calcul. logică şi riguroasă pe acestea. pentru a micşora timpul de acces. Programul care coordonează organizarea sistemului de fişiere este FSD (File System Driver). DVD etc. Un sistem de operare ţine sub observaţie stările din sistem. • verifică posibilităţile (ca timp de operare şi ca volum al datelor vehiculate) de a răspunde la o comandă externă recepţionată. MMU şi executa dialogul nemijlocit cu circuitele memoriei la comanda unităţii centrale. b1. Pe durata aşteptării. • verifică starea unităţii centrale (în lucru sau în aşteptare – idle). pe magistrale şi prin interfeţe stabilite fără echivoc. amplasat pe placa de bază. Primele sisteme de operare ce au fost dezvoltate permiteau rularea unui singur program la un moment dat (single program operating system). gestionarea memoriei cache (a memoriei fizice în general).2. în timp real) programul solicitat de o comandă sosită din exterior (de la un proces) la un moment dat. Sisteme multiprogramming sunt cele în care programul ce rulează curent nu poate fi întreupt numai în momentele în care procesorul ajunge în stare de aşteptare a unor evenimente externe (de pildă. la un moment dat..Cap. Au la bază principiul time-sharing. Observaţie: Termenul time-sharing trebuie înţeles ca o distribuire (împărţire) a numărului de felii de timp la mai multe programe şi este numai suportul hardware/software pentru ceea ce. desigur. Principiul urmăreşte exploatarea la maximum a resurselor de timp ale procesorului. De aceea un sistem de operare performant are dezvoltat şi un subsitem I/O (I/O subsystem). Managementul HDD. SO pune la dispoziţia utilizatorului facilităţi de tipul copy (copiază). Pentru a se asigura integritatea informaţiilor în timpul transmisiei/ recepţiei blocurilor sau şirurilor de date I/O.

Limbaj maşină (machine language). fiind. Traducerea (translatarea) din limbajul de asamblare în cod maşină se face cu un program numit asamblor (assembler). specifice unui calculator. mai scurt decât analogul său compilat. iar cel obţinut după translatare se numeşte program obiect. Sunt extrem de potrivite şi pentru structurile mutiprocesor. 5. Interpreterul este un program care face acelaşi fel de translaţie. Cele mai cunoscute siteme de operare sunt: MS-DOS (Microsoft’ s Disck Operating System). Totalitatea regulilor prin care instrucţiunilor li se atribuie o semnificaţie constituie semantica limbajului. tipul de calculator utilizat la construcţia unei generaţii de roboţi este ales cu structura cea mai actuală din perioada respectivă. d. De pildă. C++. iar compilerul se foloseşte când se rulează un program definitivat. denumite şi limbaje de nivel înalt de generaţia a 4-a. în care producătorul implementează funcţionarea de ansamblu a unui robot. dar astăzi se utilizează diferite versiuni ale limbajului C.Cap. şi setul de reguli de utilizare ale acestora. 5. NT. care prin compilare conduc la foarte multe operaţii sau comenzi ce trebuie executate de unitatea centrală. C.). fie interpretat. 2003 server. direct executabil de procesor. Totalitatea cuvintelor şi simbolurilor ce aparţin unui limbaj constituie vocabularul limbajului respectiv. Limbaje de nivel înalt (High level language).5. dar on-line. Programul obţinut după interpretare este. b. de mare amploare. respectiv a 5-a. Un limbaj de asamblare constă dintr-un număr de instrucţii care sunt abrevieri ale numelor. stabilit de producător. De-a lungul timpului au fost realizate numeroase sisteme de operare. fie cu structuri multiprocesor. deci. Calculatorul unui robot În principiu. dar se află numai în diverse stadii de dezvoltare. BASIC. fie cu calculatoare diferite. dar se execută mai încet (fiind rulat în paralel cu programul sursă). . Primul sistem de operare dotat cu interfaţă grafică. Observaţie: Interpreterul este utilizat când se lucrează la conceperea şi verificarea pe porţiuni a uni program. de la „addition”. Este nemijlocit legat de structura hardware. Vista.8. • Hard disk: minimum 40 GB. 2000. Sunt constituite din cuvinte-instrucţie şi expresii algebrice. Structuri numerice suport pentru echipamentul de conducere al unui robot 171 172 CONDUCEREA ROBOŢILOR 1. Sisteme multi-user care permit mai multor utilizatori să lucreze pe acelaşi calculator simultan sau la momente diferite. Programul compilat este mult mai lung decât cel din care provine. Limbajul de programare este un set de instrucţiuni. de regulă.7. propriu fiecărui procesor. Unul dintre modurile de lucru pentru un interpreter este acela de a translata o linie din programul sursă în limbajul maşină şi de a o rula imediat. Limbaj de asamblare (assembly language). Acestea sunt la dispoziţia utilizatorului pentru a crea programele de lucru la diverse aplicaţii concrete.9. se sintetizează aşa numitele instrucţiuni de utilizator. sunt sisteme de operare pentru structuri cu mai mult de un singur procesor (multiprocesor). 3. Sisteme multiprocessing. chiar cuvântul englezesc. Prin utilizarea mai multor procesoare viteza de lucru creşte semnificativ. JNP. sunt utilizate dacă resursele a mai multor sisteme de calcul se folosesc în paralel la îndeplinirea unui task comun. considerat cel mai scăzut nivel de programare. pentru instrucţiile din cod maşină (ex. Fiecare instrucţiune are un echivalent în cod maşină. C+. Cele mai cunoscute limbaje de nivel înalt. care să poată fi rulate pe orice calculator.) Este derivat din codul maşină. MOVE. adică în timp ce programul „de tradus” rulează. Cu funcţii şi proceduri ale limbajului de nivel înalt. În robotică. Limbaje de nivel foarte înalt (Very-high level languages). • Memorie RAM cu o capacitate de minimum 256 MB. comenzile sale configurează stări şi provoacă evenimente direct în circuitele interne ale procesorului. Sisteme multithreading. JAVA. o lungă perioadă de timp a fost folosit PASCAL. Multe firme producătoare de roboţi şi-au creat limbaje de nivel înalt proprii. Prezintă avantajul apropierii de limbajul natural uman. calculatorul cu care un robot este dotat este perfect compatibil cu familia de calculatoare PC. Se aplică la conducerea proceselor complexe pentru care este necesară execuţia în paralel. De regulă. Windows care a evoluat succesiv în variantele 95. din Finlanda. Compilatorul este un program care translatează programul scris într-un limbaj de nivel înalt în limbaj maşină. Programul care se translatează se numeşte program sursă. Principalele categorii de limbaje de programare sunt: a. XP. Acestea au în vocabularul lor instrucţiuni foarte puternice. 98. Este limbajul de cel mai scăzut nivel în care operatorul uman mai scrie un program. care a avut şi succes comercial. sunt: FORTRAN. Fiecare procesor are propriul său limbaj. Totalitatea regulilor de scriere a instrucţiunilor unui limbaj constituie sintaxa limbajului. c. de la „jump if not pair” etc. care are numele derivat de la cel al creatorului său Linus Torvalds. Este limbajul procesorului. 5. prezentate în cartea tehnică a robotului. Au fost create pentru a scrie programe complexe. 2. Visual BASIC. el trebuie întâi fie compilat. (vezi şi paragraful 5. Se compune numai din secvenţe de numere binare 0 şi 1.: ADD. Noi variante de SO sunt UNIX şi Linux. a fost cel creat de Apple Macintosh. calculatorul utilizat la începutul anilor 2000 are următoarele caracteristici hardware pricipale: • Procesor: cel puţin Intel Pentium 4 cu frecvenţa de tact 2GHz. în limba engleză. Pentru ca un program scris într-un limbaj de nivel înalt să poată fi rulat. PASCAL. Limbaje de programare Programele se scriu într-un limbaj de programare.1.în ordinea dezvoltării lor.iar cele utilizate curent au fost permanent dezvoltate pentru a se obţine performanţe superioare şi pentru adaptare la evoluţia permanentă a tehnologiilor.

C+. în limbajul microprocesorului/microcontrolerului utilizat. înţelegând prin aceasta nu numai că structura mecanică include şi electronica de conducere aferentă. ci este aleasă în corelaţie cu politicile de marketing ale firmei producătoare.12. • Placă grafică pentru afişare pe panoul de învăţare şi pe monitor. C++. aplicaţiile din robotică pretind şi dotări hardware şi software specifice. cu care se efectuează calculele matematice ce ţin de specificarea. în componenţa sa. Astfel. ci diferă de la un producător la altul. Fig. C++. componente constructive ale unei articulaţii. de regulă. mai nou în limbaje de firmă). Structuri numerice suport pentru echipamentul de conducere al unui robot 173 174 CONDUCEREA ROBOŢILOR • Posibilitate de conectare în reţea BUS. numai nişte funcţii şi proceduri ale software-ului de bază. În variantele produse în anii ’90 exista obiceiul de a include în calculatorul principal al robotului chiar şi plăcile aferente SCL-urilor. de pildă. Programele prin care se realizează modelarea mediului (grupa A de sarcini) şi specificarea. de fapt. Firmele producătoare au creat chiar limbaje proprii. Şi în aceste cazuri. un calculator al unui robot are. Mulţi ani s-a folosit Pascal. Scrierea acestor programe se face. Denumirile folosite de producători pentru astfel de plăci nu sunt standardizate. derivate din cele de uz general (de exemplu: KRL . prin limbajul de programare al robotului. Visual C. sau variante ale acestora. ca exemplu tipic pentru aplicaţii software în timp real. Ele sunt produse de firmă şi sunt inaccesibile pentru utilizator. în limbaj de asamblare (specific aplicaţiilor în timp real). Programele sunt scrise într-un limbaj de nivel înalt. Desigur că. Ansamblul acestor programe în limbaj de nivel înalt şi cele scrise în limbaj de asamblare constituie software-ul de bază al robotului. placa distinctă pentru comanda robotului există în calculator. întotdeauna. Tehnologia de acest fel este chiar denumită Mechatronic Embedded Systems. sunt totodată şi componente ale motorului sau sunt şi traductoare. Programele cu care se implementează conducerea nemijlocită a axelor sunt scrise. generarea şi controlul mişcărilor (grupa B) presupun dezvoltări software laborioase.KUKA Robot Language. ci şi faptul că anumite părţi mecanice. Denumirea nu are întotdeauna suport tehnic complet. De aceea software-ul de bază include şi un sitem de operare în timp real. nu tocmai corect. Sistemul de operare utilizat este din familia ultimelor variante de Windows. la dispoziţie un umăr de instrucţiuni („de programare a robotului”) compus. cel puţin o placă distinctă prin care se asigură interfaţarea cu sistemul de achiziţie de date şi cu sistemele de conducere locale ale axelor mecanice. de pildă WindowsXP sau Windows Embedded – anume creat pentru sisteme dedicate (Embedded Systems). din cca.Multi Function Card) Sistem de operare: • Windows Embedded • sistem de operare robot în timp real pentru: • calculele matematice ce ţin de mişcarea robotului • sistemul de securitate (ELECTRONIC SAFETY CIRCUIT) Principiul de organizare a structurii software este redat în fig. O astfel de placă este construită în jurul unui sistem cu microprocesor/microcontroler şi conţine şi etajele de electronică de putere prin care sunt alimentate motoarele de acţionare. 25-30 instrucţiuni cu care se întocmesc programele de lucru propriu-zise pentru robot.5. în limbaje de programare de nivel înalt (Pascal. desigur. În ultimii ani tendinţa este ca electronica aferentă SCL-urilor să fie montată pe sistemul mecanic al robotului (la nivelul fiecărei axe). generarea şi controlul mişcărilor robotului (grupa B de sarcini) şi cele prin care este asigurată securitatea în funcţionare. ABB robot language) tocmai pentru implementarea a astfel de siteme de operare în timp real.Cap. iar în ultimul timp se utilizează C. La roboţii aflaţi în dotarea laboratorului de robotică al Universităţii „Politehnica” din Timişoara calculatoarele au fost alese după următoarele impuneri: • Procesor: minim Intel Pentium 4 2GHz • Memorie de lucru: minim 256 MB • Hard disk: minim 40 GB • Posibilitate de conectare în reţea • Posibilitate de conectare în reţea de BUS • Placă video de afişare pe panoul de comandă şi pe monitor • Placă specifică de comandă robot (MFC . în comparaţie cu un calculator PC de uz general. câte o placă pentru fiecare axă mecanică a robotului. Structura software a calculatoarelor roboţilor de la UPT .5. însă. Aceste instrucţii sunt date în cartea tehnică a robotului şi sunt. Utilizatorul are. Ele constituie ceea ce utilizatorii înţeleg. 5. în literatura de specialitate. însă. Firmele cu renume în robotică au creat limbaje proprii.12. Conducerea unui robot este considerată.

Avantajul principal al structurii Harvard constă în faptul că fluxul de date spre/dinspre Unitatea Centrală a procesorului este mai fluent. EPROM sau FLASH. Schema bloc a arhitecturilor Harvard si von Neumann µC 8051 este construit după o arhitectură von Neumann. 5. Se utilizează multiplexarea: un acelaşi pin al capsulei se conectează. cronologic. La arhitectura von Neumann.Cap. Aceste circuite pot executa funcţii şi operaţii extrem de complexe cu mare viteză şi se folosesc nu numai ca analizoare de semnale ci şi la conducerea proceselor. În principiu. microprocesoarele au fost construite cu o structură internă conformă cu cele 2 tipuri generale de arhitectură adoptate la construcţia sistemelor de calcul: von Neumann sau Harvard (fig. de pildă Intel 8086 sau Motorola 68000. Unele microprocesoare sunt deosebit de performante şi se folosesc ca unităţi centrale de calcul în calculatoare din categoria calculatoarelor personale. toate componentele necesare pentru constituirea unui sistem de calcul. de regulă. memoria este utilizată în comun. uneori.9. vezi mai jos) diferite. Există. 486. µP/µC mai puţin performante. 5.14. În acest caz. un concept mai nou (fig. atât la depozitarea de programe. • pini de comandă. 14 sau 16 biţi.7). intern. Această structură constructivă este.9. În contextul unei cărţi de robotică. Există o cale unică (magistrală) internă. prin fabricaţie.5. Memoria Program este separată şi poate fi organizată pe câte 12. • pini de adrese. prin Fig. cât şi de date.a. Unii dintre pini disponibili se folosesc pentru a îndeplini mai multe funcţii.1.5. µC 8051. La ceste familii de µC se foloseşte.14): Fig. XTAL 2). capitolul de prezentare generală a microprocesoarelor considerate de uz general se va axa pe prezentarea reprezentantului tipic al acestei familii. evident că legătura cu exteriorul se face prin pinii capsulei. care conţin într-un număr restrâns de capsule. un spaţiu mai redus de memorie internă RAM. folosită atât pentru vehicularea de linii de program. O categorie mai avansată o constituie familia procesoarelor de semnal numite şi DSP-uri (Digital Signal Processor).9. Este arhitectura utilizată. aceştia sunt organizaţi pe seturi de funcţii deservite: • pini de date.14). ca şi alte familii de microprocesoare. Schema bloc internă a microcontrolerului 8051. pe suport ROM. într-o singură capsulă a cât mai multe circuite electronice. Principial. pentru depozitarea exclusivă a datelor. cât şi pentru vehicularea de date. pentru anumite tipuri chiar într-una singură. ş. Pentium sau AMD Athlon etc. Exemple: Intel 386.13. Structuri numerice suport pentru echipamentul de conducere al unui robot 175 176 CONDUCEREA ROBOŢILOR 5. unde numărul de unităţi controlate nu este foarte . cu precădere la microcontrolerele RISC (vezi paragraful 5. prima folosită în construcţia calculatoarelor. Microprocesorul (µP) 5. pot apare „gâtuiri” (în limba engleză bottleneck) în traficul de instrucţiuni şi/sau date. de asemenea. după caz. dar foarte utile pentru conducerea anumitor procese. complet. considerat azi de uz general (vezi schema sa bloc din fig.13. Ca principiu general. La alte tipuri de microprocesoare s-a folosit arhitectura Harvard.5. Este cazul microcontrolerului 8051. Observaţie: Procesul de integrare constă în includerea.5. Revenind la µC 8051. mare. Acest microcontroler conţine toate elementele aferente unui (micro)calculator.). necesar pentru generarea semnalului de tact (pinii XTAL 1. compusă din registre de câte 8 biţi. Principii generale cu privire la microprocesoalrele de uz general (µC 8051) Microprocesoarele sunt circuite integrate pe scară largă. În exteriorul său nu se conectează decât un cristal de cuarţ. accesul la programe şi date se asigură pe căi (magistrale.

Microcontrolerul 8051 are. denumire dată câte unui set de linii de conexiune între sisteme diferite. Structură generală şi funcţionare (µC 8051) O schemă bloc explicativă a µC 8051 este cea din fig. (fie linii realizate pe cablajul imprimat de suport. Microntrolerul (µC) 8051 este din familia microprocesoarelor pe 8 biţi. P1 P2 şi P3 şi un port serial. ce poate avea două valori: adevărat (1 logic) sau fals (0 logic). sau. c) Magistrala de comenzi.8. În limba engleză termenul folosit pentru a denumi o magistrală este bus. 5. Evident că. setul de conexiuni este organizat pe magistrale (vezi paragraful 5. el poate adresa 64 KByţi de memorie de date externă (există . Comutarea sensului de circulaţie a informaţiei se face prin programarea adecvată a registrelor aferente fiecărui port (vezi mai jos). Liniile unui port sunt numerotate de la 0 la 7. altfel exprimat. evident că. Pe schemele electrice.3. la îndeplinirea mai multor funcţii. repectiv pentru date. Acestea sunt conectate cu alte linii conductoare ce le continuă în exteriorul capsulei integratului Fig.15. 4 porturi paralele P0. Observaţie: Termenul bit s-a obţinut din combinarea cuvintelor englezeşti binary digit (vezi şi paragraful 3. de regulă. spre a executa o funcţie sau alta.). EA – External Address Pulse. magistrala de date. Bit-ul este o variabilă booleană. 5. şi numărul de locaţii apelabile este mai mare.9. sau 4. Simbolul utilizat la reprezentarea unei magistrale Principalele tipuri de magistrale folosite la transmiterea de informaţii sunt similare cu cele prezentate în paragraful 5. adică a celora care utilizează cuvinte (digitale) exprimate pe câte 8 biţi. n = 2÷6. şi liniile unui port se folosesc. Alte microprocesoare lucrează cu cuvinte de 2 byţi (2X 8 biţi). o adresă a unui circuit de comandă sau a unui alt echipament electronic (tratate ca periferice de µP/µC). şi sunt valabile şi la µP / µC. fie pe o singură linie. care are un număr variabil de linii.16. Acest lucru înseamnă că pot transmite semnale fie dinspre exteriorul µC spre interior (linii de intrare). sau. de la 0 la 15 dacă este de 16 biţi.4. În funcţie de tipul microprocesorului sau al informaţiilor vehiculate. 1Mbit.) Liniile unui port sunt. TXD – recepţie/transmisie serială de date etc. la un bloc sau altul din structura microcontrolerului.Address Latch Enable (semnal pentru multiplexarea adreselor/datelor la P0). µC poate adresa 64 KByţi memorie de program. după necesitate. WR – Write (scriere). şi chiar 2n byţi. care se constituie. Exemplu: Dacă magistrala de adrese este alcătuită din 20 de linii. fiecare de câte 8 biţi. de plidă. INT1 – semnale de întrerupere externe. se pot formula un număr de 220 = 1048576 de adrese fizice. Cu cât numărul de linii ale magistralei de adrese este mai mare. din care primii 4 KByţi locali (ROM). în porturi. magistrala de adrese. Structuri numerice suport pentru echipamentul de conducere al unui robot 177 178 CONDUCEREA ROBOŢILOR comenzi adecvate. prin multiplexare. b) Magistrala de date – pe care sunt transmise numai instrucţiunile dintr-un program şi datele ataşate acestora. RXD.5. Fig. Schema bloc de principiu a µC 8051 Arhitectura sa are spaţii separate de memorie pentru program. bidirecţionale. INT0. RD . Pe aceasta se transmit numai semnale de comandă. bit după bit (transmisie serială) (vezi şi în paragraful 5. La acest µC magistrala de comenzi este externă. pe care se transmit adresele locaţiilor solicitate. sunt utilizate şi ca magistrală de adrese. după necesităţile de moment. Ca la toate calculatoarele. magistralele pot fi de 2n de biţi (linii). cu referire generală la calculatoare. la un moment dat în program: o adresă de memorie. funcţie de tipul de µP. 5.d. Observaţie: transmisia de informaţii se poate efectua fie pe mai multe linii simultan (transmisie paralelă). Conexiunea magistralelor interne ale unui microprocesor. 103 Kbit.2. Există porţiuni ale câte unei magistrale care se află în interiorul µP/µC.Read (citire). de pildă cea de comandă.a. sunt: a) Magistrala de adrese. ALE .15. un număr nestandardizat de linii.3. adică cca.Cap. De pildă la µC 8051 liniile porturilor P0 şi P1. fie invers (linii de ieşire). ş. De asemenea.4. cu exteriorul. dacă este de 8 biţi. în general. pentru anumite funcţii.d..5. Pentru µC 8051 exemple de astfel de semnale sunt: RST – Restart. n = 2÷6. care conţin µP/µC magistralelele se reprezintă ca în figura 5. fie fire de legătură). magistrala de comandă). are loc prin pinii capsulei.16. pentru această funcţie.m.

rotire spre stânga sau spre dreapta a unui operand etc. Înainte de se efectua saltul. câte unul introdus la câte o intrare a sa (la câte o ramură a literei V). din codul unei instrucţiuni recepţionate.17. În cazul când trebuie efectuat un salt în program (o ramificare).18. ci. există mai multe tipuri de registre interne. 5. Acestea două. Din punct de vedere constructiv. Are şi facilităţi de prelucrare la nivel de bit. dar. La o intrare a UAL (fig. Această secvenţă de evenimente a fost denumită Instruction Fetch. ş. incrementare. Ciclul de execuţie a unei instrucţiuni: UCP comandă transferarea instrucţiunii următoare a programului. ADD (adunare). la pasul următor din program.5. registrele pot fi de mai multe feluri. Fig. 5. împreună cu Decodificatorul de Instrucţiuni (Instruction Decoder) sunt utilizate pentru a se executa o instrucţiune. La parcurgerea obişnuită. Decodificatorul de Instrucţiuni este cel care decodifică.5.5. NU.Cap. la majoritatea operaţiilor efectuate. după cum se va vedea mai jos. preluând adresa de la care trebuie continuat programul. TEMP2 pe fig. operaţia ce trebuie executată. conţinutul câte unui registru nu se transferă direct UAL. SAU. µC 8051 conţine şi patru porturi de I/E. în mod implicit. conţinutul PC este incrementat şi se transferă o nouă instrucţiune.).18.17). SUB (Subtraction . Este un registru de 16 biţi şi are un rol esenţial în funcţionarea unui µP: acela de a păstra adresa locaţiei din memoria program al cărei conţinut urmează să fie preluat. a unui program. ori de câte ori urmează o comandă de salt la o altă locaţie. principalele blocuri ce se pot distinge ca atare la µC 8051 sunt: a) CPU (Central Processing Unit). conţinutul său este. Majoritatea operaţiilor nu se pot efectua decât cu participarea unui registru special. În raport cu secvenţa consecutivă obţinută prin simplă incrementare. Acumulatorul are o funcţie privilegiată. UCP al unui µP Detaliind şi mai mult.13. Decodificatorul de Instrucţiuni şi Unitatea de Control decodifică instrucţiunea.scădere). din care un număr de registre speciale. Este prevăzut cu două numărătoare/ contoare de timp. comparaţie. tradus cel mai adesea cu Registru Numărător de adrese. IR). mai întâi. . impus de programul parcurs până să survină ramificarea. Şi din punctul de vedere al rolului lor într-un µP. fiind chiar numită de mulţi autori „arhitectură în forma literei V ”. care servesc la memorarea câte unui cuvânt de un octet (8 biţi). conţinutul PC este incrementat. conţinutul PC se schimbă corespunzător. SAU EXCLUSIV. acumulatorul. de la adresa conţinută de PC. în forma unei litere V. 5.13. UAL efectuează operaţii aritmetice şi logice de tipul: ŞI.a. Are 128 octeţi de RAM intern. Instrucţiunea sosită este depozitată în IR. este trecut într-unul dintre registrele temporare (notate cu TEMP1. prioritară. Este blocul reprezentat şi în fig. UCP al µC 8051 Mai întâi trebuie observată prezenţa unor registre. în limba română Unitatea Centrală a Procesorului UCP (fig. Ca structură.16. vezi mai jos). se ajunge la schema bloc din figura 5.13) poate fi transferat conţinutul oricărui registru intern sau extern al µP. descrise paragraful 5. linie după linie. notat cu A. sunt evidenţiate două registre speciale: Numărătorul de adrese (Program Counter) şi Registrul de Instrucţiuni (Instruction Register. iar după aceea UC iniţiază/coordonează executarea operaţiei aferente (de către UAL.d.9. prin aceea că. 5. fiecare registru este alcătuit din câte un grup de 8 bistabile de tip D. În structura internă a oricărui µP există mai multe registre. După executarea instrucţiunii. Detaliind schemele bloc din figurile 5. O astfel de reprezentare grafică sugerează faptul că UAL efectuează calcule cu 2 operanzi. de regulă. dar aici nu este potrivită o detaliere a chestiunii. ca de obicei în schemele bloc ale µP. decrementare. Structuri numerice suport pentru echipamentul de conducere al unui robot 179 180 CONDUCEREA ROBOŢILOR o suprapunere a spaţiului de memorie internă cu cel al memoriei externe). să fie pregătită adresa necesară. conţinutul PC se schimbă adecvat. ce vor fi operanzi utilizaţi la un moment dat. PC – Program Counter. ceea ce înseamnă o dotare cu 32 de linii de conexiune bidirecţionale. în avans temporal faţă de momentul executării instrucţiunii care va urma.5.m. se depun în stivă (Stack) toate datele esenţiale aferente stadiului curent. pentru ca. Fig.18. UAL (Unitatea Aritmetică şi Logică).13 şi 5. În fig. înţelegând că fiecare bistabil memorează câte un bit al cuvântului depozitat. 5.

µC 8051 este prevăzut cu un număr de 21 de registre speciale SFR (Special Functions Registers). În plus. dacă nu se specifică altfel în program.20.20). de fapt. Arhitectura bazată pe acumulator este una dintre specificităiile familiei microprocesoarelor. • Semnal de întrerupere de la portul serial. A – Registrul acumulator. pe ansamblul unui program. Structuri numerice suport pentru echipamentul de conducere al unui robot 181 182 CONDUCEREA ROBOŢILOR unul dintre termeni. DPL) şi se utilizează pentru adresarea memoriei externe. ii) ACC atunci când se apelează distinct conţinutul acumulatorului. Dacă. 5. 5. la efectuarea unei operaţii. dacă survine un salt la o altă adresă (la o altă secvenţă din program) decât cea consecutiv următoare. Transferurile între registre trebuie efectuate prin intermediul acumulatorului. IP – (Interrupt Priority) (fig. e un registru pe 16 biţi (DPH. Registre generale – folosite de utilizator. În registrul (pereche) SP se păstrează „vârful stivei”. permite validarea/invalidarea întreruperilor (vezi fig. Nici o instrucţiune nu are formatul mai lung de trei octeţi. Aceste registre sunt folosite ca registre auxiliare în diverse operaţii sau pentru a stoca temporar date. a semnalelor de întrerupere survenite. mai jos. deşi apare drept o complicaţie în funcţionare. primul extras”: Ultima informaţie depusă în stivă este cea dintâi extrasă.23). iar codul numeric al instrucţiei conţine mesajul de a folosi în mod automat conţinutul său. . se mai spune că au „numere ataşate”. SP – Stack Pointer tradus cu Indicator de stivă. scurtează esenţial timpul de execuţie. ceea ce. Este organizată pe principiul LIFO (Last in first out). fiind automat subînţeleasă. Stiva (stack) este un spaţiu din memorie folosit pentru păstrarea informaţiilor importante ce nu trebuie pierdute. 5. Astfel. adică adresa ultimei adrese care este ocupată în stivă. 5. localizate în spaţiul de memorie RAM al µC între adresele 80H ÷ FFH (vezi fig. cuvântul (binar) care reprezintă o instrucţie (codul intrucţiunii) poate fi mai scurt. T1 – semnale emise de registrele de numărare/contorizare. În fig. SFR – În varianta standard. PSW – Stările din sistem după efectuarea operaţiilor de către UAL sunt „semnalizate” cu registrul PSW (Programme Status Word – Registrul de Stări).5. Registrul IE al µC 8051 Prin stabilirea corespunzătoare de valori pentru biţii IE. Folosind o structură bazată pe acumulator. la încheierea unui ciclu de operaţii efectuat de unul dintre acestea. Un bit al acestui registru este denumit flag (în româneşte fanion). IE – Interrupt Enable. Fig. Observaţie: Pentru acumulator se folosesc 2 notaţii: i) A când referirea la acest registru este implicită. este prezentată dispunerea fanioanelor ce compun PSW şi semnificaţia acestora. în care se poate accesa direct fiecare bit al lor. şi rezultatul unei operaţii efectuate este depus în acumulator. Registrul IP permite stabilirea priorităţii întreruperilor. locaţia unuia dintre operanzi este cunoscută implicit (acumulatorul).19. Fig. 5.) permite stabilirea priorităţilor în deservire (înaltă sau scăzută). La µC 8051 sunt posibile 5 surse de la care pot surveni semnale de întrerupere a derulării programului curent: • INT0. simultan. Conţine unul dintre operanzii instrucţiunilor aritmetice/logice şi rezultatul operaţiei efectuate.Cap. la microprocesoarele de uz general. semnalele de întrerupere pot sau nu să fie acceptate. INT1 – semnale externe de întrerupere. adresa de început a stivei este 07H.21. Registre adresabile pe bit – în spaţiul de memorie RAM cuprins între adresele 20÷2F se află 16 registre.19. o simplificare majoră: permite scurtarea instrucţiunilor. Sunt prezentate. Setul de instrucţiuni al 8051 permite poziţionarea pe o valoare dorită a fiecăruia dintre aceşti 210 biţi. câteva dintre acestea: DPTR – Data Pointer. Se mai poate spune că: µC 8051 are 210 locaţii de memorie (biţi) direct adresabile (16X8 + biţii SFR). Registrul PSW B – Conţine unul din operanzii instrucţiunilor de înmulţire şi împărţire. atunci aceasta nu mai trebuie specificată explicit în formatul instrucţiunii. Tot adresabile pe bit sunt şi registrele SFR (vezi mai jos). Modul de operare cu implicarea cvasipermanentă acumulatorului. prin valori inscriptibile în conţinutul său.5. a fost posibilă reprezentarea pe 8 biţi pentru marea majoritate a instrucţiunilor lor. La µC 8051. eventual. Bitul C (Carry) al PSW poate fi folosit şi ca un acumulator de 1 bit. • T0. adică „ultimul sosit. este. Unele sunt dispuse în memoria RAM în 4 grupuri (banks) a câte 8 registre fiecare notate (în fiecare banc) cu R0÷R7. Biţii direct adresabili au adrese distincte (de 1 octet).

3. Sistemul de întreruperi În aplicaţiile specifice roboticii ca şi în conducerea proceselor. În starea iniţială a µP. Acest lucru este posibil prin includerea liniei de comandă PSEN . TL0/TH0 (Timer0 Low/High) – Conţin valoarea numărului utilizat/obţinut de circuitul de numărare/temporizare T0.9. Registrul IP al µC 8051 P0.9. 5.4. la mai multe programe simultan. a registrelor generale şi SFR.Cap. pentru memoria de date. Memoria de program (ROM) µC 8051 poate adresa maximum 64 Kbyţi memorie program (vezi fig. SBUF (Serial Port Buffer) – Conţine datele transmise sau recepţionate de portul serial. prin acelaşi procedeu de înscriere (prin program) de valori corespunzătoare pentru biţii săi.5).5 IP. P1. Observaţie: Orice µP/µC este dotat cu circuite denumite de numărare/temporizare sau timere (vezi 5. În spaţiul cuprins între adresele 20H÷2FH se află 16 registre adresabile pe bit.7 IP. Primii 32 de octeţi din aceasta sunt alocaţi celor 4 bankuri cu grupurile de registre numerotate R0 ÷ R7. adaugată eventual suplimentar. Memoria poate fi internă sau externă.21. La iniţializare (bootare) este selectat primul bank de memorie. însă are o singură magistrală internă. Ele permit configurarea liniilor porturilor ca intrări sau ieşiri.Organizarea memoriei la µC 8051 Microcontrolerul 8051 are spaţii separate pentru memoria program. Fig. modificarea interactivă a memoriei de date.22. TL1/TH1 (Timer 1 Low/High) – Conţin valoarea numărului utilizat/obţinut de circuitul de numărare/temporizare T1. TCON folosite în lucrul cu timerele (vezi 5.9. precum şi lansarea în . Sistemul de întreruperi este.1 IP. Organizarea memoriei program la µC 8051 5.22.3 IP. de altfel. prin program se pot înscrie valori dorite în oricare bit al său. De asemenea.). estenecesar modul de operare în timp real.5). care controlează comunicaţia prin portul serial şi încărcarea în memoria RAM a datelor iniţiale. în acest spaţiu de memorie se încarcă un program numit monitor. respectiv indicarea stării transmisiei şi recepţiei seriale. 5.0 ------PS PT1 PX1 PT0 PX1 rezervat rezervat rezervat bit prioritate bit prioritate bit prioritate bit prioritate bit prioritate execuţie a unor programe.4 IP. SCON (Serial Port Control) – Are în conţinutul său biţi pentru selecţia modului. de accesarea memoriei de date. 5. P3 – sunt registre ataşate porturilor cu acelaşi nume.23.3. Modul de lucru al Unităţii Centrale se bazează şi pe împărţirea în felii de timp a timpului său de lucru.5. 5.2. Memoria de date (RAM) Organizarea memoriei de date este ilustrată în figura 5. Mulţi autori consideră programul monitor ca fiind un mic sistem de operare. TMOD.9. În aplicaţiile cu caracter general.9. respectiv. prin multiplexare.3. permanent folosit întrucât şi în mod obişnuit procesorul lucrează. întrerupere întrerupere întrerupere întrerupere întrerupere port serial timer 1 externă 1 timer 0 externă 0 Fig. 5. Modul de lucru în timp real are la bază facilitatea (micro)calculatorului. Primii 4 Kbyţi (4096 locaţii) pot fi selectaţi din interiorul µC. liniile porturilor sunt conectate ca linii de intrare. 5. Registrele R0÷R7 sunt folosite ca registre auxiliare în diverse operaţii sau pentru a stoca temporar diverse valori. În acest spaţiu este organizată şi stiva. în general. (folosit în structurile hardware de conducere) de a dispune de un perfecţionat sistem de întreruperi. P2. Ceilalţi 80 byţi disponibili (de la adresele 30H÷ 07FH) sunt la dispoziţia utilizatorului pentru depozitarea de date frecvent utilizate sau în aplicaţii de mare viteză (în limba engleză scratchpad – „bloc pentru notiţe”). Structuri numerice suport pentru echipamentul de conducere al unui robot 183 184 CONDUCEREA ROBOŢILOR IP.6 IP. Observaţie: La un registru adresabil pe bit. chiar „on-line” cu desfăşurarea procesului condus.2 IP.9. respectiv pe alocarea unui număr de astfel de felii pentru deservirea de programe (procese) diferite. tot monitorul asigură modalităţi de afişare. care diferenţiază accesarea memoriei de program.1.

Structuri numerice suport pentru echipamentul de conducere al unui robot 185 186 CONDUCEREA ROBOŢILOR Notă: Localizarea exactă a stivei este importantă fiindcă.5. Când survine o întrerupere.Cap. la încheierea transmisiei/recepţiei unui byte de informaţie. timer. Fig. Sistemul de tratare a întreruperilor. 5. Semnalul de întrerupere este generat hardware. • 1 generat de portul serial. anume scris anterior de programator. denumit subprogram (rutină) de deservire. La producerea ei.25. sunt reprezentate structura LIFO (Last In First Out) a stivei şi efectul instrucţiunilor PUSH şi POP. Harta memoriei RAM interne a µC 8051. după dorinţa programatorului.5.23. • 2 interne generate de cele 2 timere. Apoi.24.24. Execuţia unui program de tratare a unei întreruperi se încheie cu o instrucţiune de salt de revenire la programul ce a fost întrerupt.5.: Fig. ce sunt preluate prin pinii INT0 şi INT1 ai capsulei. Circuite de numărare/ temporizare (CTC) Fig.) . respectiv contorizarea intervalelor de timp dintre momentele în care se produc evenimente. În limba română se foloseşte terminologia de circuit de numărare/temporizare. prin programarea. simplu. generală de această dată.9. ca adresă de început al stivei se foloseşte locaţia 02FH. Uzual la µC 8051. evenimentul ce a provocat-o este deservit (sesizat şi prelucrat) de un subprogram. Principiul stivei Semnalele de întrerupere pot surveni din exteriorul microprocesorului sau din interiorul său. Evident că şi comanda Reset generează o întrerupere.4. • Se salvează în stivă conţinutul PC(adresa următoare din programul curent) şi • Se introduce (automat) în PC adresa rutinei de tratare a întreruperii sosite. Secvenţa de derulare a evenimentelor este reprezentată în figura 5. mai întâi se incrementează PC.2. stiva este folosită la depozitarea (cu instrucţiunea PUSH) conţinutului lui PC.8. semnalele de întrerupere pot fi validate sau invalidate (acceptate sau neacceptate). • Se termină ultima operaţie aflată în lucru.5. fie prin comutarea unor biţi ai unor registre interne (adică a unor bistabile). Programul aflat în derulare este întrerupt numai după ce felia de timp alocată operaţiilor aflate în curs s-a încheiat. La µC 8051 se foloseşte în acest scop registrul EA. µC 8051 are 5 surse pentru semnale de întrerupere: • 2 externe.25. Sisteme de achiziţii de date. dar se acceptă de obicei şi denumirea din engleză (vezi şi la capitolul 3.9. 5. După cum s-a arătat în paragraful 5. În figura 5. la fiecare întrerupere.f. Orice sistem cu µP/µC este dotat cu circuite dedicate cu care se efectuează numărarea evenimentelor de interes. Întreruperea apare la producerea unui eveniment care necesită şi cauzează suspendarea temporară a lucrului la programul aflat curent în derulare. paragraful 3. Astfel de circuite sunt denumite în limba engleză timer/counter (CTC) sau. se petrece o secvenţă de evenimente de tipul: alte date importante (după caz). fie de un semnal extern propriu-zis.

• Când conţinutul TH şi TL ajunge la FFFFH. Se înscrie o valoare iniţială în registrele TLi şi THi. IE1 se poziţionează valorile numerice care marchează sosirea sau nu au unei solicitări externe de întrerupere. se prezintă schema bloc a circuitului CTC intern al µC 8051: La un circuit CTC sunt importante următoarele intrări (vezi fig. Cu biţii TR0 şi TR1 se porneşte. Prin setarea adecvată a biţilor IT0.este intrarea de la care se stabileşte modul de operare al circuitului b) Funcţionarea în regim de numărător (counter) Serveşte la contorizarea de evenimente. respectiv TL1. fie la o tranziţie a sa. încheierea duratei pentru care a fost programat. Observaţie: Se utilizează intrarea externă Ti. cu câte un semnal emis spre exteriorul său. (vezi fig. respectiv TF1. Registrul TCON al µC 8051 În figura 5. µC 8051 conţine 2 astfel de CTC. dedicate lucrului cu circuitele CTC.5. programul parcurge următoarele etape: • Se poziţionează bitul C / T din registrul TMOD pe 1. semnalează încheierea operaţiei atribuite (contorizare sau numărare) lui T0. sunt alte 2 perechi de registre SFR.28): • C/ T . Pe locaţiile IE0.5. • • • • Fig.).28. i = 1÷2. . • regimul timer (regimul de temporizator): în care circuitul CTC devine generator de intervale de timp (cu valori programabile) şi semnalează. i = 1÷2.28. Un CTC are două variante de operare: • regimul counter (regim de numărător): în care circuitul numără impulsuri recepţionate la una dintre intrările sale. după caz.Cap. la care sosesc impulsurile exterioare care trebuie a) Funcţionarea în regim de timer La funcţionarea în acest regim. numărarea se încheie şi fanionul TFi. Registrul TMOD al µC 8051 TCON (Timer Control) este folosit în lucrul cu timerele şi întreruperile. după ce a fost declanşat. • INT – este intrarea de tact. Registrele TL0.5.26. sunt parcurse următoarele etape: Se poziţionează. pentru a specifica timerul care urmează a fi folosit. în ritmul semnalului de tact intern (cilcu maşină). Structuri numerice suport pentru echipamentul de conducere al unui robot 187 188 CONDUCEREA ROBOŢILOR Un CTC funcţionează. Fig. Circuitul CTC al µC 8051 • GATE – este intrarea CTC care se foloseşte pentru validarea/ invalidarea Fig. unul dintre registrele SFR importante. TF0. degrevând–o de sarcina numărărilor simple.27. Start timer (se declanşează timerul). sau ambele timere. IT1 semnalul extern de întrerupere este considerat activ fie pentru un nivel al său.5.26 şi 5.27. se programează regimul de lucru pentru aceste circuite (fig. • Se validează intrările aferente semnalelor (impulsurilor) externe. Pentru aceasta. respectiv. impulsuri care marchează evenimente de interes produse (de pildă într-un proces condus). prin program. i = 1 ÷ 2 (registrul TCON) este setat pe valoarea 1. după caz. când e cazul. iar trecerea sa pe nivelul 1 permite intrarea sa în funcţiune). numărate. denumite T0 şi T1.TH1. Timerul începe să numere în sens crescător. iar trecerea acestei intrări pe nivelul 1 determină operarea în regim numărător). Pentru stabilirea regimului de funcţionare al acestora este prevăzut un registru special TMOD. 5. Ele conţin numerele binare folosite la sintetizare unor intervale de timp dorite sau cele obţinute la o numărare de evenimente. fiecare dintre aceste circuite. respectiv T1.5. Prin înscrierea de valori binare adecvate în TMOD. (dacă intrarea C/ T este adusă la nivelul logic 0 CTC funcţionează în regim timer. pentru unul.). 5. independent de Unitatea Centrală a µP.26. funcţionării lui (poziţionarea intrării GATE pe nivelul logic 0 opreşte circuitul. bitul C/ T din registrul TMOD pe 0. TH0.

Aplicaţiile pentru robotică sunt un caz tipic. Fig. dacă se prestabileşte. CTC poate fi număra în cadenţa frecvenţei oscilatorului µC sau cu până la 1/24 din această frecvenţă. compus din TLi şi 5 cei mai puţin semnificativi biţi ai THi. T0. Porturile P0 şi P2 nu se pot utiliza ca linii I/O generale dacă µC are şi memorie externă. declanşarea şi blocarea se comandă cu semnalul extern de la INT .9. fie ca linii de ieşire. fiind accesabile ca orice locaţie de memorie. i = 1 ÷ 2. Declanşarea proceselor de numărare/temporizare se pot stabili prin poziţionarea pe 1 a biţilor TRi. iar pornirea timerelor se face numai prin TRi. TxD. din registrul TCON şi/sau a biţilor GATEi. cu transmisie serială sau paralelă a informaţiilor au un rol esenţial în dialogul (schimbul de semnale) cu procesul. fiecare în mod diferit. 5. La folosirea tactului intern. La aceşti pini se conectează şi semnalele RxD. i = 1 ÷ 2. Pinii portului P3 sunt conectaţi spre interiorul µC prin multiplexare. întrucât liniile celor 2 porturi sunt utilizate la adresarea acesteia. La µP/µC utilizate în conducerea proceseler porturile de intrare/ieşire. cu conţinutul lui THi.1.5. 5. • Modul 2: ca registru numărător operează numai TLi. Numai portul P1 este utilizat pentru dialogul µC cu dispozitive externe (periferice). acela de numărător sau cel de temporizator.6.30. Programând GATEi = TRi = 1.5. fiind sintetizate 2 numărătoare şi un temporizator. WR. T1. Registrele aferente porturilor sunt amplasate în spaţiul memoriei de date. CTC al µC al 8051 are 4 moduri de lucru. Modurile de funcţionare ale circuitului CTC al µC 8051 Observaţie: Timerul poate efectua numărarea în ritmul unui impuls de tact intern sau extern. Structuri numerice suport pentru echipamentul de conducere al unui robot 189 190 CONDUCEREA ROBOŢILOR • Start timer. Acestea sunt prezentate sunt prezentate în fig. Dacă nu se foloseşte un tact extern se poziţionează GATEi = 0.29. 5. Programarea pe intrare sau ieşire se face prin atribuirea de valori corespunzătoare biţilor corespondenţi din registrele SFR Pi.29. 5.9. în ritmul semnalului de tact extern. Fiecare linie este prevăzută cu câte un etaj amplificator de magistrală bidirecţional. Pi = 1 intrare). • Modul 3: cel 2 timere operează. adică pot fi programate fie ca linii de intrare spre µC. automat.6. fiind utilizaţi multifuncţional. i = 1 ÷ 2. Fig. 5.30). i = 1 ÷ 2. Fiecare port are un registru intern SFR ataşat şi un registru tampon care stochează informaţiile transferate spre/dinspre exteriorul µC (fig. Porturile paralele Microcontrolerul 8051 conţine 4 porturi paralele (P0÷P3) de intrare/iesire de câte 8 biţi fiecare. Liniile acestor porturi sunt bidirecţionale. • Modul 0: operează ca un registru numărător pe 13 biţi. • Modul 1: operează ca un registru numărător pe 16 biţi compus din TLi şi THi. iar la depăşirea capacităţii sale de numărare. din acest punct de vedere. din registrul TMOD. Porturile paralele ale µC 8051 . Porturile µC 8051 Porturile unei structuri numerice de prelucrare a semnalelor au rolul de a face transferul de informaţie între blocurile sale interne şi dispozitivele externe. TLi se reîncarcă. Indiferent de rolul îndeplinit.Cap. i = 1 ÷ 2. INT1. RD. i = 0 ÷4 (Pi = 0 – ieşire. • Timerul începe să numere în sens crescător. INT0.

JMP. Registrul SCON al µC 8051 5.32. de la „addition”. stabilite de proiectant. de la „jump”. Fig. . între polul pozitiv al sursei de alimentare şi pinul de ieşire. pentru cazurile de curent de sarcină mare. Fiecare instrucţiune în limbaj-maşină este o succesiune de cifre binare. Limbajele cod maşină au ca principal dezavantaj scrierea greoaie a programelor şi nu se mai folosesc la scrierea de programe. adică „salt” etc. Liniile porturilor P1. Ca principiu.1. la ieşirile circuitelor integrate digitale.6.5. de pildă. programe care transformă o schemă logică (organigramă) în limbaj asamblare sau chiar în cod maşină. este aceea a nivelului (ferm) distinct al semnalelor vehiculate.5. constituit din coduri numerice. un circuit integrat utilizat la efectuarea de calcule şi operaţii. Portul serial Portul serial al µC 8051 este implementat pentru funcţia de transfer serial (vezi paragraful 5. în limba engleză. O abatere de la valorile nivelurilor semnalelor. Rolul portului serial Programarea modului de funcţionare al acestui port se face cu registrul SFR SCON (Serial Control). Programarea µP/ µC Fig. Fig. Liniiile utilizate pentru transferul serial de biţi sunt TxD (P3. este necesar ca nivelul de 1 logic să fie.9.7V.5. Programul care se translatează se numeşte program sursă.36. întrucât ele derivă din numele. Fiecare instrucţie are un echivalent în cod maşină (un cod numeric aferent). 5.9. Au fost denumite rezistoare weak internal pull-up.). aşa numitele rezistenţe pull-up. Instrucţiunile diferă de la un (micro)calculator la altul. Rezistenţă pull-up Un rezistor pull-up de la o ieşire I/O a unui µP/µC are rolul de fixa (a ridica. pentru instrucţiuni şi operanzi. Programele pentru microprocesoare şi microcontrolere se scriu în limbaj de asamblare (assembly language) (vezi şi paragraful 5.) pentru recepţie. care se mai numesc şi mnemonice.7. programele scrise în limbaj de asamblare trebuie traduse (translatate) în cod-maşină. poate fi programat numai în aşa numitul limbaj-maşină. 5.7. Aceste rezistenţe pot sau nu să fie conectate la liniile de port. Rezistenţa de pull-up se poate conecta exterior. pe bază de program. al operaţiilor pe care le exprimă (ex. Structuri numerice suport pentru echipamentul de conducere al unui robot 191 192 CONDUCEREA ROBOŢILOR Una dintre problemele frecvente. standard admise.1.3. au fost dezvoltate programe cu ajutorul cărora pot fi programate microcontrolerele fără a cunoaşte limbajul de asamblare.31.33. Este considerat şi acesta greoi şi de aceea. 5. ce survin în sistemele digitale.Cap.). provoacă erori la interpretarea lor.9. a “înălţa”) nivelul logic 1. în tehnologia CMOS TTL.5.).0. Pentru a putea fi executate de un calculator. Cea mai importantă caracteristică a microprocesoarelor/microcontrolererelor este aceea că pot fi programate.2. soluţia cea mai des utilizată este aceea de a se conecta.33. după cum se arată şi în fig. Există. iar cel obţinut după translatare se numeşte program obiect. în toate condiţiile de funcţionare. inclus în programul monitor (vezi 5. Ele au fost realizate tocmai cu acest scop.) de informaţii între µC şi dispozitive exterioare acestuia. P2 şi P3 ale µC 8051 au prevăzute rezistenţe pull-up (şi) în interiorul integratului. peste 4. Ele se folosesc dacă liniile sunt programate ca ieşiri.: ADD.1. Un limbaj de asamblare e constituit dintr-un număr de instrucţiuni. Aceste coduri sunt bazate pe sistemul binar de numeraţie şi diferă de la un tip de calculator la altul. De exemplu. prin care se înlocuiesc codurile numerice cu coduri mnemonice. prin programul asamblor.) pentru transmisie şi RxD (P 3. dat în fig. Pentru a asigura această cerinţă. Limbajul de asamblare este limbajul de cel mai scăzut nivel în care operatorul uman mai scrie un program. chiar cuvântul englezesc „mută”. MOVE.

instrucţiuni de salt condiţionat sau necondiţionat. byte adună conţinutul acumulatorului cu octetul din corpul instrucţiunii şi depune rezultatul în acumulator. chiar în limbaje de nivel înalt. consecutiv. decrementatre. cum este. în care constrângerile de execuţie sunt deseori severe. Apoi decrementează conţinutul indicatorului de stivă (SP). scris în formatul instrucţiunii.a.d. depus în acumulator. folosite pentru această familie de instrucţiuni sunt Programme Follow Instructions sau Program Flow. c) Instrucţiuni de schimb (exchange) de date.0.@sursă – scade din conţinutul acumulatorului. Formatul unei astfel de instrucţiuni este XCH A. SAU-EXCLUSIV. 67H sunt exemple de instrucţiuni de tranfer de bit (C→P0.d. SUBB A. împărţire. P0. numărătorul de adrese (PC) este secvenţial incrementat. au fost dezvoltate medii de programare adecvate. cât şi în limbaje de asamblare. Structuri numerice suport pentru echipamentul de conducere al unui robot 193 194 CONDUCEREA ROBOŢILOR În momentul actual. CLR 63H sunt 2 exemple de instrucţiuni cu care se poziţionează (Set). de exemplu. destinaţie. g) Instrucţiuni de transfer al controlului. C este un limbaj uşor de înţeles.a. au fost implementate soluţii prin care cele două aspecte să poată fi armonizate. byte comandă executarea operaţiei SAU între conţinutul acumulatorului şi octetul scris în instrucţiune. este considerat tipic cazul conducerii proceselor rapide. Observaţie: Orice instrucţiune care are scrisă în corpul său litera A.m. ANL A. Acest lucru poate fi critic la aplicaţiile de timp real. SAU. setare (pe valoare 1).Cap. fanionului C. Întrucât tratarea detaliată a microprocesoorelor/microcontrolerelor nu reprezintă subiectul lucrării de faţă. permite adresarea directă a memoriei (fizice). La aceste instrucţiuni. ştergere (Clear). în limba engleză. POP dest “extrage” din “vârful stivei” (din ultima sa locaţie) informaţia de un byte şi o depune în registrul destinaţie. o scurtare importantă a lungimii instrucţiunilor. d) Instrucţiuni de lucru cu stiva: PUSH byte. SETB 63H. Denumirile. prezentarea este succintă. Indiferent de denumirea preferată. ADD A. de asemenea. iar programatorul este nevoit să folosească limbajul de asamblare. incrementează conţinutul registrului SP (vezi paragraful precedent) şi apoi “depune în vârful stivei” bytul scris în chiar conţinutul instrucţiunii. ŞI. Au fost create emulatoare (simulatoare) hardware şi/sau software care permit unei structuri hardware/software să efectueze funcţiile. MOV C. ş. Limbajul C are facilităţi pentru operare la nivel de bit sau a câmpurilor de biţi. apoi se depune rezultatul în acumulator. trebuie înţeles că. la o parcurgere fluentă a unui program. “Dynamic CTM C6805” pentru familia de microcontrolere M68HC05. Operaţiile logice. 5. Observaţie: În general.7. astfel. implicit. sursă – adună conţinutul acumulatorului cu cel al registrului sursă şi depune rezultatul în acumulator. Astfel. în alt registru. din algebra booleană. Odată cu extinderea aplicaţiilor scrise în limbajul C şi datorită faptului că microprocesoarele tradiţionale sunt cu o structură internă concepută pentru a fi programate în limbaj de asamblare. respectiv se şterge (Clear) bitul cu adresa 63H (bitul cu numărul ataşat 63). Primul şi cel mai utilizat este limbajul C deoarece. în limba română se folosesc diferite formulări: instrucţiuni de transfer al controlului. byte şi determină schimbarea conţinutului acumulatorului cu octetul ce urmează chiar în conţinutul (corpul) instrucţiunii. au fost dezvoltate arhitecturi hardware ale microprocesoarelor care să fie eficiente atât pentru programarea în C. instrucţiuni de ramificaţie. iar un programator poate înţelege programe întocmite de un altul. Exemple: ADD A. comparare. înmulţire. unul dintre operanzi se află (obligatoriu) în acumulator. e) Instrucţiuni aritmetice µC 8051 poate efectua adunare. Din acest punct de vedere. în care stările sistemelor conduse se schimbă cu mare viteză. iar rezultatul operaţiei va fi depus. f) Instrucţiuni logice. C→ 67H). CLR C sunt instrucţiunile prin care se stabileşte prin program conţinutul . sursă înseamnă efectuarea operaţiei logice ŞI între conţinutul acumulatorului şi cel al registrului sursă. ORL A. ajustare zecimală. Implicarea acumulatorului este înscrisă chiar în codul numeric al instrucţiunii respective. în succesiunea adreselor generate 5. este mai apropiat de nivelul hardware al µC. Rezultatul va fi. deşi este limbaj de nivel înalt.m. presupune. din memoria program. incrementare. participarea conţinutului acumulatorului la efectuarea operaţiei. Dezavantajul programelor scrise în C constă în faptul că el se execută (rulează) mai lent decât cele întocmite în limbaj de asamblare. Se obţine. b) Instrucţiuni de transfer de date de 1 bit µC 8051 are posibilitatea de a efectua transfer de informaţie de la un bit la altul al registrelor sale adresabile pe bit. sursă şi semnifică transferul conţinutului unui registru sursă.0 şi MOV C. instrucţiuni de salt sau apel de subrutine. complementare. Nu în ultimul rând. Instrucţiunile µC 8051 În acest paragraf sunt prezentate câteva dintre principalele instrucţiuni ale µC 8051.1. scădere. cu un eventual împrumut (bitul Carry). Fanionul C (Carry. la un limbaj de nivel înalt structura hardware nu mai este transparentă pentru programator. se efectuează tot cu participarea implicită a acumulatorului. ş. uneori chiar să scrie linii din program în cod maşină. respectiv să execute programele unui anume tip de (micro)calculator. adică programele sunt mai uşor de scris. doar rezumativă: a) Instrucţiuni de transfer de date Modelul tip al acestei categorii de instrucţiuni este MOV dest. ce are la bază modificări importante în limbajul C. desigur. tendinţa este se să se programeze microcontrolerele în limbaje mai avansate. Pornind de la denumirile originale.9. în acumulator. foarte productiv. iar funcţiile pot fi apelate cu pointeri la ele. iar instrucţiunile sunt transferate. conţinutul registrului indicat de conţinutul registrului sursă şi depune rezultatul în acumulator. bitul 7 al PSW) se poate folosi (şi) ca acumulator de 1 bit. SETB C.

registrele nu sunt scrise cu literele ce le denumesc. Codul trebuie scris în complement de 2.00H (0703 E500) – adresare implicită a acumulatorului (şi directă a datelor). Valorile conţinute în registrele scrise în corpul instrucţiunilor respective sunt operanzii operaţiei ce se efectuează. d) Adresarea indirectă – la care adresa registrelor sursă şi/sau destinaţie este înscrisă în registrele specificate literal în corpul instrucţiunii. Efectul instrucţiunii este de a transfera . Toate SFR (ACC. incrementat cu 2. se pot da instrucţiunile de tipul: MOV@Ri. revenire dintr-un subprogram apelat cu ACALL sau LCALL. şi celelalte) sunt accesabile fie prin numele lor (literal). Adresa locaţiei destinaţie este dată distinct (imediat) prin codul de adresă exprimat pe 11 biţi. apelare necondiţionată a unui subprogram. scriind codul pe un octet al adresei lor fizice. după caz. memoria program internă. În plus. b) Adresare implicită sau adresarea de registre ale CPU. de la -127 (zecimal). se observă că la fiecare dintre ele trebuie specificată locaţia operanzilor ce trebuie folosiţi. MOV 0E0H. Cele 3 instrucţiuni din exemplul de mai jos determină execuţia aceleiaşi operaţii. Exemple: MOV A. JMP @A + DPTR – Salt lung cu adresa calculată prin indexare. cu valoarea sa propriu-zisă. ci oricare dintre registrele interne situate între adresele 30H-7FH din RAM-ul intern. întreruperile. fie registrul destinaţie. memoria de date externă. MOV ACC. Notă: La apelarea unui subprogram. Specificarea se poate face în mai multe feluri. folosit la denumirea acestui mod de adresare. 5. dar modul de adresare. De aceea. determină efectuarea unui salt la o adresă care se calculează (automat) prin însumarea conţinuturilor registrelor ACC şi DPTR. dacă sunt validate. numite în tehnica de calcul moduri de adresare. informaţiile importante se salvează în stivă. 70H – transferă conţinutul acumulatorului la adresa 70H. trebuie înţeles ca mod de a se indica (preciza) locaţia operandului care trebuie preluat. În corpul instrucţiunii este scris codul numeric al decalajului noii adrese. În cod complement de 2. în raport cu cea curentă.A. fie registrul sursă. Adresa de salt (jump) se compune din cei mai semnificativi 5 biţi ai PC. Avantajul este că. Adresa reală se calculează într-un mod mai sofisticat. Câteva exemple: ACALL<adresă 11 biţi> – Absolute Call. PSW. scrise între paranteze): MOV A. deşi se referă tot la registrele interne ale Unităţii Centrale. conţinutul PC trebuie modificat (brusc). Sensul expresiei mod de adresare. Subprogramul apelat se află la “mare depărtare” de cel curent. AJMP 706H – Salt necondiţionat la adresa dată de codul de adresă de 11 biţi conţinut de instrucţiune. Observaţie: notaţia ACC se foloseşte dacă asamblorul “ştie” adresa acumulatorului. (Asta înseamnă că operandul se află în memoria program). adresa destinaţiei este dată imediat în cuvintele 2 şi 3 ale ei. Sensul termenului implicit. Locaţiile operan- zilor pot fi: registrele interne ale µP/µC. Operandul sursă este dat “în clar”. iar la RET ele se preiau din nou in PC şi alte registre. de un octet (la care ele se află în memoria internă). memoria program externă sau porturile de intrare. SJMP < adr rel > – Short jump. A. MOV R4. prin acest mod de adresare.R7. registrele porturilor P0÷P3. până la +128. i = 0÷7. Pentru aceasta. memoria de date internă. Adresa locaţiei este stabilită relativ la cea curentă. La această instrucţiune. la începutul execuţiei instrucţiunii Numărătorul de Adrese (PC) este incrementat cu 2. compunându-se (în mod automat) primii 5 cei mai semnificativi biţi ai conţinutului PC (cel din momentul recepţionării instrucţiunii ACALL incrementat cu 2) cu codul de 11 biţi (care constituie cei 11 mai puţin semnificativi biţi ai noii adrese). ca în instrucţiunile MOV R0.7. #11H – pune valoarea 11 HEX în R4. Semnul @ înseamnă “adresa unui operand”. pe 8 biţi se pot scrie 255 de valori distincte. Ca exemplu. în terminologia de specialitate. Salt scurt. Modurile de adresare ale µC 8051 sunt: a) Adresare imediată – operandul sursă se află distinct scris în corpul instrucţiunii. frecvente situaţii în care programul trebuie continuat cu secvenţe memorate la alte locaţii decât cea natural consecutivă. pot cauza o “deviere” de la execuţia secvenţială a programului. Cu 11 biţi se pot scrie un număr de 211 = 2048 de adrese. Moduri de adresare La prezentarea celor câteva tipuri de instrucţiuni în paragraful precedent. folosit în fiecare. PUSH 30H – salvează în stivă conţinutul registrului de la adresa 30H.2. Apar însă. fie prin adresare directă. Întrucât. saltul se poate efectua numai într-un spaţiu de 2Kbyte de memorie.9. B. #11H – pune valoare 11 HEX în registrul B. Structuri numerice suport pentru echipamentul de conducere al unui robot 195 196 CONDUCEREA ROBOŢILOR prin simpla incrementare a PC. MOV A. apelare “de departe”. TMOD. este acela că simbolurile literale ale unora dintre registrele interne ale Unităţii Centrale sunt “ştiute” de asamblor (ca adresă a lor.Cap. salturi condiţionate sau directe şi reveniri. LCALL <adresă 16 biţi> – Long Call. adresa lor fizică.00H (0705 8500E0) – adresare directă a acumulatorului. sunt unul dintre registrele Unităţii Centrale ale µC. fizică). şi cei 11 biţi ai codului (aici 706H). împreună cu instrucţiunea. ea este de un octet şi se folosesc registrele R0÷R7 ca “depozitare” de adrese. Dacă adresa operandului solicitat este în memoria internă. este diferit (vezi şi codurile numerice ale celor 3 instrucţiuni. în acest context. Au fost prevăzute mai multe instrucţiuni cu care conţinutul PC se poate modifica. PCON. ci se scrie. Este vorba despre instrucţiuni de ramificaţie. înscris în chiar corpul instrucţiunii. pentru acest caz. 2. faţă de adresa curentă (conţinutul PC aferent instrucţiunii SJUMP). fie ambele. c) Adresarea directă – se deosebeşte de cea implicită prin aceea că. adică o valoare imediată. Semnul # semnifică o dată propriu-zisă. spre a se efectua operaţia ce va fi comandată (declanşată) de instrucţiunea respectivă. se pot accesa nu numai registrele interne care au un corespondent “literal”.00H (0708 8500E0) – adresare directă a acumulatorului. Observaţii: 1. Asta înseamnă că. 5. RET – Return. în instrucţiune. saltul scurt se poate face în limita cuprinsă între cu 128 de locaţii în urmă şi până la cu 127 de locaţii înainte. De pildă: MOV B.

care va fi utilizat. f) Adresarea relativă – este modul în care adresa operandului. Principial. Adresa de bază se află fie în PC. numit Work register sau. De subliniat este faptul că. sunt uşor de programat şi de reprogramat Fig. a cărei adresă se află într-unul dintre registrele Ri. acumulatorul este implicit implicat în operaţii. există instrucţiuni care folosesc tehnica de calcul a adresei prin adăugarea unui deplasament la o adresă de bază. Dacă operandul. fie într-un alt registru. după cum se arată în figurile 5. Arhitectura hardware internă a PIC 16F84 este.2). Prima dintre instrucţiuni determină transferul în acumulator a informaţiei depozitate la adresa ce se calculează însumând conţinutul iniţial al acestuia cu valorea de 16 biţi ce se găseşte în DPTR. c) Are un spaţiu de memorie RAM de date relativ restrâns.31. simplu. Sunt frecvent utilizate pentru că. cum este exemplul instrucţiunii SJMP < adr rel >: salt scurt.9. deplasament) scrisă în corpul instrucţiunii.5. după caz. Structura internă are câteva elemente definitorii: a) Este construit pe o structură Harvard (vezi paragraful 5. d) Are un spaţiu de memorie de date EEPROM (64 byţi) e) Are spaţiul de memorie pentru stivă alocat hardware (construit anume) f) Memoria program este pe suport FLASH. având valorile zecimale cuprinse între –127 şi +128 (vezi şi mai sus. cel al µC 16F84. 5. e) Adresarea indexată – se foloseşte pentru accesarea de operanzi din memoria externă (maximum 64 Kb) sau porturi. Ca şi în cazul microcontrolerelor de uz general (vezi paragraful 5. Ca la toate µC/µP. În consecinţă. @A + DPTR.5. (accesabilă prin porturile P0 şi P2) adresa sa este una de 16 biţi şi se foloseşte registrul DPTR. dar spre deosebire de µC 8051. @DPTR. în structura lor internă. Microcontrolere PIC Denumirea de PIC este. Structuri numerice suport pentru echipamentul de conducere al unui robot 197 198 CONDUCEREA ROBOŢILOR conţinutul acumulatorului la o locaţie. La alte microprocesoare/microcontrolere adresarea relativă se defineşte ca atare. cu rol de Registre Index. numărul de instrucţiuni este în jurul a 35 (tipic 37). în mod uşor de constatat.30. Circuitele PIC de 8 biţi au fost concepute după 1975.9. Această familie de µC sunt de categoria RISC (Reduced Instruction Set Computer). prezentarea familiei PIC se face axat pe un exemplu concret. unul dintre registrele PC sau DPTR. în româneşte Controlere cu număr redus de instrucţiuni.1. de aceea. Schema bloc a acestui µC este prezentată din fig. Schema bloc a µC PIC 16F84 . ca interfaţă inteligentă pentru Unităţi Centrale de 16 biţi cu mare capacitate de calcul. unde codul adresei relative este unul de 8 biţi.8. se află în memoria de date externă. se calculează însumând a adresă (de bază) cu o constantă de decalare (offset. tipic 256 byţi. DPTR) sunt utilizate. şi la µC 8051. în această lucrare consacrată roboticii. una minimală. instrucţiunea MOVX A. Adăugarea literei X la MOV marchează “transfer de date din memoria externă”. pot funcţiona cu semnale de tact cu frecvenţa cuprinsă între 4 şi 20 MHz. 5. fie cea de date. adresa locaţiei este una de 16 biţi şi se folosesc. cele 2 registre de 16 biţi (PC. foarte frecvent folosit în diverse aplicaţii. h) Are 2 porturi I/E.Cap. @A + PC sunt exemple de acest tip. se utilizează conţinutul numărătorului de adresă. utilizarea registrului w nu este reprezentată în codul numeric al instrucţiunii care comandă utilizarea sa. ca bază de determinare a adresei corecte. la unele µP/µC nici nu este definită distinct. Acesta este exprimat în complement de 2. au un preţ scăzut. La unele µP s-au chiar introdus astfel de registre index. la acest mod de adresare. b) Conţine un singur registru acumulator. Sunt suficient de rapide.9. de care este nevoie. În cel de al doilea caz. la tipuri de instrucţiuni). adică are spaţiile de memorie de program şi de date distincte. W. Totuşi. fie cea de program. g) Este dotat cu un singur circuit CTC şi un Watchdogtimer. Instrucţiuni de tipul: MOVC A. MOVC A. Observaţie: Instrucţiunile µC 8051 MOVX şi MOVC se execută numai cu/prin acumulator. în primul rând. cu care se transferă în acumulator conţinutul locaţiei a cărei adresă este memorată în registrul DPTR. (variantele cu memoria internă de tip flash). Acesta este cazul şi la µC 8051. Într-adevăr. acest mod de adresare se aseamănă cu altele şi. Litera C adăugată la MOV marchează transferul unui octet din memoria externă. din limba engleză "Peripheral Interface Controller" şi provine de la destinaţia iniţială pentru care au fost proiectate prima dată astfel de circuite. de pildă. fiind utilizate la calculul adresei dorite. De pildă.34.30 şi 5. din RAM-ul intern.). desigur.

La µC PIC 16F84 WDT este construit astfel ca să genereze nominal un interval de timp de 18 msec. 01440H. se va produce un reluarea programului şi la o rulare corectă şi la o blocare. de fiecare dată când programul este executat corect şi timerul se apropie de terminarea numărării. Astfel. ceea ce înseamnă o capacitate de adresare de 213 = 8192 de locaţii de memorie. iar pe aceasta s-a demarcat cu o nuanţă de gri spaţiul care nu se află integrat. Este însă prevăzut şi un circuit prescaler.36. Accesarea unei locaţii cu adresa mai mare decât 03FFH generează o trunchiere (în engleză wraparound).1. prestabilită. se impune o comandă de revenire. memoria unui PIC are spaţiile de memorie dinstinct organizate. fiecare de câte 2 biţi. cu care perioada de timp se poate mări până la de 128 de ori.8. Fizic implementate în capsula integratului sunt 1024(1K x 14 biţi) de locaţii. 0104H. Organizarea memoriei program la µC PIC 16F84 Se consideră că din memoria program face parte şi stiva. programabil. după cum s-a mai subliniat mai sus de câteva ori. memorie Flash (adresele 0000÷03FFH). După o anumită perioadă de timp. De pildă. separat cea pentru program şi separat cea pentru date.5. Stiva µC PIC 16F84 are prevăzute 8 locaţii. Fig. Spaţiul de memorie program este Fig. fiecare locaţie având câte 14 biţi. Memoria PIC Fiind construit în arhitectură Harvard. indiferent dacă se rulează corect şi complet un program sau dacă survine un blocaj. pentru cazul funcţionării corecte trebuie prevenit resetul. a) Organizarea memoriei program µC PIC 16F84 are un Numărător de Adrese (PC) de 13 biţi. WDT nu necesită componente suplimentare externe. 0C40H. ori de câte ori numătoarea timerului WDT se încheie. 5. Asta se realizează prin înscrierea scrierea valorii zero în registrul WDT (instrucţiunea CLRWDT). Litera F din denumirea circuitului 16F84 semnifică utilizarea unei memorii de tip FLASH.Cap. la finele numărării (depăşire). În fig. care este implementată hardware.35. se provoacă resetarea. Structuri numerice suport pentru echipamentul de conducere al unui robot 199 200 CONDUCEREA ROBOŢILOR implementat cu una dintre variantele EPROM. Mecanismul funcţionează ca atare. la un microcontroler se pot întâmpla şi opriri în timpul execuţiei unor programe. WDT nu face altceva decât să numere până la numărul la care a fost anteprogramat şi să genereze o comandă de reîncepere a execuţiei unui program. fiindcă are un oscilator RC propriu încorporat (altul decât cel de bază al µC). 0440H. . 5. Dacă are loc o blocare.5. De aceea. 01840H şi 01C40H se “află” aceeaşi instrucţiune.9. şi considerată a fi prea lungă pentru oprirea din lucru a µP/µC.5. la adresele 0040H. WDT generează o comandă după care microcontrolerul revine la începutul programului în care s-a blocat. În astfel de situaţii. conţinutul WDT nu se anulează şi. ROM sau FLASH. În afara unor defecţiuni în structura hardware. Schema bloc explicativă a µC PIC 16F84 Timerul Watchdog (WDT) este un circuit care funcţionează autonom şi permanent (şi când µC utilizează funcţia SLEEP pentru a economisi energie). Watchdogul crează un mecanism pe care microcontrolerul îl foloseşte în cazurile de blocaj în rularea programelor.36 se prezintă harta memoriei program.

de pildă. 5.5. Prin valorile înscrise în aceste registre se stabileşte care linie de port este de intrare şi care de ieşire. În general. INTCON – cu denumirea derivată din Interrupt Control. EECON1 register – este amplasat la adresa 0088H şi guvernează evenimentetele ce au loc la/pentru lucrul cu memoria EEPROM. La modul de adresare indirectă. de fapt. a cărui adresă e cea scrisă în FSR. b) Organizarea memoriei de date µC PIC 16F84 este dotat cu o memorie de date RAM şi alta EEPROM.37. Se numeşte vector de întrerupere o adresă furnizată indirect de către un periferic care cere o întrerupere. Registrele SFR care sunt apelabile numai din câte un singur banc al memoriei RAM sunt: OPTION – registrul Opţiuni. (biţii 4 şi 5). sunt pentru registrele generale (GPR – General Purpose Registers). Structuri numerice suport pentru echipamentul de conducere al unui robot 201 202 CONDUCEREA ROBOŢILOR La adresa 0004H se află locaţia de depozitare a vectorului de întrerupere. oricare instrucţiune care utilizează INDF accesează. adresa nu este direct prezentă în corpul instrucţiunii. iar bancul 1 de la 80H la CFH).. INDF – Nu este un registru fizic existent. conţinutul registrului de la adresa scrisă în FSR. Celelalte SFR apelabile din ambele bancuri ale memoriei RAM de date sunt: STATUS – registrul de stări.2). este organizată pe registre. altele sunt adresabile numai din câte unul dintre bancuri. şi conţinutul registrului FSR.37. iar celelalte câte 68. Fiecare banc se extinde pe câte 80 de locaţii (Bancul 0 de la adresa 00H până la 04FH.5. TRISA.sunt registrele interne ataşate porturilor A şi B. • validare/invalidare conectare rezistenţe pull-up la liniile de port. respectiv Bancul 1. FSR – File Select Register. în tehnica de adresare directă şi/sau indirectă. în care “se află”. prezentată în fig.(Probabil că denumirea sa provine din Indifferent). EEDATA – registru pentru date citite/de scris din/în memoria EEPROM.Cap. o memorie externă nu poate fi adresată de PIC. aceasta fiind adresa de început a rutinei de deservire a cererii respective. Memoria de date RAM. În cazul µC PIC 16F84. este situat tot în spaţiul memoriei de date şi se compune din 2 registre: PCLATH. cu menţiunea că biţii 0 şi 1 ai acestui registru se folosesc la compunerea unor adrese. • recunoasterea după nivel/front al semnalului de întrerupere extern INT (bitul 6). Cu alte cuvinte. Organizarea memoriei de date la µC PIC 16F84 Primele câte 12 locaţii ale fiecărui banc sunt alocate registrelor speciale (SFR – Special Function Registers). este folosit pentru implementarea tehnicii de adresare indirectă. disponibil din ambele bancuri. specific la orice µP/µC (similar. Registrele SFR au un rol special în coordonarea modului de operare/ funcţionare al unui µP/µC. . E un nume dat (în limbajul de programare al PIC) pentru conţinutul oricărui registru de uz general. conţinutul locaţiei dată în FSR. • timerului TMR0 – cu tact intern/extern şi nivel/front al impulsului de tact. registrul de stare al PIC.38. care păstreazază cei mai semnificativi 5 biţi ai unei adrese şi PCL. Fig. EEADR – registru pentru adrese din EEPROM. vezi paragraful 5. adresa este compusă din bitul IRP al registrului STATUS (Register Bank Select bit). Este partiţionată în două bancuri distincte: Bancul 0. fiindcă nu are implementată vreo interfaţă aferentă dialogului cu o astfel de memorie. ca pointer (indicator) al adresei pentru datele solicitate de o instrucţiune. biţi săi sunt utilizaţi la stabilirea (prin poziţionare adecvată) sau verificarea (prin citire) opţiunilor adoptate pentru modul de funcţionare al: • prescalerului pentru timerele TMR0 şi WDT (ultimii 4 biţi ai OPTION). care se va prezenta detaliat în paragraful următor.9. Numărătorul de adrese. O instrucţiune poate accesa locaţia ţintă (şi) via registrul (virtual) INDF. La µC PIC 16F84 unele dintre registrele SFR sunt accesabile din ambele bancuri ale memoriei RAM. Selecţia unuia sau a altuia dintre bancuri se face poziţionând adecvat bitul RP0 din registrul SFR “STATUS”. cu PSW al µC 8051. în care se află ultimi 8 biţi ai unei adrese. de fapt. TRISB . La adresa 0000H se memorează vectorul întreruperii Reset. aşa cum se arată în fig. cu care se selectează bancul din memoria RAM.5.

Au fost denumite rezistoare weak internal pull-up. Întreruperea generată de memoria EEPROM. transformă linia de port corespondentă într-una de intrare. 4. Principial.8. Dacă. dacă registrul intern ataşat lui. b) conţine biţii de validare/invalidare ale întreruperilor. numit de tratare a întreruperii (vezi şi paragraful 5. 3. individual sau sau general. de pildă. nu se face o validare a producerii acestui efect. Întreruperi care semnalează producerea de tranziţii la PORTB (pinii săi RB7. 2. pe o funcţie sau alta a acestui pin.39.2. prin multiplexare. 5. este şters. 5.3. Registrul de control al întreruperilor INTCON păstrează toate informaţiile relevante pentru acest mod de lucru: a) semnalează toate cererile de întrerupere. TRISA (adresa 85H). Nici unul dintre evenimentele mai sus enumerate nu declanşează efectiv o întrerupere. şi ca intrare de tact extern pentru timerul TMR0. Întrerupere externă survenită la pinul RB0/INT al capsulei circuitului (un semnal recepţionat la acest pin).38. Are ataşat registrul SFR intern TRISB. Când aceasta s-a încheiat. Aceste rezistenţe pot să fie conectate sau nu la liniile de port.5. CPU poate trece la execuţia altui program. de la programul de tratare a întreruperii.5. la programul părăsit iniţial.9. Fiecărei linii a portului B îi corespunde câte un bit al TRISB. prin care se direcţionează liniile de port. Valoarea 0 atribuită unui bit al TRISB. indiferent de programul la care CPU lucrează chiar atunci.9.9. aşa cum se arată în fig. Acelaşi pin este utilizat. Portul B (PORTB) este unul cu 8 linii. iar scrierea continuă în mod autonom. Linia de la pinul RA4 este numai de intrare. În mod normal rezistenţele weak pull-up nu sunt Fig. prin fanioane aferente. O dată cu aceasta. Principial. Aceste linii devin linii de intrare.4). Ele se folosesc dacă liniile sunt programate ca ieşiri. sistemul şi modul de lucru cu întreruperi crează un mecanism ce permite µP/µC să reacţioneze în momentul când se produc anumite evenimente. se generează un semnal. în prealabil. Poziţionând un bit pe 1. Programarea. aferentă lui. Liniile portului B al µC PIC 16F84 au prevăzute rezistenţe pull-up şi în interiorul integratului. linia de port aferentă lui devine linie de ieşire. Instrucţiunea RETFIE (Return From Interrupt) . devine o linie de ieşire.8. fiecare sursă de întreruperi. iar celălalt recepţionează semnaulul propriu-zis. se declanşează un proces de scriere în memoria EEPROM. Depaşire capacităţii timerului (TMR0).determină revenirea. Ca la orice tip de microprocesor. Prin patru dintre pinii PORTB (RB4 ÷ RB7) se poate provoca o întrerupere. 5. Succesiunea de evenimente la tratarea unei întreruperi externe la µC PIC 16F84 . nivelul semnalului recepţionat se schimbă (comută). are câte 2 biţi asociaţi aferent. µC PIC 16F8 are 4 surse de semnale ce pot provoca întreruperi: 1. marcând faptul că timerul.Cap. se face în registrul OPTION. a încheiat numărătoarea ce o avusese de efectuat. Structuri numerice suport pentru echipamentul de conducere al unui robot 203 204 CONDUCEREA ROBOŢILOR Fig. orice întrerupere provoacă oprirea lucrului la programul curent şi lansează execuţia unui alt program. Poziţionând pe valoarea 1 unul dintre biţii 0÷3 ai TRISA linia de port A. Sistemul de întreruperi la µC PIC 16F84. Portul A (PORTA) este unul cu 5 linii. dacă.39. la oricare dintre ei. RB4). Comutarea de la nivel ridicat la nivel 0 sau invers a semnalelor sosite la unul dintre cei doi pini ai portului B poate constitui un semnal de întrerupere. care a fost declanşat. Unul validează întreruperea. Porturile µC PIC 16F84 µC PIC 16F84 are 2 porturi I/O. dacă. programat ca linie de intrare. se poziţionează pe valoarea 1 bitul GIE şi toate întreruperile sunt din nou validate. Modul de adresare indirectă la µC PIC 16F84 5.

RP0 ai registrului STaTUS.42. se arată modul de execuţie Fig.4. Dacă se foloseşte un oscilator cu frecvenţa de 4 MHz. cu o instrucţiune anume. în paralel cu exectuarea propriu-zisă a fiecărei instrucţiuni. În fig. Adresarea directă la µC PIC16F84 . aşa cum se arată în fig. respectiv cu salt.8. rezistenţele se conectează (conectare validată). 5.5.5. Fig.5. În aceste cazuri. la µC PIC 16F84. se efectuează şi Instruction Fetch pentru instrucţiunea următoare.40. fără. din care în cel de al doilea se execută ca un NOP (No Operation). o instrucţiune fără salt se efectuează în 1 µsec. Fig.5. Structuri numerice suport pentru echipamentul de conducere al unui robot 205 206 CONDUCEREA ROBOŢILOR conectate. Execuţia succesivă a instrucţiunilor (pipelining) la µC PIC16F84 Operanzii aferenţi unei instrucţiuni se pot adresa în două moduri: a) Adresarea Directă Se face folosind o adresă (a operandului) exprimată pe 9 biţi. în cazul îndeplinirii condiţiei pentru efectuarea saltului respectiv.Cap. Este reprezentat şi faptul că.5.41. iar cele cu salt în 2 µsec.42. Registrul INTCON al µC PIC 16F84 5.9. al unui şir de instrucţiuni. Programarea µC PIC 16F84 Specificul microcontrolerelor PIC este acela că toate instrucţiunile lor se execută într-un singur ciclu. Această adresă se obţine compunând cei 7 biţi ce urmează după mnemonica instrucţiunii (parte a adresei directe) cu cei doi biţi RP1.41. sau la modificarea conţinutului Numără.torului de Adrese. execuţia unei instrucţiuni necesită două cicluri. Programând pe valoarea 0 bitul 7 al registrului OPTION. cu excepţia instrucţiunilor de salt condiţionat.

SAU-EXCLUSIV. Instrucţiunea SWAPF inversează între ele ordinea fracţiunilor de câte 4 biţi în interiorul unui registru. o „revoluţie” pentru microprocesoare.9. dacă rezultatul e un număr pozitiv şi devine “0”. iar primul sistem cu acest µP. Unele instrucţiuni au nevoie de o constantă depozitată în registrul W (ca. Instrucţiunea CLRF (Clear File) “scrie” valoarea “0” într-un registru “ f ”. de pildă. În fig. fie cu mai multe.44. se prezintă un grafic comparativ cu privire la registrul acumulator la microprocesoarele 16. ele ajungând chiar la nivelul unor multi . SAU. respectiv 64 de biţi. care urmează a fi şters (primul caz) sau poziţionat pe valoarea 1 (al doilea caz). Fig. sau 64 biţi. a fost implementat în luna decembrie a aceluiaşi an. la o scădere. mnemonica pentru “mută. În ziua de azi există microprocesoare care lucrează pe 4. ceea ce a notat literal. 8.5. locaţia de la adresa aflată într-un registru FSR. Sunt şi instrucţiuni care determină transfer de date dintr-un registru în el însuşi. 32 şi 64 de biţi Microprocesoarele pe 32 de biţi au fost construite. respectiv de date ce trebuie copiate din W într-o locaţie RAM sau invers. bitul C se poziţionează pe “1 “. la vremea lor. Fig. în W “– în engleză “MOVe Literal to W ”). După cum s-a văzut şi în paragraful precedent. spre dreapta sau stânga (RLF şi RRF). o astfel de instrucţiune este operaţie simplă. Aşa cum se prezintă în fig. instrucţiunea MOVLW. în corpul ei. complementare (COMF) şi rotaţii ale conţinutului unui registru. orice instrucţiune ce conţine. Fanioanele C.5. 16. locaţia este accesată prin registrul “virtual” INDF. marea majoritate a microcontrolerelor PIC pot efectua numai adunare şi scădere. încă. ce avea structura pe 4 biţi. aparent.43. 32. Registrul acumulator de 16.8. De pildă. 32. dacă se scade un număr negativ mai mare dintr-un descăzut pozitiv. Setul de instrucţiuni al µC PIC 16F84 a) Operare la nivel de bit Mnemonicele unor astfel de operaţii sunt BCF (Clear bit. Nu s-a produs. Structuri numerice suport pentru echipamentul de conducere al unui robot 207 208 CONDUCEREA ROBOŢILOR b) Adresarea Indirectă Modul de adresare indirectă nu conţine adresa operandului în corpul instrucţiunii. care “conţine” adresa dintr-un registru FSR. iar CLRW şterge W. Aceste multi – microprocesoare sunt implementate fie cu un singur circuit integrat. De atunci şi până în prezent microprocesoarele au evoluat semnificativ. aceasta din urmă efctuându-se ca o adunare a unui număr pozitiv cu unul negativ.Cap. c) Instrucţiuni aritmetice şi logice Dintre operaţiile aritmetice. fiindcă transferul modifică fanionul Z. 5. a fost creat în luna august a anului 1969. Microprocesoare pe mai mulţi biţi Primul microprocesor. Arhitectura unui µP pe 32 de biţi . 5. schimbă valoarea unuia dintre biţi şi reînscrie bytul în locaţia sa iniţială. când s-au prezentat registrele FSR.5. SFR sau GPR.9.5.9. într-o strucutură tradiţională (vezi fig.43. Rotaţiile se efectuează cu participarea bitului C. respectiv BSF (Set bit… in file…). Mnemonica este urmată de numele unui registru şi de numele/numărul bitului din registru. indiferent dacă acesta din urmă este general sau special. b) Transfer de date Transferul de date într-un microcontroler se efectuează între registrul W (Work) şi un registru “ f ”. de fapt. adresa este obţinută prin compunerea bitului IRP al STATUS cu adresa înscrisă într-unul dintre registrele FSR. in file…). Chiar dacă. DC şi Z se modifică în funcţie de rezultatul unei operaţii aritmetice.. O astfel de operaţie se poate efectua la oricare registru al µC.microprocesoare care au o putere de calcul deosebită. Altfel spus. Circuitul ce a fost numit microprocesor propriu-zis a apărut în 1971. INDF accesează.44).5. la execuţia ei. 5. iar programatorul doreşte dinadins acest lucru. UCP procedează întâi la citirea întregului registru (ca byte).5.38. 4004. Operaţiile logice ce se pot efectua cu un PIC sunt ŞI.

Prin pipelining se înţelege partiţionarea execuţiei în operaţii independente mai simple(vezi şi fig. De exemplu. se procedează. O altă opţiune modernă a fost VLIW (Very Long Instruction Word). prin aceea că au permis înlocuirea prin software a ceea ce era numit.47 sunt prezentate 2 variante de scheme bloc ale microprocesorului AMD Athlon 64 FX. dar dependendente între ele. Microprocesoarele au evoluat nu numai în ceea ce priveşte numărul de biţi al unui cuvânt de informaţie. este suficient a fi remarcat gradul de complexitate la care s-a ajuns. b) Decodificarea instrucţiunii. într-un un singur circuit. În literatura de specialitate. Structuri numerice suport pentru echipamentul de conducere al unui robot 209 210 CONDUCEREA ROBOŢILOR Saltul calitativ recent al microprocesoarelor este realizat prin apariţia de multi-microprocesoare care pot efectua numeroase instrucţiuni într-un interval de timp foarte scurt. 4 instrucţiuni distincte. în concepţia şi implementarea (micro)procesoarelor. la implementarea lor. De fapt. pe 4 etape. Intel Core 2 Quad (4).45. Arhitectura pote fi una de tip von Newman sau Harvard. c) Executarea instrucţiunii. Printre cele mai recente microprocesoare produse se numără: AMD Phenom (4 capsule). care stochează valorile intermediare ale operanzilor.Cap.45. Termenul este folosit ca atare şi în limba română. ci. care stochează datele cel mai frecvent utilizate. a paralelismului în operare şi scurtarea duratei unui ciclu. de fapt. Prin apariţia lor. Cele mai cunoscute şi utilizate microprocesoare sunt astăzi cele create de doua mari firme in domeniul IT: AMD (Advanced Micro Devices) si Intel (Integrated Electronics). 4 etape principale: a) Instruction Fetch – preluarea instrucţiunii.5. Fig. c) Logica de comandă (Control Logic). Şi nu este realizarea cea mai recentă! . structurile implementate concret sunt prevăzute cu mai multe etape pipeline între cele 4 prezentate mai sus. 5. Prin aceasta. la vremea apariţiei lor. etapa de execuţie se poate extinde. Structura de organizare a unui µP modern Procesorul este dotat cu o memorie care adăposteşte datele şi instrucţiunile. Se foloseşte chiar termenul de paralelism în execuţie. şi pe acestă cale. se consideră că introducerea modului de lucru prin pipelining şi a memoriilor cache constituie o schimbare majoră survenită în ultimii 20 de ani. Viteza de lucru a unui µP creşte dacă operaţiile se execută în paralel. acestea au un preţ de cumpărare mai ridicat decât cele obişnuite. AMD Athlon 64 X2 (2). în care se implementau structuri logice hardware cu circuite integrate digitale. de pildă. microprocesoarele au deschis aşa numita “eră a programării”. se foloseşte numai una. În figurile 5. Blocurile componente sunt: a) Unităţi de Funcţii (Functional units). în loc să se utilizeze. Utilizarea unor memorii rapide la imediata disponibilitate a Unităţii Centrale se constituie într-un avantaj major. AMD Opteron (4). În figura 5. Actualmente este posibil a se integra până la 16 seturi de sisteme cu µP cu o capacitate de memorie de 64 GB într-o capsulă. Unitatea Centrală preia instrucţiuni (Instruction Fetch) şi depune date în memorie. Intel Core 2 Duo (2). b) Registre. memorie cache. Existenţa memoriei cache este cel de al doilea element de modernitate introdus la (micro)procesoarele mai noi. prin aceea că defalcarea operaţiilor o “înţelege” programul. adică au fost realizate procesoare care acceptă instrucţiuni cu formatul codului de lungime mare. Unii autori folosesc chiar termenul de “revoluţie”. În timp. În realitate. au fost introduse majoritatea tehnicilor/tehnologiilor specifice ştiinţei calculatoarelor cum ar fi pipeline. ceea ce a permis extinderea pe scară largă a aplicaţiilor şi implementarea tehnicilor de conducere inteligentă.5. cea mai simplă modalitate de a creşte eficienţa paralelismului este operând prin pipelining. super-pipeline. a crescut puterea de calcul a microprocesoarelor. vorbindu-se astăzi de "power of intelligence". principial. Întrucât descrierea unei astfel de arhitecturi ar depăşi cadrul unuei cărţi dedicate roboticii. “era logicii”. la un transfer de la rezolvarea hardware la cea software. d) Memoria cache.41).46 şi 5. care execută operaţiile curente necesare. Principiul poate fi asemănat cu asamblarea automobilelor pe o linie de montaj. Accesarea unei memorii aflate în afara unităţii centrale încetineşte foarte mult operaţiile. memorie virtuală sau VLIW (Very Long Instruction Word). Cu aceasta performanţele µP sporesc. Datorită faptului că unele multi-microprocesoare sunt construite cu mai multe circuite integrate. La nivel hardware. d) Accesarea şi scrierea în memorie a datelor. Tehnica pipeline la un procesor are. unde la fiecare post de lucru se efectuează numai anumite operaţii. este prezentată schema de organizare a unui microprocessor modern. care face conexiunile între operaţii efectuate pe segmente diferite. Principalele avantaje obţinute prin pipelining sunt implementarea. ea însăşi. între efectuarea unor calcule.

iar tehnologia lor de fabricaţie.5.. se mai utilizează şi tehnica Data Dependent Hardware (Strucutură fizică dependentă de date). chiar bistabile. similară cu cele utilizate în foto-litografie (ieftine) este foarte promiţătoare pentru viitor. moleculare.46.5. Tranzistoarele organice sunt o realitate. Construcţia fizică poate fi făcută fie cu cicuite FPGA(Field Programmable Gate Array). începând din anul 2007. Schema bloc a procesorului AMD Athlon 64 FX (varianta 2) . Fig. ci o schemă hardware a unui bloc de calcul care execută programul dorit. ca de obicei.Cap. 5. În ultimii ani sunt prezentate lucrări legate de nanofabricaţie cu care se încearcă implementarea de blocuri de calcul hardware nanometrice. Schema bloc a procesorului AMD Athlon 64 FX (varianta 1) Fig. Structuri numerice suport pentru echipamentul de conducere al unui robot 211 212 CONDUCEREA ROBOŢILOR De actualitate este tehnica Reconfigurating Computing: Se procedează la înscrierea organigramei (schemei logice) a unui program ce trebuie conceput într-o unealtă software anume dezvoltată şi rezultatul ce se obţine nu este un şir de linii de program (lista de instrucţiuni). La fel. comutatoare. fie CPLD (Complex programmable logic devices).47.

deoarece acesta prezintă avantajul modificării turaţiei sale la modificarea tensiunii aplicate la borne. Sistem de conducere local pentru o axă mecanică Sistemul de acţionare al unui robot se compune din mai multe sisteme conducere locală (SCL). la nivelul fiecăreia dintre ele. Fig.6.214 CONDUCEREA ROBOŢILOR Capitolul 6 CONDUCEREA NEMIJLOCITĂ A AXELOR UNUI ROBOT 6. structura (bloc) după care se realizează conducerea nemijlocită este cea din fig. conducerea nemijlocită a elementelor cuplelor cinematice conducătoare se realizează. amplasate la nivelul fiecărei cuple cinematice conducătoare (fig. astfel.1. construit în jurul câte unui motor ce produce mişcarea. 3) Posibilitatea de racordare simplă a motoarelor la sursa de energie. Acest lucru se datorează următoarelor argumente: 1) Disponibilitatea cvasigenerală a energiei electrice în mediile industriale. fără intermediar. admit supraîncărcări în limite destul de largi).… Sistemul de acţionare electrică este cel mai răspândit în cazul roboţilor. distribuită la nivelul fiecărei axe în parte. Fig. Un sistem de conducere local este realizat cu o structură de sistem de reglare automată (SRA). pneumatică.Calculatorul central al robotului (de tip PC) comandă. Principial. 7) Cost mai redus.Există însă şi situaţi în care se foloseşte un singur microprocesor/ microcontroler pentru conducerea nemijlocită a mai multor . prin conducere nemijlocită se înţelege conducere propriu-zisă.1. În funcţie de tipul motorului este denumit şi sistemul de acţionare: electrică. directă. ori de tipul de acţionare utilizat. uneori. Fiecare SCL este coordonat de câte un procesor de ax (implementat cu microprocesor sau microcontroler). În contextul lucrării de faţă. Se procedează. În cazul acţionărilor electrice cel mai frecvent se utilizează motorul de curent continuu.6. individual. Numărul de microprocesoare/ microcontrolere de ax (PAX) este în funcţie de numărul de grade de libertate ale robotului (tipic 6). prin interpolator.4. hidraulică. 5) Manoperă de întreţinere mică.12). Indiferent de modul sau coordonatele folosite în conducerea unui robot. Schema bloc a unui sistem de conducere locală (SCL) Definiţie: elementul care transformă în energie cinetică orice altă formă de energie se numeşte motor. Sistemul de acţionare hidraulică este folosit mai ales în aplicaţiile cu sarcini mari.1. Conducerea distribuită a axelor unui robot Fiecare axă este condusă cu câte un sistem de conducere local (SCL) construit în jurul motorului de acţionare aferent. prin generatorul de traiectorie şi. Sistemul de acţionare pneumatică permite numai acţionări simple (închis/ deschis înainte/înapoi) şi se folosesc mai ales la manipulatoare simple. 6) Randament energetic ridicat. procesoarele de ax PAX i (controlerele de ax din schema bloc a robotului).4. 2) Robusteţea motoarelor electrice (motoarele de gabarit relativ mic permit dezvoltarea de cupluri relativ mari. circa 80% dintre roboţi fiind cu acţionare electrică.12. 4) Dinamică foarte bună(motoarele electrice au inerţi mici şi timp de răspuns scurt la comenzile aplicate). la o conducere descentralizată.

Fig. care furnizează informaţii despre mişcarea realizată în realitate. Conducerea a mai multe axe cu un acelaşi microprocesor Un sistem de conducere locală (SCL) complet de la nivelul unei cuple cinematice conducătoare trebuie să conţină şi transmisia mecanică şi o frână (vezi fig.4). caz în care structura ierarhică se schimbă(vezi fig.6.4.6. uneori toate trei).12). Conducerea nemijlocită a axelor unui robot 215 216 CONDUCEREA ROBOŢILOR axe.2). La conducerea nemijlocită a unei cuple cinematice conducătoare scopul final este de a dezvolta un cuplu activ în axul motorului de acţionare. viteză. II. .6. Acest bloc este de fapt un convertor de formă de energie. Există traductoare numerice (incrementale) care furnizează impulsuri electrice în timpul funcţionării. În acest caz sunt necesare microprocesoare/ microcontrolere performante (scumpe) şi trebuie elaborat un software mai complicat pentru acestea (costuri suplimentare de manoperă). reglabilă. La fiecare impuls electronic aplicat motorul pas cu pas execută un pas mecanic. Exemplu: pentru cazul motorului de curent continuu blocul “electronică de putere” se alimentează de la reţeaua de curent alternativ monofazată sau trifazată pe care o transformă într-o formă de tensiune continuă cu valoare reglabilă. adică de a produce mişcarea.3. Trebuie determinat cu cât trebuie comandat motorul pentru a ajunge din poziţia curentă în cea prescrisă. acceleraţie (uneori numai unul. Impulsuri de tensiune Coordonatorul întregului sistem de reglare automată este controlerul. ca în fig. • volanta. • fulia de la cureaua de transmisie. Tensiune continuă reglabilă • pentru motoarele de curent alternativ asincrone la ieşirea electronicii de putere se obţine un sistem de trei tensiuni alternative cu amplitudinea şi frecvenţa variabile. Tensiunea este continuă cu valoarea variabilă. III.6. De obicei de axul transmisiei este legat şi traductorul de poziţie.(se notează cu qd ). Conducerea nemijlocită a unei cuple cinematice conducătoare constă din următoarele aspecte: I. Se cunoaşte poziţia relativă la care trebuie să ajungă elementele cuplelor cinematice conducătoare. • pentru motoare de curent continuu. Observaţie: din transmisie o parte se consideră inclusă în sistemul de acţionare: rotorul motorului şi • roata dinţată primară.3. • pentru motorul pas cu pas se generează trenuri de impulsuri (vezi fig. Se notează qr şi este numită mărime de reacţie.6. Se obţine de la generatorul de traiectorie şi se numeşte mărime de prescriere.6.2. Sursa de energie este reţeaua de curent alternativ monofazat sau trifazat (disponibilă în toate mediile industriale) şi mai rar se folosesc surse autonome de energie.Cap. Forma tensiunii care alimentează motoarele este: Fig. Se cunoaşte permanent (de la traductorul aferent) poziţia obţinută în realitate. Există şi traductoare electrice care furnizează o tensiune sau un curent electric proporţional cu deplasarea efectuată sau cu viteza. • o faţă a ambreiajului. 6. Acesta este realizat cu un microprocesor sau micorocontroler şi este subordonat direct generatorului de traiectorie (din schema genarală asistemului de conducere al robotului). Fig.4. Motorul este comandat de blocul electronică de putere.

În ultimul timp au apărut calculatoarele CNN (Neural Network Computer – calculatoare cu reţele neuronale). Astfel de calculatoare se folosesc deja (cu succes) în prelucrări de imagini. legate între ele cu „neuroni”. • sosirea să fie cât mai precisă (cu eroare nulă). Elaborarea unui software pentru reglare globală este amplă. Traductoarele care ar trebui să urmărească situarea punctului caracteristic în spaţiul cartezian. ar fi mai de dorit să se procedeze la o reglare globală (cu un regulator global) pe ansamblul întregului robot şi nu o reglare distribuită local (descentralizată) realizată cu PAX i. Reţelele neuronale sunt nişte circuite analogice înlănţuite care “învaţă” din propria lor experienţă. Deocamdată persistă dezavantajul că circuitele integrate care implementează reţele neuronale nu au fost tipizate. Un regulator execută funcţia de reglare după un algoritm de reglare. Motivele pentru care se procedează la o conducere distribuită sunt: 1). Suplimentar se mai pun câteva cerinţe. fie prin conectarea propriu-zisă a reţelei într-o schemă anume de antrenare a ei. La nivelul fiecărei cuple cinematice conducătoare se pot amplasa traductoare (de viteză. scădere. Astăzi nu se mai întâlnesc decât rar regulatoare analogice. Rolul sistemului de reglare automată este de a conduce elementele mecanice spre abatere (eroare) nulă între mărimile de prescriere şi mărimile de reacţie (cele citite de la traductoare). Regulatorul are ca mărimi de intrare qd şi qr şi parametrii de proces (constantele motorului. . astfel încât să se ajungă la o comportare optimă. au o viteză de calcul cu cel puţin un ordin de mărime mai mare decât cele obişnuite. numite de unii autori indici de calitate a reglării : • trecerea de la qd la qr să se efectueze cât mai rapid (termenul aferent din automatică este timp de răspuns mai scurt). Această variantă are folosită mai ales în anii ’70 şi se numeşte regulator analogic. datorită proprietăţilor structurilor analogice. derivată etc. De aici rezultă necesitatea unor calcule extrem de numeroase ce trebuie efectuate în timp real (ceea ce se face dificil). deoarece reglarea se face cu microprocesoare şi microcontrolere. înmulţire. Sistemele de reglare automată pentru mişcările elementelor unei axe (SCL) sunt astăzi produse în mod curent la preţuri extrem de avantajoase (există o veche tradiţie de la maşinile unelte cu comandă clasice). complexă (costisitoare). cupluri rezistente etc. forţă) care sunt produse la preţuri accesibile. adică regulatorul este numeric. integrală. 4). Regulatorul local are rolul de a calcula cu cât trebuie comandată electronica de putere (cu care apoi se modifică tensiunea la bornele motorului) pentru a se asigura o deplasare până la anularea abaterii: a = qd – qr. Astfel de circuite sunt supuse unui “antrenament” cu situaţii cât mai multe dintre cele posibile. Aceste legături se exprimă matematic cu ecuaţii foarte complicate şi profund neliniare. viteză. sunt prohibitiv de scumpe. operând cu tensiuni şi/sau curenţi. acceleraţie. În structura sistemelor de conducere locale sunt incluse traductoare cu care se urmăreşte mişcarea obţinută în realitate. În funcţie de rezultat. • trebuie folosit modelul matematic (dinamic) al întregului robot. Calculatoarele CNN. Ţinând cont de mărimile de intrare (şi cu ajutorul formulei de reglare a algoritmului) regulatorul calculează mărimea de comandă pentru electronica de putere (cu care se comandă motorul). 2). poziţie.. Realizarea unor regulatoare globale cu acţiune pe ansamblul întregului robot este foarte dificilă pentru că: • mişcările de la nivelul axelor nu sunt independente una de alta. La intrarea fiecărui sistem de conducere local (SCL. „Antrenamentul” poate fi efectuat fie prin simularea comportării reţelei (modelate) pe un calculator tradiţional. Pentru realizarea dezideratului fundamental împreună cu cerinţele impuse de indicatorii de calitate se include în sistemul de reglare automată local un bloc regulator (implementat cu controlerul). 5). aşadar cu mărimi analogice.Cap. fiecare producător oferind variante proprii şi diferite de ale altora. Sunt compuse din „celule” de calcul analogice performante. necesară pentru anularea abaterilor. cu viteze de calcul mult superioare calculatoarelor numerice. Se creează pentru circuitele (programele) situaţiile respective şi se urmăreşte rezultatul acţiunilor. În acest caz se folosesc amplificatoare operaţionale cu care se efectuează adunare. Acesta este complicat şi nici un model matematic nu este perfect. SRA) se aplică mărimi de prescriere. Observaţii: 1) Algoritmul este formula după care regulatorul calculează mărimea de comandă (către electronica de putere). mase şi momente de inerţie ale obiectelor puse în mişcare. la preciziile pretinse în diferite procese tehnologice. 6. care sunt parametrii cinematici ai mişcării calculaţi de către generatorul de traiectorie (poziţie. în situaţii ce sunt presupuse ca fiind cele mai probabile. 3). împărţire. Această formulă este proiectată de inginerii automatişti. Observaţie: motivele expuse mai sus limitează posibilităţile de a se realiza reglarea globală (a acţiunilor unui robot) folosind calculatoarele existente astăzi. Reţelele sunt programate (cu un calculator obişnuit) să se comporte într-un anumit fel. Conducerea nemijlocită a axelor unui robot 217 218 CONDUCEREA ROBOŢILOR Observaţie: problematica enunţată mai sus reprezintă problema fundamentală a conducerii unei cuple cinematice conducătoare.). acceleraţie). Cu astfel de calculatoare se va rezolva probabil conducerea globală şi adaptivă a roboţilor (împreună cu calculatoarele clasice). circuitele îşi corectează funcţionarea (se autoreglează) până ajung cât mai aproape de funcţionarea dorită. 2) Formula poate fi executată cu circuite analogice. Cu astfel de circuite s-au realizat calculatoare “autoprogramabile” care “învaţă din propria lor experienţă” diferite situaţii şi îşi adaptează comportarea situaţiilor noi ivite. Din punctul de vedere al conducerii întregului robot.

. deoarece la încărcare mare pierd paşi. Deşi la început aplicaţiile cu motoare pas cu pas au cunoscut o largă dezvoltare. Motorul de curent alternativ Există trei metode de modificare a turaţiei motorului de curent alternativ sincron: • metoda U/f =ct. În aceste condiţii astăzi este posibilă implementarea circuitului de comandă pentru motoare de curent alternativ asincrone la puteri competitive (pe baza teoriilor de reglare elaborate anterior).3.2. iar rotorul are forma unui disc obţinut dintr-un pachet de tole. Motorul de curent continuu (mcc) 6. dar este considerat motor de curent continuu deoarece cuplul dezvoltat e proporţional cu curentul din înfăşurare (ca la motorul de curent continuu). S-a obţinut un motor fără bobinaj rotoric. Micşorarea simultană a lui U şi t realizează scăderea turaţiei. electronica aferentă motoarelor de curent alternativ asincron nu mai prezintă un impediment în utilizarea acesteia.5. în esenţă. În acest fel. în ultimii ani se observă o restrângere a domeniului de aplicare. practica a dovedit că acestea nu au fost corespunzătoare). Alimentarea nu se mai face cu perii colectoare. microprocesoarele s-au dezvoltat foarte mult şi au apărut microcontrolerele (un întreg calculator într-un singur circuit integrat). Motorul de curent continuu fără perii (Brushless DC) Este cel mai nou tip de servomotor şi are proprietăţi asemănătoare cu motorul de curent continuu cu rotor de curent alternativ sincron şi cu motorul pas cu pas. • schema electrică de comandă este sofisticată (deşi la început s-au încercat scheme simple. impuls electronic – increment de deplasare. deci au randament energetic scăzut. în următorii ani. Modul de construcţie al înfăşurării rotorice este reprezentat în Fig.2. Se amplifică apoi comenzile şi reglajele pe modelul bifazat.1. deoarece el a fost conceput ca un convertor biunivoc. • înfăşurările consumă curent şi în repaos. Progresele în domeniul electronicii de putere au permis realizarea unor structuri deosebit de avansate: circuite integrate de putere inteligentă. 6. Rezultă un motor mult mai uşor. • metoda de comandă cu orientare după câmp. Observaţie: metoda necesită utilizarea unei unităţi de calcul şi în sistemul de acţionare.2. Plăcuţele rotorice sunt compactate.2. raportat la arbore. În plus.1. acţionările cu motoare de curent alternativ asincron să devină majoritare în aplicaţii. şi se referă la modelul bifazat real calculându-se mărimile trifazate ce corespund mărimilor de reglare la modelul bifazat. • nu pot fi încărcate la sarcina maximă pentru care au fost proiectate. 6.2. Se alimentează cu o tensiune în impulsuri (ca şi motorul pas cu pas). Cu timpul s-a dovedit însă că motoarele pas cu pas au o serie de dezavantaje majore: • sunt “hot function”. dar axele sunt alese altfel decât în cazul anterior şi se obţine o reglare mai eficientă. Principial se inversează rotorul cu statorul şi rezultă că înfăşurarea care se comandă este statorul. Conducerea nemijlocită a axelor unui robot 219 220 CONDUCEREA ROBOŢILOR 6. Se prevede că.2. tipic 1000C. Tipuri de motoare electrice 6. Se realizează modificarea turaţiei cu modificarea simultană atât a amplitudinii. La modificarea U şi t raportul valorilor lor se . Motorul pas cu pas La apariţia acestuia s-a crezut că este cel mai potrivit motor pentru a putea fi comandat cu circuite numerice. motoarele pas cu pas fiind folosite în aplicaţii de mică putere. Apoi se procedează la un set de calcule matematice prin care se “transformă” motorul de curent alternativ asincron trifazat într-o maşină echivalentă cu două faze. extrem de redus şi cu constante de timp foarte mici (se obţin astfel performanţe dinamice excelente). Constă. Fig.Cap. iar creşterea lor duce la creşterea turaţiei. cât şi a frecvenţei de alimentare. păstrează aproximativ constant. Servomotorul cu rotor disc şi întrefier axial La acest motor înfăşurarea rotorică este realizată sub formă de plăci foarte subţiri de cupru (obţinute din folie de cupru prin corodare cu metode fotochimice). Este considerată metoda clasică de reglare a turaţiei.6. ci prin intermediul unor tranzistoare de putere( contactoare statice).2. cu înfăşurările perpendiculare ca şi motorul de curent continuu (se trece calculul la un model bifazat asincron). 6. similar cu cotorul de curent continuu. din măsurarea fluxului magnetic rotitor din întrefierul maşinii. cu un moment de inerţie. adică funcţionează fierbinte.5. Rotor compus din folii de cupru compactate 6.1.2.6. • metoda prin accelerarea câmpului (Yamamura) Este cea mai modernă metodă de comandă a motoarelor de curent alternativ şi are la bază tot o transformare de la modelul trifazat la modelul bifazat.1.

De la SIS sunt generate mărimile de prescriere qd. Este un microsistem realizat cu micreprocesor sau microcontroler. Un TG este un generator electric (un dinam) care furnizează o tensiune proporţională cu turaţia cu care axul său este rotit. Funcţiile îndeplinite de Pax sunt: F1 – preluarea mărimii de prescriere qd (poziţia impusă în deplasare pentru axa respectivă) de la SIS. Observaţie: corespondenţa cu schema bloc a unui sistem de conducere local (folosită anterior) este notată cu acoladă. adică calculele conform formulei se execută folosind circuite (amplificatoare operaţionale) care efectuează operaţii matematice cu curenţi şi tensiuni . Această structură a fost foarte răspândită în anii ’80 când microprocesoarele/microcontrolerele nu erau foarte rapide şi nu erau capabile să realizeze reglarea de poziţie şi viteză simultan. Până la începutul anilor '90 acest bloc era realizat cu tiristoare sau triace. nu numerice (şi în acest caz se foloseşte un algoritm de reglare). Un astfel de bloc se comandă cu impulsuri cu perioada T=ct. Observaţie: se constată că în schema bloc de mai sus se folosesc două tipuri de regulatoare: 1. Schema bloc pentru un sistem de acţionare a unei axe a unui robot cu motor de curent continuu. . Fig. Conducerea nemijlocită a axelor unui robot 221 222 CONDUCEREA ROBOŢILOR 6. Astăzi se realizează cu tranzistoare de mare putere. Prin modificarea Tc se modifică valoarea medie a tensiunii u de la bornele motorului şi se schimbă turaţia acestuia în sensul anulării abaterii. aşa numita comandă PWM – pulse width modulation. F2 – preluarea mărimii de reacţie qr (mărimea curentă obţinută în realitate) de la traductorul de poziţie TP.se prezintă o altă versiune de reprezentare (mai detaliată) a schemei bloc din fig. unul analogic pentru viteză executat cu amplificatoare operaţionale RvA. Această abatere se aplică la intrarea unui circuit cu amplificatoare operaţionale care îndeplineşte funcţia de regulator de viteză. RvA calculează (analogic) abaterea de turaţie făcând diferenţa dintre tensiunile ce reprezintă derivatele pentru qd şi qr (folosind un comparator. şi cu durata impulsului Tc=var. Din acest motiv se spune despre această schemă că este realizată într-o structură hibridă (şi numerică.Cap. F5 – generarea în formă numerică a mărimii de prescriere pentru viteză. 4) CNA – Convertor Numeric Analogic. În cazul în care calculele sunt dificile şi numeroase este necesar şi blocul interpolator.6. Sistem de conducere nemijlocită a unei axe implementat cu motor de curent continuu În fig. spre exemplu). Întrucât PAx este un circuit digital iar RvA este analogic.6.3.6.Procesor de Ax. 7) EE – Element de Execuţie. Acesta furnizează reacţia pentru viteza curentă (obţinută în realitate). Are rolul de a modifica durata Tc a impulsurilor de comandă conform cu mărimea y calculată de regulatoare. Componentele schemei bloc din fig. Observaţie: S-a considerat numai varianta cu un microprocesor sau un microcontroler pe fiecare axă. unul numeric pentru poziţie realizat cu microprocesor sau microcontroler. Mulţi roboţi aflaţi astăzi în funcţiune au sistemele de conducere locale implementate după o structură ca cea descrisă mai sus. deasupra schemei de faţă. sunt : 1) SIS – Sistem Ierarhic Superior care. 5) TG – Tahogenerator. F3 – calculul abaterii a = qd-qr pentru poziţie.6. de fapt electronica de putere. în cazul unui robot este generatorul de traiectorie GT(care face parte din calculatorul PC).12.. De aceea mărimea de comandă y (analogică) trebuie convertită în impulsuri cu durata Tc variabilă. 6. În ultimii ani microprocesoarele/ microcontrolerele au devenit din ce în ce mai performante şi s–a putut renunţa în totalitate la reglarea analogică de viteză.6. Axul TG este cuplat la axul principal al motorului. între ele s-a interpus blocul CNA care transformă numărul de la ieşirea blocului PAx într-un curent sau o tensiune care este mărimea de prescriere qd pentru RvA.4. F4 – efectuarea calculelor conform unui algoritm de reglare numeric pentru poziţie.6. 2. 8) MID A – Modulator În Durată Analogic. Acest circuit calculează (analogic) mărimea de comandă (un curent sau o tensiune). Calculele se efectuează analogic. de tip MOS sau IGBT. 3) RvA – Regulator de viteză Analogic. Versiunea este implementată cu un motor de curent continuu. şi analogică). 2) PAx . În mod frecvent în literatură se foloseşte şi denumirea sistem de acţionare a unei axe a unui robot cu motor de curent continuu. 6) TP – Traductorul de Poziţie de tip TIRO – Traductor Incremental Rotativ Optic. Asigură reglarea vitezei. Acest bloc efectuează calcule cu mijloace analogice.

Sistem de acţionare pentru conducerea unei axe implementat exclusiv numeric Această structură (fig. F4 – calculul mărimii de reacţie pentru viteze din mărimea de reacţie pentru poziţie. adică trebuie să fie capabilă să furnizeze curenţi mari.7. Conducerea nemijlocită a axelor unui robot 223 224 CONDUCEREA ROBOŢILOR Concluzie: Schematic succesiunea de operaţii şi comenzi derulate în schema din fig.6. Elementul de Execuţie MID este modulatorul de durată (analogic sau numeric) care are rolul de a transforma mărimea de comandă y în durată de conducţie Tc pentru dispozitivele electronicii de putere. F2 – preluarea mărimii de prescriere pentru turaţie de la SIS.Element de Execuţie – electronica de putere. 9) MID N . PT este puntea de tranzistoare (în variante mai vechi. Observaţie: cele două mărimi de prescriere sunt sub formă numerică. Converteşte y în Tc dar cu mijloace exclusiv digitale.6. • blocul regulator de viteză RvA.6 poate fi ilustrată ca mai jos: F3 – preluarea mărimii de reacţie de poziţie de la traductorul de poziţie TP(se numără impulsurile generate în timpul deplasării).6. Schema bloc de principiu este cea din fig. la forma şi nivelul de putere corespunzător motorului de acţionare. în principiu. În realitate automatiştii au găsit formule comune (algoritmi globali) care calculează simultan un singur y cu care se asigură reglarea simultană a poziţiei şi a vitezei. trebuie folosită câte o formulă pentru reglarea poziţiei şi a vitezei. 10) EE . . numerică sau analogică.Cap.3. 6.8. În consecinţă trebuie folosite şi elemente Fig. Fig. CD este circuitul de comandă care asigură amplificarea şi distribuirea corectă (în funcţie de sensul de rotaţie impus motorului) a comenzilor către dispozitivele electronicii de putere. SCL implementat exclusiv digital Implementarea unei astfel de variante a fost posibilă folosind microprocesoare/microcontrolere mai performante care pot realiza mai multe funcţii: F1 – preluarea mărimii de prescriere pentru poziţie de la SIS. Rolul său este de a adapta mărimea de comandă y.1. Observaţie: sursa +U este o sursă de putere. tiristoare) care comandă motorul şi care este alimentat cu o tensiune continuă +U. respectiv qr şi derivata acesteia şi are o singură mărime de ieşire y. furnizată de regulator. Observaţie: cei doi algoritmi de reglare sunt nişte formule şi.6.) s-a obţinut prin eliminarea circuitelor analogice. Elemente de execuţie (electronica de putere) EE este blocul electronic de putere din structura echipamentelor de comandă nemijlocită a unei cuple cinematice conducătoare a robotului (SCL). Sistemele de reglare locale cu care se asigură conducerea nemijlocită la nivelul cuplelor cinematice conducătoare trebuie să realizeze timpi de răspuns scăzuţi (adică să asigure reglarea rapidă).7. • convertorul numeric analogic CAN. Asigură tensiunea variabilă pentru motorul M dacă e comandat cu Tc variabil.3.8: 6.2. În comparaţie cu structura hibridă au fost eliminate: • tahogeneratorul TG.6. 6.Modulator În Durată Numeric. Un astfel de algoritm global are ca mărimi de intrare q d şi derivata acesteia.

11. Dispozitivul integrează două tiristoare conectate în sensuri opuse. care la conducţie prezintă o cădere de tensiune practic nulă). Valorile limită absolute: 4500V. 6. ceea ce complică configuraţia. De aceea se folosesc tranzistoare de putere (care asigură o frecvenţă de funcţionare cu un ordin de mărime mai mare decât tiristoarele).9. • timpul de comutare. b)Triacul. • puterea maximă şi. căderea de tensiune colector – emitor este de valoare mică. el putând fi utilizat la frecvenţe de comutaţie de zeci. sute de kHz). căldura ce se poate disipa pe dispozitiv. mai mică de 1V (deci se apropie de noţiunea de “contact perfect”. Dezavantajul principal al tiristorului este stingerea complicată şi viteza de comutaţie mică. Prezintă un avantaj important şi anume acela că. În schemele cu tiristoare se includ circuite speciale pentru blocarea tiristoarelor. Valorile limită absolute ale caracteristicilor electrice. Principalul dezavantaj este că el comută mai încet decât alte tipuri de tranzistoare. Conducerea nemijlocită a axelor unui robot 225 226 CONDUCEREA ROBOŢILOR de execuţie cu răspuns rapid. deci permite trecerea curentului în ambele sensuri(tot după aplicarea unui impuls de comandă). f) Tranzistorul bipolar cu poartă izolată (IGBT) Fig. de aceea frecvenţa de comutaţie este foarte mare (zeci. a)Tiristorul. până la sute de Hz. a cărui structură o păstrează la ieşirea sa. astăzi: 1000V. 3000A şi viteza de comutaţie mai mare ca la tiristor. din structura elementului de execuţie.Cap. Valorile limită sunt astăzi până la 6000 V şi până la 3500 A (valori foarte mari!). • curentul maxim care poate trece prin dispozitiv atunci când este în conducţie. Valorile limite absolute: 800V. Simbolul tranzistorului bipolar e) Tranzistorul cu efect de câmp de tip MOS(MOSFET) Principalul avantaj al acestui tip de tranzistor este că se comută cu curenţi extrem de mici.3. Simbolul unui triac Este un tranzistor realizat ca o combinaţie între tranzistorul bipolar. Tiristorul este un dispozitiv foarte robust şi fiabil.3. la intrarea . Principalul dezavantaj este acela că la conducţie prezintă o cădere de tensiune drenă – sursă de valori mari şi deci puterea disipată pe el la conducţie este mai mare. Fig. practic neglijabili. c)Tiristorul cu stingere de grilă (GTO) GTO (Gate Turn-Off thyristor) este un dispozitiv asemănător cu tiristorul. Este un dispozitiv cu trei joncţiuni conductoare care poate fi adus în conducţie dacă: • tensiunea la bornele sale este (+) la anod şi (-) la catod. cât şi la blocare prin semnale aplicate în bază. Are o răspândire largă pentru că poate fi comandat atât la conducţie.6. Fig. şi un tranzistor MOS. dar când se află în conducţie poate fi blocat prin aplicarea unui impuls de stingere tot pe grila de stingere. tip colector-emitor.6. deci poate fi utilizat la câţiva kHz. Simbolul GTO d) Tranzistorul bipolar. Dispozitivele electronice de putere utilizate în elementul de execuţie Dispozitivele electronice de putere reprezintă componentele cele mai importante.6. 800A. Odată adus în conducţie tiristorul nu mai poate fi blocat prin semnale de comandă. Există astăzi tranzistoare care pot comanda motoare de câteva sute de KW (ceea ce depăşeşte cu mult motoarele roboţilor – zeci. aflat la conducţie. Principalele caracteristici ale unui dispozitiv electronic de putere sunt: • tensiunea maximă care i se poate aplica atunci când este blocat. 50A. 6. implicit. până la câţiva KW).10. sute de KW. 40A şi viteza de comutaţie mică. • i se aplică un impuls de comandă pe grilă. • căderea de tensiune pe dispozitiv atunci când este în conducţie (care se doreşte a fi cât mai mică). Valorile limită absolute: 600V. dar şi cele mai expuse la defectare. deşi se poate folosi până la 10÷20 kHz la puteri mari.

14. CS – contactor static – are funcţia unui contact care se închide şi se deschide în mod repetat.6.6.3. Fig. de valoare medie Um Contactorul static este comutat cu o perioadă de comutaţie T. În figura 7.400A. Fig.5. Un etaj de putere complet se obţine prin interconectarea externă a unor module ca cele din fig. cât şi circuitele care asigură logica de comandă şi de protecţie a acestora.15 au semnificaţiile următoare : M – motor de curent continuu. 6. Tendinţe actuale. Observaţie: Principiul ce comandă PWM este aplicat atât în acţionările cu motoare de curent continuu. Astfel de circuite includ într-o aceeaşi capsulă atât dispozitive de putere. fără elemente mobile). Exemple de module de putere.13. Fig. deci lucrează la frecvenţe mari.4. Conducerea nemijlocită a axelor unui robot 227 228 CONDUCEREA ROBOŢILOR sa de tip grilă. Se află încă în faza de cercetare. Ua – tensiune continuă de alimentare. Simbolul tranzistorului IGBT g) Tiristorul controlat cu MOS Se noteară cu MGT şi este un dispozitiv asemănător cu tiristorul GTO. sunt redate câteva variante de componente ale unor braţe din structura unor punţi de putere. Are calităţi mai bune decât tranzistoarele MOS (şi IGBT).4. la ieşire prezintă o cădere de tensiune colector – emitor de valori mici (1-2 V) şi se comandă în grilă cu curent neglijabil. iar T – Tc este durata de pauză (contactorul static este deschis). cât şi cu motoare de curent alternativ ! De exemplu. în cazul motorului de curent continuu schema de alimentare de principiu este cea din figura 6. care sunt interconectate intern astfel încât să formeze structura completă sau o parte a unor etaje de putere. Um – tensiunea la bornele motorului. Au fost realizate şi aşa numite circuite de putere inteligene (IPC .3.13.Cap. 6. Deci. Se integrează chiar şi punţi complete . 6. Chopper de comandă a unui MCC Notaţiile utilizate în figura 6.15. În timpul unei perioade Tc reprezintă durata de conducţie a contactorului (durata când contactorul static este închis). 6. Valorile limită absolute: 1200V.Intelligent Power Cuicuits). Se comandă asemănător cu un tranzistor MOS. Principiul PWM aplicat în cazul motoarelor de curent continuu Principiul de comandă PWM este practic generalizat în acţionările electrice moderne. dar este realizat cu tiristoare sau tranzistoare care se blochează şi se deschid intermitent (deci comutarea are loc static. Comanda unui motor cu IPC Fig.6. deci este foarte robust.3.15. PWM este acronimul expresiei din limba engleză Pulse Width Modulation.1. Circuite integrate de putere(IPC). tradus in româneşte cu : modulare în lăţime de puls. .6.12. CC – circuitul de comandă pentru contactorul static.6. Module de putere Într-o singură capsulă sunt integrate mai multe dispozitive de putere.13. Ia – curentul din circuit.

a energiei magnetice înmagazinate în înfăşurarea de Fig.3.6.18. pentru a evidenţia faptul că ele pot fi tranzistoare de orice tip.6.15. Exemplu de element de execuţie pentru alimentarea MCC Schema tradiţională este realizată sub forma unei punţi cu tranzistoare de putere(fig.).1) Fig.20). cu cât Tc este mai mare Um este mai mare.Tensiunea de alimentare a MCC Valoarea medie a unei tensiuni în impulsuri (fig. .MCC alimentat cu impulsuri de tensiune Fig. în principiu. Diodele D2 ÷ D4 se numesc diode de supresare şi au rolul descărcării. Pentru T = ct. 6. 6.19.Cap. Practica a dovedit că motorul de curent continuu acceptă o astfel de comandă întrucât caracterul inductiv al înfăşurării de comandă determină o variaţie mai lentă a curentului din înfăşurare decât la variaţia tensiuni (vezi figurile 6.6. Observaţie: motorul de curent continuu. el se alimentează cu o tensiune în impulsuri dreptunghiulare cu durata Tc variabilă. Variaţia curentului din circuit Explicaţia variaţiei lui i este că înfăşurarea de comandă are inductivitatea L. motorul este alimentat cu o tensiune de forma ca cea din Fig.6.18.16. Pentru dispozitivele T1 ÷ T4 s-a folosit un simbol neconvenţional de reprezentare.6.6.19.17. atunci în inductivitatea L se produce o tensiune electromotoare autoindusă care se opune variaţiei tensiunii aplicate. respectiv cu cât Tc este mai mic cu atât Um este mai mică. Conducerea nemijlocită a axelor unui robot 229 230 CONDUCEREA ROBOŢILOR Ca urmare.17.. Observaţie: în ultimul timp se folosesc mai ales tranzistoare MOS şi IGBT deoarece ele permit comutări cu frecvenţe mai mari decât tranzitorul bipolar şi permit realizarea unor performanţe mai bune (cu cât frecvenţa de comutare creşte. Fig.16. Tensiune continuă de valoare variabilă Se observă folosind metoda de comandă a MCC cu schema din Fig. Apariţia acestei tensiuni electromotoare induse face ca prin bobină curentul să aibă o variaţie mai lentă decât variaţia tensiunii. ar trebui alimentat cu o tensiune de forma din figura 6.16) se calculează cu relaţia: 1 1 U UaTc U m = ∫ udt = [ ∫ Uadt + 0 = (Tc + 0) = T0 T 0 T T T Tc (6.6. pe timpul pauzei de conducţie.6. şi 6. cu atât curentul prin înfăşurarea de comandă este mai constant). Dacă la bornele unei inductivităţi L se produce o variaţie de tensiune.6.

Contacte implementate cu tranzistoarele de putere ale punţii O astfel de schemă permite comanda motorului la rotire în ambele sensuri. Se alege o perioadă de repetiţie T pentru stările închis/ deschis.22. comandate închis/deschis. când se ţin permanent blocate T3 şi T4 şi se comută T1 şi T2 (se închid şi se deschid succesiv). tensiunea la bornele motorului va fi o tensiune în impulsuri de durată Tc.sunt reprezentate tensiunile de comandă aplicate tranzistoarelor punţii şi tensiunea la bornele MCC. rezultând că motorul se va roti într-un sens.6. în ambele cazuri. respectiv pentru cel de al doilea sens T3 şi T4.6.7.21. se comandă T1 şi T2 la starea de conducţie(închise) şi se menţin în continuare blocate T3 şi T4 (vezi Fig. Starea de închis/deschis (blocat/conducţie) se stabileşte pe un anumit timp şi se comandă cu impulsuri de comandă. “Schema echivalentă” s-a reprezentat pentru cazul când toate cele patru tranzistoare sunt blocate (nu conduc) şi prin motor nu există curent. 6. În figura 6. De exemplu.6. Fie exemplul. Cele patru tranzistoare din schemă au rolul de contacte care funcţionează deschis/ închis.6. Fig. în cazul unui sens de rotaţie. Prin înfăşurarea de comandă a motorului se stabileşte un curent i cu sensul indicat pe figură.21.Comanda într-un sens de rotire Fig. .Cap. Astfel. pe durata Tc (timp de conducţie).25. Punte H cu tranzistoare de putere Puntea se alimentează cu tensiune continuă +U conectată între bornele (+U) şi masă (┴). Principiul de funcţionare.6. 6.22. pentru un sens de comandă al motorului.). În cazul acestei metode se menţin blocate (deschise) două tranzistoare de pe o diagonală a punţii şi se închid/ deschid alternativ celelalte două tranzistoare de putere.6. S-a reprezentat faptul că cele patru tranzistoare au rol de contacte electrice.20. aceste diode asigură protecţia tranzistoarelor T1 ÷ T4 împotriva tensiunilor inverse ce apar în timpul funcţionării (la blocare). Metode de comandă pentru puntea cu tranzistoare 6. “Schema echivalentă” a punţii este ilustrată în figura 6.23). Pentru celălalt sens de rotaţie se comandă la conducţie tranzistoarele T1 şi T2 iar tranzistoarele T3 şi T4 se menţin tot timpul blocate (fig. cât solicită înfăşurările motorului.3. Comanda în cel de al doilea sens de rotire. Fig.7.1. Sursa trebuie să fie capabilă să furnizeze curenţi mari. Rezultă că. Comanda simultană a două tranzistoare de pe o diagonală Fig.23.3. Conducerea nemijlocită a axelor unui robot 231 232 CONDUCEREA ROBOŢILOR comandă a motorului. iar în cadrul acesteia se menţin în conducţie T1 şi T2.

• pe cealaltă diagonală unul dintre tranzistoare se menţine tot timpul în conducţie. se menţin blocate permanent T1 şi T2 şi se comută simultan T3 şi T4. durata de repetiţie a impulsurilor. Principalul dezavantaj al acestei metode de comandă este acela că se comută (deodată) două tranzistoare.6.6. deci. pentru un sens de rotaţie. Comutarea solicită cel mai mult tranzistoarele şi. dar T2 şi T4 pot fi tranzistoare obişnuite (deoarece. Această metodă este cea mai simplă metodă de comandă pentru puntea H. Conducerea nemijlocită a axelor unui robot 233 234 CONDUCEREA ROBOŢILOR cu o astfel de tensiune. se întrerupe legătura bornelor motorului cu sursa de alimentare şi curentul prin motor începe să scadă. iar pentru celălalt sens de rotaţie se comută permanent numai T3). T1 şi T3 trebuie să fie tranzistoare scumpe.2) • tensiunea medie la bornele motorului are o valoare continuă. cu condiţia ca T. 6. Formele de variaţie ale tensiunilor importante din circuit (a).Comanda simultană a câte două tranzistoare de pe câte o diagonală a punţii adică modificând Tc motorul se alimentează cu tensiuni (continue) de valori diferite. Practica a dovedit că motorul de curent continuu funcţionează foarte bine dacă este alimentat iar cel de-al doilea se comută tot timpul. Se observă că tensiunea la bornele motorului îşi schimbă polaritatea în momentul blocării tranzistoarelor T1 şi T2. pentru un sens de rotaţie: Fig. modificând Tc se modifică turaţia motorului. Tensiunea la bornele motorului se menţine mereu de aceeaşi polaritate şi are valoarea medie: Um = 1 1 ∫ udt = T T0 T Tc 0 ∫ Udt + 0 = T (T U c + 0) = UTc T (6.6. scumpe. curentul să nu se anuleze. implicit. Metoda comutării unui singur tranzistor de pe o diagonală a punţii • se menţin blocate două tranzistoare de pe o diagonală. să fie suficient de scurtă pentru ca.24. deşi motorul este Rezultatul acestei integrale ne arată că: Fig. Când T1 şi T2 se blochează. În final. 6.7. În cazul acestei metode. Valoarea medie a tensiuni la bornele motorului se calculează cu relaţia: 1 1 U m = ∫ udt = [ ∫ (+ U)dt + ∫ (− U)dt] = T0 T 0 Tc 1 U 2T = [U(TC − 0) + (− U)(T − TC )] = (2TC − T) = U( C − 1) T T T T Tc T (6. Observaţie: este evident că.3) . În acest caz (fig. în înfăşurarea motorului apare o tensiune electromotoare indusă şi polaritatea acesteia este inversă tensiunii iniţiale. • dacă se menţine T constant şi se modifică Tc se obţin diferite valori pentru um.3.Cap. alimentat în impulsuri (tensiunea um este continuă).25. pentru celălalt sens de rotaţie. Se observă că motorul este alimentat cu o tensiune în impulsuri. prin înfăşurare. tensiunea la bornele motorului este cea cu polaritatea dată de cea a sursei de alimentare.26). Din această cauză. ambele tranzistoare trebuie să fie foarte rezistente. în consecinţă. se comută permanent numai T1.2. Când T1 şi T2 conduc.

Metoda comutării unui singur tranzistor de pe o diagonală a punţii Fig. 6. Fig. iar celelalte două sunt comutate alternativ.6. Conducerea nemijlocită a axelor unui robot 235 236 CONDUCEREA ROBOŢILOR 6. Formele de variaţie ale tensiunilor importante din circuit (b. Fig.29.).28.6.26. Comanda alternativă a două tranzistoare de pe o diagonală a punţii În acest caz.Formele de variaţie ale tensiunilor importante din circuit (c).6. Fig.Cap. . când celălalt.27. când unul.6.3.7. Comanda alternativă a tranzistoarelor de pe diagonala punţii.3. Şi în acest caz menţinând T constant şi modificând Tc se schimbă valoarea medie a tensiunii la bornele motorului şi deci turaţia acestuia. două tranzistoare de pe o diagonală se menţin permanent blocate.

Ecuaţia scrisă mai sus este valabilă pe durata T. În consecinţă. precum şi un fenomen de autoinducţie în inductivitatea La a înfăşurării. La· dia/dt este căderea de tensiune pe inductanţă. conduc T1 şi T2 şi supresarea e făcută de D3 şi D4.6. Această metodă de comandă este utilizată cel mai frecvent în aplicaţiile actuale.30). Ele au rol de protecţie. Tensiunea indusă în inductanţa înfăşurării de comandă a motorului În schema din fig.4) 6. Tensiunea electromotoare autoindusă are valori mari şi este de polaritate inversă faţă de cea normală aplicată la bornele motorului. amplasate astfel încât să se deschidă rapid. Se întocmeşte astfel modelul matematic al acestuia.30. Pe durata T-Tc alimentarea înfăşurării se întrerupe.30. Pentru un sens de rotaţie al motorului. când motorul este alimentat de la sursă. 6. Având în vedere faptul că printr-o sursă sensul curentului este de la (–) spre (+). Tensiunea electromotoare autoindusă are o asemenea polaritate încât să genereze un curent în acelaşi sens cu ia (care începe să scadă). Observaţii: 1.8. prin înfăşurare apare un curent i.3. Valoarea medie a tensiunii la bornele motorului este şi în acest caz: UTc 1 1 U U m = ∫ udt = [ ∫ Udt + 0 = (Tc + 0) = T0 T 0 T T T Tc (6. Principiile de proiectarea a algoritmilor de reglare Proiectarea algoritmilor de reglare începe întotdeauna cu descrierea prin ecuaţii matematice a funcţionării sistemului. Din acest motiv se introduc în circuit diodele de supresare. tensiunea electromotoare autoindusă (cu polaritate inversă) s-ar menţine în timp destul de îndelungat şi ar distruge tranzistoarele.30. De aceea se întrerupe legătura ce sursa +U. şi 6. excitaţia produce un câmp magnetic de inducţie B.30. deci există spire în mişcare într-un câmp de inducţie B. La întreruperea alimentării înfăşurări motorului în L se induce o tensiune cu polaritatea inversă iar aceasta poate distruge tranzistoarele (fig. Efectul va fi cel de punere în mişcare a conductorului.3. .6. apare numai efectul de generator. Astfel se indică tocmai proprietatea unei inductivităţi de a integra variaţiile bruşte de curent. Ra•ia este căderea de tensiune pe rezistenţa înfăşurării. li se aplică această tensiune de polaritate inversă (care le poate distruge). 6. În La apare o tensiune electromotoare autoindusă cu polaritatea indicată între paranteze pe figura 6.6. ue este cu atât mai mare cu cât turaţia care este mai mare(acesta este un efect de dinam suprapus peste efectul de motor). dar care se află în câmpul magnetic de inducţie B. care este efectul de motor. Pentru celălalt sens de rotaţie conduc T3 şi T4. Fig.7.5) ue este tensiunea contraelectromotoare care se induce în înfăşurarea de comandă. curentul prin înfăşurare are variaţii. aplicând la bornele înfăşurării de comandă o tensiune u. 3. Acest termen în ecuaţie apare deoarece La se alimentează cu o tensiune în impulsuri şi. În momentul întreruperii. Metoda are avantajul că ambele tranzistoare de pe diagonala punţii sunt la fel de solicitate şi sunt de acelaşi tip (preţ mediu).4. Rolul diodelor din scheme Diodele din schemă sunt de supresare. În ea va apare o tensiune electromotoare indusă şi deci apare şi efectul de generator. înfăşurarea de comandă a motorului s-a reprezentat prin schema ei echivalentă. În bobina La apare o tensiune electromotoare autoindusă care se opune acestei scăderi. De aceea. pentru cazul ilustrat în figurile 6. ca urmare. înfăşurarea de comandă este realizată sub formă de spire care au fost puse în mişcare (prin efectul de motor). tensiunea electromotoare autoindusă are polaritatea indicată pe figura 6. singura sursă din circuit în acest moment este tocmai această tensiune electromotoare autoindusă. Mecanismul fenomenului: După durata Tc cel puţin unul dintre tranzistoarele de pe diagonala care a condus se blochează. care produce ue.28. tranzistoarele T3 şi T4 se menţin permanent blocate. Conducerea nemijlocită a axelor unui robot 237 238 CONDUCEREA ROBOŢILOR De exemplu. Din cauza rotirii spirelor rotorului în câmpul magnetic produs de excitaţie apare un efect secundar de generator. Tensiunea aplicată la bornele motorului are expresia: u = R a ia + La u e = KΩ di a + ue dt (6. înfăşurarea este un conductor parcurs de curentul i.29. iar supresarea e realizată de D1 şi D2. Dacă diodele nu ar exista. 2. deci ia naştere o forţă electrodinamică (F = BiL) asupra conductorului. cu paranteze. Datorită întreruperii legăturii cu sursa +U. deoarece ele sunt solicitate în aceeaşi măsură (fiind comutate pe rând). ea poate periclita tranzistoarele de putere : când acestea sunt întrerupte. Ca urmare curentul ia are în primul moment o tendinţă de scădere.Cap. iar T1 şi T2 sunt comutate alternativ.

8) este teorema a 2-a a lui Kirchhoff aplicată pe circuitul înfăşurării rotorice (tensiunea aplicată înfăşurării este egală cu suma dintre căderea de tensiune pe rezistenţa înfăşurării. Li -inductivitatea înfăşurării de comandă.rotor mecanic Uex – tensiunea de alimentare a înfăşurării de excitaţie. Funcţionarea unui motor de curent continuu poate fi descrisă de următoarele ecuaţii: M(t) = Jeff ⋅ q(t) + K µ q(t) (6. vezi schema electrică a unui motor de curent continuu în Fig.6) reprezintă legea a doua a dinamicii. Ri –rezistenţa înfăşurării bobinajului de comandă. iex – curentul din înfăşurarea de excitaţie. cuplul este mai mare şi invers.7) Fig. De fapt. iex sunt mărimi electrice echivalente (celor magnetice).6. Lex. Aplicând transformata Laplace acestor ecuaţii se obţine: M(t) = Ka ⋅ ii(t) (6.6) se numeşte ecuaţia cuplului dezvoltat. Jeff – momentele de inerţie ale maselor în mişcare raportate la arbore .6. la un motor de curent continuu. Rex.8. 2) Proprietatea principală a motorului de curent continuu este că turaţia lui se schimbă dacă se modifică tensiunea la borne.6. q – poziţia unghiulară instantanee. În general pentru un sistem. Blocul operaţional motor . 6.31. Termenul Kb· q se numeşte tensiunea contraelectromotoare şi reprezintă o tensiune indusă care apare din cauza mişcării relative a înfăşurării rotorului în câmpul magnetic creat de înfăşurarea de excitaţie. Modelul matematic al sistemului Exemplu: cazul unei acţionări cu motor de curent continuu. ecuaţia (6. Ecuaţia (6. Această proprietate este echivalentă cu proprietatea exprimată de ecuaţia (6. De exemplu. funcţia de transfer exprimă relaţia de dependenţă dintre mărimea de ieşire şi cea de intrare. Observaţie: Dacă motorul este cu excitaţie cu magnet permanent atunci Uex.32. dacă rotorul este blocat (M→ ∞ ) curentul creşte foarte mult (şi motorul se poate arde). căderea de tensiune pe inductivitatea înfăşurării şi tensiunea contraelectromotoare). A doua dintre ecuaţii (6. Relaţia de legătură se numeşte funcţia de transfer f(t) a motorului.31 au semnificaţiile următoare: U – tensiunea de alimentare a motorului de curent continuu aplicată pe înfăşurarea de comandă (rotorică). Pornind de la cele 3 ecuaţii de mai sus se pune problema de a găsi o relaţie de legătură între tensiunea u aplicată la bornele înfăşurării rotorice şi poziţia q a arborelui rotoric. Cele două proprietăţi se pot deduce una din cealaltă pe baza ecuaţiilor interne ale motorului . ecuaţia (6.31.32 : Calculul pentru găsirea funcţiei de transfer se realizează mai uşor dacă se efectuează în operaţional. ii – curentul din înfăşurarea de comandă. Cuplul dezvoltat la arborele rotoric M(t) este egal cu cuplul total necesar pentru a pune în mişcare sistemul mecanic şi pentru învingerea frecărilor. Conducerea nemijlocită a axelor unui robot 239 240 CONDUCEREA ROBOŢILOR 6.8) Fig. Kµ . motorul de curent continuu se înlocuieşte cu un bloc de forma ca cea din Fig.coeficientul echivalent al frecării. De fapt. În schema bloc generală a unui sistem cu reglare automată.8) reprezintă relaţia de dependenţă dintre tensiunea la bornele motorului. cuplul dezvoltat este proporţional cu curentul din înfăşurarea de comandă. Se foloseşte ecuaţia (6.6) Prima dintre ecuaţii (6.7). M – cuplul dezvoltat la arborele rotoric. cu cât creşte cuplul. curentul din înfăşurare şi viteza arborelui rotoric. . Circuitul electric echivalent al MCC cu excitaţie separată Notaţiile utilizate în figura 6. Lex – rezistenţa şi inductivitatea înfăşurări de excitaţie.3.7) pentru că este mai uşor de operat matematic. Observaţii: 1) La motorul de curent continuu cu cât curentul din înfăşurarea rotorică este mai mare.6.Cap.7) exprimă faptul că. Notaţiile de pe figură sunt : u(t) = Ri ⋅ ii(t) + Li dii (t) + Kbq(t) dt (6. cu atât creşte curentul.1.

este cea care se obţine la ieşirea “formulei”(în cazul nostru este mărimea care se transmite apoi electronicii de putere şi motorului pentru realizarea reglării).13) Mărimea de comandă este proporţională cu abaterea pentru mărimea prescrisă şi cu abaterea derivatei acesteia. mai întâi.3. se obţine funcţia de transfer a motorului de curent continuu: (6.Cap. y(t) – mărimea de comandă (aceasta se transmite electronicii de putere).8.17) y(t) = K P [q (t) − q (t)] d r y(t) – mărime de comandă.15) (6. 6. un algoritm de tip PI.12) a(t) – abaterea sau eroarea. se stabileşte câte un astfel de model matematic.8.10) este funcţia de transfer a motorului de curent continuu în operaţional sau modelul matematic al motorului de curent continuu (ne arată cum depinde poziţia arborelui rotoric de tensiunea aplicată la bornele motorului). în operaţional: y(t) = K P [q d (t) − q r (t)] + K V [q d (t) − q r (t)] (6. Y(s) = K V [A(s) + 1 A(s)] sTi (6.2. La implementare se folosesc metode numerice de integrare şi derivare.3.9) (6. După determinarea modelului matematic al întregului sistem trebuie ales un algoritm de reglare. traductor. Observaţie: algoritmul PI are avantajul de a conduce sistemul spre eroare nulă în regim staţionar (stabilizat). Vom folosi. qd(t) – qr(t) = a(t) (6. De aceea (6. Ka s J eff Li + (Li K µ + R i J eff ) s + R i K µ + K a K b 2 Observaţie: anterior în (6.18) . c) Algoritmul de tip PI . 6.3. numită constanta algoritmului.15) este corespondentul în operaţional al funcţiei de transfer.constanta de proporţionalitate a algoritmului. La algoritmul de tip P mărimea de comandă este proporţională cu abaterea. Este diferenţa dintre evoluţiile în timp ale mărimilor de prescriere şi de reacţie.8’) M(s) = K a ⋅ Ii (s) U(s) = R i ⋅ Ii (s) + s ⋅ L i ⋅ Ii (s) + s ⋅ K b ⋅ Q(s) Q(s) = F(s) U(s) Ka F(s) = 2 s[s J eff Li + (Li K µ + R i J eff )s + R i K µ + K a K b ] Rolul proiectării este determinarea Kp şi Kv. funcţia de transfer a motorului se determină ca raport dintre turaţia rotorului şi tensiunea aplicată la bornele motorului: Efectuând calculele. Kp – constantă de proporţionalitate. caracterizat prin formula: y(t) = K P [a(t) + (6. Determinarea formei numerice a algoritmului de reglare PI Întrucât microprocesorul/microcontrolerul nu calculează cu o formulă scrisă în forma (6.16) pentru FV (s). a(t) .16) Relaţia (6. ne propunem să obţinem o formă pentru algoritm.17).6’) (6. pe baza modelului matematic al sistemului. De aceea.10) a fost dedusă expresia Q(s)/u(s) (funcţia de transfer pentru comanda în poziţie). Aceasta înmulţită cu s ne conduce la expresia (6. în cazul comandării unui motor de curent continuu.14) Forma (6. De foarte multe ori în robotică se foloseşte comanda în viteză.17). de exemplu. b) Algoritmul proporţional-derivator (PD) are expresia: KP . Conducerea nemijlocită a axelor unui robot 241 242 CONDUCEREA ROBOŢILOR M(s) = s 2 ⋅ J eff ⋅ Q(s) + s ⋅ K µ ⋅ Q(s) (6.17) trebuie adusă la o formă executabilă numeric. Prima etapă a proiectării este determinarea matematică a schemei bloc. qr = qreal (de reacţie).10) f v (t) = q(t) u(t) sQ(s) u(s) (6. care poate fi executată cu un microprocesor(cu funcţia de controler de ax). Alegerea algoritmului de reglare Algoritmele de reglare considerate clasice sunt: a) Algoritm de tip proporţional (P). Ti – constanta de timp a algoritmului.evoluţia în timp a abaterii. Observaţie : Pentru toate elementele componente ale câte unui sistem de reglare automată local: electronică de putere. are expresia: 6.7’) (6. Fv (s) = Fv (s) = (6. qd = qdorit (necesar). Pentru aceasta se trece (6. motor.11) 1 a ( τ ) dτ] Ti ∫ (6. transmisie.

3. Caracteristicile reglării numerice Întrucât regulatorul este implementat cu microprocesor sau microcontroler şi algoritmul trebuie executat cu mijloace digitale.tk+1] este suficient de scurt.5. 6. definită prin forma generală a funcţiei de transfer: Y(s) β 0 + β1s = A(s) α 0 + α1s (6. Calculăm: Fig.33.21). I= ∫ t tk 6.23) 6. În acest scop. uneori. integrând ecuaţia.8. Expresia lui y(t) o obţinem din ecuaţia (6. atunci valoarea exactă a integralei (egală cu aria suprafeţei de sub graficul funcţiei) poate fi aproximată cu aria unui trapez: Se pune problema găsirii expresiei lui y(t) din (6. intervalul de timp Te nu poate fi luat oricât de mic deoarece pe parcursul lui trebuie efectuate multe operaţii şi acestea durează un timp finit.6.19) face parte dintr-o clasă mai largă de algoritme. Pe parcursul fiecărei „felii de timp” Te trebuie să se execute.6. Forma discretă a algoritmului de reglare (6.21) prin integrarea ei pe durata fiecărui Te. conform cu ordinul derivatelor din ecuaţie.34.6. Execuţia numerică a operaţiilor şi calculelor este cu atât mai precisă cu cât Te sunt mai scurte. Aproximarea valorii exacte a unei integrale cu aria unui trapez În (6. câte o dată. Fie o funcţie f(t) şi două momente tk şi tk+1.20) Acestei clase de algoritme scrisă în operaţional îi corespunde următoarea ecuaţie diferenţială în timp: α 0 y(t) + α1 y(t) = β 0 a(t) + β1a(t) (6. Integrarea se face de un număr de ori. Calcul unei integrale Dacă intervalul [tk. Pe de altă parte. În sistemele comandate numeric intervalul total de timp (în care se face conducerea) se împarte în mici intervale de timp Te numite durate de discretizare sau.3. Integrarea se face aplicând mijloace numerice şi se ajunge la o expresie pe care microcontrolerul o poate executa. Metoda trapezelor de integrare Este o metodă de calcul aproximativ al unei integrale. În cazul de faţă este suficientă o singură integrare.23) perioada de timp considerată este chiar o perioadă de eşantionare.8. Se integrează ecuaţia obţinută în fiecare perioadă de eşantionare.21) trebuie folosite metode numerice de integrare.3. funcţiile şi comenzile aferente conducerii sistemului. perioade de eşantionare. la integrarea ecuaţiei (6. toate calculele.Cap. Observaţie: rezolvarea ecuaţiilor diferenţiale se face prin integrarea lor. Observaţie: la integrare se va ţine cont şi de faptul că: t(τ)dτ k−1 . I* ≅ f (t k ) + f (t k −1 ) f (t k ) + f (t k −1 ) (t k − t k −1 ) = Te 2 2 (6. Conducerea nemijlocită a axelor unui robot 243 244 CONDUCEREA ROBOŢILOR Y(s) sK V Ti + Kv = A(s) sTi (6.19) Algoritmul (6.21) Fig.4. 6.8.22) Pentru determinarea expresiei lui y(t) se foloseşte metoda trapezelor de integrare.

pentru modelul motorului Li. β1. de la nivelul câte unei cuple cinematice conducătoare. 2) Mărimile ak. 6. c1. Aceşti coeficienţi se proiectează. În această expresie (6. Observaţie: pentru alegerea perioadei de eşantionare se foloseşte teorema eşantionării. Se alege un tip de algoritm.constanta mecanică a motorului este cea mai mare şi este considerată dominantă).26) : yk – este mărimea de comandă din perioada de eşantionare curentă.Cap. prin identificare. KP. de obicei P sau PI. Se alege o perioadă de eşantionare Te. b. α1.3. Se calculează apoi coeficienţii α0. β0.17) a algoritmului PI care conţine coeficienţii KP şi Ti. pentru motorul de curent continuu. Se calculează. de exemplu. coeficienţii α0. Modalităţi de efectuare al calculelor Controlerul de ax din SCL. cunoscând KP .26): a. de către inginerul automatist. Conducerea nemijlocită a axelor unui robot 245 246 CONDUCEREA ROBOŢILOR ∫ t Se obţine: tk . Cu această relaţie microcontrolerul calculează în fiecare perioadă de eşantionare Te. Procedura de calcul al coeficienţilor din formula (6. Ti şi Te) şi apoi coeficienţii d0. Se obţin. dar cu alte valori pentru coeficienţi. valori concrete pentru coeficienţii din formula generalizată (6.28) Te Te Te + β1 α1 − α 0 β0 − β1 2 2 2 d0 = c1 = d1 = Te Te Te α0 α0 + α1 + α1 + α1 α0 2 2 2 β0 Observaţie: aceste relaţii se obţin prin rezolvarea până la capăt a soluţiilor obţinute prin integrarea trapezelor. β0. (F4) Calculul mărimii de comandă yk . (cunoscând KV .27): Te ≤ 0. cu mărimea yk calculată anterior. Este forma în care se execută algoritmul de către microprocesor sau microcontroler. are de efectuat următoarele seturi de calcule: (6. d1. Se calculează. ak-1 – este abaterea din perioada de eşantionarea precedentă. c1. cât timp are loc conducerea nemijlocită a axei. În concluzie: se porneşte de la schema bloc a sistemului de conducere local: .26) (F5) Comanda electronii de putere. d. Tm . cu y k = d 0 a k +1 + d1a k + c1 y k (6.24) Observaţie: Algoritmul descris asigură reglarea vitezei. 3. Ti şi Te . Obţinem: y k = d 0 a k + d1a k −1 + c1 y k −1 (6. a(tk)= ak. yk din fiecare perioadă de eşantionare se memorează deoarece se folosesc şi în perioada de eşantionare următoare. d1. apoi. β1. Funcţiile de transfer pentru modelele matematice ale tuturor blocurilor componente în sistem. 4. 2. pe baza modelului matematic al procesului şi cu metodele specifice automaticii. (F2) Preluarea mărimii real executate. (F3) Calculul abaterii dintre cele două mărimi de mai sus. c1 se calculează cu relaţiile (6. ak – este abaterea din perioada de eşantionarea curentă. care au valori concrete pentru parametrii elementelor conţinute (de exemplu. Se pleacă de la forma continuală (6. dintre toate constantele componentelor sistemului.26). Coeficienţii d0. b) calcule ONLINE (F1) Preluarea mărimii prescrise. Jeff). y(τ)d(τ) = y(t ) − y(t k k −1 ) (6.26). şi se calculează coeficienţii KV. unde Tj sunt constantele de timp dominante din proces (constante dominante sunt constantele de timp cele mai mari .1⋅ ∑ Tj j (6. Conform acestei teoreme se alege y(t k ) + y(t k-1 ) α0 Te + α1[y(t k ) − y(t k-1 )] = 2 a(t ) + a(t k-1 ) = β0 k Te + β1[a(t k ) − a(t k-1 )] 2 Se obişnuieşte să se noteze: y(tk) = yk.26) Aceasta este forma discretă pentru un algoritm de reglare de tip PI. Observaţii: 1) Calculele F1÷F4 se efectuează în fiecare perioadă de eşantionare. care se introduc în memoria microcontrolerului. y(tk-1)= yk-1. d1. a(tk-1)= ak-1. k−1 6. Se alege o perioadă de eşantionare Te.7. de la generatorul de traiectorie.25) a) calcule OFFLINE 1. Ti cu metode de proiectare din automatică. iar acesta execută calculul în fiecare perioadă de eşantionare. Dacă se doreşte şi reglarea poziţiei se efectuează un raţionament asemănător şi se ajunge la o formulă tot de forma (6. yk-1 – este mărimea de comandă din perioada de eşantionare precedentă. Notă: calculele şi operaţiile efectuate de la nivelul fiecărui SCL reprezintă nivelul cel mai de jos (ultimul nivel) de calcule din conducerea unui robot.8. Ri. c. coeficienţii d0. α1. de la traductor. astfel.

Cap. Cu alte cuvinte. care provin din Kv şi Ti. Comanda unui motor de curent alternativ cu un invertor . d1.36.6.35 au semnificaţiile următoare: CA – controler de ax. α1. c1 (parametrii algoritmului). Adică ei calculează coeficienţii α0.37.4.6.d1 şi c1 sunt nişte numere concrete = algoritmul de reglare propriu-zis. c1 se află (pornind de la schema bloc operaţională) pe baza parametrilor fizici ai componentelor sistemului de conducere locală. Fig. Sinteza celor trei tensiuni alternative reglabile se realizează folosindu-se ca element de execuţie un invertor în punte trifazată.mărime de prescriere. Conducerea nemijlocită a axelor unui robot 247 248 CONDUCEREA ROBOŢILOR Fig. T – traductor. iar aceştia se proiectează pornind de la schema bloc operaţională. M – motor. De exemplu: pentru formula mai sus demonstrată anterior automatiştii determină valorile numerice concrete pentru d0. β1. Succesiunea de calcule într-un SCL Notaţiile utilizate în figura 6. wω. iar circuitul care transformă curentul continuu în curent alternativ se numeşte invertor. valorile concrete ale parametrilor d0. Observaţie: circuitul care transformă curentul alternativ în curent continuu este numit redresor. β0.38. Pe baza acestei scheme bloc operaţionale automatişti proiectează algoritmul. Calculul se efectuează în operaţional (cu transformata Laplace) pentru simplificarea calculelor.6. rv – mărime de reacţie. Schema bloc operaţională a SCL În final se obţine o formulă în care d0 . Această formulă se înscrie în memoria controlerului de ax şi se foloseşte în fiecare perioadă de eşantionare la calculul mărimii de comandă y care comandă electronica de putere şi motorul în sensul anulării abaterii (dintre wv şi rv). 6. d1. Stabilirea funcţiei de transfer pentru motor Se alcătuieşte schema bloc operaţională a sistemului de conducere locale (o schemă cu blocuri matematice). Fig. EP – electronică de putere. 6. care este o formulă matematică care descrie funcţionarea elementului respectiv. Pentru fiecare element fizic din schema bloc se determină funcţia de transfer f(t). Comanda şi alimentarea motorului asincron În schemele de acţionare moderne alimentarea motorului asincron se face cu un sistem trifazat de tensiuni alternative cu amplitudinea şi frecvenţa variabile.35. De exemplu: pentru motor: Fig.6.

La începutul.27). Pentru sinteza alternanţei pozitive trebuie alese durate mai mari de T/2. de putere medie (până la 3KW). Microprocesorul. mijlocul şi sfârşitul sinusoidei care trebuie sintetizată se aleg impulsuri cu durata T/2 pentru că valoarea medie a tensiunii trebuie să fie 0. Durata impulsului (τ) este însă variabilă. Observaţie: există astăzi microcontrolere moderne care ştiu să genereze la ieşire direct semnal PWM (au ieşiri dedicate PWM). Se comandă câte două dintre tranzistoare câte unei punţi (de exemplu T1 şi T4). masă.38 : 1) Tranzistoarele T1. Tensiunea de alimentare a fiecărei înfăşurări este o tensiune în impulsuri. Pe diagonala fiecăreia dintre punţile H este conectată câte una dintre înfăşurările motorului.6. 6. Fig. Tensiunea în impulsuri ce alimentează înfăşurările motorului Valoarea medie a tensiunii în impulsuri se calculează cu relaţia : Fiecărei valori instantanee ui îi corespunde o durată τ conform relaţiei (6.39. 3) Schema se alimentează tot de la o sursă de tensiune continuă între (+) şi (–).T6 pot fi de orice tip: bipolare.41.32. utilizat la comanda tranzistoarelor punţii. ca în figura 6. Cu această punte se sintetizează trei tensiuni alternative care se aplică înfăşurărilor motorului.6. s-au ales 9 valori ui ( i = 1÷9 ) ale tensiunii sinusoidale. MOS sau IGBT. valoarea medie a tensiunii aplicate înfăşurărilor are.6.Cap. Sinteza unei tensiuni în impulsuri cu valoarea medie sinusoidală Pentru sinteza unei tensiuni sinusoidale de o anumită amplitudine şi frecvenţă se porneşte de la câteva valori instantanee ale ei. se modifică τ cu periodicitatea Ts.40. Dacă se asigură ca valorile lui τ să se modifice sinusoidal. Dacă frecvenţa tensiunii sinusoidale ce trebuie sintetizată este fs şi este perioada Ts = 1/fs.20) întrucât la schema punţii H s-a mai adăugat doar un braţ cu două tranzistoare. 2) Schema seamănă foarte mult cu cea de la curent continuu (fig. Conducerea nemijlocită a axelor unui robot 249 250 CONDUCEREA ROBOŢILOR Observaţii cu privire la fig. pentru că este o schemă de invertor. Acest element de execuţie este o punte trifazată cu 6 tranzistoare de putere. Cele 9 valori instantanee ale tensiunii sinusoidale ce trebuie sintetizată. Este compus dintr-un microprocesor şi un modulator numeric de durată. Perioada de repetiţie a impulsurilor(impuls şi pauză) este constantă şi egală cu T. în figura 6. Schema bloc din fig. ca în figura 7. de asemenea.6. Fig. De pildă. Circuitul care asigură comanda PWM furnizează secvenţa de impulsuri de comandă pentru cele 6 tranzistoare ale punţii. pe rând cele aferente câte uneia dintre cele trei punţi H create. Fig. Se parcurge tabelul şi se comandă tranzistoarele de putere în ritmul impus de frecvenţa fs a tensiunii ce trebuie sintetizată.6.40. Modificând valoarea mărimii τ se modifică valoarea medie a tensiunii.41. o variaţie sinusoidală. Principiul sintetizării tensiunilor alternative este: Se comandă tranzistoarele punţii. iar pentru sinteza alternanţei negative trebuie alee durate mai mici decât T/2.27) . este aferentă unui motor asincron cu rotorul în scurtcircuit.38. păstrează în memoria sa un tabel cu valorile succesive ale lui τ .6. U med 1 1 U = ∫ udt = [ ∫ dt + T0 T 0 2 T τ ∫ (− 2 )dt] = τ T U 1 U U U U 2τ − T U 2τ = [ τ − T + τ] = = ( − 1) T 2 2 2 2 T 2 T (6.

Ori de câte ori curentul depăşeşte valoarea maximă admisă. circuitul “sesizare curent” inhibă comanda (opreşte alimentarea motorului).6. Evident însă că şi consumul de la sursă creşte.Cap.6.6.45. Înfăşurările uni MPP cu 4 faze alimentate prin chei cu tranzistoare bipolare 6. Există mai multe moduri de comandă a motoarelor pas cu pas: Fig.). 6. principial. în funcţie de o anumită secvenţă de comandă (cele patru tranzistoare sunt iniţial blocate).Schema de comandă a unui motor asincron Puntea trifazată se alimentează cu o tensiune continuă. 2) Diodele din schemă sunt de supresare (pentru descărcarea tensiunilor induse în bobină la blocarea tranzistoarelor şi protejarea lor). sunt alimentate câte două înfăşurări simultan.5. Comanda simetrică dublă În acest caz (fig. Comanda simetrică simplă Fig. Circuite de alimentare pentru motoarele pas cu pas Înfăşurarea motorului pas cu pas MPP se alimentează folosind chei cu tranzistoare. În schema bloc sunt prezentate şi alte surse de curent continuu care sunt necesare circuitelor de comandă PWM pentru tranzistoarele din punte. Principiul de comandă constă în a trece în stare de conducţie. la un moment dat. Conducerea nemijlocită a axelor unui robot 251 252 CONDUCEREA ROBOŢILOR Schema bloc de alimentare a unui motor asincron este cea din fg. cele patru tranzistoare. Motorul pas cu pas este un convertor impuls electric – increment de deplasare.43. poate fi alimentat cu o schemă ca cea din fig.1.5.6.42. Fie exemplul unui motor pas cu pas cu patru înfăşurări care.44. Comanda simetrică simplă a înfăşurărilor unui MPP cu 4 faze La aplicarea câte unui impuls în baza unui tranzistor motorul face un pas.43. la aplicarea unui nou impuls MPP va efectua câte un pas. Avantajul obţinut constă în creşterea cuplului motor. Pentru schimbarea sensului de rotaţie impulsurile se aplică în ordine inversă (vezi fig.6. 6. Frecvenţa de aplicare a impulsurilor de comandă determină frecvenţa de păşire a motorului pas cu pas. 6.). Între redresorul de alimentare şi puntea trifazată se află un circuit de sesizare a curentului care are rol de protecţie.6.6.42. Observaţii: 1) Trecerea în conducţie a unui tranzistor se face aplicând un impuls în baza lui. Şi în acest caz. pe rând.2.44. Fig. .5. Această tensiune continuă se obţine de la reţeaua de curent alternativ prin redresare şi filtrare.

Fig.6.6. Fig.Cap. Schemă de alimentare bipolară a unei înfăşurări a unui MPP.47. 3.5.cu linie întreruptă). De aceea.6. la încărcări mari. Observaţii generale cu privire al motorul pas cu pas: 1. 6. Motorul pas cu pas e un motor hot function. toate aceste cazuri de comandă sunt metode de comandă unipolară (unipolar seminificând aici curent de o singură polaritate ). Pentru comanda motoarelor pas cu pas cu patru faze sunt necesare 16 tranzistoare.47. Temperatura lui normală e de 1050C.48. dar pentru fiecare înfăşurare a motoului pas cu pas e necesară o schemă ca cea din figura 6.4. dublă şi bipolară ceea ce înseamnă că înfăşurările sunt comandate după o secvenţă simetrică dublă. adică permit trecerea curentului prin înfăşurare în ambele sensuri. Comanda unipolară nesimetrică a înfăşurărilor unui MPP cu 4 faze . pentru fiecare înfăşurare a motorului pas cu pas folosindu-se un circuit de forma unor punţi H cu tranzistoare. iar când se comandă T3 şi T4 curentul circulă în sens invers (marcat pe fig. Comanda bipolară Schemele mai perfecţionate permit o comandă bipolară a înfăşurării. Comanda nesimetrică Avantajul care se obţine aplicând o astfel de metodă de comandă constă dintr-o mai bună stabilitate în funcţionare. În cazul comenzii bipolare secvenţa de comandă este cea din fig. Comanda simetrică dublă a înfăşurărilor unui MPP cu 4 faze 6. 6.6. MPP nu poate fi încărcat la cuplul nominal pentru că.46. Comanda e numită simetrică.47. scapă paşi. adică înfăşurările sunt comandate câte două simultan. şi cu curent în ambele sensuri. Conducerea nemijlocită a axelor unui robot 253 254 CONDUCEREA ROBOŢILOR Schema şi metodele mai sus prezentate presupun o circulaţie a curentuli prin înfăşurare într-un singur sens (de la +U la masă).5.45. ca în figura 6.6. Când se comandă T1 şi T2 curentul circulă pe traseul indicat de săgeata plină. Acest lucru provine din faptul că înfăşurările primesc curent şi când motorul nu execută paşi. Observaţie: schema e identică cu cea de la motoarele de curent continuu.47. Pentru aceste scheme elementele de execuţie sunt mai complicate. Fig. Practica a dovedit că o funcţionare fără scăpare de paşi se obţine numai la încărcarea la 1/3 din cuplul nominal. 2. Comanda corectă a unei înfăşurări presupune asigurarea unui curent prin înfăşurare de o valoare impusă (dificil de realizat).3.

Motorul ce tinde să se răspândească cel mai mult în acţionări este motorul de curent continuu fără perii.6. • variantele constructive realizate au un raport putere – gabarit mai bun decât la motorul asincron. 6. căldura se elimină greu. Conducerea nemijlocită a axelor unui robot 255 256 CONDUCEREA ROBOŢILOR Fig. în funcţie de poziţia statorului. Concluzie: în ultimul timp se constată o tendinţă de a se renunţa la folosirea motoarelor pas cu pas. Se realizează rotorul din magnetul permanent şi amplasează înfăşurările în stator. Motorul de curent continuu are ca principal avantaj flexibilitatea. În acest caz schema devine foarte scumpă. Motorul pas cu pas nu poate funcţiona la turaţii foarte mari. deci are şi un preţ mai mare datorită necesarului de materii prime. motorul fără perii este o variantă modernă de motor. Uzual se foloseşte la maximum 600 -1000 paşi/ s. Acţionări cu motoare de curent continuu fără perii Denumit în literatura de specialitate de limba engleză Brushless DC (BLDC). Pe măsură ce creşte frecvenţa de comandă.) Fig. 6. la care reglarea turaţiei se realizează tot prin modificarea tensiunii de alimentare. Din aceste motive MCC este foarte frecvent folosit în robotică. bobinajul se încălzeşte în timp şi.49. Orice motor pas cu pas are una sau mai multe frecvenţe de rezonanţă.48. Principial motorul de curent continuu fără perii se obţine prin “transformarea” unui motor de curent continuu cu excitaţie cu magnet permanent astfel: a) se inversează funcţia statorului cu cea a rotorului. • s-au eliminat periile şi astfel uzura mecanică a acestora (durata de viaţă a unor motoare fără perii depăşeşte 70000 ore de funcţionare). dar cuplul scade mult. 6. ce provine din faptul că i se poate modifica turaţia foarte uşor. în ultimii ani au fost dezvoltate noi variante de motoare. creşte şi turaţia. MPP începe să funcţioneze oscilant. Dacă e comandat pe una dintre frecvenţele respective.49. care îmbină caraceristici ale MCC cu cele ale mtorului de curent alternativ sincron (se comndă în sincronism cu rotirea axului său roric) şi cu cele ale motorului pas cu pas (se comandă cu impulsuri de curent).6. cu mişcări înainte – înapoi. . Pentru eliminarea acestor dezavantaje. Poziţia curentă a rotorului e determinată cu un traductor de poziţie introdus constructiv în motor (vezi fig. prin simpla schimbare a valorii tensiunii de la borne. 5. Dezavantajul motorului de curent continuu clasic este că are rotorul bobinat. Creşterea cuplului dezvoltat şi eliminarea fenomenului de rezonanţă se obţine folosind comanda simetrică bipolară dublă.Cap.6. materiale şi manoperă sporite. b) se înlocuieşte sistemul de comutare mecanic cu un sistem de chei cu tranzistoare de putere ce se comută adecvat pentru alimentarea înfăşurării statorice. fiind în interior.6. Rotorul MCC FP Motorul de curent continuu fără perii îmbină avantajele reglării turaţiei sale prin modificarea tensiunii de alimentare (ca la motoarele de curent continuu) cu următoarele avantaje: • prin amplasarea bobinajului în stator nu se produce încălzirea rotorului. Alt dezavantaj este că are gabarit mai mare decât motoare de curent alternativ de aceeaşi putere. dar s-au eliminat dezavantajele mai sus amintite. de aceea trebuie evitată comanda pe aceste frecvenţe. Comanda bipolară 4.

Aceste dependenţe se realizează prin amplasarea adecvată a înfăşurărilor din stator. Observaţii: 1.30) Adică se obţine proporţionalitate între cuplul motor şi curent. Fie cazul motorului fără perii cu două înfăşurări (fig.2. • se alimentează înfăşurările cu impulsuri de curent de amplitudine constantă. .50. fiecare dintre câmpuri producând câte un cuplu. de forma: M1 = i1K m sin θ M 2 = i 2 K m cos θ (6. cu înfăşurări concentrate. notat MCC FP – ID. curentul cu care se alimentează fiecare dintre înfăşurări se asigură să aibă câte o dependenţă de poziţia unghiulară. greu de realizat. cobalt-samariu.6. injectat. 2. Momentul comutaţiei curentului în raport cu unghiul θ se alege astfel încât cuplul să fie constant pe porţiunea în care şi curentul aferent. • o variaţie sinusoidală a curentului prin fiecare înfăşurare (tot în funcţie de unghiul de rotaţie). Din punct de vedere practic. preţul ridicat al materialelor din care se fabrică magneţii permanenţi (obţinerea gabaritelor mai mici presupune utilizarea unor materiale cu proprietăţi magnetice foarte bune: aliajul AlNiCo. prin construcţia motorului şi prin modul de alimentare al înfăşurărilor se asigură simultan: • o dependenţă sinusoidală a cuplului motor cu poziţia unghiulară a rotorului.52): Dependenţa trapezoidală a cuplului de unghi se obţine folosind magneţi cu forţă coercitivă mare.6. cuplul dezvoltat e independent de poziţia rotorului.29) Fie cazul unui motor cu trei înfăşurări (fig. Comanda trapezoidală aplicată la MCC FP – IC La cea de a doua variantă de MCC FP. Totodată. în raport cu θ.6. Fig. • generarea unui curent cu variaţie sinusoidală în raport cu θ necesită un echipament electronic complex (scump). şi îşi însumează efectele: M= 2 M 1 + M 2 = Km I 2 i1 = I sin θ i 2 = I cos θ sin2 θ + cos2 θ = KmI (6. Comanda sinusoidală aplicată la MCC FP – ID În cazul acesta. Principiul MCC FP ID cu 2 faze 6. neodin-fier-bor etc.): Fig. este constant.. ca la MCC.50. notat MCC FP – IC. Variaţia cuplului de fază şi a curenţilor de fază de poziţia unghiulară Cele două cupluri sunt în cuadratură.6. Aferent celor două tipuri constructive există şi două metode de comandă: 6. Există două variante constructive de motoare fără perii: cu înfăşurări distribuite. prin construcţie se asigură: • o variaţie trapezoidală a cuplului în raport cu unghiul de rotaţie.1.Cap. pentru a realiza dependenţa i de θ.6.51. Pentru o poziţie θ a axei magnetului rotoric. este nevoie de traductor interior. 6. această variantă de MCC FP şi metoda aferentă de comandă prezintă două dezavantaje: • construcţia mecanică a statorului şi rotorului trebuie să asigure dependenţa sinusoidală a momentului motor de unghiul θ. Conducerea nemijlocită a axelor unui robot 257 258 CONDUCEREA ROBOŢILOR • • • • Totuşi MCC FP mai are a serie de dezavantaje: necesitatea traductorului de poziţie încorporat.6. asupra rotorului acţionează câte un câmp magnetic produs de fiecare înfăşurare. materiale foarte scumpe).

se prezintă schema bloc a unui sistem de poziţionare hidraulic.54.Cap. Fig. Debitul este determinat de un sertar de distribuţie a cărui comandă se face cu o servovalvă care. în momentul potrivit şi sesizat cu ajutorul traductorului de poziţie din interior.7. MCC FP cu trei faze Fig. Comanda redresorului se face astfel încât curentul furnizat de acesta să se menţină la o valoare constantă.55. Conducerea nemijlocită a axelor unui robot 259 260 CONDUCEREA ROBOŢILOR Fig.6.55. Fig. la rândul ei.52. O variantă de schemă bloc pentru comanda unui motor de curent continuu fără perii este cea din fig. fiind realizată o reglare a curentului a cărui valoare instantanee este sesizată cu traductorul de curent TC.54. Circuitul de comutare al fazelor sesizează poziţia rotorului motorului de curent continuu fără perii şi comandă tranzistoarele să intre în conducţie la momentele potrivite.6. 6. Dependenţa cuplului determinat de curentul de fază IAB de poziţia unghiulară a rotorului Dacă şi curenţii IBC şi ICA au variaţii similare pentru cea indicată cu IAB. Comanda electronică a servomotoarelor În figura 6. Alimentarea cu impulsuri de curent a înfăşurărilor se realizează cu o schemă electronică mult mai simplă decât cea aferentă metodei anterioare.6. Curentul prin înfăşurările servovalvei comandă până la urmă debitul lichidului prin motorul hidraulic. 6. .53.6. este comandată electric. Circuitul redresor transformă tensiunea alternativă trifazată de la reţea într-o tensiune continuă cu care se alimentează invertorul. Q2) lichidului determină viteza de deplasare a pistonului. atunci cuplul rezultat prin însumarea efectelor este constant şi: M = Km I similar cu MCC. Debitul (Q1.6. Sistem de poziţionare hidraulic .Schemă de alimentare şi comandăpentru un MCC FP Curentul de amplitudine constantă furnizat de redresor care alimentează invertorul este comutat de la o fază la alta a motorului fără perii.

Circuit de comandă a curentului prin servovalvă Semnificaţia notaţiilor din fig. GS – generatorul de semnal dither.57. astfel încât abaterea de poziţie să se anuleze (s-a realizat o buclă de reglare a poziţiei). La intrarea acestuia se află abaterea dintre poziţia prescrisă şi cea reală. poziţia pistonului.6.56 este : L1 . a sertarului de distribuţie. AP – amplificator de putere. Fig. Amplificatorul AS+AP este comandat cu alte două etaje AD + AM: AD – amplificator diferenţial ce amplifică diferenţa dintre curentul prescris şi cel propriu-zis generat. Se obţine astfel reacţia de poziţie.Cap. . fără agăţări. Conducerea nemijlocită a axelor unui robot 261 262 CONDUCEREA ROBOŢILOR Poziţia curentă a pistonului se măsoară prin conversia ei în mărime electrică cu ajutorul unui potenţiometru liniar. Curentul de dither Curentul prin înfăşurările servovalvei se reglează continuu funcţie de valorile prescrise şi se urmăreşte cu două bucle de reacţie. în final.L2 – înfăşurările servovalvei care pot fi legate fie în serie.57.6. Efectul curentului de dither este acela de a provoca mici mişcări dute – vino.6. fie în paralel. 6. ca să se evite îmbâcsirea cu impurităţi a ghidajului prin care culisează pistonaşul şi pentru a se asigura o comandă lină.56. Schema bloc pentru circuitul de comandă a servovalvei este cel din fig. cu frecvenţă ridicată. Curentul de alimentare a înfăşurărilor se obţine cu ajutorul unui amplificator în două etaje AS+AP: AS – amplificator sumator cu care se însumează mai multe mărimi de intrare.6.). ce se însumează cu curentul continuu de la intrarea AS. pentru pistonaşul din sertarul de distribuţie. una realizată cu rezistenţa Rr şi una realizată cu AD. Poziţia este reglată cu un regulator electronic. se cunoaşte valoarea limită a curentului cu care se alimentează înfăşurările. iar la ieşirea regulatorului se obţine curentul de comandă pentru înfăşurările servovalvei cu care se reglează debitul de lichid şi.6. care furnizează o tensiune sinusoidală de 200 Hz. Fig. Din fila de catalog. numită curent de dither (fig. care amplifică diferenţa dintre prescriere şi reacţie. Peste curentul continuu de alimentare a înfăşurării se suprapune o componentă de curent alternativ. AM – amplificator de măsură.56.

Barabás T.J. Vesselényi T. Timişoara. Barcelona. 1984. Asupra unor algoritme numerice de reglare modală a poziţiei pentru acţionarea cu motor de c. Elsevier Inc. vol. Al IV-lea Simpozion naţional Teoria sistemelor. pp. New York. Don Mils (Ontario).7-2. Popescu V. Problema conducerii unui robot industrial.. 1986. Dolga V. Dragomir T. A. Bucureşti.. Iaşi. vol. Precup A. München. 2001 14.2. Activitatea colectivului multidisciplinar de robotică din Timişoara. Baia Mare Octombrie 1989. New York..11 15. 2004 29. Dragomir. Bose. Editura “Orizonturi Universitare”. Bose. Singapore. 1997 . Minciu D. 30. Bogdanov I. Editura Tehnică Bucureşi. Estimatoare în sisteme de conducere a acţionărilor electrice. p. Revista Robotică şi Management nr. Optimizarea sistemelor automate de conducere a acţionărilor electrice pentru roboţi industriali. Visionäre Produkte. Drăgulescu D.2. Timişoara. vol.. Florida.. Modern Power Electronics and Motor Drives. Fabriken der Zukunft. Amsterdam.. Wien. Mihǎescu M. 2006 18. vol. 1986.2. Problema interpolării în conducerea unui robot. 2004 25.. iulie 1992. Bogdanov I. Technologiemanagement... 1986.. realizat cu microprocesorul 8085. Neag I. pp. 2006 20. Editura Universităţii din Oradea. 1999 7. Andreiciuc D.. Single microprocessor system of speed digital control for three DC motors..264 CONDUCEREA ROBOŢILOR BIBLIOGRAFIE 1. Mai. Ionescu F. nov... 2002 21. Al IX-lea Simpozion naţional de Roboţi industriali. Probleme şi metode de bază. Technology and Applications.c. Al IV-lea Simpozion naţional de Roboţi Industriali. 1985 23. 1989 10. Traductoare şi senzori. 11. pp. A. Timişoara. finanţare prin proiect “Leonardo da Vinci”.135-144 9.( Prentice Hall). Legătura spaţiu-timp în conducerea unui robot. San Juan. Editura Politehnica Timişoara. Mia 1988..II. 1998 2. Bogdanov I. Bogdanov I. Andreiciuc D.. Mexico City.1-4. Teză de doctorat UPT.. Timişoara. Bogota. Santiago. Advances and Trends. Boldea I... Editura Didactică şi Pedagogică.. Bogdanov I. Bogdanov I. Neag I. Springer Verlag. Teză de doctorat. Janvier 1992 24.. Tokyo... Proceedings on The Fifth National Conference on Electrical Drives. Bogdanov I. Popa A. Bullinger H-J. 2004 22. Power Electronics and Variable Frequency Drives.. Proceedings on The Sixth National Conference on Electrical Drives.c.pp. Craiova. Al XII-lea Simpozion naţional de Roboţi industriali cu participare internaţională. Alexa D. Regulatoare Automate. 5... Craiova.. Timişoara. pp..A. Editura Orizonturi Universitare. Circuite electronice pentru acţionarea cu motoare pas cu pas a unui robot industrial. Hanser Verlag. Nasar S. Precup A. vol. 1997 19. Mailand.. Wien.. B. Bullinger H-J. Maniu I. 1999 4. Dolga V. Paris. Paris.. Dragomir T. Menlo Park (California).2.I. Craig J..3.p. Three microprocessor families in several electrical drives control. Bogdanov I.385-390 32. Gâtlan L. conducerea şi programarea roboţilor industriali. Hanser Verlag. Moangă.K. Modelarea. Electric Drives. pp.Drăgănoiu. Sydney. London.2.. Timişoara. Octombrie 1994. Forschen und Arbeiten in einer vernetzten Welt. Heidelberg. Berlin.. simularea şi comanda manipulatoarelor şi roboţilor industriali. Trendbarometer Technik.. Coiffet Ph. 3° Éd. Revista Robotică şi Management nr. Wokingham(England). Bogdanov I. 12. Addison-Wesley Publishing Company Reading (Massachusetts). Editura Didactică şi Pedagogică.... Dinamica Roboţilor. Gh. 140-149 31. 1997.L. Szabo M. 2002 28. IEEE Press. Rădulescu C. p.. Regulatoare automate.L. Mai 1986.. Sistem de reglare a vitezei unei axe a unui robot realizat cu microprocesorul 8085. Microprocesorul în comanda acţionărilor electrice. Al XII-lea Simpozion naţional de Roboţi industriali cu participare internaţională.. Fokus Innovation. 2004 6.. B. Curs. Precup R. Hongkong. Bogdanov I. 1992. Lazăr A. Octombrie1994.. vol. Asupra implementării software a algoritmului de conducere a unui sistem de reglare a vitezei unui motor de c. Editura Orizonturi Universitare. Bucureşti.L. Andreescu D. 2004 8.. Dumitrache I. Editura Tehnică. Neue Werkstoffe.385-390 16. Mai. Litografia IPTV Timişoara.3-7 17.. Elemente de teoria sistemelor. Kräfte bündeln – Prozesse beschleunigen. Optimizarea conducerii vehicolelor ghidate automat. T. 1986.3.Davidoviciu.. 1986...6.a unei axe a unui robot industrial. Quaternions. Tokio. Dragomir. T. 26. Conducerea cu calculatorul a acţionărilor electrice.K. Convertoare de putere cu circuite rezonante.. Revista Robotică şi Management nr. Aplicaţii la maşini sincrone cu magneţi permanenţi.123-133 13. La robotique : principes & applications (Traité des nouvelles technologies . München.. 2001 27. Timişoara. Bogdanov I. Bullinger H-J. CRC Press. Al IV-lea Simpozion naţional Teoria sistemelor.).L. Editura “Facla”. Călin S. Bogdanov I. Precup A. Introduction to Robotics: Mechanics & Control..Série Robotique. Robotică. Édition Hermès. 1999 3. Bogdanov I...

Roboţi. Maniu I. Milano. Teză de doctorat.. Acţionări electrice. F. Louis.I. T.. Editura Politehnica.. prezent şi perspective în cercetările de robotică în Timişoara.. Tiuca T.H. Utilizarea cuaternionilor în cinematica roboţilor pentru modelarea rotaţiei finite.. Bucureşti.2001 62. Kinematic Synthesis of Linkages. 2003 63. 1964 46... Ingineria Integratoare. Secţia de Ştiinţe Tehnice. Editura Orizonturi Universitare. Timişoara. S.. Timişoara. IEE Transactions on Robotics and Automation. Panama.4. Trifu V. Kovacs F. New Delhi. pII Modelarea rotaţiei unui vector în spaţiu... Editura Orizonturi Universitare. Bucureşti. Octombrie 1994.. Gräser A. Editura Didactică şi Pedagogică. Gligor O. Kovács. Robotics:Control. Varga Şt.. Akadémiai Kiadó. T. San Francisco. pp. Control of electrical drives. noiembrie 1987 53.. Editura Orizonturi Universitare. Hartenberg R. 2001 57. Tokyo.Gh. Sao Paolo. Bogdanov I. 1995 52.. Rădulescu. Gheorghe I... Kovacs F.Paris.. utilizând reconfigurarea autonomă dinamică.. pI Elemente de algebra cuaternionilor. Brişan C. Oxford University Press. octombrie 1993. v1.. Construction and Industrial Application of Robots. Stoiciu D. 2008 44. Al XII-lea Simpozion Naţional de Roboţi Industriali. Paul R. Motorul pas cu pas în acţionări electrice. No. Planificarea mişcării roboţilor industriali. Hamburg. A. Timişoara. Kovacs F. 1994 34. Montreal. Power electronics for the microprocessor age.. Editura Dacia Cluj-Napoca. 1987 54. T. Structură. Măsurări electronice. Gogu G. Mureşan T.. Methods and Applications in Automation. Calcev C.. F.2.... Senzori inteligenţi. Mihu I. Neag I..C. Drăgulescu D.85-93 69.. New York.S... Editura Universităţii Petru Maior Târgu Mureş 66. Bucureşti. 1985 50.P. 1996 45. Microcontrolerul RISC 16F84X. Sensing and Intelligence.. Handra-Luca V. McGraw-Hill Book Company. Sisteme de acţionare.. Convertoare statice. Teoria sistemelor. Timişoara. Mureşan T.. Munteanu F. Mexico. Editura Academiei. Trecut.. Tokyo.. 1975 36.. 1987 37. VDE Verlag.. Jurca T.. 2001 48. 55. TM '93. Contribuţii în optimizarea sistemelor de conducere a acţionărilor electrice la catedra de electronică aplicată a facultăţii de Electronică şi Telecomunicaţii din cadrul U. Berlin. 2007 39.. Neag I.. Taylor R. Roboţi industriali. Sistem de acţionare cu motor de curent continuu comandat cu microcontroler Al XII-lea Simpozion naţional de Roboţi industriali cu participare internaţională Timişoara. New York San Francisco. vol. Muscă G. Curs.. Editura tehnică. 56. Bucureşti. 2004 43. Budapest. Savii G. Fransua A. 1994.. Timişoara. Muntean N. Rădulescu C.. tom 40(54). Methodology. Singapore...3. Timişoara. Aplicaţii. Toth-Taşcău M. Morar A.. Kümmel F. Contribuţii la creşterea disponibilităţii sistemelor digitale complexe. Ignea A. pp.Bibliografie 265 266 CONDUCEREA ROBOŢILOR 33.. Diaconu A.. Octombrie 1989 68.. M. finanţare prin proiect “Leonardo da Vinci”. Lee C. 1991 61. Teză de doctorat UP Timişoara.6. On homogenous Transforms. McGraw-Hill. Gonzalez R. Maranescu V. Mesaroş – Anghel V. 2003 40. Bogdanov I.London. C... Grigorescu S. Cinematică. Kuo. Curs. vol. Rădulescu C. Heavy Machinery. Kelemen A. Springer Verlag. Modulator în durată numeric pentru acţionări de current continuu condus de microcalculatoare. Bucureşti. Structural Synthesis of Parallel Robots. 1.. Editura Politehnica. Sisteme de reglare cu orientare după câmp ale maşinilor de curent alternativ. Ionescu V. 2003 49.. 1995 60. 1981. Szász C. New York. Mihăescu M. Kelemen.. Editura Politehnica.. Baia Mare. Crivii. Imecs M.241-249 47. pp. 1993 35. 41. Lantos B. Berlin. Sisteme liniare. Ediura Didactică şi Pedagogică.. Metode de analiză şi optimizare a performanţelor modulaţiei PWM utilizate în comanda acţionărilor electrice. Kenjo... Gontean A. Mătieş V. Gheorghiu. Litografia UP Timişoara. Toronto.. 2008. Denavitt J. Quaternions and Computational Efficiency. 1999 . Universitatea „Politehnica” din Timişoara. Editura CEFIN.. Contribution to Research. Fu K.... Moldovan F. Sinteza mecanismelor. Timişoara. N. June 1990. Robotok Irányítása. pp382 – 388. 59. Strucuri mecatronice..T. Dolga V. Ediura Didactică şi Pedagogică. Buletin Ştiinţific Universitatea Tehnică Timişoara. Al IX-lea Simpozion Naţional de Roboţi industriali. Editura Helicon Timişoara.. senzori şi traductoare.. Herczeg T. 38. 1992. finanţare prin proiect “Leonardo da Vinci”. 61-80 42. Sydney. Comunicare la Academia Română. Dumitrache I. Auckland. Kraljevo.. vol. Măsurări electronice. 2009 65. Văcărescu I... Buletinul Ştiinţific şi Tehnic al Institutului Politehnic Timişoara. Timişoara. Madrid.G. Heidelberg. Editura Politehnica.. Caracteristici. Ignea A. 1992 58. Mureşan T. Gogu G. Timişoara. Sisteme de fabricaţie flexibilă – Robotică. Automatizări electronice.S. Fifteen Years Robotics Reasearch at the Timisoara Technical University. Bogota. Dumitriu S. 1995. Shaker Verlag... Timişoara. Leonhard W. Litografia UP Timişoara. Springer Verlag. Kovács. Kovacs F. 1998 67. London Johannesburg.. 1985. Elektrische Antriebstecnik. Toronto.. 1989 51. Editura Politehnica. 2009 64. Mureşan.. Perju D. Funda J. Sisteme de comandă şi reglare incrementală a poziţiei. Yugoslavia.... St.

Lecture Notes in Advanced Robotic Manipulation. Toronto. Heidelberg. Wolf A. Sydney. Service Roboter Visionen. Methods for salient frescoes selection based mobile robots navigation. Bogdanov I.. Massachusets and London. England.. Tokio. New York. finanţare prin proiect “Leonardo da Vinci”. Băbăiţă M. New York. Bullinger H-J. Prentince Hall. Steinmann R. Moscow. Popescu V. Buletinul Ştiinţific şi Tehnic al IPTV Timişoara.. Andreiciuc D. Wellington (New Zeeland). Cinematica şi dinamica roboţilor inteligenţi. Tom 39. 1998 99. Toma L.no.Bibliografie 267 268 CONDUCEREA ROBOŢILOR 70. Advanced Robot Control. Sisteme de achiziţie şi prelucrare numerică a semnalelor. Vernon. Sisteme de prelucrare numerică. Microcontrolere HCS12X. 1982. Rio de Janeiro. Hongkong. Litografia UP Timişoara. Dreucean M.New York... Căleanu C. 1997 86.. New Delhi. Technologiemanagement in der Praxis. Proceedings of the 2006 IEEE International Conference on Control Applications IEEE Catalog nr. Hongkong. Tokyo.. The Computer Control of Robot Manipulators. Analysis and Control.. 1.. 2002 94. Editura Didactică şi Pedagogică. Cambridge. Singapore. E. Toth-Taşcău M.. London. 1982 77. 1992. Springer Verlag.. München. Serviceroboter.. Hanser Verlag. Procesorul de semnal în conducerea sistemelor de acţionare electrică.I. Programming and Control. Yoshikawa T. London.. 1998 85. November 1992 82. Tokio. Schraft R. Editura de Vest. MIR Publishers.. Cat P. Trif.. Faszination der Automatisierung von Handhabungsaufgaben. 1981 89. 2001 92. Marcel Dekker Inc.. Heidelberg. Szenarien. Praxisbeispiele aus der Fraunhofer-Gesellschaft.H.. Cambridge.. Warnecke H-J. New York.. 2004 84.... Springer Verlag. 1987 98. Power Electronics.. Applied Dynamics of Manipulation Robots Springer Verlag. Stokić D. Preitl Şt... Editura de Vest. Springer Verlag..D. Andreiciuc D. IBM Journal of Research and Development. Editura Politehnica Timişoara. Potenzial nutzen-Zukunft gestalten. Taylor R. Stănăşilă O. Topală A. Kunststück Innovation. Popovici A. Carl Hansen Verlag. Hanser Verlag. Akadémiai Kiadó.E. Spath D.. Popov E.. Vasiu G. Sisteme de reglare avansate. Spath D. Sydney. Tokyo. Basel.. The MIT Press. AC Motors for High-Performance Applications. Modern robot engineering. Singapore. Toma L.. Berlin.. Heidelberg. Wien. Barcelona. Timişoara.. Tokyo. September 1993 71. London... 1983 90. Berlin. 1991 102.. Editura “Politehnica”. Microntrolere. Mailand. 2001 96. Stănăşilă O.. The MIT Press Series in Artificial Intelligence. Budapest.. Wien. Schraft R. Teorie şi aplicaţii. Advances in Science and Technology in the USSR. London.1989.. Timişoara. P.P. Paris. McGraw-Hill Inc. 1998... Oussama K. Massachusetts.. Berlin. Vukobratović M. Toma L. 91. Bogdanov I... Forschungs. Popescu V..pp. Toma L.……. Mc Graw-Hill. MIR Publishers. Mischie S. Matematici speciale. Dobra A. 1986 105. Robotic simulation. Timişoara. Precup R. 1987 78. Machine Vision..23. Berlin. PrenticeHall Industrial Robots Series Prentice-Hall Inc. Mailand. Sen P.. 1996 93... München. Savii G.. Ryan D. 1994 80. München.. Editura Didactică şi Pedagogică. New York. Vukobratović M. Heidelberg. 2004 104. England 1981.. 2002 76. Budapest. Pradel G.. Elemente mecanice în construcţia calculatoarelor.The MIT Press. Bogdanov I. Timişoara. New York. Greifer in Bewegung. pp. Stanford University. 424 – 436. Robotics. 1995 73.. Elemente de Robotică. 2003 103. Bogdanov I. Hägele M. new York. Editura de vest Timişoara. 3259-3264 79.. 2002 72. Editura Orizonturi Universitare. Analysis. CRC Press Inc.4. Electronică de putere şi acţionări. Valentine R. N.P.. Wien. Moscow. Popov E.. Contribuţii la acţionările electrice de curent continuu comandate cu microsisteme – cu aplicaţii la roboţi. vol. Englewood Cliffs (New Jersey). Yurevich E. Teză de doctorat UT Cluj. Editura Orizonturi Universitare.und Technologiemanagement.. L. Analiză matematică... DC motor speed adjusting with microprocessor. Yamamura S. Santa Clara.. London. 1985 83.I. Applied Control of Manipulation Robots. Toth-Taşcău M. 2001 81.. Germania.D... Planning and Execution of Straight Line Manipulator Trajectories. Automated Visual Inspection and Robot Vision. Motor Control Electronics Handbook. Timişoara. 2008 97. 1990 .. 06CH37824C. Forschen und Anwenden. finanţare prin proiect “Leonardo da Vinci”. Mai 1984. Editura Orizonturi Universitare. vol. London.. Dreucean M. pp.. Synthesis and Exercises.73-76 75. D. Popescu V. Paris. Visionen.1989 101. Paul R. Şabac I. Pazsitka R. Lantos B. Industrial Robots : Computer Control and Interfacing. 2001 74. Bucureşti. Timişoara.. 1979. Bucureşti.. Robot Manipulators : Mathematics. Produkte. finanţare prin proiect „Tempus”. Wegener K. Snyder W. finanţare prin proiect “Leonardo da Vinci”. Foundations of Robotics. Ciocârlan P. 2008 95. 2004 87. Somló J.T. Toronto. München. Singapur. Editura Politehnica. Stuttgart. 1991 100. Schmiederer G.. 2006 88. Fraunhofer IRB Verlag.

DSP Solutions for AC Motor.. Application Report. Texas Instruments. Israel.. Robotics Training Program.ro : Familia de microcontrollere 80C51 119.keil. 1978 107. Berkeley. TMS320F/C24xDSO Data Sheet. California.net.ir 121. http://www. AMD Athlon 64 FX-55 Processor Archıtecture Advanced Micro Devices Company 114. Programming microprocessors. Tel Aviv. Microchip Catalogue PIC 16F84X Microcontrollers 113.siriusmicro. ep. ftp.. http://ce.etc.iasi. Application Report. 1000020. www.commentcamarche. Zaks R.utcluj. Sybex Inc. www.wrdsb. Textbooks. Introduction à la notion d'ordinateur 117. California. 1994 115. 1978 108.. Texas Instruments. Perpheral Library and specific devices. University of California. ACL Advanced Control Language and ATS Advanced Terminal Software. Controllers Reference Guide.ca/courses/tech 123. Tel Aviv. Texas Instruments 1999 109.ro Microcontroler 8051– arhitectură 120.kashanu. Texas Intruments. DSP Solutions for BDLC Motors. 1997 112.ac. Israel. David Patterson. 1992 116. Berkeley. http://fhci.. Zaks R. www.com/ Keil an ASRM Company 8051 Instruction Set Manual 122. 1996 111. 3-rd Edition. Eshed Robotec Ltd. 1996 110.Bibliografie 269 270 CONDUCEREA ROBOŢILOR 106.phtml 8051 Tutorial 118.on. Eshed Robotec Ltd. Introduction to microprocessors. Space-Vector PWM with TMS320C24x/F24x using hardware and software determined Swtching patterns.com 124. Catalog N0. Sybex Inc. Berkeley June 2001 .com/tuttimer.8052. Reference Guide. Future of Microprocessors..

Sign up to vote on this title
UsefulNot useful