Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Panel táctil de Walabot

Panel táctil de Walabot Una solución de bajo perfil que puede convertir cualquier superficie en un panel táctil para su computadora portátil. Imagine usar un libro, una mesa o una pared como panel táctil. Combinado con la tecnología del proyector, puede reproducir pantallas táctiles en cualquier superficie.

Este proyecto tiene como objetivo brindar esta utilidad y facilidad de uso mediante protocolos de conexión simples y Walabot, un dispositivo de imágenes 3D a nivel de consumidor.

Como quería que esta solución fuera práctica en el uso diario y universalmente accesible, opté por la configuración menos intensiva en hardware. Para equilibrar la facilidad de configuración con la precisión de las imágenes, implementé un ciclo de configuración básica que se ejecuta cada vez que se inicia Walabot.

Este tutorial cubre el procedimiento de configuración para Raspberry Pi y el control del cursor en una computadora host.

¿Cómo funciona?

El proyecto se basa en un cliente Raspberry Pi 3 que toma lecturas de un sensor Walabot Creator (¡gracias Walabot!), y una máquina host que en este caso es mi computadora portátil.

El flujo general de usuarios es el siguiente:

Demostración

En Progreso

Configuración del Pi

Primero, necesitamos configurar el pi para que sea utilizable y tenga todas las bibliotecas necesarias instaladas.

sudo apt-get update
Descargas de cd
sudo dpkg –i walabot_maker_1.0.34_raspberry_arm32.deb

En resumen, los comandos actualizan las listas de paquetes del sistema e instalan WalabotSDK

sudo apt-get dist-upgrade
sudo reboot

Esto actualiza los paquetes instalados y reinicia el RPi.

Para mayor velocidad, recomiendo deshabilitar la GUI de escritorio como se muestra aquí.

Interfaz de Walabot

Aquí es donde entra Walabot. Es un sensor de imágenes de microondas en 3D que puede hacer una gran cantidad de cosas, desde sentir la respiración, ver a través de las paredes y detectar múltiples objetivos. ¡Puedes verlos en su canal de youtube!

La funcionalidad que es realmente útil para este proyecto es la detección tridimensional de RF, que puede detectar las coordenadas x, y y x de un objetivo. Además, su capacidad de filtrado dinámico que elimina las señales estáticas se puede combinar con el filtrado de reflectores fijos, lo que le permite rastrear un objeto con precisión incluso a través de otros materiales.

Sin embargo, una advertencia de usar un dispositivo tan poderoso es su alto consumo de energía. El Walabot usa 400-900 mA, que es demasiado alto para la salida USB predeterminada de la frambuesa. Esto se puede resolver navegando a /boot/config.txt y agregando esta línea:max_usb_current =1. Eso aumentará la corriente máxima a 1200 mA.

Detección de objetivo

Asegurarme de que Walabot solo detecte mi dedo cuando quiero es clave, o de lo contrario mi computadora puede mover el cursor al azar, posiblemente incluso fuera de los límites. Para mi proyecto, me conecté con la API de Walabot usando la función GetSensorTargets () y desactivé el modo MTI (Identificación de objetivo móvil) para evitar el filtrado de la señal del dedo durante períodos de tiempo más largos. Establecí el radio de detección (r) en mi proyecto en un máximo de 10 cm para colocar la arena en el área inmediatamente por encima del Walabot. Esto cambia según el grosor del material.

Intenté establecer las dimensiones de la arena en valores x, y y z, pero eso solo funcionó mejor en el perfil de corto alcance que solo estaba disponible en la edición para desarrolladores de Walabot. Cuando probé esto en el modo de escáner predeterminado, obtuve una detección de objetivo casi nula, probablemente porque el modo de escáner lee radialmente en lugar de a través de coordenadas cartesianas. Por lo tanto, establecí un perfil de escáner estándar, establecí la arena radialmente y convertí las dimensiones radiales a coordenadas cartesianas.

Los objetos de destino tienen parámetros x, y, zy amplitud, de los cuales solo usé los valores xey. Como el eje y está a lo largo del Walabot, lo traduje al eje x en la pantalla cuando el Walabot se coloca horizontalmente como un panel táctil. Cuando comparo las coordenadas con los límites de la arena, puedo encontrar la ubicación relativa del objetivo a la arena y traducir eso a la ubicación relativa del cursor en la pantalla del anfitrión.

Sin embargo, dado que mi arena se inicializó en función de los valores r, theta y phi, tuve que encontrar manualmente los límites utilizables de la arena a través de la medición de los valores más bajos y más altos de las coordenadas xey. Luego automaticé esto en la configuración para que el programa pueda encontrar los límites cuando el usuario desliza su dedo a lo largo del eje xy el eje y. Aunque existen fórmulas para convertir las coordenadas polares a cartesianas, los límites establecidos difieren del campo medible real, ya que no pueden tener en cuenta la interferencia de otra superficie en el área registrada.

Para determinar si un usuario quiere mover el cursor, haga clic con el botón derecho o con el botón izquierdo, utilicé las funciones de detección de múltiples objetivos del Walabot. El movimiento sería 1 punto de contacto, un clic derecho sería 2 puntos de contacto y un clic izquierdo sería 3. Parece sólido, es hora de probarlo.

¡Argh! Esto resultó ser mucho más difícil de configurar. Inicialmente planeé que el código hiciera clic en los botones respectivos del mouse cuando el Walabot detecte dos o más objetivos, pero en el mismo momento en que los dedos ingresan al campo de visión, el Walabot detecta un objetivo, moviendo el mouse antes de hacer clic .

El difícil equilibrio de maximizar el área de la arena sin aumentar el rango z en el centro La solución obvia es disminuir el rango de la arena en sí, lo que naturalmente disminuye el rango z. Esto tiene el efecto secundario de producir un panel táctil que es demasiado pequeño para usar. La otra ruta que tomé fue filtrar manualmente los objetivos con un atributo z que es demasiado alto, pero eso no funciona, ya que un objetivo a lo largo del eje z aún se registra más alto en el borde que en el centro. La amplitud no funciona tan bien, ya que se centra en la parte más sensible del módulo. Consideré cambiar manualmente el valor del parámetro z para todos los objetivos agregando abs (ángulo phi - 90 grados) * multiplicador a todos los objetivos, pero desafortunadamente el parámetro de ángulo phi no es un parámetro de objetivo del sensor accesible. Al final, solo pude resolver esto usando un panel táctil curvo para que coincida con la curvatura del rango de detección o obteniendo una edición de desarrollador de Walabot.

Leer más detalles:panel táctil de Walabot


Proceso de manufactura

  1. ¿Qué es el mecanizado VMC?
  2. Guía para el marcado láser de aluminio
  3. Soldadura MIG frente a soldadura TIG
  4. Consideraciones para el mecanizado suizo de alta producción
  5. Guía para la creación de prototipos CNC
  6. Comprensión del proceso de fabricación del eje
  7. ¿Qué es la pasivación de acero inoxidable?
  8. Posture Pal con Walabot
  9. Panel táctil de Walabot
  10. Rastreador de inodoro (Desarrollado por Walabot)
  11. Walabasquiat:¡Una instalación interactiva de arte generativo!