El sensor que proporciona el kit devuelve un 1 cuando está sobre una superficie blanca y un O cuando está sobre una superficie negra.
Esquema Eléctrico
El voltaje de funcionamiento del sensor IR fc-51 es desde 3.3 V hasta
5 V. Son rangos de voltaje habituales cuando se trabaja con
microcontroladores.
La salida de este sensor es una salida digital, es decir en el arduino debe ir conectado a un PIN digital para que reciba 0 y 1 según sea el estado.
Este sensor no necesita de una librería para su funcionamiento
Dibujo de su conexión
Aplicaciones de los sensores IR
Algunas de las aplicaciones que puede darse al sensor son:
Detector de obstáculos
Seguimiento de líneas para robots móviles
Contador en una banda de cadena de producción
Detección de presencia
Detectar el estado de una puerta (abierta o cerrada)
Calibrado del sensor IR
→ Conectamos la placa a nuestro PC con el alimentador USB. No es necesario cargar ningún código a la placa.
→ Conectamos el sensor IR a un pin digital cualquiera.
→Cogemos un destornillador lo suficientemente pequeño, plano o de estrella.
→ Necesitamos dos superficies de referencia, una blanca y otra negra.
→ Ahora ponemos el emisor y receptor hacia la superficie oscura y con el destornillador giramos el tornillo del potenciómetro azul que hay en la parte de arriba hasta que la luz del sensor luce, desplazamos el sensor hacia la superficie blanca y la luz debe apagarse. El sensor ya está calibrado.
Esquema eléctrico
El montaje es sencillo. Alimentamos el módulo a través de Vcc y GND conectándolos, respectivamente, a la salida de 5V y GND en Arduino.
Finalmente, conectamos la salida digital del sensor a una entrada digital para leer el estado del sensor.Opcionalmente, calibramos el umbral de disparo acercando un objeto al detector de obstáculos y regulando la salida digital con el potenciómetro. Si queréis saltaros este paso, dejar el potenciómetro en un valor medio.
Ejemplo de código
El código es igualmente sencillo. Simplemente leemos el estado de la entrada digital.
valor = digitalRead(sensorPin ); //lectura digital de pin
Si el sensor se dispara, ejecutamos las acciones necesarias.
#define sensorPin 9
int valor=0;
void setup() {
Serial.begin(9600); //iniciar puerto serie
pinMode(sensorPin , INPUT); //definir pin como entrada
}
void loop(){
valor = digitalRead(sensorPin ); //lectura digital de pin
if (valor == HIGH) {
Serial.println("Detectado obstaculo");
}
delay(1000);
}
No hay comentarios:
Publicar un comentario