Hacer una hormiga robot: 9 pasos (con fotos)

Hacer una hormiga robot: 9 pasos (con fotos)

Tabla de contenido:

Anonim

Construya una hormiga robot que pueda ser controlada a distancia u operar de manera autónoma. Usando un detector de infrarrojos, puede encontrar y recoger objetos. Está controlado por un microcontrolador Picaxe 20x-2.

Si bien este es un robot bastante intrincado, algunas de las técnicas de motor y circuitos se pueden usar para otros robots más simples.

Este instructivo muestra cómo:

1-Use un controlador Picaxe para recibir señales de control remoto desde un control remoto universal de TV estándar.

2-Use un controlador Picaxe para interactuar con un sensor de distancia infrarrojo.

3-Enviar comandos serie a un controlador de motor serie o servo controlador serie.

4-Realiza una simple pinza de robot servo.

El video muestra al robot usando infrarrojos para localizar y recoger un bloque de madera. También muestra que, como la mayoría de las hormigas, la hormiga robot tiene un cierto desdén por sus pequeños maestros humanos.

18+

Suministros:

Paso 1: Cómo funciona

Un microcontrolador Picaxe 20x-2 controla un sensor de distancia infrarrojo para ubicar y recoger objetos. Utiliza comandos en serie para controlar un controlador de motor que opera los dos motores de engranajes que mueven las huellas del tanque para impulsar el robot.

También usa comandos en serie para controlar un servocontrol que posiciona los tres servos que operan los movimientos del cuerpo, la cabeza y la pinza.

Puede controlarse mediante un control remoto de TV estándar o puede funcionar de forma autónoma.

La hormiga robot utiliza construcción modular. Cada circuito es un módulo que se conecta a los zócalos de cabecera de.1 ". Esto facilita la prueba de cada circuito en una placa de pruebas antes de que se instale. También hace que los módulos estén disponibles para el próximo robot u otro proyecto.

Para obtener detalles sobre cómo hacer estos módulos, consulte:

La hormiga robot tiene aproximadamente 12 pulgadas de largo y se hizo intencionalmente más grande de lo necesario para permitir más circuitos. Tengo la intención de usarlo como una plataforma de prueba para sensores de piel y sensores de antena en los que estoy trabajando.

Paso 2: Piezas y piezas

Piezas de Sparkfun:http://www.sparkfun.com/index

Microcontrolador PICAXE 20X2

www.sparkfun.com/products/9432

Cargador de litio polimérico

www.sparkfun.com/products/8293

2- 3.7v. Batería de iones de litio de polímero - 110mAh

www.sparkfun.com/products/731

2-3.7v. Batería de iones de litio de polímero - 1000mAh

www.sparkfun.com/products/339

Estas baterías de LiPo son excelentes porque son ligeras con un perfil bajo y no pierden la carga rápidamente cuando no están en uso, como lo hacen las baterías de litio normales. También tienen un circuito incorporado que protege contra cortocircuitos y sobrecargas.

Piezas de Polulu:

Pololu Micro Dual Serial Motor Controller: este controlador de motor muy pequeño ya no está disponible, pero podría reemplazarse con este: Pololu Qik 2s9v1 Dual Serial Motor Controller-http: //www.pololu.com/catalog/product/1110

Micro Servo Controller Serial de Pololu (kit parcial) -http: //www.pololu.com/catalog/product/208

Regulador de voltaje reductor de Pololu D15V35F5S3

Sensor de distancia analógico Sharp GP2Y0A21YK0F

www.pololu.com/catalog/product/136

Partes de la torre de pasatiempos:

3- Servos Futaba S3114 Micro High Torque

www3.towerhobbies.com/cgi-bin/wti0001p?&I=LXNCV6&P=ML

Estos son servos muy pequeños y potentes por su peso.

Motorreductores y bandas de rodadura de Solarbotics:

Motor de engranajes y paquete de la banda de rodadura: http: //www.solarbotics.com/products/gmtpkg/

Módulo receptor de Panasonic PNA4602M IR de:

www.hobbyengineering.com/H1527.html

Piezas de Mouser.com:

Varios condensadores, resistencias y LEDs.

TABLA DE PERF SOLDABLE, PATRÓN DE LÍNEA: se utiliza para fabricar módulos y la placa base del robot:

www.allelectronics.com/make-a-store/item/ECS-4/SOLDERABLE-PERF-BOARD-LINE-PATTERN//1.html

La foto del paso 2 muestra las tres cúpulas de policarbonato que protegen el abdomen, el tórax y la cabeza de la hormiga robot. Fueron cortados por sierra y luego lijados a disco para dar forma. Fueron hechos de partes de un kit de fabricación de globos de nieve que ya no está disponible. Algo similar podría hacerse usando partes de vasos de vino de plástico. O bien, se podría hacer una cáscara opaca más flexible desde Oogoo:

Paso 3: Hacer una pinza de robot

Cómo funciona

La mandíbula de hormiga es una pinza muy simple que funciona al mantenerse cerrada por un resorte. Una leva en el lado inferior es girada por un servo para abrirla. Por lo tanto, cuando se cierra la pinza abierta, se agarrará con la fuerza del resorte y se sujetará firmemente a objetos de varios diámetros. Los dos lados de la pinza son bastante suaves y tiran del objeto que está siendo agarrado hacia un tope de goma que evita que el objeto se deslice hacia abajo mientras se levanta.

Este diseño permite que el servo gire libremente en sentido contrario a las agujas del reloj o en el sentido de las agujas del reloj y no se necesitan sensores de presión o interruptores de parada para agarrar un objeto.

Los dedos y el cuerpo de la pinza para hormigas se fabricaron con material de placa de circuito FRS revestido de cobre. Los cojinetes de pivote están a solo 4-40 tornillos a través de orificios perforados en la placa de circuito.

Las fotos de step3 muestran la parte superior e inferior de la pinza.

Paso 4: Microcontrolador Picaxe 20x-2

Los microcontroladores Picaxe son, en mi opinión, altamente subestimados. Tienen un factor de forma muy pequeño que requiere un mínimo de partes externas. Son económicos y muy fáciles de programar en el lenguaje de programación BASIC intuitivamente obvio. En resumen, son los microcontroladores más fáciles de aprender para conectar y programar.

El Picaxe 20x-2 es mi microcontrolador favorito. Tiene un montón de entradas y salidas y muchas entradas ADC. Puede operar tan alto como 64 MH. Tampoco requiere más de 1 resistencia (para evitar que Serin flote) para crear un módulo independiente.

Controlando La Hormiga Robótica

El Picaxe envía comandos en serie al controlador del motor y al servocontrol. Siguen manteniendo el último comando recibido. Esto le permite al Picaxe pasar su tiempo escaneando sus sensores para determinar la próxima respuesta.

Habitacion Para Expansion

En esta aplicación solo se usó aproximadamente 1/3 del espacio de programación. Se usaron menos de 1/3 de las entradas y pines de salida, lo que deja mucho espacio para más sensores o actuadores.

Para obtener detalles sobre cómo hacer módulos Picaxe rápidos usando perfboard, consulte:

www.instructables.com/id/Picaxe-Projects-1-Making-Fast-Printed-Circuit-Mo/

Para un micro robot muy pequeño controlado por un Picaxe ver:

www.instructables.com/id/Building-Small-Robots-Making-One-Cubic-Inch-Micro/

Para un robot aún más pequeño controlado por un Picaxe ver:

www.instructables.com/id/Build-a-Very-Small-Robot-Make-The-Worlds-Smalles/

Las fotos en miniatura del paso 4 muestran la parte superior e inferior del módulo Picaxe.

Paso 5: Controlador de motor serial

El controlador del motor Polulu recibe comandos en serie del controlador Picaxe para controlar los dos motores de engranajes que mueven las huellas del tanque. Una vez que se envía un comando en serie para activar un motor, el motor se mueve como se indica hasta que Picaxe envía un nuevo comando. Esto permite que el microcontrolador Picaxe envíe comandos y luego vuelva a la detección del sensor. Los motores pueden ser controlados por velocidad y dirección.

Las pisadas del tanque vienen en un kit y se pueden configurar como un tanque regular o en la versión de tres ruedas, como hice yo. Para hacer esto tuve que comprar dos ruedas locas extra.La rueda motriz y las ruedas guía se montaron en una placa de circuito de fibra de vidrio FRS con revestimiento de cobre estándar que se pintó.

Paso 6: Sensor de distancia infrarrojo

He experimentado con varios sensores ultrasónicos y si bien son buenos para detectar objetos más grandes como paredes o personas, envían una viga relativamente ancha que no tiene la precisión necesaria para alinear una pinza con un objeto pequeño.

El sensor de distancia infrarrojo Sharp envía un rayo infrarrojo invisible y luego mide el ángulo de la luz reflejada para detectar la presencia de un objeto y su distancia. Es bastante preciso y sensible y puede detectar un lápiz vertical a un pie de distancia. Puede detectar un objeto o una pared desde 4 a 32 pulgadas.

Mide la distancia al objeto y luego genera un voltaje que es proporcional a la distancia. Esto se envía a una entrada del controlador Picaxe y su ADC (convertidor analógico a digital) se usa para convertir la tensión en un número que el programa interpreta para decirle al robot a qué distancia está el objeto.

La imagen del paso 6 muestra el sensor afilado que es el rectángulo negro con dos lentes.

Paso 7: Esquema de la hormiga robot

Aquí está el esquema de la hormiga robot. Las fotos en miniatura lo muestran agrandado.

Cosas a tener en cuenta al interconectar los diferentes módulos:

Por lo general, es una buena idea mantener fuentes de alimentación separadas para los circuitos de control y los motores. Los motores y servos pueden ser eléctricamente ruidosos y esto puede interrumpir un microcontrolador. También es una buena idea mantener los microcontroladores a una buena distancia de los motores y servos para que no se vean afectados por los campos magnéticos.

Si bien no es necesario tener un controlador de voltaje para los motores, brinda un movimiento más consistente si el voltaje se mantiene constante.

Mantenga una resistencia de 270 ohm a 1kohm entre las salidas de los sensores y las entradas Picaxe para evitar cortocircuitos accidentales en cualquiera de los dispositivos.

El sensor de distancia infrarrojo Sharp resultó ser extremadamente ruidoso eléctricamente. Cuando me enganché en una placa de pruebas al Picaxe, funcionó bien. Tan pronto como se instaló en el robot, la Picaxe dejó de funcionar. Resolví el problema colocando un condensador 10uf en las entradas de alimentación del sensor Sharp. Esto redujo las fluctuaciones de voltaje a la fuente de alimentación que estaba creando.

Paso 8: Programando el Robot Ant

Cómo funciona

En el modo de recogida autónoma, el robot gira a la derecha buscando un objeto. Si no encuentra nada, se detendrá después de girar 360 grados. Cuando se detecta un objeto, se detiene y corrige la dirección excesiva y al usar la distancia medida para el objeto detectado, avanza una distancia específica. Luego cierra la pinza y la levanta.

Control remoto

En el modo de control remoto, el robot espera una señal ya sea para un movimiento como el avance o un comando en el modo autónomo. Se puede configurar un control remoto universal de TV estándar para emitir el código de Sony TV que el Picaxe puede descodificar. El módulo receptor de Panasonic recibe el infrarrojo del control remoto.

Aquí está el código de programación para la hormiga robot:

'hormiga robot, picaxe 20x-2

deja dirsc =% 00000000

setfreq m8

pausa 2000

'loop22:' prueba del sensor de distancia infrarrojo

'readadc 7, b4

'debug b4

'goto loop22

startreset: 'resetear para empezar

serout c.0, t2400, ($ 80, $ 01, $ 01,2,30) 'set4 para servo #, velocidad set5 de 0 a127

serout c.0, t2400, ($ 80, $ 01, $ 04,2,26,30) 'cuerpo abajo 26

pausa 200

serout c.0, t2400, ($ 80, $ 01, $ 01,1,30) 'velocidad establecida último # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,1,26,127) 'cerrar pinza 26

pausa 200

serout c.0, t2400, ($ 80, $ 01, $ 01,0,20) 'velocidad establecida último # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,0,26,127) 'centro de la cabeza

pausa 1000

loopinfra: 'control remoto de movimientos o activar secuencias autónomas

bajo c.1 'ojo azul

alto c.2 'ojo azul

irin c.5, b6

si b6 = 0 entonces act1 'botón remoto1 = 0

si b6 = 1 entonces forw 'b2

si b6 = 2 entonces act2 'b3

si b6 = 3 entonces izquierda 'b4

si b6 = 4 entonces stop1 'b5

si b6 = 5 entonces a la derecha 'b6

si b6 = 6 entonces act3 'b7

si b6 = 7 entonces rev1 'b8

si b6 = 8 entonces biteme 'ataque

'Si b6 = 59 entonces biteme' ataque

si b6 = 11 entonces putdwn 'enter put down

si b6 = 21 entonces startreset 'reset servos

'debug b6

goto loopinfra

act1: 'robot ant lunas del mundo

gosub forw2

pausa 2500

gosub bodyup2

gosub left2

gosub headleft2

pausa 300

gosub forw2

pausa 1200

gosub stop2

gosub forw2

pausa 500

gosub stop2

gosub headright2

alto c.1 'ojo rojo l

bajo c.2 'ojos rojos r

pausa 1000

gosub right2

pausa 2500

gosub headcenter2

gosub bodydwn2

gosub rev2

pausa 2500

gosub stop2

gosub leftfast

pausa 500

gosub stop2

gosub rightfast

pausa 500

gosub leftfast

pausa 500

gosub stop2

gosub rightfast

pausa 500

gosub stop2

pausa 2200

gosub forw2

gosub bodyup2

pausa 3500

gosub opengrip2

pausa 500

gosub stop2

goto loopinfra

muérdeme:

gosub forw2

b8 = 1

para b8 = 1 a 175

'encontrar obstáculo

alto c.2 'ojo rojo l

bajo c.1 'ojos rojos r

readadc 7, b4

si b4> 60 y b4 <135 entonces siguiente3

pausa 30

siguiente b8

goto loopinfra

next3:

gosub stop2

gosub bodydwn2

gosub opengrip2

pausa 100

gosub bodyup2

gosub forw2

pausa 300

gosub closegrip2

pausa 900

gosub stop2

gosub rev2

gosub bodydwn2

pausa 6000

gosub stop2

goto loopinfra

act2: 'Recogida, bajada

'adelante

serout c.0, t2400, (128,0,1,100) 'delantero derecho 20min a 127

serout c.0, t2400, (128,0,2,100) 'delantero izquierdo 20min

pausa 4500

gosub stop2

pausa 100

'encontrar bloque

b8 = 1

para b8 = 1 a 75

'encontrar bloque y recogida

alto c.2

bajo c.1

gosub right2

readadc 7, b4

si b4> 61 y b4 <164 entonces detecte 0 '34 -75

pausa 50

siguiente b8

gosub stop2

goto loopinfra

detect0: 'detener y corregir

gosub stop2

'girar a la izquierda lento

serout c.0, t2400, (128,0,1,60) 'delantero derecho 20min a 127

serout c.0, t2400, (128,0,3,60) 'rev left 20min

pausa 240

gosub stop2

pausa 100

bajo c.2 'ojo rojo

ojo rojo alto c.1 '

'hacia adelante, recogida

gosub opengrip2

pausa 1000

gosub forw2

si b4 <50 entonces pa1

si b4 <60 entonces pa2

si b4 <70 entonces pa3

si b4 <80 entonces pa4

si b4 <90 entonces pa5

si b4 <104 entonces pa6

pa1:

pausa 9000

Goto Stopat

pa2:

pausa 5920

Goto Stopat

pa3:

pausa 3800

Goto Stopat

pa4:

pausa 2800

Goto Stopat

pa5:

pausa 2100

Goto Stopat

pa6:

pausa 980

Goto Stopat

detente en:

gosub stop2

pausa 200

'agarre cerrado

serout c.0, t2400, ($ 80, $ 01, $ 01,1,30) 'velocidad de última configuración # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,1,26,127) 'cerrar pinza 26

pausa 2000

gosub bodyup2

'suelte

gosub leftfast

pausa 1400

gosub stop2

gosub forw2

pausa 1800

gosub stop2

gosub bodydwn2

gosub opengrip2

pausa 500

'relamerse

gosub rev2

pausa 2000

gosub stop2

gosub bodyup2

gosub headleft2

gosub headright2

gosub headcenter2

bajo c.1 'ojo azul

alto c.2 'ojo azul

goto loopinfra

act3: 'pinza abierta y adelante

'hacia adelante, recogida

gosub opengrip2

pausa 400

gosub forw2

pausa 280

gosub stop2

goto loopinfra

act4: 'cerrar pinza y levantar

gosub closegrip2

pausa 600

gosub bodyup2

goto loopinfra

'' *** gosubs

leftslow

'girar a la izquierda lento

serout c.0, t2400, (128,0,1,60) 'delantero derecho 20min a 127

serout c.0, t2400, (128,0,3,60) 'rev left 20min

pausa 220

gosub stop2

regreso

parada2:

serout c.0, t2400, (128,0,0,0) 'hard stop right

serout c.0, t2400, (128,0,6,0) 'parada dura a la izquierda

regreso

forw2:

serout c.0, t2400, (128,0,1,100) 'delantero derecho 20min a 127

serout c.0, t2400, (128,0,2,100) 'delantero izquierdo 20min

regreso

left2:

serout c.0, t2400, (128,0,1,100) 'delantero derecho 20min

serout c.0, t2400, (128,0,3,100) 'rev left 20min

regreso

right2:

serout c.0, t2400, (128,0,2,100) 'delantero izquierdo 20min

serout c.0, t2400, (128,0,0,100) 'rev right 20min

regreso

rev2:

'detener

serout c.0, t2400, (128,0,0,0) 'hard stop right

serout c.0, t2400, (128,0,6,0) 'parada dura a la izquierda

pausa 50

'marcha atrás

serout c.0, t2400, (128,0,0,100) 'rev right 20min

serout c.0, t2400, (128,0,3,100) 'rev left 20min

regreso

opengrip2:

serout c.0, t2400, ($ 80, $ 01, $ 01,1,30) 'set4 para servo #, velocidad set5 de 0 a127

serout c.0, t2400, ($ 80, $ 01, $ 04,1,13,127) 'pinza abierta, 13

pausa 1000

regreso

closegrip2:

serout c.0, t2400, ($ 80, $ 01, $ 01,1,30) 'velocidad establecida último # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,1,26,127) 'cerrar pinza 26

pausa 2000

regreso

headleft2:

serout c.0, t2400, ($ 80, $ 01, $ 01,0,20) 'set4 para servo #, velocidad set5 de 0 a127

Serout c.0, t2400, ($ 80, $ 01, $ 04,0,15,127) 'cabeza izquierda 15

pausa 800

regreso

headright2:

'serout c.0, t2400, ($ 80, $ 01, $ 01,0,20)' velocidad establecida último # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,0,32,127) cabeza derecha 30

pausa 1600

regreso

headcenter2:

serout c.0, t2400, ($ 80, $ 01, $ 01,0,20) 'velocidad establecida último # de 0 a 127

serout c.0, t2400, ($ 80, $ 01, $ 04,0,26,127) 'centro de la cabeza

pausa 500

regreso

bodyup2:

serout c.0, t2400, ($ 80, $ 01, $ 01,2,30) 'set4 para servo #, velocidad set5 de 0 a127

serout c.0, t2400, ($ 80, $ 01, $ 04,2,13,30) 'body up, 13

pausa 220

regreso

bodydwn2:

serout c.0, t2400, ($ 80, $ 01, $ 01,2,30) 'set4 para servo #, velocidad set5 de 0 a127

serout c.0, t2400, ($ 80, $ 01, $ 04,2,26,30) 'cuerpo abajo 26

pausa 200

regreso

a la izquierda

serout c.0, t2400, (128,0,1,127) 'delantero derecho 20min

serout c.0, t2400, (128,0,3,127) 'rev left 20min

regreso

a la derecha

serout c.0, t2400, (128,0,2,127) 'delantero izquierdo 20min

serout c.0, t2400, (128,0,0,127) 'rev right 20min

regreso

Paso 9: Otras Posibilidades

Circuitos más pequeños

Hay disponible una versión de montaje en superficie del Picaxe 20x-2 para hacer módulos de microcontroladores aún más pequeños. Para obtener detalles sobre los componentes de montaje superficial de soldadura fácil, consulte aquí:

www.instructables.com/id/Advanced-Soldering-Fast-and-Easy-Soldering-of-Sur/

Anillo de control remoto

La hormiga robot puede ser controlada por otros controladores Picaxe configurados para emitir señales infrarrojas de Sony. Para obtener detalles sobre cómo hacer un anillo de control remoto que pueda controlar el robot, consulte aquí:

Neuronas Robot

Una hormiga biológica tiene entre 200 y 3000 neuronas trabajando en paralelo para controlar sus movimientos. Si consideramos que un microcontrolador es una neurona muy burda, la hormiga robot tiene el equivalente de 4 neuronas. El Picaxe, el servocontrol, el controlador del motor y el sensor infrarrojo tienen cada uno un microcontrolador como parte del módulo. Se necesitarán muchos más microcontroladores que esto para lograr el increíble procesamiento paralelo incluso de sistemas biológicos simples.

Pelos de hormigas

Las hormigas biológicas tienen cientos de pelos finos y cada una es un sensor sensible al tacto. El principal problema con los robots hoy en día no es la falta de potencia de procesamiento, sino la falta de sensores sensibles en grandes cantidades. Se necesitarán muchos más sensores para hacer que esta hormiga robot se acerque más a las increíblemente finas manipulaciones de una hormiga real.

Cortador láser y robots más pequeños

Se podría utilizar un cortador láser para hacer algunas piezas de precisión para hacer una impresora micro 3d. La impresora se usaría para hacer partes aún más pequeñas para un robot microscópico. El robot microscópico podría utilizarse para manipular objetos en la escala de las moléculas.

Tercer premio en el

Semana Nacional de Robótica del Concurso de Robots.