Tabla de contenido:

¡Cinco altos! - una mano robótica: 5 pasos
¡Cinco altos! - una mano robótica: 5 pasos

Video: ¡Cinco altos! - una mano robótica: 5 pasos

Video: ¡Cinco altos! - una mano robótica: 5 pasos
Video: ✅ Mano Robótica puesta a prueba de fuerza con Motor a Pasos y Encoder de rotación 2024, Mes de julio
Anonim
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica
¡Cinco altos! - una mano robótica

Un día, en nuestra clase de Principios de ingeniería, nos propusimos construir máquinas compuestas con piezas VEX. A medida que comenzamos a construir los mecanismos, nos esforzamos por administrar múltiples componentes complejos que debían ensamblarse juntos. Si tan solo alguien pudiera echarnos una mano …

¡Es por eso que nosotros, tres estudiantes de Irvington High School en la clase de la señorita Berbawy, decidimos diseñar y construir una mano robótica desde cero! Con una estimación financiera de $ 150 para este S. I. D. E. Project, pudimos adquirir todos los materiales necesarios mientras nos quedamos muy por debajo del presupuesto. El producto terminado consiste en un Arduino Mega, un microcontrolador servo que maneja 5 servos, cada uno de los cuales está conectado a un dedo impreso en 3D que puede moverse individualmente con articulaciones realistas.

Este fue un proyecto muy ambicioso, dado que todos los miembros del equipo son estudiantes de secundaria con horarios ocupados en el tercer año y no tienen experiencia previa en el diseño completo de un proyecto basado en electrónica desde la base. Si bien los miembros de nuestro equipo tienen experiencia previa en programación y diseño asistido por computadora, el proyecto nos abrió los ojos a la posible utilización del hardware y software Arduino de una manera que podría ayudar a las personas a realizar sus tareas diarias.

Modelado y diseño 3D por Patrick Ding

Documentación y codificación Arduino por Ashwin Natampalli

Codificación, circuitos e instructable Arduino por Sandesh Shrestha

Paso 1: CAD

CADing
CADing
CADing
CADing
CADing
CADing

El primer paso y el más difícil de este proyecto es crear modelos 3D de la mano con los dedos. Para hacer esto, use Autodesk Inventor o Autodesk Fusion 360 (usamos el primero).

Utilice archivos de pieza para crear CAD individuales para la palma, los segmentos de los dedos, las yemas de los dedos y el segmento del meñique. Esto nos llevó 2-3 revisiones por parte para que el funcionamiento de las articulaciones y los servos fuera fluido.

El diseño puede ser del tamaño y la forma deseados siempre que la trayectoria de la cuerda permita un funcionamiento suave de los dedos y los dedos no choquen entre sí. También asegúrese de que los dedos puedan colapsar completamente para un puño cerrado.

Para solucionar el problema de las interferencias de cuerdas y las rutas ineficientes, como encontramos en nuestra primera versión, se agregaron bucles, guías de cuerdas y túneles para que la cuerda se pueda tirar y aflojar fácilmente.

Aquí están nuestras vistas múltiples finalizadas y archivos CAD.stl para cada pieza.

Paso 2: Impresión 3D

Impresión 3d
Impresión 3d
Impresión 3d
Impresión 3d
Impresión 3d
Impresión 3d

Después de completar los CAD, use una impresora 3D para que cobren vida. Esta etapa se puede repetir varias veces si el diseño que crea tiene algunos problemas.

Para imprimir en 3D, primero exporte los archivos CAD como archivos STL. Para hacer esto en Autodesk Inventor, haga clic en el menú desplegable Archivo y coloque el cursor sobre Exportar. En la columna emergente, seleccione Formato CAD. El menú del Explorador de archivos de Windows le permitirá elegir el archivo.stl del menú desplegable y elegir una ubicación para el archivo.

Una vez que el archivo esté listo para ser importado al software de la impresora 3D, configure las opciones de impresión a su gusto o siga nuestra configuración. El software de la impresora 3D varía de una marca a otra, así que consulte las guías en línea o el manual para navegar por su software. Para nuestra mano, usamos el LulzBot Mini debido a su disponibilidad en nuestro entorno de clase.

Paso 3: Montaje

Montaje
Montaje
Montaje
Montaje
Montaje
Montaje

Una vez que todas las piezas se imprimen en 3D con éxito con las balsas y los soportes retirados (si corresponde), cada pieza debe prepararse para comenzar el ensamblaje.

Dado que las impresoras 3D no son muy precisas y pueden producirse pequeñas imperfecciones, utilice una lima o papel de lija o una dremel con un accesorio de lijado para suavizar ciertas caras. Para una operación de unión más suave, enfóquese en las uniones y puntos de intersección para suavizar y lograr conexiones óptimas. A veces, los túneles de cuerdas en los segmentos de los dedos y otras partes pueden ceder o ser imperfectos. Para combatir discrepancias importantes, use un taladro con una broca de 3/16 de pulgada para perforar los túneles.

Para el enrutamiento de la cuerda más fácil, ensamble cada dedo, pase la cuerda a través de los túneles y ate la cuerda en los extremos. Antes de unir cada dedo a la palma, pase la cuerda a través de los bucles de guía, uno por el orificio superior y otro por el inferior, en la palma y fíjelo a los extremos opuestos de los carretes incluidos del servo. Una vez que las longitudes sean las correctas, une los dedos a la palma.

Como se muestra en la imagen de arriba, inserte tornillos m4x16 en cada articulación para mantener el dedo unido. Repite el proceso de construcción de cada dedo para todos los dedos, usando los segmentos del meñique para el meñique.

Paso 4: Circuito Arduino

Circuito Arduino
Circuito Arduino
Circuito Arduino
Circuito Arduino
Circuito Arduino
Circuito Arduino

Con el esqueleto todo ensamblado, ahora los músculos y el cerebro deben integrarse. Para ejecutar todos los servos a la vez, debemos usar un controlador de motor PCA 9685 de Adafruit. Este controlador requiere una fuente de alimentación externa para alimentar los servos. El uso de este controlador y su biblioteca de codificación patentada se puede encontrar aquí.

Cuando conecte el Arduino al controlador, asegúrese de registrar las salidas de los pines. Si usa un Arduino Mega, esto no será necesario. En todos los casos, sin embargo, asegúrese de registrar en qué puertos del controlador del motor están montados los servos.

Para controlar los servos y la mano usando un control remoto por infrarrojos, simplemente agregue el receptor de infrarrojos y conecte la alimentación y la tierra al Arduino con el cable de datos a los puertos digitales. Verifique el pinout de su receptor de infrarrojos para asegurarse de que el cableado sea el correcto. Se muestra un ejemplo de nuestro circuito.

Para crear este circuito, primero conecte cada servo a los puertos 3, 7, 11, 13 y 15 en la placa controladora del servomotor. Fije toda la placa con los cinco pines en la parte inferior a una placa de pruebas.

Con cables de puente, conecte la alimentación y tierra de 5 V del Arduino a un riel de alimentación de la placa de pruebas (¡asegúrese de etiquetar o recordar qué lado tiene 5 V de Arduino!). Esto alimentará el sensor de infrarrojos y el controlador del motor. Conecte una fuente de alimentación de 6 V a la otra línea de alimentación. Esto alimentará los servos.

Coloque los 3 pines del sensor de infrarrojos en la placa de pruebas. Conecte la alimentación y la tierra al riel de 5 V y la salida al pin digital 7.

Dado que estamos usando un Arduino Mega, los puertos SDA y SCL en el controlador del motor se conectarán con los puertos SDA y SCL en el Arduino. Los puertos VCC y de tierra se conectarán al riel de 5V.

Con el paquete de baterías conectado a su propio riel de alimentación, use cables de puente y un destornillador pequeño de cabeza plana para asegurar la energía a los servomotores a través del cabezal de entrada de energía verde.

Asegúrese de que todas las conexiones estén apretadas y vuelva a verificar todas las líneas de cable con nuestro circuito TinkerCAD adjunto.

Paso 5: codificación

Codificación
Codificación
Codificación
Codificación
Codificación
Codificación

El último paso antes de que se pueda encargar el uso de esta mano es codificar el Arduino. Dado que esta mano usa el controlador de motor PCA 9685, primero tenemos que instalar la biblioteca, lo que se puede hacer dentro del entorno de codificación Arduino. Después de la instalación, instale también la biblioteca IRremote para la funcionalidad IR Remote.

En nuestro código, las definiciones de cada botón del control remoto IR se muestran con códigos de 8 dígitos. Estos se encontraron usando el programa IRRecord, que imprime en Serial Monitor el código de 8 dígitos de cada botón.

Se adjunta tanto el programa IRRecord como el programa de control manual finalizado.

Al comienzo del código, incluya las bibliotecas IRremote, Wire y Adafruit_PWMServoDriver.

Después, utilice los resultados de IRRecord para definir cada botón del control remoto IR. Si bien no todos son necesarios (solo se necesitan 10), tenerlos todos permite una expansión rápida (agregando funciones y gestos preestablecidos) para el futuro. Cree el pwm usando la función del servocontrolador y asigne los servos a los pines del controlador del motor. Utilice los mismos valores de SERVOMAX / MIN que se muestran. Asigne el pin de entrada digital del sensor de infrarrojos como 7 e inicialice.

Declare la función de configuración con la inicialización Serial con una tasa de baudios de 9600. Habilite el sensor de infrarrojos e inicie el servo con una frecuencia de servo de 60 Hz.

Finalmente, cree un interruptor if / else basado en la transmisión entrante del control remoto IR en la función de bucle. Luego, cree un interruptor / caja con los casos de cada botón en el control remoto IR que se utilizará. Estos se pueden cambiar para sus controles preferidos. Para cada caso, imprima el botón presionado en el monitor en serie para la depuración y use un bucle for para mover el servo. Después de crear todos los casos, asegúrese de reanudar el sensor de infrarrojos para más señales entrantes antes de cerrar la función de bucle. La codificación de los servos a través de la placa del controlador del motor se puede encontrar en

Recomendado: