Вы находитесь на странице: 1из 4

Limbaje de programare pentru roboti Curs 6

Analiza structurii limbajelor de programare


3.2 Nivele conceptuale
Cercetarile in domeniul conducerii robotilor au fost orientate la inceputul lor de studiul a 2 probleme : 1. Conducere la nivel coborat : legata de automatizarea clasica. 2. Conducerea capabila : sa rezolve probleme care confera robotului capacitatea de decizie in functie de obiectivele fixate. Aparitia limbajelor de programare evoluate au contribuit la stabilirea unor legaturi intre cele 2 probleme. Aceste limbaje nu se situeaza toate la acelasi nivel de conducere. Astazi se disting mai multe nivele conceptuale de descriere a sarcinilor unui robot. Nivele conceptuale considerate sunt urmatoarele : a) nivelul servomecanismelor de pozitionare : la acest nivel sarcina este descrisa in termenii comportarii servomecanismelor de pozitionare ale axelor robotului. b) nivelul efectorilor : in acest caz sarcina este descrisa in termenii miscarilor si actiunilor efectorului. c) nivelul obiectelor : in acest caz sarcina este descrisa in termenii operatiilor asupra obiectelor. De exemplu : introducerea unui bolt intr-un orificiu. d) nivelul obiectivelor : sarcina este descrisa in termenii obiectivelor de realizat.

3.2.1. Nivelul efectorilor.


Programarea la acest nivel permite programatorului sa lucreze in coordonatele de baza. Miscarile acestea sunt mai usor de folosit decat coordonatele robotului. In afara de aceste coordonate se pot face specificatii privitoare la forte de prindere a obiectului sau de atingere. La acest nivel interpretul trebuie sa dispuna de un model al robotului. Primul limbaj din aceasta categorie a fost limbajul WAVE dezvoltat la Universitatea Stanford. Pentru exemplificarea acestui limbaj se considera deplasarea unui bloc motor pe un banc de lucru. A1 ( x=10, y=20, z=0 ) A2 ( x=15, y=30, z=0 ) B ( x=10, y=40, z=0 ) Pozitia initiala a apucatorului este recunoscuta iar pozitia lui finala este notate AWAY ( x=20, y=40, z=10 )

Fiecare pozitie este definita nu numai prin coordonatele x,y,z ci si unghiurile ,,. Pentru pozitia initiala stabilita prin conventie : = 0 = 0 = 0 Programul in limbajul 3 este prezentat in continuare : ( x, y, z, , , ) Trans A1 = ( 10,20,0,0,90,0 ) Trans A2 = ( 15,30,0,0,90,0 ) Trans B = ( 10,40,0,0,90,0 ) Trans AWAY = ( 20,40,10,0,90,0 ) OPEN 5 da comanda de deschidere a apucatorului pana la 5 unitati maxim 10. MOVE A1 da comanda de deplasare in punctul A1 CLOSE 1 se da comanda de inchidere a apucatorului pana se intampina o rezistenta detectata de un senzor activ. Daca inchiderea are loc pana la 1 si senzorul nu detecteaza obiectul formeaza un mesaj de eroare notat cu 2 si in instructiunea urmatoare : SKIPE 2 JUMP OK OPEN 5 MOVE A2 CLOSE 1 SKIPE 2 JUMP OK WRITE NO BLOCK MOVE B OPEN 5 MOVE AWAY Programul scris astfel nu este executat direct , el este transformat de un compilator care contine un model al robotului utilizat. Rezultatul compilarii este un program la nivelul servomecanismelor. Alte limbaje din aceasta categorie sunt : Limbajul AL Limbajul MAL Limbajul EMILY

Limbajele de la acest nivel se utilizeaza frecvent in industrie. Ele se aseamana cu limbajele pentru masini unelte cu comanda numerica si ca urmare prezinta urmatoarele dezavantaje : programatorul este obligat sa aprecieze cantitativ toate detaliile mediului ecologic. sarcini mici necesita programarea cu numar mare de linii. nu exista instructiuni pentru interfatarea cu sisteme de vedere artificiale. nu exista instructiuni pentru coordonarea a mai multor efectori.

3.2.2 Nivelul obiectelor


La acest nivel programarea permite operatorului sa ignore detaliile privind manipularea. Pentru ca acest lucru sa fie posibil , este necesar ca numarul operatiilor elementare asupra obiectelor sa fie redus. In acest caz interpretorul unei astfel de descrieri trebuie sa dispuna de cunostinte variate cum ar fi : - geometria obiectelor de manipulate - geometria efectorului - configuratia periferiei Cel mai important limbaj din aceasta categorie este AUTOPASS limbaj dezvoltat de IBM. Domeniul de aplicare este acel al programarii robotilor pentru montaj. Acest limbaj utilizeaza doua instructiuni principale si anume : - PLACE : permite specificarea relatiilor geometrice intre piese - ATTACH : permite descrierea legaturilor de asamblare ce trebuiesc realizate intre respectivele piese. Fiecare dintre aceste instructiuni este completata prin clauze : ON , IN , AND si variante specifice : INSERT -> PLACE si RIVET -> ATTACH. Un exemplu de program pentru realizarea unui montaj este prezentat in continuare :

Programul : PLACE c1 ON sup INSERT t1 in g1 AND t2 in g2 INSERT valve IN port-valva INSERT resort IN port-valva PLACE etrier IN canelura MAINTAINT resort COMPRESSED PLACE c1 ON c2 ALIGNE g1 AND g1 , g2 and g2 ATTACH c1 TO c2 SCREW S1 in g1 , S2 in g2 , S3 in g3 , S4 in g4 until TORQUE 5 Compilatorul transforma un astfel de program intr-un program la nivelul efectorilor care la randul sau este transformat intr-un program la nivelul servomecanismelor de pozitionare. Trecerea de la nivelul obiectelor la nivelul efectorilor presupune dispunerea de cunostinte asupra geometriei obiectelor. Aceste cunostinte fie sunt introduse in compilator , fie furnizate de utilizator. Compilatorul trateaza instructiunile una cate una si pentru fiecare dintre ele se parcurg 3 etape : 1) Verificarea sintactica a instructiunii si a validitatii semantice a operanzilor. 2) Se transforma instructiunea intr-un plan de manipulare la nivelul efectorilor. 3) Compilatorul utilizeaza cunostintele asupra obiectelor pentru a stabili pozitiile de apucare si pentru a determina restrictiile pentru traiectorii (evitarea coliziunii).

In cursul compilarii efectorilor pentru fiecare instructiune se apeleaza un model al mediului realizand o simulare a executiei. Aceasta simulare permite detectarea erorilor si sa se ceara instructiuni suplimentare de la utilizator. Problemele pe care incearca sa le resolve limbajele la nivelul obiectelor sunt urmatoarele : determinarea posibilitatilor de apucare a unui obiect introducerea feedbackului vizual sau tactil detectarea si tratarea incidentelor prevenirea coliziunilor cooperarea cu alti roboti

Вам также может понравиться

  • Graful Punctului Critic
    Graful Punctului Critic
    Документ1 страница
    Graful Punctului Critic
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 2
    LPR - Curs 2
    Документ6 страниц
    LPR - Curs 2
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 7
    LPR - Curs 7
    Документ5 страниц
    LPR - Curs 7
    MihaiBuleu
    Оценок пока нет
  • Rabotarea
    Rabotarea
    Документ1 страница
    Rabotarea
    MihaiBuleu
    Оценок пока нет
  • Burghierea
    Burghierea
    Документ2 страницы
    Burghierea
    MihaiBuleu
    Оценок пока нет
  • Strunjirea
    Strunjirea
    Документ6 страниц
    Strunjirea
    MihaiBuleu
    100% (2)
  • Frezarea
    Frezarea
    Документ2 страницы
    Frezarea
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 5
    LPR - Curs 5
    Документ5 страниц
    LPR - Curs 5
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 3
    Management - Curs 3
    Документ4 страницы
    Management - Curs 3
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 1
    LPR - Curs 1
    Документ4 страницы
    LPR - Curs 1
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 3
    LPR - Curs 3
    Документ5 страниц
    LPR - Curs 3
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 4
    LPR - Curs 4
    Документ5 страниц
    LPR - Curs 4
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 5
    Management - Curs 5
    Документ3 страницы
    Management - Curs 5
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 2
    Management - Curs 2
    Документ3 страницы
    Management - Curs 2
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 1
    Management - Curs 1
    Документ2 страницы
    Management - Curs 1
    MihaiBuleu
    Оценок пока нет
  • 0 Ghidaje PDF
    0 Ghidaje PDF
    Документ5 страниц
    0 Ghidaje PDF
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 1
    Management - Curs 1
    Документ2 страницы
    Management - Curs 1
    MihaiBuleu
    Оценок пока нет
  • Management - Curs 4
    Management - Curs 4
    Документ3 страницы
    Management - Curs 4
    MihaiBuleu
    Оценок пока нет
  • LPR - Curs 1
    LPR - Curs 1
    Документ4 страницы
    LPR - Curs 1
    MihaiBuleu
    Оценок пока нет
  • Metoda Suprarelaxarii
    Metoda Suprarelaxarii
    Документ2 страницы
    Metoda Suprarelaxarii
    MihaiBuleu
    Оценок пока нет
  • Metoda Celor Mai Mici Patrate
    Metoda Celor Mai Mici Patrate
    Документ1 страница
    Metoda Celor Mai Mici Patrate
    MihaiBuleu
    Оценок пока нет
  • Metode de Relaxare
    Metode de Relaxare
    Документ1 страница
    Metode de Relaxare
    MihaiBuleu
    Оценок пока нет
  • Metoda Cholesky
    Metoda Cholesky
    Документ1 страница
    Metoda Cholesky
    MihaiBuleu
    Оценок пока нет
  • Matrita - Desen Ansamblu
    Matrita - Desen Ansamblu
    Документ1 страница
    Matrita - Desen Ansamblu
    MihaiBuleu
    100% (1)
  • Metoda Jacobi Si Gauss-Seidel
    Metoda Jacobi Si Gauss-Seidel
    Документ2 страницы
    Metoda Jacobi Si Gauss-Seidel
    MihaiBuleu
    Оценок пока нет
  • Pinion Angrenaj Cilindric
    Pinion Angrenaj Cilindric
    Документ1 страница
    Pinion Angrenaj Cilindric
    MihaiBuleu
    Оценок пока нет
  • Studiul Reductoarelor Melcate
    Studiul Reductoarelor Melcate
    Документ10 страниц
    Studiul Reductoarelor Melcate
    MihaiBuleu
    Оценок пока нет
  • Studiul Angrenajelor Melcate
    Studiul Angrenajelor Melcate
    Документ8 страниц
    Studiul Angrenajelor Melcate
    MihaiBuleu
    Оценок пока нет
  • От Everand
    Оценок пока нет
  • От Everand
    Оценок пока нет