0. Componentes y programación necesaria para el Medidor Distancia IR Sharp GP2Y0A21YK0F

Componentes requeridos:

{Product:2000}{Product:237}

I. Cómo utilizar el módulo GP2Y0A21YK0F Fuerte Infrarrojo Medidor Distancia IR

El módulo sensor de proximidad Infrarrojo es ideal para proyectos con Arduino. Es nuestro sensor de distancia analógico más potente con el rango hasta 80cm perfecto para proyectos de Arduino más ambiciosos.

II. Procedimientos experimentales

Conexión

El módulo se alimenta directamente de Arduino, así que no necesitamos una fuente de alimentación externa. 

Los pines están conectados según la tabla:

 

Pin Módulo

Pin de Arduino UNO

cable rojo/marrón

5V

cable negro/azul

GND

cable amarillo/verde

A1

El diagrama es es por tanto el siguiente:

Código

Abre un sketch nuevo y copia el siguiente código:

const int sensorPin = A0;

const long referenceMv = 5000;

 

void setup() {

   Serial.begin(9600);

   pinMode(ledPin, OUTPUT);

}

 

void loop() {

   //lectura de la tensión

   int valor = analogRead(sensorPin);

   int mV = (valor * referenceMv) / 1023;

   int cm = getDistance(mV);

 

   

   //mostrar valores por pantalla

   Serial.print(mV);

   Serial.print(",");

   Serial.println(cm);

   Serial.print(" cm");

 

   delay(1000);

}

 

//interpolación de la distancia a intervalos de 250mV

const int TABLE_ENTRIES = 12;

const int INTERVAL  = 250;

static int distance[TABLE_ENTRIES] = {150,140,130,100,60,50,40,35,30,25,20,15};

 

int getDistance(int mV) {

   if (mV > INTERVAL * TABLE_ENTRIES - 1)      return distance[TABLE_ENTRIES - 1];

   else {

      int index = mV / INTERVAL;

      float frac = (mV % 250) / (float)INTERVAL;

      return distance[index] - ((distance[index] - distance[index + 1]) * frac);

   }

}