Tabla de contenido:

Actualice el robot Heathkit Hero Jr con hardware moderno: 4 pasos
Actualice el robot Heathkit Hero Jr con hardware moderno: 4 pasos

Video: Actualice el robot Heathkit Hero Jr con hardware moderno: 4 pasos

Video: Actualice el robot Heathkit Hero Jr con hardware moderno: 4 pasos
Video: Introducing Amazon Astro – Household Robot for Home Monitoring, with Alexa 2024, Noviembre
Anonim
Actualice el robot Heathkit Hero Jr con hardware moderno
Actualice el robot Heathkit Hero Jr con hardware moderno

Esto es más un trabajo en progreso que un proyecto terminado, por favor téngalo en cuenta al leer. Gracias

Un poco sobre este robot, dónde lo conseguí y mis planes para él. (Imagen del proyecto del Día de Star Wars de 2015)

Probablemente fue en algún momento de 2005, mi esposa y yo estábamos en un mercado de pulgas local, solo estábamos mirando alrededor, realmente no buscando nada. Había un granjero mayor que se había instalado afuera, estaba cerca de la parte trasera del lugar y no mucha gente iba a ver sus productos. Me alegro de haber sido uno de los que fue y miró.

Tenía este pequeño robot, por supuesto que sabía lo que era. Le pregunté cuánto quería, y me sorprendió, les dije que quería un total de $ 20.00 dólares. Fue entonces cuando me dijo que había estado en un granero probablemente durante los últimos 20 años más o menos, y al mirar más de cerca había creadores peludos viviendo en él. Los cables habían sido masticados, la placa principal había sido destruida en su mayor parte. Las baterías no se podían utilizar. La cosa era un desastre, y eso es lo mejor que puedo ser al respecto.

Incluso tenía todos los cartuchos y se veían bastante bien considerando.

A pesar de su apariencia, vi algo que había querido desde que era joven. Le di al granjero $ 20 y le agradezco. Llevando mi premio al auto.

Me tomó aproximadamente un mes limpiarlo lo suficiente como para comenzar a mirar los componentes electrónicos y ver qué funcionaba y qué no. Finalmente pude obtener energía también, sorprendentemente pasó su autocomprobación. Pensé, bueno, esto fue mucho, incluso si tuviera que hacer un poco de trabajo para limpiarlo. Bueno, pasó su autocomprobación una vez, eso fue todo, nunca pude lograr que pasara de nuevo.

Saqué las placas principales, las vendí.

Revisé el motor de accionamiento y el motor paso a paso (el paso a paso tenía cables que comenzaban a corroerse y no estaban en las mejores condiciones), pero ambos funcionaron, así que los guardo.

Puse el robot como una especie de pieza de exhibición, porque no estaba muy seguro de qué quería hacer con él.

A finales de 2015, se preguntó a un grupo de creadores y artesanos al que me uní si queríamos hacer algo para el "Día de Star Wars" para nuestra biblioteca local. Así que pensamos y dije: ¿qué pasa si traigo a "Hero Jr" de vuelta a vida usando los microcontroladores Arduino. Y eso es lo que hice: le di un toque extra y usé 7 Arduinos en él … probablemente más de lo que necesitaba, pero en ese momento todavía estaba aprendiendo. Y quería que fuera "multitarea" que en ese momento no sabía cómo hacer de otra manera. Documenté ese proyecto aquí:

Bueno, eso fue en 2015, se eliminó el sable de luz y la mayoría de los Arduinos que eran específicos para ese proyecto. En su mayor parte, un Arduino puede ejecutar esto si no quieres que suceda nada especial. El robot volvió a su espacio como pieza de exhibición. Aprendí algunas cosas en el camino, e incluso iba a mejorar su suministro de energía en ese entonces. El tiempo se apoderó de mí, y solo pedí una placa USB de 8 amperios de 4 puertos de 12v a 5v. Desafortunadamente, no puedo encontrar ese tablero en ningún lugar en línea ahora, no sé si dejaron de hacerlo o? Pero incluso ese tablero estaba en una caja hasta ahora.

Uno de los objetivos del proyecto original era mantenerlo luciendo lo más antiguo posible, pero reemplazar la mayor parte del hardware con material moderno. En 2020, he decidido incluso actualizar sus LED a RGB (neopixels) más sobre eso más adelante. El objetivo sigue siendo que se vea vintage, creo que lo hace hasta que uses un color que no sea el rojo.

Este proyecto está utilizando un Arduino Mega 2560 mini (placa de clonación, no me gusta), una Raspberry Pi 3+, placa / altavoz / micrófono original de Google AIY, reemplazó el motor paso a paso con un servomotor ASMC-04, un 36v Batería de LIPO extraída de una tabla flotante rota. Tengo un convertidor DC-DC de 36v a 12v 5amp y un dispositivo USB de 4 puertos 12v a 5v 8amp. Un ultrasonido barato y LDR, bastantes soportes impresos en 3D. 8 leds pequeños ws2812 (también conocidos como neopixels), un par de keystones cat5 y un cable cat5 corto. (se dejó un divisor de voltaje del proyecto de 2015, pero era para 12v / 24v no para 36v, por lo que no es correcto. Necesita ser reparado), y estoy usando un controlador de motor L298 (también sobrante del proyecto de 2015)

Lo que queda del robot original de 1984 - motor de accionamiento de 12 V CC, el teclado original también funciona, así como el LED original de "energía verde". El caparazón y el marco siguen siendo los mismos. Pero eso es todo. Todo lo demás ha sido reemplazado.

Esto todavía es un trabajo en progreso en este momento; todavía estoy trabajando en la creación de un software de Python para Raspberry PI, necesito solucionar un par de pequeños problemas que encontré en el boceto de Arduino (en su mayoría funcionando). En broma digo que este es uno de esos proyectos que nunca terminará. En este punto, todos los LED funcionan, el ultrasonido funciona, el LDR funciona, el servomotor funciona, el motor de accionamiento avanza, no retrocede (cable roto que necesito localizar). El de 36v a 12v funciona, y el de 12v a 5v funciona, la Raspberry Pi se enciende, Arduino se enciende desde el PI. En su mayoría, el hardware está cableado y funcionando. Ahora todo es software.

Paso 1: ¡Los LED y la actualización

¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!
¡Los LED y la actualización!

El modelo original de 1984 tenía los LED soldados simplemente "extraño" si me preguntas, tenían que estar fuera de la placa, pero la soldadura estaba en el mismo lado que los LED. En 2015, algunos de estos LED funcionaron, otros no. Pude reemplazar los que no funcionaban, pero eso hizo que algunos de ellos se volvieran muy tenues y algunos simplemente nunca funcionaron. Mirando de cerca la placa, es posible que pueda ver que algunas de las almohadillas de soldadura se levantaron y se rompieron.

Todos compartían el mismo positivo de 5v, por lo que para encenderlos o apagarlos, apague la conexión a tierra. Lo que sé que es una cosa, pero no me gustó. Ya sabes, en un boceto de Arduino, un "ALTO" normalmente está encendido y "LOW" normalmente está apagado; bueno, en este caso, el "ALTO" estaba apagando los LED y "LOW" está encendido. lógica inversa en los LED.

En 2015, dejé pasar esto porque tenía cosas más importantes de las que preocuparme en ese momento.

Este año, decidí que me gusta la idea de los LED RGB WS2812, son baratos y fáciles de usar, usan una línea de datos y solo necesitan 5v y tierra. Estos son LED de 5 mm, por lo que encajan muy bien en casi todo lo que encaja en un LED estándar. Los encontré en eBay, eran un poco más de lo que normalmente pago por este tipo de LED, sin embargo, elijo hacer un pedido en los Estados Unidos. esta vez porque el envío desde China está tardando mucho tiempo. Así que pague un poco más, consígalos mucho más rápido. 10 LED me cuestan $ 10.00 no está mal, supongo, pero tampoco es un gran precio.

Conectarlos es bastante fácil y sencillo, hay una conexión a tierra, un positivo (5v), una entrada de datos y una salida de datos. Elijo usar un método antiguo de conexión y envolverlos con alambre. Pensé que si sería más difícil alinear los datos y alinear los datos si los soldara, también podría ser más difícil si cortaba demasiado los cables, no encajarían correctamente en los orificios que ya están en Hero Jr. Con una envoltura de alambre, puedo moverlos un poco y darles forma un poco mejor.

Después de conectarlos, los conecté a un Arduino UNO y usé uno de los ejemplos de Adafruit para los neopíxeles. Feliz de que todo haya funcionado. Los coloqué en la cabeza del robot y puse cinta adhesiva doble sobre ellos para protegerlos de la placa de circuito y mantenerlos en su lugar un poco mejor.

Luego los volví a conectar al Arduino y volví a ejecutar el ejemplo, solo para asegurarme de que no choqué con un cable, o para asegurarme de que no estuvieran en cortocircuito. Todo funcionó. Tomó un poco de tiempo conectar todo, pero honestamente, una vez que empiece a envolver cables, puede avanzar bastante rápido.

Las imágenes de arriba, muestran los LED ROJOS originales, la placa, traté de mostrar los rastros rotos, los nuevos LED en varias etapas de cableado. Y finalmente ellos trabajando en la cabeza.

También tengo videos de la "boca" de Hero Jr, que cuando habla, los LED animan una "boca" y los píxeles ejecutan los ejemplos de Adafruit. Aún no los he subido, pero será pronto.

Paso 2: Raspberry PI Google AIY y Arduino Mega 2560 Mini

Raspberry PI Google AIY y Arduino Mega 2560 Mini
Raspberry PI Google AIY y Arduino Mega 2560 Mini
Raspberry PI Google AIY y Arduino Mega 2560 Mini
Raspberry PI Google AIY y Arduino Mega 2560 Mini
Raspberry PI Google AIY y Arduino Mega 2560 Mini
Raspberry PI Google AIY y Arduino Mega 2560 Mini

2015, fue una época diferente y un proyecto diferente. Usé 7 Arduinos diferentes, la mayoría eran UNO o Nanos, un par de MEGA. Tenía uno solo para reproducir MP3 usando un escudo MP3, tenía uno para controlar un sintetizador de voz EMIC 2, uno para el sable de luz. Controlador de motor, motor paso a paso, teclado, la lista continúa. No hace falta decir que he aprendido mucho desde 2015 y, sinceramente, es sorprendente que la versión de 2015 haya funcionado tan bien como lo hizo (yo sin saber nada y aprendiendo y adivinando).

2020 - Debido a que la versión "Star Wars Day" siempre iba a ser de un solo uso, mis planes eran simplificar las cosas desde el principio. En 2015, jugué con la idea de usar una Raspberry PI en ese momento, pero realmente no sabía lo suficiente en ese momento para hacer que eso funcionara. Decidí que un Arduino Mega 2560 mini haría cualquier cosa en cuanto a la entrada / salida fuera necesaria, es decir: encender / apagar el motor, encender el paso a paso / servo, leer el LDR, leer el ultrasónico, leer el divisor de voltaje. En este caso, el Mega es básicamente un dispositivo "ficticio", con solo unas pocas cosas que realmente necesita hacer, pero el Mega también se está utilizando para leer el teclado, por lo que realmente necesitaba un método de comunicación bidireccional entre el Mega y el Raspberry PI. Elegí usar el protocolo MQTT, pero eso propuso otro problema: ¿cómo obtenerlo a través del puerto serie? Afortunadamente encontré este proyecto en github "serial2mqtt" https://github.com/vortex314/serial2mqtt Que es realmente un tipo de puerta de enlace, el software se ejecuta en Raspberry PI - El Arduino simplemente envía el mensaje serial correctamente redactado, y eso es luego se pasa al corredor de MQTT. Me tomó un poco hacer que funcionara correctamente, pero funcionó bastante bien y parece que hace lo que necesito que haga. El Arduino Mega publicará cuando esté en línea, la lectura ultrasónica, la lectura ldr, la lectura de voltaje. Escuchará los comandos, los movimientos del motor, el movimiento del servo y qué hacer con los LED. Si bien todo eso parece mucho, la sobrecarga es bastante pequeña y funciona bastante bien.

La Raspberry PI será programable con python, C ++, casi cualquier cosa que pueda usar el puerto serie y usar MQTT. Como no iba a usar Google con AIY, necesitaba instalar los controladores y asegurarme de que funcionaba. Otro golpe de suerte para Github con el resultado, Shivasiddharth hizo GassistPI, y descubrió lo que se necesitaba instalar para que esto funcione, las instrucciones se pueden encontrar aquí:

El PI aloja el intermediario MQTT, espeak para voz y otro software según sea necesario. Para acceder a él, actualmente estoy usando SSH, tengo planes de crear una interfaz web, pero eso ni siquiera está cerca de estar listo. He estado "jugando" con el aprendizaje de Python para este proyecto, pero todavía no tengo muchos programas listos.

Algunas notas especiales aquí:

El Mega 2560 Mini original que tenía era un pequeño clon del Arduino Mega 2560 original que usaba el mismo chip en serie para la comunicación, así que mientras probaba, solo usé un Mega de tamaño completo en el banco de trabajo. Desafortunadamente, había soldado los cables del teclado a esa placa (desoldar los pines del cabezal, en qué estaba pensando, desearía poder culpar a 2015, pero no puedo) La parte desafortunada, tuve un par de esos cables que se rompieron apagado, y no pude conseguir un orificio limpio para volver a soldar también. Terminé yendo a un clon de un clon que sigue siendo un Arduino Mega 2560 pero una versión más barata y con un chip de puerto serie barato. Esto me está causando algunos problemas con paquetes descartados alrededor del 10% más o menos, no es suficiente sacar todo e intentarlo de nuevo con una placa diferente. Pero es suficiente para volverme un poco loco. En el "nuevo" (versión 2) Mega utilicé una envoltura de alambre y dejé los pines del cabezal (oye, tal vez una expansión futura, solo estoy usando 12 o 13 pines en este momento)

También imprimí en 3D (y reutilicé algunas impresiones fallidas) soportes para Raspberry PI y Mega Mini. Tendría que buscar los archivos de diseño si alguien los quiere. No son muy buenos ya que usé una herramienta rotativa para hacer algunos agujeros, o darles forma un poco, pero si alguien los quiere los buscaré.

Imágenes de arriba: Raspberry PI 3+ con Google AIY Hat, en un soporte hecho a medida, Original Mega 2560 el que quería usar pero realmente arruinado, el reemplazo Mega 2560 (v2) con el que no estoy tan contento pero funciona, con alambre enrollado y soporte impreso en 3D personalizado

Paso 3: de paso a paso a servo

De paso a paso a servo
De paso a paso a servo
De paso a paso a servo
De paso a paso a servo

Desafortunadamente, no tomé muchas fotos de esto, y no tengo ninguna foto del viejo motor paso a paso.

1984: un motor paso a paso era probablemente más barato que un servo grande en 1984, no estoy seguro. Hubo paradas finales, y el motor paso a paso tuvo que volver a casa por sí solo con cada encendido. Piense en la impresora 3D y en cómo van a casa.

2015 - En otro movimiento de no saber realmente lo que estaba haciendo, quité los topes finales y procedí a perderlos. Como dije anteriormente, los pequeños creadores se habían comido algunos de los cables del paso a paso, los cables estaban más o menos expuestos y comenzaban a corroerse. Me sorprende que haya funcionado en 2015, pero funcionó.

2020: el motor paso a paso dejó de funcionar y comencé a buscar un reemplazo. Me encontré con el servomotor grande ASMC-04, esta no era la opción más barata, pero fue una de las mejores que encontré. El paso a paso costaba $ 50 + dólares de China, y el soporte de bocina costaba otros $ 13 o $ 14. Para mí, los beneficios superaron el costo.

El servocontrolador es de 12 o 24 voltios, el ángulo de rotación es de 0 a 300 grados (limitado en mi boceto de Arduino a 0 a 180), puedo controlar esto con 1 cable del arduino, (2 si cuenta un cable de tierra). Es un servo RC de alto par, sin embargo, realmente no gira tan rápido.

La decepción de esto fue que incluso si las especificaciones proporcionadas parecían montarse en los mismos orificios que el paso a paso, no encajaba correctamente y tuve que perforar nuevos orificios para ello. El soporte de la bocina del servo también es mucho más grande que el soporte del motor paso a paso original, por lo que es necesario perforar más agujeros.

Para mí, me recuerda mucho a la velocidad del paso a paso, por lo que, sobre todo, un buen reemplazo y algo que no notarás ha cambiado a menos que mires dentro del robot.

Imágenes:

No tomé muchas fotos de esto, puede que haya un par más en algún lugar, pero se verán más o menos como estas.

Paso 4: algunas imágenes más

Algunas fotos más
Algunas fotos más
Algunas fotos más
Algunas fotos más
Algunas fotos más
Algunas fotos más
Algunas fotos más
Algunas fotos más

Como todavía estoy trabajando en este Robot (principalmente software en este momento) pensé en compartir algunas fotos más.

Imágenes:

Convertidor DC-DC de 4 puertos USB 12v a 5v 8 amperios, ya no puedo encontrar esto, y desearía haber comprado un par de ellos.

Batería LiPo de 36v extraída de una tabla flotante rota

Imágenes del interior del robot, cables, etc. Algunas imágenes más de los reemplazos de LED, algunas imágenes más del Arduino Mega con envoltura de alambre, una imagen del ultrasónico con una cubierta (en realidad, así era en 2015)

Imágenes del cuerpo sin el caparazón y una imagen del uso de una consola para probarlo en MQTT.

Eso es todo por ahora, gracias por mirar, y si te gusta, vota por mí:-) Me vendrían bien algunas partes más para proyectos LOL - Que tengas un buen día y trata de estar a salvo para todos.

Recomendado: