Laboratoire SUPINFO de recherche en robotique

Utiliser un capteur à ultrason PING

JFIF``;CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), quality = 90 C     C    }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbr $4%&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz ?Ts.1'ړJ\H kY4=ֱoYuyq+IpI {B 3~@6uw#R Pp;Ԍ :cb,E~+U9nސ+]ZVE#{z+sI֦!shgw~u4 PFq 9#; Nj-t:Tvkю rWHx'f~GN4UGRř"Ҩ_F-K{IG鶷xқ1ͷ9?%]hwMK9lpZR󹄪9Uv<^[3![?W{X_oGuึeXr2sYZ_d=_3_FbYf[{3i^ތ`?5_"˾R7?xK- jIYM|\(x gQt#B5tJ?"}?dz:umJWf+ K8m svk˕G|3xkzČb2\p3{1\U);#xS۟P#vnr/腖}B3 95jaso?*-i>db&]:kmRM3D$ts3/-<=~![)qRż* 7VѦrjidpLO{ﵝ ?AVH7@ }w0$CJv=֖~>s]ޘ5SJywug< W_•)IqM\K [ک?i7.7T89uXϖ]Nr#e=z!d$d<g$zW fMY\BmJ{2K#f=M+ z+܊h}#5Ttxt%$8\s6Y&Fh?O*o}*Ξǩ|IT{nho_fڱ-ܑRwgUUJtXh:U70%U|_avq3VrDC]^XuK`?(3:p 5; RG4z)4-F@AQ sL,\u3<ڔ~)K(Lo2cl EuTjMbOg9cCخx3[HP#5[+avg-+{=S{/t2MK2x@9Q"\cFpG[:m #͎s4)|w_t[Na2uw>A?g8Aݞ-sz,`Ӧ Rk95N!z_ EXspZϬF# O]1m}_'֗}Oq}g}l1ן*?tE5?c_ǚN Lcjv9b(-BiI*q&Iyoɦb-I+;{xeҚ˱~w:/T_<WZ{]oK(*vqZRr=SEƩg}z>kmm<敐-%-ι[OI*T%ƣl[h䑼w!Av溡'n|Ih_؆j>64; c22m7y$wS~e?[e3JOv'9MMxsGC._Gu\Fmw?|>5c YEeCXSZU Ӳڠ޵H|Qd'o%+s8)"FHPz?S~*klofΞdDu9<T{;17,a}Q΋uY&a4{6|E{sw$Q$M]+>L69js1;g'Cֱ=b'5cvs_$HbDm5%0ο^I Dp֎Gc=@?_YJ*~$>k+?fgVqvcn,,渻KUF3xq8]\)ɤ}G]\A_~XqWR͟Hs:޴v}fəm=#B?ʼvU(=vNV8,͏9 HuKpG—/nc c}ޡmSSۢB0"<6G_~;)]q>$]]hiyVw!VAlC-[hRr[a>Z_6ѴHNėŜJjGԞH;_2J\ 1vhz5|dgͤh1gU)w&⍼>OBFLZ&l\LT\ ]tˡd(#-Em/z\r&U͗#8,ywbh6X%W>4- y$qJO40κrV?4 )~> Cw a˙(wXHAk2M]G'hKۙW#g M4$=(MGx%+o-4F6gO&[7?χ"R5o/e< "/;O]jrj#_&Vj4aowu3L3)_!N pEJMҪpxwu'qs#M#'JV<Sɏo\!?][$땻7:ώ?Wŗoi3gEod<\dvc$bG1~ߍgW߀~OCoiDDj8 SECNcE&" nY_ϣg~xe-ɊMLj=q9X2q?)<1υtkM }8(M!g8.X{7+sz<zMDq]2O[##=qVw x/5li4ȟ#2rqGLv=J~eX@[55(JEl?E֭;V z z]]dX[F.^}{(-Bg="www)!wsrkM;> [Kῳm$GYX \ư)$a|+c6- Ǹ;-5ylw tU{Gq>P/C+@~}?*T0%MY Y{F!rO՜w4lr*nR99dK%To_3)ú=[_CXKoq Q7?yqѡT&0KX08ؑwzV2Wrψ7T{U (䑑ӊ Ư}*mRLKWGe89ʹ퇯j=񍗈uk濻KuyRqy>ex30NZ1g"avZӚ<+q?Nh_Nn͓cuogD6>2K?1]Y5+OcWY]B/ I>zMCǮ u_3l}UAZf&>dxl\I`.98⃐7~ - K I<JL&?c6#2ʧ?Y%t\ާ|B6ƍ.ߙS3y⻻, !iܡzdТq\QP&Nf?KBxKxޞ\ak*AI@}TtOzq]MeW]DV.lj ./'$𠓊6zXovxV 2X \YJ&s|t+-"u'Qn3,l { "gʬ4@ -_~T=#ᯂ6pKm)$A 0#,1횋 4wԯRծb@1;z+k?[&Gdk.V}XBUYOS3#x[C啼Z-VVAEɊ8͇Ax"H)>F3M;i=ċ (740UQI'/?fJIv*-gQXsbߎ;Jӌ]B=*Y4̼p_#s9[M>[VY]IoKo,''[EÔxsa?觱cSg7g<~%xr>]n/'ii[R5+~1,n(y '7kTi^)>04๖=5U%K 9'jt%xFgNKaA;y`,"Nq8;~.:y hy2C2Dl8 Wq\@wsZJ J̛ٞw=>+ys^mGVs͋} +[+L%q낿tSN+Utiliser un capteur à ultrason PING

11 déc, 2014

Vous pouvez retrouver l’article qui va suivre sur le site de l’association RobotLabo qui est composé des étudiants du laboratoire robotique pour pouvoir profiter d’une meilleure lecture :

 

https://robotlabo.eu/pageTuto/tutoCapteurUltrason.html

 

Utiliser un capteur de distance ultrason

 

Un capteur à ultrason fonctionne en envoyant des ondes vers l’avant. Ces dernières vont se propager à la vitesse du son jusqu’à rencontrer un obstacle. Lors de cette rencontre la plupart des ondes vont être renvoyé vers le capteur qui va les recevoir. Il pourra ainsi calculer le temps entre l’émission et la réception des ondes. Ce temps peut être converti en distance car l’on connait la vitesse du son 340km/h ou encore 29 microsecondes par centimètre.

Pour obtenir la distance en centimètre il faut diviser le temps entre l’émission et la réception d’une onde par 29. Cette distance correspond à un aller-retour ne pas oublier de la diviser par deux pour récupérer la vraie distance !

 

Pour les branchements :

Brancher la broche GND à la masse de votre microcontrôleur souvent nommé par le même nom.

Brancher la broche 5V à la sortie 5v de votre arduino.

Brancher la broche SIG à une sortie digitale de votre arduino. Pour le code qui va suivre brancher la à la sortie 7.

8

 

Passons au code :

Ce code correspond au capteur PING la plupart des capteurs à ultrasons du marché suivent le même code.

 

const int pingPin = 7;

 

void setup() {

// initialise la communication série

Serial.begin(9600);

}

 

void loop()

{

// déclaration des variable pour le temps entre deux ondes et la distance

long duration, cm;

 

// Morceau de code permettant de réinitialiser le capteur pour l’envoie d’une nouvelle onde

pinMode(pingPin, OUTPUT);

digitalWrite(pingPin, LOW);

delayMicroseconds(2);

digitalWrite(pingPin, HIGH);

delayMicroseconds(5);

digitalWrite(pingPin, LOW);

 

// on utilise pulseIn pour recevoir une durée de type long

pinMode(pingPin, INPUT);

duration = pulseIn(pingPin, HIGH);

 

// On converti la durée en distance grâce à une fonction que vous trouverez plus bas

cm = microsecondsToCentimeters(duration);

 

Serial.print(cm);

Serial.print(« cm »);

Serial.println();

 

delay(100);

}

 

long microsecondsToCentimeters(long microseconds)

{

// Comme expliqué auparavant nous divisons la durée par la vitesse et par 2 pour avoir la distance d’un aller simple.

return microseconds / 29 / 2;

}

 

Et voilà vous pouvez voir sur votre terminal série la distance en centimètre du premier obstacle trouvé par le capteur.

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>