Πίνακας περιεχομένων:

Guante Traductor De Lengua De Signos: 6 Βήματα
Guante Traductor De Lengua De Signos: 6 Βήματα

Βίντεο: Guante Traductor De Lengua De Signos: 6 Βήματα

Βίντεο: Guante Traductor De Lengua De Signos: 6 Βήματα
Βίντεο: Traductor de lenguaje de señas robotico 👍🏻👊🏻✌🏻👌🏻✊🏻🤛🏻 2024, Νοέμβριος
Anonim
Guante Traductor De Lengua De Signos
Guante Traductor De Lengua De Signos

Si Y si te dijera que ahora es genible hablar sin abrir la boca? La vida de una persona sordomuda no es sencilla, no todo el mundo conoce la lengua de signos y es complexada la convivencia sin un traductor. El traductor que proponemos nosotros está al alcance de tu mano! Con pocos materiales algo de código puedes construir un guante que traduzca la lengua de signos por un altavoz o una pantalla para que la convivencia se haga un poco más amena. Πρώτα από όλα τα προϊόντα που θα ακολουθήσουν, θα μπορούσα να συνεχίσω να προχωράω για να συνεχίσω τις παραδόσεις σας, καθώς και να συνεχίσετε το ταξίδι σας. Los materiales que vamos a utilizar son:

  • Un guante. Nosotros hemos utilizado uno que tenga la opción de escribir en pantallas táctiles para que el día a día sea algo más ameno.
  • 6 ακελερόμετρο. Elegimos los MPU6050 por ser los más fáciles de encontrar en el mercado, pero realmente te vale cualquier otro que encuentres.
  • Un microprocesador. El SP32 Heltec nos ha servido por tener pantalla ενσωματωμένο. Además, se puede programar en el IDE de Arduino, el más popular en estos tiempos que corren.
  • Un altavoz de 8 ohmios de resistencia interna para aprovechar al máximo la potencia.
  • Un módulo para tarjetas SD. Υποστηρίξτε τον ήχο που πρέπει να συμβολίσετε την προστασία σας. Χρησιμοποιήστε το DFPlayer mini MP3 για εύκολη χρήση.
  • Μπατερία. Una batería de litio de 9000mAh será suficiente para nuestro proyecto, no ocupa mucho y permite una vida larga al proyecto. Si añadimos un switch podemos encender y apagar el dispositivo cuando queramos.
  • Καλώδιο. Aunque parezca una tontería, siempre es el elemento que se nos olvida al empezar un proyecto y es de lo más elemental. Συνιστώ καλώδιο fino y hay que tener en cuenta que cada acelerómetro usa 5 καλώδια. No os preocupéis, es realmente barato.
  • Una placa de inserción. Nos sirve con 4 columnas cortocircuitadas por 8 pines cada una, lo que es bastante pequeña para no notarse en el guante. Είναι προαιρετικό, αλλά δεν μπορώ να το δω σε πραγματικό χρόνο.
  • Soldador y estaño para unirlo todo.
  • Hilo y aguja para coser nuestros sensores al guante.

También va a ser necesario un poco de código, pero eso os lo ofrecemos nosotros, como regalo, al final del proyecto.

Como veis son todo materiales baratos y fáciles de conseguir, este proyecto está alcance de todo el mundo! Lo hemos hecho así para que cualquiera se lo pueda construir y poder hacer el mundo un sitio más cómodo para todos.

Βήμα 1: Comprobar Que Los Acelerómetros Funcionan

Comprobar Que Los Acelerómetros Funcionan
Comprobar Que Los Acelerómetros Funcionan
Comprobar Que Los Acelerómetros Funcionan
Comprobar Que Los Acelerómetros Funcionan

Siempre es importante comprobar que el material que estamos usando funciona, por eso de tener claro que las cosas funcionan antes de que haya que empezar de nuevo el proyecto. Lo primero que haremos será soldar los cables al sensor de la siguiente manera:

Εικόνα
Εικόνα

Podemos probar los sensores sin soldar primero, pero nos arriesgamos a muchos fallos debidos a malas conexiones. Καλώδια El otro extremo de los valdrá con conectarlos a una protoboard para poder conectarlos y desconectarlos con facilidad. Conectaremos los cables con el microcontrolador de la forma que VCC se conecte a 5V y GND con GND, SCA con el pin 21, SDA con el pin 21 22 (es recomendable buscarse un mapa de pines de la placa que estamos usando y asegurarse de que dichos pines nombrados seresponden a los que nos interesan) y AD0 a cualquiera de los pines digitales. En el caso de la placa SP32 Heltec hay que tener cuidado con no utilizar los pines 4, 15 y 16, que son los que utiliza para la pantalla. Σαν χρησιμοποίηση του κόσμου, δεν υπάρχει κανένας τρόπος χρήσης. Το Aunque os recomendamos comprobar con el modelo que usáis por si acaso δεν συμπίπτει, el esquema de pines de nuestra placa es el siguiente:

Εικόνα
Εικόνα

Χρησιμοποιήστε το πρωτόκολλο I2C για το comunicarnos con todos los sensores, por lo que podemos utilisar las librerías abiertas que hay en internet για χρήση από αυτό το πρωτόκολλο και τον γιο realmente sencillas de usar. La primera la podemos encontrar en la siguiente página // github.com/tfeldmann/5411375 Copiamos el código. Nos ayudará a identificar las direcciones en las que estamos leyendo. Estos dispositivos vienen por defecto con la dirección 168, pero si ponemos a nivel alto el pin pin AD0 de nuestro sensor podemos cambiar la dirección a la 169. Hay que comprobar que se activan las dos direcciones.

Descargamos el zip y en el IDE de Arduino vamos a Programa> Incluir Librería> Añadir librería Zip. Σχετικά με τους τερματισμούς της ελευθερίας για την ελάττωση του MPU, μπορείτε να χρησιμοποιήσετε το πρόγραμμα για την εκμετάλλευση των senosres. Για να αποκτήσετε πρόσβαση, μπορείτε να χρησιμοποιήσετε το Abrir> Ejemplos> MPU6050> MPU6050_raw.ino. Al abrir el serial cambiamos los baudios a 38400 y al cargarse el programa deberíamos obtener la lectura de los seis parimmetros que noos ofrece el sensor: tres de la aceleración relativa y otros tres de la aceleración de la gravedad. Estos últimos son los que usaremos para comprobar la posición de cada giróscopo, pero lo veremos en un paso posterior.

Βήμα 2: Leer De Todos Los Acelerómetros Al Mismo Tiempo

Leer De Todos Los Acelerómetros Al Mismo Tiempo
Leer De Todos Los Acelerómetros Al Mismo Tiempo
Leer De Todos Los Acelerómetros Al Mismo Tiempo
Leer De Todos Los Acelerómetros Al Mismo Tiempo
Leer De Todos Los Acelerómetros Al Mismo Tiempo
Leer De Todos Los Acelerómetros Al Mismo Tiempo

Una vez comprobado que cada sensor nos funciona por separado, hay que comprobar que nos funcionan todos al mismo tiempo. Para esto habrá que conectarlos con nuestra placa de inserción, cortocircuitando todos los pines de alimentación masa (GCC), SDA) y reloj (SCL). Los pines AD0 los conectaremos a pines digitales diferentes para poder decidir cuál activamos en cada momento. Es importante mirar cuáles son los pines que utiliza la placa que estamos utilizando para comunicarse con la pantalla, como ya hemos dicho, ya que si utilizamos alguno de estos pines no nos funcionará. Debería quedar de una forma parecida al siguiente esquema (κλικ για ενισχυτικό):

Εικόνα
Εικόνα

Parece una maraña de cables, pero podemos ver que todos los cables del mismo color están cortocircuitados y lelevados a su pinrespondresponde, menos los de AD0, que se conecta directamente a la placa. El código para poder utilizarlo es una modificación antes para leer los datos de cada uno de los sensores. Hemos calculado que tardamos 2ms en leer cada sensor, por lo que cada 4ms (para dar un margen de seguridad) cambiaremos de sensor que leemos poniendo a nivel alto el pin AD0 del sensor de lectura y el resto a nivel bajo, leyendo así de la dirección por defecto. De todas formas el código completeo lo lehtaremos en un próximo apartado y se podrán ver todos estos detalles. Εκτός από την προοπτική της δημιουργίας ενός αισθητήρα που μπορεί να χρησιμοποιηθεί για την ανίχνευση και την ενεργοποίηση του μικροελεγκτή, θα σας βοηθήσει να αγοράσετε ένα μικρό σύστημα ελέγχου. Είναι πολύ σημαντικό να λάβετε υπόψη σας τα καλώδια που θα σας βοηθήσουν να το κάνετε, μπορείτε να το συνδέσετε και να το κάνετε, καθώς θα σας βοηθήσει να κάνετε μια εύκολη πρόσβαση. Είναι προτιμότερο να καλύπτετε καλώδιο και να το χρησιμοποιείτε για να το χρησιμοποιήσετε και να το χρησιμοποιήσετε για να το χρησιμοποιήσετε. A la hora de coser los acelerómetros muy importante dejarlos bien fijos, lo que noos lehtará el camino de fijar rangos de valores en un futuro no muy lejano. No olvidarse del acelerómetro de referencia en el dorso de la mano, éste debe quedar bien fijo, aunque es el más difícil de coser. Ενημερωθείτε για το ερώτημά σας:

Εικόνα
Εικόνα
Εικόνα
Εικόνα

El pegamento lo utilizamos para que los cables no se rompieran, no tiene nada que ver con la fijación al guante. No se ve muy bien porque usamos hilo negro (justamente para que no se note), pero lo que hicimos fue aprovechar los agujeros libres que teníamos del propio acelerómetro para fijarlo, y luego darle un remate para fijar los cables para que siguieran una guía por el dedo.

Βήμα 3: Sacar Resultados Por Pantalla

Sacar Resultados Por Pantalla
Sacar Resultados Por Pantalla
Sacar Resultados Por Pantalla
Sacar Resultados Por Pantalla

Δεν χρειάζεται να συνεχίσετε την παραγγελία σας, και μπορείτε να χρησιμοποιήσετε ένα μικρό μικροεπεξεργαστή. Παρακαλώ γράψτε μια πολύ καλή εκτίμηση, για πολλούς τρόπους για να εκφράσετε τις ανάγκες σας. Nosotros hemos optado por la librería “U8g2”, que se puede descargar e instalar desde el mismo IDE de Arduino:

Εικόνα
Εικόνα

En concreto, se utilizará el paquete, que se incluirá al principio del código. El uso de la librería es muy sencillo. Para mostrar por la pantalla del ESP32, utilizaremos la función u8x8.drawString (), cuyo parámetro de entrada será el valor a mostrar. Para ajustar el número de dígitos a mostrar, podemos usar la función sprintf, que nos permite variar la precisión con la que mostrar nuestras medidas. Un sencillo ejemplo sería:

sprintf (buf, "%06d", ax); u8x8.drawString (0, 0, buf);

Como queremos sacar los datos que hemos obtenido en el paso anterior, os vamos a Facilitar ya el código con el que se puede hacer, que es una combinación de las librerías que hemos ido viendo con nuestros ajustes.

Al conseguir este paso, el proyecto quedaría prácticamente hecho, pues solamente queda encontrar los márgenes de posición que debemos poner para cada letra e ir adaptándolos para que las letras sean correctas con la posición de la mano.

Βήμα 4: Fijar Rangos De Valores

Fijar Rangos De Valores
Fijar Rangos De Valores

Dependiendo de cómo hayamos cosido los sensores al guante habrá unos valores u otros, por lo que no podemos ofrecer los datos que nos sirvieron a nosotros. De todas formas, la manera de conseguirlos no es nada complexada. Consiste en utilizar unos umbrales que delimitan las distintas posiciones de los dedos y asignan un valor a cada dedo (que nos indicará la posición de dicho dedo). El programa tiene estas fases:

  • Muestreo: en esta etapa obtenemos los valores de los acelerómetros. Para ello vamos mirando cíclicamente cada uno y guardamos su valor. Una vez obtenidos los datos de los acelerómetros utilizamos unos umbrales para simplificar la detección de cada letra posteriormente. Dentro de los acelerómetros tenemos 3 comportamientos diferentes, y por ello 3 tipos de umbrales distintos, estos son:

    • Acelerómetro de referencia: será el colocado en el reverso de la mano y nos indicará cómo está orientada la mano. Con los umbrales utilizados diferenciamos entre 3 επιλογές: πάνω, κάτω y μέγεθος.
    • Pulgar: en función del resultado obtenido en el acelerómetro de referencia utilizaremos unos umbrales u otros. En todos los casos miraremos hacia donde está el pulgar orientado.
    • Resto de dedos: al igual que en el pulgar miraremos cómo están colocados los dedos respecto al acelerómetro de referencia. La diferencia está en que en este caso solo miramos si está estirado, curvado, doblado o muy doblado.
  • Detección de letra: una vez obtenidas las posiciones de los dedos comparamos uno a uno los dedos para ver si cumplen o no una posición de una mano. Χρησιμοποιώντας μια λίστα με προτεραιότητες, μπορείτε να χρησιμοποιήσετε αυτό το σφάλμα για να στείλετε ένα σφάλμα, καθώς και ένα πρόγραμμα που λειτουργεί με τη σωστή λειτουργία. Para asegurarnos de que una letra es correcta y no ha sido un error hemos creado un algoritmo de seguridad (ya que es πιθανό que sin quererlo la persona su mano pase por una letra sin querer). Dicho algoritmo tiene dos funciones:

    • Evitar detear una letra de forma errónea: para que se konsiderre que una letra es correcta ésta debe mantenerse constante durante aproximadamente 1 segundo.
    • Evitar detear de forma periódica una letra: una vez deteada la letra no se volverá a detector a no ser que varíe la posición de la mano, es decir, si se mantiene el gesto de la letra “a” durante 10 segundos solo se deteará una "ένα". Si queremos poner dos veces la misma letra debemos mover la mano levemente para que deje de detearse como “a” y volver a hacerla.
  • Αναπαραγωγή: en esta fase reproduciremos la letra que hayamos deteco anteriormente, para ello utilisamos el DF Player realizando los siguientes pasos:

    • Inicializar el puerto serie
    • Δημιουργήστε μια συσκευή αναπαραγωγής που χρησιμοποιεί δωρεάν "DFRobotDFPlayerMini.h"
    • Inicializar el αναπαραγωγέας
    • Configurar el volumen seleccionar la pistarespondiente a la letra deteada
    • seleccionar la pistarespondiente a la letra deteada

    Una vez configurado por primera vez el reproductor solo debemos seleccionar qué pista reproducir

  • Monitor: el monitor tiene dos funciones, durante la fase de desarrollo nos servirá para tener un feedback inmediato sobre la posición de los dedos para que, si no sale alguna letra, podamos ver qué dedo está fallando y así corregirlo más fácilmente modificandores levelmente levemente de los umbrales. Φροντίστε να χρησιμοποιείτε τα προϊόντα που χρησιμοποιείτε για να χρησιμοποιήσετε τα χρήματά σας για να ανατροφοδοτήσετε το περιεχόμενο, θα πρέπει να λάβετε υπόψη σας ότι θα σας βοηθήσουν να ερμηνεύσετε.

Βήμα 5: Audχος

Χος
Χος
Χος
Χος

¡Μπορείτε να χρησιμοποιήσετε έναν ήχο για να παρακολουθήσετε έναν προειδοποιητικό προμηθευτή! Μπορείτε να χρησιμοποιήσετε το DFPlayer mini MP3, καθώς μπορείτε να αυξήσετε τη χρήση του. Necesitaremos únicamente los pines Tx y Rx de nuestro microcontrolador. Mediante una conexión como enseña la figura conectamos la placa, el lector de tarjetas y nuestro altavoz:

Εικόνα
Εικόνα

Απαραίτητη προϋπόθεση για την ανίχνευση του DFPlayer είναι η αντίσταση 1Kohm για λειτουργικές διορθώσεις. el Tx y Rx por defecto del microprocesador se useiza para la entrada de datos del microUSB con el que lo estamos programando, por lo que que queremos useibarlo habría que conectarlo a una batería externa y comprobar que funciona de ésta forma. Χωρίς αξία για τη λειτουργία των λειτουργιών, για να χρησιμοποιήσω τα ελεύθερα:

github.com/DFRobot/DFRobotDFPlayerMini

Que nos permite utilizar cualquier pin digital como transmisor y receptor. En nuestro caso elegimos el 25 y el 26. Por lo tanto el código queda de la siguiente μορφή:

github.com/DFRobot/DFRobotDFPlayerMini

Éστε será el código final que usaremos y todas las funciones están ya implementadas.

Βήμα 6: tltimo Paso

Tltimo Paso
Tltimo Paso
Tltimo Paso
Tltimo Paso

Si hemos llegado a este paso quiere decir que sólo falta hacer este proyecto portátil: conectando nuestro microcontrolador con una batería ya podemos desprendernos de nuestro ordenador. Un consejo, si añadimos un interruptor en el cable positivo de la alimentación podemos encenderlo y apagarlo a voluntad. También es una buena idea coser un pequeño bolsillo donde poner toda la electrónica y que no quede colgante, de la siguiente forma:

Εικόνα
Εικόνα

De esta forma nos aseguramos que el altavoz quede orientado hacia la palma de la mano. Así es como queda el proyecto que hemos propuesto:

drive.google.com/file/d/1vr76rb4KjsyfqO1U7v-mywLYcgoDTNO8/view?usp=sharing

Una mejora que nos gustaría proponer es una coraza que proteja la electrónica del agua y de los golpes. Para un lenguaje de signos más completeo que allowa un repertorio de palabras más completeo serían necesarios dos guantes que se comunicaran entre sí. Por lo que otra de las mejoras sería el implementar el sistema de comunicaciones entre los guantes. La placa que hemos utilisado tiene un módulo de internet inkrapodo, lo que puede llegar a ser útil para esta tarea. Χρησιμοποιήστε το για να χρησιμοποιήσετε το BLE (Bluetooth Low Energy) για την καλύτερη λειτουργία, για να το κάνετε αυτό, για να δημιουργήσετε!

Y finalmente nos gustaría despedirnos y agradeceros que se haya seguido hasta el final este proyecto. Esperamos que le sirva a mucha gente y que nos mandéis de alguna forma el resultado de vuestro proyecto. Es más, nos encantará ver si alguno ha implementado las mejoras propuestas.

Mucha suerte y fuerza, compañeros!

Συνιστάται: