Vous êtes sur la page 1sur 14

Ecole Suprieure des Sciences et des Technologies de Hammam Sousse

Licence 2 lectronique informatique


Module : Travail personnalis
RAPPORT DU MINI PROJET
SmartCar
Elabor par : DABBOUBI Walid & RAIS Mohamed
Encadr par : HERGLI Monir
Rali! dan! le cadre d "ra#ail per!onnali!
A#ril $%%&
Sommaire
SmartCar, de quoi sagit-il ?
Mcanisme
Moteurs courant continue
Moteur pas pas
Jeu de capteurs
Capteur mcanique
Capteur optique
Programme
Modes de fonctionnement
Possibilit de control distance
SmartCar, de quoi sagit-il
Comme son nom lindique, SmartCar est un robot mobile (!icule
intelligent" capable deffectuer plusieurs t#c!es et de ragir aec le
monde e$trieur gr#ce un mcanisme et un %eu de capteurs
commands par un programme install dans le fameu$
microcontr&leur '()*++ de M,C-.S/,P0
)igure '
!" moteurs # $oura%t $o%ti%ue
&" $ir$uit de $omma%de
'" moteur (as # (as
)" $ir$uit i%*rarouge
+" roues
!
!
&
+
+
'
)
Q1
2N2222
Q20
2N2222
Q3
2N2222
Q25
2N2222
R1
100
R2
100
R3
100
R4
100
Q46
2N2222
Q47
2N2222
Q48
2N2222
Q45
2N2222
R7
100
R6
100
R5
100
R8
100
BAT?
9V
M,$a%isme du ro-ot .
1a mobilit de SmartCar est assure par trois moteurs, 2 moteurs
courants continue tournant c!acun un roue pour faire aancer ou
reculer le robot et un autre moteur pas pas unipolaire (( fils" qui sert
tourner la carcasse droite ou gauc!e selon les ordres proenant
du circuit de commande programm en aance0
/es moteurs # $oura%t $o%ti%ue .
)igure 2
1es deu$ moteurs courant continue (3-45 oir figure 2" du notre
robot assurent sa mobilit proprement dite, c!aque un de ces deu$
moteurs est associ 6 transistors P7P c!arg diners le sens de
rotation afin daancer ou de reculer le robot0 C!aque transistor est
protg par une rsistance et command ia sa base par le
microcontr&leur (figure 8"
5ers P,C
)igure 6
/e moteur (as # (as .
1e moteur pas pas est c!arger de donner lorientation demande au
robot selon les conditions e$trieures (emplacement, collision9" et
selon les besoins de lutilisateur et :a diff;re selon le mode de
fonctionnement0
)igure <
C!aque bobine du moteur est contr&le par un transistor (figure (" afin
de dassurer la squence ncessaire pour donner langle de rotation
sou!ait et de faire tourner donc le robot0
)igure (
Jeu de $a(teurs du ro-ot .
1a communication du SmartCar aec son entourage est assure par
deu$ capteurs de t=pes diffrents>
Ca(teur m,$a%ique 0d,te$teur de $ollisio%1
?n cas de collision du robot aec un ob%et e$trieur un bouton
poussoir prolong laide dun (antenne" sera en tat ferm, une
information sera donc eno= au microcontr&leur, ce dernier se
comporter comme son programmateur la indiquer, il peut faire
tourner les roues dans le sens inerse afin de reculer le !icule par
e$emple ou donner un signal lutilisateur0
5ers P,C
)igure +
Ca(teur o(tique 0d,te$teur do-sta$le IR1
1e C, 7?<<< qui %oue le r&le dun oscillateur dans notre montage
(figure * et 4" est le c@ur du capteur optique, ce dernier fournit la
diode ,- une frquence a%uste selon celle du rcepteur AS.P'+8*
(8*B!C"0 1a frquence gnre par loscillateur qui doit Dtre identique
celle du rcepteur doit obir lquation suiante>
)igure *
)igure 4
?n cas de prsence dun obstacle deant le robot le ra=on ,- mis par
le 1?E infrarouge se refl;te et sera capt par le rcepteur (AS.P
'+8*" ce qui lui permet deno=er une information au
microcontr&leur0
)igure '3 > dtecteur dobstacle
Programme de SmartCar
1e programme commandant le robot est crit en langage C utilis
souent dans la programmation des microcontr&leurs0
#include <16F877.h>//bibliothque du PIC167877
#use delay(cloc!"######$
#de%ine d# in&ut(&in'd#$//bouton &oussoi((d(oite$
#de%ine d1 in&ut(&in'd1$//bouton &oussoi((a)ant$
#de%ine d* in&ut(&in'd*$//bouton &oussoi((d(oite$
#de%ine d" in&ut(&in'd"$//bouton &oussoi((+auche$
#de%ine d, in&ut(&in'd,$//ca&teu((d-tecteu( de collision$
#de%ine d. in&ut(&in'd.$//bouton &oussoi((/ode auto$
#de%ine 0 &in'b1//0 est le %il noi( du /oteu( P1P
#de%ine 2 &in'b*//2 est le %il 3aune du /oteu( P1P
#de%ine 4 &in'b"//4 est le %il /a((on du /oteu( P1P
#de%ine 5 &in'b,//0 est le %il o(an+e du /oteu( P1P
)oid 6785'97:877($
;
out&ut'bit(&in'b,<#$=//t(ansisto( 5 bloqu-
out&ut'bit(&in'b*<#$=//t(ansisto( 2 bloqu-
out&ut'bit(&in'b1<#$=//t(ansisto( 0 bloqu-
out&ut'bit(&in'b"<#$=//t(ansisto( 4 bloqu-
out&ut'bit(&in'd6<#$=//>79 +auche eteinte
out&ut'bit(&in'd7<#$=//>79 +auche eteinte
?//tous les t(ansisto(s co//andant le /oteu( P1P se(ont (ou (estent$
bloqu-s d@oA le /aintien de son -tat initial celle de #B
)oid :5'CP ($
;
out&ut'bit(&in'c1<#$=//(ecule/ent d-sacti)-(s@il est acti)e$
out&ut'bit(&in'c#<1$=//a)ance/ent acti)-
?//le (obot a)ance
)oid :5'95D0 ($
;
out&ut'bit(&in'c#<#$=//a)ance/ent d-sacti)-(s@il est acti)e$
out&ut'bit(&in'c1<1$=//(ecule/ent acti)-
?//le (obot (ecule
)oid EF5P ($
;
out&ut'bit(&in'c#<#$=//a)ance/ent d-sacti)-
out&ut'bit(&in'c1<#$=//(ecule/ent d-sacti)-
out&ut'bit(&in'b,<#$=//t(ansisto( 5 bloqu-
out&ut'bit(&in'b1<#$=//EF7PP78 45F58
out&ut'bit(&in'b"<#$=//EF7PP78 45F58//# 87FC80
out&ut'bit(&in'd6<#$=
out&ut'bit(&in'd7<#$=
?//le (obot s@a((Gte quelque soit son -tat actuel
)oid FC80'8I:HF($//
;
out&ut'bit(&in'd6<1$=
out&ut'bit(4<1$=//EF7PP78 45F58//FC80 8I:HF ,.
delay'/s(1##$=
out&ut'bit(2<1$=
//&ou( (etou(ne( I la &osition initialeJ
delay'/s(.##$=
out&ut'bit(4<#$=
out&ut'bit(2<#$=
out&ut'bit(5<1$=
delay'/s(1##$=
out&ut'bit(0<1$=
delay'/s(1##$=
?
)oid FC80'>7FF($
;
out&ut'bit(&in'd7<1$=
out&ut'bit(5<1$=//EF7PP78 45F58//FC80 8I:HF ,.
delay'/s(1##$=
out&ut'bit(0<1$=
//&ou( (etou(ne( I la &osition initialeJ
delay'/s(.##$=
out&ut'bit(5<#$=
out&ut'bit(0<#$=
out&ut'bit(4<1$=//EF7PP78 45F58//FC80 8I:HF ,.
delay'/s(1##$=
out&ut'bit(2<1$=
delay'/s(1##$=
?
)oid /od'auto($;
:5'CP($=
i% (d,!!#$;
//buKK($=
sto&($=
delay'/s(1###$=
+o'doLn($=
delay'/s(.###$=
tu(n'le%t($=
delay'/s(*###$=
Ke(o'de+(ee($=
+o'u&($=
?
?
/ain($
;
//E7F'F8IE'd( #F $=
out&ut'bit(&in'd6<#$=
out&ut'bit(&in'd7<#$=
Lhile(1$;
i% (d.!!%alse$ /od'auto($=
else i% (d#!!%alse$;
+o'u&($=
i%(d*!!%alse$ tu(n'le%t($=
else i%(d"!!%alse$ tu(n'(i+ht($=
else i% (d,!!%alse$;
sto&($ =
delay'/s(.##$=
+o'doLn($=
delay'/s(.###$=
?
else Ke(o'de+(ee($=
?
else i%(d1!!%alse$;
+o'doLn($=
i%(d*!!%alse$ tu(n'le%t($=
else i%(d"!!%alse$ tu(n'(i+ht($=
else i% (d,!!%alse$;
sto&($ =
delay'/s(.##$=
+o'u&($=
delay'/s(.###$=
?
else Ke(o'de+(ee($=
?
else i% (d,!!%alse$;
sto&($ =
delay'/s(.##$=
+o'doLn($=
delay'/s(.###$=?
else i% (d"!!%alse$;
tu(n'(i+ht($=?
else i% (d*!!%alse$;
tu(n'le%t($=?
else
;
Ke(o'de+(ee($=
sto&($=
??
?
/Mi% (d#!!%alse$
+o'u&($=
else i%(d1!!%alse$ +o'doLn($=
else i%(d1!!%alse$ +o'doLn($=
else i%(d*!!%alse$ tu(n'le%t($=
else i%(d"!!%alse$ tu(n'(i+ht($=
else i% (d,!!%alse$;
sto&($ =
delay'/s(.##$=
+o'doLn($=
delay'/s(.###$=?
else sto&($=
M/
////////MMMMMMMMMMM4597 1CF5MMMMMMMMMMMMMMMMM//
/M
:5'CP($=
delay'4E(1####$=
FC80'8I:HF($=
delay'4E(1####$=
FC80'>7FF($=
97>1N'4E(1####$=
:5'95D0($=
delay'/s(.###$=
EF5P($=
97>1N'4E(.###$=
out&ut'bit(&in'c"<1$=
M/
Mode de *o%$tio%%eme%t .
1a ersion actuelle du pro%et comprend 8 modes fonctionnement qui
peuent Dtre e$tensibles>
-Mode )iloguid> 1utilisateur guide le !icule partir dune
manette comprenant ( boutons >
F aancer
F reculer
F droite
F gauc!e
F auto
-Mode Gutomatique> Es que le bouton GHA. est acti le robot
commence circuler et iter les obstacle dune mani;re autonome
gr#ce ces capteurs
-Mode parcours> 1e robot doit parcourir un circuit donner par le
programmateur
-SmartCar peut Dtre galement utilis comme un %ouet amusant pour
les enfants
Possi-ilit, de $o%trol # dista%$e .
5u la souplesse de programmation du P,C '()*++ et la prsence du
AS.P'+8* capable de dmoduler les codes du protocole -C< (utilis
dans les tlcommandes de la tl" dans le circuit rcepteur ,-
(dtecteur dobstacle", SmartCar peut e$ploiter son intelligence dans
des domaines diffrents saoir les besoins du programmateur, on
peut par e$emple >
- fi$er une camra sur la carcasse du !icule et e$plorer un
Milieu (dangereu$" en utilisant une tlcommande compatible -C<0

Vous aimerez peut-être aussi