Ya he comentado en varios post anteriores que BD-1 tendrá 3 modos de funcionamiento. Automático, por detección de movimiento y por órdenes de voz. Hoy voy a contaros como he integrado este último.
Pero primero voy a mostraros como he conectado los botones que permiten, entre otras cosas, cambiar al droide entre uno de esos 3 modos.
He usado botones pulsadores de retorno automático, es decir, de esos que pulsas y al soltar vuelven a su posición inicial. La conexión es muy sencilla. El pin común va a GND y el de NO (normalmente abierto) a uno de los pins analógicos de la placa arduino nano.
He usado la librería OneButton para Arduino. Esta librería permite que cada botón pueda disparar 3 funcionalidades según se detecte una pulsación simple, un doble click, o una pulsación prolongada. Es bastante sencilla de usar y permite configurar tiempos para detectar cada uno de los tipos de pulsaciones. En el enlace de arriba está toda la documentación necesaria, y si tenéis alguna duda, no dudéis en preguntar.
Aquí podéis ver el funcionamiento de los botones:
Para el sistema de reconocimiento de voz he usado la placa Geeetech. Esta placa permute grabar hasta 15 instrucciones divididas en 3 bloques de 5 instrucciones cada uno. Sólo se puede tener a la vez un bloque activo, por lo que realmente solo es capaz de reconocer 5 instrucciones a la vez. Lo bueno es que la carga de esos bloques los puedes hacer desde arduino, por lo que con un botón podrías cargar el bloque que quisieras usar en cada momento.

La comunicación de la placa con arduino se realiza mediante conexión serie (Pin Tx y Rx) y luego lleva conexión VCC y GND a 5V. Para ver como funciona esta placa os recomiendo este tutorial. Es el que yo he usado para configurar mi tarjeta.
Al comprar la placa, trae un micrófono con conexión tipo Jack. Ese micrófono está muy bien para hacer pruebas, pero es demasiado grande para usarlo en BD-1. La placa permite conectar un micrófono más pequeño con los pones que hay justo al lado de la conexión Jack (dónde pone GND y VCC). Yo he usado estos: https://www.amazon.es/gp/product/B07CGTJ9NV/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1
He soldado unos pines la placa y el micrófono a unas conexiones dupont para poder desconectarlo si es preciso (si hay que cambiarlo por que se estropea o algo similar). Este micrófono cabe en el hueco frontal que diseñé para el:
Para sujetar la placa he diseñado un pequeño soporte en 3D que he pegado en el lateral de la base. La placa va atornillada a ese soporte, así que la puedo retirar si es preciso. Luego es realizar la conexión a la placa Arduino con los 4 cables que he comentado antes (GND, VCC RX y TX).
Os dejo un pequeño video de su funcionamiento:
Las órdenes aún no las tengo claras del todo. Se que seguro llevará para bailar, reproducir holograma y dar una carta de regalo. Las otras 2 estoy pensando si hare el hola y adiós, de modo que con hola se despierte y haga cosas y con adiós se quede como si estuviese dormido… pero aún no lo he decidido del todo.
La base de BD-1 ahora mismo presenta este aspecto:

Sólo falta añadir el modulo de sensor de movimiento. Como se puede ver por como está colocada la electrónica, he desestimado erguir el droide en sus patas. Tras hacer algunas pruebas manuales, he visto que iba a ser muy difícil y que las patas y las correas sufren mucho, así que esa funcionalidad se ha quedado fuera 😦
Ya estoy muy muy cerca de acabar el droide, pero aún nos quedan algunas cosas por hacer.
Deja una respuesta