Mini proiect (23) - Testarea unui senzor de distanță digital Sharp GP2Y0D805Z0F 10cm

Testarea unui senzor de distanta digital Sharp GP2Y0D805Z0F 10cm

Ieri am avut la teste un senzor de distanță Sharp care detecteaza orice obiect la o distanta de 10 cm. Modulul senzor vine cu un conector 3 pini, si are un LED rosu care se va aprinde in momentul in care se detectează un obiect.

Pinii senzorului sunt:

  • GND este masa și se conctează la GND-ul placii Arduino.
  • VIN care se conecteazala 5V de pe Arduino
  • OUT este iesirea senzorului si eu l-am conectat la pinul 7 de pe placa Arduino



 

În momentul in care m-am documentat despre acest senzor am aflat cât de important este să citesc fișa tehnică sau cel puțin descrierea produsului. In loc să obținem tensiuni de intrare analogice diferite și apoi să le convertim în distanțe folosind o formulă matematică, acest senzor returneaza pe pinul OUT „LOW” (0) daca senzorul se apropie la mai putin de 10 cm de un obiect, și altfel "HIGH" (1) în afara acestui interval. Vizual, acest lucru este susținut si de LED-ul roșu al plăcii.

In concluzie rețineți că acești senzori vă vor spune doar dacă există un obiect în raza de detectare (10 cm)  si nu vă vor spune cât de departe este obiectul  

 Câteva exemple de aplicații : 

  • viteza de rotație a unei roți sau elici  
  • bara de protecție fără contact sau detector de obstacole 
  • un contor sau temporizator de obiecte pe măsură ce trec  


Documentatie proiect:

Componente:


Schema electronica: 

Mai jos este schema electronică a senzorului în sine:Testarea unui senzor de distanta digital Sharp GP2Y0D805Z0F 10cm

În poza de mai jos este schema conexiunilor cu Arduino:
 
 Testarea unui senzor de distanță digital Sharp GP2Y0D805Z0F 10cm

 În poza de mai jos m-am apropiat cu aparatul foto la mai puțin de 10 cm , și s-a aprins atât LED-ul de test, cât și LED-ul de pe plăcuța senzorului:

Testarea unui senzor de distanță digital Sharp GP2Y0D805Z0F 10cm

Cod de test:


#define LED_PIN 8
#define IR_PIN 7
int value;
void setup()
{
  Serial.begin(9600);
  pinMode(LED_PIN, OUTPUT);  // Status on pin 3 LED
  pinMode(IR_PIN, INPUT);    // IR output
}
void loop()
{
  value = digitalRead(IR_PIN);
  Serial.println(value);
  if (value == LOW) 
  { 
    digitalWrite(LED_PIN, HIGH);
  }
  else
  {
   digitalWrite(LED_PIN, LOW);
  }
  delay(50);
}

Pentru întrebari și/sau consultanță tehnică vă stau la dispozitie pe blog sau pe email simedruflorin@automatic-house.ro. O seară plăcută tuturor !

Etichete

Afișați mai multe

Arhiva

Afișați mai multe