Tabla de contenido:

ARCA (Adorable Android con control remoto): 4 pasos (con imágenes)
ARCA (Adorable Android con control remoto): 4 pasos (con imágenes)

Video: ARCA (Adorable Android con control remoto): 4 pasos (con imágenes)

Video: ARCA (Adorable Android con control remoto): 4 pasos (con imágenes)
Video: La primer humanoide robot del mundo 🤖😳😱 #robot #robotics #robots #robotandroide #androide #humanoide 2024, Mes de julio
Anonim
ARCA (Adorable Android con control remoto)
ARCA (Adorable Android con control remoto)
ARCA (Adorable Android con control remoto)
ARCA (Adorable Android con control remoto)
ARCA (Adorable Android con control remoto)
ARCA (Adorable Android con control remoto)

Este instructable fue creado en cumplimiento del requisito del proyecto de Makecourse en la Universidad del Sur de Florida (www.makecourse.com).

ARCA es un adorable Android con control remoto que es increíblemente divertido de construir y jugar. El objetivo de este proyecto era crear algo que cualquiera pueda entender y con lo que se pueda relacionar mediante la creación de un robot que sea adorable y funcional.

El robot funciona mostrando diferentes emociones en una matriz de LED de 8 por 8, estas emociones incluyen alegría, sueño, amor, ira, tontería y mirar hacia arriba, izquierda y derecha. El robot también funciona como un automóvil RC y puede avanzar y girar a la izquierda o a la derecha. El robot avanza activando ambos motores de rueda, gira a la izquierda encendiendo el motor derecho y gira a la derecha encendiendo el motor izquierdo. El diseño es muy simplista pero simplemente funciona, y quería tener un gran enfoque en la programación del Arduino ya que soy un programador en el fondo.

Las últimas versiones de todos los archivos utilizados en este tutorial se pueden encontrar en mi Repositorio ARCA de Github.

Paso 1: Lista de piezas e impresión 3D

Lista de piezas e impresión 3D
Lista de piezas e impresión 3D
Lista de piezas e impresión 3D
Lista de piezas e impresión 3D

Las piezas para este proyecto pueden imprimirse en 3D o comprarse en línea. Al pensar en el montaje, quería hacer de la eficiencia la clave y también tratar de no reinventar (literalmente) la rueda. La impresora 3D utilizada para este proyecto era una Makerbot Replicator, si desea asegurarse de que sus impresiones 3D sean consistentes con las mías, utilice esta impresora.

Componentes estructurales

  • Caja con agujeros en los laterales para ruedas y brazos
  • Tapa de la caja con orificios para ruedas traseras y un orificio para el sensor de infrarrojos
  • Brazo izquierdo
  • Brazo derecho
  • Eje para las dos ruedas traseras
  • dos conectores de eje para conectar la tapa al eje
  • 4 ruedas (motores también incluidos en este enlace)
  • Tornillos pequeños (para encajar en los motores)

Componentes eléctricos

  • Arduino Uno
  • Placa de pruebas pequeña (compré el kit Arduino y venía con él)
  • Dos matrices de puntos rojos MAX7219 con control MCU
  • Receptor de infrarrojos y control remoto
  • Dos transistores TIP 120
  • Cables de conexión (utilicé muchos cables macho a hembra, así como macho a macho, y recomiendo obtener cables largos en lugar de cables cortos)
  • una resistencia de 220 ohmios
  • Dos motorreductores
  • Paquetes de energía conectables por USB (los portátiles que se usan para teléfonos celulares)

Paso 2: Montaje

Montaje
Montaje
Montaje
Montaje
Montaje
Montaje

Ensamblaje estructural

Es probable que las piezas impresas en 3D necesiten una limpieza, y recomiendo lijarlas con un grano fino y usar acetona (quitaesmalte) para eliminar cualquier residuo de pegamento utilizado en el proceso de impresión 3D. Es posible que algunas de las piezas no encajen perfectamente, y tuve que lijar el eje para que estuviera perfectamente redondeado y encajara correctamente en los orificios.

Las ruedas necesitan un ligero ajuste, es necesario perforarlas más para adaptarse a las dimensiones del eje en la parte trasera y los tornillos en la parte delantera. Utilice una broca de 6 mm para perforar los orificios de las ruedas para perforar orificios más grandes en las ruedas.

Para este ensamblaje utilicé una variedad de pegamentos, pero descubrí que el concreto líquido (pegamento para modelar) era el mejor para sujetar a pesar del largo tiempo de secado, pero el epoxi era mejor para las cosas que necesita secar rápidamente y sujetar bien, a pesar de ser desordenado.

El resto del montaje es bastante sencillo:

  1. Fije los soportes del eje a la parte posterior de la tapa de la caja, usando epoxi para sellar
  2. Pase el eje a través de los soportes del eje.
  3. Pega las ruedas al eje con hormigón líquido.
  4. Pase los brazos por los orificios superiores y péguelos al soporte del brazo con epoxi.
  5. Atornille la tapa de la caja en la caja.
  6. Use cinta aislante en la parte inferior de la caja donde están las ruedas.

Ensamblaje Eléctrico

Las ruedas delanteras están conectadas directamente a los motores, y debe usar un pequeño tornillo en el motor para que sea lo suficientemente largo como para pasar por el orificio del robot en cada lado. Debe haber un pequeño orificio en la clavija giratoria del motor y puede atornillar el tornillo allí y pegar la cabeza del tornillo en la rueda después de empujar el tornillo a través del orificio en la caja.

La parte posterior de mi tablero tenía un respaldo pegajoso, pero puedes usar cinta aislante para adherirlo si el tuyo no lo tiene. También se utilizó cinta aislante para sujetar los componentes eléctricos que no estaban en el tablero, por razones de seguridad. Los MCU con las pantallas LED se unieron a la parte posterior de las cuencas de los ojos con cinta aislante y los motores también se unieron a los lados de la caja cerca de los orificios con cinta aislante. Usé cinta aislante roja para hacerlo más invisible, por si acaso, y recomiendo usar una cinta aislante de un color similar a tu versión de ARCA.

La placa de pruebas y los pines están configurados como esta imagen de Fritzing. Si desea agregar más a este diagrama para personalizar ARCA, puede descargar el archivo Fritzing en mi repositorio de Github y editarlo como desee.

Conecté los cables a los bucles de los motores de engranajes doblando los cables alrededor de los bucles para mantenerlos conectados. Probablemente sería una mejor idea soldar estas conexiones si tiene acceso a un soldador, pero esta es una solución fácil si no tiene uno.

El paquete de energía está conectado al mismo cable que se usa para conectar el Arduino a la computadora para descargar su programa, y esto está suelto en el robot para que se pueda quitar y cargar fácilmente.

Paso 3: programación

Programación
Programación

Aquí está el código que puede cargar en su ARCA para que funcione exactamente como el mío, también necesita las siguientes dos bibliotecas para usar el código.

Sin embargo, en aras de la claridad y la personalización, lo guiaré a través de mi código. No dude en omitir este paso si no está personalizando su robot o no planea cambiar las emociones.

Primero, incluyo dos bibliotecas para usar en mi código, lo que me permite usar las funciones y objetos de estas bibliotecas. También estoy definiendo mis pines aquí. Si decidió hacer sus pines diferentes a mi configuración en el paso anterior, realice los cambios en su código aquí con los pines adecuados.

A continuación, definí las emociones, declaré los objetos necesarios para el sensor IR y las pantallas LED de 8 por 8, y definí algunas variables globales. Las emociones se declaran en una matriz de bytes, donde cada uno de los números hexadecimales de la matriz representan las filas en la pantalla resultante de 8 por 8. Para crear sus emociones personalizadas, recomiendo dibujar la emoción que deseaba en una cuadrícula de 8 por 8, y luego escribir cada número binario de 8 bits de fila donde la luz apagada es un 0 y la luz encendida es un 1, y luego cree un número hexadecimal de eso y ponerlo en una matriz de longitud 8. También he definido algunas variables globales para usar en el ciclo; las variables para el mecanismo de parpadeo y los indicadores para almacenar las emociones y establecerlas para que comiencen en neutral.

Ahora llegamos al ciclo de configuración, donde enciendo el monitoreo en serie por el bien de la prueba, y esto debería ser útil para probar su código con diferentes controles remotos IR. Luego, inicialicé los objetos del ojo izquierdo y derecho usando funciones de la biblioteca de control de LED. También configuré los pines del motor de engranajes en salida y encendí el receptor de infrarrojos.

En el bucle, esencialmente espera a que la señal de infrarrojos cambie el status quo del robot. Entonces, si se recibe una señal de infrarrojos y coincide con uno de los códigos de un botón específico, entonces si se activa la declaración y se configuran los valores del ojo izquierdo y del ojo derecho en consecuencia para las emociones. Si se presiona un botón de movimiento, como izquierda, derecha, adelante y OK, entonces los pines se escriben digitalmente para que estén activados o desactivados según el botón presionado. Solo una nota sobre los códigos del receptor IR: hay un código de muestra en la biblioteca del control remoto IR que le dará los códigos hexadecimales de su control remoto, si no sucede nada cuando presiona los botones, abra este programa para asegurarse de que los códigos sean correctos. Todo lo que tienes que hacer es cambiar el número hexadecimal que acompaña a cada botón.

Por último, tienes la función que imprime las emociones en las pantallas de 8 por 8. Esto usa las funciones setRow de la biblioteca de control de LED y simplemente pasa por las matrices que ha creado y establece las filas en consecuencia. Toma dos parámetros: la matriz para el ojo izquierdo y la matriz para el ojo derecho. Esto podría ser un puntero de bytes o una matriz de bytes en sí (es decir, el nombre "neutral") que actúa como un puntero.

Paso 4: Consejos y trucos adicionales

Consejos y trucos adicionales
Consejos y trucos adicionales

Ciertamente, aprendí mucho durante este proyecto y quería compartir algunos consejos adicionales aquí que se aplican tanto a este proyecto como a otros proyectos que utilizan un Arduino.

  • Hay muchos recursos en línea para Arduino y, en mi opinión, el más útil proviene del sitio web de Arduino debido a sus ejemplos de código claros y concisos.
  • No reinvente la rueda, hay muchos kits y piezas prefabricadas que puede utilizar para facilitar su proyecto. Soy programador y no ingeniero mecánico y me costó mucho tratar de averiguar cómo iba a hacer funcionar este robot, pero fue fácil encontrar algo para comprar en línea e implementarlo en mi diseño en lugar de reinventar literalmente el rueda
  • Las bibliotecas son tus amigas en Arduino, así como en todos los lenguajes orientados a objetos, y existen por una razón. Combine esto con microcontroladores y programar un LED de 8 por 8 es simple. He programado uno de estos a mano antes y solo uno usa cada pin en el Arduino y requiere una tonelada de código. Muy desordenado y no muy divertido.
  • Las impresoras 3D son geniales pero no perfectas y está bien tener que lijar algunas cosas. Preferiría ir más grande cuando imprime en 3D por esta razón porque en la mayoría de los casos puede lijarlo un poco para obtener ese ajuste perfecto.
  • La energía puede ser un problema porque pensé en el uso de energía en el último minuto y pensé que una batería de 5v sería suficiente. Entonces, aparentemente al azar, a veces un motor o una pantalla LED no funcionarían. Una vez que me actualicé al paquete de energía, no hubo más problemas, a pesar de ser más voluminoso dentro del robot.

Recomendado: