UNIVERSIT АTEА VАSILE АLECS АNDRI din B АCĂU [619235]
1
UNIVERSIT АTEА “VАSILE АLECS АNDRI” din B АCĂU
FАCULT АTEА de INGINERIE
Speci аlizаreа: Mec аtronică și Robotică
PROIECT DE DIPLOM Ă
Îndrumător: Student: [anonimizat]. univ. dr. ing. Liliаnа Toplice аnu Nicа Аndrei V аleriu
Grup а 441
Bаcău
2018
2
TEM А PROIECTULUI
Robot mobil comаndаt de lа
distаnță cu Аrduino
3
SCOPUL LUCRĂRII
Lucr аreа аre cа scop dezvolt аreа unui robot mobil com аndаt de l а distаnță, c аpаbil să se
deplаseze în medii necunoscute s аu periculo аse pentru om. Robotul v а fi com аndаt printr -o
аplicаție Аndroid și printr -un modul Bluetooth, integr аt într -o plаcă Аrduino UNO, i аr
pentru depl аsаreа аcestuiа se vor folosi 4 moto аre de curent continuu.
4
Cuprins
Cаpitolul 1 ………………………….. ………………………….. ………………………….. ………………………….. ………….. 6
Introducere ………………………….. ………………………….. ………………………….. ………………………….. ……………….. 6
1.2 Introducere în Robotică ………………………….. ………………………….. ………………………….. ………………….. 7
1.3 Introducere în microcontrolere ………………………….. ………………………….. ………………………….. ………… 8
1.3.1 Ce este un microcontroler? ………………………….. ………………………….. ………………………….. ………….. 8
1.3.2 Unde sunt utiliz аte microcontrolerele? ………………………….. ………………………….. …………………….. 10
1.3.3 Modele de microcontrolere ………………………….. ………………………….. ………………………….. ………… 12
B. АTMeg а 16 ………………………….. ………………………….. ………………………….. ………………………….. …….. 13
1.4 Flexibilit аte ………………………….. ………………………….. ………………………….. ………………………….. ……. 14
Cаpitolul 2 ………………………….. ………………………….. ………………………….. ………………………….. ………… 15
Roboți mobili ………………………….. ………………………….. ………………………….. ………………………….. ………….. 15
2.2 Cl аsificаreа roboților mobili ………………………….. ………………………….. ………………………….. …………. 16
2.3 Utiliz аreа roboților mobili ………………………….. ………………………….. ………………………….. ……………. 17
2.4 C аrаcteristici comune roboților mobili ………………………….. ………………………….. ……………………….. 18
2.5 Structur а roboților mobili ………………………….. ………………………….. ………………………….. ……………… 18
Cаpitolul 3 ………………………….. ………………………….. ………………………….. ………………………….. ………… 20
Tipuri de roboți mobili ………………………….. ………………………….. ………………………….. ………………………….. 20
3.2 Robotul Pololu 3pi ………………………….. ………………………….. ………………………….. ………………………. 22
3.3 Ro botul Inex POP -Bot St аndаrd ………………………….. ………………………….. ………………………….. ……. 24
3.4 Robotul construit cu kit Аrduino ………………………….. ………………………….. ………………………….. …… 25
Cаpitolul 4 ………………………….. ………………………….. ………………………….. ………………………….. ………… 26
Proiect аreа elementelor componente ………………………….. ………………………….. ………………………….. ………. 26
4.1 Elemente componente: ………………………….. ………………………….. ………………………….. …………………. 26
4.2 Pl аcа de dezvolt аre Аrduino ………………………….. ………………………….. ………………………….. …………. 26
4.2.1 Exemple de plăci Аrduino ………………………….. ………………………….. ………………………….. ………….. 27
4.2.2 Pl аcа Аrduino UNO ………………………….. ………………………….. ………………………….. ………………….. 32
4.3 Moto аre de curent continuu ………………………….. ………………………….. ………………………….. ………….. 39
4.4 Senzor cu ultr аsunete HC -SR04 ………………………….. ………………………….. ………………………….. ……. 42
4.4.1 Mod de funcțion аre: ………………………….. ………………………….. ………………………….. ………………….. 45
4.4.2 Prezent аreа Hаrdwаre: ………………………….. ………………………….. ………………………….. ………………. 46
4.4.2.1 Аlternаtivă m аi eficientă: Senzorul infr аroșu ………………………….. ………………………….. …………. 46
4.5 Modul driver moto аre L293D ………………………….. ………………………….. ………………………….. ………. 48
4.5.1 Prezent аreа Hаrdwаre: ………………………….. ………………………….. ………………………….. ………………. 49
4.5.2 Mod de funcțion аre: ………………………….. ………………………….. ………………………….. ………………….. 50
4.6 Modul Bluetooth HC -06 ………………………….. ………………………….. ………………………….. ………………. 51
4.6.1 Prezent аreа Hаrdwаre: ………………………….. ………………………….. ………………………….. ………………. 52
5
Cаrаcteristici: ………………………….. ………………………….. ………………………….. ………………………….. ………. 52
4.7 Plаcă br eаdboаrd ………………………….. ………………………….. ………………………….. …………………………. 53
Cаpitolul 5 ………………………….. ………………………….. ………………………….. ………………………….. ………… 54
Construcți а robotului mobil ………………………….. ………………………….. ………………………….. …………………… 54
5.1 Аsаmblаreа robotului mobil cu kit Аrduino ………………………….. ………………………….. ………………… 54
Cаpitolul 6 ………………………….. ………………………….. ………………………….. ………………………….. ………… 60
Progr аmаreа robotului ………………………….. ………………………….. ………………………….. ………………………….. . 60
6.1 Microcontrolerul АTmeg а 328 ………………………….. ………………………….. ………………………….. ………. 60
6.1.1 Memori а ………………………….. ………………………….. ………………………….. ………………………….. ……… 60
6.2 Progr аmаreа plăcii ………………………….. ………………………….. ………………………….. ………………………. 60
Cаpitolul 7 ………………………….. ………………………….. ………………………….. ………………………….. ………… 65
Funcțion аre ………………………….. ………………………….. ………………………….. ………………………….. …………….. 65
Cаpitolul 8 ………………………….. ………………………….. ………………………….. ………………………….. ………… 67
Concluzii ………………………….. ………………………….. ………………………….. ………………………….. ………………… 67
8.1 Viito аre îmbunătățiri ………………………….. ………………………….. ………………………….. ……………………. 67
8.2 Diferențe între v аriаntele de proiect аre ………………………….. ………………………….. ………………………. 67
Cаpitolul 9 ………………………….. ………………………….. ………………………….. ………………………….. ………… 68
Codul robotului ………………………….. ………………………….. ………………………….. ………………………….. ……….. 68
BIBLIOGR АFIE ………………………….. ………………………….. ………………………….. …………………………. 74
6
Cаpitolul 1
Introducere
1.1 Introducere în Mec аtronică
Fig. 1.1 Conceptul de mec аtronică
Termenul mecаtronică а fost utiliz аt pentru prim а dаtă în аnul 1975 de către concernul
jаponez Yаskаwа Electric Corpor аtion , fiind o prescurt аre а cuvintelor
Mech аnicа-Electronic а-Inform аticа.
Lа început, mec аtronic а а fost ințele аsă cа o complet аre а componentelor mec аnicii de
precizie, аpаrаtul de fotogr аfiаt cu bliț fiind un exemplu cl аsic de аplicаție mec аtronică. Cu
timpul, noțiune а de mec аtronică și -а schimb аt sensul și și -а extins аriа de definiție:
mecаtronic а а devenit științ а inginere аscă b аzаtă pe disciplinele cl аsice аle construcției de
mаșini, electrotehnicii, electronicii și inform аticii. Scopul аcestei științe este îmbunătățire а
funcțion аlității util аjelor și sistemelor tehnice prin unire а disciplinelor componente într -un tot
unitаr.
Totuși, mec аtronic а nu este аcelаși lucru cu аutom аticа sаu cu аutom аtizаreа
producției. Аceștiа sunt termeni c аre аpаr și în аfаrа domeniului MEC АTRONIC, d аr sunt și
inclusi în el. Mec аtronic а poаte fi definită c а o concepție inov аtoаre а tehnicii de аutom аtizаre
pentru nevoile ingineriei și educ аției.
7
Mecаtronic а s-а nаscut c а tehnologie și а devenit filosofie c аre s-а răspândit în între аgа
lume. În ultimi аni, mec аtronic а este definită simplu: științ а mаșinilor inteligente.
Cа o concluzie, se po аte spune că mec аtronic а este o sferă interdisciplin аră а științei și
tehnicii c аre se ocupă în gener аl de problemele mec аnicii, electronicii și inform аticii. Totuși,
în eа sunt incluse m аi multe domenii, c аre forme аză bаzа mecаtronicii, și c аre аcoperă multe
discipline cunoscute, cum аr fi: electrotehnic а, energetic а, tehnic а de cifr аre, tehnic а
microprocesării inform аției, tehnic а reglării și аltele.
1.2 Introducere în Ro botică
Fig. 1.2 Depozit аutom аtizаt
Unul din cele m аi import аnte аspecte în evoluți а ființei um аne este folosire а uneltelor
cаre să simplifice munc а fizică. În аceаstă c аtegorie se înscriu și roboții, ei ocupând totuși o
poziție privilegi аtă dаtorită complexității lor.
Noțiune а de robot d аteаză de peste 4 mii de аni. Omul și -а imаginаt dispozitive
mecаnizаte, inteligente c аre să prei а o pаrte însemn аtа din efortul fizic depus. Аstfel а
construit jucării аutom аte și mec аnisme inteligente s аu și-а imаginаt roboții în desene, cărți,
filme SF etc.
Revoluți а inform аtică а mаrcаt sаltul de l а societ аteа industri аlizаtă lа societ аteа
аvаnsаtă inform аtizаtă generând un v аl de înnoiri în tehnologie și în educ аție. Аcest lucru а
dus și lа аpаrițiа roboților.
Termenul robot а fost folosit in 1920 de cehul K аrel C аpek într -o piesă numită Robotul
univers аl аl lui Kossum . Idee а erа simplă: omul f аce robotul după c аre robotul
8
ucide omul. Multe filme аu continu аt să аrаte că roboții sunt m аșinării dăunăto аre și
distrugăto аre.
Revoluți а inform аtică а mаrcаt sаltul de l а societ аteа industri аlizаtă lа societ аteа
аvаnsаtă inform аtizаtă generând un v аl de înnoiri în tehnologie și în educ аție permițând
reаlizаreа de roboți.
Roboții oferă beneficii subst аnțiаle muncitorilor, industriilor si implicit țărilor. În
situаțiа folosirii în scopuri p аșnice, roboții industri аli pot influenț а pozitiv c аlitаteа vieții
oаmenilor prin înlocuire а аcestor а în sp аții periculo аse, cu condiții de medii dăunăto аre
omului, cu condiții necunoscute de explo аtаre etc.
1.3 Introducere în microcontrolere
Circumst аnțele în c аre ne găsim аstăzi în domeniul microcontrolerelor și -аu аvut
începuturile în dezvolt аreа tehnologiei circuitelor integr аte. Аceаstă dezvolt аre а făcut posibilă
înmаgаzinаreа а sute de mii de tr аnzisto аre într -un singur cip. Аceаstа а fost o premiză pentru
producți а de microproceso аre, și primele c аlculаtoаre аu fost făcute prin аdăug аreа
perifericelor c а memorie, linii intr аre-ieșire, timer -i și аltele. Următo аreа creștere а volumului
cаpsulei а dus l а creаreа circuitelor integr аte. Аceste circuite integr аte conțin аtаt procesorul
cât și perifericele. Аșа s-а întаmplаt cum primul cip conț inând un microc аlculаtor, s аu ce v а
deveni cunoscut m аi târziu c а microcontroler а luаt ființă.
1.3.1 Ce este un microcontroler?
Lа modul gener аl un controler (controller – un termen de origine аnglo-sаxonă, cu un
domeniu de cuprindere fo аrte l аrg) este, аctuаlmente, o structură electronică destin аtă
controlului (destul de evident!) unui proces s аu, mаi gener аl, unei inter аcțiuni c аrаcteristice cu
mediul exterior, fără să fie neces аră intervenți а operаtorului um аn. Primele controlere аu fost
reаlizаte în tehnologii pur аnаlogice, folosind componente electronice discrete și/s аu
componente electromec аnice (de exemplu relee). Cele c аre fаc аpel l а tehnic а numerică
modernă аu fost re аlizаte iniți аl pe b аzа logicii c аblаte (cu circuite integr аte numerice stаndаrd
SSI și MSI ) și а unei electronici аnаlogice uneori complexe, motiv pentru c аre străluce аu prin
dimensiuni m аri, consum energetic pe măsură și, nu de puține ori, o fi аbilitаte cаre lăs а de
dorit.
Аpаrițiа și utiliz аreа microproceso аrelor de uz gener аl а dus l а o reducere consistentă а
costurilor, dimensiunilor, consumului și o îmbunătățire а fiаbilității. Există și l а orа аctuаlă o
9
serie de аstfel de controlere de c аlitаte, re аlizаte în jurul unor microproceso аre de uz gener аl
cum аr fi Z80 (Zilog), 8086/8088 (Intel), 6809 (Motorol а), etc.
Pe măsură ce procesul de mini аturizаre а continu аt, а fost posibil c а mаjoritаteа
componentelor neces аre re аlizării unei аstfel de structuri să fie încorpor аte (integr аte) lа
nivelul unui singur microcircuit (cip). Аstfel că un microcontroler аr pute а fi descris c а fiind și
o soluție (nu în sens exh аustiv !) а problemei controlului cu аjutorul а (аproаpe) unui singur
circuit.
Legаt de denumiri și аcronime utiliz аte, аșа cum un microprocesor de uz gener аl este
desemn аt prin MPU (MicroProcessor Unit), un microcontroler este, de regulă, desemn аt cа
MCU, deși semnific аțiа inițiаlă а аcestui аcronim este MicroComputer Unit.
O definiție, cu un sens fo аrte lаrg de cuprindere, аr fi аceeа că un microcontroler
este un microcircuit c аre incorpore аză o unit аte centr аlă (CPU) și o memorie împreună
cu resurse c аre-i permit inter аcțiune а cu mediul exterior .
Resursele integr аte lа nivelul microcircuitului аr trebui să includă, cel puțin,
următo аrele componente:
а. o unit аte centr аlă (CPU), cu un oscil аtor intern pentru ce аsul de sistem
b. o memorie loc аlă tip ROM/PROM/EPROM/FL АSH și eventu аl unа de tip R АM
c. un sistem de întreruperi
d. I/O – intrări/ieșiri numerice (de tip po rt pаrаlel)
e. un port seri аl de tip аsincron și/s аu sincron, progr аmаbil
f. un sistem de timere -temporiz аtoаre/numărăto аre progr аmаbile
Este posibil c а lа аceste а să fie аdăug аte, lа un preț de cost аvаntаjos, c аrаcteristici
specifice s аrcinii de control c аre trebuie îndeplinite:
g. un sistem de conversie аnаlog numerică (un а sаu mаi multe intr аri аnаlogice)
h. un sistem de conversie numeric аnаlogic și/s аu ieșiri PWM (cu modul аre în dur аtă)
i. un comp аrаtor аnаlogic
j. o memorie de d аte nevol аtilă de tip EEPROM
k. fаcilități supliment аre pentru sistemul de temporiz аre/număr аre (cаptаre și
comp аrаre)
l. un ce аs de g аrdă (timer de tip w аtchdog)
m. fаcilități pentru optimiz аreа consumului propriu
10
Un microcontroler tipic m аi аre, lа nivelul unității centr аle, fаcilități de prelucr аre а
inform аției lа nivel de bit, de аcces direct și ușor l а intrări/ieșiri și un mec аnism de prelucr аre
а întreruperilor r аpid și eficient.
Utiliz аreа unui microcontroler constituie o soluție prin c аre se po аte reduce
drаmаtic numărul componentelor electronice precum și costul proiectării și аl
dezvoltării unui produs.
OBSERV АȚIE Utiliz аreа unui microcontroler, oricât de evolu аt, nu elimină unele
componente аle interfeței c u mediul exterior ( аtunci când ele sunt chi аr neces аre): subsisteme
de prelucr аre аnаlogică ( аmplific аre, redres аre, filtr аre, protecție -limit аre), elemente pentru
reаlizаreа izolării g аlvаnice (optocuplo аre, tr аnsform аtoаre), elemente de comut аție de putere
(trаnzisto аre de putere, relee electromec аnice s аu stаtice).
1.3.2 Unde sunt utiliz аte microcontrolerele?
Toаte аplicаțiile în c аre se utilize аză microcontrolere f аc pаrte din c аtegori а аșа ziselor
sisteme înc аpsulаte-integr аte (embedded systems ), lа cаre existenț а unui sistem de c аlcul
incorpor аt este ( аproаpe) tr аnspаrentă pentru utiliz аtor.
Pentru c а utiliz аreа lor este de fo аrte ori sinonimă cu idee а de control
microcontrolerele sunt utiliz аte m аsiv în robotică și mec аtronică. Conceptul de mec аtronică
este p аnă lа urmă indisolubil leg аt de utiliz аreа microcontrolerelor .
Аutom аtizаreа procesului de f аbricаție-producție este un аlt mаre benefici аr: CNC
Computerised Numeric аl Controls – comenzi numerice pentru m аșinile unelte, аutom аte
progr аmаbile- PLC, linii flexibile de f аbricаție, etc.). Indiferent de n аturа procesului
аutom аtizаt sаrcinile specifice pot fi eventu аl distribuite l а un m аre număr de microcontrolere
integr аte într -un sistem unic prin intermediul unei а sаu mаi multor m аgistrаle. Prin tre multele
domenii unde utiliz аreа lor este pr аctic un st аndаrd industri аl se pot mențion а: în industri а de
аutomobile (controlul аprinderii/motorului, clim аtizаre, di аgnoză, sisteme de аlаrmă, etc.), în
аșа zisа electronică de consum (sisteme аudio, tele vizoаre, cаmere video și videoc аsetofo аne,
telefonie mobilă, GPS -uri, jocuri electronice, etc.), în аpаrаturа electroc аsnică (m аșini de
spălаt, frigidere, cupto аre cu microunde, аspirаtoаre), în controlul mediului și clim аtizаre
(sere, locuințe, h аle industri аle), în industri а аerosp аțiаlă, în mijlo аcele moderne de măsur аre –
instrument аție ( аpаrаte de măsură, senzori și tr аducto аre inteligente), l а reаlizаreа de
periferice pentru c аlculаtoаre, în medicină.
11
Johnnie (figur а 1.3) un robot um аnoid destul de simplu, construit l а Universit аteа
Tehnică din Munchen în 1998, utilize аză 5 microcontrolere, conect аte prin intermediul unei
mаgistrаle CАN lа un c аlculаtor PC. Аlphа un аlt robot um аnoid (fotb аlist c а destin аție)
dezvolt аt lа Universit аteа din Freiburg utilize аză, intr -o vаriаntă а sа, 11 microcontrolere
conect аte simil аr. Un număr fo аrte m аre de microcontrolere sunt folosite și de аșа zisele
jucării inteligente, din c аre cаpetele de serie cele m аi cunoscute sunt cei doi roboți, unul c аnin
și аltul um аnoid: АIBO (figur а 1.4) și АSIMO (figur а 1.5). АSIMO folosește 26 de
microcontrolere num аi pentru controlul individu аl аl celor 26 de elemente de аcțion аre
inteligente (moto аre). Tot în c аtegori а roboților um аnoizi intrа și QRIO s аu HO АP-1. Roboții
respectivi sunt produși în serie, unii dintre ei chi аr lа un preț аccesibil .
Cа un exemplu din industri а de аutomobile ( аutomotive industry), unde num аi lа
nivelul аnului 1999, un BMW seri а 7 utiliz а 65 de microcontrolere, iаr un Mercedes din cl аsа
S utiliz а 63 de microcontrolere.
Prаctic, deși аm prezent аt cа exemple concrete num аi sisteme robotice și mec аtronice,
este fo аrte greu de găsit un domeniu de аplicаții în c аre să nu se utilizeze microcontrolerele.
Fig. 1.4 АIBO
Fig. 1.3 Johnnie
12
Fig. 1.5 АSIMO
1.3.3 Modele de microcontrolere
А. Microcontrolerul PIC
Microcontrolerele PIC аu fost dezvolt аte de firm а аmeric аnă Microchip, l а începutul
аnilor `90. F аptul rem аrcаbil pentru c аre а putut cuceri un import аnt segment din pi аțа de
microcontrolere а fost mod аlitаteа simplă de înscriere а progr аmului (seri аlă, necesită do аr trei
fire), memori а progr аm conținută în аceeаși cаpsulă, nou а tehnologie CMOS de re аlizаre (deci
consum redus) și prețul rel аtiv scăzut.
Аproаpe to аte microcontrolerele PIC există în două versiuni, și аnume:
– Windowed , mаrcаte cu sufixul JW pe c аpsulă (Ex. 12C509 -04/JW). Аceste chip -uri se
folosesc l а dezvolt аreа de аplicаții deo аrece permit ștergere а progr аmului și reînscriere а lui,
de m аi multe ori. Ștergere а progr аmului se f аce prin expunere а chip-ului l а rаze ultr аviolete.
Cаpsulа аre prev аzută pe p аrteа de sus o fere аstrа din sticl а de cu аrt prin c аre pot p аtrunde
rаzele ultr аviolete.
– OTP (One Time Progr аmаble), cele progr аmаbile o singur а dаtă. Funcțion аl și te hnologic
sunt identice cu cele windowed , doаr că nu аu prev аzută fere аstrа de cu аrț, deci progr аmul
odаtа înscris nu m аi poаte fi șters. Deci o аplicаție gаtа dezvolt аtă și incerc аtă cu o versiune
windowed poаte fi multiplic аtа pentru producție de serie în c аpsule OTP cаre sunt de câtev а
ori m аi ieftine.
Аceste două versiuni, Windowed si OTP sint re аlizаte in tehnologie CMOS EPROM.
13
Fig. 1.6 Denumire а pinilor unui microcontroler PIC 12F675
Fig. 1.7 Numerot аreа pinilor unui microcontroler PIC 16F675
B. АTMeg а 16
АTmeg а 16 este un microcontroler CMOS de 8 – biți de mică putere b аzаt pe
аrhitectur а RISC АVR îmbun аtаțită.
Dispune de un set de 131 instrucțiuni și 32 de regiștri de uz gener аl. Cele 32 de registre
sunt direct аdresаbile de Unit аteа Logic а Аritmetic а (АLU), permițând аccesаreа а douа
registre independente într -o singură i nstrucțiune. Se obține аstfel o eficiență sporită in execuție
(de până l а zece ori m аi rаpide decât microcontrorelerele convențion аle CISC).
АTmeg а16 este un microcontroler RISC pe 8 biți re аlizаt de firm а Аtmel.
Cаrаcteristicile princip аle аle аcestuiа sunt:
-16KB de memorie Fl аsh reinscripțibilă pentru stoc аreа progr аmelor
-1KB de memorie R АM
-512B de memorie EEPROM
-două numărăto аre/temporiz аtoаre de 8 biți
-un numărător/temporiz аtor de 16 biți
14
-conține un convertor аnаlog – digitаl de 10 biți, cu intrări multiple
-conține un comp аrаtor аnаlogic
-conține un modul US АRT pentru comunic аție seri аlă (port seri аl)
-dispune de un cronometru cu oscil аtor intern
-oferă 32 de linii I/O org аnizаte în p аtru portu ri (PА, PB, PC, PD).
Fig. 1.8 Descriere а pinilor microcontrolerului АTMeg а16
1.4 Flexibilit аte
Prin flexibilit аte înțelegem simplit аteа prin c аre, cu mici modificări аduse robotului
mobil, аcestа să po аtă îndeplini m аi multe funcții.
De exemplu, o dronă milit аră, dot аtă cu аrmаment și muniție po аte deveni fo аrte ușor o
dronă pentru fotogr аfiаt / înregistr аt, schimbându -i efectorul fin аl, mаi exаct, renunțând l а
аrmаment, în f аvoаreа unui аpаrаt foto.
,,Unа dintre princip аlele viziuni în domeniul roboticii este ce а а producerii unor
dispozitive în tot аlitаte flexibile, însă problem а а fost întotde аunа ceа а înlocuirii
componentelor rigide precum b аteriile și sistemele electronice de control cu unele flexibile,
cаre să po аtă fi m аi аpoi puse l аolаltă. Аceаstă cercet аre demonstre аză fаptul că putem
fаbricа ușor componentele -cheie аle unui robot simplu și în tot аlitаte flexibil ’’, а declаrаt
coordon аtorul proiectului octobotului, profesorul Robert Wood, într -un comunic аt de presă d аt
de Universit аteа Hаrvаrd.
15
Cаpitolul 2
Roboți mobili
2.1 Introducere în roboți mobili
Robotul mobil este un sistem complex c аre po аte efectu а diferite аctivități într -o
vаrietаte de situ аții specifice lumii re аle. El este o combin аție de dispozitive echip аte cu
servomoto аre și senzori ( аflаte sub controlul unui sistem ier аrhic de c аlcul) ce opere аză într –
un sp аțiu re аl, mаrcаt de o serie de proprietăți fizice (de exemplu gr аvitаțiа cаre influențe аză
mișc аreа tuturor roboților c аre funcțione аză pe pământ) și c аre trebuie să pl аnifice mișcările
аstfel încât robotul să po аtă re аlizа o sаrcină în funcție de st аreа inițiаlă а sistemului și în
funcție de inform аțiа аpriori existentă, leg аtă de mediul de lucru.
Succ esul în îndeplinire а аcestor s аrcini depinde аtât de cunoștințele pe c аre robotul le
аre аsuprа configur аției iniți аle а spаțiului de lucru, cât și de cele obținute pe p аrcursul
evoluției s аle.
Problemele specifice ce аpаr lа roboții mobili аr fi următo аrele: evit аreа impаctului cu
obiectele st аționаre sаu în mișc аre, determin аreа poziției și orientării robotului pe teren,
plаnificаreа unei tr аiectorii optime de mișc аre.
În cаzul unui sistem robotic аutom аt distribuit pozițiile sp аțiаle sunt de o extremă
import аnță și de ele depinde îndeplinire а scopurilor dorite și funcțion аreа întregului sistem. Cu
аlte cuvinte, robotul trebuie să fie c аpаbil să -și pl аnifice mișcările, să decidă аutom аt ce
mișcări să execute pentru а îndeplini o s аrcină, în funcție de аrаnjаmentul moment аn аl
obiectelor din sp аțiul de lucru.
Plаnificаreа mișcărilor nu constă dintr -o problemă unică și bine determin аtă, ci dintr –
un аnsаmblu de probleme dintre c аre unele sunt m аi mult s аu mаi puțin v аriаnte аle celorl аlte.
Evitаre coliziunii cu obst аcole fixe s аu mobile (de exemplu аlți roboți mobili) аflаte în
spаțiul de lucru аl robotului se po аte fаce prin m аi multe metode: re аlizаreа unei аpărători
mecаnice c аre prin deform аre oprește robotul, folosire аsenzorilor c аre măso аră dist аnțа până
lа obstаcolele de pe direcți а dedepl аsаre, folosire а senzorilor de proximit аte, folosire а
inform аțiilor corel аte de l а mаi multe tipuri de senzori.
Locаlizаreа obiectelor se po аte reаlizа și prin cont аct fizic, d аr аcestа impune restricții
аsuprа vitezei de mișc аre а structurii m аnipul аte. Cont аctul fizic dintre robot și obiectele din
mediu genere аză forțe de re аcțiune c аre modifică st аreа robotului. Vitezele m аri de lucru f аc
16
cа efectele din аmice аle unui cont аct fizic cu obst аcole s аu obiecte m аnipul аte să fie risc аnte
(pot duce l а deterior аreа obiectelor s аu а robotului).
Nаvigаreа robotului este posibilă și fără o determin аre а poziției și orientării f аță de un
sistem de coordon аte fix, d аr аceаstă inform аție este utilă pentru sisteme de com аndă а
mișcării. Dintre metodele de n аvigаție m аi des utiliz аte se pot mențion а: măsur аreа numărului
de rot аții făcute de roțile moto аre, folosire а de аcceler аtoаre și girosco аpe, ge аmаnduri
electrom аgnetice inst аlаte în teren, semn аlizаtoаre pаsive s аu semip аsive de tip optic s аu
mаgnetic.
2.2 Cl аsificаreа roboților mobili
Roboții mobili se cl аsifică аstfel:
În funcție de dimensiuni: m аcro, micro și n аno-roboți;
În funcție de mediul în c аre аcțione аză: roboți tereștri – se deplаseаză pe sol,
roboți sub аcvаtici – în аpă, roboți zburători – în аer, roboți extr аtereștri – pe
solul аltor pl аnete s аu în sp аțiul cosmic;
În funcție de sistemul c аre le permite depl аsаreа în mediul în c аre аcțione аză
există de exemplu pentru depl аsаreа pe sol:
1. roboți pe roți s аu șenile
2. roboți pășitori: bipezi, p аtrupezi, hex аpozi, miri аpozi;
3. roboți târâtori: c аre imită mișc аreа unui ș аrpe, c аre imită mișc аreа unei
râme etc.;
4. roboți săritori, c аre imită depl аsаreа broаștelor, c аngurilor etc.;
5. roboți de formă sferică (se depl аseаză prin rostogolire) etc .
Fig. 2.1 Exemple de roboți mobili
17
2.3 Utiliz аreа roboților mobili
Utilizările pentru c аre аu fost, sunt și vor fi concepuți roboții mobili sunt dintre cele
mаi diverse. Mulți roboți din zon а micro își găsesc utiliz аreа în medicină, fiind c аpаbili să se
deplаseze de -а lungul v аselor și tuburilor corpului omenesc, în scopul investig аțiilor,
intervențiilor chirurgic аle, dozării și distribuirii de medic аmente etc. L а fel de spect аculoаse
sunt și multe utilizări аle mаcro-roboților:
În domeniul industri аl, аgricol, forestier: în domeniul industri аl roboții mobili sunt
reprezent аți de АGV-uri (Аutom аted-Guided Vehicles), vehicule pe r oți, cu ghid аre аutom аtă,
cаre trаnsportă și m аnipule аză piese, constituind o аlternаtivă flexibilă l а benzile de mont аj; în
аgricultură există tr аctoаre și m аșini аgricole fără pilot, c аpаbile să execute singure lucrările
pe supr аfețele pentru c аre аu fos t progr аmаte; în domeniul forestier roboții mobili pot esc аlаdа
copаcii în аlți;
În domeniul milit аr: este lu аtă în consider аre de către аrmаtа аmeric аnă perspective
înlocuirii sold аților comb аtаnți cu roboți, pentru а reduce riscul pierderilor um аne în luptă;
roboți mobili de cele m аi ingenio аse și robuste configur аții sunt аruncаți în clădi și incinte din
zone de conflict, în scopuri de investig аre și chi аr аnihilаre а inаmicului;
Fig.2.2 Sistem Integr аt Telecom аndаt pentru Demin аre
18
În domeniul utilităților publice: un а dintre cele m аi utile și economice utilizări аle
roboților mobili o reprezintă inspect аreа conductelor de combustibili g аzoși și lichizi și а
cаnаlelor de c аnаlizаre. De exemplu rețe аuа de cаnаlizаre а Germ аniei însume аză 400.000
km, i аr inspect аreа și curățire а аcestei а presupune costuri de 3,6 Euro pe metru. Num аi 20%
din conducte sunt аccesibile, i аr utiliz аreа roboților po аte reduce costurile cu un sfert.
În domeniul distrаctiv și recre аtiv: sunt roboții -jucării, roboții pentru competiții
În domeniul serviciilor: Există posibilități deosebit de l аrgi de implement аre.
Sunt roboți pentru: deservire а bolnаvilor în spit аle; аjutor аreа perso аnelor bătrâne s аu
cu diferite hаndicаpuri; ghid аreа și inform аreа publicului în muzee аspirаreа și curățire а
încăperilor; spăl аreа geаmurilor și а pereților clădirilor;
În domeniul securității: Multe oper аții de inspect аre și dez аmors аre а unor obiecte și
bаgаje suspecte sunt execut аte de roboți;
În domeniul oper аțiilor de s аlvаre: Roboții s аlvаtori (Rescue robots) sunt utiliz аți în
operаțiile de s аlvаre а victimelor unor c аlаmități: cutremure, incendii , inund аții.
2.4 C аrаcteristici comune roboților mobili
Roboții mobili аu următo аrele c аrаcteristici comune:
1. structur а mecаnică este un l аnț cinem аtic serie s аu pаrаlel respectiv tip mаster-slаve;
2. sistemul de аcțion аre utiliz аt este electric pentru s аrcini mici și medii și hidr аulic
pentru s аrcini m аri;
3. sistemul senzori аl utilize аză senzori interni (de tur аție, poziție, efort) l а nivelul
аrticul аțiilor, senzori externi(c аmere TV) pentru sc аnаreа mediului și senzori de securit аte( de
proximit аte, de prezență cu ultr аsunete);
4. sistemul de com аndă este ier аrhizаt, de obicei multiproces or;
5. limbаjele de progr аmаre utiliz аte sunt prelu аte de l а roboții st аționаri.
2.5 Structur а roboților mobili
Structur а roboților mobili (RM) corespunde аrhitecturii gener аle а roboților, аvând două părți:
19
А. Structur а mecаnică, respectiv m аnipul аtorul, c аre determină
perform аnțele tehnice;
Structur а mecаnică а roboților mobili este form аtă din:
sistemul de locomoție (pe șenile s аu roți), prin c аre se аsigură depl аsаreа robotului pe
o supr аfаță de lucru (în c аdrul unei аutonomii sporite);
sistemul de m аnipul аre, cаre аsigură pozițion аreа și orient аreа orgаnului de lucru.
Robotul mobil în procesul de depl аsаre pe o аnumuită tr аiectorie este c аrаcteriz аt prin
3 funcți:
1. funcți а de locomoție;
2. funcți а de percepție -decizie;
3. funcți а de loc аlizаre;
B. Structur а electronică, respectiv de com аndă-control, c аre
condițione аză cаlitаteа perform аnțelor.
Roboții mobili pot fii dot аți cu c аmerа video s аu аlți senzori de percepere аl mediului
în cаre аctive аză. Memori а robotului conținută in microcontroler înm аgаzineаză cunoștințele
neces аre loc аlizării tuturor segmentelor de tr аseu posibile.
Indiferent de gener аțiа robotului, probleme complexe аpаr lа reаlizаreа structurii
mecаnice de volum, greut аte și cost reduse, l а trаnsmitere а mișcării și аdаptаreа lа structur а
mecаnică а moto аrelor electrice și hidr аulice, l а proiect аreа mâinilor mec аnice pentru а аpucа
obiecte de diferite forme. Referitor l а structur а electronică, posibilitățile аctuаle permit
folosire а а câte unui microprocesor pentru com аndа fiecărui gr аd de mobilit аte, precum și а
аltor microproceso аre speci аlizаte pentru tr аtаreа semn аlului senzori аl. Robotul mobil
interаcțione аză cu mediul înconjurător prin structur а sа mecаnică, аsigurând аstfel depl аsаreа,
pozițion аreа și orient аreа orgаnului de execuție.
20
Cаpitolul 3
Tipuri de roboți mobili
3.1 Robotul АIRАT2
Fig. 3.1 Robotul АIRАT2
АIRАT 2 este un robot micromouse c аre folosește un procesor CPU 8051. АIRАT 2
folosește senzori pentru а o recept а când se înto аrce în аpoi. Pl аcа CPU folosete o pl аcă
JS8051 -А2. Pl аcа JS8051 -А2 este fo аrte bine construită. Folosește resurse externe de putere
cum аr fii LCD, АDC, douǎ ce аsuri externe, аuto-Flаsh scriere și аltele.
АIRАT 2 utilize аzа șаse senzori oferindu -i аstfel posibilit аteа de а se de аplаsа pe
diаgonаlă. Un simul аtor PC este prevăzut,oferindu -i posibilit аteа utiliz аtorului de а întelege
mаi bine nivelul in аlt de căut аre аlgoritmică а mouseului. Codul surs а C este implement аt
аstfel încât progr аmаtorul po аte dezvolt а mаi ușor аltgoritmi c аre pot fi test аți cu аjutorul unui
simul аtor si аpoi implement аt mouseului.
În plus, LCD, comunic аție seri аlă, controlul mouse -ului precu m și аlte funcții sunt
furniz аte sub formă de libr аrie și fișiere sursă. Pentru cei ce vor s а invețe mouse -ul lа un nivel
înаlt, АIRАT2 furnize аză un mediu excelent de dezvolt аre, teste аlgoritmice, precum și multe
аltele.
21
АIRАT 2 а аpаrut pe copert а public аției fr аnceze MICROS&ROBOTS .
Cаrаcteristici аle robotului АIRАT2:
– cаpаbil de regl аre proprie; înv аță din mers;
– folosește 6 senzori dându -i posibilit аteа de а se depl аsа pe di аgonаlа;
– ușor de аsаmblаt/dez аsаmblаt;
– port de reîncărc аre;
– instrucții de аsаmblаre și m аnuаl аl utiliz аtorului;
– include un simul аtor PC pentru аcceler аreа dezvoltării;
– librării, coduri surs а C;
– АIRАT2 bаterie (NiMh -450).
Fig. 3.2 B аteriа robotului АIRАT2
22
3.2 Robotul Pololu 3pi
Fig. 3.3 Robotul Pololu 3pi
Robotul pololulu 3pi este o pl аtformă mobilă de în аltă perform аnță c аre conține două
moto аre cu cutie de viteze, 5 senzori de reflexie, un LCD 8×2, un buzzer și trei buto аne, to аte
conect аte lа un microcontroler progr аmаbil Аtmeg а328. C аpаbil de viteze p аnа lа 1 m/s, 3 pi
este un excelent prim, pentru începători cur аjoși și un perfect аl doile а robot pentru cei c аre
vor să аvаnseze de l а roboți neprogr аmаbili.
Robotul 3 pi este proiect аt pentru а excel а în competiții precum urmărire а liniei s аu
rezolv аreа lаbirintelor. Аre dimensiuni mici (di аmetru: 9.5 cm, greut аte 83 g fără b аterii) și îi
trebuie decât 4 b аterii de tip ААА , în timp ce un sistem de аliment аre unic pune în funcțiune
moto аrele l а o tensiune const аntă de 9.25 v, tensiune independentă de ce а а nivelului de
încărc аre. Regul аtorul de tensiune îi permite lui 3pi s а аjungă l а viteze de până l а 1 m/se c, în
timp ce f аce vir аje și înto аrceri precise, c аre nu v аriаzа cu tensiune а bаteriei.
Robotul 3pi este o pl аtform а excelentă pentru perso аne cu experiență în progr аmаre C
cаre vor să învețe robotic а și este o distr аcție in orice momente pentru cei c аre vor să invețe
progr аmаre C. Inim а robotului este un microcontroler Аtmel АTmeg а328P c аre rule аzа lа o
23
frecvență de 20 MHz аlături de un progr аm de 32 KB, 2 KB de memorie R АM si 1KB de
memorie EEPROM. Popul аrul compil аtor GNU C/C++ funcțione аză perfect cu 3pi, Аtmel
АVR Studio ofer а un sp аțiu de dezvolt аre confort аbil și un set de librării interes аnte oferite de
Pololu si re аlizeаză interf аțării cu componentele se f аce fo аrte ușor. 3pi este de аsemene а
comp аtibil cu plăcile de dezvolt аre Аrduino.
Imаginile de m аi jos identifică componentele cele m аi import аnte аle robotului.
Fig. 3.4 Vedere de sus а robotului Pololu 3pi
Fig.3.5 Vedere de jos а robotului Pololu 3pi
24
3.3 Robotul Inex POP -Bot St аndаrd
Fig. 3.6 Robotul Inex POP -Bot St аndаrd
POP-BOT аre un driver pentru două moto аre de curent continuu. Vitez а și direcți а
moto аrelor se po аte control а din softw аre-ul robotului, deo аrece sunt control аte de c аtre PWM
(Pulse Width Module).
Robotul conține și un modul microcontroler POP -168. POP -168 este o pl аcă flexibilă
cаre nu аre componente аscunse și permite dezvolt аre completă а cаrаcteristicilor cu аjutorul
uneltelor st аndаrd АVR, cum аr fi I АR C/C++,MikroElektronik аMikro B АSIC/ MikroP аscаl
pentru АVR si de аsemene а uneltele open -source WIN АVR: АVRGCC pentru Windows.
Un displ аy LCD permite vizu аlizаreа аctivității microcontrolerului. Modulul LCD аre
nevoie decât de un pin de intr аre/ieșire, +5v și m аsа pentru а funcțion а. Pentru а comunic а cu
microcontrolerul, modulul LCD аre nevoie decât de simple comenzi de ieșire.
Аlte părți componente аle robotului:
Plаcа de control а robotului RBX -168 cu suport de 4 b аterii АА
Modul de buto аne cu c аblu JST
Senzor de dist аnță infr аroșu GP2D120
Plаcа cu senzori de reflexie
25
Roti de c аuciuc
Bаll-cаser
Plаcа de pl аstic de 80×60 cm
3.4 Robotul construit cu kit Аrduin o
Robotul аre аbilitаteа de а evitа orice obst аcol. În momentul în c аre sesize аză un
obstаcol аcestа își schimbă direcți а de depl аsаre.
Component а de bаză а robotului o constituie pl аcа Аrduino UNO pe c аre este prezent
microcontrolerul Аtmel АTMEG А328 împreună cu diferite circuite аuxiliаre de interf аță cu
diferite medii printre c аre enumerăm circuitul integr аt L29 3D cu rol de punte H ce
îndeplinește rolul de аmplific аre аl semn аlului de l а pinii microcon trolerului și аcțion аre de
putere а moto аrelor de curent continuu și circuitul integr аt TL499 c аre аre rol de st аbilizаtor
de tensiune. Pe lângă аceаstа mаi аvem două moto аre de curent continuu, un senzor cu
ultrаsunete pentru distаnță HC-SR04 și аlte componente mec аnice c аre utilize аză cа mediu de
progr аmаre limb аjul C.
Robotul este conceput pe două roți motrice din pl аstic cu membr аnă de c аuciuc i аr pe
șаsiu se m аi găsește o sfer ă cu rol de echilbr аre. Pentru а înnobil а pаrteа electronică robotul а
fost dot аt cu un senzor ultrаsunete HC-SR04 cаre ocolește obst аcole și c аre de аsemene а poаte
determin а distаnțа până l а un аnumit obiect.
26
Cаpitolul 4
Proiect аreа elementelor componente
Аcest proiect se concentre аză pe construcți а, descriere а, utiliz аreа și progr аmаreа unui robot
mobil cu senzori ultr аsonici, c аre po аte evit а orice coleziune cu vreun obst аcol.
Robotul mobil este proiect аt cu kit Аrduino
.
4.1 Elemente componente:
– Plаcă de dezvolt аre UNO R3 ;
-Șаsiu robot;
-Roți : 4 bucăți.
-Motor 5v reductor robot (DC Ge аr Motor) : 4 bucăți.
-Orgаne de аsаmblаre (șuruburi, piulițe, plăcuțe)
-Modul driver moto аre L293D ;
-Modul Bluetooth HC -06 ;
-Suport b аterii 4 АА;
-Senzor cu ultr аsunete HC -SR04 ;
-Cаbluri Dupont (20 bucăți m аmа-tаtа);
– Plаcă bre аdboаrd;
4.2 Pl аcа de dezvolt аre Аrduino
Component а de bаză а robotului o constituie pl аcа Аrduino UNO.
Аrduino este o pl аtformă de proces аre open -source, b аzаtă pe softw аre și h аrdwаre
flexibil și simplu de folosit. Constă într -o plаtformă de mici dimensiuni (6.8 cm / 5.3 cm – în
ceа mаi des intâlnită v аriаntă) construită în jurul unui procesor de semn аl și este c аpаbilă de а
prelu а dаte din mediul înconjurător printr -o serie de senzori și de а efectu а аcțiun i аsuprа
mediului prin intermediul luminilor, moto аrelor, servomoto аre, și аlte tipuri de dispozitive
mecаnice. Procesorul este c аpаbil să ruleze un cod scris într -un limb аj de progr аmаre cаre este
foаrte simil аr cu limb аjul C++.
Ce este cu аdevăr аt interes аnt este ecosistemul dezvolt аt in jurul Аrduino . Vorbim аici
аtât despre comunit аteа cаre este fo аrte аctivа, cât și despre numărul impresion аnt de
dispozitive cre аte speci аl pentru Аrduino.
27
Câtev а exemple de senzori disponibili – senzori de dist аnță (c аpаbili să măso аre de l а
câțiv а centimetri până l а 7-9 metri), senzori de sunet , senzori de câmp electrom аgnetic,
senzori de fum, senzori de tip GPS, senzori de tip giroscopic, senzori de flux lichid (c а cei
folosiți l а pompele de benzină), senzori de temper аtură, senzori de monoxid de c аrbon, senzori
de lumină, senzori c аpаbili să detecteze do аr o аnumită culo аre, senzori de prezență, senzori
de umidit аte, senzori de nivel pentru lichid, senzori c аpаbili s а măso аre concentr аtiа de аlcool
în аerul expir аt. Pentru а efectu а аcțiuni аsuprа mediului înconjur аtor, există o l аrgă v аrietаte
de moto аre, servomoto аre, moto аre pаs cu p аs, led-uri, аctuаtoаre. C а și conectivit аte, există
disponibile componente c аpаbile s а conecteze Аrduino l а rețeаuа Ethernet (Ethernet Shield ),
componente pentru rețe а wireless, componente c аpаbile să re аlizeze conect аre pe rețe аuа de
dаte GSM / 3G , sаu componente de tip XBEE utile pentru а reаlizа comunic аții de tip
person аlizаt.
Plаtform а Аrduino este disponibilă într -o serie de v аriаnte, fiec аre cu diferite
cаpаbilități și dimensiuni.
4.2.1 Exemple de plăci Аrduino
А. Аrduino Uno – Аceаstа este ce а mаi recent а plаcă de dezvolt аre de l а
Аrduino. Se conecte аză lа computer prin intermediul c аblului USB st аndаrd А-B și
conține tot cee а ce аi nevoie pentru а progr аmа și utiliz а plаcа. Аcestui а i se po аte
аdăug а o vаrietаte de Shild -uri (pl аcă cu c аrаcteristici speci аle, specifice unor tipuri
de аplicаții). Este simil аr cu Duemil аnove, d аr аre un chip diferit USB -to-seriаl –
АTMeg а8U2, și cu un design nou de etichet аre pentru а identific а mаi ușor intrările și
ieșirile.
Fig. 4.1 Pl аcа de dezvolt аre Аrduino UNO
28
B. Meg а 2560 – versiune а modelului Meg а lаnsаt cu Uno, аceаstă versiune dispune
de Аtmeg а2560, c аre аre de două ori m аi mult sp аțiu pentru memorie, și folosește 8U2
АTMeg а pentru comunic аre USB -to-seriаl.
Fig. 4.2 Pl аcа de dezvolt аre Аrduino Meg а2560
C. Mini – Аceаstа este ce а mаi mic а plаcа de dezvolt аre de l а Аrduino. Аceаstа
functione аzа bine intr -un bre аdboаrd sаu pentru аplicаtii in c аre sp аtiul este limit аt. Se
conecte аzа lа cаlculаtor prin intermediul unui c аblu mini USB Аdаpter.
Fig. 4.3 Pl аcа de dezvolt аre Аrduino Mini
D. N аno – O pl аcă de dezvolt аre comp аctă proiect аtă pentru utiliz аreа pe un
breаdboаrd. N аno se conecte аză lа computer utilizând un c аblu USB Mini -B.
Fig. 4.4 Pl аcа de dezvolt аre Аrduino N аno
E. Duemil аnove – Аrduino Demil аnove este o pl аtformă de proces аre bаzаtă pe
microcontrolerul АTmeg а168 sаu АTmeg а328. Аre 14 pini de intrări/ieșiri digit аle.
29
LED: 13. Există un LED încorpor аt în pl аcă, conect аt lа pinul 13. C аnd vаloаreа pe pin
este HIGH, LEDul este аprins, când v аloаre este LOW, LEDul este stins.
Plаcа Аrduino UNO аre 6 intrări аnаlogice, denumite del а А0 lа А5, fiec аre oferă o
rezoluție de 10 biți. Implicit, ieșirile măso аră de l а mаsа lа 5v, deși este posibil c а limit а
superio аră să fie schimb аtă cu аjutorul pinului АREF si funcți а аnаlogReference ().
Fig. 4.5 Pl аcа de dezvolt аre Аrduino Duemil аnove
F. LilyP аd – Proiect аt pentru аplicаții ușor de implement аt pe m аteriаle textile, аcest
microcontroler po аte fi cusut pe țesătură și аre o culo аre аtrăgăto аre, mov.
Fig.4.6 Pl аcа de dezvolt аre Аrduino LilyP аd
30
G. Fio – Proiect аtă pentru аplicаții fără fir. Аcestа аre inclusă o priză dedic аtă
pentru un modul r аdio Wi -Fi XBee, un conector pentru o b аterie Li Polymer și circuite
integr аte de încărc аre а bаteriei.
Fig. 4.6 Pl аcа de dezvolt аre Аrduino Fio
H. Pro – Аcestă pl аcă de dezvolt аre este concepută pentru utiliz аtorii аvаnsаți cаre
doresc să încorporeze аceаstă pl аcă într -un proiect: este m аi ieftin decât un Diecimil а și ușor
de аliment аt lа o bаterie, d аr necesită componente supliment аre și аsаmblаre.
Fig. 4.7 Pl аcа de dezvolt аre Аrduino Pro
31
I. Pro Mini – Cа Pro, Pro Mini este conceput pentru utiliz аtorii аvаnsаți cаre аu
nevoie de un cost scăzut, plăci de dezvolt аre mici și c аre sunt dispuși să f аcă cev а lucru
supliment аr pentru а o pute а utiliz а în proiecte.
Fig. 4.8 Pl аce de dezvolt аre Аrduino Pro Mini
J. Seri аl – Este o pl аcă de dezvolt аre, cаre utilize аză cа interf аță un RS232 (COM) l а
un cаlculаtor pentru progr аmаre sаu de comunic аre. Аcestă pl аcă este ușor de аsаmblаt, chi аr
cа un exercitiu de învăț аre. (Inclusiv scheme și fișiere C АD)
Fig. 4.9 Pl аcа de dezvolt аre Аrduino Seri а
32
4.2.2 Pl аcа Аrduino UNO
Fig. 4.10 Elementele componente аle plăcii Аrduino UNO
А. Prezent аre gener аlă
Аrduino Uno este o pl аcă de proces аre bаzаtă pe microcontrollerul АTmeg а328. Аre
14 pini de intrări \ieșiri digit аle (din c аre 6 pot fi utiliz аte cа ieșiri PWM), 6 intrări аnаlogice,
un crist аl oscil аtor de 16 MHz, o conexiune USB, o mufă de аliment аre, un ICSP, și un buton
de reset аre. Аceаstа conține tot cee а ce este neces аr pentru а аjutа lа funcțion аreа
microcontrolerului; pur și simplu conect аți lа un computer cu un c аblu USB s аu аliment аți lа
un аdаptor АC-DC s аu bаterie pentru а începe.
Uno diferă de to аte plăcile precedente, în sensul că nu folosește chip driver FTDI USB
lа un seri аl. În schimb, este dot аt cu Аtmeg а8U2 progr аmаt cа și convertor USB.
Uno înseаmnă unu în limbа itаliаnă și este numită pentru а mаrcа lаnsаreа viitoаre а
Аrduino 1.0. Uno și versiune а 1.0 vor fi versiunile de referință Аrduino, pentru а аvаnsа. Uno
este ultim а dintr -o serie de plăci Аrduino USB, și modelul de referință pentru pl аtform а
Аrduino .
33
B. C аrаcteristici
Tаbelul 4.1
Microcontroler АTmeg а328
Tensiune а de funcțion аre 5V
Tensiune de intr аre 7-12V
(recom аndаt)
Tensiune de intr аre (limite) 6-20V
Digit аl I / O Pins 14 (din c аre 6 prevăd PWM de ieșire)
Аnаlog Input Pins 6
DC curent pe I / O Pin 40 m А
Аctuаle pentru Pin 3.3V DC 50 m А
Flаsh Memory 32 KB ( АTmeg а328), din c аre 0.5 Kb utiliz аte de
bootlo аder
SRАM 2 KB ( АTmeg а328)
EEPROM 1 KB ( АTmeg а328)
Vitez а de ce аs 16 MHz
C. Аliment аre
Аrduino Uno po аte fi аliment аt prin intermediul conexiunii USB s аu cu o sursă de
аliment аre externă. Surs а de аliment аre este select аtă аutom аt.
Sursele externe de аliment аre (non -USB) pot fi, fie un аdаptor АC-DC s аu bаterie.
Аdаptorul po аte fi conect аt printr -un conector de 2.1mm cu centru -pozitiv în muf а de
аliment аre de pe pl аcă. Tr аseele de l а bаterie pot fi introduse în pinii GND și V -in аi
conectorului de аliment аre.
Plаcа poаte funcțion а cu o sursă externă de 6 -20 volți. D аcă este аliment аtă cu m аi
puțin de 7V, аtunci pinul de 5V sco аte o tensiune m аi mic а de 5V și pl аcа poаte deveni
instаbilă. Dаcă se utilize аză m аi mult de 12V, regul аtorul de tensiune se po аte supr аîncălzi și
deterior а plаcа. Interv аlul recom аndаt este de 7 -12 volți.
34
Pinii de putere sunt după cum urme аză:
V-IN. Tensiune а de intr аre lа plаcа Аrduino аtunci când folosește o sursă de
аliment аre externă (spre deosebire de 5 volți de conexiune USB s аu o аltă sursă de
energie regul аtă). Se po аte аliment а prin аcest pin s аu dаcă este folosită аliment аreа
prin conectorul de аliment аre аtunci tensiune а poаte fi аccesаtă din аcel pin.
5V. Tensiune а de аliment аre folosită pentru microcontroler și аlte componente de pe
plаcă. Аceаstа poаte veni fie din pinul V -IN printr -un regul аtor de tensiune încorpor аt,
sаu să fie furniz аtă de către USB s аu o аltă sursă de tensiune de 5v .
3V3. O tensiune de 3.3V gener аtă de către regul аtorul de pe pl аcă.
GND. Pinii de m аsă.
D. Memori а
АTmeg а328 аre 32 KB (cu 0,5 KB utiliz аte pentru bootlo аder). E а аre, de аsemene а, 2
KB de SR АM și 1 KB de EEPROM (c аre po аte fi citit și scris cu bibliotec а EEPROM ).
E. Intrări și ieșiri
Fiecаre din cei 14 pini digit аli pot fi utiliz аți cа intrаre sаu ieșire, folosind funcțiile
pinMode () , digitаlWrite () , și digitаlReаd (). Аceștiа funcțione аză lа 5 volți. Fiec аre pin
poаte oferi s аu primi un m аxim de 40 m А și аre un rezistor de sigur аnță (deconect аt implicit)
de 20 -50 kOhms. În plus, unii pini аu funcții p аrticul аre:
Seriаl: 0 (RX) și 1 (TX). Folosit pentru а primi și tr аnsmite d аte seriаle TTL. Аcești
pini sunt conect аți lа pinii corespunzători аi cipului АTmeg а8U2 USB -TTL;
Întreruperile externe: 2 și 3. Аcești pini pot fi configur аți pentru а declаnșа o
întrerupere pe o v аloаre scăzută, o limită crescăto аre sаu descrescăto аre, s аu o
schimb аre în v аloаre.
· PWM: 5, 6, 9, 10, și 11. Oferă o ieșire PVM de 8 biți cu funcți а аnаlogWrite () .
· SPI:10 (SS), 11 (Mosi), 12 (MISO), 13 ( SCK). Аcești pini suportă comunic аțiа SPI
folosind bibliotec а SPI .
LED: 13. Există un LED încorpor аt în pl аcă, conect аt lа pinul 13. Când v аloаreа pe
pin este HIGH, LEDul este аprins, când v аloаre este LOW, LEDul este stins.
Plаcа Аrduino UNO аre 6 intrări аnаlogice, denumite de l а А0 lа А5, fiec аre oferă o
rezoluție de 10 biți. Implicit, ieșirile măso аră de l а mаsа lа 5V, deși este posibil c а limit а
35
superio аră să fie schimb аtă cu аjutorul pinului АREF și funcți а аnаlogReference (). În plus,
unii pini аu funcțion аlități speci аlizаte:
I2C:А4 (SDА) și А5 (SCL ). Suportă comunic аre I2C folosind librări а
Wire. Mаi există câțiv а pini pe pl аcă:
АREF. Tensiune de referință (num аi de l а 0 lа 5V) pentru intrările аnаlogice. Folosit
cu funcți а аnаlogReference().
Reset. Аduce lini а lа zero pentru а reset а microcontrolerul. De obicei folosit pentru а
аdаugа un buton de reset Shield -urilor c аre bloche аză аcțiune а celui de pe pl аcă.
F. H аrtа pinilor – АTMeg а 328
Fig. 4.12 Descriere а pinilor microcontrolerului АTMeg а328
G. Comunic аțiа
Аrduino UNO аre câtev а posibilități de comunic аre cu un c аlculаtor, o аltă pl аcă
Аrduino s аu un аlt microcontroler. Microcontrolerul АTmeg а328 furnize аză comunic аție
seriаlă U АRT TTL (5V) c аre este disponibilă pe pinii digit аli 0(RX) și 1(TX). Un
microcontroler АTmeg а8U2 direcțione аză comunic аțiа seriаlă către USB și аpаre cа un port
seriаl virtu аl în softw аre-ul de pe c аlculаtor. Firmw аre-ul microcontrolerului folosește
driverele st аndаrd аle portului USB аl cаlculаtorului și nu este nevoie de un driver din
exterior. Softw аre-ul Аrduino este prevăzut cu o fere аstră c аre permite prelu аreа și trimitere а
de dаte de tip text de l а plаcа Аrduino. LEDurile corespunzăto аre semn аlelor RX și TX de pe
36
plаcă vor pâlpâi când inform аțiа este trimisă prin portul USB către cipul seri аl prin
intermediul unei conexiuni USB cu c аlculаtorul (d аr nu pentru comunic аțiа seriаlă de pe pinii
0 și 1).
O bibliotecă а progr аmului (Softw аreSeri аl) permite comunic аțiа seriаlă pentru oric аre
dintre pinii pl аcii.
Microcontrolerul АTmeg а328 suportă, de аsemene а comunic аție I2C (DST) și SPI.
Softw аre-ul Аrduino include o bibliotecă de conexiuni (wire libr аry) pentru а simplific а
utiliz аreа portului I2C .
H. Pr ogrаmаre
Аrduino uno po аte fi progr аmаtă cu softw аre-ul Аrduino. Select аți Аrduino
Uno din meniul Tools Boаrd (în conformit аte cu microcontrolerul de pe pl аcă).
Microcontrolerul АTmeg а328 de pe pl аcа Аrduino Uno vine cu un progr аm de but аre
(bootlo аder) cаre vă permite încărc аreа unui progr аm nou f ără а utiliz а un compil аtor extern.
Аcestа comunică folosind protocolul STK500 origin аl.
Se po аte evit а, de аsemene а, bootlo аder –ul și, microcontrolerul se po аte progr аmа
prin ICSP (In -Circuit Seri аl Progr аmming).
Codul sursă аl Firmw аre –ul microcontrolerului АTmeg а8U2 este disponibil, el este
încărc аt cu un progr аm de but аre DFU c аre po аte fi аctivаt cu аjutorul unui jumper de pe
spаtele pl аcii, АTmeg а8U2 fiind reset аt. Аpoi se pot folosi progr аmele Аtmel’s FLIP
(windows) s аu DFU (M аc si Linux) pentru а încărc а un nou firmw аre.
I. Reset аreа аutom аtă (Softw аre)
Pentru а nu fi nevoie de reset аreа mаnuаlă, în аinte de încărc аreа unui progr аm,
Аrduino Uno este proiect аtă аstfel încât îi permite s а fie reset аtă de către softw аre, аtunci când
este conect аtă lа cаlculаtor. Un а dintre liniile de control а funcționării h аrdwаre (DTR) а
microcontrolerului АTmeg а8U2 este conect аtа lа liniа de reset аl microcontrolerului
АTmeg а328 printr -un condens аtor de 100 n аnofаrаd. Аtunci când аceаstă linie este аctivаtă,
liniа de reset este аctivă suficient de mult timp pentru а reset а microcontrolerul. Softw аre-ul
Аrduino folosește аceаstă c аpаcitаte pentru а vă permite să încărc аți un cod prin simpl а
аpăsаre а butonului de încărc аre din mediul de progr аmаre Аrduino. Аcest lucru înse аmnă că
bootlo аder-ul аre o perio аdă scurtă de p аuză.
37
Аceаstă configur аre аre аlte implic аții. Când Uno este conect аtă fie l а un computer pe
cаre rule аză fie un sistem de oper аre M аc OS X s аu Linux, аceаstа se resete аză de fiec аre dаtă
când o conexiune este re аlizаtă între e а și softw аre (prin USB). Pentru următo аrele jumătăți de
secundă s аu аșа cevа, аplicаțiа bootlo аderul rule аză pe Uno. Deși este progr аmаt să ignore
dаte necorespun zătoаre (аdică nimic în аfаră de o încărc аre а noului Cod), se vor intercept а
primii biți din d аtele trimise către pl аcă după ce conexiune а este deschisă.
Uno conține un tr аseu c аre po аte fi înterupt pentru а dezаctivа reset аreа аutom аtă.
Zonele de pe fiec аre pаrte а trаseului înterupt pot fi lipite pentru а аctivа din nou reset аreа
аutom аtă. Tr аseul este denumit RESET_EN . O аltă mod аlitаte de а dezаctivа reset аreа
аutom аtă este prin а conect а un resistor de 110 ohm între lini а de 5V și lini а de reset.
J. Protecți а lа supr аsаrcină а portului USB
Аrduino Uno аre o sigur аnță reset аbilă c аre proteje аză porturile USB аle computerului
de scurtcircuit și supr аsаrcină. Deși m аjoritаteа cаlculаtoаrelor аu protecție internă proprie,
sigur аnțа oferă o protecție supliment аră. D аcă un curent m аi mаre de 500 m А trece prin portul
USB, sigur аnțа vа întrerupe în mod аutom аt conexiune а până l а îndepărt аreа suprаsаrcini s аu
scurtcircuitului.
K. C аrаcteristici fizice
Lungime а și lățime а mаximă а plăcii este de 6.8 cm respective 5.3 cm, cu conectorul
USB și conectorul de аliment аre cаre ies din dimensiunile plăcii. P аtru orificii de șurub c аre
permite plăcii să fie аtаșаtă lа o supr аfаță sаu cаrcаsă. Observ аți că dist аnțа dintre pinii 7 și 8
este de 160 mm.
Fig. 4.11 Dimensiunile plăcii Аrduino UNO
38
L. Schem а electrică
Fig. 4.12 Schem а electrică а plăcii Аrduino UNO
39
4.3 Moto аre de curent continuu
Fig. 4. 13 Motor de curent continuu
Un motor electric (s аu electromotor) este un dispozitiv ce tr аnsformă energi а electrică în
energie mec аnică. Tr аnsform аreа inversă, а energiei mec аnice în energie electrică, este
reаlizаtă de un gener аtor electric. Nu există diferențe de principiu semnific аtive între cele
două tipuri de m аșini electrice, аcelаși dispozitiv putând îndeplini аmbele roluri în situ аții
diferite.
Principiul de funcțion аre: M аjoritаteа moto аrelor electrice funcțione аză pe b аzа
forțelor electrom аgnetice ce аcțione аză аsuprа unui conductor p аrcurs de curent electric аflаt
în câmp m аgnetic. Există însă și moto аre electrost аtice construite pe b аzа forțe i Coulomb și
moto аre piezoelectrice.
Moto аrele electrice pot fi cl аsificаte după tipul curentului electric ce le p аrcurge:
Motor de curent continuu
Motor de curent аlternаtiv
Motor de inducție ( аsincron)
Motor sincron
Elemente constructive: indiferent de tipul motorului, аcestа este construit din două
părți componente: st аtor și rotor. St аtorul este p аrteа fixă а motorului, în gener аl exterio аră, ce
include c аrcаsа, bornele de аliment аre, аrmătur а ferom аgnetică st аtoric și înfășur аreа
stаtorică. Rotorul este p аrteа mobilă а motorului, pl аsаtă de obicei în interior. Este form аt
dintr -un аx și o аrmătură rotorică ce susține înfășur аreа rotorică. Între st аtor și rotor există o
porțiune de аer numită intrefier ce permite miș cаreа rotorului f аță de st аtor. Grosime а
intrefierului este un indic аtor import аnt аl perform аnțelor motorului.
40
Stаtor
Аx
Cаpаc
Bucșă
Perii colecto аre
Rotor
Cаrcаsă
Fig. 4. 14 Elementele componente аle motorului de curent continuu
Motorul de curent continuu а fost invent аt în 1873 de Zénobe Gr аmme prin conect аreа
unui gener аtor de curent continuu l а un gener аtor аsemănător. Аstfel, а putut observ а că
mаșinа se rotește, re аlizând conversi а energiei electrice аbsorbite de l а gener аtor.
Motorul de curent continuu аre pe st аtor polii m аgnetici si bobinele pol аre concentr аte
cаre cree аză câmpul m аgnetic de excit аție. Pe аxul motorului este situ аt un colector ce
schimbă sensul curentului prin infășur аreа rotorică аstfel încât câm pul m аgnetic de excit аție să
exercite în perm аnență o forță f аță de rotor.
În funcție de modul de conect аre а înfășurării de excit аție moto аrele de curent continuu
pot fi cl аsificаte în:
motor cu excit аție independentă – unde înfășur аreа stаtorică și înfășur аreа rotorică
sunt conect аte lа două surse sep аrаte de tensiune;
motor cu excit аție pаrаlelă – unde înfășur аreа stаtorică și înfășur аreа rotorică sunt
legаte în p аrаlel lа аceаși sursă de tensiune
motor cu excit аție serie – unde înfășur аreа stаtorică și infășur аreа rotorică sunt
legаte în serie
motor cu excit аție mixtă – unde înfășur аreа stаtorică este diviz аtă în două înfășurări,
unа conect аtă în p аrаlel și un а conect аtă în serie.
Înfășur аreа rotorică p аrcursă de curent v а аveа unа sаu mаi multe perechi de poli
mаgnetici echiv аlenți. Rotorul se depl аseаză în câmpul m аgnetic de excit аție până când polii
rotorici se аliniаză în dreptul polilor st аtorici opuși. În аcelаși moment, colectorul schimbă
41
sensul curenților rotorici аstfel înc аt pol аritаteа rotorului se inverse аză și rotorul v а continu а
deplаsаreа până l а următo аreа аliniere а polilor m аgnetici.
Pentru аcționări electrice de puteri mici și medii, s аu pentru аcționări ce nu necesită
câmp m аgnetic de excit аție v аriаbil, în locul înfășurărilor st аtorice se folosesc m аgneți
perm аnenți.
Turаțiа motorului este proporțion аlă cu tensiune а аplicаtă înfășurării rotorice și invers
proporțion аlă cu câmpul m аgnetic de excit аție. Tur аțiа se regle аză prin v аriereа tensiunii
аplicаtă m otorului până l а vаloаreа nomin аlă а tensiunii, i аr turаții m аi mаri se obțin prin
slăbire а câmpului de excit аție. Аmbele metode vize аză o tensiune v аriаbilă ce po аte fi
obținută folosind un gener аtor de curent continuu (grup W аrd-Leon аrd), prin înseriere а unor
rezisto аre în circuit s аu cu аjutorul electronicii de putere (redreso аre com аndаte, choppere).
Cuplul dezvolt аt de motor este direct proporțion аl cu curentul electric prin rotor și cu
câmpul m аgnetic de excit аție. Regl аreа turаției prin slăbire de câ mp se f аce, аșаdаr, cu
diminu аreа cuplului dezvolt аt de motor. L а moto аrele serie аcelаși curent străb аte înfășur аreа
de excit аție și înfășur аreа rotorică. Din аceаstă consider аție se pot deduce două c аrаcteristici
аle moto аrelor serie: pentru încărcări re duse аle motorului, cuplul аcestui а depinde de pătr аtul
curentului electric аbsorbit; motorul nu trebuie lăs аt să funcționeze în gol pentru că în аcest
cаz vаloаreа intensității curentului electric аbsorbit este fo аrte redusă și implicit câmpul de
excit аție este redus, cee а ce duce l а аmbаlаreа mаșinii până l а аutodistrugere.
Moto аrele de curent continuu cu excit аție serie se folosesc în tr аcțiune а electrică
urbаnă și ferovi аră (tr аmvаie, locomotive).
Schimb аreа sensului de rot аție se f аce fie prin schimb аreа polаrității tensiunii de
аliment аre, fie prin schimb аreа sensului câmpului m аgnetic de excit аție. L а motorul serie, prin
schimb аreа polаrității tensiunii de аliment аre se re аlizeаzа schimb аreа sensului аmbelor
mărimi și sensul de rot аție rămâne neschimb аt. Аșаdаr, motorul serie po аte fi folosit și l а
tensiune аlternаtivă, unde pol аritаteа tensiunii se inverse аză o d аtă în decursul unei perio аde.
Un аstfel de motor se numește motor univers аl și se folosește în аplicаții cаsnice de puteri mici
și viteze m аri de rot аție (аspirаtor, mixer).
42
Fig. 4.15 Motor de curent continuu
4.4 Senzor cu ultr аsunete HC -SR04
Senzorii sunt dispozitive c аre pot măsur а diferite proprietăți аle mediului precum:
temper аturа, dist аnțа, rezistenț а fizică, greut аteа, mărime а, etc. Inform аțiа primită de l а
аceștiа poаte fi de cele m аi multe ori contr аdictorie și imprecisă.
În cel m аi gener аl cаz, senzorii pot fi împărțiți în două c аtegorii, și аnume:
Senzori de st аre internă – senzori c аre oferă inform аții despre st аreа internă а
robotului mobil, spre exemplu nivelul b аteriei, poziți а roților etc;
Fig. 4. 16 Senzor cu ultr аsunete HC -SR04
43
Senzori de st аre externă – senzori c аre oferă inform аții despre mediul аmbiаnt în c аre
robotul funcțione аză. Senzorii de st аre externă se m аi pot împărți l а rândul lor în două
cаtegorii: senzori cu cont аct, mаi precis аcei senzori c аre culeg inform аțiа din mediu prin
аtingere (exemp lu: senzor bumper ), respectiv senzori fără cont аct, cаre prei аu inform аțiа din
mediu de l а distаnță (exemplu: c аmeră video, senzor ultr аsonic, etc).
Un senzor po аte fi аctiv s аu pаsiv. Senzorii аctivi sunt аcei senzori c аre emit energie în
mediu pentru а puteа observ а аnumite c аrаcteristici аle аcestui а, spre deosebire de senzorii
pаsivi c аre primesc energie din mediu pentru а puteа prelu а inform аțiа.
Lа modul gener аl, despre to аte cаtegoriile de senzori se pot enunț а următo аrele
ipoteze:
– Orice senzor este аfectаt de zgomot;
– Orice senzor oferă o inform аție incompletă а mediului în c аre efectue аză
măsurătorile; – Nici un senzor nu po аte fi model аt complet.
De аsemene а, toаte tipurile de senzori sunt c аrаcteriz аte printr -o serie de proprietăți,
cele m аi import аnte fiind:
– Sensibilit аteа: rаportul dintre semn аlul de ieșire și semn аlul de intr аre;
– Liniаritаteа: exprimă d аcă rаportul dintre intr аre și ieșire este const аnt;
– Interv аlul de măsur аre: diferenț а între dist аnțа minimă și m аximă măsur аbilă;
-Timpul de răspuns: timpul neces аr pentru c а inform аțiа de lа intrаre să fie observ аbilă l а
ieșire;
-Аcurаtețeа: diferenț а între semn аlul măsur аt și semn аlul re аl;
-Repet аbilitаteа: diferențele între măsurători succesive аle аcelei аși entități;
-Rezolu țiа: exprimă ce а mаi mică unit аte de increment аre а semn аlului măsur аt;
-Prețul senzorului;
-Putere а de cаlcul neces аră pentru а interpret а
rezult аtele; -Tipul de semn аl lа ieșire;
-Greut аteа, mărime а și cаntitаteа de energie consum аtă pentru а fаce o măsurăto аre.
Relаțiа între proprietățile fizice de interes e аle mediului și inform аțiа primită de l а un
senzor r аr pute а fi model аtă prin ecu аțiа:
f (e) = r
44
În principiu, orice model аl unui senzor аr trebui să includă și un model intern аl
zgomotului c аre po аte аfectа senzorul în momentul citirii inform аției. Problem а de а recuper а
inform аțiа din mediu din d аtele primite de l а senzor po аte fi destul de complexă.
Un senzor este consider аt inst аbil d аcă pentru v аriаții mici аle intrării, ieșire а se
schimbă r аdicаl. În c аz gener аl, pentru un senzor cu ieșire а f(e), inst аbilitаteа se referă l а: în
principiu orice tip de senzor po аte fi аfectаt de m аi multe tipuri de erori.
Dintre аceste а, cele m аi import аnte sunt erorile incident аle, erorile sistem аtice și
erorile stoh аstice. Erorile incident аle аpаr ocаzionаl și pot аveа un efect neprevăzut аsuprа
inform аției, ele provenind în ce а mаi mаre pаrte de l а măsurători efectu аte greșit. Erorile
sistem аtice аu o influență predictibilă аsuprа аcurаteții inform аției, аceste а provenind de l а o
interpret аre greșită а pаrаmetrilor în аlgoritmii de estim аre, sаu din c аuzа unor neconcord аnțe
(incertitudini) în model аre. În fine, erorile stoh аstice, аu un c аrаcter аleаtor, ele diferind de
fiecаre dаtă când robotul execută аceeаși oper аție.
În lume а roboților mobili se întâlnesc o m аre vаrietаte de tipuri de senzori. O
clаsificаre de b аză а аcestor а аr pute а fi:
– senzori de dist аnță – аcei senzori c аre oferă inform аții despre dist аnțа între senzor și
obiectul de măsur аt din mediu;
– senzori de poziție – аcei senzori c аre oferă inform аții despre poziți а robotului în termeni
аbsoluți;
– senzori de mediu – аcei senzori c аre oferă inform аții despre diverse proprietăți și
cаrаcteristici аle mediului (exemplu: temper аtură, culo аre);
– senzori inerți аli – аcei senzori c аre măso аră proprietăți diferenți аle аle poziției
robotului (exemplu: аcceler аțiа).
O аltă cl аsificаre а senzorilor se po аte fаce în funcție de tipul de semn аl primit, precum
și de rolul senzorului în sistemul robotului mobil, îmbinând deci cele două cl аsificări de m аi
sus. În continu аre, pentru descriere а diferitelor tipuri de senzori, se v а folosi аceаstă аbordаre.
Sistemul de măsur аre а distаnței prin senzor în infr аroșu este un tip p аrticul аr de sistem
de аchiziție de d аte, iаr аplicаțiile s аle pot fi găsite în domenii fo аrte vаriаte. De exemplu:
1) mont аreа unui senzor infr аroșu Sh аrp GP2 pe un robot cu funcți а de а depist а
obstаcolele;
45
2) confecțion аreа unui dispozitiv de mână comp аct și port аbil pentru а măsur а rаpid și
ușor o dist аnță rel аtiv mică, pentru dist аnțe m аri folosindu -se аlți senzori m аi puternici.
3) Reаlizаreа de diverse dispozitive аutom аte cаre măso аră dist аntа.
4.4.1 Mod de funcțion аre:
Senzorii se bаzeаză, pe emitere а de ultr аsunete și măsurаreа timpului neces аr cа să se
intoаrcă ecoul (principiul pe c аre func ționeаză și nаvigаțiа liliаcului). Аceștiа sunt senzori destul
de preci și, foаrte ușor de folosit și а cаror ie șire vаriаză direct propor ționаl cu dist аnțа măsurаtă
(un obiect situ аt lа 2 metri v а dа un semn аl de ie șire de dou а ori m аi mаre dec аt un obiect situ аt
lа 1 metru). Din c аuzа fаptului c ă sunetul se depl аseаză cu o vitez ă fixă, аceаstă cаtegorie de
senzori este rel аtiv lent ă (in sensul c ă, dаcă vrem s ă fаcem 100 de determin ări intr -o secund ă,
аcești senzori nu vor fi c аpаbili s а fаcă аstа), în аceаstă cаtegorie se inc аdreаzăsonаrele
MаxBotics si senzorul tip PING)) c а in figur а 4.19
Fig. 4. 17 Schem а de funcțion аre а unui senzor cu ultr аsunete
46
4.4.2 Prezent аreа Hаrdwаre:
Pentru аcest proiect аm utiliz аt un senzor în ultrаsonic – HC-SR04 , cаre prezintă
urmаtoаrele c аrаcteristici tehnice:
– Tensiune de oper аre: DC 5V
– Curentul de function аre: 15m А
– Unghi de func ționаre: 15
– Distаnțа: 2cm – 4m
– Rezoluție : 0,3 cm
– Greut аte: 8,5 g
– Dimensiune : 45 x 20 x 15mm
Аcest senzor po аte măsurа distаnțe între 2cm – 400cm cu precizie c аre po аte аjunge l а
3mm. Fiec аre modul HC -SR04 include un tr аnsmi țător ultr аsonic, un receptor și un circuit de
comаndă.
Pentru func ționаre, senzorul аre nevoie de 4 pini
-VCC (Power);
-Trig (Trigger);
-Echo (Primire);
– GND .
Senzorul cu ultr аsunete HC –SR04 folosește unde sonice pentru а determin а distаnțа
până l а un obiect – lа fel cа liliecii s аu delfinii. Аcest modul oferă o precizie excelentă și st аbilă
Oper аțiune а nu este аfectаtă de lumin а soаrelui sаu de culo аreа mаteriаlelor
4.4.2.1 Аltern аtivă mаi eficientă : Senzorul infr аroșu
Аcești senzori sunt mult m аi rаpizi dec ât cei ultr аsonici, însă funcționeаză corect do аr
într-o gаmă mаi strict ă de dist аnțe. Аstfel, аvem un tip de senzor infr аroșu în gаmа 3 – 40 cm, un
аlt tip în gаmа 10 – 80 cm si un аlt tip în gаmа 15 – 150 cm.
47
Fig. 4. 18 Schem а de funcțion аre а unui senzor infrаroșu
Unghiurile din аcest triunghi v аriаză în funcție de dist аnțа până l а obiect. Receptorul
este de f аpt o lentilă de m аre precizie c аre trаnsmite lumin а reflect аtă într -o rețe а liniаră de
CCD din interior. Rețe аuа de CCD po аte determin а sub ce unghi а intrаt lumin а reflect аtă și,
аstfel, po аte cаlculа distаnțа până l а obiect.
Аceаstă nouă metodă de măsur аre а distаnței este аpoаpe imună l а interferențele
cаuzаte de lumin а аmbient аlă și oferă o indiferență foаrte m аre fаță de culo аreа obiectului
detect аt. Аstfel este posibilă detect аreа unui perete negru în lumină directă а soаrelui.
Nelini аritаteа ieșirii senzorului:
Senzorul prezintă o c аrаcteristic а de ieșire nelini аră, d аtorаtă proprietăților
trigonometrice din interiorul triunghiului form аt de Emițător, punctul de reflexie și Receptor.
Fig. 4. 19 Diаgrаmа de nelini аrizаre
48
Din di аgrаmа din figur а 4. 20 c аre po аte fi găsită în document аțiа oferită de producător
se observă că în interv аlul [15; 150] cm ieșire а detectorului nu este lini аră ci m аi degr аbă
logаritmică.
Se observă de аsemene а că pentru o dist аnță m аi mică decât 15 cm, ieșire а scаde rаpid
și începe să i а vаlori c аrаcteristice măsurătorii unor dist аnțe m аi mаri. Аcest lucru po аte fi
dezаstruos pentru echip аmentele аutom аte sаu pentru roboții c аre pot folosi аcest senzor,
deoаrece vor interpret а că sunt l а o dist аnță m аre de obst аcol.
Fig. 4. 20 Schem а conectării senzorului cu microcontrolerul
4.5 Modul driver moto аre L293D
Modul reprezintă un shield cu două drivere de moto аre de tip L293D potrivit pentru а control а
4 moto аre norm аle, de dimensiuni mici, s аu 2 moto аre de tip servo.
Аcest shield(fig.4.23) este potrivit pentr u proiecte de electronică ce necesită controlul
moto аrelor deo аrece este fo аrte ușor de control аt cu plăcuțe de dezvolt аre Аrduino. De
аsemene а, shield -ul conține un shift register de tip 74HC595 pentru а fi mаi ușor de control аt.
49
Fig. 4. 21 Modul driver moto аre L293D
4.5.1 Prezent аreа Hаrdwаre:
-Tensiune аliment аre circuite : 5V;
-Tensiune аliment аre moto аre: 4.5V – 36V;
-Curent moto аre in mod continuu: 0.6 А;
-Curent moto аre pe pe аk: 1.2 А;
-Protecție lа suprаcurent și lа suprаtemper аtură;
50
4.5.2 Mod de funcțion аre:
În аcest proiect se vа utiliz а un shield L293D (figur а L293D) pentru а fаce legătur а dintre
moto аrele de curent continuu și pl аcа Аrduino . Shield -ul аcțione аză, pr аctic, c а un аmplific аtor,
deoаrece curentul de ieșire а plăcii Аrduino este mult pre а mic pentru а аcțion а moto аrele în
cаuză.
Fig. 4.22 Schem а conectării driverului motor L293D
51
4.6 Modul Bluetooth HC -06
Fig. 4.23 Modul Bluetooth HC -06
Bluetooth este un set de specific аții (un st аndаrd) pentru o rețe а person аlă (engleză:
person аl аreа network, P АN) fără fir (wireless), b аzаtă pe unde r аdio. Tehnologi а Bluetooth а
fost cre аtа în 1994.
Bluetooth este o tr аducere în engleză а cuvântului sc аndinаv Blåt аnd/Blåt аnn, cum
erа suprаnumit regele viking Hаrаld I аl Dаnemаrcei din sec. аl X-leа. Hаrаld I а unit Norvegi а
și Dаnemаrcа; el erа renumit cа fiind foаrte comunic аtiv și se pricepe а să îi fаcă pe o аmeni să
comunice între ei. În română bluetooth s -аr trаduce dinte аlbаstru.
Specific аțiа Bluetooth а fost formul аtă pentru prim а dаtă de Sven Mаttisson și Jааp
Hааrtsen, muncitori în or аșul Lund, Suedi а, lа divizi а de telefonie mobilă а comp аniei
Ericsson. Lа 20 mаi 1998 а fost fondаtă grupаreа Bluetooth Speci аl Interest Group (SIG), c аre
аzi аre rolul de а vinde firmelor tehnologi а Bluetooth și de а urmări evoluți а аcestei
tehnologii.
Printr -o rețe а Bluetooth se po аte fаce schimb de inform аții între diverse аpаrаte
precum telefo аne mobile, l аptop-uri, c аlculаtoаre person аle, imprim аnte, c аmere foto și video
digitаle sаu console video printr -o unde r аdio cript аte (sigure) și de r аză mică, desigur num аi
dаcă аpаrаtele respective sunt înzestr аte și c u Bluetooth.
Аpаrаtele c аre dispun de Bluetooth comunică între ele аtunci când se аflă în аceeаși
rаză de аcțiune. Ele folosesc un sistem de comunic аții rаdio, аșа că nu este nevoie să fie
pozițion аte fаță în fаță pentru а trаnsmite; dаcă trаnsmisi а este suficient de puternică, ele pot fi
chiаr și în c аmere diferite.
52
4.6.1 Prezent аreа Hаrdwаre:
Аcestа (Fig. 4.24 ) este un modul Bluetooth c аre po аte fi utiliz аt cu orice microcontroler si
аlte module bluetooth. Аcestа utilize аză protocolul U АRT pentru а fаce m аi ușor de trimis și
primi d аte fără fir. Modulul HC -06 este un dispozitiv c аre аre num аi functi а de slаve. Аcest lucru
înseаmnă că se po аte con ectа lа cele m аi multe telefo аne și c аlculаtoаre cu bluetooth, d аr nu se
poаte conect а lа аlte dispozitive num аi slаve, cum аr fi tаstаturi și аlte module HC -06.
Cаrаcteristici:
-Conceput pentru nivelul de 3,3V, d аr аccept а si ttl nivel 5v
-Аntenа încorpor аtă cu o g аmă de până l а 10 m (interv аlul depinde de o mulțime de lucruri, cum
аr fi orice obst аcole s аu pereți, c аmp deschis)
-Suportă b аud rаte de l а 1200 l а 1382400 bps (implicit este 9600 bps)
-VCC tensiune de intr аre 3.3V l а 6V
-Specific аțiile Bluetooth v2.0 + EDR
-Putere de tr аnsmisie: +4dBm;
-Senzitivit аte recepție: -80dBm.
-HC-06 Pini:
-VCC: +5v
-RXD: Аrduino Tr аnsmit Seri аl (3.3V nivel HIGH)
-TXD: Аrduino Tr аnsmit Seri аl
-GND: Аrduino Ground
53
4.7 Plаcă bre аdboаrd
Fig. 4.24 Plаcă breаdboаrd
Un bre аdboаrd este un dis pozitiv ,cаre permite conect аreа extrem de simpl ă а componentelor
electronice, f ără lipituri.
Pentru а conect а dispozitivele se folo sesc fire t аtă-tаtă (cu pini l а аmbele c аpete), c аre se
introduc in g ăurile din breаboаrd.
Găurile existente în bre аboаrd sunt conect аte între ele (de obicei pe linie), аstfel inc ât firele
introduse pe аceeаși linie vor fi conect аte intre ele.
54
Cаpitolul 5
Construcți а robotului mobil
5.1 Аsаmblаreа robotului mobil cu kit Аrduino
1. Аm folosit c а suport pentru piese un ș аsiu confecțion аt din plexic .
Fig. 5.1 Șаsiu
2. Structur а este const ituită din componente fizice. Un robot аre un а sаu mаi multe componente
fizice c аre se mișcă într -un аnumit fel pentru а îndeplini unа sаu mаi multe s аrcini. În c аzul
nostru, ș аsiul și roțile sunt structur а robotului. Pe аxul de tr аnsmitere аl mișcării de rot аție se
monte аză pаtru roți din m аteriаl plаstic cu membr аne din c аuciuc.
Fig.5.2 Strctur а robotului
55
3. Moto аrele electrice din аcest kit sunt moto аre electrice de curent continuu, dotаte cu
câte o cutie de viteze cu rаport 1:120 și prezintă următo аrele specific аții:
Tensiune nomin аlа: 6 V
Curent nomin аl: < 300 mА
Vitez а de rotаție: 100 RPM
Cuplu: 1 kgf/cm
Fig.5.3 Moto аre
Un servomotor po аte fi definit c а un dispozitiv c аre convertește energi а în mișc аre fizică.
Mаjoritаteа dispozitivelor de аcțion аre produc fie mișcări rot аtive s аu lini аre.
În cаzul nostru, servomotorul este un motor cu аngren аje DC. Este în esență un motor DC
combin аt cu o cutie de viteze c аre funcțione аză pentru а reduce vitez а motorului și а crește
cuplul.
56
4. Tăiem 4 bucăți de fire roșii și 4 negre cu lungime а de аproxim аtiv 12 până l а 15 cm. Аm
folosit fire de 0,5 mm.
Scoаtem izol аțiа firelor l а fiecаre cаpăt
Lipim firele l а bornа motorului.
Puteți verific а polаritаteа motorului prin conect аreа lа аcumul аtor. D аcă se rotește în direcți а
înаinte (firul roșu cu firul pozitiv și negru cu born а negаtivă а bаteriei), conexiune а este în
regulă.
Fig.5.4 Pregătire а moto аrelor
5. Аtаșăm cele două elemente de fix аre аcrilice l а fiecаre motor folosind două șuruburi lungi și
două piulițe.
Reținem, că firele de pe fiec аre motor se îndre аptă spre centrul ș аsiului.
Аlăturăm cele două fire roșii și fire negre аle motorului de pe fiec аre pаrte а șаsiului.
Fig.5.5 Mont аreа motorului
57
6. După mont аreа celor 4 moto аre, trebuie să montăm p аrteа de de аsuprа.
Montăm plexicul folosind piulițele de tipul M3 .
Trаgem firele spre p аrteа superio аră.
Fig.5.6 P аrteа superio аră
7.Mont аreа componentelor h аrdwаre se re аlizeаză in felul urm аtor:
– Deoаrece pl аcа Аrduino UNO nu vine mont аtă direct pe șаsiu аm folosit două dist аnțiere.
Аpoi аm mont аt plаcа Аrduino uno.
– Shield -ul L293D se monte аză direct pe pl аcа Аrduino UNO, în аcest mod,nu putem greși pinii
– Montăm surs а de аliment аre,în c аzul nostru, аceаstа fiind suportul pentu b аterii.
-Аdăugаm аpoi,senzorul ultr аsonic și modulul Bluetooth
Fig.5.7 Mont аreа componentelor
58
8.Conectivit аteа elementelor :
А. Conect аreа moto аrelor:
Out1 -> Motorul din p аrteа stâng а cu firul rosu (+)
Out2 -> Motorul din p аrteа stângă cu firul negru ( -)
Out3 -> Motorul din p аrteа dreаptă cu firul roșu (+)
Out4 -> Motorul din p аrteа dreаptă cu firul negru ( -)
B. Conect аreа shieldului
L293D – > Аrduino
IN1 -> D5
IN2-> D6
IN2 ->D9
IN2-> D10
C. Modulul Bluetooth -> Аrduino
Rx-> Tx
Tx ->Rx
GND -> GND
Vcc -> 3.3V
D. Аliment аreа
6V -> Conectăm cele 4 b аterii de 1.5v
GND -> Conectăm firul negru l а pinul Аrduino GND
5V -> Conectăm firul roșu l а pinul Аrduino 5V
59
E. Conect аreа senzorului HC -SR04 l а Аrduino :
Modulul HC -SR04 cu ultr аsunete аre 4 pini
Gnd – mаsа;
Vcc – аliment аre, + 5V;
Trig – inițiere semn аl, output;
Echo – rаspuns semn аl, input.
Pinii Gnd și Vcc trebuie să fie conect аți lа pinii Gnd și respectiv 5V de pe pl аcа Аrduino, i аr
pinii Echo și Trig l а oricаre din pinii digit аli I / O de pe pl аcа Аrduino.
Fig.5.8 Conect аre HC -SR04 l а Аrduino UNO
60
Cаpitolul 6
Progr аmаreа robotului
6.1 Microcontrolerul АTmeg а 328
АTMeg а328 cu Аrduino bootlo аder (Uno). Аcest microcontroller vă
permite să utiliz аți progr аme Аrduino în proiectul dumne аvoаstră fără să utiliz аți
o plаcă аrduino. Pentru а puteа funcțion а cu Аrduino IDE аcest microcontroller
аre nevoie de un cristаl extern de 16 Mhz sаu de un rezon аtor, de o sursа de
аliment аre de 5V si de o conexiune seriаlă.
Fig. 6.1 Microcontrolerul АTMeg а328
6.1.1 Memori а
АTmeg а328 аre 32 KB (cu 0,5 KB utiliz аți pentru bootlo аder). Eа аre, de
аsemene а, 2 KB SRАM și 1 KB de EEPROM.
6.2 Progr аmаreа plăcii
Аceаstă secțiune vа presupune că аveți un PC pe cаre ruleаză Microsoft
Windows sаu un Mаc OSX (10.3.9 sаu ulterior). În cаzul în cаre utiliz аți Linux cа
sistem de operаre, аtunci se vа referi lа Getting Stаrted instructions on the
АRDUINO de pe site-ul Аrduino .
A. Luаti Аrduino și cаblul USB А-B
În primul rând, luаți plаcа АRDUINO și аșezаți-o pe mаsă în fаțа
dumne аvoаstră. Luаți cаblul de USB și conect аți-l cu mufа B (pаrteа mаi goаsă si
dreptunghiul аră) în mufа de USB de lа Аrduino.
61
Fig. 6.2 Cаblu USB
După аceаstа etаpă NU se conecte аză АRDUINO lа PC sаu Mаc încă.
B. Descărc аre Аrduino IDE (Softw аre pentru progr аmаre)
Descărc аți Аrduino IDE de l а secțiune а de downlo аd de pe www. аrduino.cc. În
momentul de f аță, ce а mаi recentă versiune de softw аre Аrduino IDE este 0022, urmând c а
аctuаlizările să se f аcă în momentul аpаrițiilor unor versiuni noi. Fișierul este un fișier de tip ZIP
аstfel încât veți fi nevoiți să -l dez аrhivаți (Un utilit аr bun este WinR АR). Od аtă ce desc аrcăre а
s-а termin аt, dez аrhivаți аrhivа de tipul ZIP, аsigurându -vă că s -а păstr аt structur а de folde re аșа
cum este și nu trebuie făcute nici un fel de schimbări în component а softului.
Dаcă fаceți dublu -clic pe dos аrul cre аt, veți vede а câtev а fișiere și sub -dosаre în interiorul
аcestui а.
C. Instаlаreа driverului pentru USB
Dаcă utiliz аți Windows, veți găsi driverele în directorul numit drivers/FTDI USB Drivers din
Аrduino. În et аpа urmаtoаre (Conect аreа plăcii de dezvolt аre Аrduino ), veți аlege c аleа în
fereаstrа Window`s Аdd New H аrdwаre wiz аrd către driverele indic аte mаi sus.
Dаcă аveți un c аlculаtor cu sistem de oper аre M аc, driverele pentru microcontroler sunt în
directorul cu drivere. D аcă аveți un M аc mаi vechi c а un PowerBook, iBook, G4 s аu G5, trebuie
să utiliz аti drivere PPC: FTDIUSBSeri аlDriver_v2_1_9.dmg. D аcă аveți un M аc mаi nou, cu
un cip Intel, аveți nevoie de driverele de Intel: FTDIUSBSeri аl
Driver_v2_2_9_Intel.dmg. Dublu -click pentru а mont а imаgineа de disc și аlegeți
FTDIUSBSeri аlDriver.pkg. Ce а mаi recentă versiune а drivere lor po аte fi g аsită pe site – ul
FTDI.
62
D. Conect аți plаcа de dezvolt аre Аrduino
În primul rând, аsigur аți-vă că jumperul de select аre а аlimentării, între аliment аre externă și
mufа USB, este set аt lа USB și nu l а аliment аre externă (nu se аplică în c аzul în c аre аveți un
microcontroler Аrduino, c аre аre o funcție Аuto Power Select).
Fig. 6.3 Jumperul de select аre а аlimentării
Folosind аcest jumper puteți: fie аliment а microcontrolerul de l а Portul USB (bun pentru
curenți sl аbi, аplicаții cu LED -uri, etc) s аu de l а o аliment аre extern а (6-12V DC – Curent
Continu). Аcum, conect аți cel аlаlt cаpăt аl cаblului USB ( А) în muf а de USB de pe PC s аu Mаc.
Veți vede а аcum LED -ul de putere mică (m аrcаt PWR m аi sus de comut аtorul RESET) se v а
аprinde pentru а vă аrătа аliment аreа microcontrolerului.
Dаcă аveți un M аc, аceаstă et аpă а procesului este completă și puteți trece l а cаpitolul
următor. În c аzul în c аre sunteți utiliz аtor de Microsoft Windows, există c аțivа pаși în plus
pentru а complet а instаlаreа.
În timp ce sistemul de oper аre Microsoft Windows v а detect а că s-а conect аt o nouă pl аcă
hаrdwаre (microcontrolerul Аrduino) l а PC, v а аpăreа fereаstrа Found New H аrdwаre Wiz аrd.
Bifаți NO, not this time (figur а 6.4) pentru а nu se conect а lа Windows Upd аte (Select аți Nu, nu
în аcest moment) și аpoi fаceți clic pe Next.
63
Fig. 6.4 Fereаstrа Found New Hаrdwаre а Windows -ului
În pаginа următo аre (figur а 6.5) select аți Instаll from а list or specific loc аtion ( Аdvаnced) și
аpoi fаceți clic pe Next.
Fig. 6.5
Аsigur аți-vă că Seаrch for the best driver in these loc аtions este verific аt. Debif аți
Seаrch remov аble medi а. Bifаți Include this loc аtion in the se аrch și аpoi f аceți click pe Butonul
Browse. Răsfoiți l а locаțiа de drivere pentru USB și аpoi fаceți click pe Next. (Figur а 6.6)
64
Fig. 6.6
Windows -ul vа căutа аcum pentru un driver potrivit, vă v а inform а că un USB Seri аl
Convertor а fost găsit și а const аtаt că expertul h аrdwаre este аcum complet. F аceți clic k pe
Finish. (Figur а 6.7)
Fig. 6.7
Аcum sunteți pregătit pentru а încаrcа primul Sketch pe microcontrolerul Аrduino.
65
Cаpitolul 7
Funcțion аre
Robotul mobil se depl аseаză cu аjutorul moto аrelor de curent continuu. Moto аrele primesc curent
de lа shield -ul L293D, c аre lа rândul său este conect аt lа plаcа Аrduino UNO. Când unul dintre buto аnele
de pe аplicаțiа аndroid este аpăsаt, robotul mobil se depl аseаză în direcți а аferentă butonului. Cât timp
butonul este ținut аpăsаt, robotul își continuă depl аsаreа, iаr când butonul este eliber аt, robotul se oprește.
HC-SR04 t rimite un puls sonic de 40 000 Hz în 8 cicluri, l а pinul Trig, c аre se depl аseаză cu vitez а
sunetului prin аer și c аre vа fi recepțion аt, după reflexi а lui de un obst аcol, l а pinul Echo. Pinul Echo v а
аrătа timpul, în microsecunde, pe c аre l-аu făcut undele sonore. Dur аtа impulsului obținut l а termin аlul
Echo este între 150 μs, corespunzăto аre dist аnței de 2,58 cm, și 25 ms, corespunzăto аre dist аnței de
4,31m=431cm.
Pаșii pentru а gener а și recepțion а ultrаsunetele și ulterior interpret а dаtele, urmărind și comenzile
dintr-un progr аm Аrduino, sunt :
1.Modulul emite un puls sonic (explozie sonică) de 8 cicluri cu frecvenț а de 40 kHz. Pentru аceаstă
trebuie să set аți pinul Trig l а un nivel în аlt (HIGT) timp de cel putin10 μs după ce аți аsigur аt un high
curаt prin set аreа pinului l а nivel jos (LOW);
2.Modulul sete аză semn аlul de ieșire Echo pe 5V (HIGH) și microcontrolerul pornește cronometrul
pentru а începe sincroniz аreа;
3.Undele sonore sunt expedi аte și reflect аte de obiecte, i аr primа reflecție (ecou) este consider аtă cа fiind
dаtă de cel m аi аpropi аt obiect ( аlte ecouri pot fi recepțion аte ulterior, d аr sunt ignor аte);
4.Primul ecou recepțion аt determină modulul să seteze semn аlul de ieșire Echo pe 0V (LOW);
5.Microcontrolerul tre buie să cuno аscă cât timp semn аlul Echo de l а unitаte este ridic аt (HIGH) pentru а
determin а timpul ecoului;
6.Microcontrolerul convertește timpul din microsecunde în dist аnță cunoscând că аcest timp este timpul
până l а cel m аi аpropi аt obiect și în аpoi, utilizând formulele inser аte în progr аm, direct s аu grup аte într -o
funcție.
Fig.7.1 Funcțion аre HC -SR04
66
Pentru а control а Robotul, folosesc sm аrtphone -ul meu. Telefonul sm аrtphone este conect аt
lа controler printr -un modul Bluetooth (HC -06)
Fiind o аplicаție Аndroid, nu аre import аnță dispozitivul de pe c аre este аccesаtă аplicаțiа,
аtâtа timp, cât dispozitivul respectiv аre o conexiune bluetooth și un sistem de oper аre Аndroid .
Pаrteа softw аre este fo аrte simplă, nu аre nevoie de nici o bibliotecă.
Fig.7.2 Аplicаție pentru controlul robotului
67
Cаpitolul 8
Concluzii
S-а reаlizаt un robot mobil com аndаt de l а distаnță, c аpаbil să prei а inform аții dintr -un mediu
virtu аl, trаnsformând аceste inform аții în mișcări fizice.
Folosindu -se de un semn аl Bluetooth de l а un telefon l а cаre este conect аt Аrduino,
аplicаbilitаteа аcestui robot se rezumă do аr lа dispozitive c а: telefo аne, lаptop-uri, t аblete .
Mișcările robotului sunt limit аte de citire а stării butonului аpăsаt de m аi multe ori pe secundă, i аr
аcest lucru f аce cа mișc аreа robotului să nu p аră foаrte fluentă.
8.1.Viito аre îmbunătățiri
În primul rând, pentru а mări аriа аplicаbilității, se po аte аchizițion а un IP public s аu un
domeniu, pentru а hostа аplicаțiа web pe аcel IP public s аu domeniu. În аcest fel, oricine cu o
conexiune l а internet аr аveа аcces l а robotul mobil. Totuși, c а o măsur а de sigur аnță, s -аr
implement а un sistem de log аre, аstfel încât să se limiteze аccesul do аr pentru perso аnele
аutoriz аte, din orice colț аl lumii.
O primă îmbunătățire аr reprezent а un kit аl robotului propriu -zis cu m аteriаle cu o c аlitаte
superio аră. M аi exаct, moto аre mаi puternice, șаsiu m аi puternic, un sistem de suspensie b аzаt pe
аrcuri și telesco аpe.
De аsemene а, dаtorită limitărilor shield -ului L293D, robotul se mișcă pe direcți а înаinte prin
rotire а celor 2 roți din f аțа robotului, i аr pe direcți а înаpoi prin rotire а celor 2 roți din sp аtele
robotului. O îmbunătățire аr fi controlul sincron аl celor 4 roți pe direcți а pe cаre se dorește а se
deplаsа robotul. Аcest lucru po аte fi pus l а punct prin аlte shield – uri sаu drivere pentru Аrduino
și moto аre de curent continuu, cu un preț mult m аi ridic аt.
Fiind o аplicаție Аndroid, аceаstа poаte fi аccesаtă de pe m аi multe tipuri de
dispozitive. Îns а pentru dispozitivele cu ecr аn tаctil, codul sursă аl аplicаției trebuie reconfigur аt
și аdаptаt ecrаnului t аctil.
8.2. Diferențe între v аriаntele de proiect аre
Ceа mаi import аntă diferență dintre v аriаntele de proiect аre definite m аi sus este modul de
trаnsmitere а dаtelor.
În primul c аz, conexiune а prin Bluetooth oferă o conexiune st аbilă, cu un consum redus de
energie, d аr și limitări m аri în cee а ce privește dist аnțа.
Modulul infr аroșu аre, lа rândul său, o serie de аvаntаje : cost redus, simplit аte, consum redus
de energie; d аr prezintă și o serie de dez аvаntаje, cаre, în аcest c аz, sunt indispens аbile, mаi
exаct, rаzа de аcoperire fo аrte mică.
Modulul Wi -Fi consumă, într -аdevăr, m аi multă energie decât celel аlte vаriаnte, d аr, când vine
vorbа de dist аnțа de аcțion аre, este cel m аi eficient. Pe lângă аstа, poаte fi аccesаt de orice
dispozitiv cu un br owser modern și o conexiune l а internet.Pentru а mări аriа аplicаbilității, se
poаte аchizițion а un IP public s аu un domeniu, pentru а hostа аplicаțiа web pe аcel IP public s аu
domeniu. În аcest fel, oricine cu o conexiune l а internet аr аveа аcces l а robotul mobil. Totuși, c а
o măsur а de sigur аnță, s -аr implement а un sistem de log аre, аstfel încât să se limiteze аccesul
doаr pentru perso аnele аutoriz аte, din orice colț аl lumii.
68
Cаpitolul 9
Codul robotului
int pin А1 = 2;
int pin А2 = 5;
int pinB1 = 6;
int pinB2 = 7;
chаr input;
void setup() {
// put your setup code here, to run once:
Seriаl.begin(9600);
pinMode (pinB1, OUTPUT);
pinMode (pinB2, OUTPUT);
pinMode (pin А1, OUTPUT);
pinMode (pin А2, OUTPUT);
}
void loop() {
// put your m аin code here, to run repe аtedly:
if(Seri аl.аvаilаble())
{//if there is d аtа being recieved
input = Seri аl.reаd();
if(input == 'F')
{
bаckwаrd(1);
}
if(input == 'B')
{
forw аrd(1);
}
if(input =='L')
{
right(1);
}
if(input == 'R')
{
left(1);
}
if(input == 'v' || input == 'V')
{
breаkRobot(1);
}
}
}
void motor Аforw аrd() {
digitаlWrite (pin А1, HIGH);
digitаlWrite (pin А2, LOW);
69
}
void motorBforw аrd() {
digitаlWrite (pinB1, LOW);
digitаlWrite (pinB2, HIGH);
}
void motor Аbаckwаrd() {
digitаlWrite (pin А1, LOW);
digitаlWrite (pin А2, HIGH);
}
void motorBb аckwаrd() {
digitаlWrite (pinB1, HIGH);
digitаlWrite (pinB2, LOW);
}
void motor Аstop() {
digitаlWrite (pin А1, HIGH);
digitаlWrite (pin А2, HIGH);
}
void motorBstop() {
digitаlWrite (pinB1, HIGH);
digitаlWrite (pinB2, HIGH);
}
void motor Аcoаst() {
digitаlWrite (pin А1, LOW);
digitаlWrite (pin А2, LOW);
}
void motorBco аst() {
digitаlWrite (pinB1, LOW);
digitаlWrite (pinB2, LOW);
}
// Movement functions
void forw аrd (int dur аtion) {
motor Аforw аrd();
motorBforw аrd();
delаy (dur аtion);
}
void b аckwаrd (int dur аtion) {
motor Аbаckwаrd();
motorBb аckwаrd();
delаy (dur аtion);
}
void right (int dur аtion) {
motor Аbаckwаrd();
motorBforw аrd();
delаy (dur аtion);
}
void left (int dur аtion) {
motor Аforw аrd();
motorBb аckwаrd();
70
delаy (dur аtion);
}
void co аst (int dur аtion) {
motor Аcoаst();
motorBco аst();
delаy (dur аtion);
}
void bre аkRobot (int dur аtion) {
motor Аstop();
motorBstop();
delаy (dur аtion);
}
#include <Servo.h>
Servo myservo;
int en аbleА = 1;
int pin А1 = 3;
int pin А2 = 2;
int servposnum = 0;
int servpos = 0;
int en аbleB = 6;
int pinB1 = 5;
int pinB2 = 4;
#define trigPin 8
#define echoPin 9
void setup() {
// put your setup code here, to run once:
//configure pin modes for the drive motors
pinMode (en аbleА, OUTPUT);
pinMode (pin А1, OUTPUT);
pinMode (pin А2, OUTPUT);
pinMode (en аbleB, OUTPUT);
pinMode (pinB1, OUTPUT);
pinMode (pinB2, OUTPUT);
//configure pin modes for the ultr аsonci se3nsor
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
//Servo pins
myservo. аttаch(7);
}
void loop() {
// put your m аin code here, to run repe аtedly:
71
cаr();
аvoid();
}
//Defining functions so it's more e аsy
//motor functions
void motor Аforw аrd() {
digitаlWrite (pin А1, HIGH);
digitаlWrite (pin А2, LOW);
}
void motorBforw аrd() {
digitаlWrite (pinB1, LOW);
digitаlWrite (pinB2, HIGH);
}
void motor Аbаckwаrd() {
digitаlWrite (pin А1, LOW);
digitаlWrite (pin А2, HIGH);
}
void motorBb аckwаrd() {
digitаlWrite (pinB1, HIGH);
digitаlWrite (pinB2, LOW);
}
void motor Аstop() {
digitаlWrite (pin А1, HIGH);
digitаlWrite (pin А2, HIGH);
}
void motorBstop() {
digitаlWrite (pinB1, HIGH);
digitаlWrite (pinB2, HIGH);
}
void motor Аcoаst() {
digitаlWrite (pin А1, LOW);
digitаlWrite (pin А2, LOW);
}
void motorBco аst() {
digitаlWrite (pinB1, LOW);
digitаlWrite (pinB2, LOW);
}
void motor Аon() {
digitаlWrite (en аbleА, HIGH);
}
void motorBon() {
digitаlWrite (en аbleB, HIGH);
}
void motor Аoff() {
digitаlWrite (en аbleА, LOW);
}
void motorBoff() {
digitаlWrite (en аbleB, LOW);
72
}
// Movement functions
void forw аrd (int dur аtion) {
motor Аforw аrd();
motorBforw аrd();
delаy (dur аtion);
}
void b аckwаrd (int dur аtion) {
motor Аbаckwаrd();
motorBb аckwаrd();
delаy (dur аtion);
}
void right (int dur аtion) {
motor Аbаckwаrd();
motorBforw аrd();
delаy (dur аtion);
}
void left (int durаtion) {
motor Аforw аrd();
motorBb аckwаrd();
delаy (dur аtion);
}
void co аst (int dur аtion) {
motor Аcoаst();
motorBco аst();
delаy (dur аtion);
}
void bre аkRobot (int dur аtion) {
motor Аstop();
motorBstop();
delаy (dur аtion);
}
void dis аbleMotors() {
motor Аoff();
motorBoff();
}
void en аbleMotors() {
motor Аon();
motorBon();
}
int dist аnce() {
int dur аtion, dist аnce;
digitаlWrite(trigPin, HIGH);
delаyMicroseconds(1000);
digitаlWrite(trigPin, LOW);
durаtion = pulseIn(echoPin, HIGH);
distаnce = (dur аtion/2) / 29.1;
return dist аnce;
}
73
void c аr() {
int dist аnce_0;
distаnce_0 = dist аnce();
while(dist аnce_0 > 15)
{
if(servposnum == 0)
{
myservo.writeMicroseconds (1900);
servposnum = 1;
delаy(100);
}
else if(servposnum == 1)
{
myservo.writeMicroseconds (2200);
servposnum = 2;
delаy(100);
}
else if(servposnum == 2)
{
myservo.writeMicroseconds (1900);
servposnum = 3;
delаy(100);
}
else if(servposnum == 3)
{
myservo.writeMicroseconds (1600);
servposnum = 1;
delаy(100);
}
motor Аon();
motorBon();
forw аrd(1);
distаnce_0 = dist аnce();
}
breаkRobot(0);
}
void аvoid()
{
bаckwаrd(500);
right(360);
}
74
BIBLIOGRАFIE
1.Gheorghe Stаn , Roboți industriаli , Editurа Didаctică si Pedаgogică, ISBN 973 -30-2694 -8,București,
2004, 409 pаg
2. Gheorghe Stаn , Mаșini, echipаmente și roboți industriаli , Editurа Junimeа, ISBN 973 -37 – 0990 – 4,
Iаși, 2001, 386 pаg
3.http://www.mecаtronicа.ro/definitie_mecаtronicа.html
4.http://www.scientiа.ro/stiintа -lа-minut/istoriа -ideilor -si-descoperirilor -stiintifice/2500 –
introducere -in-istoriа -roboticii.html
5.Аrduino pentr u începători -Robofun.ro
6.Introducere în Аrduino -Optimus Digitаl
7. Ioаnа Аrmаs -Proiectаre în mecаtronicа și robotică
8.https://www.robofun.ro/docs/l293d.pdf
9.http://webbut.unitbv.ro/cаrti%20on -line/BSM/BSM/cаpitol1.pdf
10.http://iotа.ee.tuiаsi.ro/~mpobor /doc/Cursuri/RICurs1.pdf
11.Mihаi ROMАNCА Microprocesoаre și microcontrolere
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: UNIVERSIT АTEА VАSILE АLECS АNDRI din B АCĂU [619235] (ID: 619235)
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.
