Inginer &'("c()
.$'D 2 DE.$EE
E0A1I-AT,RI LU#RARE 2 THE"I" E0A1I-ER" Dinu 0/15#0 3eli6 '17# Dan-0onstantin P#0+I',# ,icoleta ',.E1ES0# 3lorian I/,
Abstract
Se prezint un robot care poate e6ecuta comenzile :ocale ale utilizatorului prin intermediul componentelor <ard=are) 0omenzile au *ost antrenate >n so*t=are-ul s<ield-ului de recunoatere :ocal? Eas@%$ 0ommander) 0omenzile sunt receptate de s<ield-ul de recunoatere :ocal Eas@%$ i transmise ctre placa 'rduino #no iar apoi sunt preluate i e6ecutate de ctre dri:er-ul de motor tip s<ield 1 AB) 0odul a *ost scris cu aCutorul programului 'rduino 1)!)D) Instruciunile pe care robotul trebuie s le e6ecute sunt? 3or=ard, $e:erse, 1e*t, $ig<t, Dance, 1ongE3or=ard, 1ongE$e:erse i Stop) Piesele au *ost cumprate de pe site-ul? ===)robo*un)ro) 0u:inte c<eie? 'rduino #no, Eas@%$, 1 AB, Eas@%$ 0ommander, recunoatere :ocal, 'rduino1)!)D, comenzi, dri:er)
He@=ords? 'rduino #no, Eas@%$, 1 AB, Eas@%$ 0ommander, speec< recognition, 'rduino1)!)D, 0ommands, dri:er)
T<esis Super:isor? +E,$I - .E/$.E 0/',D' 'ssociate pro*essor, P<)D) Eng), Electronic, Telecommunication and Po=er Energ@ Department Electrical Engineering 3acult@ #ni:ersit@ %'1'+I' o* Targo:iste
'ne6a 1
#,I%E$SIT'TE' I%'1'+I'J DI, T'$./%ISTE 3'0#1T'TE' DE I,.I,E$IE E1E0T$I0' Specializarea? Electronic aplicat !1" 'nul uni:ersitar !1 -
6( Tema proiectului5
0/,D#0'T/$ PTII,5I3I0 0on*)dr)ing) +enri-.eorge 0/',D( Tema a *ost data spre >mplinire la data ,#4E1E si SE4,'T#$' ST#DE,T#1#I Simion 'lin 0ezar
List %iguri
3I.#$' 1 I-TR,.U#ERE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( : #A;IT,LUL 4* RE#U-,A<TEREA V,#AL/(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((= 1)11) 1)"1)L.E,E$'1I&'$E )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) A 4ET/D/1/.I' SISTE4E1/$ %/0'1E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1! DE3/$4'$E' DI,'4I0( ' TI4P#1#I 9DTQ;)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))1! 4/DE1#1 4'$H/% 'S0#,S 9+44;)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))1!
#A;IT,LUL 6* UTILI>AREA RE#U-,A<TERII V,#ALE(((((((((((((((((((((((((((((((((((((((((((((((44 )1- PE$SPE0TI%E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 11 ) - DE3E0TE '1E $E0#,/'PTE$II %/0'1E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))11 #A;IT,LUL 7* ;RE>E-TARE HAR.?ARE((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((46 ")1- PIESE PI P$E5#$I))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1 ") - P$E&E,T'$E PIESE ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1" #A;IT,LUL 8* 1I#R,#,-TR,LERUL AT1E+A 76@((((((((((((((((((((((((((((((((((((((((((((((((((64 L)1- 0'$'0TE$ISTI0I?))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1 L) - 0/,3I.#$'5I' PI,I1/$))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) " L)"- S0+E4' 71/0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) L #A;IT,LUL 9* A"A1'LAREA R,',TULUI(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((69 #A;IT,LUL A* ;R,+RA1AREA R,',TULUI((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((74 #A;IT,LUL :* RE>ULTATE <I #,-#LU>II((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((7A 'I'LI,+RAFIE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 7:
List tabele
"imboluri !i abrevieri
H11 .T? +idden 4arGo: 4odel D@namic Time Qarping
#uprins
I-TR,.U#ERE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( : #A;IT,LUL 4* RE#U-,A<TEREA V,#AL/(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((= 1)11) 1)"1)L.E,E$'1I&'$E )))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) A 4ET/D/1/.I' SISTE4E1/$ %/0'1E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1! DE3/$4'$E' DI,'4I0( ' TI4P#1#I 9DTQ;)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))1! 4/DE1#1 4'$H/% 'S0#,S 9+44;)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))1!
#A;IT,LUL 6* UTILI>AREA RE#U-,A<TERII V,#ALE(((((((((((((((((((((((((((((((((((((((((((((((44 )1- PE$SPE0TI%E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 11 ) - DE3E0TE '1E $E0#,/'PTE$II %/0'1E)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))11 #A;IT,LUL 7* ;RE>E-TARE HAR.?ARE((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((46 ")1- PIESE PI P$E5#$I))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1 ") - P$E&E,T'$E PIESE ))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1" #A;IT,LUL 8* 1I#R,#,-TR,LERUL AT1E+A 76@((((((((((((((((((((((((((((((((((((((((((((((((((64 L)1- 0'$'0TE$ISTI0I?))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) 1 L) - 0/,3I.#$'5I' PI,I1/$))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) " L)"- S0+E4' 71/0)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) L #A;IT,LUL 9* A"A1'LAREA R,',TULUI(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((69 #A;IT,LUL A* ;R,+RA1AREA R,',TULUI((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((74 #A;IT,LUL :* RE>ULTATE <I #,-#LU>II((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((7A 'I'LI,+RAFIE(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( 7:
Introducere
,oi, ca i *iine umane a:em D simuri dintre care unul este auzul) 'm speci*icat asta doarece cel mai utilizat miCloc de comunicare dintre doi oameni este cea :erbal adic pe cale :ocal) Desigur :orbitul nu >nseamn nimic dac oamenii nu se pot >nelege unul cu cellalt, de aceea pe lRng *aptul de a putea :orbii este necesar un al*abet i un :ocabular) Dei nimeni nu >i >n:a pe copiii mici s :orbeasc, pot >n:a uor) Este ade:rat c recunoaterea :ocal este uoar pentru noi) Dar >n:tura :orbirii i recunoaterii :ocale, a *ost subestimat de secole) 4ulte progrese >n te<nologie au dus la implementarea te<nicii de :orbire i a recunoaterii :ocale >n anumite aparate) Sn maCoritatea *ilmelor S3 din 1AB!-1AA!, :edeam oameni care :orbeu cu robo i i computere >ns >n ziua de astzi aceste lucruri au de:enit posibile) De i recunoaterea :ocal este o sarcin *oarte di*icil, acesta poate *i *olosit >n multe aplica ii de pRn la un anumit grad) Sistemele automate de recunoatere :ocal pot *i puse >n aplicare >n calculatoare pentru a *i utilizate >n dictare i >n controlul programelor, care pot *i *oarte utile persoanele cu <andicap) #tilizri ale recunoaterii :ocale cu un computer? 4( Recunoa!terea vocal are scopul de a cunoa!te coninutul vorbirii )
3igura 1
3igura
3igura "
Tema aleas a *ost structurat pe capitole i sub-capitole distincte) Scopul *inal al acestui proiect este acela de a putea controla :ocal un robot) Pentru a putea realiza asta, am studiat bibliogra*ia recomandat de pro*esorul >ndrumtor i m-am *olosit de materiile studiate >n cei patru ani petrecui la ,,3acultatea de Inginerie ElectricFF a ,,#ni:ersitii %ala<iaFF din TRrgo:ite)
3igura D? 4odel 4arGo: 'scuns 4aCoritatea sistemelor de recunoatere :ocal moderne sunt bazate pe acest sistem care o*er modele statice din care ies o sec:en de simboluri sau cantiti) Din +44 ies o sec:e de :ectori cu :alori reale de n dimensiuni ast*el >ncRt *iecare din aceti :ectori se compun din coe*icieni, care se obin luRnd o trans*ormat 3ourier dintr-o *ereastr scurt de timp de :orbire i decolerRnd spectrul *olosind trans*ormata cosinusului, luRnd apoi primii coe*icieni) Sn *iecare stadiu, +44 :a a:ea tendina s aib o distribuie static, care estre un amestec de diagonale co:ariate .aussiene care :or o*erii probabilitate pentru *iecare :ector obser:at) 3iecare cu:Rnt sau *iecare *enomen :a a:ea o distribuie de ieire di*erit) #n +44 pentru o sec:en de cu:inte sau *enomene se *ace prin concatenarea indi:idual a unui +44 instruit pentru cu:inte i *enomene separate) Decodarea cu:intelor se :a *ace, probabil cu algoritmul %iterbi pentru a gsi cea mai bun cale i aici e6ist o alegere >ntre a crea dinamic o combinaie de +44 care include atRt in*ormaii modele acustice i de limb, sau combinRndu-l static >n prealabil)
6(4* ;erspective
4( 1edicale Persoanele cu <andicap pot bene*icia de programe de recunoatere :ocal) $ecunoa terea :ocal este util mai ales pentru persoanele care au di*icult i >n utilizarea mRinilor, >n ast*el de cazuri programele de recunoa tere :ocal sunt mult mai bene*ice i pot *i *olosite calculatoare de operare) 6( 1ilitare Programele de recunoatere :ocal sunt importante din punct de :edere militar, pentru 3orele 'eriene, recunoaterea :ocal are un potenial clar de reducere a :olumului de munc al pilotului) Pe lRng 3orele 'eriene ast*el de programe pot *i, de asemenea instruite pentru a *i utilizate >n managementul de lupt i alte aplicaii) 7( Educaionale Persoanele cu dizabiliti de >n:are, care au probleme de comunicare 9>n esen , ei se gRndesc la o idee, dar ea este procesat >ntr-un mod incorect determinRnd-o s aCung >n mod di*erit pe <Rrtie;, pot bene*icia de pe urma unui so*t=are de recunoatere :ocal) De asemenea recunoaterea :ocal poate *i *olosit >n cadrul unui proiect pentru studiul roboticii)
ce o mainrie necesit o pregtire) 0alculatorul necesit aCutor pentru separarea sunetelor de :orbire de alte sunete) 0Ri:a *actori care trebuiesc luai in considerare? ,monime Sunt cu:intele cu *orm identic i acelai corp *onetic, dar cu >neles total di*erit) Este o pro:ocare pentru mainrie, s *ac distincia >ntre aceste tipuri de cu:inte) Vorbire suprapus / a doua pro:ocare, este de a >nelege :orbirea rostit de ctre di*erii utilizatori, sistemele actuale au o di*icultate de a separa :orbirea simultan a mai multor utilizatori) Factori de zgomot Trebuie sa se aud cu:intele rostite distinct i clar) /rice sunet suplimentar poate crea inter*erene, >n primul rRnd a:em ne:oie de a plasa sistemul departe de medii zgomotoase i apoi de a :orbi clar, ast*el mainria nu :a con*unda i nu :a amesteca cu:intele)
,$ 0$T
,umele piesei
Preul piesei
1 L $on
1!A $on
"
7D $on
"!! $on
"B $on
M $on
Total ? MD $on
Tabel 1? Piese i preuri
-plat*orma asiuK - dou motoare de curent continuu 1 !?1 PololuK -dou roi speciale pentru aceste motoareK -roat metalica de spriCin, setul de conectori) Speci*icaii? -Tensiune motoare ? M %K -%itez de rotaie >n gol ? BD rotaii per minutK -0urent >n gol ? 7! m'K -0urent >n sarcin ma6im ? B!! m'K -0uplu ? D)L H. *ort T cm)
.river*ul de motor tip s3ield L6=@ 'cest dri:er de motoare poate comanda dou motoare de curent continuu, de un curent ma6im de amperi) Dri:erul este complet asamblat sub *orma unui s<ield 'rduino, *acilitRnd ast*el utilizarea simpl)
3igura 11? Dri:er de motor tip s<ield 1 AB "3ield*ul de recunoa!tere comenzi vocale* EA"EVR S<ield-ul Eas@%$ este proiectat pentru a permite adugarea de comenzi :ocale) 4odulul o*er *uncii de recunoatere :ocal pentru o serie de comenzi stocate din *abric 9care sunt independente de :orbitor adic recunoscute automat;, i pRn la " de comenzi de*inite de utilizator 9care sunt dependente de :orbitor;)
Speci*icaii? - dispune de o serie de comenzi deCa con*igurate, independente de :orbitorK - suport pRn la " de comenzi con*igurabile de ctre utilizatorK - inter*a gra*ic simpl care permite programarea comenzilor :ocale cu uurinK - utilizeaz portul serial pentru comunicare)
Dit conectori Arduino R7 Hit-ul conine conectori de B pini, un conector de M pini i un conector de 1! pini ) Este compatibil cu placile 'rduino #no %" i 'rduino 1eonardo) 'cest Git mi-a *ost necesar pentru a putea conecta S<ield-ul de recunoatere :ocal >n sti: cu placa 'rduino i dri:er-ul de motor)
'ateria LI;, :(8V 4FFF1A Speci*icaii? -7)L% -1!!! m'< - 0elule -$ata de descrcare D0
'rduino #,/ este o plat*orm de procesare open-source, bazat pe so*t=are i <ard=are *le6ibil i simplu de *olosit) 0onst >ntr-o plat*orm de mici dimensiuni 9M)B cm 2 D)" cm - >n cea mai des intRlnit :ariant; construit >n Curul unui procesor de semnal i este capabil de a prelua date din mediul >nconCurator printr-o serie de senzori i de a e*ectua aciuni asupra mediului prin intermediul luminilor, motoarelor, ser:omotoarelor, i alte tipuri de dispoziti:e mecanice) Procesorul este capabil s ruleze un cod scris >ntr-un limbaC de programare care este *oarte similar cu limbaCul 0UU) Placa 'rduino #,/ se conecteaz la portul #S7 al calculatorului *olosind un cablu de tip #S7 '7) Poate *i alimentat e6tern 9din priz; *olosind un alimentator e6tern) Speci*icaii ? -4icrocontroler? 'Tmega" BK -Tensiune de lucru? D%K -Tensiune de intrare 9recomandat;? 7-1 %K -Tensiune de intrare 9limit;? M- !%K -Pini digitali? 1L 9M PQ4 output;K -Pini analogici? MK -Intensitate de ieire? L! m'K -Intensitate de ieire pe ")"%? D! m'K -3las< 4emor@? " H7 9'Tmega" B; !)D H7 pentru bootloaderK -S$'4? H7 9'Tmega" B;K
-1"1 de instruciuni de putere, maCoritatea cu e6ecuie pe un singur cicluK -operaie static >ntreagK -capacitate de pRn la ! 4IPS la !4<zK -multiplicator pe-c<ip >n dou cicluriK durabilitate ridicat pe segmentele de memorie non-:olatilK
-memorie *las< " H7K -EEP$/4 1H7K -S$'4 H7K -cicluri de scriere2tergere? 1!!!! 3las<21!!!!! EEP$/4K -reinerea datelor ? ! de ani la BD V021!! de ani la D V0K 0aracteristici peri*erice?
-doi timer2counters de B bii cu Prescalar Separat i 4od 0omparareK -un timer2counter de 1M bii cu Prescalar Separat, 4od 0omparare i 4od 0apturK -0ounter de timp real cu oscilator separatK -ase canale PQ4K -serial programabil #S'$TK -serial inter*a 4aster2Sla:eK 0aracteristici speciale ale microcontrolerului?
-Po=er-on $eset i detecie 7ro=n-out programabilK -oscilator intern calibratK -surse e6terne i intrerupte internK -ase moduri Sleep? 'D0 ,oise $eduction, Po=er-sa:e, Po=er-do=n, Standb@, i E6tended Standb@K I2/ i pac<ete?
-1,B-D % Temperatur?
-mod acti:? !, m'K -mod Po=er-do=n? !,1 W'K -mod Po=er-sa:e? !,7D W' 9inclusi: " G+z $T0;)
Etapa urmtoare a constat >n conectarea rotiei metalice la asiu pentru stabilitate cu aCutorul uruburilor, piulielor i al celor dou cadre metalice)
Dup asamblarea acestui Git a *ost necesar lipirea *irelor pentru motoarele de curent continuu cu aCutorul unui letcon)
3igura
Sn continuare am *i6at circuitul pe asiu >ncepRnd cu placa 'rduino #no cu aCutorul a dou uruburi i a dou piulie)
'm ales conectarea pieselor >n sti: pentru a putea lucra mai uor, pinii de pe placa 'rduino *iind identici cu cei de la dri:er-ul de motor care l-am conectat peste placa 'rduino #no)
3igura L? 0onectarea dri:er-ului de motor Pentru c acest dri:er nu permitea conectarea direct >n sti: a s<ield-ului de comand :ocal a *ost ne:oie de a ataa Git-ul de conectori 'rduino $")
3igura D? 'taarea Git-ului de conectori 'rduino $" Sn urmtoarea etap am conectat *irele motoarelor de curent continuu la dri:er-ul de motor)
3igura M? 0onectarea *irelor de la motoare la dri:er-ul de motoare ' urmat conectarea >n sti: a s<ield-ului de comand :ocal a:Rnd griC ins, deoarece con*iguratia pinilor este uor di*erit *a de cea a placii 'rduino #no i al dri:er-ului de motor)
Toate piesele au *ost cumprate de pe site-ul ===)robo*un)ro i au *ost asamblate cu aCutorul urmtoarelor ustensile? -urubelni steaK -urubelni dreaptK -letconK -imbus)
De pe site-ul <ttp?22arduino)cc2en24ain2So*t=are am descrcat ar<i:a? 'rduino IDE 1)!)D, menionRnd c am ales aceast :ariant pentru c este destul de stabil) Programul de inter*a cu placa 'rduino #no nu necesit instalare *iind ne:oie doar de dezar<i:are) Pentru asta am *olosit programul Qin$'$ :ersiunea ")B!) #rmtorul pas a *ost s conectez placa 'rduino #no la laptop prin intermediu cablului '-7) 3iind prima interaciune a plcii 'rduino cu acest laptop a *ost necesar s instalez dri:erele >n urmtorul mod? -clicG dreapta pe iconia ,,4@ 0omputerFF de pe DesGtop K -din acel set de optiune am ales ,,4anageFFK -din acea *ereastr nou desc<is am ales seciunea 4anagerFFK ,,S@stem ToolsFF subcategoria ,,De:ice
->n subcategoria ,,/t<er de:icesFF cu denumirea de ,,#nGno=n de:iceFF este placa 'rduino #noK -am dat clicG dreapta pe aceasta i am ales opiunea ,,#pdate Dri:er So*t=areFFK -am ales opiunea ,,7ro=se m@ computer *or dri:er so*t=areFF alegRnd apoi *olderul ,,dri:ersFF din *iierul dezar<i:at ,,'rduino 1)!)DFF a:Rnd bi*at opiunea ,,Include sub*oldersFF dup care am apsat butonul ,,,e6tFF i am lsat instalarea s ruleze) Pasul urmtor a *ost s instalez programul pentru interaciunea cu s<ield-ul Eas@%$) 'cesta se numete Eas@%$ 0ommander i l-am descrcat de pe site-ul? <ttp?22===)robo*un)ro2s<ields2modulErecunoastereEcomenziE:ocaleEeas@:r )
Pentru a putea interaciona cu laptopul i programul Eas@%$ 0ommander am mutat Cumpper-ul de pe s<ieldul Eas@%$ din poziia SQ >n poziia P0)
3igura "1? Oumpper conectat la modul P0 Dup mutarea Cumperului >n poziia ,,P0FF am desc<is programul Eas@%$ 0ommander)
'm sc<imbat portul pentru a *i identic cu cel pe care am instalat placa 'rduino #no)
3igura ""? 'legerea portului #rmtorul pas a *ost conectarea s<ieldu-lui Eas@%$ la programul Eas@%$ 0ommander
Dup conectarea s<ield-ului a urmat introducerea a cinci noi comenzi >n grupul 1 i anume? 3/$Q'$D, $E%E$SE, $I.+T, 1E3T, ST/P i un cu:Rnt >n seciunea Trigger respecti:? 4/%E) Pentru ca s<ield-ul s >neleag aceste noi cu:inte a *ost ne:oie de antrenarea lor >n etape)
'ntrenarea acestor comenzi >n dou etape, a *ost necesar pentru ca aceste comenzi s nu intre >n con*lict >n momentul >n care utilizatorul rostete comanda) Etapa *inal >n programul Eas@%$ 0ommander a *ost generarea codului pe care l-am sal:at cu e6tensia )ino, dup care am mutat din nou Cumperul de pe s<ield-ul Eas@%$ de pe poziia ,,P0FF pe poziia ,,SQFF ' *ost necesar modi*icarea cod-ului >n programul 'rduino IDE 1)!)D pentru a putea aciona dri:er-ul de motor)
3igura "7? Inter*aa 'rduino IDE 1)!)D 'm >ncrcat codul modi*icat pe placa 'rduino #no dup :eri*icare)
0ontribuiile autorului sunt? analiza stadiului >n domeniu 9circa D articole de limb englez din care D au *ost citate;K asamblarea pieselor <ard=are dup propria sc<i *iind inspirat de un tutorial pentru Gitul E&-$/7/TK antrenarea comenzilor :ocaleK programarea robotuluiK
0ercetrile :or continua >n cadrul studiilor de masterat *iind >ndreptate spre? reuirea implementrii comenzilor :ocale utilizRnd module TbeeK implementarea senzorilor i a camerelor :ideo pe roboiK testarea altor plat*orme precum Eas@Pic, $aspberr@, E&-7 pentru creearea i testarea roboilorK per*ecionarea unui sistem de recunoatere :ocal)
'ibliogra%ie
$ri )i articole de specialitate
X'1Y X' Y X'"Y X'LY X'DY 3undamentals o* Speec< $ecognition, 1) $abiner N 7) Ouang, 1AA"K Speec< $ecognition, InTec<, !!BK ,e= De:elopments in $obotics 'utomation and 0ontrol, InTec<, !!BK 4odern Speec< $ecognition 'pproac<es =it< 0ase Studies, S) $amaGris<nan, Practical and E6perimental $obotics, 3erat S<ain N Pus<Gin Hac<roo)
!1 K
Site-uri "eb
X01Y <ttp?22===)@outube)com2=atc<Z:[TgzMu1t1'r' X0 Y <ttp?22===)@outube)com2=atc<Z:[QiDd=0cH7ss X0"Y <ttp?22===)@outube)com2=atc<Z:[<1*E/B:AS3s X0LY <ttp?22===)robots<op)com2blog2en2carlitos-proCects-speec<-controlled-arduinorobot-"MBL X0DY <ttp?22===)instructables)com2id2Speec<-$ecognition-=it<-'rduino2
AneGa
#if defined(ARDUINO) && ARDUINO >= 100 #include "Arduino.h" #include "Soft !reSeri!l.h" Soft !reSeri!l "ort(1#$1%)& #el'e #include "()ro*r!+.h" #include "Ne SoftSeri!l.h" Ne SoftSeri!l "ort(1#$1%)& #endif #include ,-!'./R.h> -!'./R e!'.0r("ort)& int 1O2OR13)IN1 = %& int 1O2OR13)IN# = 4& int 1O2OR#3)IN1 = 5& int 1O2OR#3)IN# = 6& 778rou"' !nd 9o++!nd' enu+ 8rou"' : 8ROU)30 8ROU)31 ;& enu+ 8rou"0 : 8031O/- = 0$ ;& enu+ 8rou"1 : 813<OR(ARD = 0$ 813R-/-RS- = 1$ 813RI8=2 = #$ = 0$ = 1$
813>-<2 = %$ 813DAN9- = ?$ 813>ON83<OR(ARD = 4$ 813>ON83R-/-RS- = 5$ 813S2O) = @$ ;& -!'./RArid*e Brid*e& intC3t *rou"$ idD& 0oid 'etu"() : "in1ode(1O2OR13)IN1$ OU2)U2)& "in1ode(1O2OR13)IN#$ OU2)U2)& "in1ode(1O2OR#3)IN1$ OU2)U2)& "in1ode(1O2OR#3)IN#$ OU2)U2)& 77 Brid*e +odeE if (Brid*e.checF()) : cli()& Brid*e.loo"(0$ 1$ 1#$ 1%)& ; 77 run nor+!ll. Seri!l.Be*in(6500)& "ort.Be*in(6500)& if (Ge!'.0r.detect()) : Seri!l."rintln("-!'./R not detectedG")& for (&&)& ; e!'.0r.'et)inOut"ut(-!'./RHHIO1$ >O()& Seri!l."rintln("-!'./R detectedG")& e!'.0r.'et2i+eout(4)& e!'.0r.'et>!n*u!*e(0)& *rou" = -!'./RHH2RI88-R& 77,II 't!rt *rou" (cu'to+iJe) ;
0oid !ction()& 0oid loo"() : e!'.0r.'et)inOut"ut(-!'./RHHIO1$ =I8=)& 77 >-D on (li'tenin*) Seri!l."rint("S!. ! co++!nd in 8rou" ")& Seri!l."rintln(*rou")& e!'.0r.reco*niJe9o++!nd(*rou")& do : 77 c!n do 'o+e "roce''in* ; hile (Ge!'.0r.h!'<ini'hed())& e!'.0r.'et)inOut"ut(-!'./RHHIO1$ >O()& 77 >-D off idD = e!'.0r.*et(ord()& if (idD >= 0) : 77 BuiltIin tri**er (ROAO2) 77 *rou" = 8ROU)3K& ,II Lu+" to !nother *rou" K return& ; idD = e!'.0r.*et9o++!nd()& if (idD >= 0) : 77 "rint deBu* +e''!*e uintC3t tr!in = 0& ch!r n!+eM%#N& Seri!l."rint("9o++!ndH ")& Seri!l."rint(idD)& if (e!'.0r.du+"9o++!nd(*rou"$ idD$ n!+e$ tr!in)) : Seri!l."rint(" = ")& Seri!l."rintln(n!+e)& ; el'e hile !itin* for ! '"oFen co++!nd
Seri!l."rintln()& e!'.0r."l!.Sound(0$ -!'./RHH/O>3<U>>)& 77 "erfor+ 'o+e !ction !ction()& ; el'e 77 error' or ti+eout : if (e!'.0r.i'2i+eout()) Seri!l."rintln("2i+ed out$ tr. !*!in...")& int153t err = e!'.0r.*et-rror()& if (err >= 0) : Seri!l."rint("-rror ")& Seri!l."rintln(err$ =-K)& ; ; ; 0oid 1o0e#(): !n!lo*(rite(1O2OR13)IN1$ #44)& !n!lo*(rite(1O2OR13)IN#$ 0)& !n!lo*(rite(1O2OR#3)IN1$ 0)& !n!lo*(rite(1O2OR#3)IN#$ #44)& ; 0oid 1o0e(): !n!lo*(rite(1O2OR13)IN1$ 0)& !n!lo*(rite(1O2OR13)IN#$ #44)& !n!lo*(rite(1O2OR#3)IN1$ #44)& !n!lo*(rite(1O2OR#3)IN#$ 0)& ; 0oid for !rd(): !n!lo*(rite(1O2OR13)IN1$ #44)& !n!lo*(rite(1O2OR13)IN#$ 0)& !n!lo*(rite(1O2OR#3)IN1$ #44)& ;
0oid re0er'e(): !n!lo*(rite(1O2OR13)IN1$ 0)& !n!lo*(rite(1O2OR13)IN#$ #44)& !n!lo*(rite(1O2OR#3)IN1$ 0)& !n!lo*(rite(1O2OR#3)IN#$ #44)& ; 0oid ri*ht(): !n!lo*(rite(1O2OR13)IN1$ 0)& !n!lo*(rite(1O2OR13)IN#$ #44)& !n!lo*(rite(1O2OR#3)IN1$ I#44)& !n!lo*(rite(1O2OR#3)IN#$ 0)& ; 0oid left(): !n!lo*(rite(1O2OR13)IN1$ I#44)& !n!lo*(rite(1O2OR13)IN#$ 0)& !n!lo*(rite(1O2OR#3)IN1$ 0)& !n!lo*(rite(1O2OR#3)IN#$ #44)& ; 0oid 'to"(): !n!lo*(rite(1O2OR13)IN1$ 0)& !n!lo*(rite(1O2OR13)IN#$ 0)& !n!lo*(rite(1O2OR#3)IN1$ 0)& !n!lo*(rite(1O2OR#3)IN#$ 0)& ; 0oid !ction() : ' itch (*rou") : c!'e 8ROU)30H ' itch (idD) : c!'e 8031O/-H 1o0e()& del!.(1400)& for !rd()&
*rou"=8ROU)31& 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite co++!nd' Bre!F& ; Bre!F& c!'e 8ROU)31H ' itch (idD) : c!'e 813<OR(ARDH for !rd()& del!.(%000)& 'to"()& 77 co++!nd' Bre!F& c!'e 813R-/-RS-H re0er'e()& del!.(%000)& 'to"()& 77 co++!nd' rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite Bre!F& c!'e 813RI8=2H ri*ht()& del!.(400)& 'to"()& 77 co++!nd' Bre!F& c!'e 813>-<2H left()& del!.(400)& rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite
'to"()& 77 co++!nd' rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite Bre!F& c!'e 813DAN9-H 1o0e()& del!.(#000)& re0er'e()& del!.(400)& 1o0e#()& del!.(1000)& for !rd()& del!.(400)& left()& del!.(1000)& ri*ht()& del!.(400)& for !rd()& del!.(#40)& 1o0e()& del!.(#000)& re0er'e()& del!.(400)& 1o0e#()& del!.(1000)& for !rd()& del!.(400)& left()& del!.(1000)& ri*ht()& del!.(400)& for !rd()& del!.(#40)& re0er'e()& del!.(400)&
1o0e#()& del!.(1000)& for !rd()& del!.(400)& left()& del!.(1000)& ri*ht()& del!.(400)& for !rd()& del!.(#40)& re0er'e()& del!.(#40)& 1o0e()& del!.(400)& 'to"()& 77 co++!nd' rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite Bre!F& c!'e 813>ON83<OR(ARDH for !rd()& 77 co++!nd' Bre!F& c!'e 813>ON83R-/-RS-H re0er'e()& 77 co++!nd' rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite Bre!F& c!'e 813S2O)H 'to"()& 77 co++!nd' Bre!F& ; Bre!F& rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite rite .our !ction code here 77 *rou" = 8ROU)3K& ,II or Lu+" to !nother *rou" K for co+"o'ite
; ;