SENSOR IR DE DISTANCIAS


Sensor Sharp de distancias LEGO Mindstorm NXT

down-verde-flecha

Este sensor es un poco tramposo, porque lo compramos prácticamente hecho. Pero bueno, a fin de cuentas, también hemos comprado el inclinómetro. Y es un sensor muy extendido y relativamente barato.


Lo que haremos aquí (como allí) es adaptarlo al NXT. Y programarlo con NXT-G. Su funcionamiento será similar al sensor de Ultrasonidos, sólo que éste funciona por IR (Infrarrojos).


Una "ventaja" de este sensor es que puedes comprar varios modelos distintos, según las distancias que quieras medir. Y todos son básicamente iguales.


MATERIAL


1. Usaremos aquí un sensor de distancia por infrarrojos con la referencia SHARP GP2Y0A21YK , que mide (en teoría) desde 10 a 80 cm de distancia aproximadamente, aunque podrías usar otros. Debe llevar su cable correspondiente.

2. Un transistor PNP de pequeña señal 2N3906.

3. Cable de conexión al NXT.


CIRCUITO


Errata corregida 4/11/11.


Empezamos con el circuito.


Esquema conexion sensor Sharp de distncias LEGO Mindstorm NXT

Seguimos con un esquema. Recuerda que para que coincida el transistor con el dibujo, debes mirarlo de cara, con el código en la parte de delante.


Esquema conexion sensor Sharp de deistncias LEGO Mindstorm NXT

Una foto nunca viene mal. Los cables que salen por la derecha de la imagen, son los que van al sensor. Los que salen por la izquierda de la imagen, acaban en el NXT.


Foto Sensor casero Sharp de distncias LEGO Mindstorm NXT c1589 (63K)

PROGRAMA


Lo primero que debes tener en cuenta son las distancias que puede medir tu sensor. Si estas usando este mismo modelo, recuerda que por debajo de unos 10 cm el valor será incorrecto y te puede llevar a error.


Por debajo de esos 10 cm, el sensor interpreta que la distancia va aumentando, así que parece que te vas alejando cuando en realidad te estás acercando. Ojo con esto.


El programa básico sería este. Date cuenta de que está seleccionado el valor porcentual en lugar del valor RAW a la hora de programar. He hecho esto porque el sensor del que dispongo parece que tenga un comportamiento algo errático en el RAW, así que no se si el sensor estará en condiciones.


También me sucede que mide únicamente desde los 10 cm hasta unos 33 cm, muy lejos de lo que dice la hoja de especificaciones.


Fíjate también que la pestaña "Generate Light" no está activada. El icono "Text" que verás más abajo tiene escritos 4 o 5 espacios en la línea B, justo donde está señalado con un círculo amarillo.


Programa sensor de distancias Sharp LEGO Mindstorm NXT

Para pasar estos valores a cm, deberíamos hacer una calibración similar a la que hicimos en el Sensor de Temperatura. Allí se explica a partir de los datos RAW. Quizás haga calibración aquí más adelante.


De momento nos quedaremos con programar una alarma cuando el valor porcentual sea inferior a 14, que es cuando empieza a fallar el sensor por estar demasiado cerca. Dejaremos un pequeño margen de seguridad, así que pondremos 20.


Como otras veces, he pintado unos de los cables en gris para que se vea mejor. Simplemente, añadiremos un par de bloques al programa anterior. Todo lo demás, sigue igual.


Programa sensor de distancias Sharp LEGO Mindstorm NXT

El bloque Switch que hemos añadido, está en "Value" y "Logic". El bloque de "Sonido" lo he configurado en "Tone" y duración 0,1 s. La pestaña de "Wait for completion" está desactivada, al igual que la de "Generate Light".


USOS


La verdad es que ya hemos visto muchos usos, y podríamos combinar algunos. Supongo que este sensor se podría también programar como la fotocélula para que actuara como contador de elementos en movimiento. Otro uso evidente es como el sensor de ultrasonido, para valorar aproximaciones y distancias.


UNA CURIOSIDAD DEL SENSOR


Pon el programa en marcha. Mira a los ojos al sensor. Salvo que tengas superpoderes, ¿qué ves?


Y ahora, ¿tienes una cámara digital a mano o un movil con cámara?. Sin tocar nada, es decir, con el programa en marcha, acércate al sensor y míralo a través del display (se ve mejor con una cámara).


Si el sensor te guiña un ojo sabrás que funciona y además te recordará que consume batería del NXT, así que apágalo si no lo usas.


Esto que ves a través de la cámara es la luz infrarroja, invisible al ojo humano, pero visible para una cámara. Esto explica en parte porqué cuando sacas una foto no es exactamente igual a lo que el ojo viste en directo; explica el comportamiento diferente del LDR y del Sensor de Luz original del NXT y algunas otras cosas.


Un experimento adicional.


Con el sensor en funcionamiento, acerca y mide el RAW emitido por el Sharp usando el Sensor de Luz Ambiente que hemos diseñado en secciones anteriores, pero esta vez conectado al puerto 2. Ahora haz lo mismo con el sensor de luz original del NXT, con la luz roja apagada, claro.


Podrías también medir con los 3 sensores (Sharp, luz ambiente casero y Sensor de luz original) un flexo para ver las diferencias. La única precaución es que los 3 estén a las mismas distancias del foco de luz. Recuerda con son sensibles a la luz, no los acerques demasiado.


up-verde-flecha
Sensor de temperatura
Un relé
.