Sunteți pe pagina 1din 140

Minirobot mobil cu senzori pentru detectare obstacole

Cuprins

Introducere Capitolul I- Studiu privind stadiul roboilor mobile 1.1 Roboi mobili 1.2 Clasificarea roboilor mobili 1.3 Utilizri ale roboilor mobili 1.4 Structura unui robot mobil 1.5 Acionarea roboilor mobili 1.6 Sistemul senzorial 1. !i"uri #e roboti mobili Capitolul II- Studiul dinamicii robotului mobil cu roi 2.1 $o#el cinematic Capitolul III- Proiectarea elementelor constructive 3.1 %lemente com"onente ale minirobotului 3.2 &laca minirobotului 3.3 $otoarele #e curent continuu 3.4 Senzorul Capitolul IV- Proiectarea interfeelor de comunicare 4.1 &'-4(( Cutie &ro)ramat *n-Sistem cu interfa serial 4.2 *nterfaa S&* 4.3 Cabluri #e transfer a #atelor Capitolul V- Programarea robotului 5.1 *nstalarea A+R Stu#io
3

Minirobot mobil cu senzori pentru detectare obstacole

5.2 Crearea "ro)ramului C ,n A+R Stu#io Bibliografie

Introducere Unul #in cele mai im"ortante as"ecte ,n e-oluia fiinei umane este folosirea uneltelor care s sim"lifice munca fizic. .n aceasta cate)orie se ,nscriu /i roboii0 ei ocu"1n# totu/i o "oziie "ri-ile)iat #atorit com"le2itii lor. 3oiunea #e robot #ateaz #e "este 4 mii #e ani. 4mul /i-a ima)inat #is"oziti-e mecanizate inteli)ente care s "reia o "arte ,nsemnata #in efortul fizic #e"us. Astfel a construit 5ucrii automate si mecanisme inteli)ente sau /i-a ima)inat roboii in #esene0 carti0 filme 6S76 etc. Re-oluia informatic a marcat saltul #e la societatea in#ustrializat la societatea a-ansat informatizat )ener1n# un -al #e ,nnoiri ,n te8nolo)ie /i ,n e#ucaie.Acest lucru a #us /i la a"ariia roboilor !ermenul 6robot6 a fost folosit in 192( #e ce8ul :arel Ca"e; ,ntr-o "iesa numit 6Robotul uni-ersal al lui :ossum6. *#eea era sim"l< omul face robotul #u" care robotul uci#e omul. $ulte filme au continuat sa arate c roboii sunt ma/inrii #untoare si #istru)toare. Re-oluia informatic a marcat saltul #e la societatea in#ustrializat la societatea a-ansat informatizat )ener1n# un -al #e ,nnoiri ,n te8nolo)ie /i ,n e#ucaie "ermi1n# realizarea #e roboi. Roboii ofer beneficii substantiale muncitorilor0 in#ustriilor si im"licit rilor. *n situatia folosirii ,n sco"uri "a/nice0 roboii in#ustriali "ot influena "oziticalitatea -ieii oamenilor "rin ,nlocuirea acestora in s"aii "ericuloase0 cu con#itii #e me#iu #aunatoare omului0 cu con#itii necunoscute #e e2"loatare etc.

Minirobot mobil cu senzori pentru detectare obstacole

=omeniile #e a"licare a te8nicii roboilor se lr)esc mereu0 ei "ut1n# fi utilizai ,n in#ustrie0 trans"orturi /i a)ricultur0 ,n sfera ser-iciilor0 ,n cunoasterea oceanului /i a s"atiului cosmic0 ,n cercetarea /tiinific etc. >ucrarea "rezint mo#ul #e "roiectare /i realizare a unui minirobot ec8i"at cu microcontroler A!me)a?-16&* /i #iferii senzori a#uc1n# o contribuie la #ez-oltarea bazei teoretice /i "ractice #e stu#iu a microcontrollerelor Atmel /i a "osibilitilor nelimitate #e #ez-oltare #e a"licaii ,n #omeniul roboticii. CAPITOLUL I STUDIU PRIVI D STADIUL ROBO!ILOR "OBILI

#$# Robo%i &obili Robotul mobil este un sistem com"le2 care "oate efectua #iferite acti-iti ,ntr-o -arietate #e situaii s"ecifice lumii reale. %l este o combinaie #e #is"oziti-e ec8i"ate cu ser-omotoare /i senzori @aflate sub controlul unui sistem ierar8ic #e calculA ce o"ereaz ,ntr-un s"aiu real0 marcat #e o serie #e "ro"rieti fizice @#e e2em"lu )ra-itaia care influeneaz mi/carea tuturor roboilor care funcioneaz "e "m1ntA /i care trebuie s "lanifice mi/crile astfel ,nc1t robotul s "oat realiza o sarcin ,n funcie #e starea iniial a sistemului /i ,n funcie #e informaia a"riori e2istent0 le)at #e me#iul #e lucru. Succesul ,n ,n#e"linirea acestor sarcini #e"in#e at1t #e cuno/tinele "e care robotul le are asu"ra confi)uraiei iniiale a s"aiului #e lucru0 c1t /i #e cele obinute "e "arcursul e-oluiei sale. &roblemele s"ecifice ce a"ar la roboii mobili ar fi urmtoarele< e-itarea im"actului cu obiectele staionare sau ,n mi/care0 #eterminarea "oziiei /i orientrii robotului "e teren0 "lanificarea unei traiectorii o"time #e mi/care.
5

Minirobot mobil cu senzori pentru detectare obstacole

.n cazul unui sistem robotic automat #istribuit "oziiile s"aiale sunt #e o e2trem im"ortan /i #e ele #e"in#e ,n#e"linirea sco"urilor #orite /i funcionarea ,ntre)ului sistem. Cu alte cu-inte0 robotul trebuie s fie ca"abil s-/i "lanifice mi/crile0 s #eci# automat ce mi/cri s e2ecute "entru a ,n#e"lini o sarcin0 ,n funcie #e aran5amentul momentan al obiectelor #in s"aiul #e lucru. &lanificarea mi/crilor nu const #intr-o "roblem unic /i bine #eterminat0 ci #intr-un ansamblu #e "robleme #intre care unele sunt mai mult sau mai "uin -ariante ale celorlalte. %-itare coliziunii cu obstacole fi2e sau mobile @#e e2em"lu ali roboi mobiliA aflate ,n s"aiul #e lucru al robotului se "oate face "rin mai multe meto#e<realizarea unei a"rtori mecanice care "rin #eformare o"re/te robotul0 folosireasenzorilor care msoar #istana "1n la obstacolele #e "e #irecia #e#e"lasare0 folosirea senzorilor #e "ro2imitate0 folosirea informaiilor corelate #e la mai multe ti"uri #e senzori. >ocalizarea obiectelor se "oate realiza /i "rin contact fizic0 #ar acesta im"une restricii asu"ra -itezei #e mi/care a structurii mani"ulate. Contactul fizic #intre robot /i obiectele #in me#iu )enereaz fore #e reaciune care mo#ific starea robotului. +itezele mari #e lucru fac ca efectele #inamice ale unui contact fizic cu obstacole sau obiecte mani"ulate s fie riscante @"ot #uce la #eteriorarea obiectelor sau a robotuluiA. 3a-i)area robotului este "osibil /i fr o #eterminare a "oziiei /i orientrii fa #e un sistem #e coor#onate fi20 #ar aceast informaie este util "entru sisteme #e coman# a mi/crii. =intre meto#ele #e na-i)aie mai #es utilizate se "ot meniona< msurarea numrului #e rotaii fcute #e roile motoare0 folosirea #e acceleratoare /i )iroscoa"e0 )eaman#uri electroma)netice instalate ,n teren0 semnalizatoare "asi-e sau semi"asi-e #e ti" o"tic sau ma)netic. #$' Clasificarea robo%ilor &obili Roboii mobili se clasific astfel B .n funcie #e #imensiuni< macro0 micro /i nano-roboi.

Minirobot mobil cu senzori pentru detectare obstacole

B .n funcie #e me#iul ,n care acioneaz< roboi tere/tri C se #e"laseaz "e sol0 roboi subac-atici C ,n a"0 roboi zburtori C ,n aer0 roboi e2tratere/tri C "e solul altor "lanete sau ,n s"aiul cosmicD B .n funcie #e sistemul care le "ermite #e"lasarea ,n me#iul ,n care acioneaz e2ist #e e2em"lu "entru #e"lasarea "e sol 1. 2. 3. 4. 5. roboi "e roi sau /enile roboi "/itori< bi"ezi0 "atru"ezi0 8e2a"ozi0 miria"oziD roboi t1r1tori< care imit mi/carea unui /ar"e0 care imit mi/carea unei roboi sritori0 care imit #e"lasarea broa/telor0 can)urilor etc.D roboi #e form sferic @se #e"laseaz "rin rosto)olireA etc.

r1me etc.D

7i)ura 1- =iferite ti"uri #e miniroboi. #$( Utili)*ri ale robo%ilor &obili$ Utilizrile "entru care au fost0 sunt /i -or fi conce"ui roboii mobili sunt #intre cele mai #i-erse . $uli roboi #in zona micro ,/i )sesc utilizarea ,n me#icin0 fiin# ca"abili s se #e"laseze #e-a lun)ul -aselor /i tuburilor cor"ului omenesc0 ,n sco"ul in-esti)aiilor0 inter-eniilor c8irur)icale0 #ozrii /i #istribuirii #e me#icamente etc. >a fel #e s"ectaculoase sunt /i multe utilizri ale macro-roboilor<
7

Minirobot mobil cu senzori pentru detectare obstacole

B .n #omeniul in#ustrial0 a)ricol0 forestier< ,n #omeniul in#ustrial roboii mobili sunt re"rezentai #e AE+-uri @Automate#-Eui#e# +e8iclesA0 -e8icule "e roi0 cu )8i#are automat0 care trans"ort /i mani"uleaz "iese0 constituin# o alternati- fle2ibil la benzile #e monta5D ,n a)ricultur e2ist tractoare /i ma/ini a)ricole fr "ilot0 ca"abile s e2ecute sin)ure lucrrile "e su"rafeele "entru care au fost "ro)ramateD ,n #omeniul forestier roboii mobili "ot escala#a co"acii ,nali B .n #omeniul militar< este luat ,n consi#erare #e ctre armata american "ers"ecti-e ,nlocuirii sol#ailor combatani cu roboi0 "entru a re#uce riscul "ier#erilor umane ,n lu"tD roboi mobili #e cele mai in)enioase /i robuste confi)uraii sunt aruncai ,n cl#i /i incinte #in zone #e conflict0 ,n sco"uri #e in-esti)are /i c8iar ani8ilare a inamiculuiD

7i)ura 2-Sistem inte)rat telecoman#at "entru #eminare.

Minirobot mobil cu senzori pentru detectare obstacole

B .n #omeniul utilitilor "ublice< una #intre cele mai utile /i economice utilizri ale roboilor mobili o re"rezint ins"ectarea con#uctelor #e combustibili )azo/i /i lic8izi /i a canalelor #e canalizare. =e e2em"lu reeaua #e canalizare a Eermaniei ,nsumeaz 4((.((( ;m0 iar ins"ectarea /i curirea acesteia "resu"une costuri #e 3%6 %uro "e metru. 3umai 2(F #in con#ucte sunt accesibile0 iar utilizarea roboilor "oate re#uce costurile cu un sfert. B .n #omeniul #istracti- /i recreati-< sunt roboii-5ucrii0 roboii "entru com"etiii B G.n #omeniul ser-iciilor< %2ist "osibiliti #eosebit #e lar)i #e im"lementare. Sunt roboi "entru< #eser-irea bolna-ilor ,n s"italeD a5utorarea "ersoanelor btr1ne sau cu #iferite 8an#ica"uriD )8i#area /i informarea "ublicului ,n muzee as"irarea /i curirea ,nc"erilorD s"larea )eamurilor /i a "ereilor cl#irilorD B G.n #omeniul securitii< $ulte o"eraii #e ins"ectare /i #ezamorsare a unor obiecte /i ba)a5e sus"ecte sunt e2ecutate #e roboiD B .n #omeniul o"eraiilor #e sal-are< Roboii sal-atori @Rescue robotsA sunt utilizai ,n o"eraiile #e sal-are a -ictimelor unor calamiti< cutremure0 incen#ii0 inun#aii. Roboii mobili au urmtoarele caracteristici comune< 1. 2. 3. structura mecanic este un lan cinematic serie sau "aralel res"ecti- ti" sistemul #e acionare utilizat este electric "entru sarcini mici /i me#ii /i sistemul senzorial utilizeaz senzori interni @#e turaie0 "oziie0 efortA la Hmaster-sla-eID 8i#raulic "entru sarcini mariD ni-elul articulaiilor0 senzori e2terni@camere !+A "entru scanarea me#iului /i senzori #e securitate@ #e "ro2imitate0 #e "rezen cu ultrasuneteAD 4. 5. sistemul #e coman# este ierar8izat0 #e obicei multi"rocesorD limba5ele #e "ro)ramare utilizate sunt "reluate #e la roboii staionari.

Minirobot mobil cu senzori pentru detectare obstacole

#$+ Strucura unui robot &obil Structura roboilor mobili @R$A cores"un#e ar8itecturii )enerale a roboilor0 a-1n# #ou "ri< B Structura mecanic0 res"ecti- mani"ulatorul0 care #etermin "erformanele te8niceD B Structura electronic0 res"ecti- #e coman#-control0 care con#iioneaz calitatea "erformanelor. *n#iferent #e )eneraia robotului0 "robleme com"le2e a"ar la realizarea structurii mecanice #e -olum0 )reutate /i cost re#use0 la transmiterea mi/crii /i a#a"tarea la structura mecanic a motoarelor electrice /i 8i#raulice0 la "roiectarea m1inilor mecanice "entru a a"uca obiecte #e #iferite forme. Referitor la structura electronic0 "osibilitile actuale "ermit folosirea a c1te unui micro"rocesor "entru coman#a fiecrui )ra# #e mobilitate0 "recum /i a altor micro"rocesoare s"ecializate "entru tratarea semnalului senzorial. Robotul mobil interacioneaz cu me#iul ,ncon5urtor "rin structura sa mecanic0 asi)ur1n# astfel #e"lasarea0 "oziionarea /i orientarea or)anului #e e2ecuie.

1.4.1 Structura mecanic a roboilor mobili este format din: B sistemul #e locomoie @"e /enile sau roiA0 "rin care se asi)ur #e"lasarea robotului "e o su"rafa #e lucru @,n ca#rul unei autonomii s"oriteAD B sistemul #e mani"ulare0 care asi)ur "oziionarea /i orientarea or)anului #e lucru. Robotul mobil ,n "rocesul #e #e"lasare "e o anumuit traiectorie este caracterizat "rin 3 funci< 1. 2. funcia #e locomoieD funcia #e "erce"ie-#ecizieD
10 10

Minirobot mobil cu senzori pentru detectare obstacole

3.

funcia #e localizareD

7uncia #e locomoie cu"rin#e sistemul #e acionare electric@#e "ro"ulsieA /i sistemul #e s"ri5inire@sus"ensieA.$o#alitile #e "ro"ulsare sunt #intre cele mai #i-erse0cum ar fii<"e roi0 cu 5et #e a"0 cu aer etcD Roboii mobili "ot fii #otai cu camera -i#eo sau ali senzori #e "erce"ere al me#iului ,n care acti-eaz. $emoria robotului coninut in microcontroler ,nma)azineaz cuno/tinele necesare localizrii tuturor se)mentelor #e traseu "osibile

7i)ura 3- >ocomoia -iermelui #e "m1nt. B >ocomoia -iermelui #e "m1nt este influenat #e factori "recum frecarea #intre mo#ule /i su"rafa0 #e ti"ul "erilor artificiali #is"u/i "e mo#ule /i "osibilitatea lor #e "enetrare a su"rafeelor /i fore ineriale. B &rototi"ul ,n starea #e "1n acum are o #e"lasare ne)li5abil fa"t "entru care la realizarea mi/crii au fost urmate #ou meto#e< 1. 7abricarea #e "icioru/e #irecionale ce -or mima "erii c8eratino/i ai r1mei0 fa"t ce #uce la o a-ansare "rin a)are a acestora #e su"rafa 2.&ro"ulsarea micro-robotului "e o su"rafa #irecional "recum ar fi catifeaua.
11 11

Minirobot mobil cu senzori pentru detectare obstacole

#$, Ac%ionarea robo%ilor &obili Se face cu motoare electrice #e "utere mic0 cu moment #e inerie re#us0cu ca"acitate #e su"rasarcin0 cu re#uctoare #e ra"ort mare @iJ1((A /i moment #e inerie re#us #e ti" "rocesional sau armonic.Se "ot folosi /i uniti inte)rate motor-re#uctor $otoare electrice cu inerie re#us utilizate< B motoare #e curent continuu cu "a8ar sau in#us #iscD B motoare sincrone cu ma)nei "ermaneniD B motoare "as cu "as cu reluctan -ariabil cu in#us "a8ar /i intrefier ra#ial sau cu in#us ti" #isc /i intrefier ra#ialD B motoare sincrone cu ma)nei "ermaneniD Analiza "erformanelor #inamice a acionrilor "e baza funciei #e transfer K#@sA "resu"une #eterminarea "arametrilor< &recizia care se #etermin cu a5utorul funciei #e transfer "rin calculul erorii staionare<

@1A

Ui@sAL mrime #e intrare. &romtitu#inea0 care se calculeaz cu a5utorul locului #e transfer consi#er1n# un com"romis o"tim "recizie-stabilitate "entru o mar)ine #e faz $ML25N45 . Stabilitatea care se #etermin cu a5utorul locului #e transfer.
12 12
(

Minirobot mobil cu senzori pentru detectare obstacole

Ca"acitatea #e urmrire se "oate a"recia cu a5utorul caracteristicii Oo#e. &entru a se ameliora "erformanele #inamice ale acionrilor ,n anumite #omenii #e frec-en se utilizeaz elemente #e corecie serie sau "aralel a-1n# funcia #e transfer

@2A

#$- Siste&ul sen)orial Robotul mobil este "us ,n situaia #e a #esf/ura aciuni similare cu cele ale o"eratorului uman. Acest lucru #etermin e2istena unor anumite #is"oziti-e "rin care s se culea) informaii #in me#iul #e lucru0 care s realizeze interaciunea robot . me#iu cu a5utorul unor caracteristici ale me#iului sau ale obiectelor #in me#iu /i o unitate central care s "relucreze ,n tim" real informaia senzorial0 s o transforme ,ntr-o form util "entru sistemul #e coman#. Sistemul senzorial mai este numit /i sistem #e msurare. %l asi)ur msurarea unor mrimi fizice /i e-entual "erce"erea unor mo#ificri semnificati-e a acestor mrimi. =atorit sistemului senzorial se "ot "une ,n e-i#en /i caracteristicile )eometrice /i c8imice ale obiectelor #in me#iul #e lucru. Senzorii #atorit caracteristicilor "e care le au "ot e2"lora zona #e lucru0 zona #e contact0 cea a"ro"iat0 cea ,n#e"rtat0 iar senzorii foarte "uternici c8iar /i zone foarte ,n#e"rtate. *nformaiile culese cu a5utorul sistemului senzorial ser-esc la construirea unui mo#el al lumii ,n care e-olueaz robotul0 mo#el funcie #e care aceasta ,/i -a )enera "lanurile #e aciuni -iitoare. .n funcie #e soluia constructi-0 senzorii sunt "asi-i sau acti-i. Senzorii acti-i folosesc caracteristicile intrinseci ale me#iului0 iar cei "asi-i )enereaz
13 13

Minirobot mobil cu senzori pentru detectare obstacole

mo#ificri ,n me#iu "entru a msura unele caracteristici. Alte #ou cate)orii #e senzori cu care "oate fi #otat un robot mobil sunt< senzori #e mrimi interne ai robotului @"oziie0 -itez sau acceleraia unor com"onente mecanice "ro"riiA /i senzori #e mrimi e2terne @)reutate0 form0 "oziie0 tem"eratur0 culoare0 etc ale obiectelor asu"ra crora acioneaz robotulA. Caracteristicile senzoriale ale unui robot #e"in# foarte mult #e )ra#ul su #e autonomie0 #e a"licaiile "entru care a fost "roiectat /i #e ti"ul me#iului #e lucru. .n )eneral "erce"ia se realizeaz ,n #ou eta"e< B con-ersia "ro"rietilor fizice ,ntr-un semnal0 #e obicei electricD B "relucrarea acestui semnal ,n -e#erea e2tra)erii informaiei care intereseaz. Se "refer o "relucrare "reliminar ,n care senzorii robotului elimin z)omotele care "erturb semnalul util. %2ist mai multe criterii #e clasificare a senzorilor utilizai ,n sistemele #e coman# ale robotului in#ustrial< 1. #u" cum -ine sau nu ,n contact cu obiectul a crui "ro"rietate fizic o msoar0 #istin)em< B senzori cu contactD B senzori fr contactD 2. #u" "ro"rietile "e care le "un ,n e-i#en< B senzori "entru #eterminarea formelor /i #imensiunilor @"entru e-aluarea ,n me#iu #e lucruAD B senzori "entru #eterminarea "ro"rietilor fizice ale obiectelor @#e for0 #e cu"lu0 #e #ensitate /i elasticiAD B senzori "entru "ro"rieti c8imice @#e com"oziie0 #e concentraie0 analizatoare com"le2eAD B #u" me#iul #e cule)ere a informaiei<
14 14

Minirobot mobil cu senzori pentru detectare obstacole

aA senzorii "entru me#iul e2ternD bA senzorii "entru funcia internD B #u" #istana la care sunt culese informaiile a-em senzori #e contact.

#$. Tipuri de robo%i &obili/

7i)ura 4-$inirobot A*RA! 2. A*RA! 2 este un robot micromouse care folose/te un "rocesor C&U ?(51.A*RA! 2 folose/te senzori "entru a o rece"ta c1n# se ,ntoarce ,na"oi. &laca C&U folosete o "lac PS?(51-A2. &laca PS?(51-A2 este foarte bine construit.7olose/te resurse e2terne #e "utere cum ar fii >C=0 A=C0 #ouQ ceasuri e2terne0 auto-7las8 scriere /i altele. A*RA! 2 utilizeaza /ase senzori oferin#u-i astfel "osibilitatea #e a se #ea"lasa "e #ia)onal.Un simulator &C este "re-zut0oferin#u-i "osibilitatea utilizatorului #e a ,ntele)e mai bine ni-elul inalt #e cutare al)oritmic a mouseului.Co#ul sursa C este im"lementat astfel ,ncat "ro)ramatorul "oate #ez-olta mai usor alt)oritmi care "ot fi testati cu a5utorul unui simulator si a"oi im"lementat mouseului.
15 15

Minirobot mobil cu senzori pentru detectare obstacole

.n "lus0>C=0comunicatie seriala0controlul mouse-ului "recum si alte functii sunt furnizate sub forma #e librarie si fisiere sursa.&entru cei ce -or sa in-ete mouse-ul la un ni-el inalt0A*RA!2 furnizeaza un me#iu e2celent #e #ez-oltare0teste al)oritmice0"recum si multe altele. A*RA! 2 a a"arut "e co"erta "ublicatiei franceze R$*CR4SSR4O4!S R. CARAC!%R*S!*C* A*RA! 2 - ca"abil #e re)lare "ro"rie.*n-a #in mers. - 7olose/te 6 senzori #in#u-i "osibilitatea #e a se #e"lasa "e #ia)onala - U/or #e asamblatT#ezasamblat - &ort #e re,ncarcare - *nstructii #e asamblare si manual al utilizatorului - *nclu#e un simulator &C "t. accelerarea #ez-oltarii - >ibrarii0co#uri sursa C - A*RA!2 baterie@3i$8-45(A =escriere

7i)ura 5-Oateria A*RA! 2. Oaterie 3i$8.$arime 35'35'16mm &utere .2 +@1.2'6A0 45(mA8

RC' 1.(
16 16

Minirobot mobil cu senzori pentru detectare obstacole

7i)ura 6-$inirobot RC' 1.(. Una #intre "rinci"alele structuri #e robot mobil0 construit /i utilizat ,n ca#rul testelor0 este "rezentat ,n fi)ura . *nclu#e #ou roi acti-e ,n "artea #in s"ate0 acionat fiecare #e c1te un motor #e curent continuu montat ,ntr-o "ies >%E40 /i o roat "asi- ,n "artea #in fa. .n -1rful construciei este am"lasat unitatea #e coman#0 RC'0 conectat la cele #ou motoare @A /i CA ,n "ro)ramele "rezentate la senzorul #e lumin #in frunte @senzor 1 ,n "ro)rameA. Acest senzor este constituit #intr-un >%= @#io# luminiscentA0 care )enereaz un fascicul #e lumin ro/ie /i un foto#etector care rece"ionez lumina reflectat #e "o#ea /i )enereaz la ie/ire o tensiune electric0 "ro"orional cu intensitatea luminii reflectate. Roile acti-e sunt acionate "rin interme#iul a #ou tre"te #e an)rena5e cu roi #inate. &rima inclu#e un "inion cu ? #ini0 montat "e a2ul motorului @"inionul #e culoare #esc8is #in fi)A /i o roat #inat cu 24 #e #ini0 iar a #oua0 este realizat "rin an)renarea roii interme#iare #e 24 #e #ini cu o roat #e 4( #e #ini0 care antreneaz a2ul roii acti-e. Ra"ortul #e transmitere "oate fi calculat cu formula< i L @24T?A U @4(T24A L 50
17 17

Minirobot mobil cu senzori pentru detectare obstacole

Asi)ur o re#ucere #e 5 la 1 a -itezei un)8iulare a motorului /i o am"lificare #e 1 la 5 a momentului #ez-oltat #e motor. =irecia #e #e"lasare a robotului este controlat0fie "rin mi/carea roilor acti-e ,n sensuri o"use0 fie "rin #e"lasarea acestora cu -iteze un)8iulare #iferite. %"son a creat cel mai mic microrobot zburator #in lume

7i)ura -$icro 7lVin) Robot.

!o;io0Pa"onia03oiembrie 1 Sei;o %"son Cor"oration@H%"sonIA au creat W7R@H$icro 7lVin) RobotIA0cel mai mic "rototi" zburator microrobot. %"son au creat W7R "entru a #emonstra te8nolo)ia micromecatronica care s-a #ez-oltat in laboratoare in ultimii ani si "entru a e2"lora "osibititati "entru microroboti si #ez-oltarea a"licatiilor "entru com"onentele te8nolo)ice. Com"ania a "rezentat ultimele oferte la %2"ozitia *nternationala Robotica #in 2((30 care a a-ut loc la !o;Vo Oi) Si)8t ,ntre 19 - 220 2((3. Oaz,n#u-se "e "ro"ria te8nolo)ie mecatronica0care este una #in te8nolo)iile 1((F a"artin1n# com"aniei0 %"son a #ez-oltat si a -1n#ut o familie #e roboti cunoscut sub numele #e %$RoS0ince"an# cu $onsieur0 care a fost "us in -anzare in 1993 /i este "rezent in cartea Reco#rurilor ca fiin# cel mai mic microrobot #in lume.*n A"rilie %"son a creat $onsieur C **- &0un "rototi" #e microrobot care o"ereaza "e un motor ultra-subtire si

18 18

Minirobot mobil cu senzori pentru detectare obstacole

ultrasonic si un mo#ul Oluetoot8 #e ti"o re#uctor care "ermite multi"lelor unitati sa fie coman#ate "rin telecoman#a simultan. 7olosin# acesti roboti0 %"son #easemenea a realizat un robot ti" teatru #e balet..*n acest sens %"son0a 5ucat un rol #e "ionerat in cercetarea si #ez-oltarea microrobotilor "recum /i ,n a"licatiile com"onentelor te8nolo)ice. W7R "rezentat la e2"ozitie0 a "ro-oacat le-itarea "rin folosirea unor elice ce au o mi/care ti" contra-rotaie "ro"ulsate #e un motor foarte mic si ultrasonic care toto#ata are si ca mai mare "ro"orie "utere-)reutate #in lume si care este ec8ilibrat la semi-,naltime #e "rimul mecanism stabilizator #in lume ce folose/te un actuator liniar..n "lus0esenta micromecatronicii a fost asamblata intr-un monta5 te8nolo)ic foarte com"act "entru minimizarea mrimii si a )reutii unitii circuitului #e control. &rin #ez-oltarea W7R0 %"son a #emonstrat "osibilitatea #e e2tin#ere a razei #e acti-itate a roboilor #in s"aiul bi-#imensional @"m1ntulA ,n s"aiul tri#imensional@aerA.

Caracteristici ale W7R @$icro 7lVin) RobotA - mic0usor0motor ultrasonicD tinan# cont #e cercetarile com"aniei0 actuatorul W7R are cea mai mare "ro"orie )reutate-"utere #in lume. - mo#ul Xireless cu consum micD in1n# cont #e carcetrile com"aniei0 mo#ulul Xireless are cel mai mic consum #in lume. - !e8nolo)ie #e control la semi-inaltimeD Concluzii< .n lumea zilei #e azi0roboii au un rol im"ortant ,n mai toate #omeniile -ieii noastre. =omeniile #e utilizare sunt foarte -ariate ince"an# #e la mi5loace #e trans"ort /i termin1n# cu e2"lorarea s"atiala.4#ata cu #ez-oltarea te8nolo)iei0 cu at1t mai muli roboi

19 19

Minirobot mobil cu senzori pentru detectare obstacole

sofisticai ,/i -or face a"ariia ,n a/a fel inc1t /i -iaa uman -a cunoa/te o imbuntaire semnificati-.

CAPITOLUL II STUDIUL DI A"ICII ROBOTULUI "OBIL CU RO!I

'$# "odel cine&atic robot .n ca#rul acestei analize0consi#erm robotul ca un cor" ri)i# cu roi0#e"lasn#u-se "e un teren "lat.Sunt necesari 3 "arametri "entru a "oziiona cor"ul robotului ,n "lanul res"ecti-< #oi "entru a #etermina "oziia acestuia ,n ra"ort cu ori)inea sistemului #e a2e ata/at "lanului0 iar al treilea "entru #eterminarea orientrii acestui cor" ,n ra"ort cu a2a -ertical0 "er"en#icular "e "lan.%2ist mi/cri su"limentare #atorate rotaiei roilor ,n 5urul a2elor "ro"rii0 res"ecti-e cu"lelor cinematice #e orientare.&rin cor"ul robotului ,ntele)em #oar cor"ul ri)i# al acestuia0 i)nor1n# cu"lele cinematice #intre acest cor" /i roi. Un -e8icul aflat "e un teren "lat are 3 )ra#e #e libertate< 2@20zA ce #escriu "oziia /i unul referitor la orentarea Y@rotaia ,n 5urul a2ei -erticaleA..n )eneral roboii
20 20

Minirobot mobil cu senzori pentru detectare obstacole

mobili nu au control com"let in#e"en#ent al celor 3 "arametii ce #efinesc situaia lui /i trebuie s efectueze mane-re com"le2e "entru a atin)e o anumit situare. Unele -e8icule au roi su"limentare sau "uncte #e contact0 cu rolul #e su"ort #ar fr a contribui la orientare sau "ro"ulsie.Cunoscute ca roi "asi-e@e2 roi #e ti" castorA0 acestea sunt #e obicei i)norate ,n mo#elarea cinematic a unui robot mobil. '$#$# "odel cine&atic robot ac%ionare diferen%ial* &entru a s"ecifica situarea instantanee a robotului ,n me#iul ,n care se #e"laseaz0 stabilim o relaie #e le)tur ,ntre sistemul #e referin f /i sistemul #e a2e curent0ata/at cor"ului robotului
B

&lanului * se ata/eaz sistemul #e referin fi2 '(((Z(.

B Cor"ului robotului i se ata/eaz sistemul #e a2e 'R4RZR0 ,n "unctul &


B

Cores"unztor "oziiei iniiale a robotului0 se consi#er notaia 'R(4R(ZR(

7i)ura?-$o#el cinematic robot cu 2 roi

21 21

Minirobot mobil cu senzori pentru detectare obstacole

Coor#onatele "unctului &0 #eterminate ,n ra"ort cu ori)inea 4( a sistemului #e referin scrise sub form matriceal sunt<

@3A

B 2(0V(0Y( sunt "arametrii ce e2"rim "oziia /i orientarea cor"ului robotului ,n ra"ort cu sistemul #e referinD B 2R(0VR(0YR( sunt "arametrii ce e2"rim "oziia /i orientarea cor"ului robotului ,n ra"ort cu sistemul #e a2e ata/at acestuia0 sistemul cores"unztor "oziiei iniiale B 20V0Y sunt "arametrii ce e2"rim "oziia /i orientarea "oziiei iniiale a cor"ului robotului@"oziiei iniiale a sistemului #e a2e ata/at cor"uluiA ,n ra"ort cu sistemul #e a2e #e referin.

Robotul care face obiectul lucrrii este un robot cu acionare #iferenial.Acest ti" #e acionare este una #intre cele mai sim"le soluii #e roboi mobili cu roi. Robotul are 2 roi con-enionale fi2e0ata/ate "e /asiu.Utilizarea #e -iteze un)8iulare #iferite "entru cele 2 roi con#uce la sc8imbarea #ireciei #e mers.

@4A

22 22

Minirobot mobil cu senzori pentru detectare obstacole

7i)ura 9- =e"lasarea robotului.

Cunosc1n# -itezeleT"oziiile roilor se cere -itezaT"oziia robotului.

Se cunosc < -1L[1 r D -2L[2 r

23 23

Minirobot mobil cu senzori pentru detectare obstacole

7i)ura1(-Re"rezentarea -itezelor un)8iulare a 2 roi. un#e rLraza roilor /i [10 [2L -itezele lor un)8iulare &entru efectuarea analizei0 se -a "roce#a ,n felul urmtor< 1. Se s"ecific mrimile necesare efecturii calculului@#imensiuni ale

robotului0 un)8iul #e orientare al robotului0YA 2. Se #etermin "unctul ,n 5urul carua se rote/te robotul@ centrul

instantaneu #e rotaieA0 res"ecti- raza traiectoriei #escrise #e robot. 3. 4. Se #etrmin -iteza un)8iular a robotului. Se inte)reaz relaia obinut0 "entru a obine "oziia robotului.

2.1.2 Determinarea C.I. .

1.=eterminarea mrimilor necesare efecturii calculului@#imensiuni ale robotuluiD un)8iul #e orientare al robotuluiA. 2 Se ata/eaz robotului un sistem #e a2e /i se msoar un)8iul #e rotaie al sistemului curent ,n ra"ort cu sistemul iniial #e referin. Centrul instantaneu #e rotaie este la intersecia a2elor roilor "entru cele 2 "oziii.
24 24

&unctul #e contact al fiecrei roi trebuie s se roteasc cu acea/i -itez un)8iular \ ,n 5urul centrului instantaneu #e rotaie.

7i)ura 11- =eterminarea C.*.R

. 3.=eterminarea -itezei un)8iulare 0\0 a robotului -1L[1rL\@R]>T2A

-2L[2RL\@R->T2A Rezult \L@-1--2AT> RL>@-1]-2AT@-1--2A B &entru traiectoria rectilinie -1L-2 \L( /i RL

7i)ura 12-!raiectoria rectilinie.

B &entru traiectorie circular cu raza R- relaiile sunt cele "rezentate anterior. Se #etermin e2"erimental c< >L1( cm -1L(.5mTs /i -2L(.3 mTs \L2 ra#Ts /i RL16 cm
2

B &entru "i-otarea ,n 5urul roii -1L-2 RL \L(

7i)ura13-&i-otarea ,n 5urul roii 2.

B &entru "i-otare@ rotaie ,n 5urul a2ei -erticale centraleA -2L--1LJ\L2-1T>L-2-2T> RL( -1L[1rL\@R]>T2A -2L[2rL\@R->T2A Rezult \L@-1--2AT> RL>@-1]-2AT@-1--2A +iteza liniar a robotului este< -L\ RL@-1]-2AT2L(.4 mTs

7i)ura14-&i-otarea ,n 5urul a2ei -erticale.

*nte)rarea ultimei ecuaii "entru obinerea "oziiei robotului #2L-2@tA#tD #VL-V@tA#tD #YL\@tA#tD -2@tAL-@tAcos@Y@tAAD

7i)ura 15-=e"lasarea robotului. -V@tAL-@tAsin@Y@tAAD &rin inte)rare se obine 2@tAL V@tAL Y@tAL \L@-1--2AT> #t]2(D #t]V(D #t]2(D

RL>@-1]-2AT@-1--2A -L\RL@-1]-2AT2 %cuaiile cinematicii #irecte se scriu sub form matriceal ,n ra"ort cu sistemul #e referin<

@5A

@6A

Contribuia roii 1 la -iteza robotului este< -21L@[1 rAT2L(.25 mTs -V1L(

30 30

7i)ura 16- Contribuia roii 1 la #e"lasarea robotului.

\1L@[1 rAT>L5 ra#Ts Contribuia roii 2 la -iteza robotului -22L@[2 rAT2L(.15 mTs -V2L( \2 L @[2 rAT>L-1 ra#Ts

31 31

7i)ura 1 - Contribuia roii 2 la #e"lasarea robotului.

%cuaiile cinematicii #irecte scrise ,n ra"ort cu sistemul #e a2e ata/at robotului sunt< -2@@tAL-21]-22L(.4 mTs -V@@tAL-V1]-V2 \@tAL\1]\2 Se face i"oteza c roile nu "ot aluneca lateralLJ com"onenta #u" a2a V este (.=ac robotul #escrie o traiectorie circular cu raza R0 lun)imea arcului #escris #e acesta este< ARL@A1-A2AT2 un#e A1L@R]>T2A Y A2L@R >T2A Y
32 32

7i)ura 1?- !raiectoria circular a robotului.

>un)imea cercului #escris #e "unctul #e contact al roii 1 este #at #e relaia C1L2 A

YLA1T@R]>T2A Similar "entru roata 2 C2L2 A

33 33

7i)ura 19-Re"rezentare a 2 roi.

=e un#e rezult< R A2TY

.nlocuin# aceast relaie ,n YLA1T@R]>T2A &rin ,nlocuire se obine< YL@A1 A2AT> =e aici se #e#uce urmtoarele concluzii< B orientarea Y a robotului este com"let in#e"en#ent #e raza traiectoriei #escrise #e acesta B =imensiunea > este o surs #e erori #in cauza uzurii /i com"lianei "neurilor >un)imea traiectoriei #escrise #e "unctul #e contact al roii "oate fi calculat cu relaia<

34 34

A1L@2^ ^31^Ref 1AT!1 31Lim"ulsurile numrate #e tra#uctorul #e "oziie al roii 1 !1Lnumrul #e im"ulsuri "e o rotaie a roii 1 Ref1Lraza efecti- a roii 1 Similar "entru roata 2 A2L@2^ ^32^Ref 2AT!2 &entru a se #e"lasa #u" o traiectorie rectilinie 0robotul -a "stra 31L320 #ar #ac cele 2 "neuri au "resiuni #iferite 0razele lor for fii #iferite.

7i)ura 2(- =e"lasarea unei roi "este un obstacol.

Consi#erm o roat teoretic0 ri)i#@necom"liantA0a-1n# raza R /i "resu"unem c aceasta trebuie s treac "este un obstacol cu ,nlime 8.
35 35

Roata se -a #e"lasa "e su"rafaa C "1n c1n# ,nt1lne/te obstacolul 31L32 =istana "erce"ut #e tra#uctor ca fiin# "arcurs #e roat este Am =istana real "arcurs este A8. %roarea #e "oziionare un)8iular a robotului -a fii< _Y L 2 @Am-A8A

7i)ura 21- =e"lasarea unei roi ri)i#e "este un obstacol

Atunci c1n# roata tra-erseaz o )roa" aflat ,n terenul ,n care se #e"laseaz0obstacolele /i )ro"ile ,n teren "ro#uc erori "ri-in# #eterminarea corect a "oziiei robotului.%rorile sunt cauzate /i #e alunecarea roilor ca urmare a e2istenei unor "ete #e unsoare "e su"rafaa res"ecti-0 #e im"actul cu obstacole sau #e accelerarea /i #ecelerarea e2cesi- sau #e im"actul cu obstacole.

36 36

CAPITOLUL III PROI0CTAR0A 0L0"0 T0LOR CO STRUCTIV0

Te&a te1nic* a lucr*rii S se "roiecteze /i s se realizeze "latforma mobil a unui minirobot care s ,n#e"lineasc urmtoarele con#iii te8nice &arte mecanic B $asa total<45( )rame B +itez ma2im<(.5 mTs B Roi motoare< 2 cu acionare in#e"en#ent B 2 sfere montate "e /asiu cu rol #e meninere ec8ilibru B Ear#a la sol@#istana #intre cel mai 5os element mecanic /i solA<minim 5 mm B Ca#rul #e susinere@/asiuA

&arte electric B !i" motor #e acionare curent continuu@ cu e2citaie "aralelA B Oaterii< 4 1.5+@curent continuuA B 1 senzor infraro/u S8ar" B 2 >%=-uri B 5 "orturi analo)ice "entru conectarea senzorilor /i un "ort #e comunicaie serial B 2 senzori #e contact B 2 reflectori infraro/ii B 2 le#uri semnalizare B 1 telecoman# cu emisie infraro/u B 1 recei-er infraro/u01 afi/or cu cristale lic8i#e01 senzor #e tem"eratur &arte informatic B Coman# motoare< "ro)ramare microcontroler B =ez-oltarea "ro)ramelor res"ecti-e

PROI0CTAR0A 2I R0ALI3AR0A "I IROBOTULUI$

($# 0le&entele co&ponente ale &inirobotului

senzor infraro/u s8ar"

senzor #e tem"eratur

afi/or cu cristale lic8i#e

7i)ura?-%lementele com"onente ale robotului

Com"onenta #e baz a robotului o constituie "laca microcontrolerului "e care este "rezent microcontrolerul Atmel A!$%EA?-16&* ,m"reun cu #iferite circuite au2iliare #e interfa cu #iferite me#ii "rintre care enumerm circuitul inte)rat >293= cu rol #e "unte K ce ,n#e"line/te rolul #e am"lificare al semnalului #e la "inii microcontrolerului /i acionare #e "utere a motoarelor #e curent continuu /i circuitul inte)rat !>499 care are rol #e stabilizator #e tensiune. &e l1n) aceasta mai a-em #ou motoare #e curent continuu #oi senzori #e contact un senzor infraro/u S8ar" /i alte com"onente mecanice care utilizeaz ca me#iu #e "ro)ramare limba5ul C.

7i)ura9-+e#ere lateral minirobot

40 40

Robotul este conce"ut "e #ou roi motrice #in "lastic cu membran #e cauciuc iar "e /asiu se mai )se/te 2 sfere cu rol #e ec8ilbrare .%ste alimentat cu 4 baterii #e 1.5 -oli ti" AA. &entru a ,nnobila "artea electronic robotul a fost #otat cu senzori infraro/ii "entru urmrire o linie nea)r0 2 contactori "entru atins obstacole si e-itarea lor 0un senzor #e tem"eratura "entru #eterminarea tem"eraturii obiectelor cu care -ine in contact0 un afi/or cU cristale lic8i#e "entru scriere #iferite mesa5e si un senzor infrarosu S8ar" care ocole/te obstacole si care #easemenea "oate #etermina #istana "1n la un anumit obiect. Robotul "oate fii mani"ulat cu a5utorul unei telecomenzi *R "rin interme#iul unui recei-er *R.

41 41

7i)ura 9- &lanul )eneral al "lcii microcontrolerului.

($' Placa &iniribotului$ B &rinci"alul microcontrolor este #e ti" A+R "e ? bii #e la AtmelD A!me)a?. Conine multe trsturi caractersitice microcontrolorului mo#ern cum ar fii< Con-ertizorul Analo) =i)ital@A=CA "e 1( biti0 "ro)ramul 7las8 #e memorie ?:b cu 1(((( cilcluri /ter)ere-scriere0 =ata %%&R4$ #e 512 bVtes si RA$ 512 bVtes. B 7rec-ena intern a ceasului #e 16$Kz. B 5 &orturi *ntrareT*e/ire "e 3 "ini cu 5 canale "ro)ramabile.Acestea se "oate intrebuin%a ca "ort #i)ital #e intrare0 "ort #i)ital #e ie/ire /i "ort analo) #e intrare.Alimentarea se face la o tensiune normal #e 5+ Conine un "ort "entru conectarea Rece"torului *nfraro/u cu frec-ena #e 3?:Kz.Acesta este #esemnat s "artici"e cu Semnalul Serial #e "rimire@R2=A ctre #is"oziti-ul e2terior #e comunicare. B &iezo#ifuzor "entru semnale sonore. B 2 comutatoare "entru a"asare@sXitc8-uriA. B Comutator #e restartare. B 2 in#icatoare >%= acti-e atunci can# lo)ic este H1I. B 2 canale "entru motoare in curent continuu alimentate la o tensiune #e 4.5 + /i intensitate 6(( mA cu in#icatoare >%=. B Alimentarea se face cu 4 baterii ti" AA.

42 42

B Circuit inte)rat "entru a menine o tensiune constanta #e 5 -oli atunci c1n# motoarele funcioneaz. B Se mai )sesc #e asemenea )rafuri@rezistene care au rol #e a limita trecerea curentului /i con#ensatori care ,nma)azineaz curent /i a"oi ,l #escarcA

43 43

7i)ura 1(- Sc8ema electric a "lcii #e baz a minirobotului


44 44

!.2.1 Descrierea funcionrii plcii de ba"a a minirobotului &iesa "rinci"al o constituie microcontrolorul A!me)a?. 7unctioneaz la o frec-en #e 16$Kz #in crVtal care este conectat la "inii &O6 /i &O . !oate "orturile "ot fii "ro)ramabile "entru intrareTie/ire analo) sau #i)ital.Semnalele analo)e #in "orturile &C( -&C4 trec "rin Con-ertorul Analo) =i)ital . Rezoluia con-ersiei este #e 1( bii. &orturile &O30&O4 /i &O5 sunt "orturi &ro)ramare *n Sistem. &inul &C6TReset este conectat cu comutatorul R%S%! "entru restartarea o"eraiilor microcontrolorului #e catre utilizator. &inul &=(TR2= este rece"tor serial.&artici" cu conectorul *R$@Senzorul *nfraro/uA /i "ortul #e comunicare "e 5 "ini Serial. &inul &=1T!2= transmite serial.&artici" la acti-area >%=5@etic8etat *3=2A /i a "inului !2= &entru >%=4@*3=1A este conectat #irect la &C5 cu rezistor #e limitare a curentului &laca #e baza a minirobotului conine /i 2 comutatoare conectate la &=2 /i &=3 acti-1n# un rezistor #e 4. ;\ care seteaza ni-elul lo)icIKi)8I ,ntr-o o"eraie normal /i sc8imb la ni-elul lo)ic H>oXI sau H(I can# este a"sat comutatorul. &inul &=4 este conectat la un &iezo #ifuzor #e ca"acitate 1(W7. =e asemenea "e "lac se mai )se/te #is"oziti-ul =C circuit motor current continu.=is"ziti-ul *C este >2932= K-&unte. Un #is"oziti- circuit motor curent continu necesit 3 "ini semnal "entru funcionare.A@ "inii &=6 /i &=(A /i O@ "inii &= /i &=5A sunt intrri "entru a"licarea semnalului /i selectarea sensului #e rotaie a motorului. %@"inii &O1 /i &O2A sunt folosii "entru acti-area /i #ezacti-area funcionrii circuitului #is"oziti-.&rin a"licarea semnalului &`$ la ace/ti "ini se
45 45

"oate controla /i -iteza motorului.=aca semnalul &`$@&ulse `i#t8 $o#ulationA are lr)ime ,nseamna ca ni-elulI8i)8I a fost trimis ctre ie/irea motorului. Circuitul #e alimentare este #e ti" ,ntreru"tor.!>499A are funcia #e stabilizator "entru alimentarea circuitului microcontrolerului la o tensiune #e ]5+. >a ie/irea >2932=0 un le# bi-color este conectat "entru a in#ica "olul -olta5ului.Culoarea -er#e ,nseamna ,nainte0culoarea ro/u ,nseamna ,na"oi.

!.2.2 #icrocontrolerele $% 7a #e micro"rocesor0 microcontrolerul are inte)rat "e acela/i c8i" oscilatorul0 memoria "ro)ram0 o memorie RA$0 numrtoare0 interfee #e comunicaie /i "orturi #e intrare ie/ire. =e asemenea ,n structura unor microcontrolere mai sunt inte)rate blocuri analo)ice cum ar fi < con-ertoare analo) numerice #e ?0 1( sau 12 bii0 com"aratoare analo)ice0 mo#ulatoare &`$0 etc. !i"urile mai noi #e microcontrolere au inte)rata ,n structura /i o memorie %%&R4$ necesar "entru memorarea setrilor sau "arametrilor a"licaiei la c#erea tensiunii #e alimentare. >a fel ca /i micro"rocesoarele0 unele ti"uri #e microcontrolere "ot a#resa o memorie
46 46

"ro)ram /i o memorie RA$0 e2terne. =atorita "reului re#us #e cost /i sim"litii #e utilizare0 au cunoscut o #ez-oltare s"ectaculoas microcontrolere cu memorie flas8 @memorie %%&R4$A. $emoria "oate fi /tears /i ,nscris #e mai mult #e 1((( #e ori0 numr suficient #e mare "entru "unerea la "unct a oricrei a"licaii. "reul unui microcontroler cu memorie flas8 incor"orat este #e c1i-a #olari0 ,n funcie #e caracteristici /i #e )ra#ul #e com"le2itate. Acela/i microcontroler ,nscris cu un "ro)ram #e a"licaie0 se "oate -in#e cu un "re #e la 2 "1n la 1(( #e ori mai mare. "e "iaa #e com"onente electronice e2ist o #i-ersitate foarte mare #e familii #e microcontrolere. 7irmele "ro#uctoare #e microcontrolere au ,n "ro#ucie zeci #e -ariante #e microcontrolere cu o )am -ariat #e caracteristici. Una #in cele mai cunoscute familii #e microcontrolere este seria a51 a firmei *ntel. Aceast familie #e microcontrolere este "ro#us #e mai multe firme @*ntel0 Siemens0 &8ili"s0 Atmel0 $KS etc.A care0 "ornin# #e la o structura #e baza0 au creat o -arietate foarte mare #e ti"uri #e microcontrolere. &rimul ti" #e microcontroler #in seria b51 a"rut "e "ia a fost microcontrolerul

47 47

*?(4?. Acest microcontroler este folosit "entru comunicaia cu tastatura ,n calculatoarele &C. 4 alt clas #e familii #e microcontrolere ce s-a im"us "e "ia ,n ultimul tim" este cea a microcontrolerelor cu structura R*SC @re#uce# instruction set com"uterA. S"re #eosebire #e microcontrolerele cu un set com"le2 #e instruc iuni #e ti" C*SC @com"le2 instruction set com"uterA0 microcontrolerele cu ar8itectura R*SC au un set re#us #e instruciuni care0 ,ns0 ,n cele mai multe cazuri0 se e2ecut ,ntr-un sin)ur ciclu #e ceas. &entru microcontrolerele R*SC memoria "ro)ram este or)anizat "e 120 14 sau 16 bii. Co#ul #e "ro)ram este citit intr-un sin)ur ciclu #e ceas iar "rocesarea informaiilor se face "aralel. $area ma5oritate a microcontrolerelor R*SC au "osibilitatea #e ,nscriere a "ro)ramului #e a"licaie #irect ,n circuit. .nscrierea ,n circuit *S& @,n sVstem "ro)rammin)A se face "e interfaa serie S&*. =intre familiile #e microcontrolere cu ar8itectura R*SC amintim seria #emicrocontrolere &*C micro ale firmei $icroc8i" @&*C 12C5(?0 &*C 12C5(90 &*C 12C%5190 &*C 12C6 20 &*C 12C%6 4 etc.A /i seria A+R a firmei Atmel.@A!9(S12((0 A!9(S23130 A!9(S23430 A!9(S44330 A!9(S?5150 A!9(S?5350 A!9(C?5340 A!!*3Z220 A!$%EA1(3 etc.A. $icrocontrolere A+R au o structura R*SC nou0 realizat ,n anii 9(. Ar8itectura
48 48

acestor microcontrolere a fost elaborat ,n colaborare cu e2"eri ,n limba5ul C0 rezult1n# un "ro#us ce are un set eficient #e instruc iuni0 care "ermite scrierea unor "ro)rame #e a"licaie "erformante0 cu un co# o"tim. $a5oritatea instruciunilor im"lementate ,n microcontrolerele A+R se e2ecut ,ntr-o sin)ur "erioa# #e ceas. >a aceea/i frec-en #e lucru0 microcontrolerele A+R au o -itez #e lucru #e "este 1( ori mai mare fa #e microcontrolerele cu structura clasic #in seria a510 la care o instruciune se e2ecut ,n 12 "erioa#e #e ceas. Un alt a-anta5 al microcontrolerelor #in seria A+R este acela c au im"lementat un set #e 32 #e re)i/trii #e lucru cu funcie #e acumulator0 fa #e unul sin)ur ,n cazul celorlalte microcontrolere. !oate microcontrolerele #in seria A+R au im"lementat un numrtor Xatc8#o) /i ma5oritatea au funcia *S& "entru "ro)ramare ,n circuit. 3.2.3 $icrocontrolerul Atmel A!me)a? A!me)a? este un microcontroller C$4S loX-"oXer "e ? biti0 bazat "e ar8itectura A+R R*SC. &rin e2ecutarea unor instructiuni "uternice ,ntr-un sin)ur moment #e tact0 A!me)a? a5un)e la "erformana #e 1 $*&S "e $Kz "ermi1n#u-i #esin)nerului #e sistem s o"timizeze consumul #e "utere contra -itezei #e "rocesare. A!me)a? are urmatoarele caracteristici < B microcontroller loX-"oXer "e ? bii0 bazat "e ar8itectura A+R R*SC. B ?: bii #e 7las8 &ro)rammable *n-SVstem cu ca"acitate citire in tim"ul scrierii.%ste folosit "entru memorarea unui "ro)ram scris. &entru c memoria ce este

fcut ,n te8nolo)ia 7>ASK "oate fi "ro)ramat /i /tears mai mult #ec1t o#at0 aceasta face microcontrolerul "otri-it "entru #ez-oltarea #e com"onent B 512 biti #e %%&R4$-memorie #e #ate ce trebuie sa fie sal-ate c1n# nu mai este alimentare.%ste ,n mo# uzual folosit "entru ,nma)azinarea #e #ate im"ortante ce nu trebuie "ier#ute #ac sursa #e alimentare se ,ntreru"e #intr-o #at.=e e2em"lu o astfel #e #at este o tem"eratur "restabilit ,n re)ulatoarele #e tem"eratur.=ac ,n tim"ul ,ntreru"erii alimentrii aceast #at se "ier#e0 --a trebui sa facem a5ustarea ,nc o #at la re-enirea alimentrii.Astfel com"onenta "ier#e ,n "ri-ina auto-menineriiD B 1: bit #e SRA$-memorie #e #ate folosit #e un "ro)ram ,n tim"ul e2ecutrii sale..n SRA$ sunt ,nma)azinate toate rezultatele interme#iare sau #atele tem"orare ce nu sunt cruciale la ,ntreru"erea sursei #e alimentare. B 32 #e re)istri cu sco" )eneralD B 23 #e linii )enerale *T4 )ru"ate ,n 3 "orturi. &4R!U> O 0 &4R!U> C /i "ortul = care sunt cone2iuni fizice ,ntre microcontroler /i lumea #e afar.

50 50

7i)ura 11-$icrocontrolerul A!me)a? B 2 CronometreT3umaratoare "e ? bii fle2ibile cu mo#uri #e com"arare0 intreru"eri interne si e2terne0 B CronometruTnumrtor "e 16 bii cu mo#uri com"arare 0mo#uri ca"atare ,ntreru"eri interne /i e2terneD B Cronometru tim" real cu oscilator se"aratD B 3 Canale &`$D B 6 Canale A=C cu acuratee #e 1( biiD B USAR! serial-"ro)ramabil0 B *nterfata Seriala0 A#C cu 6 canale @ ? canale in !c7& si "ac8ete $>7 A cu acuratee #e 1( biti0 B Cronometru #e su"ra-e)8ere cu oscilator intern0 un "ort serial S&* si 5 mo#uri softXare #e economisire #e "utere. $o#ul *#le o"reste unitatea centrala in tim" ce "ermite SRA$-ului0 cronometrelorTnumaratoarelor0 "orturilor S&* /i sitemului #e ,ntreru"ere s funcioneze. $o#ul &oXer-#oXn sal-eaz coninutul re)istrelor #ar in)8ea oscilatorul0 fc1n# inca"abile orice alte functii ale ci"-ului "1na la urmatoarea ,ntreru"ere sau resetare #e 8ar#. .n mo#ul &oXer-sa-e numrtorul asincron continu s functioneze0 fa"t ce "ermite utilizatorului sa mentin o baz ,n tim" ce restul #is"oziti-ului este in re"aus. $o#ul A=C 3oise Re#uction o"re/te Unitatea central si toate mo#ulele #e *T4 cu e2ce"tia numrtorului asincron si A=C-ul0 "entru a minimaliza z)omotul #e comutaie #in tim"ul con-ersiei A=C..n mo#ul Stan#bV functioneaza #oar oscilatorul in tim" ce restul #is"oziti-ului este in re"aus.

51 51

=is"oziti-ul este fabricat folosin# te8nolo)ia #e memorie -olatile cu #ensitate mare Atmel. $emoria flas8 "oate fi re"ro)ramata folosin# o interfata seriala S&* 0 "rintr-un "ro)ram #e memorie con-entional non-olatile.&ro)ramul boot "oate folosii orice interfaa "entru a #escarca "ro)ramul #e a"licatii #in memoria #e a"licaii flas8. Softul #in sectiunea #e boot flas8 -a continua sa ruleze in tim" ce a"licatiile flas8 sunt u"#atate furniz1n# o"eraii reale #e citire ,n tim"ul scrierii. Combin1n# o unitate centrala R*SC "e ? biti cu flas8 self "ro)rammable in sistem0 "e un ci" monolit8ic 0 Atmel A!me)a? #e-ine un microcontroler "uternic care furnizeaza solutii e2treme #e fle2ibile si o"time ca "re "entru multe a"licatii. A!me)a? A+R este #otat cu un set com"let #e "ro)rame si instructiuni ce inclu# com"ilatoare C0 macro-asamblatoare si simulatoareTcorectoare #e "ro)rame0 emulatoare #e circuite si ;ituri #e e-aluare.

7i)ura12-Ar8itecturile Kar-ar# /i -on 3eXmann

Are o ar8itectura R*SC. Acest termen este a#eseori )asit in literatura #es"re calculatoare0 si are ne-oie sa fie e2"licat aici mai in #etaliu. Ar8itectura Kar-ar# este un conce"t mai nou #ecat -on-3eumann. S-a nascut #in ne-oia #e mrire a -itezei microcontrolerului. .n ar8itectura Kar-ar#0 bus-ul #e #ate /i bus-ul #e a#rese sunt se"arate. Astfel este "osibil un mare #ebit #e #ate "rin unitatea #e "rocesare central0 si bine,nteles0 o -iteza mai mare #e lucru. Se"ararea "ro)ramului #e memoria #e #ate
52 52

face "osibil ca mai #e"arte instruciunile s nu trebuiasc sa fie cu-inte #e ? biti. A!me)a? foloseste 14 biti "entru instructiuni ceea ce "ermite ca toate instructiunile sa fie instructiuni #intr-un sin)ur cu-ant. %ste #e asemenea ti"ic "entru ar8itectura Kar-ar# sa aiba mai "utine instructiuni #ecat -on-3eXmann si sa aiba instructiuni e2ecutate uzual ,ntr-un ciclu. $icrocontrolerele cu ar8itectura Kar-ar# sunt #e asemenea numite Hmicrocontrolere R*SCI. R*SC inseamna Re#uce# *nstruction Set Com"uter. $icrocontrolerele cu ar8itectura -on-3eXmann sunt numite Hmicrocontrolere C*SCI. !itlul C*SC inseamna Com"le2 *nstruction Set Com"uter. &entru ca A!me)a? este un microcontroler R*SC0 aceasta inseamna ca are un set re#us #e instructiuni0 mai "recis 35 #e instructiuni @#e e2. microcontrolerele *3!%> si $otorola au "este 1(( #e instructiuniA. !oate aceste instructiuni sunt e2ecutate intr-un ciclu cu e2ce"tia instructiunilor 5um" si branc8. Conform cu ceea ce s"une constructorul0 A!me)a? a5un)e la rezultate #e 2<1 in com"resia co# si 4<1 in -iteza in com"aratie cu alte microcontrolere #e ? biti #in clasa sa. =escrierea "inilor. &ortul O este un "ort #e iesire bi#irectional "e ? bii cu rezistoare interne0 selectate "entru fiecare bit. &ort C@&C5d&C(A este un bi#irectional *T4 "e bii cu rezistoare interne selectate "entru fiecare bit. *e/irea "ortului C are caracteristici simetrice . &C6TR%S%! =ac coninutul RS!=*SO> este "ro)ramat0 &C6 este folosit ca "in #e *T4. Caracteristicile electrice ale "ortului &C6 #ifera #e cele ale altor "ini ai "ortului C. &ortul = este un "ort #e *T4 bi#irectional "e ? biti cu rezistoare interne selectate "entru fiecare bit. =ac coninutul RS!=*SO>-ului este ne"ro)aramat0 &C6 este
53 53

folosit ca o resetare a ie/irilor. Un ni-el sczut "e acest "in "entru o lun)ime minim #e "uls -a )enera o resetare0 c8iar #aca ceasul nu este funcionabil.&ulsuri mai mici nu )aranteaz o resetare

54 54

3ume &O (

3umr "in 1 4

!i" * n tra re T* e /i re

=escriere

inirobot mob il cu senzori pent r u d e t e c tare M obst&aocrto=lei)ital


*C&1 *ntrare &O( *ntrare Ca"tare 1 &O1 4C1A 15 *ntrareT*e/ire *e/ire &O1 *e/ire Com"arareT&`$ 1A &O2 4C1O SS *e/ire *ntrare 16 *ntrareT*e/ire &O( *e/ire Com"arareT&`$ 1O *ntrare secun#ar "entru S&* /i *S& &O3 4C2 $4S* *e/ire *ntrareT*e/ire 1 *ntrareT*e/ire &O3 *e/ire Com"arareT&`$ 2O *ntrare #ate ,n mo# Sla-e ,ntre busul S&* /i *S& *e/ire #ate ,n mo# Sla-e ,ntre busul S&* /i *S& &O4 $*S4 1? *ntrareT*e/ire &O4 *ntrare #ate ,n mo# $aster ,ntre
55

&ort =i)ital

&ort =i)ital

&ort =i)ital

&ort =i)ital

busul S&* /i *S& *ntrareT*e/ire *e/ire #ate ,n

mo# Sla-e ,ntre busul S&* /i *S&

Minirobot mobil cu senzori pentru detectare obstacole

3ume

3umrul "inului

!i"ul

=escriere

&C( A=C(

23 e

*ntrareT*e/ir

&ort &C( *ntrare analo) canal (

*ntrare &C1 A=C1 24 e *ntrare &C2 A=C( 25 e *ntrare &C3 A=C3 26 e *ntrare &C4 A=C4 S=A e 2 e *ntrare *ntrareT*e/ir &ort &C4 *ntrare analo) canal 3 *nterfa serial *ntrareT*e/ir &ort &C3 *ntrare analo) canal 3 *ntrareT*e/ir &ort &C2 *ntrare analo) canal 2 *ntrareT*e/ir &ort &C1 *ntrare analo) canal 1

*ntrareT*e/ir bi#irectional

&C5 A=C3

2? e

*ntrareT*e/ir

&ort &C5 *ntrare analo) canal 4

56

Minirobot mobil cu senzori pentru detectare obstacole

SC>

*ntrare *e/ire

*e/ire serial "e 2 fire

&C6 R%S% !

1 e

*ntrareT*e/ir

&ort &C6 Resetare

*ntrare

3ume

3umrul "inului

!i"ul

=escriere

&=( R2=

2 e

*ntrareT*e/ir

&=( "ort #i)ital USAR!"rime/te

*ntrare &=1 !2= 3 e *e/ire &=2 *3!( 4 e *ntrareT*e/ir *ntrareT*e/ir

intrare &=1 "ort #i)ital USAR!transmite ie/ire &=2 "ort #i)ital .ntreru"e e2tern

57

Minirobot mobil cu senzori pentru detectare obstacole

*e/ire &=3 *3!1 5 e *e/ire &=4 'C: !( e *ntrare &=5 11 e *ntrare &=6 A*3( 12 e *ntrare &= A*31 13 e *ntrare *ntrareT*e/ir *ntrareT*e/ir *ntrareT*e/ir 6 e *ntrareT*e/ir *ntrareT*e/ir *ntrareT*e/ir

canal ( &=3 "ort #i)ital .ntreru"e e2tern canal 1 &=4 "ort #i)ital Ceas e2tern USAR! *ntrare e2tern !imer (

&=5 "ort #i)ital *ntrare e2tern !imer 1 &=6 "ort #i)ital *ntrare canal 2 com"arator analo) &=6 "ort #i)ital *ntrare canal 1 com"arator analo)

3um e

3umru l "inului

!i"ul

=escriere

58

Minirobot mobil cu senzori pentru detectare obstacole

+cc e E3= ?022 e A-cc 2( e AR% 7 21 e

*ntrar

Alimentare tensiune ,ntre 4.5 /i 5.5 +

*ntrar

$asa

*ntrar

Alimentare tensiune 5+"entru CA3

*ntrar

!ensiune intrare #e referina "entru CA3

59

Minirobot mobil cu senzori pentru detectare obstacole

7i)ura 13-=ia)rama bloc a microcontrolerului Oscilatorul

60 60

Minirobot mobil cu senzori pentru detectare obstacole

A!me)a? are ,ncor"orat un oscilator intern0 la care se conecteaz un rezonator ceramic mo#ul #e conectare este "rezentat ,n fi)ura #e mai 5os. +aloarea con#ensatoarelor ce se conecteaz la mas se ale)e ,n funcie #e frec-ena euarului @uzual 33-1(("7A. &entru a fi utilizat la coman#a altor blocuri electronice #in sistem ie/irea oscilatorului intern '!A>2 "oate fi ,ncrcat cu ma2im o sarcin KC. =e asemenea0 microcontrolerele "ot a-ea ca semnal #e ceas /i un semnal e2tern a"licat la intrarea '!A>1 @7i). 11A.

7i). 14- oscilatorul #e ceas

7i) 15 C folosire semnal e2tern

3umrtoarele $icrocontrolerul A!me)a? are im"lementat ,n structura interna #ou numrtoare #e ? /i res"ecti- /i unul #e16 bii. 3umrtoarele ( /i 1 #e ? bii )enereaz ,ntreru"ere la #e"/ire0 iar numrtorul 1 #e 16 bi i )enereaz ,ntreru"ere la #e"/ire0
61 61

"entru com"arare /i ca"tur. Ambele numrtoare au c1te un circuit #e "rescalare @#i-izare /i multi"le2areA "rin care se ale)e sursa semnalului #e intrare ,n numrtor. Circuitul #e "rescalare realizeaz #i-izarea ceasului sistemului cu ?0 640 256 si1(24. "entru fiecare numrtor se "ot ale)e urmtoarele surse ca semnal #e intrare< intrarea conectata la zero0 semnalul #e ceas0 cele "atru ie/iri ale blocului #e "rescalare sau un semnal e2tern @front cresctor sau #escresctorA. Sc8ema circuitului #e "rescalare a numrtoarelor este "rezentata ,n fi)ura 16.

7i)ura 16-Circuit #e #i-izare "entru numrtoarele ( /i 1

3umrtorul Xatc8#o) 3umrtorul Xatc8#o) este "ilotat #e un oscilator RC se"arat #in structura interna amicrocontrolerului. 7rec-enta #e oscilaie este #e 1 $Kz la tensiunea #e alimentare #e 5+ /i #e 35( :Kz la o tensiune #e alimentare #e 3 +. 7rec-enta semnalului #e intrare ,n numrtorul Xatc8#o) se obine #in oscilatorul RC "rin #i-izare. 7uncionarea numrtorului Xatc8#o) este controlata "rin re)istrul #e control `=!CR @Xatc8#o) timer control re)isterA *nterfaa USAR! $icrocontrolerul A!me)a? are im"lementat ,n structura intern o interfa serial asincron #e ti" USAR!. !ransmisia "entru aceast interfa se face cu urmtoarele caracteristici< - transmisie "e ? sau 9 bii - filtrarea z)omotului0 #etector #e su"rarece" ie - bit #e start fals sau li"sa bit #e sto" - )enerator "entru -iteza #e transmisie - 3 surse #e ,ntreru"eri !ransmisia se realizeaz "rin scrierea ,n re)istrul #e #ate U=R a #atei ce trebuie transmis. .n funcie #e setrile interfeei seriale USAR! #atele se -or transmite cu anumite caracteristici. &entru transmisia #e #ate e2ista 2 surse #e ,ntreru"eri /i anume ,ntreru"erea "entru re)istrul #e transmisie )ol /i ,ntreru"erea "entru transmisie #e #ate terminat. &entru rece"ie a-em o sin)ur surs #e ,ntreru"ere /i anume cea #e rece"ie caracter. Rece"ia se face cu acelea/i caracteristici ca /i transmisia. =atele ce se transmit "e interfa au urmtoarea structur<
63 63

- bit #e S!AR! - >SO -d - $SO - @bit 9A - bit #e S!4&

Con-ertorul Analo)-=i)ital folosit "e "laca #e baz este #e 1( bii fiin# conectat la un $ulti"le2or Analo) "e ? canale ceea ce "ermite ? intrri #e tensiune.!ensiunea #e referin "oate fii #ecu"lat e2tern la "inul AR%7 "rintr-un ca"acitor "entru eliminare z)omot. Unitatea #e "rocesare central are rolul unui element #e conecti-itate ,ntre celelalte blocuri ale microcontrolerului. Coor#oneaz lucrul altor blocuri /i e2ecut "ro)ramul utilizatorului. Cloc;-ul Tciclul instruciune Cloc;-ul sau ceasul este starter-ul "rinci"al al microcontrolerului0 /i este obinut #intr-o com"onent #e memorie e2tern numit 6oscilator6. =ac ar fi s com"arm un microcontroler cu un ceas #e tim"0 6cloc;-ul6 nostru ar fi un ticit "e care l-am auzi #e la ceasul #e tim". .n acest caz0 oscilatorul ar "utea fi com"arat cu arcul ce este rsucit astfel ca ceasul #e tim" s mear). =e asemenea0 fora folosit "entru a ,ntoarce ceasul "oate fi com"arat cu o surs electric. A"licaii

64 64

Atme)a?-16&* se "otri-e/te "erfect ,n multe folosine0 #e la in#ustriile auto /i a"licaiile #e control casnice la instrumentele in#ustriale0 senzori la #istan0 m1nere electrice #e u/i /i #is"oziti-ele #e securitate. %ste #e asemenea i#eal "entru car#urile smart ca /i "entru a"aratele alimentate #e baterie #in cauza consumului lui mic. $emoria %%&R4$ face mai u/oar a"licarea microcontrolerelor la a"arate un#e se cere memorarea "ermanent a #iferitor "arametri @co#uri "entru transmitoare0 -iteza motorului0 frec-enele rece"torului0 etc.A. Costul sczut0 consumul sczut0 m1nuirea u/oar /i fle2ibilitatea fac Atme)a?-16&* a"licabil c8iar /i ,n #omenii un#e microcontrolerele nu au fost "re-zute ,nainte @e2em"le< funcii #e timer0 ,nlocuirea interfeei ,n sistemele mari0 a"licaiile co"rocesor0 etc.A. &ro)ramabilitatea sistemului acestui ci" @,m"reun cu folosirea a #oar #oi "ini ,n transferul #e #ateA face "osibil fle2ibilitatea "ro#usului0 #u" ce asamblarea /i testarea au fost terminate. Aceast ca"abilitate "oate fi folosit "entru a crea "ro#ucie "e linie #e asamblare0 #e a ,nma)azina #ate #e calibrare #is"onibile #oar #u" testarea final0 sau "oate fi folosit "entru a ,mbunti "ro)ramele la "ro#usele finite.

!.2.4. Interfaa de comand a motoarelor de curent continuu. &artea #e acionare a "lcii microcontrolerului const ,n circuitul s"ecializat >293= . Acesta este ca"abil sa controleze 2 motoare #e c.c. ,n ambele sensuri #e rotaie sau un motor "as cu "as. Ca"sula >293= conine #ou "uni K ca"abile s furnizeze ,n re)im constant 6((mA "er canal0 iar ,n re)im "uls a"ro2imati- 1 A. *n fi)ura #e mai 5os se arata caracteristicile mecanice ale circuitului >293=0mo#ul #e conectare fiin# re"rezentat ,n fi)ura

65 65

7i)ura 1? - Ca"sula =*&16 a >293= /i #is"unerea "inilor

$o#ul #e control al circuitului >293= este relati- sim"lu. %l necesita 6 linii #e "ort #e la microcontroler care sa fie conectate la intrrile in"ut10 in"ut20 in"ut3 /i in"ut4 /i la cele ou terminale fc8i" enableI "entru fiecare "unte K.%2ist /i o alta meto# mai economic #in "unct #e -e#ere al numrului #e "ini *T4 folosii #e la microcontroler. Aceast meto# se bazeaz "e conectarea intrrilor in"ut10 in"ut20 in"ut3 /i in"ut4 "e un bus #e 2 linii #e coman#0 "ractic lucru ce se materializeaz "rin conectarea in"ut1 /i in"ut4 "e acela/i "in al microcontrolerului /i in"ut2 cu in"ut3 similar.

66 66

*3!RgR* +mLK +mL>

7U3C*% CLK0=L> CL>0=LK CL= CL'0 =L' Rotaie C` Rotaie CC` 7r1nare #inamic =ecu"lare

>L4 >4E*C0 KL1 >4E*C0 ' 3U C43!%Ahg C0=0+mLintrrile in"ut 102 /i enable =eza-anta5ele care #ecur) ,n urma acestei cone2iuni sunt fa"tul c #ubla "unte K nu -a fi la fel #e fle2ibila ,n coman#a motoarelor #e c.c. /i toto#at "ierz1n#u-/i ca"acitatea #e a aciona motoare "as cu "as. .n tabelul este artat confi)uraia strilor lo)ice "e intrrile "unii K /i starea motoarelor conectate la circuit.

%ste #e remarcat fa"tul c inte)ratul >293= se alimenteaz cu #ou tensiuni @#e la #ou surseA. &artea lo)ic a inte)ratului folose/te o alimentare com"atibil !!> @]5+ "e +ssA iar "artea #e for C #e alimentare #e "utere C a motoarelor are intrare se"arat +s. Sco"ul acestei se"arri o constituie minimizarea ,nclzirii ca"sulei /i are a-anta5ul ca motoarele "ot fi alimentate cu o tensiune #e "1n la 36 #e -oli. *nte)ratul este "rote5at termic si se o"re/te alimentarea ,n cazul unei ,nclziri e2cesi-e.

67 67

7i)ura19-Acionarea motoarelor bifazate

!.2.& Circuitul integrat '(4))$ !>499A este un circuit inte)rat "roiectat "entru a oferi o )ama lar)a #e re)la5 re)lementate tensiunii #e alimentare. Re)lementarea #e iesire #e tensiune "oate fi -ariat #e la 209 + la 3( +0 "rintr-o a5ustare a #oua rezistente e2terne.*n cazul ,n care ac-!>499A este cu"lat la linia #e "utere0 "rintr-un "as ,n 5os transformator0 el functioneaza ca o serie #e tensiune cc #e re)lementare #e a menine re)lementate #e iesire #e tensiune. Cu a#aos #e o baterie #e la 101 + la 1( +0 un in#uctor0 un con#ensator #e filtrare0 si #oua rezistene0 !>499A funcioneaza ca un "as #e trecerea #e re)lementare ,n tim"ul ac-o linie #e esec. Re)lementate #e iesire #e tensiune re)labila face !>499A utile "entru o )ama lar)a #e a"licatii. 7urnizarea #e rezer-a #e "utere ,n tim"ul ac-o linie #e esec face ca !>499A micro"rocesor e2trem #e utile ,n a"licatii #e memorie. %ste caracterizata #e !>499AC "entru e2"loatarea #e la -2(i C la ?5j C

68 68

7i)ura 2(- Sc8ema circuitului !>499

($( "otoarele de curent continuu .n )eneral0 sunt similare ,n construcie cu )eneratoarele #e curent continuu. %le "ot0 #e fa"t s fie #escrise ca )eneratoare care ffuncioneaz in-ersI. C1n# curentul trece "rin rotorul unui motor0 este )enerat un c1m" ma)netic care )enereaz o for electroma)netic0 /i ca rezultat rotorul se rote/te. Aciunea "eriilor colectoare /i a
69 69

"lcuelor colectoare este e2act aceia/i ca la )enerator. Rotaia rotorului in#uce un -olta5 ,n bobina5ul rotorului. Acest -olta5 in#us are sens o"us -olta5ului e2terior a"licat rotorului. .n tim" ce motorul se rote/te mai ra"i#0 -olta5ul rezultat este a"roa"e e)al cu cel in#us. Curentul este mic0 /i -iteza motorului -a rm1ne constant at1t tim" c1t asu"ra motorului nu acioneaz nici o sarcin0 sau motorul nu efectueaz alt lucru mecanic #ec1t cel efectuat "entru ,n-1rtirea rotorului. C1n# asu"ra rotorului se a"lic o sarcin0 -olta5ul -a fi re#us /i un curent mai mare -a "utea s treac "rin rotor. Astfel0 motorul este ca"abil s "rimeasc mai mult curent #e la sursa care ,l alimenteaz0 /i astfel s efectueze mai mult lucru mecanic. =eoarece -iteza rotaiei controleaz trecerea curentului "rin rotor0 mecanisme s"eciale trebuie folosite "entru "ornirea motoarelor cu curent continuu. C1n# rotorul se afl ,n re"aus0 el0 efecti-0 nu are nici o rezisten0 /i #ac -olta5ul normal este a"licat0 -a trece un curent mare0 ceea ce ar "utea a-aria "eriile colectoare sau motorul. $i5loacele obi/nuite "entru "re-enirea acestor acci#ente este folosirea ,n serie a unei rezistene0 la ,nce"ut0 ,m"reun cu rotorul0 "entru a limita curentul "1n c1n# motorul ,nce"e s #ez-olte un curent suficient. &e "arcurs ce motorul "rin#e -itez0 rezistena este re#us tre"tat0 fie manual ori automat. +iteza cu care un motor cu curent continuu funcioneaz0 #e"in#e #e "uterea c1m"ului ma)netic care acioneaz asu"ra rotorului0 c1t /i #e curentul rotorului. Cu c1t este mai "uternic c1m"ul ma)netic0 cu at1t este mai mic rata rotaiei necesare s creeze un curent secun#ar necesar "entru a contracara curentul a"licat. =in acest moti- -iteza motoarelor cu curent continuu "oate fi controlat "rin -ariaia c1m"ului curentului. $otoarele folosite sunt #e ti" curent continuu #e ti" re#uctor cu ra"ort #e transmisie #e 4?<1 alimentate la o tensiune #e 3+0 6+ /i o intensitate #e 6(( mA.=ez-olt un cu"lu #e 102 m3Um la "ornire /i (039 m3Um ,n re)im normal0 #ez-olt 24(( rotTmin .$otorul are urmtoarele com"onente< Rotorul este format #in tabl #e siliciu cu bobina5 s1rm #e cu"ru cu #iametrul M (.1 mm
70 70

Statorul este format #in tabl #e siliciu /i este bobinat cu s1rm #e cu"ru cu #iametrul M (.1 mm.=iametrul interior al statorului este #e 15.2 mm iar cel e2terior #e 2(mm 2 la)re realizate #in bronz )rafitat.Acestea au rol #e sustinere0 centrare /i rosto)olire a rotorului. &inion #in "lastic fi2at "e a2a rotorului "rin "resare.&resarea este #atorat elasticitaii "lasticului.4 a #oua montare a "inionului nu mai are rezistena cores"unztoare /i se utilizeaz alt meto# "rin folosirea unor a#ezi-i.

7i)ura 21-$otoare #e curent continuu

($+ Sen)orul Acesta a a"rut o#at cu #ez-oltarea microelectronicii0 ,m"reun cu alte noiuni #e mare im"act0 cum ar fi cele #e fmicro"rocesorI0 fmicrocontrollerI0 ftrans"uterI0 factuatorI etc.0 Astfel0 o mare "arte #in elementele te8nice senziti-e sunt ,nca#rate ,n cate)oria #e tra#uctor. Un tra#uctor este un #is"oziti- care con-erte/te efecte fizice ,n semnale electrice0 ce "ot fi "relucrate #e instrumente #e msurat sau calculatoare. &rin senzor se -a ,nele)e #is"oziti-ul te8nic #estinat ,nzestrii ma/inilor cu simuri. Are rolul #eterminrii unei sau unor "ro"rieti /i ,n funcie #e ni-elul #e
71 71

inte)rare0 "oate a-ea funcii mai sim"le sau mai com"le2e #u" cum este artat ,n fi)ura #e mai 5os

7i)ura 22-&rinci"iul #e funcionare al unui senzor !.4.1 Structuri ale sistemelor sen"oriale Senzorul cu"rin#e tra#uctorulTtra#uctoarele "entru transformarea mrimii #e intrare ,ntr-un semnal electric util0 #ar /i circuite "entru a#a"tarea /i con-ersia semnalelor /i e-entual0 "entru "relucrarea /i e-aluarea informaiilor. Senzorul care inclu#e /i unitile micromecanice /i microelectronice #e "relucrare0 realizate "rin inte)rare "e scar lar) @>S*A sau foarte lar) @+>S*A0 se ,nt1lne/te ,n literatura #e s"ecialitate /i sub #enumirile #e 6sistem senzorial6 sau 6senzor inteli)ent6 @smartsensorA. &ro#ucerea senzorilor inteli)eni este facilitat #e #ez-oltarea te8nicii microsistemelor0 care "ermite inte)rarea ,n -olume e2trem #e mici at1t a tra#uctoarelor #e #iferite ti"uri0 c1t /i a micromecanicii /i microelectronicii #e "relucrare. Eru"area senzorilor #u" aciunea robotului cu me#iul ,ncon5urtor < Senzorii interni @ intero-rece"toriA0 care ser-esc la obinerea unor informaii le)ate #e funcionarea robotului0 cum ar fi "oziia relati- a elementelor cu"lelor
72 72

cinematice0 -itezele /i acceleraiile liniare /i un)8iulare0 #eformaiile elementelor lanului cinematic /.a.

7i)ura 23-!i"uri #e senzori Senzori e2terni @#enumii #e unii autori /i e2tero-rece"toriA0 utilizai "entru cule)erea unor informaii asu"ra me#iului ,ncon5urtor /i asu"ra interaciunii robotTme#iuD ser-esc la i#entificarea "rezene /i stabilirea ti"ului0 "oziiei0 orientrii0 culorii sau a altor "ro"rieti ale obiectelor #in me#iu0 la i#entificarea unor obstacole0 la #eterminarea forelor #e interaciune robotTme#iu. Un criteriu care "oate "ermite clasificarea senzorilor e2terni este cel referitor la contactul cu obiectele #in me#iu . Un senzor care msoar "oziiileT#e"lasrile ,n cu"lele cinematice este un senzor intern0 un senzor #e in-esti)are0 care baleiaz me#iul ,ncon5urtor "e "rinci"iul ra#arului0 este un senzor e2tern fr contact0 un senzor tactil este un senzor e2tern cu contact #irect0 iar un senzor #e forTmoment este un senzor e2tern cu contact in#irect0 ,ntruc1t forele #e interaciune cu me#iul nu

73 73

sunt e2ercitate #irect asu"ra senzorului0 ci sunt resimite #e acesta "rin "ro"a)area lor #e-a lun)ul unor elemente interme#iare. Senzorii fr contact "ot ser-i la recunoa/terea obiectelor0 a "oziie /i orientrii lor /i la controlul calitii. Senzorii #e "ro2imitate sunt senzori #e zon foarte a"ro"iatD ei furnizeaz informaii #es"re e2istena obiectelor /i sunt montai "e efectorul final sau ,n a"ro"ierea acestuia. Senzorii o"tici sunt senzori #e zon a"ro"iat0 iar cei #e in-esti)are #e zon ,n#e"rtat.

!.4.2 Sen"orii folosii *n ec+iparea minirobotului 3.4.2.1 Senzorul infrarou Sharp GP2D120 Un senzor s"ecial folosit "entru e-itarea obstacolelor este senzorul infraro/u S8ar" E&2=12( care "rezint urmatoarele caracteristici te8nice< B 7olose/te "rinci"iul #e refle2ie al luminii infraro/ii "entru msurarea #istanei0 B Raza #e aciune este intre 4 /i 3( #e cm. B Alimentarea se face la o tensiune #e 405 "1na la 5 + /i o intensitate #e 33 mA. B !ensiunea #e ie/ire este cu"rins ,n inter-alul (.4-2.4 + la o alimentare #e 5 +. *nterfata sa "rezinta 3 fire< alimentarea@+ccA0 masa@E3=A /i tensiunea #e ie/ire@+outA /i necesit un conector PS! #e 3 "ini. $o#ul #e funcionare &rinci"iul care st la baza acestei meto#e #e masurare folosite #e senzorul S8ar" se bazeaz "e formarea unui triun)8i ,ntre %mitorul #e raz infraro/ie0 "unctul #e refle2ie /i #etectorul #e infraro/u. Astfel0 emitatorul emite un "uls #e lumina infrarosie. >umina strbate cam"ul -izual /i fie lo-e/te un obstacol sau continu
74 74

#e"lasarea. .n cazul ine2istenei unui obstacol0 lumina nu -a fi reflectat /i nu se -a #etecta nici un obiect. =ac lumina se reflect #e "e un obiect0 se -a ,ntoarce la #etector /i -a creea un triun)8i ,ntre emitor0 "unctul #e refle2ie /i eetector0 ca ,n fi)ura urmatoare<

&rin cone2iunea senzorului infraro/u cu con-ertizorul Analo)T=i)ital rezultk #atele analo)ice care sunt con-ertite ,n #istane corecte cu a5utorul softului #e "ro)ramare.Astfel "entru o -aloare #e 3( cores"un#e o #istana #e ? cm. R L @2933 T @+ ] 2(AA C 1 RL#istana in cm. +L#atele anlo)ice #in con-ersia analo)T#i)ital.*nter-alul este intre ( /i 10(23

75 75

7i)ura25-$o#ul #e funcionare al senzorului S8ar"

76 76

!abelul cu -alori ale senzorului infrarosu

77 77

3.4.2.2 Reflectorul infrarou

7i)ura26-Reflectorul infraro/u -e#ere /i sc8em circuit

*nima acestui circuit este senzorul care #etecteaz refleciille #e la lumina infraro/ie.%ste format #intr-un >%= *nfraro/u ce emite lumin infraro/ie "e su"rafa.7oto-tranzistorii -or "rimi lumina infraro/ie reflectat.=ac nu se reflect lumin infraro/ie0 terminalul 4U! are -olta5 sczut la msurare..n cazul "rimirii #e lumin infraro/ie trece curent "rin fototranzistori ,n funcie #e intensitatea luminii care -ariaz ,n funcie #e #istana #e refle2ie.Senzorul !CR! 5((( "oate fii folosit "entru o #istan #e (.1-1.5 cm.>a o tensiune #e ie/ire #e (.5-5+ #atele #e ie/ire -ariaz ,ntre 3( /i 1(23.%ste folosit "entru a #etecta culoarea su"rafeei@alb sau nea)rA.Astfel "entru su"rafaa alb -aloarea este ,ntre 6(( /i 95( iar "entru su"rafaa nea)r -aloarea este ,ntre 1(( /i 3((.
78 78

+aloarea #e referin "entru a #etecta linia este @6((]1((AT2L 35( 3.4.2.3 Receiver infrarou Z !"R# .n transmiterea semnalelor "rin lumin infraro/ie "entru #istane #e 5 1( m funcioneaz "e "rinci"iul telecomenzii #e tele-izor.7rec-ena #e emitere este #e 3? ;Kz0 recei-erul #emo#uleaz semnalul #e frec-ena /i ,l trimite ca #ate seriale la microcontroler =ac senzorul nu #etecteaz frec-ena #e 3? ;Kz cu lumin infraro/ie ie/irea este lo)ic 10in caz contrar ie/irea e lo)ic (.

7i)ura2 -Recei-er infraro/u -e#ere /i sc8ema circuit

3.4.2.4 $eleco%an&' cu e%isie infrarou( Aceast telecoman# funcioneaz cu comunicarea serial.=atele transmise manual #e la butoane -or fii mo#ulate la o frec-en #e 3?;Kz.&entru aceasta trebuie instalat "e robot recei-erul infraro/u. Caracteristici ale telecomenzii< B =istana #e o"erare este ,ntre 4 /i ? metri ,n s"aiu #esc8is
79 79

B Are 4 butoane acti-ate #e 4 ,ntreru"toare B Consum re#us #e "utere.!rece ,n mo#ul "oXer-sa-e o#at ce #atele au fost transmise B !ransmite #ate serial folosin# stan#ar#ul RS-232 cu o rat #e transfer #e 12(( b"s /i formatul #atelor ?31@? bii #e #ate nici un bit #e "aritate /i un bit #e sto".A

7i)ura 2?- A-&oza. O-+e#ere a "lanului telecomenzii C-Sc8ema circuitului.

3.3.2.) *fior &e cristale lichi&e+32 caractere 2 linii 1,%ste un senzor >C= care comunic cu microcontrolerul "rintr-o interfa serial. B Acce"t #ate transmise serial la la o frec-en #e 24(( sau 96(( b"s@bii "e secun#A cu format #ata ?31@? bii #e #ate nici un bit #e "aritate /i un bit #e o"rireA. B Acce"t ni-elul !!> sau RS-232 "rin selectarea a 2 5um"eri.Su"ort controlerul stan#ar# >C= K*!ACK* K=44 ?( sau S%*:4 %&S43 S%=12 ? com"atibil.
80 80

B %ste o"eraional la o tensiune #e alimentare #e 5

12 -oli.

B Conectorul #e interfa are <]5 + tensiune #e alimentare@]A0 intrare serial a #atelor@SA /i masa@EA. $a5oritatea caracterelor >C= nu "ot fii sc8imbate #eoarece sunt ,nma)azinate ,n memoria R4$. &rimele ? simboluri care cores"un# ASC** (.. sunt ,nma)azinate ,n memoria RA$@CERA$A.%le sunt afi/ate ,n mrimea 5 cu ? "uncte.

7i)ura 29-=etalii #es"re selectarea 5um"erilor

1 $o#ul #e coman# al 5um"erilor.S>C= are 2 mo#uri #e coman#.Unul este #e ti" Stan#ar#.Acesta este com"atibil cu ti"ul Scott %#Xar#sas iar cellalt este #e ti" Scott %#Xar#sas.
81 81

2 3umrul #e caractere "e linie.Se "oate seta ? caractere sau 16 caractere "e linie. 3 Rata #e transfer a #atelor.Se "oate seta 96(( bii "e secun# sau 24(( bii "e secun# cu formatul #atelor #e ti" ?31@? bii #e #ate nici un bit #e "aritate /i un bit #e sto"A. 4 Semnalul #e interfa. 2 selecii #e ti" *n-ert lo)ic !!>TC$4S sau RS-232 /i #e ti" =irect lo)ic@=*A. 3.3.2., Senzorul &e te%peratur'. =etecteaz tem"eratura ambientului0lucreaz cu un t8ermistor ntc@coeficient ne)ati- #e tem"eraturA /i acest tra#uctor analo) are 2 ie/iri< reaciune "oziti- /i ne)ati- a tensiunii a"licate ,n funcie #e tem"eratura ambientului.!em"eratura sa normal #e lucru e #e 25 C.
(

7i)ura 3(-Senzorul #e tem"eratur.

3.3.2.../ontactorii Contactorii folosii la acest robot au urmtoarea sc8em electric<


82 82

7i)ura 31-Senzorul #e contact -e#ere /i sc8em circuit C1n# contactorul nu este a"sat rezult I1I lo)ic ,n iar can# este a"sat arat I(I lo)ic /i se a"rin#e le#ul. Ace/ti senzori sunt folosii "entru #etectarea unor obstacole.

CAPITOLUL IV Proiectarea interfe%elor de co&unicare

Sistemele #e calcul "ot s comunice ,n #ou mo#uri< "aralel /i serial. .n mo#ul "aralel0 #e obicei se utilizeaz ? sau mai multe linii @cabluriA. %2em"le #e utilizare a comunicaiei "aralele sunt im"rimanta sau 8ar# #iscul. Comunicaia "aralel se utilizeaz #oar "entru #istane foarte scurte @c1i-a metriA. $oti-ul este #e fa"t c "entru cablurile lun)i0 semnalele sunt atenuate /i "ot a"are #istorsiuni. .n "lus nu este #eloc #e ne)li5at costul cablurilor /i "roblemele ce "ot a"are la cone2iuni. A-anta5ul comunicaiei "aralele este -iteza mare #e transmisie. Comunicaia serial este utilizat "entru sisteme aflate la mare #istan intre ele. Comunicaia serial utilizeaz un numr re#us #e cabluri. .n comunicaia serial0 #atele transmise trebuie serializate la transmisie /i #eserializate la rece"ie. &entru aceasta0 la transmisie se utilizeaz un re)istru "aralel-serie iar la rece"ie un re)istru serie-"aralel. Re)istrul "aralel-serie este utilizat "entru transformarea unei #ate #e ? bii intrun /ir #e bii. Re)istrul serie-"aralel este utilizat "entru transformarea unui /ir #e ? bii intr-un octet. &entru #istane lun)i0 comunicaia "aralel "oate utiliza linia telefonic. .n acest caz semnalele lo)ice ( /i 1 trebuie transformate ,n semnale sinusoi#ale. Aceast con-ersie este realizat #e un #is"oziti- numit mo#em @$4=ulatorT=%$o#ulatorA. &entru #istane scurte aceast con-ersie nu este necesar. =e e2em"lu0 tastatura /i mouse-ul comunic serial

informaia ctre unitatea centrala a &C. Comunicaia serial utilizeaz #ou meto#e< - sincron< se transfer blocuri #e octei @caractereA - asincron < se transfer c1te un octet Se "ot realiza "ro)rame "entru realizarea comunicaiei seriale ,ns acestea "ot fi lun)i. %ste in#icat ca "ro)ramatorul s se concentreze asu"ra "roblemelor s"ecifice a"licaiei /i nu asu"ra unei "robleme e2trem #e )enerale "recum comunicaia serial. Aici inter-in /i as"ectele economice le)ate #e "ro#ucti-itatea muncii. =in acest moti"ro#uctorii #e circuite au realizat circuite ce rezol- "roblemele le)ate #e comunicaia serial. Aceste circuite se numesc UAR! @Uni-ersal AsVncronus Recei-er !ransmitterA.

7i)ura 31 - $eto#e #e comunicaie $icrocontrolerul A!$e)a? conine un asemenea mo#ul @UAR!A ,n)lobat. =in acest moti- ,n cele ce urmeaz ne -om referi #oar la comunicaia asincron. =ac #atele "ot fi transmise /i rece"ionate simultan0 se s"une ca a-em comunicaie ffull #u"le2I
85 85

=ac #atele nu "ot fi trimise /i rece"ionate simultan0 se s"une ca a-em comunicaie f8alf #u"le2I . Aici termenul fsimultanI se refera la fa"tul ca ambele sisteme "ot transmite #ate ,n acela/i moment #e tim". 4 alt situaie este cazul ,n care unul #in sisteme este #oar un transmitor celalalt este #oar un rece"tor @comunicaie fsim"le2I A. &entru comunicaia full #u"le2 sunt necesare #ou fire @"lus firul #e masA. aA Comunicaia asincron Cele #ou sisteme0 "entru a "utea comunica intre ele0 trebuie sa res"ecte o serie #e re)uli. !rebuie stabilite con-enii referitoare la< - mo#ul #e ,m"ac8etare al #atelorD - numrul #e bii ai unui caracterD - cum se i#entifica ,nce"utul unei #ateD - cum se i#entifica sf1r/itul unei #ateD - care este #urata unui bit. bA 7ormatul #atelor Comunicaia asincron este frec-ent utilizata "entru transmisia orientat "e caracterD comunicaia sincron este utilizata "entru transmisia orientat "e blocuri #e #ate. .n comunicaia asincron fiecare caracter este ,nca#rat intre bii #e start /i bii #e sto". =e fa"t tot#eauna se folose/te un bit #e start @( lo)icA /i #e obicei un bit #e sto" @1 lo)icA. .n fi)ura #e mai 5os este re"rezentat mo#ul #e transmisie al caracterului ASC** fAI al crui co# binar este (1(( (((1. Se obser-a ca transmisia biilor se face ,n or#inea< S!AR!@(A 0 =(@1A0 =1@(Ad = @(A0 S!4&@1A.

86 86

7i)ura 32 - !ransmisia caracterului ASC** fAI Se transmite mai ,nt1i bitul cel mai "uin semnificati- al octetului @>SO C =(A. Se obser-a c #e fa"t "entru transmisia unui caracter se utilizeaz 1( bii. Sunt /i alte "osibiliti #e transmisie. =e e2em"lu se "oate "re-e#e un bit su"limentar care sa re"rezinte "aritatea octetului. Sco"ul acestui bit su"limentar este -erificarea "strrii inte)ritii #atelor. =e aceea0 "ro)ramatorul trebuie sa cunoasc #atele #e catalo) ale "ortului serial /i mo#ul lui #e "ro)ramare. cA Rata #e transfer Rata #e transfer re"rezint numrul ma2im #e bii ce "ot fi transmi/i intr-o secun#. %ste #at ,n b"s @bii "er secon#A. Alt termen #es utilizat "entru b"s este bau# rate. Cei #oi termeni nu sunt i#entici. !ermenul bau# rate este "reluat #in terminolo)ia mo#emurilor un#e este #efinit ca numrul #e sc8imbri "e secun# ale unui semnal. Sunt situaii c1n# o sin)ur mo#ificare a semnalului con#uce la transferul mai multor bii #e #ate. !otu/i /i #ac nu se utilizeaz mo#emul se "ot utiliza ambii termeni. Rata #e transfer #e"in#e #e "ortul #e comunicaie al sistemului. =e e2em"lu0 "entru &Curile mai -ec8i rata #e transfer #e #ate este 1((d 96(( b"s. 3oile &C-uri su"orta o rata ma2im #e transfer #e 115.2 :b"s. #A Stan#ar#ul RS232 &entru a "ermite com"atibilitatea ec8i"amentelor realizate #e #iferii "ro#uctori0 s-a a#o"tat stan#ar#ul numit RS232 realizat #e %*A @%lectronics *n#ustries
87 87

AssociationA ,n 196(0 mo#ificat a"oi mai t1 rziu ,n mai multe r1n#uri. Stan#ar#ul actual RS232C a#o"tat ,n 1969 este utilizat #e &C-uri /i #e numeroase alte ec8i"amente. =eoarece stan#ar#ul a fost a#o"tat ,nainte #e a"ariia familiei lo)ice !!>0 stan#ar#ul nu este com"atibil cu ni-elele !!>. 3i-elul 1 lo)ic este re"rezentat #e o tensiune electric cu"rinsa intre -3 /i -25+ iar ni-elul lo)ic ( este re"rezentat #e o tensiune electrica cu"rinsa intre ]3 /i ]25+0 zona situata intre -3+ /i 3+ fiin# ne#efinit. eA &inii interfeei seriale RS232 !abelul 9

7i)ura33-conectorul =O-9 fA Semnalele #e control @8an#s8a;in)A &entru a se realiza ra"i# /i si)ur comunicaia intre #ou ec8i"amente0 trebuie ca transferul #e #ate s in cont #e unele situaii s"ecifice. =e e2em"lu se "oate ,nt1m"la ca unul #in ec8i"amente s nu mai "oat "rimi #ate #atorit fa"tului c nu mai are un#e s le #e"un. .ntr-un asemenea caz el trebuie s informeze transmitorul c trebuie s a/te"te. Se #efinesc urmtoarele semnale #e control mai #es utilizate< - =!R @#ata terminal rea#VA. =u" alimentarea terminalului /i #u" ce trece "rin
88 88

rutinele #e iniializare0 el trimite semnalul =!R ce in#ic fa"tul ca este )ata "entru comunicaie. Semnalul este #e intrare "entru mo#em @=C%A. - =SR @#ata set rea#VA. %ste un semnal emis #e =C% @mo#emA ce in#ic c este )ata s "rimeasc #ate #e la =!%. - R!S @reeuest to sen#A. %ste un semnal "rin care =!% informeaz =C% ca "oate s transmit o #at. - C!S @clear to sen#A. %ste un semnal #e rs"uns "entru semnalul R!S "rin care =C% =!% informeaz =!% c este )ata s "rimeasc #ate. Acest semnal este utilizat #e "entru a ,nce"e transmisia #atelor.

+$# P4-+55 Cutie Progra&ator In-Siste& cu interfa* serial* %ste folosit "entru "ro)ramarea co#ului in memoria flas8 a microcontrolorului A+R. B Conectarea cu calculatorul se face "rin "ortul serial RS-232.=ac calculatorul are #oar "ort USO0"oate fii folosit un con-ertor USO la Serial.UC43-232S este recoman#at in aceast situa%ie. B &ro)ramarea microcontrolorului se face "rin cablu *S&.Su"ort citirea scrierea /ter)erea /i "rote5area #atelor.

89 89

7i)ura 34-Cablul &'-4(( B 3ecesit o tensiune #e alimentare #e 5+ #e "e "laca microcontrolorului. B %ste o"erabil cu softul A+R &ro). Acest soft este inclus in A+R Stu#io fiin# com"atibil #easemenea cu softul A-r-4s" **.

+$' Interfa%a SPI *nterfaa serie S&* @serial "eri"8eral interfaceA este o interfa sincron0 #e mare -itez0 "entru transferul #atelor ,ntre un microcontroler A+R /i un #is"oziti"eriferic sau ,ntre #ou microcontrolere A+R. !ransferul "e interfaa S&* se face cu urmtoarele caracteristici< transfer full #u"le2 @"e trei fireA0 o"erare master sla-e0 transfer cu "rimul bit >SO sau $SO0 "atru -iteze #e transfer0 semnalizare sf1r/it #e transmisie /i acti-are #in mo#ul #e consum re#us. Scrierea #atelor ,n re)istrul #e #ate al #is"oziti-ului master -a )enera acti-area )eneratorului #e ceas /i #ata -a fi transferata bit cu bit "e linia $4S*0 "rin interme#iul re)istrului #e #e"lasare. +$( Cabluri de transfer a datelor Rolul cablurilor #e semnal este #e a conecta "laca #e baz cu #iferii senzori /i cu calculatorul.Cablul *S& este folosit "entru "ro)ramarea microcontrolorului0 cabluri &CO3AA-? "entru interconectarea cu senzori /i un cablu "ort serial "entru cone2iunea #intre calculator si "laca #e baza la conectorul *S&.

90 90

4.!.1 Cablul ISP %ste un cablu ti" "an)lic cu 1( fire.%ste folosit "entru cone2iunea #intre cutia #e "ro)ramare *S& /i "laca microcontrolorului.$o#ul #e #istribuie al firelor este artat in sc8ema #e mai 5os

l 7i)ura 35-$o#ul #e conectare al cablului *S&

4.!.2 Cablul ,S'!$$-.

91 91

%ste un cablul stan#ar# #e la *3%' cu lun)imea #e 2( cm folosit "entru cone2iunea #intre senzori /i "laca microcontrolerului.A/ezarea firelor este artat ,n fi)ura #e mai 5os

7i)ura 36-$o#ul #e conectare al cablului *S&

4.!.! Cablul port serial C/-4

7i)ura 3 -$o#ul #e conectare al cablului "ort serial C'-4

3 ume semnal R '=


92 92

SemnificatiaT7unctia Recei-e =ata - rece"tie #ate

! '= E 3= = !R

!ransmit =ata C transmisie #ate

$asa #i)ital

=ata !erminal Rea#V C terminal "re)tit "entru transmisie

%ste folosit "entru cone2iunea #intre "ortul serial al calculatorului RS-232 /i #is"oziti-ele e2terne cum ar fii "laca microcontrolorului.Un ca"t #e conector este #e ti"ul =O-9 feminin iar celalalt #e ti" RP-11 6&4C@6 "ini /i 4 contacteA.Are o lun)ime #e 1.5 metri iar sc8ema lui este artat ,n fi)ura #e miai sus.

93 93

CAPITOLUL V PRO6RA"AR0A ROBOTULUI

$icrocontrolerul care ec8i"eaz robotul0 A!$%> A!me)a?-16&* face "arte #in )eneraiile recente ale "ro#uctorului american /i su"ort "ro)ramarea "e o "latform stan#ar#izat "entru microcontrolerele A+R R*SC "e ? bii0 folosin# limba5ul #e "ro)ramare C. Ca soft enumerm A+R Stu#io "entru "ro)ramarea microcontrolerului /i un com"ilator CA+R 1 A+R Stu#io<"ro)ram #e simulare0 soft #ez-oltat #e Cor"oraia Atmel.Acest soft ruleaza sub $icrosoft `in#oXs95 /i $icrosoft `in#oXs 3!.`in#oXs '& S&2 este recoman#at acum.7i/ierul com"ilat este #e ti" K%' /i este cobor,t ,n memoria "lkcii #e bazk cu a5utorul cutiei #e "ro)ramare &'-4((. 2 CA+R este un com"ilator "entru C. Oibliotecile sunt fi/iere su"ort care "ermit "ro)ramatorului o mai u/oar inte)rare in limba5ul #e "ro)ramare C Softul "ro)ramator<Acest soft este folosit "entru #oXnloa#area fi/ierului com"ilat K%'.Acesta este A+R&ro) /i este o com"onent ,n A+R Stu#io ,$# Instalarea AVR Studio

94 94

&rimul "ro)ram care se instaleaz este A+R Stu#io a"licaie li-rat #e ctre "ro#uctor.&entru a contiua instalarea trebuie acce"tai termenii #e licen im"u/i #e "ro#ucator.

7i)ura3?-*nstalare A+R Stu#io =u" instalarea /i #esc8i#erea "ro)ramului -a a"are fereastra "rinci"al A+R Stu#io care arat "recum ,n fi)ura #e mai 5os..n st1n)a sus se )se/te fi/ierele /i librriile care sunt a"elate ,n "ro)ramul construit ,n C. .n fereastra "rinci"al este scris "ro)ramul C0 iar #e#esubt se afl fereastra #e e2ecuie care arat starea "roceselor care inclu# rezultatul com"ilat "recum /i erorile #e com"ilaie a fi/ierului K%' "recum /i alte mesa5e #e a-ertizare.=easu"ra se afl bara #e meniuri. &a/ii #e #ez-oltare a unui "ro)ram C ,n A+R Stu#io sunt B Scrierea "ro)ramului cu e#itorul te2t A+R Stu#io +4.( B Com"ilarea co#ului C ,n co#ul #e asamblare "entru microcontroller
95 95

B Con-ertirea co#ului #e asamblare ,n fi/ier format K%' B =oXnloa#area co#ului ,n memoria "ro)ram a microcontrolerului B Rularea "ro)ramului #e catre microcontroler. =e asemenea este necesar ca #u" instalarea softului fi/erele librrie s fie co"iate se"arat ,ntr-un #osar "entru a fii a"elate mai a"oi #e "ro)ram.

7i)ura 39-Oara #e meniuri a "ro)ramului A+R Stu#io

,$' Crearea progra&ului C 7n AVR Studio

96 96

=in &ro5ect se selecteaz Confi)uration 4"tions un#e la iconul Eeneral se #etermin urmtoarele #ate astfel< #is"oziti- atme)a? /i frec-ena #e 16(((((( Kz

7i)ura 4(-$o#ificare ,n o"iunile "roiectului. &entru a"elarea librriilor se selecteaz iconul *nclu#e =irectories /i se acceseaz fol#erul ,n care sunt localizate.

97 97

7i)ura 41-Ale)erea fi/ierelor 8ea#er .n csua A-ailable >in; 4b5ects se selecteaz itemul lim.a care a"are la fereastra >in; Xit8 !8ese 4b5ects.Se a"as butonul 4: "entru terminare

98 98

7i)ura 42-A#u)area #e librrii

Se scrie "ro)ramul ,n fereastra "rinci"al /i se com"ileaz la menu Ouil# o"iunea Ouil# sau se a"as tasta 7 .=ac "ro)ramul conine erori ne -a a"rea fereastra OU*>= 4U!&U! care conine numrul #e erori /i a-ertismente.Se re"ar erorile /i mai a"oi se com"ileaz "rin coman#a !44> mA+R &ro)d %ste necesar ca "entru rularea "ro)ramului robotul sa fie le)at la "c "rin cablul serial &'- 4(( /i comutatorul "oXer s fie acti-.

7i)ura 43-$o#ul #e conectare la &C

99 99

7i)ura 44-Ale)erea #ebu)-ului 7i/ierul care iniial era format .)cc se com"ileaz ,n format 8e2.Acest fi/ier conine co#ul con-ertit #in C ,n cel al robotului 8e2.%ste intro#us ulterior ,n memoria microcontroler-ului "rin a"sarea butonului &ro)ram

7i)ura 45-&ro)ramarea microcontrolerului.


100 1001

&ro)ramarea microcontrolerului folosin# limba5ul #e "ro)ramare C >imba5ul C este folosit ,n "ro)ramarea roboilor alturi #e alte limba5e "recum &ascal0Oasic0>*S& etc. Comenzile ,n C sunt e2ecutate #e ctre microcontroler "as cu "as #e la ,nce"utul "ro)ramului "1n la sf1r/it iar la sf1r/itul fiecrei instruciunii se "oziioneazHDI. Cu-inte rezer-ate "entru limba5< Auto t Orea ; Eoto S8ort 8 Return SXitc e Struct +olatil =o 7or r +oi# Const m C8ar %nu Re)iste =efaul 7loat >on) f Static e %lse e *nt %2tern Continu =oubl `8ile Sizeo !abel 11 Case !V"e#ef

!i"uri #e #ate folosite ,n limba5ul C "entru "ro)ramarea robotului care se ,nca#reaz ,n urmtoarele -alori< !abel 13 !abel 12 !i" C8ar unsi)ne# +alori -12?d]12 (d255
101 1011

Minirobot mobil cu senzori pentru detectare obstacole

c8ar *nt unsi)ne# int float lon) -32 6?d]32 6 (d]429496 295 4rice numr real 2 d.2 -1
-31 31

102

4"erator L L

%2"licaie C o m " a ra ie "entru

Minirobot mobil cu senzori pentr u detectare o b s t a c o le


He)alitateI nL o J oL

Com"araie "entru H#iferitI Com"araie "entru Hmai "uinI Com"araie "entru Hmai multI Com"araie "entru Hmai "uin sau e)alI

Sistemul numeric ,n C 1 3umere zecimale 2 3umere binare #e ti" (Obbbbb. O ia -alori #e ( sau 1 =e e2em"lu numrul binar (b1((1((1(L146 $o#ul #e calcul<@ @ 2 A]@( 2 AL1461(D 3 3umere 8e2azecimale #e forma ( 77L255
1 (

JL

Com"araie "entru Hmai mult sau e)alI

n SS qq

3U p* SAU

2 A] <@

2 A]

2 A] @

2 A]

2 A]

2 A]

$o#ul #e calcul<@15 16 A] <@15 16 AL2551( D ( 77L(b1111111 ca numr binar.

Set comenzi robot +er 1.(


103 1031

Minirobot mobil cu senzori pentru detectare obstacole

7i)ura 4(-7ereastra Ctrl-robot

Minirobot mobil cu senzori pentru detectare obstacole

%lemente constituente $otor st1n)a0 #rea"taD Con-ertor analo) #i)ital @A=CAD OuzzerD Comunicaie serialD

Comenzile im"lementate trebuie s< coman#e motoarele@ambele intr-o coman#A0 trimite coman#a buzzer@ tim"ul "ro)ramabil cat tim" --a fi acti-A0 citeasca -alorile A=C "entru 4 canale. Comenzile -or a-ea o structura urmatoare< ocm#Jocam"(Jocam"1J d. ocam"nJosumrctrJ Semnificatia octeilor< "arteD curent. =ecalarea ,ntre mesa5e se face ,n funcie #e tim"ul #intre caractere. Astfel #ac tim" #e 5 ms nu am "rimit nici un caracter nou consi#er transmisia terminat. Ras"unsul trimis #e "laca --a fi trimis la inter-alul #e ultimului caracter0 @2msA #e la #eclararea rece"tiei. Rs"unsul la coman# "oate fi< coman#a acce"tat @sau #ate ceruteA0 nici un ras"uns @"entru coman#a cu suma #e control eronat0 sau lun)ime mesa5 in-ali#A0 coman#a ine2istenta @ #aca coman#a nu este im"lementetaA0 "arametrii in-alizi @#atele ms #e la rece"tia sumrct C suma control0 2or la toti octeii rece"ionati ,n coman#a cm# C i#entificator coman#a @ inter-alul (<12 L (2((<(2 7AD cam"(...cam"n C #ate mesa50 "articularizate "entru fiecare coman#a ,n

Minirobot mobil cu senzori pentru detectare obstacole

atasate comenzii sunt ,n afara #omeniului #e aco"erireA. %rorile se semnalizeaz "rin co#ul comenzii creia i se face face sau @orA cu o masca (2?(. Astfel eroarea comenzii (2(10 -a a-ea -aloarea (2(1 q (2?( L (2?1. 7orma ras"unsului "entru comenzile res"inse< ocm# q (2?(JoreasonJ Un#e reason< 1 2 Coman#a neim"lementata &arametrii in afara limitelor

Comenzi terminal Seteaza #irectieT-iteza motoare @(2(1A Coman#a< (2( 1 1 bVte sensrmt "Xrrmtr 1 "Xrrmtr 2 Sensul #e rotire al motorului 1 si 2 . in#ica "uterea motorului 1 @factor #e um"lere &`$A -aloarea cea mai semnificati-a fiin# trimisa "rima @Ki)8A. 2 octeti 0in#ica "uterea motorului 2 @factor #e um"lere &`$A -aloarea cea mai semnificati-a fiin# trimisa "rima @Ki)8A. Cam"ul sensrmt< t 1 bVte sensrm 1 1 bVte "Xrrmtr 2 1 bVte "Xrrmtr

mtr1 Oi t t6 Oi t5

mtr2 Oi t4 Oi t3

2 Oi t2

2 Oi t1

2 Oi (

2 Oit

Semnificatie mtr1T mtr2< bi t 1 ( ( 1 1 b 2 ( 1 ( 1 $otor o"rit Sens rotire fata Sens rotire ina"oi Rezer-at C nefolosit b

Ras"uns< Ras"uns corect < (2(2 Coma#a buzzer @(2(2A Coman#a< (2( 2 1 bVte Coman#a "orneste buzzerul si trimite nr #e mesa5 c1t tim" buzzerul --a funciona ince"an# #e la momentul rece"ionarii comenzii. buzzrtmrK<buzzrtmr> re"rezinta tim"ul #e functionare buzzer e2"rimat in ms. =urata ia -alori intre 1 si 25((ms Ras"uns<
107 1071

buzzrtmr K 1 bVte >

buzzrtmr

1 bVte

Citire canale analo)ice @(2(3A Coman#a< (2(3 1 bVte Coman#a este format #oar #in co#ul comenzii 0 fr "arametrii Ras"uns< Rs"unsul cu"rin#e "atru c1m"uri #e #ate cu -alorile citite #e la cele 4 canale ale A=C-ului. C1m"urile a#cr(0 a#cr10 a#cr20 a#cr3 iau -alori ,n inter-alul (<2550 cores"unztor tensiunilor masurate (<+ref. (2(3 ( 1 bVte bVte 1 1 bVte 1 bVte 1 bVte a#cr

a#cr1

a#cr2

a#cr3

*#entificare #is"oziti- @(2 7A Coman#a< (2 7 1 bVte Rs"uns< (2( 3 1 bVte *=r#e- C i#entificator #is"oziti- (2AA. +ersinea curent "ro)ram controller +er '.Z .
108 1081

*=r#e 1 bVte '

+err Z 1 bVte

+err

1 bVte

&ro)ramul coman# robotul #e la tastaur "rin cablul serial cu un conector RS232 la calculator /i un conector "entru interfaa serial la cellalt ca"t.iar "rin a"sare sXitc8 1se sc8imba coman#adrobotul citin# #atele #i)itale #e la senzorul infraro/u S8ar".&ro)ramul este construit ,n CA+R.

sinclu#e 6me)a?.86 sinclu#e 6serial.86 sinclu#e 6motor.86 sinclu#e 6>C=rcontrol.86 sinclu#e 6timer.86 sinclu#e 6analo)ic.86 sinclu#e 6buzzer.86 sinclu#e 6inrout.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>r$A*3 sinclu#e 6main.86

sto"rXatc8r2OtimermainD -oi# main@-oi#A


109 1091

t initrserial@AD initrtimer@AD initrmotor@AD initranalo)ic@AD initrbuzz@AD initrinrout@AD sasm@6sei6AD sto"rXatc82Orset@Stimermain0 1(((AD runrmo#e L RU3r`*!Kr&CD startrbuzz@1((AD X8ile@1A t analo)icrtas;@AD motorrtas;@AD buzzrtas;@AD inroutrtas;@AD if@runrmo#e LL RU3r`*!Kr&CA t if@ in"utru" S (2(1 A t in"utru" SL u(2(1D runrmo#e L RU3rA>43%D >%=4r43@AD v else serialrtas;@AD
110 1101

TT sa bazie si el 1(( ms la start

v else if@runrmo#e LL RU3rA>43%A t if@ in"utru" S (2(1 A t in"utru" SL u(2(1D runrmo#e L RU3r`*!Kr&CD >%=4r477@AD clearr>C=@AD v else t testr>C=@AD v v if@sto"rXatc82Ortst@StimermainA LL !RU%A TT "erio#ic la 1 sec t sto"rXatc82Orset@Stimermain0 1(((AD v v TT en# X8ile@1A v sinclu#e 6me)a?.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>rA3A>4E*C sinclu#e 6analo)ic.86
111 1111

-oi# initranalo)ic@-oi#A t TT -------- 8ar#Xare laVer ----------A=$U' L (24(D full A=CK-2biti0 mu2 A=C( TT A=CSRA L (29=D TT acti-ez A=C0 ]@1ooA=*%A acti-ez intreru"erea0frecA=C L 'talT32 TT $CUCR L (21(D A=CSRA L (29 D $CUCR L (2((D A=CSRA qL (24(D TT =AC noise re#uction TT acti-ez A=CS0frec- A=C L 'talT32 TT i#le TT "ornesc o con-ersie TT referinta e2terna cu con#ensator la Aref0A=C>-

TT ------ a""lication laVer ---------a#crc8 L (2((D a#cr-alw(x L (D a#cr-alw1x L (D a#cr-alw2x L (D a#cr-alw3x L (D v

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U citesc "e ran# canalele A=C #e la ( la @CKr3Rr$A'-1A -alorile obtinute sunt me#iate "t fiecare canal si facute #is"onibile astfel "ro)ramul citeste asincron -al A=C-ului U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT

-oi# analo)icrtas;@-oi#A t unsi)ne# int a#crrea#r-alD unsi)ne# c8ar sumri#2D if@n@A=CSRA S (24(AA tim"ul con-ersieiyy t TT am un nou rezultat #e la A=C XrloX@ a#crfilterwa#crc8xwa#crfilterri#2x A L A=C>D Xr8i)8@ a#crfilterwa#crc8xwa#crfilterri#2x A L A=CKD sumri#2 L a#crfilterri#2D citirilor "t canalul curent a#crrea#r-al L (D #o t TT insumez toate ultimele 16 citiri @fac me#iereA sumri#2]]D sumri#2 SL CKr7*>!%Rr3Rr$S:D in#e2 mo#ulo 16 a#crrea#r-al ]L a#crfilterwa#crc8xwsumri#2xD vX8ile@sumri#2 nL a#crfilterri#2AD a#crrea#r-al TL CKr7*>!%Rr3RU4D rezultatele "e ? biti a#cr-alwa#crc8x L XrloX@a#crrea#r-alAD
113 1131

TT TT TT sunt in

TT in#e2ul folosit "entru a face suma TT aici fac suma "entru canalul curent

TT

TT fac me#ia cu 160

TT si mai im"art la 4 "entru a a#uce

a#crc8]]D if@a#crc8 LL CKr3Rr$A'A t TT final ciclul0 reiau ciclul #e masurat canalele A=C a#crc8 L (D a#crfilterri#2]]D a#crfilterri#2 SL CKr7*>!%Rr3Rr$S:D in#e2 mo#ulo 16 v A=$U' SL u(2( D A=$U' qL a#crc8D A=CSRA qL (24(D v v sinclu#e 6timer.86 sinclu#e 6com"illerrs"ecific.86 s#efine *3!%R3rOUhh s#efine E>4OA>rOUhh sinclu#e 6buzzer.86 TT sc8imb canalul A=C TT "ornesc o noua con-ersie TT

-oi# initrbuzz@-oi#A t &4R!=.4 L (D ==R=.4 L 1D v TT trec in zero "ortul TT trec "ortul "e iesire

-oi# startrbuzz@unsi)ne# int timeA t sto"rXatc82Orset@Sbuzzrtas;r#esc.time0 timeAD buzzrtas;r#esc.state L Ohr43D v TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U testez -aloarea rece"tionata "t buzzer ret< !RU% -al corecta0 7A>S% -al eronata U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT unsi)ne# c8ar setrbuzzerrstr@unsi)ne# c8ar UbuffA t unsi)ne# int buzzrtimeD Xr8i)8@buzzrtimeA L U@buff]]AD XrloX@buzzrtimeA L UbuffD if@buzzrtime oL25((A tTT startrbuzz@buzzrtimeAD sto"rXatc82Orset@Sbuzzrtas;r#esc.time0 buzzrtimeAD buzzrtas;r#esc.state L Ohr43D return !RU%D v return 7A>S%D v TT buzzer "ornit cu succes TT tim"ul #e start TT co"iez #atele #in #oi octeti intr-un intre) TT tim"ul #e start

-oi# buzzrtas;@-oi#A

t if@ buzzrtas;r#esc.state LL Ohr43A t if@sto"rXatc82Ortst@Sbuzzrtas;r#esc.timeA LL !RU%A t v v else if@ buzzrtas;r#esc.state LL Ohr477A t curent v v sinclu#e 6me)a?.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>r*3r4U! sinclu#e 6inrout.86 -oi# initrinrout@A t ==R= SL u(2(CD ==RC qL (22(D &4R!= SL u(2(CD &4R!C SL u(22(D v -oi# inroutrtas;@A t unsi)ne# c8ar in"utrtem"D
116 1161

buzzrtas;r#esc.state L Ohr477D

TT ma asi)ut ca buzz nu este alimentat &4R!=.4 L (D TT c8iar #aca are con#ensator0 in cazul

TT trec "ortul = cores"unzator tastelor "e intrare TT trec le#ul "e iesire TT "ull-u"-urile sunt o"rite TT ma asi)ur ca le#ul este stins0 in "rima faza

in"utrol# L in"utD in"ut L u@@&*3= S (2(6AJJ2AD TT LJ tasta 2 a"asata bitul b( LL 1 TT tasta 3 a"asata bitul b1 LL 1 TT obser- -ariatiile intre starea curenta

in"utrtem" L in"ut z in"utrol#D si cea trecuta if@in"utrtem"A t TT #aca au a-ut loc -ariatii in"utru" qL @in"utrtem" S in"utAD au a-ut loc -ariatii

TT starea curenta a bitilor este 10 si TT starea curenta a bitilor este (0 si

in"utr#n qL @in"utrtem" S @uin"utAAD au a-ut loc -ariatii v v

sinclu#e 6serial.86 sinclu#e 6timer.86 sinclu#e 6analo)ic.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>rC>=rC!R> sinclu#e 6>C=rcontrol.86 unsi)ne# c8ar flas8 nibbler2r8e2wx L 6(123456 ?9AOC=%76D
117 1171

static sto"rXatc8r2O timersen#rms)D #urata rularii "ro)ramului -oi# clearr>C=@A t !'(rbuffrcountren# L (D

TT static aloc -ariabila "e toata

!'(Oufferw!'(rbuffrcountren#]]x L 254D !'(Oufferw!'(rbuffrcountren#]]x L (2(1D TT clear >C= b!'(rsen# L b!RU%D b!'(rstart L b!RU%D UCSRO qL 1oo5D TT !' int @la !SR liberA

sto"rXatc82Orset@Stimersen#rms)0 3((AD TT "este 3(( ms o sa mai trimit mesa5 "e seriala v -oi# testr>C=@A t unsi)ne# lon) analo)icr-alD if@sto"rXatc82Ortst@Stimersen#rms)A LL !RU%A la 1 sec t sto"rXatc82Orset@Stimersen#rms)0 3((AD !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L 254D TT "erio#ic

118 1181

!'(Oufferw!'(rbuffrcountren#]]x L (2?(D !'(Oufferw!'(rbuffrcountren#]]x L {!{D !'(Oufferw!'(rbuffrcountren#]]x L {e{D !'(Oufferw!'(rbuffrcountren#]]x L {s{D !'(Oufferw!'(rbuffrcountren#]]x L {t{D !'(Oufferw!'(rbuffrcountren#]]x L { {D !'(Oufferw!'(rbuffrcountren#]]x L {>{D !'(Oufferw!'(rbuffrcountren#]]x L {C{D !'(Oufferw!'(rbuffrcountren#]]x L {={D !'(Oufferw!'(rbuffrcountren#]]x L 254D !'(Oufferw!'(rbuffrcountren#]]x L (2?( q (239D !'(Oufferw!'(rbuffrcountren#]]x L {A{D !'(Oufferw!'(rbuffrcountren#]]x L {={D !'(Oufferw!'(rbuffrcountren#]]x L {C{D !'(Oufferw!'(rbuffrcountren#]]x L {({D !'(Oufferw!'(rbuffrcountren#]]x L { {D !'(Oufferw!'(rbuffrcountren#]]x L {({D !'(Oufferw!'(rbuffrcountren#]]x L {2{D !'(Oufferw!'(rbuffrcountren#]]x L nibbler2r8e2w @a#cr-alw(xJJ4 A S (2(7xD xD TT nibblul cel mai semnificati!'(Oufferw!'(rbuffrcountren#]]x L nibbler2r8e2w a#cr-alw(x S (2(7 TT nibblul cel #e 5os analo)icr-al L @unsi)ne# lon)A@@unsi)ne# lon)Aa#cr-alw(xU1((AD TT -reau sa "rin# zecimale analo)icr-al UL 5D
119 1191

analo)icr-al TL 256D !'(Oufferw!'(rbuffrcountren#]]x L { {D !'(Oufferw!'(rbuffrcountren#]]x L { {D !'(Oufferw!'(rbuffrcountren#]]x L @unsi)ne# c8arA@analo)icr-alT1((A ] {({D TT 1+ TT calculez restul la im"artirea cu 1(( !'(Oufferw!'(rbuffrcountren#]]x L {.{D analo)icr-al FL 1((D ] {({D TT (.1+ analo)icr-al FL 1(D !'(Oufferw!'(rbuffrcountren#]]x L @unsi)ne# c8arA@analo)icr-alA]{({D !'(Oufferw!'(rbuffrcountren#]]x L {+{D b!'(rsen# L b!RU%D b!'(rstart L b!RU%D UCSRO qL 1oo5D v v sinclu#e 6me)a?.86 sinclu#e 6"latformrs"ecific.86 s#efine *3!%R3r$4!4R s#efine E>4OA>r$4!4R sinclu#e 6motor.86 TT !' int @la !SR liberA !'(Oufferw!'(rbuffrcountren#]]x L @unsi)ne# c8arA@analo)icr-alT1(A

s#efine $4!4Rr*3*!*A> 1((


120 1201

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U initializare "eriferice #ri-er motor U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# initrmotor@-oi#A t ==RO qL (2( D out ==R= qL (2%(D TT `E$13<`E$1( L (2(5D canal "Xm TT "Xm actiTT CS12<CS1( L (2(5 TT 7"Xm L 7oscT@2U3U!4&A L 19.14Kz !CCR1A L (2A( q (2(1D !CCR1O L (2(? q (2(5D 1(24 4CR1A> L $4!4Rr*3*!*A>D 4CR1O> L $4!4Rr*3*!*A>D TT sa nu fie zero en)inercontrol."Xmr-alrleft L $4!4Rr*3*!*A>D en)inercontrol."Xmr-alrri)8t L $4!4Rr*3*!*A>D !*7R qL (2(4D !*$S: qL (2(4D
121 1211

TT iesirile &`$ si setare sens &O( trecute "e TT setare sens &=5<&= trecute "e out - 7ast &`$0 ?-bit - #ezacti-are - canal

TT C4$1A1<C4$1A(0 C4$1O1<C4$1O( L (2(( L (2(2

- "rescaler 1(24 LJ !"Xm L (.(522s

TT C4$1A10C4$1O10 `E$1( TT `E$120 CS110 CS1( TT "rescaller

TT ster) fanion intreru"ere !4+1 TT acti-are int timer1 !4*%1

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U initializare "eriferice #ri-er motor U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# motorrtas;@-oi#A t if@en)inercontrol.mo#erleft LL $!rS!4&A t !CCR1A SL u(2?(D velse if@en)inercontrol.mo#erleft LL $!r7R`A t !CCR1A qL (2?(D $!rCK1r7R`@AD velse if@en)inercontrol.mo#erleft LL $!rR%`A t !CCR1A qL (2?(D $!rCK1rR%`@AD v TT----------------- al #oilea motor -------------if@en)inercontrol.mo#erri)8t LL $!rS!4&A t velse if@en)inercontrol.mo#erri)8t LL $!r7R`A
122122122

!CCR1A SL u(22(D

if@en)inercontrol.mo#erri)8t LL $!r7R`A
123123123

t !CCR1A qL (22(D $!rCK2r7R`@AD velse if@en)inercontrol.mo#erri)8t LL $!rR%`A t !CCR1A qL (22(D $!rCK2rR%`@AD v v

interru"t w!*$1r4+7x -oi# "Xm1r8an#le@-oi#A TT int 52.2 ms t 4CR1A> L en)inercontrol."Xmr-alrleftD 4CR1O> L en)inercontrol."Xmr-alrri)8tD v

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U incarc "arametrii "rimiti "e seriala U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# setrmotorrstr@ unsi)ne# c8ar UbuffA t unsi)ne# c8ar tem"r-arD

123 1231

tem"r-ar L U@buff]]AD

124 1241

!*$S: SL u(2(4D tim" cat mo#ific "arametrii #e functionare

TT #ezacti-are int timer1 !4*%10 atata

en)inercontrol."Xmr-alrleft t

L U@buff]]AD

if@en)inercontrol."Xmr-alrleft LL (A TT &`$ rece"tionat este zero0 o"resc motorul en)inercontrol.mo#erleft L $!rS!4&D en)inercontrol."Xmr-alrleft L 1D v else if@ @tem"r-ar S @(2(3Aoo6A LL @(2(1oo6A A t v else if@ @tem"r-ar S @(2(3Aoo6A LL @(2(2oo6A A t v else t v TT motor o"rit en)inercontrol.mo#erleft L $!rS!4&D TT rotire s"ate en)inercontrol.mo#erleft L $!rR%`D TT rotire fata en)inercontrol.mo#erleft L $!r7R`D

en)inercontrol."Xmr-alrri)8t t

L UbuffD

if@en)inercontrol."Xmr-alrri)8t LL (A TT &`$ rece"tionat este zero0 o"resc motorul en)inercontrol.mo#erri)8t L $!rS!4&D en)inercontrol."Xmr-alrri)8t L 1D v else
124 1241

if@ @tem"r-ar S @(2(3Aoo4A LL @(2(1oo4A A t v else if@ @tem"r-ar S @(2(3Aoo4A LL @(2(2oo4A A t v else t v TT motor o"rit en)inercontrol.mo#erri)8t L $!rS!4&D TT rotire s"ate en)inercontrol.mo#erri)8t L $!rR%`D TT rotire fata en)inercontrol.mo#erri)8t L $!r7R`D

!*$S: qL (2(4D v sinclu#e 6me)a?.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>rS%R*A> sinclu#e 6serial.86 sinclu#e 6main.86 sinclu#e 6buzzer.86 sinclu#e 6motor.86 s#efine '!A> 16(((( s#efine OAU= 96
125 1251

TT acti-are int timer1 !4*%1

TT "t *= "laca0 -ersine "ro)ram

sinclu#e 6analo)ic.86 TT "t a citi canalele A=C

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U initializare comunicatie seriala U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# initrserial@A t UORRK L @unsi)ne# c8arA @@'!A>T@16UOAU=A-1AJJ?AD UORR> L @unsi)ne# c8arA @'!A>T@16UOAU=A-1AD UCSRA L (2((D UCSRC L (b1((((11(D ? biti UCSRO L (b1((11(((D R'(rbuffrcount L (D !'(rbuffrcount L (D R'r!'rtime L S%Rr!*$%rS%3=r$SED "reluarea unui ms) fals la initializare b!'(rsen# L b7A>S%D bR'(r#one L b7A>S%D b!'(rstart L b7A>S%D v TT e-it TT nu "rea are sens initializarea asta TT asVncron0 "aritV #isable0 1 bit sto"0 TT R'rint-en0 R'-en0 !'-en

TT -----------------------------------------------------------TT intreru"eri comunicatie seriala TT R' TT -----------------------------------------------------------interru"t wUSAR!rR'Cx -oi# R'r8an#le@-oi#A

126 1261

R'(OufferwR'(rbuffrcountx L U=RD if@R'(rbuffrcount o @OU77r$A'-1AA t R'(rbuffrcount]]D R'r!'rtime L (D v

v interru"t wUSAR!r=R%x -oi# !'r8an#ler1@-oi#A USAR!r!'C t U=R L !'(Oufferw!'(rbuffrcountxD !'(rbuffrcount]]D if@!'(rbuffrcount LL !'(rbuffrcountren#A t UCSRO SL u@1oo5AD b!'(rsen# L b7A>S%D !'(rbuffrcount L (D v v TT #isable int0 nu mai incarc cu #ate TT "ot sa com"un un alt mesa5 TT !'

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U tas; comunicatie seriala U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# serialrtas;@A t if@bR'(r#one LL b!RU%A t bR'(r#one L b7A>S%D sXitc8 @ R'(Oufferw(x A t case S%!r$4!4RS<

if@R'(rbuffrcountren# LL S%!r$4!4RSrSh A t if@!RU% LL sumrc8ec;rtst@R'(Ouffer0 R'(rbuffrcountren#AA t if@ R'(Oufferw1x S (2(7A t TT am "rimit niste biti rataciti "rin octetul #e sens !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L S%!r$4!4RS q (2?(D (2(2D v else t TT mesa5 corecet setez motorul si trimit ras"unsul setrmotorrstr@ SR'(Oufferw1xAD !'(Oufferw(x L S%!r$4!4RSD !'(rbuffrcountren# L 1D v sumrc8ec;ra##@!'(Ouffer0 !'(rbuffrcountren#AD !'(rbuffrcountren# ]]D b!'(rsen# L b!RU%D v v brea;D case S%!rOUhh< if@R'(rbuffrcountren# LL S%!rOUhhrSh A TT eroare !'(Oufferw!'(rbuffrcountren#]]x L

t if@!RU% LL sumrc8ec;rtst@R'(Ouffer0 R'(rbuffrcountren#AA t if@ !RU% LL setrbuzzerrstr@SR'(Oufferw1xA A t TT buzzer "ornit0 trimit coman#a reusita !'(Oufferw(x L S%!rOUhhD !'(rbuffrcountren# L 1D v else t TT tim"ul setat in afara #omeniului aste"tat !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L S%!rOUhh q (2?(D (2(2D v !'(rbuffrcountren#AD sumrc8ec;ra##@!'(Ouffer0 !'(rbuffrcountren# ]]D v v brea;D case E%!rA=C< if@R'(rbuffrcountren# LL E%!rA=CrSh A t if@!RU% LL sumrc8ec;rtst@R'(Ouffer0 R'(rbuffrcountren#AA t !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L E%!rA=CD b!'(rsen# L b!RU%D TT eroare !'(Oufferw!'(rbuffrcountren#]]x L

!'(Oufferw!'(rbuffrcountren#]]x L a#cr-alw(xD !'(Oufferw!'(rbuffrcountren#]]x L a#cr-alw1xD !'(Oufferw!'(rbuffrcountren#]]x L a#cr-alw2xD !'(Oufferw!'(rbuffrcountren#]]x L a#cr-alw3xD sumrc8ec;ra##@!'(Ouffer0 !'(rbuffrcountren#AD !'(rbuffrcountren# ]]D b!'(rsen# L b!RU%D v v brea;D case E%!r*=< if@R'(rbuffrcountren# LL E%!r*=rSh A t if@!RU% LL sumrc8ec;rtst@R'(Ouffer0 R'(rbuffrcountren#AA t !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L E%!r*=D !'(Oufferw!'(rbuffrcountren#]]x L =%+r*=D !'(Oufferw!'(rbuffrcountren#]]x L +%Rr'D !'(Oufferw!'(rbuffrcountren#]]x L +%RrZD sumrc8ec;ra##@!'(Ouffer0 !'(rbuffrcountren#AD !'(rbuffrcountren# ]]D b!'(rsen# L b!RU%D v v brea;D
130 1301

#efault< if@!RU% LL sumrc8ec;rtst@R'(Ouffer0 R'(rbuffrcountren#AA t TT coman#a necunoscuta #ar cu suma control corecta !'(rbuffrcountren# L (D !'(Oufferw!'(rbuffrcountren#]]x L R'(Oufferw(x q (2?(D !'(Oufferw!'(rbuffrcountren#]]x L (2(1D TT coman#a necunoscuta sumrc8ec;ra##@!'(Ouffer0 !'(rbuffrcountren#AD !'(rbuffrcountren# ]]D b!'(rsen# L b!RU%D v v TT en# sXitc8 v TT en#

if@ b!'(rsen# LL b!RU% SS b!'(rstart LL b!RU%A t TT am mesa5 #e trimis0 si sunt in fereastra #e tim" in care "ot trimite b!'(rstart L b7A>S%D UCSRO qL 1oo5D v v TT !' int @la !SR liberA

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U testez #atele #intr-un buffer sa -a# #aca au suma control corecta ret< !RU% suma corecta0 7A>S% suma eronata U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT

unsi)ne# c8ar sumrc8ec;rtst@unsi)ne# c8ar Ubuff0 unsi)ne# c8ar len)t8A t unsi)ne# c8ar sumD sum L (D #o t sum zL U@buff]]AD len)t8--D v X8ile@len)t8nL(AD if@sum LL (A return !RU%D return 7A>S%D v

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U a#au) suma #e control unui buffer lun)imea "ac8etului #e #ate trebuie sa fie #e minimum 1 U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# sumrc8ec;ra##@unsi)ne# c8ar Ubuff0 unsi)ne# c8ar len)t8A t unsi)ne# c8ar sumD sum L (D #o t sum zL U@buff]]AD

len)t8--D v X8ile@len)t8nL(AD Ubuff L sumD v TT a#u) suma #e control

sinclu#e 6me)a?.86 sinclu#e 6com"illerrs"ecific.86 s#efine E>4OA>r!*$%R sinclu#e 6timer.86 s#efine *3!%R3rOUhh sinclu#e 6buzzer.86 sinclu#e 6serial.86 static unsi)ne# int timerr-alD static unsi)ne# int timerr-alrb;D TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U initializare timer2 folosit "entru masurarea tim"ului intarzieri etc. U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# initrtimer@-oi#A t TT '!A> L 16$8z
133 1331

!CCR2 L (2(CD 4CR2 L 25(D !*$S: L (2?(D v

TT C!C0 no "orts0 "rescaler 64 - `E$210 CS22 TT 'A!>T64T25( L 1((( -J 1ms TT intreru"ere can# a-em matc8 re)s

TT -----------------------------------------------------------TT intreru"ere timer 2 TT 1 ms TT -----------------------------------------------------------interru"t w!*$2rC4$&x -oi# timerr2 @-oi#A t timerr-al ]]D if@buzzrtas;r#esc.state LL Ohr43A t v TT ---------- res"onsabil cu mn) serialei --------------------if@R'r!'rtime o S%Rr!*$%rS%3=r$SEA t R'r!'rtime]]D if@R'r!'rtime LL S%Rr!*$%r%3=r$SEA t TT am mesa5 rece"tionat nou R'(rbuffrcountren# L R'(rbuffrcountD R'(rbuffrcount L (D bR'(r#one L b!RU%D v else if@R'r!'rtime LL S%Rr!*$%rS%3=r$SEA t TT "ot sa trimit ras"unsul
134 1341

&4R!=.4 L u&4R!=.4D

b!'(rstart L b!RU%D v v TT ---------------- en# seriala ------------------------------v

TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U tim"ul #e aste"tat se seteaza la initializare timer U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U incarc momentul #e ince"ut cronometrare si tim"ul #orit "t cronometrare U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT -oi# sto"rXatc82Orset@sto"rXatc8r2O Utimerstruct0 unsi)ne# int timeA t timerstruct-Jtimerlen)t8 L timeD !$R1r*3!r=*S@AD !$R1r*3!r%3@AD v TU UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU U -erific #aca a trecut tim"ul aste"tat intorc !RU% - "erioa#a cronometrata a trecut 7A>S% - mai aste"t "erioa#a nu a trecut U UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU UT unsi)ne# c8ar sto"rXatc82Ortst@sto"rXatc8r2O UtimerstructA t !$R1r*3!r=*S@AD
135 1351

TT #isable int

timerstruct-Jtimerstart L timerr-alD

timerr-alrb; L timerr-alD !$R1r*3!r%3@AD if@timerstruct-Jtimerlen)t8 o @unsi)ne# intA@timerr-alrb; - timerstructJtimerstartAA return !RU%D return 7A>S%D v &ro)ramul com"ilat ,n A+R Stu#io "entru #etectarea /i ocolirea obstacolelor folosin# senzorul infraro/u este artat mai 5os.Robotul se #e"laseaz iar #ac senzorul infraro/u #etecteaz un obstacol la o #istana #e ? cm se ,ntoarce la #rea"ta /i continu #rumul. &ro)ramul surs este urmatorul< inclu#e ost#lib.8J TT U&entru con-ertire ti"uri #e #ate UTT sinclu#e omotor.8J TT UControlul motoarelorUTT sinclu#e oslee".8J TTU &entru ,nt1rziereUTT sinclu#e osoun#.8J TTU&entru semnal sonorUTT sinclu#e oanalo).8J TTU Con-ertor analo)-#i)italUTT -oi# main@A TTU&ro)ram "rinci"alUTT t
136 1361

TT

unsi)ne# int sensorL(D unsi)ne# c8ar iL(D slee"@2((AD soun#@4(((05(AD

TTU ince"ut cu un bee"UTT X8ile@1A t sensorL(D for @iL(Dio5Di]]A t sensorL@sensor]analo)@(AAD v TT UCite/te #atele #e la E&2=12 #e 5 oriUTT sensorL@sensorT5AD TUSe face me#ia aritmetic a #istanelorUTT if @sensorJ26(A TT U Con#iie ca #istana s nu fie mai mare #e 1( cm y t bac;Xar#@5(ADslee"@?((AD TT USc8imbarea #ireciei UTT srleft@5(ADslee"@6((AD v else
137 1371

t forXar#@5(AD TTU $er)e ,nainteUTT v v v

O*O>*4ERA7*% 1. E8eor)8e * E8eor)8e0 +alentin &au0 =oru =umitru &ala#e0 $ecatronica0 %#itura Cefin0 Oucure/ti0 2((2. 2.$ircea 3iulescu0w199?x0 Roboi mobili0 %#itura S*!%CK Craio-a. 3. &8ili""e Coiffet0 >a robotieue0 &rinci"es et a"licaions.%#itura Kermes &aris019?6.
138 1381

3. +. +alco-ici0 ptefan Olan0 R +oinea0 $ecanica teoretic0 %#itura !e8nic Oucure/ti019?6. 4. E1lmeanu0 C.0 Contribuii la sinteza roboilor mobili cu 3 )ra#e #e mobilitate0 !ez #e #octorat0 U&O0 2(((. 5 .$i8i Ar#eleanu0 Roboi in#ustriali mobili0 Curs. 6.+alerica Cim"oca0A"aratura o"toelectronic0 Curs. .Catalo) "entru com"onente o"toelectronice0Oneasa SA0Oucure/t 2(((. ?.*niiere ,n limba5ul C0 =amian Costea. 9.+asile $. Catunenu0 !e8nolo)ie electronic0 %#itura =i#actic /i "e#a)o)ic0 Oucure/ti 19?1 1(.>ucian Ciobanu0%lemente #e "roiectare a sistemelor fle2ibile #e fabricaie /i a roboilor in#ustriali0 %#itura O*!0*a/i 199 . 11 .XXX.microc8i".com 12.XXX.atme)a?.com 13.XXX. ine2.co.t8 14.XXX.ine2)lobal.com 15.XXX.ma2imum robotics 15.3umeroase alte site-uri a#use ,n faa oc8ilor mei #e XXX.)oo)le.com 16 3ote #e curs /i laboratoare.

139 1391