Documente Academic
Documente Profesional
Documente Cultură
Modul: I Pagina:
RAPORT DE CERCETARE
DIRECTOR PROIECT,
COLECTIV DE LUCRU
1
1. Introducere
2
Robotul CONRO este compus din module dotate cu câte 2 servomotoare, care asigură
rotaţia în jurul a 2 axe perpendiculare. Fiecare modul este autonom, având microcontroler,
senzori şi baterii înglobate. Cuplarea modulelor este complet autonomă şi se realizează în 3
paşi: deplasarea modulelor cu comandă în buclă deschisă pentru alinierea grosieră a
senzorilor IR; deplasarea modulelor cu comandă în buclă închisă pentru alinierea precisă a
acestora cu reacţie inversă de la senzorii IR şi cuplarea propriu-zisă a pinilor şi mecanismelor
de zăvorâre.În timpul acestei ultime faze, se efectuează mişcări de mică amplitudine şi
frecvenţă mare pentru învingerea frecărilor. Sunt necesare 3 minute pentru o astfel de
cuplare, iar rata succesului este de 80%.
Robotul “Crystalline” are o structură de tip latice bidimensională, în ale cărei noduri
sunt plasate module de formă paralelipipedică. Actuatorii liniari ai acestora realizează
alungirea / contractarea lor în fiecare direcţie cu factorul 2. Două din cele patru feţe conţin
conectori pasivi (canale) sau conectori activi (tije) ce se pot bloca prin rotaţia tijei.
Robotul “Molecule” reproduce structura unei molecule formate din 2 “atomi”,
conectaţi printr-o piesă de legătură. Fiecare element “atomic” se poate roti cu 180 de grade în
jurul acestei legături, realizându-se o deplasare tridimensională, prin faptul că axele de rotaţie
ale elementelor “atomice” sunt perpendiculare. Conectorii utilizaţi pentru cuplarea modulelor
utilizează un mecanism prehensor ale cărui braţe (tată) sunt comandate cu ajutorul unui
mecanism melcat către zonele corespunzătoare de pe suprafaţă (mamă).
Datorită structurii de reţea cristalină, aceşti roboţi nu pot realiza mişcări ample precum
roboţii de tip lanţ, dar sunt o bună platforma de studiu a planificării mişcării, calculului paralel
şi de optimizare a traiectoriei.
I-Cube reprezintă un sistem robotic modular reconfigurabil, compus din articulaţii cu
trei grade de libertate şi elemente pasive de conectare. Conectarea se poate face prin
deplasarea de la un cub la altul, prin deplasarea către un cub, în timp ce modulul se află ataşat
la un altul, etc. Conexiunea foloseşte un sistem mamă/tată şi este similară cu robotul
“Cristalline”. Această construcţie permite identificarea de noi posibilităţi de proiectare şi
acţionare. Abordarea unei astfel de articulaţii mobile este unică, dar încă nu sunt informaţii
despre starea actuală a proiectului.
Atron a fost realizat ca parte a proiectului HYDRA, proiect european finanţat de
Information Society Technologies (IST) Programme 6. Este un sistem de tip reţea cristalină ce
are la bază un modul format de două emisfere cu posibilităţi de rotaţie relativă în jurul unei
axe ce trece prin centrul acestuia. Există câte 4 conectori tangenţiali pentru fiecare emisferă.
Schimbările de configuraţie se obţin prin rotaţii cu 90 de grade în jurul ecuatorului.
Comunicaţia se bazează pe dispozitive IR integrate în conectori. Informaţiile cu privire la
3
comandă sunt puţine, rezultând din cuvintele cheie utilizate: controler bazat pe reguli,
metamodule, algoritmuri de forţă virtuală, gradient şi genetici.
Dintre specificaţiile funcţionale ale acestui tip de roboţi, au fost menţionate
posibilitaţile de reconfigurare şi auto-multiplicare prin cuplarea / decuplarea modulelor
proprii sau a unora suplimentare, existente în scena de lucru. Se pot identifica drept cerinţe
suplimentare utilizarea la maximum a unui număr redus de componente mecanice şi concepţia
modulară a modulului însuşi, pentru a permite modificarea sa prin înlocuire sau prin adăugare
de componente.
La cel mai redus nivel de complexitate (număr minim de module), sistemul robotic
care se găseşte într-o anumită configuraţie trebuie să fie capabil să îndeplinească funcţiile
unui robot cu structură fixă de aceeaşi configuraţie (locomoţie, manipulare, etc.) De exemplu,
un robot şarpe modular trebuie să realizeze deplasarea utilizând ondularea corpului, ca şi un
robot şarpe similar ne-reconfigurabil. Similar, un hexapod modular trebuie să poată realiza
deplasări înainte, înapoi, laterale sau rotiri, ca şi un hexapod cu structură fixă. Dificultăţile de
concepţie a unui sistem robotic modular, care realizează acţiuni ale unor roboţi cu diferite
topologii, se reflectă în cele legate de concepţia hardware şi software a modulelor. Cei mai
mulţi roboţi modulari nu au abilităţi inter-metamorfice (transfer de module între roboţi),
transferul de module, respectiv noua formă, fiind decise şi realizate manual de un operator.
Prin urmare, astfel de roboţi evoluează ca roboţi cu formă fixă.
La următorul nivel de complexitate (număr suficient de module), robotul cu
capacităţi intra-metamorfice (reconfigurare cu transfer al modulelor proprii) trebuie să fie
capabil să îşi rearanjeze modulele în diferite configuraţii. Această proprietate permite
robotului atât să-şi schimbe forma, cât şi să efectueze o auto-reparaţie prin înlocuirea unui
modul defect cu unul de rezervă, ori să creeze, din module, un robot similar lui. Robotul
trebuie să aibă deci hardware-ul şi software-ul adecvate pentru a rezolva această problemă de
poziţionare şi să separe acţiunile de reconfigurare de cele de locomoţie. Numărul de
configuraţii posibile este determinat, în parte, de numărul de conectori ai modulelor.
Conectorii trebuie să fie identici şi simetrici pentru a permite conectarea nepreferenţială a
oricărui modul. Doi conectori pe modul (câte unul la extremitatea fiecărui modul) permit
construcţia unor structuri liniare, similare şerpilor. Construcţia unor structuri ramificate
necesită utilizarea mai multor conectori. De exemplu, un hexapod poate fi construit cu module
având un conector la o extremitate şi 3 la cealaltă.
La cel mai înalt nivel de complexitate (numărul maxim de module), un robot cu
capacităţi inter-metamorfice trebuie să fie capabil să creeze doi roboţi diferiţi sau să se
reunească cu un robot similar, pentru a crea unul singur mai mare. De aceea, proiectarea
4
modulelor trebuie să garanteze că împărţirea robotului nu conduce la diminuarea inteligenţei
sau puterii necesare pentru funcţionarea corectă a noilor roboţi. Operaţia de cuplare adaugă
două noi cerinţe asupra sistemului robotic. Prima este că un robot trebuie să comunice la
distanţă cu altul pentru a cere şi accepta operaţia de alipire şi, de aceea, el trebuie să fie
prevăzut cu un sistem de comunicare wireless. A doua condiţie este ca robotul să poată genera
un semnal de balizare, pentru a ghida celălalt robot către el, de la distanţă.
Relativ la componentele hardware, un modul care suportă reconfigurare (inter-
metamorfică) trebuie să garanteze că roboţii creaţi prin operaţia de separare trebuie să fie
complet echipaţi. La limită, un robot poate separa un singur modul, deci acesta trebuie să fie
calificat ca un robot, adică să fie complet echipat, respectiv trebuie să aibă propriul sau
procesor, sursă de energie şi controlul asupra propriilor săi senzori şi actuatori. Conceptul de
echipare completă se deosebeşte de cel de autonomie, care se referă la capacitatea unui robot
nu neapărat mobil, de a executa sarcini în mod automat, adică posedă software-ul necesar
acestui mod de operare, fără intervenţia factorului uman. Prin urmare, componentele hardware
strict necesare evoluţiei preconizate sunt motoarele de acţionare, sistemele de comandă,
comunicaţii şi senzoriale, sursele de energie şi mecanismele de cuplare.
În ceea ce priveşte motoarele, opţiunile posibile sunt limitate de sursele de energie
portabile (în curent continuu) şi au fost cercetate experimental, rezultatele fiind consemnate
într-un raport de încercări ataşat.
Componentele specifice modulelor vor fi analizate în continuare.
Generarea miscarii are loc prin conectarea si deconectarea celulelor in lungul directiei
de deplasare. Celula (modulul) se poate realiza cu diferite corpuri geometrice (prisme, cuburi,
cilindri sau asociatii ale acestora), conectate prin cuple de rotatie sau translatie.
În figurile 1 şi 2 sunt prezentate exemple ale unor module precum şi modul de
conectare.
5
Fig. 1
6
Fig.2
Locomoţia roboţilor de acest tip se realizeaza prin metode de deplasare specifice sistemelor
mobile miniaturizate, robotizate, după cum urmează:
A) Târâre - utilizand module prismatice, cubice, cilindrice sau combinatii ale acestora,
conectate intre ele prin cuple de rotatie [1];
- utilizand module cubice (cele mai utilizate), conectate prin cuple de translatie;
7
Etapele locomotiei prin târâre utilizând module cubice
B) Păşire - utilizand module cubice (cele mai utilizate), conectate prin cuple de translatie; [1]
D) Inchworm; (Inchworm locomotion uses friction with the ground to move a group of unit-
compressible modules forward) [4a]
8
E) Traveling wave – locomoţie pe principiul undei deplasabile (călătoare) (fig a). În aceasta
categorie intră robotii care imita locomotia serpilor - locomotia concertina sau locomotia
serpentiforma (prin utilizarea modulelor cilindrice drepte [1] inseriate pe roti)
H) Cǎţǎrare [5a] – în figurile de mai jos este ilustrata deplasarea pe scări prin aceasta metoda
de locomotie
9
I) Locomoţie prin rasturnare / prabusire (tumbling)[5b] – aceasta modalitate reprezinta un
caz particular al metodei de deplasare prin rostogolire. Modulele din structura se misca astfel
incat intregul ansamblu devine instabil si se rastoarna intr-o noua pozitie. Neregularitatile
suprafetei nu pot impiedica modulele sa ajunga in locatiile noi.
a b
c
Actionarea subsistemelor de locomotie si de conectare / deconectare este asigurata de:
electromagneti (celulele sunt conectate intre ele prin actionarea unor forte (ex.
electromagnetice); motoare pas cu pas (+ transmisie surub-piulita); motoare de curent
continuu (+ reductor); SMA (tip arc) + magneti permanenti; electromagneti + magneti
permanenti; pneumatic.
10
Analiza comparativa a unor exemple din punctul de vedere al sistemelor de actionare:
1. Fei Yanqiong, Zhao Xifang, Design and dock analysis for the interactive module of a
lattice-based self-reconfigurable robot, Robotics and Autonomous Systems (2006),
doi:10.1016/j.robot.2006.07.006 [1.pdf]
Fig.3
- Deplasarea relativă a modulelor este posibilă doar în cazul în care unul dintre acestea
este legat la o bază fixă (fig.4);
Fig.4
11
2. Michael Rubenstein, Kenneth Payne, Peter Will, and Wei-Min Shen - Docking Among
Independent and Autonomous CONRO Self Reconfigurable
Robots [221.pdf]
Fig.5
- Deplasarea este posibilă atât independent cât şi prin cuplarea mai multor module
(fig.6);
- Soluţie constructivă simplă;
Fig.6
3. Eiichi Yoshida, Satoshi Murata, Akiya Kamimura, Kohji Tomita, Haruhisa Kurokawa,
Shigeru Kokaji - A Self-Reconfigurable Modular Robot: Reconfiguration Planning and
12
Experiments, The International Journal of Robotics Research Vol. 21, No. 10–11, October-
November 2002, pp. 903-915 [903.pdf]
Fig. 7
a) b)
Fig. 8
4. Efstathios Mytilinaios, Mark Desnoyer, David Marcus, and Hod Lipson – Designed and
Evolved Blueprints For Physical Self Replicating Machines [Alife04_M.pdf]
- Sistem de cuplare separat cu electomagneţi;
- Fiecare modul are un singur grad de mobilitate (o rotaţie) pentru acţionare fiind
utilizat un servomotor comandat de un microcontroler PIC;
- Deplasarea este posibilă doar prin cuplarea mai multor module (fig.9);
13
Fig.9
5. Morten Winkler Jørgensen, Esben Hallundbæk Østergaard and Henrik Hautop Lund –
Modular ATRON: Modules for a self-reconfigurable robot, Proceedings of 2004 IEEE/RSJ
International Conference on Intelligent Robots and Systems September 28 - October 2, 2004,
Sendai, Japan [atron_iros2004.pdf]
Fig.10
Fig.1114
6. Jackrit Suthakorn, Andrew B. Cushing, Gregory S. Chirikjian – An Autonomous Self-
Replicating Robotic System Proceedings of the 2003 IEEE/ASME International Conference
on Advanced Intelligent Mechatronics (AIM 2003) pp137-142 [auton.pdf]
- Realizat din module LEGO (fig.12)
- Mecanism de cuplare cu magneţi permanenţi;
- Acţionarea se face cu motoare de cc cu reductor integrat;
Fig.12
7. Ben Salem – Development of PetRo: A Modular Robot for Pet-Like Applications
[Boston_SPIE_PetRo.pdf]
- Pentru acţionare se folosesc motoare pas cu pas (fig.13)
- Fiecare modul are 14 grade de mobilitate;
- Modulele se pot deplasa independent (fig.14)
Fig.11
15
Fig. 14
8. Andres Castano, Wei-Min Shen, Peter Will – CONRO: Towards Deployable Robots With
Inter-Robot Metamorphic Capabilities [conro.pdf]
- Acţionare cu motor de curent continuu MicroMo şi reductor de turaţie (fig.15)
- Modulele au un singur grad de mobilitate(o rotaţie)
Fig.15
Fig.16
16
- cuplarea modulelor se face manual
9. Robert Fitch, Daniela Rus, Marsette Vona – A Basis for Self-Repair Robots UsingSelf-
Reconfiguring Crystal Modules [ias00.pdf]
- modulele sunt acţionate de motoare de cc LEGO Mini-Motor prin intermediul unei
transmisii pinion cremalieră (fig.17);
Fig.17
Fig.18
17
Fig.19
Fig.20
18
La robotul CONRO se foloseşte un mecanism de cuplare separat cu aliaje cu memoria
formei (fig.21)
Fig,21
Cuplarea modulelor este complet autonomă şi se realizează în 3 paşi: deplasarea modulelor
cu comandă în buclă deschisă pentru alinierea grosieră a senzorilor IR; deplasarea modulelor
cu comandă în buclă închisă pentru alinierea precisă a acestora cu reacţie inversă de la
senzorii IR şi cuplarea propriu-zisă a pinilor şi mecanismelor de zăvorâre.În timpul acestei
ultime faze, se efectuează mişcări de mică amplitudine şi frecvenţă mare pentru învingerea
frecărilor. Sunt necesare 3 minute pentru o astfel de cuplare, iar rata succesului este de 80%.
La robotul M-Tran II, conectarea intre modulele ce alcatuiesc robotul se face prin
intermediul unor magneti permanenti, arcuri neliniare si a unor actuatori cu memoria formei.
19
.
Fig.23
Actuatorii pe bază de aliaje cu memoria formei (AMF) au în structură unul sau mai
multe elemente active, cu deformaţie limitată, controlată, determinată de transformarea
structurii interne a materialului la o anumită temperatură – efectul de memorare a formei
(EMF).
Memoria formei reprezintă proprietatea termomecanică a unor anumite aliaje de a
reveni la o formă şi dimensiuni “memorate”, ca urmare a unei transformări reversibile
martensită-austenită, în anumite condiţii de temperatură. Un element dintr-un material pe bază
de AMF este uşor deformabil în faza martensitică. El îşi păstrează starea deformată atâta timp
cât se menţine temperatura respectivă. Prin încălzirea peste temperatura de transformare de
fază, elementul revine spontan la forma originală, nedeformată, corespunzătoare fazei
austenită, aşa cum este prezentat în figura 24. După ce aliajul este răcit şi are loc
transformarea de fază inversă materialul devine din nou deformabil .
Transformările de fază se produc într-un interval de temperatură, în condiţiile unui
histerezis termic H, prezentat în figura 25. Uzual, temperatura de transformare a aliajelor din
gama Nitinol, Flexinol, au temperaturi de transformare în jurul valorii de 70°C. Se pot obţine
aliaje cu temperaturi mai ridicate de transformare, care favorizează creşterea numărului de
20
cicluri încălzire-răcire în unitatea de timp, este necesară mai multa energie pentru încălzire,
aceste aliaje fiind recunoscute pentru randamentul slab comparativ cu elementele de execuţie
convenţionale. Se mai utilizeză pentru anumite aplicaţii şi aliaje care trebuiesc răcite pentru a
se ajunge la temperatura de transformare, acestea fiind active la temperatura ambiantă.
Lungimea
Mf Ms As Af Temperatura
Fig 24 Efectul de memorare a formei
Fig. 25 Reprezentarea grafică a histerezisului
Tot prin metoda SCD se poate măsura rezistivitatea mostrei în timp ce este încălzită şi
răcită. Aliajul manisfestă schimbări interesante şi vârfuri ale rezistivităţii de până la 20%
21
peste gama temperaturii de transformare; totuşi, corelarea acestor schimbări cu faza
schimbării măsurate sau cu proprietăţile mecanice nu a fost intotdeauna foarte bună .
Efectul de memorare a fomei poate fi utilizat în aplicaţii specifice micromecatronicii
deoarece conferă următoarele avantaje:
• asigură cel mai mare raport lucru mecanic/volum, din acest punct de vedere, actuatorii pe
bază de aliaje cu memoria formei fiind consideraţi cei mai puternici ;
• au capacitatea de a reveni la forma memorată prin alungire, scurtare, îndoire, răsucire astfel
încât este posibil să se obţină o gamă foarte variată de mişcări
2 2 2 2
1 1 1 1
3
3 x x x x
4 5 S
N
2''
F relax
G
x x x x
a b c d
Fig. 27 Modalităţi de generare a forţei de relaxare
22
La proiectarea structurii mecanice se urmăreşte creşterea numărului maxim de cicluri
de activare, precum şi utilizarea celei mai eficiente soluţii de asigurare a forţei de relaxare.
Una din direcţii de cercetare constă în proiectarea optimală a mecanismelor de relaxare pentru
actuatori miniaturiali, astfle încât să satifacă condiţiile restrictive legate de gabarit şi
funcţionalitate.
SW1 R3
1 2
V1 U1
2 1
SMA
U2
Sursa reglabila LM78xx
1 2
GND
Vin Vout
R4
C1 R
Io ct
3
0.33pF
U1
1 2
SMA
23
Fig 31 Reglare prin PWM, schema de principiu
6V
1
LM555 2 LM555
R2
R3 R1 AMF
82K 8 1M 8
VCC VCC
4 4
3
Reset Reset
7 3 7 3
Discharge Output Discharge Output
6 6
Threshold Threshold 1
R4 2 2
2K8 Trigger Trigger 2 3 Q1
5 1 5 1 IRF840
Control Voltage GND Control Voltage GND
C1 C2 C4 C3
0.1uF 0.1uF 500pF 0.1uF
24
Perturbatii de
temperatură Perturbaţii ale
forţei
Curent
electric
Transfer de Transformare de
căldură fază
Deplasarea
Cei mai utilizaţi traductori [5] pentru măsurarea forţelor sunt traductrorii
electrotensometrici rezistivi (TER), iar pentru măsurarea deplasărilor sunt utilizaţi
traductori rezistivi liniari sau rotativi. Implementarea unui sistem de control având ca
variabilă internă rezistenţa prezintă următoarele avantaje: histerezisul este mic,
comportarea este aproximativ liniară, se poate evita supraîncălzirea aliajului. În lucrarea
[5] este propusă o modalitate de control care să combine rezistenţa internă şi deplasarea ca
mărimi de feed-back pentru implementarea unui algoritm de control. În lucrarea [6], este
prezentat un model de control care să compenseze hysterezisul mare al aliajelor cu
memoria formei. Acesta se realizează prin utilizarea unei metode feed-forward care
presupune alimentarea predictivă a elementului activ astfel încât acesta să realizeze
deplasarea dorită. Trei metode diferite de control au fost aplicate în lucrarea [12] pentru a
urmări răspunsul unui actuator pe bază de AMF: controlul PI, controlul PI pe un model
linearizat, şi controlul feedforward. Autorii au subliniat că problemele esenşiale legate de
controlul AMF au fost timpul lent de răcire. Mărimea de feedback a fost preluată dintr-un
experiment care urmăreşte variaţia tensiune-efort în funcţie de încălzire. Metodele prezintă
un major dezavantaj, acela că nu a fost luată în considerare sarcina externă. În lucrarea [3] este
prezentat un sistem de control al poziţiei, aplicabil prin utilizarea mai multor tipuri de controlere,
dar verificat utilizând un algoritm PI, urmărind totodată şi aspecte privind stabilitatea. În lucrarea
[4] sunt prezentate rezultate experimentale care confirmă faptul că actuatorii pe bază de AMF
permit controlul forţei generate rapid şi în mod precis. În lucrarea [13], s-a studiat raspunsul în
frecvenţă şi pentru un semnal de test treaptă pentru un actuator răcit cu aer.
Bibliografie
[1] Crisan, R., Maties, V., Tatar, O., Design of positioning system based on infra-red
remote controller, Lucrarile Conferintei Stiintifice Inter-Ing, Targu-Mures, 2003, pag. 361-
364, ISBN 973-8084-81-4, ISBN 973-8084-82-2
25
[2] Crisan, R., Mandru, D., Tatar, O.,Studii privind sistemele de comanda si control
ale actuatorilor pe baza de aliaje cu memoria formei, Lucrarile celei de-a Treia Conferinte
Nationala Profesorul Dorin Pavel – fondatorul hidroenergeticii romanesti, Sebes, 2003, pag.
291 – 296, in vol. Stiinta si Inginerie, vol IV, Editura AGIR, Bucuresti, 2003, ISBN 973 –
8466 – 04 – 0.
[3] Gorbet, R., Wang, L., General Sability criteria for shape memory alloy position
control system, IEEE International Conference on Robotics and Automation, pg. 2313-2319,
1995, Nagoya, Japan
[4] Grant, D., Hayward, V., Constrained force control of shape memory alloy
actuators, Proceedings of the 2000 IEEE International Conference on Robotics&Automation,
San Francisco, Aprilie 2000, pag 1314-1320
[5] Ikuta, K., Micro/miniature shape memory alloy actuators, Proc.of the IEEE Int.
Conf. on Robotics and Automation, 1990, pag. 2156-2161. ISBN 0-8186-9061-X
[6] Majima, S., Kodama, K., Hasegawa, T., Modelling the Shape Memory Alloy
Actuator and Tracking Control System with the model, IEEE Transactions of Control Systems
Technology, Vol. 9, No. 1, 2001
[7] Mândru, D., Crişan, R., Tătar, O., Noveanu, S., Acţionări în mecanică-fină şi
mecatronică, Editura Alma Mater, Cluj-Napoca, Romania, 2004, ISBN 973-8397-69-3
[8] Mândru, D., Crişan, R., Stan, S., Crişan,N., O noua aplicaţie a actuatorilor pe bază
de aliaje cu memoria formei în tehnologia asistivă, OGET2002
[9] Mătieş, V., Mândru, D., Tătar, O., Mătieş, M., Csibi, V., Actuatori în mecatronică,
Editura MEDIAMIRA, Cluj-Napoca, 2000.
[10] Mihalcz, I., New shape memory alloys power circuits, The 6th International
Workshop on Robotics in Alpe-Adria Danube Region RAAD’97, Italy, 1997
[11] Mukherjee, R., Christian, Th., F., Thiel, R., A., An actuation system for the
control of multiple shape memory alloy actuators, Sensors and Actuators, Elsevier, 1996
[12] Pons, J., L., Reynaerts, D., Peirs, J., Ceres, R., VanBrussel, H., Comparision of
different control approaches to drive SMA, International Conference on Robotics and
Automations, pg. 819-824 ICAR’97, Monterey, Canada, 1997,
[13] Tanaka, Y., Yamada, A., A rotary actuator using shape memory alloy for a robot
– Analysis of the response with load, IEEE/RSJ International Workshop on Intelligent Robots
and systems IROS91, Osaka, japan, 1991, pag. 1163-1168
26
5. Analiza performanţelor tehnice ale senzorilor
5.1 Rolul şi tipul senzorilor din dotarea roboţilor reconfigurabili
Autorul [STO04] acordă tuturor tipurilor de roboţi enumeraţi în tabelul 1 calificativul minim
din punct de vedere al dotării cu sisteme senzoriale. Întrebarea logică este: de ce un grad atât
27
de redus de sisteme senzoriale, în condiţiile în care au roluri atât de importante? Răspunsurile
ar putea fi cel puţin două:
Modulele roboţilor auto-reconfigurabili au dimensiuni de ordinul milimetrilor sau
centrimetrilor, iar în volumul lor trebuie să se integreze componentele mecanice, sursa de
alimentare cu energie, placa cu procesorul de comandă, actuatorii, senzorii, modulele de
comunicaţie etc. Restricţiile de spaţiu impun renunţarea la un număr mai mare de sisteme
senzoriale.
Pentru diferitele tipuri de senzori trebuie realizată o compatibilitate şi o integrare din
punct de vedere hardware şi software cu procesorul de comandă, lucru de multe ori dificil,
datorită diversităţii mari a senzorilor. De asemenea, înzestrarea unui modul cu anumiţi
senzori, mai complecşi, măreşte mult timpul de calcul şi depăşeşte, în multe cazuri,
capacitatea de răspuns, în timp real, a procesorului.
28
În pofida severităţii aprecierilor legate de înzestrarea cu senzori a roboţilor
reconfigurabili [STO04], modulele roboţilor PolyBot prezentate în [ZHA02] sunt înzestrate cu
un număr suficient de mare de senzori de diferite tipuri (fig.34):
Potenţiometre;
Senzori de forţă;
Senzori de detecţie în infraroşu;
Senzori de acceleraţie;
Senzori cu efect Hall.
proiectului, se vor trece în revistă principalele tipuri de senzori din dotarea acestor roboţi, cu
5.2.1.1 Potenţiometrul
Este un senzor care furnizează un semnal analogic, sub forma unei tensiuni electrice.
Principiul măsurării analogice a deplasării este prezentat în figura 35.
29
a) b)
Lx
Rx = • Rt (1)
Lt
30
Fig. 36 Scheme de principiu ale potenţiometrului: a) liniar; b) rotativ (fără contact)
αx . ,
Rx = Rt (2)
αM
pentru un potenţiometru rotativ, pentru care înfăşurarea este dispusă de-a lungul unui arc de cerc,
şi are o variaţie liniară în funcţie de deplasare.
Rezistenţa Rt poate fi materializată fizic cu ajutorul unui fir bobinat sau printr-un strat conductiv.
La potenţiometrele bobinate eroarea minimă corespunde saltului de la o spiră la alta, respectiv
lăţimii cursorului. Potenţiometrele de precizie permit o rezoluţie maximă ΔR/R de ordinul de
mărime 10-3. Straturile conductive sunt realizate pe un suport izolator din plastic, pe care se
aplică o pulbere conducătoare de carbon sau metalică, constituită din granule cu mărimi de
ordinul a 10-2 µm. Şi această structură granulară implică o variaţie discontinuă a rezistenţei
măsurate, însă rezoluţiile acestor potenţiometre (valori de circa 0,3 µm) sunt net superioare celor
ale potenţiometrelor cu rezistenţe bobinate.
31
(PEWATRON - Elveţia), a dezvoltat seria BLUE-POT [PEWATRON], care cuprinde
potenţiometre fără contact, ce se bazează pe interacţiunea dintre un magnet permanent şi un
strat magnetorezistiv aplicat pe o placă de bază (fig. 3, b). Caracteristica de ieşire este
dependentă de mişcarea magnetului. Este un potenţiometru ideal pentru o funcţionare fără
uzură şi întreţinere, care asigură durate de funcţionare mai mari de 500 milioane de cicluri.
În final se vor prezenta câteva consideraţii privind influenţa diferitelor elemente asupra
montajului de măsurare. Potenţiometrul este alimentat de la o sursă de c.c., Es, având o rezistenţă
internă Rs. Tensiunea Vm, culeasă la ieşirea rezistenţei variabile Rx şi măsurată cu un dispozitiv
având rezistenţa internă Ri, poate fi exprimată cu relaţia:
Rx 1
Vm = E s . . . (3)
Rs + R t R
1 + x .(1 -
Rx
)
Ri Rs + R t
Rx L α
Vm = E s . = E s . x (pot.liniar) = E s . x (pot.rotativ), (4)
Rt Lt αM
În cazul în care un cursorul unui potenţiometru rotativ execută unghiuri mai mari de 360°, la
ieşirea acestuia sunt generate mai multe semnale ciclice (curbe aproximate cu un segment de
32
dreaptă sau bucle de sinusoidă – fig.35, a şi b), astfel încât se impun soluţii pentru
identificarea univocă a semnalului urmărit. În general, cursele elementelor mobile ale
roboţilor auto-reconfigurabili sunt mai mici decât ±180°, dar potenţiometrul poate fi montat
pe axul actuatorului, iar elementul mobil poate fi acţionat prin intermediul unui reductor,
pentru amplificarea momentului motor. În aceste situaţii se folosesc potenţiometre multi-turn
(fig.38, dreapta), care generează un singur semnal pentru unghiuri mai mari de 360°.
a)
33
b)
Fig. 39 Senzor incremental miniatural: a) vederi de ansamblu; b) dimensiuni
Ieşirile unui astfel de senzor sunt reprezentate de două semnale sinusoidale în cuadratură şi un
impuls de referinţă (fig.40, a), generat pentru o rotaţie complecta, care prin electronica integrată
în senzor sunt convertite în semnalele dreptunghiulare UA şi UB, defazate cu un sfert de perioadă
şi impulsul de referinţă US (fig.40,b).
34
Semnalele dreptunghiulare UA şi UB trebuie să parcurgă o succesiune de circuite de prelucrare
pentru a fi accesibile sistemului de comandă a robotului/modulului:
Un circuit pentru filtrarea semnalelor
Un circuit pentru detectarea sensului de deplasare orar/antiorar şi generarea
corespunzătoare a impulsurilor pentru numărarea directă/inversă;
• cascadă de numărătoarea pentru contorizarea impulsurilor;
Un registru de încărcare şi un eventual multiplexor, pentru transmiterea impulsurilor spre
magistrala procesorului de comandă.
Testele au fost efectuate cu ajutorul a două circuite integrate, care cumulează aceste funcţiuni.
Primul, HCTL-2016, aparţine familiei de circuite HCTL-20XX ale firmei Agilent
Technologies, iar schema bloc este prezentată în figura 41.
35
ca funcţiuni cu circuitul din figura 41), care generează un semnal de numărare (CNT), pe cele
patru fronturi ale impulsurilor CH A şi CH B, precum şi un semnal de dirijare a numărării, fie
pentru numărarea directă (UP/⎯DN = 1), pentru unul din sensurile de deplasare a senzorului, fie
pentru numărarea inversă (UP/⎯DN = 0), dacă senzorul se deplasează în sensul contrar.
Semnal de Acţiune
Pas SEL ⎯OE CLK inhibare
1 L L ↓ 1 Activează inhibarea; citeşte byte-ul
superior
2 H L ↓ 1 Citeşte byte-ul inferior
3 X H ↓ 0 Dezactivează inhibarea
36
Procesorul dirijează, prin intermediul bitului 0 al portului 1 (P1.0), legat la intrarea ⎯RST a
circuitului, iniţializarea conţinutului numărătorului şi registrului de încărcare (vezi figura
42)
Numărul maxim de impulsuri, care poate fi contorizat de un circuit, este de 212 = 4096 (HCTL-
2000), sau 216 = 65.536 (HCTL-2016, HCTL-2020). Circuitul HCTL-2020 are o logică de
cascadare (partea din dreapta-sus în figura 8), care permite extinderea domeniului de numărare,
prin legarea unui numărător la ieşirile CNTCAS şi U/⎯D, care se vor activa când numărătorul
circuitului HCTL-2020 revine din starea finală în cea iniţială, la atingerea limitei de numărare,
într-un mod asemănător celui prezentat în capitolul 4 pentru numărătoarele 74193/74192 şi
4029. Legarea adecvată a unui numărător de 4 biţi pe ieşirile CNTCAS şi U/⎯D ale lui HCTL-
2020, extinde domeniul de numărare la 220 impulsuri.
Al doilea tip de circuit integrat, care a fost folosit şi integrat în schemele de comandă este
LS7366 al firmei LSI Computer Systems, care are avantajul unei legături seriale I2C, cu
procesorul, fiind montat într-o capsulă cu numai 14 pini (fig.43) şi realizând o economie
substanţială de linii I/E necesare dinspre procesor.
37
Fig.43 Configuraţia pinilor circuitului LS7366
Schema bloc a circuitului este prezentată în figura 44, având blocuri cu funcţiuni similare cu
HCTL2016.
38
Fig.45 Legătura dintre LS7366 şi microcontrollerul PIC18
În finalul secţiunii destinate senzorilor incrementali se vor detalia câţiva parametri importanţi ai
acestora.
Turaţia maximă admisă este condiţionată atât de partea mecanică, cât şi de partea electronică a
unui senzor. Este, din punct de vedere mecanic, pe de o parte, o caracteristică a senzorului, fiind
indicată în tabelul de parametri ai acestuia, dar şi o caracteristică a cuplajului utilizat.
Din punct de vedere al părţii electrice şi electronice, turaţia maximă este limitată atât de
frecvenţa maximă de comutaţie a fotodetectorilor, fmax [KHz], indicată în catalogul senzorului,
dar şi de frecvenţa maximă, fFmax [KHz], a circuitelor electronice de prelucrare (numărătoare,
bistabili, porţi logice etc.):
F
f [KHz]
n
F
max = max • 10 3 • 60 [rot/ min ], (5)
N
în care: nFmax este turaţia maximă admisibilă din punct de vedere al fotodetectorilor;
fFmax - frecvenţa maximă admisibilă a fotodetectorilor;
N - numărul de diviziuni ale discului divizor,
respectiv:
P
f [KHz]
n
P
max = max • 10 3 • 60 [rot/ min ], (6)
i.n.N
unde: nPmax este turaţia maximă admisibilă din punct de vedere al părţii
electronice de prelucrare;
39
fPmax - frecvenţa maximă admisibilă a părţii electronice de
prelucrare;
i - factor de interpolare;
n - factor de valorificare a fronturilor.
Se alege turaţia cea mai redusă, care satisface toate restricţiile mecanice şi electrice.
Rezoluţia este determinată în primul rând de numărul, N, de diviziuni ale elementului
(rigla/disc) divizor. Ea poate fi mărită de i ori prin interpolarea semnalelor furnizate de
traductoare şi de n ori prin valorificarea mai multor fronturi ale semnalelor. De exemplu, pentru
rigla incrementală LIP 101R [Heidenhain], perioada semnalelor obţinute de la fotodetectori este
de 4 μm. Valorificând toate cele 4 fronturi ale semnalelor (n=4), se obţine o rezoluţie de 1 μm.
Pentru un factor de interpolare i = 10 se obţine o rezoluţie de 0,1 μm, iar pentru interpolări de 50
şi 100 de ori, rezoluţiile vor fi de 0,02 μm (20 nm) şi, respectiv, de 0,01 μm (10 nm).
În care acesta măsoară direct mişcarea elementului mobil al unei cuple, are expresia:
360 o
R= [grade]. (7)
i•n• N
În cazurile în care mişcarea, măsurată la nivelul axului motorului de acţionare, se transmite prin
diferite tipuri de mecanisme, trebuie ţinut cont de specificul mecanismului respectiv. De
exemplu, un mecanism şurub-piuliţă cu pasul p [mm], care trebuie sa asigure o rezoluţie mai
mare decât R [mm], va impune alegerea unui senzor rotativ, având numărul de diviziuni, N, dat
de relaţia:
1 1 p
N= • • , (8)
i n R
40
Principiu de funcţionare; caracteristici
Senzorii de acceleraţie permit măsurarea acceleraţiilor dinamice (datorate vibraţiilor) sau
statice (determinate de gravitaţie) ale unui solid după una sau mai multe direcţii. Sunt multe
principii de funcţionare ale acestora, dar va fi detaliat principiul senzorului MEMSIC 2125
[Parallax], realizat în tehnologia MEMS, care a fost utilizat pentru teste împreună cu modulele
BASIC Stamp, în vederea aprecierii posibilităţilor de integrare a lui în configuraţia roboţilor
mobili proiectaţi. Acesta conţine un mic încălzitor inclus în interiorul unui recipient, care
încălzeşte un balon de aer din interiorul recipientului. Când asupra senzorului acţionează forţe
externe, balonul de aer se deplasează, iar deplasarea este sesizată cu ajutorul a patru senzori
de temperatură foarte sensibili, plasaţi pe patru laturi ale recipientului, prin modificarea
temperaturii, în funcţie de distanţa faţă de aerul încălzit (fig.45). Electronica integrată în
senzor converteşte poziţia balonului în impulsuri transmise la ieşirile pentru axele X şi Y.
Configuraţia conectorilor senzorului Memsic 2125 este compatibilă cu cea a multor altor
senzori de acceleraţie accesibili pe piaţă, asigurând o integrare şi interschimbabilitate facilă în
cadrul diferitelor aplicaţii. Se constată că senzorul ocupă numai două linii I/E ale procesorului
numeric (X-out şi Y-out), dacă este utilizat pentru două axe şi o singură linie, în cazul unei
singure axe (pentru unghiuri de înclinare mai mici de 60°). Compatibilitatea semnalelor va fi
exemplificată cu ajutorul unui senzor de acceleraţie, ADXL202E [Analog], care funcţionează
pe un principiu complet diferit.
41
Consum de curent mai mic de 4 mA pentru tensiunea de alimentare de 5 V.
Impulsul de ieşire al senzorului este fixat la o lăţime de 50% pentru 0 g, iar variaţiile lăţimii
sunt proporţionale cu acceleraţia şi pot fi determinate direct de BASIC Stamp, cu ajutorul
formulei prezentate în figura 47. Perioada T2 este calibrată la 10 milisecunde pentru o
temperatură ambiantă de 25°C.
Un alt senzor de acceleraţie care a fost analizat este ADXL202E (fig.48), care este realizat, de
asemenea în tehnologie MEMS şi este disponibil sub forma unui circuit integrat cu 8 pini
(fig.48, b). Senzorul conţine o structură de poli-silicon, suspendată prin arcuri din acelaşi
material pe plăcuţa de siliciu a circuitului integrat, care opun o rezistenţă la forţele de
acceleraţie. Deplasările structurii sunt măsurate cu ajutorul unui condensator diferenţial, care
are plăci fixe independente şi plăci centrale ataşate masei în mişcare, iar semnalele de ieşire
sunt semnale dreptunghiulare, similare cu cele prezentate în figura 16 pentru Memsic 2125,
iar acceleraţia se calculează cu aceeaşi formulă.
42
a) b)
Dimensiuni: 5 mm x 5 mm x 2mm;
Plaja de măsurare: ± 2g;
Rezoluţie: 2 mg pentru frecvenţa de 60 Hz;
Consum de curent: < 0,6 mA;
Tensiune de alimentare: 3 V ÷ 5,25 V;
Şocuri maxime suportate: 1000 g.
Ca model pentru analiza şi testarea caracteristicilor tehnice ale acestui tip de senzori a fost
ales Parallax PING))), un senzor având configuraţia şi dimensiunile prezentate în figura 49.
44
Timp de întârziere până la următoarea măsurare: 200 μs:
Dimensiuni – 22 mm x 46 mm x 16 mm.
Un avantaj major al acestui senzor constă în faptul că nu necesită decât o singură linie I/E a
unui procesor numeric (fig.50 – linia I/O pin).
Senzorul detectează un obiect şi permite măsurarea distanţei până la el prin emiterea unui
scurt impuls cu frecvenţa de 40 KHz (domeniul ultrasonic), care se deplasează cu viteza
sunetului în aer, de 340 m/s, şi aşteptarea şi sesizarea ecoului, determinat de reflectarea
undelor de către obstacol (fig.51).
45
Când recepţionează ecoul, senzorul comută linia pe nivelul 0 logic, astfel încât timpul
tin, cuprins între o limită minimă, tin-min = 115 μs şi o limită maximă, tin-max = 18,5 ms,
va fi proporţional cu distanţa până la obstacol.
Undele ultrasonice se propagă sub forma unui con, astfel încât energia este maximă de-a
lungulaxei conului (axa acustică) şi descreşte odată cu apropierea de generatoare. Pentru a fi
perceput, un obiect trebuie să se găsească în interiorul acestui con.
Investigarea spaţiului din jurul modulului robotului impune, fie rotirea senzorului cu un unghi
măsurat exact, fie o reţea de senzori ultrasonici, dispuţi circular la un anumit unghi (uzual
15°).
47
Alte tipuri de senzori care au o funcţie similară şi pot fi luaţi în considerare pentru roboţii
autoreconfigurabili sunt:
48
Roţile active sunt acţionate prin intermediul a două trepte de angrenaje cu roţi dinţate. Prima
include un pinion cu 8 dinţi, montat pe axul motorului (pinionul de culoare deschisă din
fig.23) şi o roată dinţată cu 24 de dinţi, iar a doua, este realizată prin angrenarea roţii
intermediare de 24 de dinţi cu o roată de 40 de dinţi, care antrenează axul roţii active.
Raportul de transmitere poate fi calculat cu formula:
i = (24/8) * (40/24) = 5,
RCX este o piesă LEGO, care poate fi programată pentru comanda motoarelor şi achiziţia şi
prelucrarea informaţiilor de la senzori. Este echipată cu un procesor de 100 Hz şi are trei ieşiri
de câte 9 Volţi (A÷C) şi trei intrări A/D (analog/numeric) de 10 biţi (1÷3). Ieşirile sunt
utilizate pentru comanda motoarelor sau a becurilor, în timp ce intrările pot fi conectate la o
varietete foarte mare de senzori, cum ar fi, senzori de lumină, de temperatură, de contact, de
depasare etc. Utilizatorul poate memora maxim 5 programe de lucru în RCX, având opţiunea
protejării primelor două la rescriere. Datele sunt transmise de la PC la RCX printr-o unitate în
infraroşu, conectată la calculator printr-un cablu USB. Interfaţa om-maşină a RCX (HMI –
Human-Machine Interface) include patru butoane şi un afişaj (detaliul din dreapta în fig.24).
49
Programele dezvoltate în ROBOLAB pe PC sunt compilate şi transmise în infraroşu către
RCX, unde sunt memorate şi executate în mod independent. Când se utilizează Vision Center
pentru achiziţia de imagini cu ajutorul unei camere USB, conexiunea dintre PC şi RCX este
permanentă, pentru a transmite către RCX detaliile selectate şi caracteristicile imaginii
prelucrate.
Structura LEGO prezentată în fig.55 conţine numai două motoare şi un senzor de lumină.
Motoarele sunt comandate prin intermediul unor semnale PWM în cinci trepte de viteză
(modificatorii de viteză 1÷5 in ROBOLAB), în timp ce ieşirea analogică a senzorului este
convertită într-un număr proporţional cu intensitatea luminii reflectate.
O soluţie, folosită mai des, presupune utilizarea a doi senzori de lumină, plasaţi simetric faţă
de conturul curbei urmărite, care are o culoare care contrastează faţă de culoarea podelei.
Această soluţie este similară cu cea utilizată de AGV-uri (Automated Guided Vehicles),
pentru a urmări un cablu electric montat sub podea, în baza tensiunilor electrice induse în
două bobine plasate de fiecare parte a cablului. Orice variaţie în intensitatea luminii/tensiunea
indusă determină o schimbare adecvată a direcţiei, pentru a repoziţiona vehiculul de-a lungul
traiectoriei.
În măsura în care se foloseşte un singur senzor de lumină (fig.55), o soluţie utilizată a
presupus configurarea traiectoriei urmărite din fâşii de hârtie cu trei culori diferite: albastru în
mijloc, negru şi galben (culoarea podelei) pe cele două părţi. Aceste culori au fost selectate în
funcţie de reacţia senzorului la fâşii de hârtie de culori diferite, testată cu ajutorul secvenţei
extrem de simple de instrucţiuni, prezentată în figura 57. Prima pictogramă (un semafor
verde) reprezintă începutul programului. A doua pictogramă presupune încărcarea în
containărul galben (un registru al procesorului) a valorii senzorului de lumină, urmată de
generarea unui sunet (pictograma 3) şi afişarea valorii containărului pe display-ul RCX. După
2 secunde (penultima pictogramă), un semafor roşu determină sfârşitul execuţiei programului.
50
În scopul elaborării unui program mai complicat, sunt utile testările unor secvenţe mai simple
de program, care să verifice reacţiile robotului la modificări ale intensităţii luminii, sesizate de
senzor. Secvenţa de comenzi din figura 58 porneşte ambele motoare cu viteza prezumată,
foloseşte comanda “wait for darker” (intensitate mai mică a luminii) pentru a reduce viteza la
nivelul 1 şi comanda “wait for brighter” (intensitate mai mare a luminii) pentru a accelera
motoarele la nivelul 5 al vitezei, timp de 6 secunde, după care opreşte motoarele şi încheie
programul.
Secvenţa de instrucţiuni din figura 59 este foarte asemănătoare cu cea din figura 26, dar
utilizează comanda “wait for brighter” pentru a schimba direcţia robotului (rotirea în jurul
jurul axei), prin inversarea sensului de rotaţie a motorului A.
Aceste secvenţe simple de program au fost utilizate pentru a dezvolta o secvenţă mai
complexă de comenzi, prezentată în figura 60, care serveşte la urmărirea unei traiectorii
imprimate pe podea, realizată din fâşii de hârtie de diferite culori (albastră, galbenă, neagră).
Programul foloseşte două structuri de programare de un nivel mai înalt: un ciclu “while”, care
este repetat de un anumit număr de ori (200 de cicluri) şi o ramificaţie în program care
declanşează două ramuri simultane. Robotul porneşte ambele motoare cu nivelul 2 de viteză şi
se deplasează, dintr-o poziţie oarecare, până când întâlneşte linia albastră (pragul de lumină
48). Continuă să se deplaseze în aceeaşi direcţie până când întâlneşte fie linia galbenă – vezi
ramura de sus (pragul de lumină 50) – şi se răsuceşte spre dreapta spre linia albastră, fie linia
neagră – vezi ramura de jos – când se întoarce spre stânga pentru a întâlni linia albastră.
51
Fig.60 Secvenţă de instrucţiuni pentru urmărirea unei traiectorii
Robotul execută mişcări în zig-zag, dar se menţine întotdeauna pe traiectorie, în sensul în care
a pornit iniţial. Secvenţa de program poate fi modificată cu uşurinţă pentru, pentru a obţine o
mişcare mai lină, sau pentru a schimba direcţia de deplasare a robotului prin apăsarea unui
senzor de contact (touch sensor).
Experienţele cu o cameră video s-au efectuat tot pe robotul mobil prezentat în figura 55.
Camera utilizată pentru experimente este o Creative WebCam (fig.61), conectată la un PC
printr-un port USB. Are o frecvenţă maximă a cadrelor de 30Hz şi o rezoluţie maximă de 320
(pe orizontală) x 240 (pe verticală) pixeli, în perfectă concordanţă cu rezoluţia maximă
asigurată de comenzile ROBOLAB de achiziţie a imaginilor. Frecvenţa maximă a imaginilor
achiziţionate cu ROBOLAB este variabilă, dar este sub 30Hz. Se situează, în general, în jurul
a 15Hz şi depinde de mărimea imaginii şi de complexitatea operaţiilor de prelucrare a
acesteia.
52
Trebuie spus că utilizarea unei camere video în cazul roboţilor reconfigurabili impunr câteva
consideraţii foarte importante:
a. Aceasta va fi amplasată în cele mai multe cazuri în afara modulelor robotului, sub
comanda unui procesor coordonator, sau, cel mult la nivelul unui modul coordonator al
ansamblului, dotat cu o capacitate de calcul mult mai mare.
Experimente utile, pentru înţelegerea unor principii importante de prelucrare a imaginilor, pot
fi dirijate spre folosirea de:
Plane de culoare: sunt utile pentru identificarea obiectelor colorate. Un obiect colorat este
mai luminos în planul său de culoare. Un bloc LEGO albastru va fi mai luminos într-un
plan albastru decât în unul roşu sau verde.
Praguri: aplicând un prag unei imagini, utilizatorul poate izola părţi ale imaginii, în
funcţie de intensitatea unor pixeli. Acest lucru este util pentru separarea obiectelor de
fundalul lor.
BIBLIOGRAFIE
[BOR88] Borenstein, J., Koren, Y.: Obstacle Avoidance with Ultrasonic Sensors, IEEE
Journal of Robotics and Automation, Vol.4, Nr.2, April 1988.
53
[BOR91] Borenstein, J., Koren, Y.: Histogramic In-Motion Mapping for Mobile Robot
Obstacle Avoidance, IEEE Transactions of Robotics and Automation, vol.7, No.4, August
1991.
[BRO05] Broxton, M.J.: Localization and Sensing Applications in the Pushpin Computing
Network, MSc Paper, M.I.T., 2005.
[DUM96] Dumitriu, A., Bucşan, C., Demian, T.: Sisteme senzoriale pentru roboţi, Editura
MEDRO, Bucureşti, 1996.
[DUM06a] Dumitriu, A.: Mecatronică, volumul I, Editura Universităţii „Transilvania” din
Braşov, 2006.
[DUM06b] Dumitriu, A. ş.a.:Trajectory Tracking by LEGO Robots, Using a WEB Camera
and Computer Vision, Buletinul Institutului Politehnic din Iaşi, Tomul LII (LVI), Fascicula
7A, 2006, pag.253-258.
[ELF87] Elfes, A.: Sonar-Based Real-World Mapping and Navigation, IEEE Journal of
Robotics and Automation, Vol.RA-3, Nr.3, June 1987.
[FIT04] Fitch, R.Ch.: Heterogeneuos Self-Reconfiguring Robotics, PhD Thesis, Darmouth
College, Hanover, New Hampshire, September, 2004.
[KOT03] Kotay, K.: Self-Reconfiguring Robots: Design, Algorithms and Applications, PhD
Thesis, Darmouth College, Hanover, New Hampshire, December, 2003.
[SAL04] Salemi, B. : Experimental Evaluation of a Distributed Control System for Chain-
Type Self-Reconfigurable Robots, PhD Thesis, Univ.of Southern California, December, 2004.
[STO04] Stoy, K.: Emergent Control of Self-Reconfiguring Robotics, PhD Thesis, Univ.of
Southern Denmark, January, 2004.
[ZHA02] Zhang, Y. et all: Sensor Computations in Modular Self-Reconfiguring Robots,
accesibil pe Internet fisierul “Iser02.pdf”.
[Analog] Analog Devices, Low-Cost ± 2g Dual-Axis Accelerometer with Duty-Cycle Output,
accesibil: http://www.analog.com/productSelection/pdf/ADXL.202E.pdf.
[Parallax] Parallax Inc.: Diferite tipuri de senzori, Accesibili la www.parallax.com.
54
6. Soluţii pentru comanda unui modul şi comunicaţii între module
6.1. Introducere
Realizarea unui sistem robotic miniatural cu abilităţi de reconfigurare şi
automultiplicare presupune existenţa unui sistem de comandă şi control performant şi flexibil.
O structură ierarhizată formată dintr-un PC şi o serie de microcontrolere ar putea reprezenta o
soluţie adecvată (vezi fig. 62.)
PC
MICRO MICRO
CONTROLER CONTROLER
55
La alegerea componentelor sistemului mai trebuie avut în vedere şi faptul dacă
comunicaţie dintre componentele sistemului se realizează pe cablu s-au fără cablu (Wireless).
În prima variantă reţeaua de microcontrolere se va interconecta prin implementarea sistemului
de comunicaţii cunoscut sub denumirea I2C ce va fi descris ulterior. În cazul în care se
optează pentru varianta de comunicaţii fără fir, vor trebui alese componente (PC,
microcontrolere, senzori şi elemente de execuţie) care să aibă HW necesar pentru a putea
lucra într-o reţea Wireless după standardul de comunicaţii IEEE 802.15.4 respectiv Zigbee.
Varianta clasică, prin cablu, are avantajul unui cost redus, a simplităţii protocoalelor
utilizate şi dezavantajul de a fi greu de realizat între componente aflate în mişcare.
Soluţia Wireless reprezintă alternativa către care tind majoritatea sistemelor actuale,
presupune utilizarea unor componente care să aibă HW necesar implementării standardului de
comunicaţii IEEE 802.15.4, deci vor fi mai scumpe dar cu avantajul unei flexibilităţi mai mari
şi a posibilităţii de a putea fi aplicate unor sisteme care au componente în mişcare.
În cele ce urmează vor fi prezentate pe scurt cele două variante de comunicaţii cu tipul
de microcontrolere utilizate împreună cu standardul de comunicaţii implementate.
Alegerea unuia sau alteia din variante precum şi gradul de complexitate al sistemului vor
depinde de structura concretă a minirobotului precum şi a aplicaţiei avută în vedere cu
impunerea unor eventuale restricţii legate de costuri şi putere consumate. Nu trebuie exclusă
nici posibilitatea realizării unor structuri mixte-parţial pe cablu şi parţial wireless dacă acestea
vor prezenta interes pentru o anume aplicaţie.
56
circuite auxiliare de intrare-ieşire utile în aplicaţiile de comandă şi control
(porturi, timere, convertoare analog-digitale, comparatoare şi module PWM,
unităţi de comunicaţie serială).
Microcontrolerele compatibile 8051 au structura generală de mai sus, diferenţele
care apar între diferiţi producători se referă în principal la numărul şi tipul circuitelor
de intrare/ieşire, la capacitatea şi tipul memoriilor de pe chip.
Pentru a exemplifica structura hardware a unui microcontroler compatibil 8051 am ales
microcontrolerul 80C552 produs de Philips. Acest microcontroler are o arhitectură pe 8 biţi şi
nu are memorie internă de program.
Acest microcontroler are implementate două tipuri de comunicaţie serie, aşa cum se vede şi
din descrierea caracteristicilor:
o Comunicaţia serială asincronă (UART), controlată de interfaţa SIO0, reprezentată în
schema bloc prin Serial UART Port;
o Comunicaţie serială sincronă de tip I2C, controlată de interfaţa SIO1,
o reprezentată în schema bloc prin Serial I2C Port.
57
Figura 63. Schema bloc a microcontrolerului 80C552
58
dezvoltare software pentru acest tip de microcontrolere, µVision, în mai multe variante. Acest
mediu se instalează sub WINDOWS, este interactiv şi conţine o serie de instrumente flexibile
de programare care permit:
editarea fişierelor sursă,
asamblarea sau compilarea fişierelor sursă, programe scrise în limbaj de asamblare
sau C,
link-editarea modulelor obiect şi a bibliotecilor,
crearea fişierelor de tip INTEL HEX,
testarea şi depanarea programelor a căror rulare se poate face fie în regim
de simulare, fie sub Monitor 51.
Pentru asigurarea unor performanţe ridicate fiecăreia dintre aceste operaţii, mediul
software KEIL µVision conţine:
¾ Un pachet de programe executabile specifice:
C51 ANSI Optimizing C Cross Compiler pentru crearea unui modul obiect dintr-
un fişier sursă editat în C,
A51 Macro Assembler pentru crearea modulelor obiect relocabile din fişiere sursă
scrise în asamblare,
BL51 Linker/Locator care combină modulele obiect relocabile create de C51 sau
de A51 în module obiect absolute,
LIB51 Library Manager care combină modulele obiect create de asamblor sau
compilator într-o bibliotecă, care poate fi folosită apoi de link-editor,
OH51 Object HEX Converter pentru crearea fişierelor direct executabile de tip
Intel HEX din module obiect absolute,
RTX-51 Real-time Operating System pentru gestionarea derulării, în timp real, a
mai multor aplicaţii pe un singur microcontroller în cazul unor proiecte
complexe.
¾ O bază de date structurată pe firme producătoare şi tipuri de microcontrolere;
¾ Un manager de proiect (Proiect Manager) care asigură gestionarea corectă a
resurselor programului, în vederea dezvoltării rapide a aplicaţiilor;
¾ Editor de texte;
¾ Un program de simulare/depanare (Debugger);
¾ O interfaţă Advanced GDI pentru rularea şi depanarea programelor sub MONITOR
51 versiunea V2.9.
¾ Linkuri către manualele de utilizare ale programelor componente, foi de catalog
pentru toate tipurile de microcontrolere din baza de date.
59
Pentru a evidenţia interoperabilitatea acestui mediu software, am prezentat în figura 64
fereastra de lucru a programului
60
• SDA (Serial Data) – linia de date
• SCL (Serial Clock) – linia de semnal de tact pentru sincronizarea transferului.
Comunicaţia se realizează între circuitele conectate la acelaşi bus. Un exemplu de
conectare a unor circuite la un bus I2C este prezentat în figura 65
61
exemplu, un bloc de detecţie a biţilor de START şi STOP (START&STOP bit detection)
pentru o arbitrare corectă a transferului.
62
Figura 67. Configurarea I2C – bus la microcontroller-ul 80C552
63
Slave Receive. Fiecare cod de 5 biţi generează adresa subrutinei de tratare a întreruperii şi este
memorat în registrul de stare S1STA, pe poziţia celor mai semnificativi 5 biţi.
Restul de trei biţi, cei mai puţin semnificativi sunt 0 în acest registru. Încărcarea celor
5 biţi în S1STA se produce atunci când este setat hardware flag-ul de întrerupere, şi rămâne
stabil până când acest flag este resetat software.
În această figură
⇒ S este condiţie de START
⇒ P/S este condiţie de STOP/ START repetat (în cazul transferului mai multor octeţi)
⇒ ACK este semnal de acceptare de la receiver
⇒ R/ W este bit de direcţie (pentru R/W=1 → citire, R/W=0 → scriere)
Se observă în această figură că:
• Liniile de date şi de tact sunt în stare HIGH când bus-ul nu este ocupat
• O tranziţie HIGH în LOW pe linia de date în timp ce SCL este în stare logică 1, este
interpretată ca o condiţie de START.
• O condiţie de STOP este o tranziţie LOW în HIGH pe SDA când SCL este HIGH.
• Un bit de date este transferat pe durata unui puls al impulsului de tact de pe linia SCL
• Pentru a realiza un transfer de date, trebuie respectată următoarea secvenţă:
o Se trimite condiţia de START
o Transferul se execută bit cu bit pe durata unui tact de pe linia SCL
o Bitul 7 este transmis primul, bitul 0 este transmis ultimul
o Data trebuie să fie stabilă pe toată durata unui puls
o Datele transferate sunt în pachete de 8 biţi serial. Fiecare grup de 8 biţi este
urmat de un bit ACK. Acesta are valoarea 0 logic
o Pentru terminarea transferului este trimisă o condiţie de STOP pe durata
pulsului semnalului de tact (SCL este HIGH).
64
Impulsurile de tact pe toată durata transferului sunt generate de master. Tot el
generaează condiţia de START, pentru începutul transferului şi condiţia de STOP pentru
încheierea lui.
Pentru programarea interfeţei într-unul din cele patru moduri de lucru este necesar să
fie cunoscute:
o Funcţiile fiecărui bit din structura celor patru registre cu funcţii speciale,
o Cele 26 coduri de stare ale busului
o Operaţiile care trebuie executate în fiecare din cele 26 stări
Nu ne propunem în această lucrare o abordare detaliată a programării interfeţei I2C.
Vom prezenta doar principalele acţiuni care trebuie întreprinse pentru fiecare mod de lucru.
1. Mod de lucru Master Transmitter : Un master transmite un număr de octeţi unui slave
receptor.
⇒ Se fac iniţializările în S1CON: activare SIO1, setarea ratei de transfer
⇒ Începe transferul prin emiterea condiţiei de START
⇒ Primul octet transmis conţine adresa slave-ului receptor (7 biţi), să o numim SLA, şi
bitul de direcţie, care în acest caz are valoarea 0 logic, pe care-l simbolizăm cu W.
Primul octet transmis este, cu aceste notaţii, SLA+W.
⇒ În acest moment este setat hardware SI, un flag de întreruperi serial, din S1CON
⇒ Pot exista din acest moment pe bus stări diferite, în funcţie de recunoaşterea sau nu a
adresei slave-ului, de valoarea semnalului de acceptare (ACK sau NOT ACK). Va fi
generat codul de stare corespunzător situaţiei de pe bus care la rândul lui generează
adresa subrutinei de tratare a întreruperii respective. Codul corespunzător unei
anumite stări, va fi încărcat în S1STA.
⇒ Dacă este recepţionat de la slave-ul receptor bitul ACK, master-ul transmite apoi
octetul (octeţii) de date care fac obiectul transferului.
⇒ După fiecare octet transmis, este recepţionat un bit ACK sau Not ACK.
⇒ Sfârşitul transferului apare când master-ul emite condiţia de STOP
2. Mod de lucru Master Receiver : Un master recepţionează un număr de octeţi de la un
slave emiţător.
⇒ Transferul este iniţiat de master ca şi în modul master transmitter
⇒ Master-ul trimite adresa slave-ului de la care aşteaptă date (7 biţi), SLA, şi bitul de
direcţie, care în acest caz are valoarea 1 logic, pe care-l simbolizăm cu R. Primul
octet transmis este, cu aceste notaţii, SLA+R.
65
⇒ Este setat hardware SI. Şi în acest caz codurile de stare a busului vor fi diferite în
funcţie de situaţiile care pot apărea fie la începutul transferului, fie în timpul
derulării lui. Codul corespunzător unei anumite stări este încărcat în S1STA.
⇒ Dacă slave-ul este pregătit, va depune pe bus octetul (octeţii) de date care fac
obiectul transferului
⇒ După fiecare octet recepţionat de către master, slave-ul trebuie să transmită bitul
ACK.
⇒ Sfârşitul transferului este marcat de condiţia de STOP.
66
6.3.1. Reţele de comunicaţii fără fir conforme cu standardul IEEE 802.15.4.
Un sistem de comunicaţii fără fir conform standardului IEEE 802.15.4 conţine câteva
componente. Componentele de bază se numesc dispozitive. Dispozitivele sunt de două feluri:
cu funcţii complete (Full Funcţion Device – FFD) şi cu funcţii reduse (Reduced Funcţion
Device – RFD).
Un dispozitiv FFD poate lucra în trei moduri şi anume coordonator al unei reţele
personale (Personal Area Network –PAN), coordonator sau ca simplu dispozitiv. Un FFD
poate comunica cu un alt FFD sau un RFD în timp ce un dispozitiv RFD poate comunica
numai cu un FFD. Un dispozitiv RFD este gândit pentru aplicaţii extrem de simple cum ar fi
de exemplu acţionarea unui comutator, el nu are nevoie să transmită un volum mare de date şi
în consecinţă poate fi realizat cu resurse extrem de limitate.
Două sau mai multe dispozitive din cadrul unui sistem de operare personal (Personal
Operating System – POS), comunicând pe acelaşi canal, constituie o reţea de comunicaţie
personală fără fir (Wireless Personal Area Network – WPAN).
O astfel de reţea trebuie să includă cel puţin un dispozitiv FFD acţionând în calitate de
coordonator al unei reţele PAN.
LR-WPAN (Low Rate Wireless Personal Area Network) este o reţea de comunicaţii
fără fir, de cost redus, cu consum de putere redusă şi uşor de instalat, care asigură un transfer
de date sigur cu un protocol simplu şi flexibil conform standardului IEEE 802.15.4.
O arie de acoperire bine definită pentru aceste comunicaţii fără fir nu există deoarece
caracteristicile mediului de propagare sunt incerte şi dinamice. Mici schimbări de poziţie sau
de direcţie putând produce schimbări dramatice ale calităţii legăturii radio.
67
Figura 69. Topologii standard pentru reţele de comunicaţii fără fir
În cazul topologiei de tip stea comunicaţia este stabilită între un dispozitiv central
numit coordonator (PAN – coordonator de tipul FFD şi celelalte dispozitive din reţea, de tipul
RFD, dedicate unor aplicaţii specifice şi care pot fi sursa sau destinatarul unui transfer de
date. Dispozitivul coordonator al unui PAN poate fi la rândul lui dedicat unei anume aplicaţii
şi poate fi utilizat ca sursă, receptor sau de redirecţionare a transferurilor de date.
Dacă dispozitivele RFD sunt alimentate exclusiv de la baterie, dispozitivul
coordonator poate fi alimentat de la baterie sau de la reţea.
Aplicaţiile tipice pentru acest tip de reţele ar fi automatizări în locuinţe, jocuri, jucării
etc.
Topologia de la egal la egal (peer to peer) are, de asemenea, un dispozitiv coordonator
de PAN dar diferă de topologia de tip stea prin faptul că fiecare dispozitiv poate comunica cu
oricare alt dispozitiv aflat în aria lui de acoperire radio. Principiul tehnologiei de la egal la
egal (peer to peer) permite realizarea unor structuri de reţele complexe fie printr-o structurare
ad-hoc fie prin capacitatea de autoorganizare pe care o permite această tehnologie. Aplicaţiile
tipice ar fi controlul şi monitorizarea industrială, reţele de traductoare, agricultură, inteligenţă
etc.
68
Fig.70. Arhitectura sistemului LR – WPAN
Stratul cel mai de jos, conectat de mediul fizic notat cu PHY (Physical Layer) conţine
transceiverul de radio frecvenţă împreună cu mecanismul său de control.
Stratul de acces către mediul de comunicaţie (MAC-Medium Access Control) asigură
accesul către canalul de comunicaţie a tuturor tipurilor de transfer.
Structurile de sus (Upper Layers) formate din: stratul de reţea care asigură
configurarea şi manipularea reţelei, rutarea mesajelor, şi stratul de aplicaţii care asigură
funcţia cerută a fi îndeplinită de dispozitiv.
Accesarea stratului de control al mediului de comunicaţie MAC dinspre straturile
superioare se face prin intermediul unui controler logic al legăturilor (logical link control –
LLC) de tipul IEEE 802.2 şi a substratului de servicii specifice (service specific convergence
sublazer – SSCS).
69
ZigBee Alliance este compusă din 180 de companii care lucrează împreună pentru a
conduce pachete şi profile de aplicaţii pentru uz casnic şi comercial. Pe baza tehnologiei
ZigBee şi a standardului IEEE 802.15.4. pentru 2,4 GHz, pot fi dezvoltate aplicaţii cu soluţii
de conectare fără fir care includ:
automatizări casnice (Home Automation – HA),
automatizări de construcţii comerciale (Commercial Building Automation – CBA),
monitorizarea instalaţiilor industriale (Industrial Plant Monitoring – IPM),
încălzirea, ventilarea şi condiţionarea aerului (Heating, Ventilation and Air Condition
– HVAC).
monitorizarea pacienţilor şi a activităţilor de fitness
Tehnologia ZigBee furnizează structuri de reţea tip star - static şi dinamic -, cluster tree şi
mesh (reţea plasă – fiecare nod este legat cu celelalte, încât comunicarea se face peste
circuitele dedicate dintre noduri), care permite acoperirea unei arii largi de reţea, reţele
accesibile şi cu ocolire într-un singur punct al caracteristicii. Avantajele esenţiale ale acestei
tehnologii sunt
scăderea costurilor şi a timpului de proiectare;
creşterea securităţii comunicaţiei. Se foloseşte pentru codificări AES (Advanced
Encryption Standard) de 128 biţi;
are aplicaţii multiple, inclusiv pentru sisteme ale căror repere sunt în mişcare
70
nRF2401E, produs de firma NordicSemiconductor sau cele din familia MC1321x, produse
de Freescale.
Printre firmele cu o bogată experienţă în comunicaţii wireless este Freescale care
produce toate tipurile de componente implicate în acest gen de comunicaţii: emiţătoare-
receptoare de radio frecvenţă (RF Transceiver) MCUs, senzori, software MAC, software Z-
stack Zigbee şi o gamă de instrumente de dezvoltare flexibile.
Pentru a exemplifica structura hardware a unui microcontroler specializat, vom face
referire la circuitele din familia MC1321x.
SERIA MC1321x, este de ultimă generaţie şi este compusă din circuite SIP. Sunt
circuite realizate prin integrarea microcontrollerului MC9S08GT cu transceiver-ul MC1320x
într-o singură capsulă LGA (Land Grid Array) de 9mm*9mm*1mm şi 71 pini. Un exemplu
de capsulă LGA cu 360 terminale este reprezentat în figura de mai jos. HCTE înseamnă High
Coefficient of Thermal Expansion, BGA înseamnă Ball Grid Array.
Figura 71. Vedere de deasupra şi dedesubt a unei capsule LGA, tip HCTE, de 360 pad-uri
Din această familie fac parte patru circuite, care se deosebesc, în principal, prin
configurarea memoriei de program (FLASH) şi a memoriei de date RAM:
⇒ MC13211 are 16 KB Flash şi 1 KB de date RAM - este soluţia ideală pentru
aplicaţii, cu preţ scăzut, care necesită comunicaţie fără fir punct la punct sau
conectare în reţea STEA. Combinat cu Freescale SMAC furnizează baza
pentru aplicaţii proprietare, având la dispoziţie fişierul sursă necesar ţi exemple
de aplicaţii pentru a începe implementarea conexiunii wireless.
⇒ MC13212, conţine 32 KB de memorie Flash şi 2 KB de RAM. Împreună cu
IEEE 802.15.4 MAC, poate fi implementată o reţea care se potriveşte cel mai
bine unor anumite cerinţe de utilizator.
71
⇒ MC13213 conţine 60 KB de memorie Flash şi 4 KB RAM. Împreună cu
pachetul de protocoale ZigBee, furnizează o platformă completă ZigBee, cu
care pot fi dezvoltate produse ZigBee certificate (autentificate).
⇒ MC 13214 are aceleaşi caracteristici ca şi MC13213, dar include, în plus, şi
programul Wireless ZigBee Stack (Z – StackTM)
Cele patru circuite din această familie sunt compatibile pin cu pin şi au următoarele
caracteristici comune:
o Sunt proiectate pentru standardul IEEE 802.15.4 şi pentru tehnologia ZigBee.
o Acoperă întreg spectru de codare/decodare
o Necesită puţine componente externe
o Generator de tact programabil, în banda de frecvenţe a MCU
o Domeniu de aplicabilitate poate fi extins utilizând un LNA (Low-Noise
Amplifier) extern şi/sau un PA (Power Amplifier)
o Putere de ieşire programabilă, tipic 0 dB
o Moduri de lucru de putere foarte joasă (Ultra low power modes)
Structura generală hardware a componentelor din această familie este prezentată în figura
72. Caracteristicile tehnice ale circuitelor din această familie sunt determinate de cele două
blocuri mari ale schemei: microcontrolerul şi modemul.
Caracteristicile microcontrolerului din schemă:
Procesorul este HCS08, cu tensiune de alimentare mică şi frecvenţă 40MHz;
Are până la 60 Kbytes memorie FLASH cu bloc de protecţie şi securizare, şi până la 4
KBytes memorie RAM;
Are mai multe moduri de funcţionare cu putere redusă
Conţine o interfaţă SPI (Serial Peripheral Interface) conectată intern la modemul
802.15.4
Are două module TPM (Timer/Pulse with Modulation) de 16 biţi cu selectarea
opţiunilor de lucru: captură, sau comparare, sau PWM;
Port de 8 biţi KBI (Keyboard Interrupt);
8 canale de intrare pentru convertorul A/D de 8 sau 10 biţi;
Două interfeţe de comunicaţie SCI (Serial Communication Interfaces);
72
Figura 72. Schema bloc a circuitelor MC1332x
73
Putere de ieşire nominală de -1dBm până la 0 dBm. Poate fi programată între -27dBm
până la +3dBm, valori tipice;
Sensibilitatea la recepţie de <-92 dBm (tipic) la 1%PER (Packet Error Rate), pachet de
20 Byte, mult mai bună decât specificaţia IEE 802.15.4 care este de -85 dBm;
Comutator integrat de selectare a direcţiei e transfer transmit/receive;
Amplificator de putere PA (Power Amplifier) dual care poate fi programat să lucreze
single port sau dual port cu LNA (low Noise Amplifier) extern şi/ sau PA extern;
Are implementate trei moduri de funcţionare cu putere redusă pentru creşterea
timpului de viaţă al bateriei;
Semnalul de tact programabil cu ieşire pentru microcontroller
Patru timer comparators pentru suplimentarea resurselor timer ale MCU;
Suportă două moduri de transfer de date: packet mod, când datele sunt stocate
temporar în memoria RAM de pe chip şi streaming mode când se transferă cuvânt cu
cuvânt;
Are 7 GPIO pentru a suplimenta GPIO a microcontrolerului
74
Figura 73. Structura mediului de dezvoltare software pentru reţele wireless
BeeKit™ este o aplicaţie software independentă care oferă o interfaţă grafică în care
utilizatorul poate crea, modifica, salva şi actualiza soluţii de reţea wireless bazate pe SMAC
produs de Freescale, IEEE 802.15.4 PHY-MAC şi stiva de protocol BeeStack ZigBee.
BeeKit. oferă un wizard care permite utilizatorului să configureze rapid şi uşor
parametrii de program înainte de a crea proiectul, reducând substanţial nevoia de a naviga prin
fişiere individuale şi de a configura manual aceşti parametri. Având la îndemână o bază de
informaţii extinsă cuprinzând biblioteci pentru reţele wireless, aplicaţii “template” şi modele
de aplicaţii, utilizatorul îşi poate genera într-un workspace fişierele potrivite propriei aplicaţii.
Aceste fişiere urmează să fie importate într-un mediu integrat de dezvoltare software, IDE
(Integrated Development Environment), pentru dezvoltarea şi depanarea aplicaţiei respective.
Beekit este flexibil, acceptă pachete de programe şi funcţionalităţi noi.
6.4. Concluzii
75