Sunteți pe pagina 1din 1

// Pinul Trigger de la senzor la pinul 9 de pe Arduino

#define TRIGGER 9
// Pinul Echo de la senzor la pinul 8 de pe Arduino
#define ECHO 8

// aceasta variabila salveaza cat timp are nevoie un sunet pentru a reflecta si a
reveni inapoi
//valoarea initiala este zero
long durata=0;
//variabila care salveaza distanta masurata
long distanta=0;

void setup() {
pinMode(13, OUTPUT);
pinMode(TRIGGER, OUTPUT); // trigger pin este iesire
pinMode(ECHO, INPUT); // echo pin este intrare
Serial.begin(9600); //pornesc comunicarea seriala astfel incat pot vedea valorile
masurate
}
void loop() {
digitalWrite(TRIGGER, LOW); // aici oprim tensiunea pentru o perioada scurta de
timp la trigger
delayMicroseconds(2); // durata de 2 microsecunde

digitalWrite(TRIGGER, HIGH); // acum trimitem un sunet


delayMicroseconds(10); // durata de 10 microsecunde

digitalWrite(TRIGGER, LOW); // oprim sunetul


durata = pulseIn(ECHO, HIGH); // Cu comanda "pulseIn" arduino contorizeaza timpul
in microsecunde pana cand sunetul revine la senzorul cu ultrasunete
distanta = (durata/2) * 0.03432;

//daca distanta masurata este de peste 15 cm


if(distanta <50) {
digitalWrite(13, HIGH);
delay (500);
digitalWrite(13, LOW);
delay(500);

// monitorul serial va afisa acest text deoarce valorile masurate in aceste zone
sunt gresite sau inexacte
Serial.print(distanta); // valoarea distantei va fi afisata pe monitor
Serial.println(" cm");

}
else //in caz contrar
{
digitalWrite(13, LOW);
Serial.print(distanta); // valoarea distantei va fi afisata pe monitor
Serial.println(" cm");

}
delay (500);
}

S-ar putea să vă placă și