Mouse sin Contacto
Contenido
Introducción
Este proyecto esta dirigido
Materiales
- Kit Robótico Butia con: 2 sensores de distancia y un botón
- Pc con TurtleBots, python3 y poder instalar el modulo pyautogui
Armado del dispositivo
El armado del dispositivo no es muy complejo; en esencia solo hay que armar la placa del butia, conectarle la batería y los sensores como se ve en esta imagen
Luego se colocan los sensores de distancia formando dos ejes para detectar el movimiento vertical y horizontal.
En este caso se uso la base de acrílico que viene en el kit porque es sencillo colocar los sensores de forma vertical (como se ve en la imagen) y se mantienen estables en esta posición. Otra ventaja es que la esquina a la que apuntan los dos sensores tiene una distancia en el medio del rango de valores que miden los sensores.
Instalación de python y pyautogui
Teniendo python3 basta con correr los siguientes comandos en la terminal para instalar el modulo pyautogui
Calibración de sensores
Los sensores de distancia que vienen en el kit butia tienen un rango de distancia en el que las mediciones de los sensores son significativas. Por significativas se entiende que no presenten saltos y que al desplazar el objeto que estén detectando el valor de las mediciones varié proporcionalmente.
A partir de cierta distancia máxima los sensores no alcanzan a detectar cambios y las mediciones devuelven un valor máximo. También existe una distancia mínima a partir de la cual las mediciones se vuelven irregulares, es decir que a partir de este punto al acercar aun mas el objeto al sensor el valor de las mediciones aumenta en vez de disminuir.
Nos interesa en este caso que nos manejemos dentro del rango que esta entre esta distancia mínima y máxima.
Para obtener el valor máximo de un sensor basta con apuntarlo a una pared lejana o al techo y hacer varias mediciones, tomando el máxima de estas obtenemos los valores a los que llamaremos en el código maxDistW y maxDistH para ancho y alto respectivamente. Para obtener los valores mínimos hay que medir el valor detectado por el sensor repetidas veces mientras se acerca un objeto al mismo, en el momento que este valor aumenta encontramos la mínima distancia para la cual podemos obtener mediciones correctas. Como en el caso anterior hay que tomar varias mediciones de los valores en este punto e ingresar los mínimos como minDistW/minDistH en nuestro código.
Ejecución
En primera instancia hay que abrir el programa Turtlebots para poder instanciar el butia correctamente.
Luego se prueba que el butia se detecte correctamente evaluando los sensores disponibles y haciendo refresh o reconectando de ser necesario. Es recomendable que en este punto se calibren los sensores como se describió anteriormente.
Terminada la calibración de sensores es necesario actualizar los datos de mínimo y máximo de los sensores en el código.
explicaciones de ciertas partes del codigo
EXPLICACION DEL FUNCIONAMIENTO DEL DISPOSITIVO (es movimiento relativo) videito
Propuestas a futuro
Como se menciono en la introducción pese a que el enfoque principal del proyecto es una actividad educativa que motive a introducirse en el mundo de la robótica y la programación