Tabla de contenido:
2025 Autor: John Day | [email protected]. Última modificación: 2025-01-13 06:57
Para los duros de la vista, use esto para tener una mejor comprensión del mundo que lo rodea.
Suministros
Cosas utilizadas en este proyecto
Componentes de hardware Walabot Creator × 1
CONTROLADOR DE MOTOR HÁPTICO ADAFRUIT DRV2605L × 1
Raspberry Pi 3 Modelo B × 1
Adafruit MINI DISCO MOTOR VIBRANTE × 1
Paquete de batería de 5.1V × 1
mochila × 1
Cables de puente (genéricos) × 5
Paso 1: Resumen
¿Cómo sería si pudieras sentir los objetos que te rodean? ¿Lo que significa que podría navegar por el espacio incluso si su visión estuviera comprometida? No solo para las personas con deficiencia visual, esta idea también podría ser utilizada por los servicios de emergencia (es decir, el departamento de bomberos) en entornos llenos de humo. El audio no siempre es la mejor y más discreta forma de dar instrucciones, la retroalimentación háptica, por otro lado, será perfecta.
Paso 2: la idea básica
Quería crear un sensor que pudiera detectar obstáculos y luego avisar al usuario mediante retroalimentación háptica qué tan lejos está el objeto y si viene de la izquierda, la derecha o directamente adelante. Para esto, necesitaré: Un sensor que pueda ver el espacio 3D Controlador de retroalimentación háptica Actuador de retroalimentación háptica Una batería externa Una mochila para sujetarlo.
Paso 3: Walabot
¿Quieres ver a través de las paredes? ¿Sentir objetos en el espacio 3D? ¿Sentido si está respirando desde el otro lado de la habitación? Bueno, estás de suerte.
El Walabot es una forma completamente nueva de detectar el espacio a tu alrededor utilizando un radar de baja potencia. Esto iba a ser clave para este proyecto. Podría tomar las coordenadas cartesianas (X-Y-Z) de los objetos en el espacio 3D, estas se asignarán a una serie de retroalimentaciones hápticas para brindar al usuario una mejor comprensión del espacio que los rodea.
Paso 4: Comenzando
Lo primero es lo primero, necesitará una computadora para conducir el Walabot, para este proyecto estoy usando una Raspberry Pi 3 (en lo sucesivo, RPi) debido al WiFi incorporado y al empuje adicional general.
Compré una tarjeta SD de 16GB con NOOBS preinstalado para mantener las cosas agradables y simples, y opté por instalar Raspian como mi sistema operativo Linux preferido (si no está familiarizado con cómo instalar Raspian, tómese un momento para leer un poco esto) De acuerdo, una vez que tenga Raspian ejecutándose en su RPi, hay algunos pasos de configuración que debe seguir para preparar las cosas para nuestro proyecto. En primer lugar, asegúrese de estar ejecutando la última versión del Kernel y busque actualizaciones abriendo un shell de comandos y escribiendo:
sudo apt-get update
sudo apt-get dist-upgrade
(Sudo se agrega para garantizar que tenga privilegios administrativos, por ejemplo, las cosas funcionarán). Esto puede tardar un poco en completarse, así que vaya y tome una buena taza de té. 2.
Necesita instalar el SDK de Walabot para RPi. Desde su navegador web RPi, vaya a https://www.walabot.com/gettingstarted y descargue el paquete de instalación de Raspberry Pi.
Desde un shell de comando:
descargas de cd
sudo dpkg -I walabotSDK_RasbPi.deb
Necesitamos comenzar a configurar el RPi para usar el bus i2c. Desde un shell de comandos:
sudo apt-get install python-smbus
sudo apt-get install i2c-tools
Una vez hecho esto, debe agregar lo siguiente al archivo de módulos.
Desde un shell de comandos:
sudo nano / etc / modules
agregue estas 2 cadenas en líneas separadas
i2c-dev
i2c-bcm2708
El Walabot consume bastante corriente, y también usaremos GPIO para controlar cosas, por lo que debemos configurarlas.
Desde un shell de comandos:
sudo nano /boot/config.txt
agregue las siguientes líneas al final del archivo:
safe_mode_gpio = 4
max_usb_current = 1
El RPi es una herramienta excelente para los creadores, pero está limitada en la corriente que puede enviar a Walabot. Por lo tanto, estamos agregando una corriente máxima de 1Amp en lugar de los 500mA más estándar.
Paso 5: Python
¿Por qué Python? Bueno, ya que es muy fácil de codificar, rápido de ejecutar y ¡hay muchos buenos ejemplos de Python disponibles! Nunca lo había usado antes y pronto estuvo en funcionamiento en poco tiempo. Ahora que el RPi está configurado para lo que queremos, el siguiente paso es configurar Python para tener acceso a la API de Walabot, interfaces LCD Servo.
Para el Walabot
Desde un shell de comando:
Instalación de sudo pip "/usr/share/walabot/python/WalabotAPI-1.0.21.zip"
Para el conductor háptico
Desde un shell de comandos:
sudo apt-get install git build-essential python-dev
cd ~
clon de git
La placa de controlador háptico Adafruit DRV2605 es excelente porque puede enviar señales I2C para activar toneladas de perfiles hápticos guardados. El único inconveniente era que no había una biblioteca de Python disponible para esto. ¡Pero no temas! He escrito uno como parte de este proyecto.
Paso 6: Ejecutar automáticamente el script
Ahora que todo está configurado y configurado, y tenemos el código Python listo, podemos configurar las cosas para que se ejecuten automáticamente para que podamos deshacernos del teclado y los monitores.
Hay algunas cosas que hacer:
Cree un nuevo archivo de secuencia de comandos para ejecutar el programa Python
sudo nano walaboteye.sh
Agrega estas líneas
#! / bin / sh
python /home/pi/WalabotEyeCLI.py
Asegúrate de guardarlo. A continuación, debemos dar permiso al script para que se ejecute escribiendo:
Sudo chmod + x /home/pi/walaboteye.sh
Y finalmente, necesitamos agregar este script al archivo /etc/rc.local
Sudo nano /etc/rc.local Agregar inicio / pi / walaboteye.sh &
Asegúrese de incluir el "&". Esto permite que la secuencia de comandos de Python se ejecute en segundo plano ¡Correcto! Esa es toda la configuración y el software ordenados, a continuación es el momento de conectar el hardware.
Paso 7: el hardware
Este no es mi mejor momento, ¡pero se siente deliciosamente hacky! Como verás en las imágenes.
Paso 8:
El cableado es súper simple: conecte los pines RPi, SDA SCL VCC y GND a los pines correspondientes del DRV2605. Conecte su motor háptico a la placa del controlador … ¡eso es todo!
Paso 9:
Después de eso, todo lo que necesita hacer es conectar el USB walabot al RPi y obtener su mejor cinta adhesiva, y asegurar todo en su lugar como se muestra:
Paso 10: cómo funciona
La idea es muy simple. Dependiendo de qué tan lejos esté el obstáculo, depende de qué tan fuerte se sienta el zumbido en su hombro. A 2 metros de distancia hay un zumbido suave, menos de 70 cm es un zumbido muy fuerte y todo lo demás.
- El sensor también puede indicarle si el obstáculo está más adelante, si viene de la izquierda o de la derecha.
- La forma en que lo hace es agregar un segundo zumbido háptico, dependiendo de dónde esté el objeto. Si el obstáculo está más adelante, es un simple zumbido repetitivo, con la fuerza dependiendo de qué tan lejos esté.
- Si el obstáculo está a la derecha, se agrega un zumbido de aceleración después del zumbido principal. Una vez más, la fuerza depende de qué tan lejos esté.
- Si el obstáculo está a la izquierda, se agrega un zumbido de rampa de descenso después del zumbido principal
¡Sencillo!
Paso 11: Código
Walabot Eye Github
DRV2605 GitHub