Robot Mobil Autonom (1) [302059]

CAPITOLUL I

Introducere

1.1.Generalitati

1.1.1. [anonimizat]. [anonimizat] 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 mecanisme inteligente sau și-a [anonimizat], 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 [anonimizat], î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.

[anonimizat]. [anonimizat], [anonimizat].

Domeniile de aplicare a [anonimizat], [anonimizat], în cunoasterea oceanului și a [anonimizat].

1.2. Sudiu 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) [anonimizat], 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 [anonimizat].

Succesul în îndeplinirea acestor sarcini depinde atât de cunoștințele pe care robotul le are asupra configurației inițiale a [anonimizat].

Problemele specifice ce apar la roboții mobili ar fi următoarele: [anonimizat], planificarea unei 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 capabil 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 de acceleratoare și giroscoape, geamanduri electromagnetice instalate în teren, semnalizatoare pasive sau semipasive de tip optic sau magnetic.

1.2.3. Caracteristici ale robotilor mobili

Roboții mobili au următoarele caracteristici comune:

structura mecanică 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 sunt 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

roboți pe roți sau șenile

Fig.1.1. Roboti mobili pe senile

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.;

Fig.1.3. Roboti taratori

4.roboți săritori, care imită deplasarea broaștelor, cangurilor etc.;

Fig.1.4. Roboți săritori

5.roboți de formă sferică (se deplasează prin rostogolire) etc.

1.2.5. Utilizări ale roboților mobili.

Utilizările 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 singure lucrările pe suprafețele pentru care au fost programate; în domeniul forestier roboții mobili pot escalada copacii înalți

Fig.1.5. Roboti mobili 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 investigare ș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.(packbot) ș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 improvizate 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 Reconnaissance Detection System) făcute de Foster Miller, care pot fi echipate cu mitraliere, lansatoare de grenade sau lansatoare de rachete anti tanc, precum și camere și alți senzori și noul MAARS (Modular Advanced Armed Robotic System). În timp ce vehicule cum ar fi SWORDS și MAARS sunt capabile sa navigheze autonom catre obiectivele specifice prin sistem global de pozitionare (GPS), în prezent declansarea oricarei arme aflate la bord se face de către un soldat situat 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 livre, permitandu-i astfel să-și înlocuiască arma platformei cu o unitate de identificare și neutralizare IED( Improvised explosive device).

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ă robusteț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 persoanelor bătrâne sau cu diferite handicapuri; ghidarea și informarea publicului în muzee aspirarea și curățirea încăperilor; 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 lucru, 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.

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,AIRAT2 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, invață 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

Fig.1.8. Minirobot AIRAT 2

Alte proiecte:

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 , controlat de un driver de motor care comanda cele 2 motoare de current continuu, avand ca sarcina principala urmarirea unei linii de culoare neagra, pe un fundal alb.

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 continuu , 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 suport 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 afle la o anumita distanta deasupra podelei.

Fig.2.10. Atasarea suporturilor motoarelor pe platforma robotului

Fig.2.11. Montarea motoarelor pe suporturi

Fig.2.12. Montarea celor 2 roti si a rotii castor

Fig.2.13 Atasarea platformei de procesare ARDUINO UNO R3 si a placii shield

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 follower “ foloseste asa numita actionare diferentiala, care utilizează 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 vehiculul sa se intoarca spre stânga, iar incetinirea vitezei de rotatie a motorului din dreapta va face robotul sa se intoarca spre acea directie.

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. Pentru 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 mai mica decat cea din stanga. Astfel, curband spre dreapta si spre stanga, sau mergand inainte, robotul poate urmari usor linia neagra.

Fig.2.17. Tipuri diferite de deplasare a robotului

CAPITOLUL III

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 mobil, aratat in figura de mai jos. Acesta are două roți motrice pe o axă, care sunt alimentate de 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.

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ângeri. Î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)

(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:

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ă:

(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:

(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)

In final , rezolvand ecuatiile de mai sus , 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)

unde:

Apoi

unde

Fig.3.20. Fortele aplicate ecuatiei Euler

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)

Fig.3.22. Sistemul de transmisie al fiecarei roti

Aplicand ecuatia (19) in ecuatia (17) , modelul final este obtinut dupa cum urmeaza:

(20)

unde

CAPITOLUL IV

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 acestuia î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. Există mișcări suplimentare datorate rotației roților în jurul axelor proprii, respective 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 cinematic 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 corpului robotului.

Planului i se atașează sistemul de referință fix X000Y0.

Corpului robotului i se atașează sistemul de axe XRORYR, în punctul P

Corespunzător poziției inițiale a robotului, se consideră notația XR0OR0YR0

Fig.4.23. Model cinematic robot cu 2 roți

Coordonatele punctului P, determinate în raport cu originea O0 a sistemului de referință, scrise sub formă matriceală sunt:

(1)

x0, y0, θ0 sunt parametrii ce exprimă poziția și orientarea corpului robotului în raport cu sistemul de referință;

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.

(2)

Fig.4.24. Deplasarea robotului.

Cunoscând vitezele/pozițiile roților se cere viteza/poziția robotului.

Se cunosc: v1=ω1r ; v2=ω2r

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 instantaneu 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 intersecț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.

Fig.4.26. Determinarea C.I.R

3. Determinarea vitezei unghiulare, Ω, 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=

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

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));

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

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=(ω1r)/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

vx2=(ω2r)/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)=vx1+vx2=0.4 m/s

vy((t)=vy1+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=(A1-A2)/2

– unde:

A1=(R+L/2)θ

A2=(RL/2)θ

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)

θ=A1/(R+L/2)

Similar pentru roata 2

C2=2)

Fig.4.34. Reprezentare a 2 roți.

De unde rezultă:

RA2/θ

Înlocuind această relație în

θ=A1/(R+L/2)

Prin înlocuire se obține:

θ=(A1A2)/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

Pentru a se deplasa după o traiectorie rectilinie ,robotul va păstra N1=N2, 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 N1=N2

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 unor pete de unsoare pe suprafața 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 diametrele 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 curburii ș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)

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 poate 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 dreapta . 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 este 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ă:

(11)

Din (8)-(11), greutatea rotii absolute 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 roți nepotrivită este prezentată în figura de mai jos.

Fig.4.38. Rotația unui robot mobil cu roți

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)

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 L293N care poate comanda 2 motoare de curent continuu, curent maxim 2 amperi , complet asamblat sub forma unui shield Arduino, facilitand 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 utilizat senzorul de distanta Sharp care este o componenta ce 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 dispozitive 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 microcontrolerul 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 standard pentru marca Arduino.

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 automat.

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 mult 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 intrare 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. Aceasta 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.

Fig. 5.41. Schema electrică a plăcii de bază a minirobotului

2. Circuitul integrat folosit pentru comanda motoarelor

Circuitul integrat ales de noi este L293N.

Circuitul integrat L293N 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

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 placa 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 surub marcati "MOTOR1" si "MOTOR2", iar alimentarea pentru motoare se conecteaza la pinii cu surub marcati "VIN" si "GND".

Fig. 5.44. Placa shield

Fig.5.45. Diagrama bloc a driverului de motor cu circuit integrat L298N

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 este 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 curent 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 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 perii, 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.

Fig.5.47. Dimensiunile 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

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 factor facand robotul sa fie tot timpul pe linie sau nu.

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.

Senzori

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 plasati 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.

Senzori

Fig.5.50. Cazul unui robot cu 3 senzori

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 utiliza 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ță semnificativă î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 microcontroller-ul ATmega328 de la ATMEL.

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 primeste 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

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.

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 distanta 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, eficient 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 care 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, punctul 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

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

Fig.5.56. Modul de funcționare al senzorului Sharp

Fig.5.57.Tabelul cu valori ale senzorului infrarosu

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. Cele 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 suprafata 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-urilor 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 liniei negre de catre senzori si deplsarea inainte

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 senzorul din dreapta si virarea spre dreapta

Atunci când linia neagră este detectata de LED-ul din stanga , 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 stanga .

Fig.5.60. Detectarea liniei negre de catre senzorul din stanga si virarea spre stanga

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. Cu 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 .

CAPITOLUL VI

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 obstacole 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 sarcini , aceea de a urmari o linie de culoare neagra pe un fundal alb.

In zilele noastre , o mare parte a robotilor “line follower” folosesc 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 redusa și instabilitatea pe liniile de diferite grosimi.

Bibliografie

Mayur Agarwal , Prashant Agrawal , Krishna Nand Gupta , Hitesh Meghani – Line Follower Robot , Robotics Workshop Currents 15th march 2008EEE Department NIT Trichy

Park, Sungyong and Minor, Mark A. "Modeling and Dynamic Control of Compliant Framed Wheeled Modular Robots", Intemdonal Conhnnu on Robotics L Automation.,New Orloans. LA, 2004.

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 Technology Tehran, IRAN

Robo-11 Interactive C robot kit Activity book

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

Muhamad Nor Hafiz B Moktarudin – Application Of LDR Sensor On Line Follower Robot , Faculty Of Electrical Teknikal Melaka 2008

Adarsh K. , Prashanth S. , Radha malini M.G. – Line Follower Robot Mechatronics Project

INTERNET:

http://www.ermicro.com/blog/?p=1097

http://ikalogic.com/tut_line_sens_algo.php

http://imtuoradea.ro/auo.fmte/ss_2010_files/TRANSISTOR%20BASED%20MOBILE%20LINE%20FOLLOWING%20ROBOT.pdf

http://kingkong.me.berkeley.edu/~adarsh/LFR.pdf

http://ro.wikipedia.org/wiki/LED

http://ikalogic.com/proj_mini_line_folower.php

http://www.richardvannoy.info/building-a-line-following-robot.pdf

http://ac.upg-ploiesti.ro/spc2009/spc_junior/cao_quoc_huy.pdf

http://www.mil.ufl.edu/5666/papers/IMDL_Report_Summer_05/dutka-paul/MILee.pdf

http://gilerpunada.blogspot.com/2009/09/line-following-mobile-robot-s2g3-part1.html

http://elf.cs.pub.ro/pm/wiki/prj2010/pgp/linefolcoldet

Similar Posts