Tabla de contenido:

Hexápodo: 14 pasos (con imágenes)
Hexápodo: 14 pasos (con imágenes)

Video: Hexápodo: 14 pasos (con imágenes)

Video: Hexápodo: 14 pasos (con imágenes)
Video: Robot Hexapodo Con Servos, Bluetooth, Impreso 3D 2024, Noviembre
Anonim
Hexápodo
Hexápodo
Hexápodo
Hexápodo
Hexápodo
Hexápodo

Desde hace algunos años me interesa jugar y crear robots y me inspiré mucho en Zenta, aquí encontrarás su canal de Youtube https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T y su sitio web

Puede encontrar muchos kits de diferentes proveedores en Internet, pero son muy costosos, hasta 1.500 $ + por un hexápodo de 4 DoF, y los kits de China no tienen buena calidad. Entonces, he decidido crear en hexápodo a mi manera. Inspirado en el hexápodo Phoenix de Zenta, lo encontrarás en su canal de Youtube (y un kit que puedes encontrar en https://www.lynxmotion.com/c-117-phoenix.aspx, comencé a crear el mío desde cero.

Para crear si establezco los siguientes objetivos / requisitos para los míos:

1.) Diviértete mucho y aprende cosas nuevas.

2.) Diseño basado en costos (maldición, mi empresa me echó a perder por completo)

3.) Piezas hechas de madera contrachapada (porque es más fácil para la mayoría de las personas y también para mí cortar madera)

4.) Uso de herramientas gratuitas disponibles (software)

Entonces, ¿qué he usado hasta ahora?

a) SketchUp, para el diseño mecánico.

b) Madera contrachapada de haya de 4 mm y 6 mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Servos digitales estándar (que se encuentran en Amazon a buen precio).

e) Dosuki y Sierra de cinta, una perforadora, papel de lija y una lima.

Paso 1: Construcción de patas y soportes de servo

Construcción de patas y soportes de servo
Construcción de patas y soportes de servo
Construcción de patas y soportes de servo
Construcción de patas y soportes de servo
Construcción de patas y soportes de servo
Construcción de patas y soportes de servo

Primero estaba investigando un poco en Internet para averiguar cómo hacer un robot, pero no tuve mucho éxito al encontrar buena información sobre cómo hacer diseño mecánico. Así que estaba luchando mucho y finalmente decidí usar SketchUp.

Después de algunas horas de aprender haciendo con SketchUp, terminé con mi primer diseño de las piernas. El fémur está optimizado para el tamaño de los servos cuernos que estoy usando. Como me di cuenta, el original parece tener alrededor de 1 de diámetro, pero mis cuernos de servo tienen 21 mm.

Hacer una impresión con la escala correcta no funcionaba correctamente con SketchUp en mi computadora, así que la guardé como PDF, hice una impresión con el 100%, hice algunas mediciones y finalmente imprimí de nuevo con el factor de escala correcto.

En el primer intento, estaba creando solo artes para dos piernas. Para esto, apilé dos tablas, pegué (para papel de pared) la impresión y corté las partes con una sierra de cinta para manualidades.

Material utilizado: madera contrachapada de haya de 6 mm (1/2 )

Después hice algunos experimentos, no los he documentado, e hice algunas optimizaciones. Como puede ver, la tibia está un poco sobredimensionada al igual que el fémur.

Para montar los cuernos del servo a través del fémur, se deben cortar 2 mm del material. Esto se puede hacer de diferentes maneras. Con un enrutador o con un taladro Forstner. El Forstner tenía solo 200 mm de diámetro, así que tuve que hacer un poco de posguerra a mano con un cincel.

Paso 2: Optimización del fémur y la tibia

Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia
Optimización del fémur y la tibia

He cambiado un poco el diseño.

1.) Tibia ahora se ajusta mucho mejor al servo que estoy usando.

2.) El fémur ahora es un poco más pequeño (aproximadamente 3 de eje a eje) y encaja en los cuernos del servo (21 mm de diámetro).

Estaba usando 6 tablas de madera contrachapada de 6 mm y las pegué con cinta adhesiva de doble cara. Si esto no es lo suficientemente fuerte, puede perforar un agujero a través de todas las tablas y usar un tornillo para fijarlas juntas. luego se cortan partes de una vez con la sierra de cinta. Si eres lo suficientemente duro, también puedes usar una sierra de calar:-)

Paso 3: diseño del soporte del servo

Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo
Diseño del soporte del servo

Ahora es el momento de diseñar el soporte del servo. Esto está fuertemente diseñado en relación con el servo usado que he usado. Todas las partes están hechas de madera contrachapada de haya de 6 mm nuevamente, vea el siguiente paso.

Paso 4: Cortar y ensamblar soportes de servo

Cortar y ensamblar soportes de servo
Cortar y ensamblar soportes de servo
Cortar y ensamblar soportes de servo
Cortar y ensamblar soportes de servo

Nuevamente he cortado seis partes al mismo tiempo, todas con la sierra de cinta. El método es el mismo que antes.

1.) Usando cinta adhesiva de doble cara, para pegar las tablas.

2.) Tornillos para tener más estabilidad durante el corte (no se muestran aquí).

Luego usé un poco de pegamento para manualidades para pegarlos y dos tornillos SPAX (aún no aplicados en la foto).

En comparación con el hexápodo original, todavía no estoy usando rodamientos de bolas, en su lugar solo uso tornillos de 3 mm, arandelas y tuercas de autofijación para ensamblar las patas con la carrocería / chasis.

Paso 5: Ensamblaje de las piernas y prueba

Image
Image
Ensamblar las piernas y probar
Ensamblar las piernas y probar
Ensamblar las piernas y probar
Ensamblar las piernas y probar

En las dos primeras imágenes ves la primera versión de una pierna. A continuación, verá una comparación de piezas nuevas y antiguas y una comparación de las piezas nuevas (versión dos) con el original (foto de fondo).

Finalmente harás una primera prueba de movimiento.

Paso 6: Construcción y ensamblaje del cuerpo

Construcción y ensamblaje del cuerpo
Construcción y ensamblaje del cuerpo
Construcción y ensamblaje del cuerpo
Construcción y ensamblaje del cuerpo
Construcción y ensamblaje del cuerpo
Construcción y ensamblaje del cuerpo

El cuerpo que he intentado reconstruir a partir de fotografías. Como referencia he usado la bocina del servo, que asumí con 1 "de diámetro. Entonces, el lado frontal se convierte en un ancho de 4.5" y el medio de 6.5 ". Para la longitud asumí 7". Más tarde compré el kit de carrocería original y lo comparé. Me estaba acercando mucho al original. Finalmente hice una tercera versión, que es una copia 1: 1 del original.

El primer kit de carrocería que hice de madera contrachapada de 6 mm, aquí ves la segunda versión hecha de madera contrachapada de 4 mm, que descubrí que es lo suficientemente fuerte y rígida. A diferencia del kit original, estaba montando la bocina del servo en la parte superior, resp. a través del material (se puede ver esto también con el fémur). La razón es que no estoy de humor para comprar cuernos de aluminio costosos, sino que quiero usar los cuernos de plástico que ya se entregan. Otra razón es que me estoy acercando al servo, por lo que las fuerzas de corte son menores. Esto hace una conexión más estable.

Por cierto, a veces es bueno tener a Ganesh a bordo. Gracias a mi amigo Tejas:-)

Paso 7: Primeras pruebas de electrónica

Image
Image
Tibia y Coxa EV3
Tibia y Coxa EV3

Todas las artes están reunidas ahora. Está bien, sé que no se ve muy hermoso, pero en realidad estoy experimentando mucho. En el video se puede ver la reproducción de algunas secuencias predefinidas simples, en realidad no hay una cinemática inversa implementada. La marcha predefinida no funciona correctamente porque está diseñada para 2 DoF.

En este ejemplo, estoy usando el servocontrolador SSC-32U de Lynxmotion, lo encontrará aquí:

Hace algunos días también estaba usando otro controlador PWM (controlador PWM de Adafruit de 16 canales, https://www.adafruit.com/product/815), pero el SCC tiene algunas características interesantes, como ralentizar los servos.

Entonces, eso es todo por ahora. A continuación tengo que averiguar cómo funciona la cinemática inversa (IK), tal vez programe un paso simple como el predefinido en el controlador SSC. Ya encontré un ejemplo listo para usar aquí https://github.com/KurtE/Arduino_Phoenix_Parts, pero aún no lo he ejecutado. No tengo idea de por qué, pero estoy trabajando.

Entonces, aquí hay una breve lista de tareas pendientes.

1.) Programe un paso simple como incorporado en el SSC.

2.) Programe una clase / contenedor de controlador PS3 para Arduino Phoenix.

3.) Obtener el código de KurtE ejecutándose o escribir mi propio código.

Los servos que estoy usando los encontré en Amazon https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. El precio es bastante bueno, pero la calidad podría ser mucho mejor.

Paso 8: Primera prueba de marcha simple

Como mencioné en el último paso, intenté programar mi propia secuencia de marcha. Este es muy simple, como un juguete mecánico, y no está optimizado para el cuerpo que estoy usando aquí. Un simple cuerpo recto sería mucho mejor.

Así que te deseo mucha diversión. Tengo que aprender IK ahora;-)

Observaciones: Cuando mires las piernas con atención, verás que algunos servos se comportan de forma extraña. Lo que quiero decir es que no siempre se mueven suavemente, tal vez tenga que reemplazarlos por otros servos.

Paso 9: portabilidad del controlador PS3

Esta mañana estaba trabajando en escribir un contenedor para el código Phoenix. Me tomó algunas horas, alrededor de 2-3, para hacer eso. el código finalmente no se depura y agregué algo de depuración adicional a la consola. Funciona hasta ahora:-)

Pero, por cierto, cuando estaba ejecutando el código Phoenix, parece que todos los servos funcionan invertidos (dirección opuesta).

Cuando quiera probarlo usted mismo, necesita el código de KurtE como base https://github.com/KurtE/Arduino_Phoenix_Parts. Siga las instrucciones para instalar el código. Copie la carpeta Phoenix_Input_PS en su carpeta de la biblioteca de Arduino (generalmente la subcarpeta de su carpeta de bocetos) y la carpeta Phoenix_PS3_SSC32 en su carpeta de bocetos.

Información: Si no tiene experiencia con Arduino y las herramientas y tiene algún problema, comuníquese con la comunidad de Arduino (www.arduino.cc). Cuando tenga problemas con el código Phoenix de KurtE, comuníquese con él. Gracias.

Advertencia: En mi opinión, comprender el código no es nada para principiantes, por lo que debes estar muy familiarizado con C / C ++, la programación y el algoritmo. El código también tiene mucho código compilado condicional, controlado por #defines, esto hace que sea muy difícil de leer y comprender.

Lista de hardware:

  • Arduino Mega 2560
  • Escudo de host USB (para Arduino)
  • Controlador de PS3
  • Servocontrolador LynxMotion SSC-32U
  • Batería de 6 V (lea los requisitos de todos sus HW, de lo contrario puede dañarla)
  • IDE de Arduino
  • Algunos cables USB, interruptores y otras piezas pequeñas según sea necesario.

Si le gusta un controlador de PS2, encontrará mucha información en Internet sobre cómo conectarse a Arduino.

Entonces, tenga paciencia. Actualizaré este paso cuando el software funcione correctamente.

Paso 10: Primera prueba de CI

Image
Image

Encontré un puerto diferente del código Phoenix que se ejecuta mucho mejor (https://github.com/davidhend/Hexapod), tal vez tenga un problema de configuración con el otro código. El código parece tener algunos errores y los pasos no se ven muy suaves, pero para mí este es un gran paso adelante.

Tenga en cuenta que el código es realmente experimental. Tengo que limpiar y corregir mucho y publicaré una actualización los próximos días. El puerto de PS3 se basa en el puerto de PS3 ya publicado, y he descartado los archivos de PS2 y XBee.

Paso 11: Segunda prueba de CI

La solución fue tan fácil. Tuve que corregir algunos valores de configuración e invertir todos los ángulos de servo. Ahora funciona:-)

Paso 12: Tibia y Coxa EV3

Tibia y Coxa EV3
Tibia y Coxa EV3
Tibia y Coxa EV3
Tibia y Coxa EV3

No pude resistir, así que hice nuevas tibias y coxa (soportes de servo). Esta es ahora la tercera versión que hice. Los nuevos tienen una forma más redonda y un aspecto más orgánico / biónico.

Entonces, el estado real es. El hexápodo funciona, pero todavía tiene problemas con algunas cosas.

1.) No he descubierto por qué el BT tiene un retraso de 2-3 segundos.

2.) La calidad del servo es mala.

Cosas para hacer:

* Debe mejorarse el cableado de los servos.

* Necesita un buen soporte de batería.

* Tienes que encontrar una forma de montar la electrónica.

* Vuelva a calibrar los servos.

* Añadiendo sensores y un monitor de voltaje para la batería.

Paso 13: Fémur de forma suave

Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa
Fémur de forma lisa

Hace unos días ya hice un nuevo fémur porque no estaba del todo satisfecho con el anterior. En la primera imagen verás las diferencias. Los viejos tenían un diámetro de 21 mm en los extremos, los nuevos tienen un diámetro de 1 pulgada. Hice agujeros en el fémur con mi fresadora con una simple herramienta de ayuda, como puede ver en las siguientes tres imágenes.

Antes de hacer los hundimientos en el fémur, tiene sentido perforar todos los orificios, de lo contrario, puede resultar difícil. La bocina del servo encaja muy bien, el siguiente paso, que no se muestra aquí, es darle a los bordes una forma redonda. Para esto he usado una broca de enrutador con un radio de 3 mm.

En la última imagen, verá una comparación entre la antigua y la nueva. No sé qué piensas, pero me gusta mucho más el nuevo.

Paso 14: Pasos finales

Image
Image
Pasos finales
Pasos finales
Pasos finales
Pasos finales
Pasos finales
Pasos finales

Terminaré este tutorial ahora, de lo contrario se convertirá en una historia interminable:-).

En el video verás el código Phoenix de KurtE ejecutándose con algunas de mis modificaciones. El robot no se mueve perfectamente, lo siento, pero los servos baratos tienen mala calidad. He pedido algunos otros servos, acabo de probar dos de ellos con buenos resultados y todavía estoy esperando la entrega. Entonces, lo siento, no puedo mostrarte cómo funciona el robot con los nuevos servos.

Vista posterior: un sensor de corriente de 20 amperios, a la izquierda del potenciómetro de 10 k. Cuando el robot camina, consumirá fácilmente 5 amperios. A la derecha del potenciómetro de 10 k, verá un píxel OLED de 128x64 que muestra información de estado.

Vista frontal: Un simple sensor ultrasónico HC-SR04, aún no integrado en SW.

Vista lateral derecha: acelerador y giro MPU6050 (6 ejes).

Vista lateral izquierda: altavoz piezoeléctrico.

El diseño mecánico ahora está más o menos hecho, a excepción de los servos. Entonces, las próximas tareas serán integrar algunos sensores en el SW. Para esto, he creado una cuenta de GitHub con el software que estoy usando, que se basa en una instantánea del software Phoenix de KurtE.

OLED:

Mi GitHub:

Recomendado: