{"id":684,"date":"2015-11-21T16:52:56","date_gmt":"2015-11-21T13:52:56","guid":{"rendered":"http:\/\/arduinoshop.ro\/?p=684"},"modified":"2017-08-02T09:55:17","modified_gmt":"2017-08-02T06:55:17","slug":"folosirea-senzorului-de-distanta-cu-ultrasunete-hc-sr04","status":"publish","type":"post","link":"https:\/\/roboromania.ro\/?p=684","title":{"rendered":"Folosirea senzorului de distanta cu ultrasunete HC-SR04  &#8211; pentru \u00eencep\u0103tori"},"content":{"rendered":"<h2><span style=\"color: #0000ff;\"><strong>Folosirea senzorului de distanta cu ultrasunete HC-SR04<\/strong><\/span><\/h2>\n<p><a href=\"http:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/HC-SR04-roboromania.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-897\" src=\"http:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/HC-SR04-roboromania-300x280.jpg\" alt=\"HC-SR04-roboromania\" width=\"300\" height=\"280\" srcset=\"https:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/HC-SR04-roboromania-300x280.jpg 300w, https:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/HC-SR04-roboromania-1024x956.jpg 1024w, https:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/HC-SR04-roboromania.jpg 1501w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Piese necesare :<\/p>\n<p>1 x plac\u0103 Arduino UNO R3<br \/>\n1 x Senzor de distan\u0163\u0103 cu ultrasunete HC-SR04<br \/>\n3 x LED (plus 3 rezisten\u0163e de 1 k\u2126 pentru aceste leduri)<br \/>\ncabluri de leg\u0103tur\u0103 necesare \u00eentre piese \u015fi plac\u0103<\/p>\n<p><a href=\"http:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/Uno-roboromania-fata.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-754\" src=\"http:\/\/roboromania.ro\/wp-content\/uploads\/2015\/08\/Uno-roboromania-fata.jpg\" alt=\"Uno-roboromania-fata\" width=\"200\" height=\"132\" \/><\/a><\/p>\n<p><strong>Algoritm :<\/strong><\/p>\n<p>Ini\u0163ial ledurile sunt oprite.<br \/>\nLa distan\u0163a cea mai mare (eu am specificat \u00een cod peste valoarea 3000) toate ledurile sunt de asemenea oprite.<\/p>\n<p>Dac\u0103 se detecteaz\u0103 un obstacol \u00eentre valorile 2001 \u015fi 3000 se aprinde 1 led (aproximativ \u00eentre 30-40 cm distan\u0163\u0103).<br \/>\nDac\u0103 obiectul se apropie \u00eentre valorile 1000 si 2000 am setat s\u0103 se aprind\u0103 2 leduri.<br \/>\nDac\u0103 obiectul e foarte aproape de senzor (sub 1000 respectiv sub 10-15 cm) am setat s\u0103 se aprind\u0103 toate 3 ledurile.<\/p>\n<p><strong>Montare :<\/strong><\/p>\n<p>Senzorul are 4 pini respectiv:<\/p>\n<p><strong>VCC<\/strong> de la senzor se cupleaza la +5V de pe placa arduino.<br \/>\n<strong>TRIG<\/strong> de la senzor se cupleaz\u0103 la unul din pinii digitali de pe placa arduino (\u00een cod am setat pinul 2)<br \/>\n<strong>ECHO<\/strong> de la senzor se cupleaz\u0103 la un alt pin digital de pe placa arduino (\u00een cod am setat pinul 3)<br \/>\n<strong>GND<\/strong> de la senzor se cupleaz\u0103 la unul din pinii GND de la arduino<\/p>\n<p>LED-urile se cupleaz\u0103 \u015fi ele (prin intermediul unei rezisten\u0163e de 1 k\u2126) la pinii 8,9 \u015fi 10 iar negativul de la leduri la GND de la arduino.<\/p>\n<p><strong>Codul necesar (sketch) :<\/strong><\/p>\n<p>&nbsp;<\/p>\n<p>\/*<br \/>\n* Ultrasound model: HC-SR04<br \/>\n* Senzor pins\u00a0 | Arduino Board<br \/>\n* VCC la 5V<br \/>\n* TRIG la Digital pin 2<br \/>\n* ECHO la Digital pin 3<br \/>\n* GND la GND<br \/>\n* LED1 la Digital pin 8<br \/>\n* LED2 la Digital pin 9<br \/>\n* LED3 la Digital pin 10<br \/>\n*\/<\/p>\n<p>\/\/ initialize the necessary ports<br \/>\nint usTrigger = 2;<br \/>\nint usEcho = 3;<br \/>\nint led1 = 8;<br \/>\nint led2 = 9;<br \/>\nint led3 = 10;<\/p>\n<p>void setup() {<br \/>\n\/\/ start ultrasound<br \/>\npinMode(usTrigger, OUTPUT);<br \/>\npinMode(usEcho, INPUT);<br \/>\n\/\/ start leds<br \/>\npinMode(led1, OUTPUT);<br \/>\npinMode(led2, OUTPUT);<br \/>\npinMode(led3, OUTPUT);<br \/>\n}<\/p>\n<p>void loop() {<br \/>\n\/\/ Initiate ultrasonic speaker<br \/>\ndigitalWrite(usTrigger, HIGH);<br \/>\ndelayMicroseconds(10);<br \/>\ndigitalWrite(usTrigger, LOW);<\/p>\n<p>\/\/ Reading out the signal strength<br \/>\nlong timecount = pulseIn(usEcho, HIGH);<br \/>\n\/\/ if more than 3000 all LEDs stop.<br \/>\nif ( timecount &gt; 3000 ) {<br \/>\ndigitalWrite(led1, LOW);<br \/>\ndigitalWrite(led2, LOW);<br \/>\ndigitalWrite(led3, LOW);<br \/>\n}<br \/>\n\/\/ If it&#8217;s between 2001 and 3000 start LED 1<br \/>\nif ( timecount &gt; 2000 &amp;&amp; timecount &lt;= 3000 ) {<br \/>\ndigitalWrite(led1, HIGH);<br \/>\ndigitalWrite(led2, LOW);<br \/>\ndigitalWrite(led3, LOW);<br \/>\n}<br \/>\n\/\/ If it&#8217;s between 1000 and 2000 start LED 1 and 2<br \/>\nif ( timecount &gt;= 1000 &amp;&amp; timecount &lt;= 2000 ) {<br \/>\ndigitalWrite(led1, HIGH);<br \/>\ndigitalWrite(led2, HIGH);<br \/>\ndigitalWrite(led3, LOW);<br \/>\n}<br \/>\n\/\/ If it&#8217;s under 1000 turn all LEDs<br \/>\nif ( timecount &lt; 1000 ) {<br \/>\ndigitalWrite(led1, HIGH);<br \/>\ndigitalWrite(led2, HIGH);<br \/>\ndigitalWrite(led3, HIGH);<br \/>\n}<br \/>\n\/\/ Wait 0.1 seconds before the next reading.<br \/>\ndelay(100);<br \/>\n}<\/p>\n<p>&nbsp;<\/p>\n<p>Aceast\u0103 aplica\u0163ie se poate dezvolta de exemplu pentru un robot autonom care ocole\u015fte obstacolele.<\/p>\n<p><span style=\"color: #0000ff;\">Succes !<\/span><\/p>\n<p>Colectivul Roboromania<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Folosirea senzorului de distanta cu ultrasunete HC-SR04 Piese necesare : 1 x plac\u0103 Arduino UNO R3 1 x Senzor de distan\u0163\u0103 cu ultrasunete HC-SR04 3 x LED (plus 3 rezisten\u0163e de 1 k\u2126 pentru aceste leduri) cabluri de leg\u0103tur\u0103 necesare \u00eentre piese \u015fi plac\u0103 Algoritm : Ini\u0163ial ledurile sunt oprite. La distan\u0163a cea mai mare [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[176],"tags":[],"class_list":["post-684","post","type-post","status-publish","format-standard","hentry","category-tutoriale-arduino"],"_links":{"self":[{"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/posts\/684","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/roboromania.ro\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=684"}],"version-history":[{"count":8,"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/posts\/684\/revisions"}],"predecessor-version":[{"id":3404,"href":"https:\/\/roboromania.ro\/index.php?rest_route=\/wp\/v2\/posts\/684\/revisions\/3404"}],"wp:attachment":[{"href":"https:\/\/roboromania.ro\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=684"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/roboromania.ro\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=684"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/roboromania.ro\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=684"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}