Indholdsfortegnelse:

Guante Traductor De Lengua De Signos: 6 trin
Guante Traductor De Lengua De Signos: 6 trin

Video: Guante Traductor De Lengua De Signos: 6 trin

Video: Guante Traductor De Lengua De Signos: 6 trin
Video: Traductor de lenguaje de señas robotico 👍🏻👊🏻✌🏻👌🏻✊🏻🤛🏻 2024, Juli
Anonim
Guante Traductor De Lengua De Signos
Guante Traductor De Lengua De Signos

¿Y si te dijera que ahora es posible 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 complicada 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. Vi kan fortsætte med, at vi kan fortsætte med at levere produkter, der kan bruges til at levere produkter, der virkelig kan bruges til at gøre hverdag. Los materiales que vamos a utilizar son:

  • Un guante. Nosotros hemos utilizado uno que tenga la opción de escribir and pantallas táctiles para que el día a día sea algo más ameno.
  • 6 acelerómetros. Elegimos los MPU6050 por ser los más encecrar de el mercado, pero realmente te vale cualquier otro que encuentres.
  • En mikroprocessor. El SP32 Heltec servos por tener pantalla incorporada. Además, kan bruges til programmering af IDE de Arduino, som er mere populær og kan bruges til korrektion.
  • En altavoz de 8 ohmios de resistencia interna para aprovechar al máximo la potencia.
  • En måde, der kan bruges på SD. Obtendrá el audio de cada símbolo que guardemos. Hæmmer brug af DFPlayer mini MP3 til supilidad de uso.
  • Batería. Una batería de litio de 9000mAh será suficiente para nuestro proyecto, no ocupa mucho y permite una vida larga al proyecto. Det er også muligt at skifte podemos encender og levere en dispositivo cuando queramos.
  • Kabel. Aunque parezca una tontería, siempre es el elemento que se nos olvida al empezar un proyecto y es de lo más elemental. Anbefal kabel til fino og hay que tener og cuenta que cada acelerómetro usa 5 kabler. 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. Det er opsjonsmæssigt, men vi kan også få mere at vide.
  • 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, men oso os lo ofrecemos nosotros, como regalo, al final del proyecto.

Jeg vil gerne vide, at det er en god idé at lave en ordning, der kan bruges til at lave en daglig ordning!

Trin 1: Komprobar Que Los Acelerómetros Funcionan

Kombineret Que Los Acelerómetros Funcionan
Kombineret Que Los Acelerómetros Funcionan
Kombineret Que Los Acelerómetros Funcionan
Kombineret Que Los Acelerómetros Funcionan

Det er vigtigt, at materialet kan bruges til funktionalitet, som også kan bruges til at oprette en ny funktion:

Billede
Billede

Podemos probar los sensores sin soldar primero, men vi kan ikke lide noget, vi kan lide. El otro extremo de los cable valdrá con conectarlos a una protoboard para poder conectarlos y desconectarlos con facilidad. Conectaremos los cable con el microcontrolador de la forma que VCC se conecte a 5V y GND con GND, SCL con el pin 21, SDA con el pin 22. 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 que utiliza para la pantalla. Si utilizamos uno de estos, quizás no podamos usarla en nuestro proyecto. Aunque os recomendamos comprobar con el modelo que usáis por si acaso no coincide, el esquema de pines de nuestra placa es el siguiente:

Billede
Billede

Brug af protokol I2C til comunicarnos con todos los sensores, por lo que podemos utilizar las librerías abiertas que hay en internet para utilizar en este protocolo y son realmente sencillas de usar. La primera la podemos encontrar en la siguiente página https:// gist. github.com/tfeldmann/5411375 Copiamos el código. Nos ayudará a identifierar las direcciones en las que estamos leyendo. Estos dispositivos vienen por defecto con la dirección 168, men kan også bruges til at indsætte AD0 de nuestro sensor podemos cambiar la dirección a la 169. Hay que comprobar que can activan las dos direcciones.

Beskrivelse af zip og en af IDE de Arduino giver et program> Incluir Librería> Añadir librería Zip. Con esto ya tendremos la librería para manejar los MPU, men det kan også være, at vi har et program, der kan bruges til at lære sensorer. Para acceder a él, podemos ir a Abrir> Ejemplos> MPU6050> MPU6050_raw.ino. Al abrir el monitor serial cambiamos los baudios a 38400 y al cargarse el programa deberíamos obtener la lectura de los seis parámetros que nos 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.

Trin 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

En anden komponent, der kan bruges til at oprette en separat funktion, kan bruges til at lave en funktion, der ikke kan bruges. SDA) og reloj (SCL). Los pines AD0 los conectaremos and 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 (klik for at se mere):

Billede
Billede

Parece una maraña de Kabels, men vi kan også se, at kablerne ikke kan bruges til farvekort, der er tilpasset til en PIN -kode, men også til AD0, og som kan bruges til at placere et element. 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 un margen de seguridad) cambiaremos de sensor que leemos poniendo a nivel alt pin AD0 del sensor de lectura y el resto a level bajo, leyendo así de la dirección por defecto. De todas formas el código completeo lo facilitaremos and un próximo apartado y se podrán ver todos estos detalles. En este punto del proyecto debemos estructurar bien la posición de cada sensor en el guante, de la placa de inserción y del microcontrolador, porque el siguiente paso es soldarlo todo y coserlo al guante. Det er vigtigt for os, at vi kan bruge kablerne til, at vi kan bruge det til at trække på, hvad der skal gøres. Det foretrækkes, at der er et kabel, og du kan også bruge det til at se, om det er en løsning, der kan bruges i sidste ende. A la hora de coser los acelerómetros muy importante dejarlos bien fijos, lo que nos facilitará 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. En nuestro guante quedó de la siguiente manera:

Billede
Billede
Billede
Billede

El pegamento lo utilizamos para que los lines 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 cable para que siguiera una guía por el dedo.

Trin 3: Sacar Resultados Por Pantalla

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

No queremos depender continuamente del ordenador, y menos si tenemos una pantalla conectada a nuestro microprocesador. Para poder escribir sobre esta, hay multitud de librerías ya escritas para poder hacerlo. Nosotros hemos optado por la librería “U8g2”, der kan bruges til at downloade og installere fejl på IDE de Arduino:

Billede
Billede

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. En sencillo ejemplo serie:

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.

Trin 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 complicada. 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). De programmerede faser er:

  • 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 paraply para simplificar la detección de cada letra posteriormente. Dentro de los acelerómetros tenemos 3 comportamientos diferentes, and 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 posiciones: up, down y size.
    • Pulger: en funktions delresultat til en acelerómetro de referencia utilizaremos unos paraplyer og andre. 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 ello utilizamos una list of prioridad, por lo que evitamos que can cumplan varias letras and caso de error asegurando así que el programa sigue funcionando de forma correcta. Para asegurarnos de que una letra es correcta y no ha sido un error hemos creado un algoritmo de seguridad (ya que es probable que sin quererlo la persona su mano pase por una letra sin querer). Dicho algoritmo tiene dos funciones:

    • Evitar detectar una letra de forma errónea: para que se considere que una letra es correcta ésta debe mantenerse constante durante aproximadamente 1 segundo.
    • Evitar detectar de forma periódica una letra: una vez detectada la letra no se volverá a detectar 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 detectará una "en". Si queremos poner dos veces la misma letra debemos mover la mano levemente para que deje de detectarse como “a” y volver a hacerla.
  • Reproduktion: en enestående fase, der kan gengives på en måde, der kan identificere anteriormente, para ello utilizamos el DF Player realizando los siguientes pasos:

    • Inicializar el puerto serie
    • Oprette en tip til afspilleren, der anvender biblioteket “DFRobotDFPlayerMini.h”
    • Inficial el reproduktor
    • Konfiguration af volumen vælger la pista correspondiente a la letra detectada
    • vælg la pista correspondiente a la letra detectada

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

  • Monitor: el monitor tiene dos funciones, durante la phase 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 and así corregirlo más fácilmente modificando levemente los valores de los paraplyer. Durante la fase de venta del producto la pantalla se utilizará para que el usuario tenga un feedback inmediato, sabiendo que lo que ha dicho ha sido correctamente interpretado por el guante.

Trin 5: Lyd

Lyd
Lyd
Lyd
Lyd

Vi kan også inkludere lyd og lyd i nuetro, og vi kan nu bruge en MP3 -afspiller til DFPlayer. 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 og nuestro altavoz:

Billede
Billede

Sin olvidar que el pin Tx del DFPlayer necesita una resistencia de 1Kohm para funcionar correctamente. Pero no todo podía ser felicidad en éste mundo; el Tx y Rx por defecto del microprocesador se utiliza para la entrada de datos del microUSB con el que lo estamos programando, por lo que si queremos utilizarlo habría que conectarlo a una batería externa y comprobar que funciona de ésta forma. Nos pareció una manera poco práctica de funcionamiento, por lo que utilizamos la siguiente librería:

github.com/DFRobot/DFRobotDFPlayerMini

Der er ingen tilladelse til at benytte en digital pin -transmisor eller receptor. En nuestro caso elegimos el 25 y el 26. Por lo tanto el código queda de la siguiente forma:

github.com/DFRobot/DFRobotDFPlayerMini

Éste será el código final que usaremos and todas las funciones están ya implementadas.

Trin 6: Último Paso

Último Paso
Último Paso
Último Paso
Último 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 positiveo de la alimentación podemos encenderlo y apagarlo a frivillig. 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:

Billede
Billede

De esta forma nos aseguramos que el altavoz quede orientado hacia la palma de la mano. Her kan du også finde følgende oplysninger:

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 permita 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 systemema de comunicaciones entre los guantes. Vi kan bruge det til at bruge en internetside, der kan bruges til at tjene penge. También puede utilizarse un pequeño módulo BLE (Bluetooth Low Energy) para la misma funktions, realmente se puede hacer de muchas formas, ¡sé creativo!

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!

Anbefalede: