Robot Mobil Autonom1 [609255]
1
CAPITOLUL I
Introducere
1.1.Generalitati
1.1.1. Scurt istoric, definiții
Unul din cele mai importante aspecte în evoluția ființei umane este folosirea uneltelor
care să simplifice munca fizică. În aceasta categorie se înscriu și roboții, ei ocupând totuși o
poziție privilegiată datorită complexității lor.
Noțiunea de robot datează de peste 4 mii de ani. Omul și -a imaginat dispozitive
mecanizate inteligente care să preia o parte însemnata din efortul fizic depus. Astfel a construit
jucării automate si mec anisme inteligente sau și -a imaginat roboții in desene, carti, filme "SF"
etc.
Revoluția informatică a marcat saltul de la societatea industrializată la societatea avansat
informatizată generând un val de înnoiri în tehnologie și în educație.Acest lucru a dus și la
apariția roboților
Termenul "robot" a fost folosit in 1920 de cehul Karel Capek într -o piesa numită
"Robotul universal al lui Kossum". Ideea era simplă: omul face robotul după care robotul ucide
omul. Multe filme au continuat sa arate că roboț ii sunt mașinării dăunătoare si distrugătoare.
Termenul de “robotics” (în traducere liberă robotică) se referă la știința care se ocupă de
studiul și utilizarea roboților. Acest termen a fost prima data folosit de scriitorul și omul de
știință american de origine rusă, Isaac Asimov, într -o scurtă povestioară numită “Runaround”, în
anul 1942. Această poveste scurtă a fost apoi inclusă într -o colecție numită “I, Robot”, care a fost
publicată în 1950.
Revoluția informatică a marcat saltul de la societatea industrializată la societatea avansat
informatizată generând un val de înnoiri în tehnologie și în educație permițând realizarea de
roboți.
Roboții oferă beneficii substantiale muncitorilor, industriilor si implicit țărilor. In situatia
folosirii în scopu ri pașnice, roboții industriali pot influența pozitiv calitatea vieții oamenilor prin
înlocuirea acestora in spații periculoase, cu conditii de mediu daunatoare omului, cu conditii
necunoscute de exploatare etc.
Domeniile de aplicare a tehnicii roboților se lărgesc mereu, ei putând fi utilizați în
industrie, transporturi și agricultură, în sfera serviciilor, în cunoasterea oceanului și a spatiului
cosmic, în cercetarea științifică etc.
2
1.2. S udiu privind stadiul robotilor mobili
1.2.1 Roboți mobili
Robotul mobil este un sistem complex care poate efectua diferite activități într -o varietate
de situații specifice lumii reale. El este o combinație de dispozitive echipate cu servomotoare și
senzori (aflate sub controlul unui sistem ierarhic de calcul) ce operează într -un spațiu real,
marcat de o serie de proprietăți fizice (de exemplu gravitația care influențează mișcarea tuturor
roboților care funcționează pe pământ) și care trebuie să planifice mișcările astfel încât robotul să
poată realiza o sarcină î n funcție de starea inițială a sistemului și în funcție de informația apriori
existentă, legată de mediul de lucru.
Succesul în îndeplinirea acestor sarcini depinde atât de cunoștințele pe care robotul le are
asupra configurației inițiale a spațiului de lu cru, cât și de cele obținute pe parcursul evoluției
sale.
Problemele specifice ce apar la roboții mobili ar fi următoarele: evitarea impactului cu
obiectele staționare sau în mișcare, determinarea poziției și orientării robotului pe teren,
planificarea une i traiectorii optime de mișcare.
În cazul unui sistem robotic automat distribuit pozițiile spațiale sunt de o extremă
importanță și de ele depinde îndeplinirea scopurilor dorite și funcționarea întregului sistem. Cu
alte cuvinte, robotul trebuie să fie ca pabil să -și planifice mișcările, să decidă automat ce mișcări
să execute pentru a îndeplini o sarcină, în funcție de aranjamentul momentan al obiectelor din
spațiul de lucru.
Planificarea mișcărilor nu constă dintr -o problemă unică și bine determinată, ci dintr -un
ansamblu de probleme dintre care unele sunt mai mult sau mai puțin variante ale celorlalte.
Evitare coliziunii cu obstacole fixe sau mobile (de exemplu alți roboți mobili) aflate în
spațiul de lucru al robotului se poate face prin mai multe metode :realizarea unei apărători
mecanice care prin deformare oprește robotul, folosireasenzorilor care măsoară distanța până la
obstacolele de pe direcția dedeplasare, folosirea senzorilor de proximitate, folosirea informațiilor
corelate de la mai multe tipuri de senzori.
Localizarea obiectelor se poate realiza și prin contact fizic, dar acesta impune restricții
asupra vitezei de mișcare a structurii manipulate. Contactul fizic dintre robot și obiectele din
mediu generează forțe de reacțiune care modifică starea robotului. Vitezele mari de lucru fac ca
efectele dinamice ale unui contact fizic cu obstacole sau obiecte manipulate să fie riscante (pot
duce la deteriorarea obiectelor sau a robotului).
Navigarea robotului este posibilă și fără o determinare a poziției și orientării față de un
sistem de coordonate fix, dar această informație este utilă pentru sisteme de comandă a mișcării.
Dintre metodele de navigație mai des utilizate se pot menționa: măsurarea numărului de rotații
făcute de roțile motoare, folosirea d e acceleratoare și giroscoape, geamanduri electromagnetice
instalate în teren, semnalizatoare pasive sau semipasive de tip optic sau magnetic.
3
1.2.3. Caracteristici ale robotilor mobili
Roboții mobili au următoarele caracteristici comune:
– structura meca nică este un lanț cinematic serie sau paralel respectiv tip “master -slave”;
– sistemul de acționare utilizat este electric pentru sarcini mici și medii și hidraulic pentru
sarcini mari;
– sistemul senzorial utilizează senzori interni (de turație, poziție, efort) la nivelul
articulațiilor, senzori externi(camere TV) pentru scanarea mediului și senzori de
securitate( de proximitate, de prezență cu ultrasunete);
– sistemul de comandă este ierarhizat, de obicei multiprocesor;
– limbajele de programare utilizate sun t preluate de la roboții staționari.
1.2.4. Clasificarea roboților mobili
Roboții mobili se clasifică astfel:
În funcție de dimensiuni: macro, micro și nano -roboți.
În funcție de mediul în care acționează: roboți tereștri – se deplasează pe sol, roboți
subacvatici – în apă, roboți zburători – în aer, roboți extratereștri – pe solul altor planete
sau în spațiul cosmic;
În funcție de sistemul care le permite deplasarea în mediul în care acționează există de
exemplu pentru deplasarea pe sol
1. roboți pe roți sau șenile
Fig.1.1. Roboti mobili pe senile
4
2.roboți pășitori: bipezi, patrupezi, hexapozi, miriapozi;
Fig.1.2. Roboti mobili pasitori
3.roboți târâtori: care imită mișcarea unui șarpe, care imită mișcarea unei râme etc.;
5
Fig.1.3. Roboti taratori
4.roboți săritori, care imită deplasarea broaștelor, cangurilor etc.;
Fig.1.4. R oboți săritori
5.roboți de formă sferică (se deplasează prin rostogolire) etc.
1.2.5. Utilizări ale roboților mobili.
Utilizări le pentru care au fost, sunt și vor fi concepuți roboții mobili sunt dintre cele mai
diverse. Mulți roboți din zona micro își găsesc utilizarea în medicină, fiind capabili să se
deplaseze de -a lungul vaselor și tuburilor corpului omenesc, în scopul investigaț iilor,
intervențiilor chirurgicale, dozării și distribuirii de medicamente etc. La fel de spectaculoase sunt
și multe utilizări ale macro -roboților:
În domeniul industrial, agricol, forestier: în domeniul industrial roboții mobili sunt
reprezentați de AGV -uri (Automated -Guided Vehicles), vehicule pe roți, cu ghidare
automată, care transportă și manipulează piese, constituind o alternativă flexibilă la
benzile de montaj; în agricultură există tractoare și mașini agricole fără pilot, capabile să
execute sin gure lucrările pe suprafețele pentru care au fost programate; în domeniul
forestier roboții mobili pot escalada copacii înalți
6
Fig.1.5. Roboti mobil i utilizati in domeniul industrial
În domeniul militar: este luată în considerare de către armata americană perspective
înlocuirii soldaților combatanți cu roboți, pentru a reduce riscul pierderilor umane în
luptă; roboți mobili de cele mai ingenioase și robuste configurații sunt aruncați în clădiri
și incinte din zone de conflict, în scopuri de invest igare și chiar anihilare a inamicului;
Armata Statelor Unite face uz de două tipuri majore de vehicule de teren semi -autonome
și autonome: vehiculele de dimensiuni mari , cum ar fi tancuri, camioane și HUMVEE –
uri și vehicule mici, care pot fi transportate de către un soldat într -un rucsac.(pack bot) și
se deplaseaza prin mers ca tancurile mici. PackBot -ul este echipat cu camere și
echipamente de comunicații și poate include manipulatoare (brate); este proiectat pentru a
găsi și a detona explozivele improvi zate salvand astfel viați (atât civili cât și militari),
precum și pentru a efectua recunoastere. Dimensiunile sale mici îi permit să intre clădiri,
sa raporteze ocupanții posibili, și să declanșeze capcane. Vehiculele robot armate tipice
sunt (1) Talon SWORDS (Special Weapons Observation R econnaissance Detection
System) făcute de Foster Miller, care pot fi echipate cu mitraliere, lansatoare de grenade
sau lansatoare de rachete anti tanc, pr ecum și camere și alți senzori și noul MAARS
(Modular Advanced Ar med Robotic System). În ti mp ce vehicule cum ar fi SWORDS și
MAARS sunt capabile sa navigheze autonom catre obiectivele specifice prin sistem
global de pozitionare (GPS), în prezent d eclansarea oricarei arme aflate la bord se face de
către un soldat situa t la o distanță sigură. MAARS foloseste o mitralieră mai puternică
decât originalul SWORDS. Deși inițial SWORDS cantareste aproximativ 150 kg.,
MAARS cantareste aproximativ 350 kg. Acesta este echipat cu un manipulator nou
capabil să ridice 100 livr e, perm itandu -i astfel să-și înlocuiască arma platformei cu o
unitate de identificare și neutralizare IED( Improvised explosive device).
7
a) b)
Fig. 1.6. Vehicule terestre militare : a) Packbot b) SWORDS
PACKBOT -urile sunt unități mici om portabile controlate de un procesor Pentium care a
fost special conceput pentru a rezista la tratamentul dur, șasiu PACKBOT are un sistem GPS, o
busola electronica si senzori de temperatură construit in IRobot producătorul PACKBOT, spune
despre ei ca se pot deplasa cu mai mult de 13 km / h, pot fi instalati în câteva minute și poat
rezista la o cădere de 1,8 metri pe beton, echivalentul a 400 grame -forță a lui. Soldații americani
profita de această robust ețe, PACKBOT sunt aruncati,prin ferestrele clădirilor dusmanilor și apoi
utilizați pentru a căuta și găsi unde combatanți inamici se ascund. Chiar dacă terenurile sunt
denivelate, PACKBOT cu ajutorul bratelor puternice pot trece peste obstacole mari si la urcarea
treptelor.
În domeniul distractiv și recreativ: sunt roboții -jucării, roboții pentru competiții
În domeniul serviciilor: Există posibilități deosebit de largi de implementare. Sunt roboți
pentru: deservirea bolnavilor în spitale; ajutorarea persoan elor bătrâne sau cu diferite
handicapuri; ghidarea și informarea publicului în muzee aspirarea și curățirea încăp erilor;
spălarea geamurilor și a pereților clădirilor;
1.2.6. Proiecte anterioare în domeniul temei
Lucrarea de față nu își propune să abordeze toate tipurile de roboți mobili. Acest lucru nu
numai că nu ar fi posibil datorită volumului extrem de documentație necesar, dar datorită
evoluției pe scara largă a fenomenului, chiar dacă s -ar realiza acest lucr u, lucrarea ar fi depășită
în câteva luni de zile. De aceea, se vor prezenta câteva exemple de roboți mobili, special alese
pentru a sublinia extraordinara lor importanță în secolul al XXI -lea. Se va insista, deci, asupra
unui singur tip de roboți mobili, și anume roboții mobili care urmaresc o anumita traiectorie.
8
Fig.1.7. Minirobot AIRAT 2.
AIRAT 2 este un robot micromouse care folosește un procesor CPU 8051.AIRAT 2
folosește senzori pentru a o recepta când se întoarce înapoi. Placa CPU folosete o placă JS8051 –
A2. Placa JS8051 -A2 este foarte bine construită.Folosește resurse externe de putere cum ar fii
LCD, ADC, douǎ ceasuri externe, auto -Flash scriere și altele.
AIRAT 2 utilizeaza șase senzori oferindu -i astfel posibilitatea de a se deaplasa pe
diagonală.Un simulator PC este prevăzut,oferindu -i posibilitatea utilizatorului de a întelege mai
bine nivelul inalt de căutare algoritmică a mouseului.Codul sursa C este implementat astfel încat
programatorul poate dezvolta mai usor altgoritmi care pot fi testati cu ajutorul unui simulator si
apoi implementat mouseului.
În plus,LCD,comunicatie seriala,controlul mouse -ului precum si alte functii sunt
furnizate sub forma de librarie si fisiere sursa.Pentru cei ce vor sa invete mouse -ul la un nivel
inalt,AI RAT2 furnizeaza un mediu excelent de dezvoltare,teste algoritmice,precum si multe
altele.
AIRAT 2 a aparut pe coperta publicatiei franceze MICROS&ROBOTS.
CARACTERISTICI AIRAT 2
– Capabil de reglare proprie, i nvață din mers.
– Folosește 6 senzori dindu -i posibilitatea de a se deplasa pe diagonala
– Ușor de asamblat/dezasamblat
– Port de reîncarcare
– Instructii de asamblare si manual al utilizatorului
– Include un simulator PC pt. accelerarea dezvoltarii
– Librarii,coduri sursa C
– AIRAT2 baterie(NiMh -450) Descriere
9
Fig.1.8. Minirobot AIRAT 2
Alte proiecte:
10
Fig.1.9. Miniroboti “Line Follower”
1.3 Scopul lucrării
Scopul acestui proiect este de a concepe, executa și pune în aplicare un robot cu actionare
diferentiala dotat cu senzori de linie analogi si senzori de distanta , con trolat de un driver de
motor care comanda cele 2 motoare de current continuu , avand ca sarcina principala urmarir ea
unei linii de culoare neagra, pe un fundal alb.
11
CAPITOLUL II
1.Modelul CAD si experimental
Scopul de baza este sa dezvoltam un robot care urmareste o anumita traiectorie, folosind
senzori de linie care cuprind un LED IR si un fotorezistor sensibil la IR , astfel incat robotul sa se
deplaseze pe aceasta traiectorie de culoare neagra , aflata pe un fundal alb.
Înainte de începerea execuției s -a realizat o modelare tridimensională a robotului mobil
prezentat în această lucrare. S -a început cu placa suport , pe care s -a montat sistemul de acționare
format din motoarele de curent continu u , precum și elementele de fixare ale acestora, urmand
apoi atasarea platformei de procesare ARDUINO UNO R3 a placii SHIELD si a sistemului
senzorial format din senzorii de linie si senzorul de distanta SHARP .
Senzorii de linie sunt montati pe o placa sup ort aflata in partea din fata a robotului pe
care mai este montata si roata castor , în așa fel încât senzorii de linie sa se afl e la o anumita
distanta deasupra podelei.
12
Fig.2.10. Atasarea suporturilor motoarelor pe p latforma robotului
Fig.2. 11. Montarea motoarelor pe suporturi
13
Fig.2.1 2. Montarea celor 2 roti si a rotii castor
Fig.2.1 3 Atasarea platformei de procesare ARDUINO UNO R3 si a placii shield
14
15
Fig.2.14. Atasarea sistemului sensorial
Fig.2.15. Atasarea suportului de baterii si a bateriilor
2. Principiul de functionare
Robotul mobil pentru urmarirea unei traiectorii este un tip de robot care are doar o simpla
sarcina de indeplinit , aceea de a urmari o linie de culoare neagra pe un fundal alb.
Acest robot “ line follow er “ foloseste asa numita actionare diferentiala , care utili zează
două motoare independente montate în poziții fixe pe partea dreaptă și stângă a șasiului
robotului. Aceasta înseamnă ca încetinirea vitezei de rotație a motorului din stânga va face
vehiculu l sa se intoarca spre stânga, iar incetinirea vitez ei de rotatie a motorului din dreapta va
face ro botul sa se intoarca spre acea directie .
16
Fig.2.16. Partile care intra in componenta robotului
Daca ambele motoare se rotesc cu aceeasi viteza , robotul se va indrepta inainte , asa cum
este aratat in figura de mai jos. Pe ntru deplasarea spre stanga , roata din stanga se va roti cu o
viteza mai mica decat cea din dreapta , iar pentru deplasarea spre dreapta roata din dreapta se va
roti cu o viteza ma i mica decat cea din stanga. Astfel , curband spre dreapta si spre stanga , sau
mergand inainte , robotul poate urmari usor linia neagra.
17
Fig.2.17. Tipuri diferite de deplasare a robotului
18
CAPITOLUL I II
1.Modelarea dinamica a unui robot mobil cu roti utilizand
abordarea Newton Euler
1.1Ecuatii de constrangere
În scopul de a ilustra metodologia, este considerat un robot mo bil, aratat in figura de mai
jos. Acesta are două roți motrice pe o axă, care sunt alimentate d e motoare de curent continuu.
Platforma are, de asemenea, o roată pasiva (castor).
Notațiile următoare vor fi utilizate în lucrare:
– Sistemul de coordinate
– sistemul de coordinate fixat de vehicul
– punctul cu coordonatele (
) care este intersectia axei de simetrie cu axa rotilor motoare;
– centrul de masa al platformei cu coordonatele (
);
b – distanta dintre ambele roti motoare si axa de simetrie;
r – raza fieacarei roti motoare;
– masa platformei fara rotile motoare si rotoarele motoarelor de c.c.;
– masa fiecarei roti motoare plus rotorul motorului;
– momentul de inertie al robotului fara rotile motoare si rotoarele motoarelor in jurul axei
vertical prin
;
– momentul de inertie al fiecarei roti si rotorul motorului in jurul axei rotii;
– momentul de inertie al fiecarei roti si rotorul motorului in jurul diametrului rotii;
a – lungime platformei in directia perpendicular pe axa rotilor motoare;
d – distanta de la
si
in lungul axei positive x;
Daca ignoram roata pasiva , configuratia platformei poate fi descrisa de 5 coordonate
generalizate, ca:
unde (
) sunt coordonatele centrului de masa
in sistemul de coordinate , si φ este
unghiul de cap al robotului dupa cum este aratat in figura de mai jos ,
si
sunt pozitiile
unghiulare ale rotilor motoare din stanga si repectiv din dreapta.
19
Fig.3.18. Exemplu de robot mobil cu roti (vederea de sus)
Pe baza ipotezei rotatiei pure pe roțile motoare, fără alunecare laterală și longitudinală,
există trei constrâng eri. În primul rând, viteza punctului
a platformei trebuie să fie în direcția
axei de simetrie (fara alunecare laterală), axa x:
(1)
Mai mult, în cazul în care roțile motoare nu aluneca
(2)
Deoarece coordonata centrului de masă face parte din sistemul de stat, prin utilizarea
urmatoarelor ecuatii de transfer:
(3)
(4)
20
(5)
Ecuațiile menționate anterior vor fi rescrise după cum urmează:
(6)
Cele 3 constrangeri pot fi scrise in forma:
unde
=
Deoarece sistemul mecanic are 2 grade de libertate este posibil sa gasim matricea S(q)
care atisface amebele ecuatii:
Rezolvand ecuatia constrangerii avem:
unde c=-b/2r
apoi:
21
2.Ecuatiile dinamice
Acum vom deriva ecuatia dinamica pentru robotul mobil.
Pentru un singur corp rigid cu centrul de masa in miscare , avem urmatorul set de ecuatii
newton -euler [9],[10],[11],[12 ]:
(7)
Unde
C – centrul de masa al corpului;
A – punctual fixat al corpului rigid;
– vectorul forta rezultant actionand pe un corp rigid;
– vectorul moment rezultant actionand in jurul punctului A;
– inertia masei in jurul punctului A;
– vectorul acceleratie al centrului de masa C;
α – vectorul acceleratiei unghiulare al corpului rigid;
În acest sens, pentru a aplica aceste formulări la robot, este necesar să obținem
accelerația fiecarei roati motoare și, de asemenea, acceleratia platformei fără roțile motoare și
rotoarele motoarelor de curent continuu.
Accelerațiile roților în sistemul de coordonate fixat de vehicul sunt obținute după cum
urmează:
22
(8)
In care
si
sunt acceleratiile rotilor.
Conform (4) si (5) avem :
Apoi:
Mai mult decât atât, accelerațiile platformei fără roțile motoare și rotoarele motoarelor
de curent continuu în sistemul de coordonate fixat de vehicul sunt:
Ecuațiile Newton -Euler de mișcare a platformei folosind forțele ilustrate în Fig .2 sunt
date de:
Roata dreapta:
(9)
(10)
Roata stanga:
23
(11)
(12)
Corpul:
(13)
Fig.3.19. Diagrama fortelor a robotului si rotilor
Conform fig 3 si 4 ecuatia euler cu privire la centrul de masa al corpului este:
(14)
Utilizand ecuatiile (9) si (11) va fi obtinuta urmatoarea ecuatie:
(15)
24
In final , rezolvand ecuatiile de mai s us , ecuatiile de miscare ale robotului ar putea fi
scrise dupa cum urmeaza:
unde:
si
Există trei ecuații de mișcare. Dar ecuația a 3 a , din cauza lipsei alunecarii laterale, nu se
aplică. Putem rescrie pur și simplu ecuațiile principale în forma standard așa cum este arătat mai
jos:
(16)
unde:
Și prin angajarea urmatoarei înlocuiri, forma standard a ecuației este obținnuta.
=>
(17)
25
unde:
Apoi
unde
Fig.3.20. Fortele aplicate ecuatiei Euler
26
Fig.3.21. Diagrama momentului de inertie al robotului
Acum, suntem în măsură să luam în considerare partea electrică a actuatorului. Se
presupune că roțile robotului sunt conduse de două motoare de curent continuu cu transmisii
mecanice. Fig. 5 prezintă sistemul de antrenare simplificat. Ecuația electrica a armaturii
motorului este scrisa, după cum urmează:
(18)
Unde Kb este constanta EMF a spatelui. Prin ignorarea inductanței circuitului armaturii,
și luând în considerare relația dintre cuplul și armatura curenta (
) și relațiile dintre
cuplu și viteza de înainte și după transmisie (de exemplu, τ=
), cuplul distribuit la
roata dreapta si cea stanga de catre actuatori este dat de :
(19)
27
Fig.3.22. Sistemul de transmisie al fiecarei roti
Aplicand ecuatia (19) in ecuati a (17) , modelul final este obtinut dupa cum urmeaza:
(20)
unde
CAPITOLUL I V
1.Modelul cinematic al robotului
În cadrul acestei analize,considerăm robotul ca un corp rigid cu roți,deplasăndu -se pe un teren
plat. Sunt necesari 3 parametri pentru a poziționa corpul robotului în planul respectiv: doi pentru
a determina poziția acestu ia în raport cu originea sistemului de axe atașat planului, iar al treilea
pentru determinarea orientării acestui corp în raport cu axa verticală, perpendiculară pe plan.
28
Există mișcări suplimentare datorate rotației roților în jurul axelor proprii, respec tive cuplelor
cinematice de orientare. Prin corpul robotului întelegem doar corpul rigid al acestuia, ignorând
cuplele cinematice dintre acest corp și roți.
Un vehicul aflat pe un teren plat are 3 grade de libertate: 2(x,z) , ce descriu poziția , și unul
referitor la orentarea θ(rotația în jurul axei verticale). În general , roboții mobili nu au control
complet independent al celor 3 parametii ce definesc situația lui și trebuie să efectueze manevre
complexe pentru a atinge o anumită situare.
Unele vehicule au roți suplimentare sau puncte de contact, cu rolul de suport dar fără a
contribui la orientare sau propulsie. Cunoscute ca roți pasive(ex roți de tip castor), acestea sunt
de obicei ignorate în modelarea cinematică a unui robot mobil.
1.1. Model cinemat ic al robotului cu acționare diferențială
Pentru a specifica situarea instantanee a robotului în mediul în care se deplasează, stabilim
o relație de legătură între sistemul de referință f și sistemul de axe curent,atașat corpulu i
robotului.
– Planului i se atașează sistemul de referință fix X 000Y0.
– Corpului robotului i se atașează sistemul de axe X RORYR, în punctul P
– Corespunzător poziției inițiale a robotului, se consideră notația X R0OR0YR0
Fig.4.23. Model cinematic robot cu 2 roți
Coordonatele punctului P, determinate în raport cu originea O 0 a sistemului de referință ,
scrise sub formă matriceală sunt:
[x0
y0z0] [x
y
z] [cosθR0-sinθR00
sinθR0cosθR00
0 0 1] [xR0
yR0zR0] (1)
x0, y0, θ0 sunt parametrii ce exprimă poziția și orientarea corpului robotului în raport cu
sistemul de referință;
29
xR0, yR0, θR0 sunt parametrii ce exprimă poziția și orientarea corpului robotului în raport
cu sistemul de axe atașat acestuia, sistemul corespunz ător poziției inițiale
x, y, θ sunt parametrii ce exprimă poziția și orientarea poziției inițiale a corpului robotului
(poziției inițiale a sistemului de axe atașat corpului) în raport cu sistemul de axe de referință.
Robotul care face obiectul lucrării este un robot cu acționare diferențială. Acest tip de
acționare este una dintre cele mai simple soluții de roboți mobili cu roți. Robotul are 2 roți
convenționale fixe, atașate pe șasiu. Utilizarea de viteze unghiulare diferite pentru cele 2 roți
conduce la schimbarea direcției de mers.
[x0
y0
z0
1] [cosθRO
sinθRO
0
0 -sinθRO
cosθRO
0
0 0
0
1
0 x
y
θ
1] [xRO
yRO
θRO
1] (2)
Fig.4.24. Deplasarea robotului.
Cunoscând vitezele/pozițiile roților se cere viteza/poziția robotului.
Se cunosc: v1= ω1
r ; v2= ω2
r
30
Fig.4.25. Reprezentarea vitezelor unghiulare a 2 roți.
unde r raza roților și ω 1, ω2= vitezele lor unghiulare
Pentru efectuarea analizei, se va proceda în felul următor:
Se specifică mărimile necesare efectuării calculului(dimensiuni ale robotului, unghiul de
orientare al robotului,θ)
Se determină punctul în jurul carua se rotește robotul ( centrul inst antaneu de rotație),
respectiv raza traiectoriei descrise de robot.
Se detrmină viteza unghiulară a robotului.
Se integrează relația obținută, pentru a obține poziția robotului.
1.2 Determinarea C.I.R.
1. Determinarea mărimilor necesare efectuării calculului (dimensiuni ale robotului; unghiul
de orientare al robotului).
2. Se atașează robotului un sistem de axe și se măsoară unghiul de rotație al sistemului
curent în raport cu sistemul inițial de referință.
Centrul instantaneu de rotație este la int ersecția axelor roților pentru cele 2 poziții.
Punctul de contact al fiecărei roți trebuie să se rotească cu aceași viteză unghiulară Ω în
jurul centrului instantaneu de rotație.
31
Fig.4.26. Determinarea C.I.R
3. Determinarea vitezei un ghiulare , Ω, a robotului:
v1 ω1r Ω(R L/2)
v2 ω2R Ω(R -L/2)
Rezultă:
Ω (v1 -v2)/L
R=L(v1+v2)/(v1 -v2)
Pentru traiectoria rectilinie :
v1=v2
Ω 0 și R
32
Fig.4.27. Traiectoria rectilinie.
Pentru traiectorie circulară cu raza R – relațiile sunt cele prezentate anterior.
Se determină experimental că:
L=10 cm
v1 0.5m/s și v2 0.3 m/s
Ω=2 rad/s2 și R 16 cm
Pentru pivotarea în jurul roții
v1=v2
Ω 0
R=
Fig.4.28. Pivotarea în jurul roții 2
Pentru pivotare( rotație în jurul axei verticale centrale)
v2=-v1=>Ω=2v1/L= -2v2/L
R=0
33
v1=ω1r=Ω(R+L/2)
v2=ω2r=Ω(R-L/2)
Rezultă:
Ω=(v1 -v2)/L
R=L(v1+v2)/(v1 -v2)
Viteza liniară a robotului este:
v Ω
R=(v1+v2)/2=0.4 m/s
Fig.4.29. Pivotarea în jurul axei verticale
Integrarea ultimei ecuații pentru obținerea poziției robotului:
dx=vx(t)dt;
dy=vy(t)dt;
dθ=Ω(t)dt;
vx(t)=v(t)cos( θ(t));
34
Fig.4.30. Deplasarea robotului.
vy(t)=v(t)sin( θ(t));
Prin integrare se obține
x(t)=
dt+x0;
y(t)=
dt+y0;
θ(t)=
dt+x0;
Ω=(v1 -v2)/L
35
R=L(v1+v2)/(v1 -v2)
v=ΩR=(v1+v2)/2
Ecuațiile cinematicii directe se scriu sub formă matriceală în raport cu sistemul de
referință:
=
(3)
=
(4)
Contribuția roții 1 la viteza robotului este:
vx1=(ω1
r)/2=0.25 m/s
vy1=0
Fig.4.31. Contribuția roții 1 la deplasarea robotului
Ω1 (ω 1
r)/L=5 rad/s
Contribuția roții 2 la viteza robotului
36
vx2 (ω 2
r)/2=0.15 m/s
vy2=0
Ω2=
(ω2
r)/L= -1 rad/s
Fig.4.32. Contribuția roții 2 la deplasarea robotului.
Ecuațiile cinematicii directe scrise în raport cu sistemul de axe atașat robotului sunt:
vx((t)=v x1+vx2=0.4 m/s
vy((t)=v y1+vy2
Ω(t)=Ω1+Ω2
Se face ipoteza că roțile nu pot aluneca lateral > componenta după axa y este 0.Dacă
robotul descrie o traiectorie circulară cu raza R, lungimea arcului descris de acesta este:
AR=(A 1-A2)/2
– unde :
A1=(R+L/2)
θ
A2=(R
L/2)
θ
37
Fig.4.33. Traiectoria circulară a robotului
Lungimea cercului descris de punctul de contact al roții 1 este dată de relația
C1=2
)
θ=A 1/(R+L/2)
Similar pentru roata 2
C2=2
)
38
Fig.4.34. Reprezentare a 2 roți.
De unde rezultă:
R
A2/θ
Înlocuind această relație în
θ=A 1/(R+L/2)
Prin înlocuire se obține:
θ (A 1
A2)/L
De aici se deduce următoarele concluzii:
orientarea θ a robotului este complet independentă de raza traiectoriei descrise de acesta
Dimensiunea L este o sursă de erori din cauza uzurii și complianței pneurilor
Lungimea traiectoriei descrise de punctul de contact al roții poate fi calculată cu relația:
A1 (2∙
∙N1∙Ref 1)/T1
N1 impulsurile numărate de traductorul de poziție al roții 1
T1 numărul de impulsuri pe o rotație a roții 1
Ref1 raza efectivă a roții 1
Similar pentru roata 2
A2 (2∙
∙N2∙Ref 2)/T2
39
Pentru a se deplasa după o traiectorie rectilinie ,robotul va păstra N 1=N 2, dar dacă cele 2
pneuri au presiuni diferite ,razele lor vor fi diferite.
Fig.4.35. Deplasarea unei roți peste un obstacol.
Considerăm o roată teoretică, rigidă(necompliantă), având raza R și presupunem
că aceasta trebuie să treacă peste un obstacol cu înălțime h.
Roata se va deplasa pe suprafața C până când întâlnește obstacolul N 1=N 2
Distanța percepută de traductor ca fiind parcursă de roată este Am
Distanța reală parcursă este Ah. Eroarea de poziționare unghiulară a robotului va fii:
Δθ 2
(Am-Ah)
Fig.4.36. Deplasarea unei roți rigide peste un obstacol
Atunci când roata traversează o groapă aflată în terenul în care se deplasează,obstacolele
și gropile în teren produc erori privind determinarea corectă a poziției robotului. Erorile sunt
cauzate și de alunecarea roților ca urmare a existenței uno r pete de unsoare pe suprafața
40
respectivă, de impactul cu obstacole sau de accelerarea și decelerarea excesivă sau de impactul
cu obstacole.
2. Corectia diametrului roț ii
Fiind dat ă o linie dreaptă ca și cale de referință, mișcarea unui robot mobil cu diam etrele
roților inegale este prezentată în figura 1.
Fig.4.37. Miscarea unui robot mobil cu diametrele rotilor inegale
În fig .1 α si ρ sunt unghiul curbu rii și respectiv un arc de rază
si
sunt valorile de
deviere de la axa y. Unghiul curburii poate fi exprimat de catre distan ța parcurs ă de ambele ro ți
(1)
unde
– este distan ța dintre ro ți masurat ă și Δ este distan ța parcurs ă de roata st ânga și
respectiv cea dreapta . Distan țele parcurse de c ătre roata st ânga și cea dreapta sunt:
(2)
unde
este num ărul de impulsuri din timpul mi șcării. Deplasarea liniar ă a roții pe
impuls de la un codificator β este
(3)
41
unde b reprezint ă raportul de transmisie și Γ rezolu ția codificatorului. Din cauz ă că
numărul de impulsuri al ro ții din st ânga în timpul mi șcării este acela și ca cel al roții din dreapta ,
unghiul curburii poate fi exprimat dupa cum urmeaz ă:
(4)
unde
si
sunt diametrele masurate ale ro țiilor din st ânga și din dreapta. Definim
greutatea ro ții relative dup ă cum urmeaz ă:
(5)
De la 4 si 5 , greutatea ro ții relative poat e fi exprimată după cum urmează :
(6)
Din ecua ția 5 diametrul ro ții din dreapta poate fi exprimat ca valoare relativ ă la roata
stânga.
(7)
si
reprezint ă diametrele ro ții relative din st ânga și din dr eapta . Din 6 și 7 , dac ă
robotul se întoarce la dreapta (st ânga) , diametrul ro ții din dreapta poate fi exprimat ca fiind mai
mic (mai mare) dec ât roata st ângă. Aceast ă corecție relativ ă a diametrelor ro ții poate face ca
robotul mobil s ă se miște de -a lungul unei linii drepte. Un robot ar putea s ă nu ajung ă în locația
dorită din cauz ă că diametrul ro ții în 7 nu est e actual. De aceea , trebuie sa ob ținem diametrele
roții actuale . Distan ța lr , parcurs ă de roata relativ ă și distanța lt, parcurs ă de roata actuala sunt:
(8)
(9)
unde
si
sunt diametrele rotilor actuale din st ânga și din dreapta. Eroarea de pozi ție
este definit ă după cum urmeaz ă:
(10)
Definim greutatea ro ții absolut ă după cum urmeaz ă:
42
(11)
Din (8) -(11), greutatea rotii abs olute poate fi exprimat ă după cum urmeaz ă:
(12)
Din (7) si (11) putem ști că diametrul ro ții absolute este relativ la diametrul ro ții relative.
(13)
(14)
3. Corec ția distan ței dintre ro ți
Dacă distanța dintre ro ți nu este aceea și ca valoarea masurat ă , robotul va sfar și prin a se
roti mai pu țin sau mai mult decât valoarea dorit ă. Când robotul mobil este f ăcut să întoarc ă la
90°, o mi șcare a robotului cu o distan ță dintre r oți nepotrivit ă este prezentat ă în figura de mai jos.
Fig.4.38. Rotația unui robot mobil cu ro ți
43
Valoarea rota ției în timpul mi șcării , δ este :
(15)
unde la este distan ța dintre ro ți efectiv ă actuală. Num ărul de impulsuri în timpul rota ției poate
exprima valoarea total ă a rotației.
(16)
din (15) si (16) distan ța actual ă dintre ro ți este:
(17)
44
CAPITOLUL V
1.Sistemul de comandă al robotului
1.1Placa de procesare ARDUINO UNO R3
Fig.5.39. Planul general al plăcii microcontrolerului .
Sistemul de acționare al robotului este alcătuit din motoarele de curent continuu 120:1 cu
ajutorul căruia se realizează deplasarea precum și driverul de motor L293 N care poate comanda
2 motoare de curent continuu, curent maxim 2 amperi , complet asamblat sub forma unui shield
Arduino, facil itand astfel utilizarea simpla, si un procesor ARDUINO UNO R3 cu care se
realizează controlul motoarelor. Pentru detectarea liniei de culoare neagra am folosit 2 senzori de
linie analogi tip QTR -1A fiecare fiind format din doua componente : un led IR si un
fototranzistor sensibil la IR . Pentru a masura distanta pana la diverse obiecte inconjuratoare am
45
utilizat s enzorul de distanta Sharp care este o componenta c e poate fi utilizata impreuna cu
Arduino.
Fig.5.40. Diagrama bloc pentru urmarirea liniei
Arduino UNO
Arduino UNO este o platforma de procesare open -source, bazata pe software si hardware
flexibil si simplu de folosit. Consta intr -o platforma de mici dimensiuni (6.8 cm / 5.3 cm – in cea
mai des intalnita varianta) construita in jurul unui procesor de semnal si este capabila de a prelua
date din mediul inconjurator printr -o serie de senzori si de a efectua actiuni asupra mediului prin
intermediul luminilor, motoarelor, servomotoare, si alte tipuri de dispoz itive mecanice.
Procesorul este capabil sa ruleze cod scris intr -un limbaj de programare care este foarte similar
cu limbajul C++.
ARDUINO UNO este o placa de dezvoltare bazata pe microcontrolerul ATmega328
ARDUINO UNO are 14 de intrari digitale / pini de iesire (din care 6 pot fi utilizate ca iesiri
PWM), 6 intrari analogice, un oscilator cu quart de 16 MHz, o conexiune USB, o mufa de
alimentare, o mufa ICSP si un buton de resetare. ARDUINO UNO contine tot ceea ce este
necesar pentru a sprijini microcontro lerul pentru ca acesta sa functioneze; pur si simplu conectati
la un computer printr -un cablu USB, alimentator AC -la-DC sau baterie pentru a incepe.
ARDUINO UNO este diferit fata de placile precedente, in sensul ca nu foloseste un chip
driver FTDI USB -la-serial. In schimb, acesta are incorporat microcontrolerul Atmega8U2
programat ca un convertor USB -la-serial.
“UNO” inseamna “unu” in limba italiana si este numit pentru a marca viitoarea lansare
Arduino 1.0 IDE. Uno si versiunea 1.0 vor fi versiunile standa rd pentru marca Arduino.
46
Specificatii :
Microcontroler: ATmega328
Tensiune de lucru: 5V
Tensiune de intrare (recomandat): 7-12V
Tensiune de intrare (limita): 6-20V
Pini digitali: 14 (6 PWM output)
Pini analogici: 6
Intensitate de iesire: 40 mA
Intensitate de iesirepe 3.3V: 50 mA
Flash Memory: 32 KB (ATmega328) 0.5 KB pentru bootloader
SRAM: 2 KB (ATmega328)
EEPROM: 1 KB (ATmega328)
Clock Speed: 16 MHz
Alimentare
ARDUINO UNO poate fi alimentat prin intermediul conexiunii USB sau cu o sursa de
alimentare externa. Sursa de alimentare este selectata autom at.
Alimentarea externa (non -USB) poate veni fie de la un adaptor AC -la-DC sau baterie.
Adaptorul poate fi conectat printr -un conector de 2.1mm cu centru -pozitiv. Conectare de la o
baterie poate fi realizata legand la GND si V’in capetele de la conectorii de alimentare.
Placa de dezvoltare poate opera pe o sursa externa de 6 -20 volti. Daca este alimentata la
mai putin de 7V, exista posibilitatea, ca pinul de 5V sa furnizeze mai putin de cinci volti si placa
sa devina instabila. Daca se alementeaza cu mai mu lt de 12V, regulatorul de tensiune se poate
supra -incalzi acest lucru ducand la deteriorarea placii. Intervalul de tensiune recomandat de catre
producator este de 7 -12 volti.
Pinii de tensiune si alimentarea sunt dupa cum urmeaza:
– V’in. Tensiune de intr are pe placa de dezvoltare atunci cand este utilizata o sursa de
alimentare externa (spre deosebire de 5 volti de la conexiunea USB sau alte surse de energie
stabilizata). Puteti introduce tensiuni de alimentare prin intermediul acestui pin, sau, in cazul in
care tensiunea de alimentare se face prin intermediul conectorului de alimentare externa, o puteti
accesa prin acest pin.
– 5V. Regulator de tensiune utilizat pentru alimentarea microcontrolerului si a altor
componente de pe placa de dezvoltare. Aceast a poate fi alimenta fie de la VIN printr -un
regulator de pe placa de dezvoltare, fie furnizat de catre USB sau de o alta sursa de tensiune de
5V.
– 3V3. O alimentare de 3.3 volti generat de catre regulatorul de tensiune de pe placa.
Curentul maxim ca il furnizeaza este de 50 mA.
– GND. Pini de impamantare.
Memoria
ATmega328 are 32 KB (cu 0,5 KB utilizate pentru bootloader). Ea are, de asemenea, 2
KB SRAM si 1 KB de EEPROM.
47
Fig. 5.41. Schema electrică a plăcii de bază a minirobotului
48
2. Circuitul integrat folosit pentru comanda motoarelor
Circuitul integrat ales de noi este L293 N.
Circuitul integrat L293 N este o punte H folosita pentru a controla viteza de rotatie
precum si sensul de rotatie pentru cele 2 motoare. Acest circuit este controlat de catre softul aflat
pe microcontroller.
Schema de control a motoarelor cu circuitul L293N este urmatoarea :
Fig. 5.42. Schema de control a motoarelor cu circuitul L293N
49
2.1.Driverul de motor L298N
Fig. 5.43. driverul de motor L298N
Bazat pe circuitul L298N, acest driver de motoare poate comanda 2 motoare de curent
continuu, curent maxim 2 amperi. Driverul este complet asamblat sub forma unui shield
Arduino, facilitand astfel utilizarea simpla.
Conectarea la Arduino se face cupland p laca shield peste placa Arduino si conectand
pinii marcati VIN si GND la sursa de alimentare pentru motoare. Pinii PWM care controleaza
driver -ul L298 sunt 3, 5, 6 si 9 (vedeti si programul de test de mai jos).
Cele doua motoare se conecteaza in pinii cu s urub marcati "MOTOR1" si "MOTOR2",
iar alimentarea pentru motoare se conecteaza la pinii cu surub marcati "VIN" si "GND".
50
Fig. 5.44. Placa shield
Fig.5.45. Diagrama bloc a driverului de motor cu circuit integrat L298N
51
Fig 5.46. Conexiunea pinilor
3.Motor cu reductor 120 : 1 ax iesire D7 perpendicular
În general, sunt similare în construcție cu generatoarele de curent continuu. Ele pot, de
fapt să fie descrise ca generatoare care „funcționează invers”. Când curentul trece prin rotorul
unui motor, este generat un câmp magnetic care generează o forță electromagnetică, și ca rezultat
rotorul se rotește. Acțiunea periilor colectoare și a plăcuțelor colectoare este exact aceiași ca la
generator. Rotația rotorului induce un voltaj în bobinajul rotorului. Acest voltaj indus are sens
opus voltajului exterior aplicat rotorului. În timp ce motorul se rotește mai rapid, voltajul rezultat
este aproape egal cu cel indus. Curentul este mic, și viteza motorului va rămâne constantă atât
timp cât asupra motorului nu acționează nici o sarcină, sau motorul nu efectuează alt lucru
mecanic decât cel efectuat pentru învârtirea rotorului. Când asupra rotorului se aplică o sarcină,
voltajul va fi redus și un curent mai mare va putea să treacă prin rotor. Astfel, motorul est e
capabil să primească mai mult curent de la sursa care îl alimentează, și astfel să efectueze mai
mult lucru mecanic.
Deoarece viteza rotației controlează trecerea curentului prin rotor, mecanisme speciale
trebuie folosite pentru pornirea motoarelor cu cu rent continuu. Când rotorul se află în repaus, el,
efectiv, nu are nici o rezistență, și dacă voltajul normal este aplicat, va trece un curent mare, ceea
ce ar putea avaria periile colectoare sau motorul. Mijloacele obișnuite pentru prevenirea acestor
52
accidente este folosirea în serie a unei rezistențe, la început, împreună cu rotorul, pentru a limita
curentul până când motorul începe să dezvolte un curent suficient. Pe parcurs ce motorul prinde
viteză, rezistența este redusă treptat, fie manual ori automat .
Viteza cu care un motor cu curent continuu funcționează, depinde de puterea câmpului
magnetic care acționează asupra rotorului, cât și de curentul rotorului. Cu cât este mai puternic
câmpul magnetic, cu atât este mai mică rata rotației necesare să creeze un curent secundar
necesar pentru a contracara curentul aplicat. Din acest motiv viteza motoarelor cu curent
continuu poate fi controlată prin variația câmpului curentului
Fig. 5.46. Motor de curent continuu 120:1
Acest motor de curent continuu cu pe rii, cu reductor 120 : 1, are un consum redus de
curent si ofera putere si viteza comparabile cu un servomecanism, dar la o fractiune din pret. La
o tensiune de 6 V, are la iesire o turatie in gol de 85 rpm si un cuplu maxim de 5.4 Kg -cm.
53
Fig.5.47. Dimen siunile motorului de curent continuu
Specificatii :
Tensiune nominala: 6 V
Reductor: 120:1
Turatie fara sarcina @ 6V: 85 rpm
Curent fara sarcina @ 6V: 70 mA
Curent cu ax blocat @ 6V: 800 mA
Cuplu maxim @ 6V: 5.4 kg -cm
Dimensiuni: 64.4 x 22.3 x 21 mm
Diametru ax iesire: 7 mm
Masa: 32 g
54
4. Sistemul senzorial
4.1.Numarul de senzori in cazul robotilor “line follower”
Explica despre faptul cum numarul de senzori poate afecta abilitatea robotului de a
urmari o linie. Sunt reprezentate 3 metode cu privire la abilitatea de a folosi unul , 2 sau 3
senzori , pentru un robot mobil. Numarul de senzori va afecta modul de detectare a robotului.
Numarul de senzori este cea mai importanta parte pentru a face cercetari , acest f actor facand
robotul sa fie tot timpul pe linie sau nu.
1 Senzor (cautatorul de margine)
Fig.5.48. Cazul unui robot cu un singur senzor
In aceasta figura este aratat un robot mobil care utilizeaza un singur senzor. Senzorul
furnizeaza numai 2 semnale , peste linie si in afara ei. Din pacate , cateodata robotul va pierde
linia.
2 Senzori
55
Fig.5.49. Cazul unui robot cu 2 senzori
Figura arata un robot cu 2 senzori. Robotul foloseste 2 motoare si fiecare senzor
controloeaza fiecare motor. Va da 4 conditii, gasirea partii din dreapta a liniei , a partii din stanga
liniei , gaseste linia sau pierde linia si nu sunt folosti daca senzorii sunt pla sati la o distanta mai
mica decat latimea liniei. Este potrivit sa adaugam un microcontroler ca controler pentru a
controla motoarele si senzori. Va controla robotul astfel incat robotul nu va mai pierde linia.
3 Senzori
Fig.5.50. Cazul unui robot cu 3 s enzori
Adaugand un al 3 lea sensor la metoda anterioara , robotul va recunoaste in afara liniei si
marginile liniei. Robotul acum se va adapta mult mai usor la schimbarea conditiilor cum ar fi
curbele si se va aranja totdeauna pe linie.
Robotul va utiliz a 4 fotorezistori dependenti de lumină, și patru LED -uri pentru
iluminarea și detectare pistei. Cele 4 LED -uri vor ilumina suprafața pe care este desenata linia.
Linia care ar trebui să fie urmărita este neagra, sau cel putin este o diferență semnificat ivă între
culoarea fundalului și culoarea liniei.
4.2. Senzorii de linie analogi QTR -1A
Citirea traiectoriei dupa care se deplaseaza robotul se face cu ajutorul senzorului analogic
QRE1A format dintr -un led cu infrarosu si un fototranzistor sensibil la lumina infrarosie. Am
folosit 2 astfel de senzori ce alcatuiesc sistemul senzorial al robotului .
Semnalele provenite de la senzori sunt trimise spre procesare Unitatii Centrale
reprezentata de Platforma de dezvoltare Arduino Uno ce contine microcontrolle r-ul ATmega328
de la ATMEL.
56
Fig. 5.51 Senzor de linie QTR -1A
Senzorul este format din doua componente : un led IR si un fototranzistor sensibil la IR .
Cand aplicati 5V pe pinul VCC si GND led -ul IR va transmite o lumina infrarosie. In serie cu
led-ul IR este plasata o rezistenta de 100Ohm pentru a limita curentul. O rezistenta de 10kOhm
pune pinul de output pe HIGHT, dar cand lumina emisa de led -ul IR este reflectata inapoi in
fotorezistor pinul de output coboara catre LOW. Cu cat fototranzistorul primes te mai multa
lumina cu atat scade tensiune pe pinul de output .
Specificatii:
Tensiune de alimentare : 3.3V -5V
Curent : 25mA
Dimensiuni : 7.62 x 13.97 mm
Fig. 5.52 Conectarea senzorului de linie la placa ARDUINO
57
Fig.5.53. Schema cinematica a senzorului
4.3 Senzorul infraroșu Sharp GP2D120
Fig.5.54 Senzorul infraroșu Sharp GP2D120
Un senzor special folosit pentru evitarea obstacolelor este senzorul infraroșu Sharp
GP2D120 care prezintă urmatoarele caracteristici tehnice:
Folosește principiul de reflexie al luminii infraroșii pentru măsurarea distanței,
Raza de acțiune este intre 4 și 30 de cm.
Alimentarea se face la o tensiune de 4,5 pâna la 5 V și o intensitate de 33 mA.
58
Tensiunea de ieșire este cuprinsă în intervalul 0.4 -2.4 V la o alimentare de 5 V.
Interfata sa prezinta 3 fire: alimentarea(Vcc), masa(GND) și tensiunea de ieșire(Vout) și
necesită un conector JST de 3 pini.
Senzorul de distanta Sharp este o componenta care poate fi utilizata impreuna cu Arduino
pentru a masura di stanta pana la diverse obiecte inconjuratoare.
Exista 3 tipuri de senzori, fiecare eficace pe o anumita zona din punct de vedere al
distantelor masurate : senzor de apropiere, eficient pentru masuratori intre 3 cm si 40 de cm,
senzor de departare medie, e ficient intre 10 cm si 80 cm, si senzor de departare, eficient intre 15
cm si 150 cm.
Conectarea la Arduino este deosebit de simpla. Dispozitivul dispune de 3 pini, doi dintre
ei fiind pini de alimentare (GND si VCC), iar cel de -al treilea fiind pinul ca re da indicatii asupra
distantei, prin potentialul prezent pe acesta.
4.3.1.Modul de funcționare
Principiul care stă la baza acestei metode de masurare folosite de senzorul Sharp se bazează
pe formarea unui triunghi între Emițătorul de rază infraroșie, p unctul de reflexie și detectorul de
infraroșu. Astfel, emitatorul emite un puls de lumina infrarosie. Lumina străbate campul vizual și
fie lovește un obstacol sau continuă deplasarea. În cazul inexistenței unui obstacol, lumina nu va
fi reflectată și nu se va detecta nici un obiect. Dacă lumina se reflectă de pe un obiect, se va
întoarce la detector și va creea un triunghi între emițător, punctul de reflexie și eetector, ca în
figura urmatoare:
Fig.5.55 Asezarea pinilor si curba caracteristica
59
Prin conexiunea senzorului infraroșu cu convertizorul Analog/Digital rezultã datele
analogice care sunt convertite în distanțe corecte cu ajutorul softului de programare.Astfel pentru
o valoare de 307 corespunde o distanța de 8 cm.
R = (2933 / (V + 20)) – 1
R distanța in cm.
V datele anlogice din conversia analog/digitală.Intervalul este intre 0 și 1,023
60
Fig.5.56. Modul de funcționare al senzorului Sharp
61
Fig.5.57. Tabelul cu valori ale senzorului infrarosu
62
5. Principiul de navigare
Așa cum sa descris mai devreme, robotul va utiliza un principiu simplu bazat pe senzori
se linie analogi . Acest robot va urmări doar linia neagră pe o suprafata alba. Aceste culori au
fost selectate pentru cel mai bun contrast si sunt folosite în toate competitiile de roboti care
urmaresc o linie. Ce le 2 LED -uri vor ilumina podeaua și fotorezistorii v-or reacționa cu
privire la cantitatea de lumina reflectata. Dacă este reflectată mai multa lumina , acest lucru este
atunci când senzorii sunt pe su prafata alba, deoarece o suprafata alba reflecta lumina alba, LDR –
urile v -or reduce valoarea rezistenței lor și mai mult curent va curge la baza tranzistorului care
opereaza fiecare motor. (Notă: LDR -urile ar trebui să fie amplasate în apropierea LED -urilo r si
capul lor ar trebui să fie coaxial. altfel LDR -urile nu v -or detecta suprafață cat este nevoie).
In cazul in care cele 2 leduri au detectat linia neagra robotul se va deplasa inainte.
Fig.5.58. Detactarea lini ei negre de catre senzori si deplsarea inainte
63
Atunci când linia neagră este detectata de LED -ul din dreapta , cantitatea de lumina
reflectata va fi mai mică decat cea de pe linia alba, astfel încât LDR -urile v -or crește valoarea
rezistenței lor, si mai puțin curent va fi aplicat pe baza tranzistorului iar motorul va încetini
facand robotul sa vireze spre dreapta .
Fig. 5.59. Detectarea liniei negre de catre senzor ul din dreapta si virarea spre dreapta
64
Atunci când linia neagră este detectata de LED -ul din stanga , cant itatea de lumina reflectata va
fi mai mică decat cea de pe linia alba, astfel încât LDR -urile v -or crește valoarea rezistenței lor,
si mai puțin curent va fi aplicat pe baza tranzistorului iar motorul va încetini facand robotul sa
vireze spre stanga .
Fig.5.60. Detectarea liniei negre de catre senzor ul din stanga si virarea spre stanga
65
Fig.5.61. Principiul de functionare al LED –urilor si al fotorezistorilor
6. Algoritmul de control proportional
Controlul proportional , care este de obicei folosit la algoritmii de urmarire a unei linii ,
inseamna ca intensitatea rotatiei robotului fata de linie este proportionala cu distanta dintre robot
si linie. C u alte cuvinte , daca centrul robotului este pozitionat exact pe linie , rotatia robotului va
fie gala cu zero , dar daca robotul este deviat de la centrul liniei, intensitatea rotatiei va creste
treptat , pana cand va atinge intensitatea maxima daca linia este complet inaccesibila. Acest
algoritm proportional va preveni robotul de la oscilarea sprea dreapta si spre stanga liniei in timp
ce incearca sa o urmeze.
Prin intensitatea de rotatie ne -am referit la viteza la care rotile se vor intoarce .
66
CAPITOLUL V I
Concluzii
Navigarea este importanta pentru multe aplicații imaginate ale robotilor mobili.
Denumirea de “line follower” în sine se refera clar la faptul că acesta este un robot care
detecteaza sau urmează un traseu specific. Acest robot este un instrument excelent pentru
extinderea imaginației unui student. Din acest proiect , putem concluziona că avem posibilitatea
de a proiecta și construi un robot destinat urmaririi unei linii.
Robotul urmritor de linie este o platforma adaptabila, care permite dezvoltarea de diverse
aplicații. Avand o structura moderna , putem modifica cu ușurință posibilitatea funcțiilor și sa
adaugăm unele funcții noi cum ar fi de exemplu detectarea unor obs tacole si ocolirea acestora.
In acesta lucrare am cercetat , proiectat si conceput un robot mobil cu actinoare
diferentiala avand 2 motoare independente montate de o parte si de alta a sasiului robotului , si 4
senzori pentru indeplinirea unei singuri sar cini , aceea de a urmari o linie de cu loare neagra pe un
fundal alb.
In zilele noastre , o mare parte a robotilor “line follower” fol osesc senzori infrarosii
pentru culegerea informatiilor in timp ce in acest proiect am folosit senzori LDR pentru culegera
informatiilor. Astfel , am dovedit in acest proiect ca senzorii LDR nu numai ca se aplica in
dispozitivele de comutare ci se pot aplica si in cazul robotilor mobili.
Ca un avantaj al acestui robot este prețul redus și simplitatea de al construi, dar sunt si
dezavantaje majore, cum ar fi viteza redus a și instabilitatea pe liniile de diferite grosimi .
67
Bibliografie
1. Mayur Agarwal , Prashant Agrawal , Krishna Nand Gupta , Hitesh Meghani – Line
Follower Robot , Robotics Workshop Currents 15th march 2008EEE Department NIT
Trichy
2. Park, Sungyong and Minor, Mark A. "Modeling and Dynamic Control of Compliant
Framed Wheeled Modular Mobile Robots", Intemdonal Conhnnu on Robotics L
Automation.,New Orloans. LA, 2004.
3. Ahmadreza Tarakameh, Khoshnam Shojaie – Modeling of a Differential Drive Wheeled
Mobile Robot by Newton –Euler Method , Electronic Research Centre, Department of
Electrical Engineering, Iran University of Science and Tech nology Tehran, IRAN
4. Robo -11 Interactive C robot kit Activity book
5. Jong -Woo Moon , Chong -kug Park , – Kinematic Correction of a Differential Drive
Mobile Robot and a Design for Velocity Trajectory with Acceleration Constraints on
Motor Controllers 1999
6. Muhamad Nor Hafiz B Moktarudin – Application Of LDR Sensor On Line Follower
Robot , Faculty Of Electrical Engineering University Teknikal Malaysia Melaka 2008
7. Adarsh K. , Prashanth S. , Radha malini M.G. – Line Follower Robot Mechatronics
Project
INTERNET:
1. http://www.ermicro.com/blog/?p=1097
2. http://ikalogic.com/tut_line_sens_algo.php
3. http://imtuoradea.ro/auo.fmte/ss_2010_files/TRANSISTOR%20BASED%20MOBILE%
20LINE%20FOLLOWING%20ROBOT.pdf
4. http://kingkong.me.berkele y.edu/~adarsh/LFR.pdf
5. http://ro.wikipedia.org/wiki/LED
6. http://ikalogic.com/proj_mini_line_folower.php
7. http://www.scribd.com/doc/7380969/Line -Follower -Using -AT89c51
8. http://www.scribd.com/doc/42777208/Line -Follower -Robot -Project
9. http://www.richardvannoy.info/building -a-line-following -robot.pdf
10. http://ac.upg -ploiesti.ro/spc200 9/spc_junior/cao_quoc_huy.pdf
11. http://www.mil.ufl.edu/5666/papers/IMDL_Report_Summer_05/dutka -paul/MILee.pdf
12. http://gilerpunada.blogspot.com/2009/09/line -following -mobile -robot -s2g3 -part1.html
13. http://www.scribd.com/doc/22264883/Line -Followin g-Robot -Guide
14. http://elf.cs.pub.ro/pm/wiki/prj2010/pgp/linefolcoldet
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Robot Mobil Autonom1 [609255] (ID: 609255)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
