Electronica

Ξ 58 comentarios

Cómo construir un robot que siga una línea (line follower)

por Xabadu
Cómo construir un robot que siga una línea (line follower)

Todas las personas tenemos alguna habilidad, y si bien en Cómo Lo Hago ya tenemos un experto en electrónica, desde hoy me gustaría compartir con ustedes una de mis especialidades (o al menos a eso me he dedicado a estudiar), proyectos de Robótica.

Hace algunos años participé en un entretenido concurso de Mecatrónica en la Universidad del Valle de México (en Ciudad de México), y hoy publicaré en este artículo uno de los robots que presenté, un clásico “seguidor de líneas” (o denominado en competencias internacionales como line follower), más adelante seguiremos con una sonda de exploración integrado con paneles solares, pero… vamos de a poco.

Luego del salto podrán continuar leyendo este tutorial.

Cómo construir un robot que siga una línea (line follower)

mecatronica

Campos de la Mecatrónica

Un clásico ejercicio para cualquier estudiante de Ingeniería en Robótica, Mecatrónica o Electrónica (en algunos casos), es construir un robot que siga una línea, básicamente porque esto integra muchas áreas de las ciencias, permitiendo desarrollar un conocimiento empírico sobre el control automático.

En la actualidad se realizan concursos en todo el mundo, generalmente patrocinados por el IEEE, que miden desde el tiempo que demora el robot en recorrer la pista, hasta en la calidad de detectar anomalías en la ruta.

Una de las técnicas mas usadas para cumplir este propósito es el Puente H, que permite ante un impulso, girar un motor eléctrico DC y de esta forma tener un rápido tiempo de reacción (casi instantáneo) para seguir una ruta, no obstante, hoy les enseñaremos cómo seguir una línea con un poco mas de inteligencia artificial usando un microcontrolador (Basic Stamp) y fotorresistencias.

Materiales:

  • Microcontrolador Basic Stamp (modelo BS2-IC).
  • 2 Servomotores.
  • 2 Fotorresistencias (o también llamadas fotorresistores).
  • 2 Capacitores (0,1 uF)
  • 2 Capacitores (0,015 uF)
  • 2 Resistencias (220 ohms).
  • Batería de 6 voltios.
  • Cable RS232 para comunicarnos con el computador (pueden considerar opcionalmente un conversor USB-RS232 en la medida que no tengan este puerto en su computador).
  • Software Stamp Editor (descargable desde este link).
  • Cartulinas negras y papeles blancos (para construir la pista).

Procedimiento:

El primer paso es construir nuestra pista, es importante probar con más de un diseño, debido a que en las competencias las pistas suelen varias en cada etapa, y nuestro robot debe ser capaz de enfrentar situaciones complejas (curvas cerradas), así cómo también tener una tolerancia correcta de la luz (lo veremos mas adelante en el algoritmo).

Luego que hemos construido nuestras pistas comenzamos a implementar nuestro circuito directamente en nuestro Basic Stamp, una de las razones por las cuales hemos escogido este dispositivo para el tutorial es debido a que integra una placa de pruebas (o protoboard), conectado directamente a nuestro controlador BS2, en otras palabras está todo integrado, de esta forma sólo necesitamos conectar nuestro circuito.

Procesador: 20 mhz, procesa 4.000 instruciones por segundo, contiene una memoria EEPROM de 2 KBytes, usa de 5 a 12 V(dc) y su interfaz nativa es serial.

A continuación les presentamos un diagrama del circuito:

Diagrama del circuito de fotorresistencias

Diagrama del circuito de fotorresistencias

Fotorresistencia

Fotorresistencia

Las fotorresistencias son utilizadas para detectar variaciones en el nivel de intensidad de la luz, en este caso cómo se genera un contraste entre el blanco de la línea y el negro del fondo, nuestro robot las utiliza para denotar cuando se presenta una curva.

Un fotorresistor es un resistencia cuyo valor depende de la intensidad de luz (también se conocen como LDR: light dependent resistor), y cubren un espectro similar al ojo humano. Los elementos activos de estos fotorresistores están hechos de sulfuro de cadmio (CdS). La luz entra en la capa smiconductora que está aplicada sobre un sustrato cerámico.

En nuestro ejercicio utilizaremos este dispositivo para medir la luminancia (que se mide en lux), el objetivo es que nuestro robot gire hacia la luz (en este caso la línea blanca).

Robot Prototipo de silla de ruedas con fotorresistores presentado en el concurso.

Robot Hoper: Prototipo de silla de ruedas con fotorresistores presentado en el concurso en México.

Cómo pueden ver en la imagen las fotorresistores mantendrán una distancia asociada al ancho de nuestra pista para ir identificando las variaciones de lux, adicionalmente en la imagen podrán apreciar que nuestro robot que estaba en los “huesos” se ha transformado en una silla… Personalmente creo que cada proyecto que uno construye debe ir un poco más allá, y transformarse eventualmente en un aporte para la sociedad, esta silla de ruedas fue pensada para gente minusválida para que pudieran trasportarte de forma más fácil por algunos establecimientos (ejemplo: clínicas, hospitales, universidades, etc.).

A continuación les dejó el mismo diagrama del circuito presentado anteriormente, pero con un dibujo mucho mas amigable para realizar las conexiones en la protoboard del Basic Stamp.

Para llegar y conectar

Una vez que tengamos nuestro circuito conectado, podemos montar la Basic Stamp en una arquitectura mecánica con ruedas, donde instalaremos los servomotores. Nuestro modelo consta de 2 servomotores y cumplen la función tracción y dirección. Están montados en un chasis de madera que es la base de la silla de rueda.

Estos motores tienen retroalimentación de posición interna con rangos de giros típicos de 90º y 180º, gneran una gran fuerza y torque con un bajo consumo de energía haciéndolos ideales para nuestro objetivo. Cabe destacar que el sistema entero es alimentado por 4 baterías AA de 1,5 voltios generando una diferencia potencial de 6 voltios ubicados en el mismo chasis.

Servomotores

Servomotores: Las médidas son presentadas a modo de ejemplo, pero pueden variar.

Cómo pueden apreciar en la parte superior de los servomotores se indican los 3 cables que debemos conectar a nuestro Basic Stamp (tierra, voltaje directo y finalmente el cable que recibe los pulsos desde el microcontrolador).

Imagen referencial

El siguiente paso es programar nuestro robot, y para ello ocuparemos la conexión serial, tal cómo lo indicamos en la descripción de materiales si tu computador no tiene una conexión de este tipo, puedes usar un conversar serial-usb.

Algoritmo:

A continuación presentamos el algoritmo programado en el lenguaje nativo de los Basic Stamp, PBasic. Cómo podrán apreciar el código está comentado con una comilla simple ‘ para explicar que acción ejecuta cada línea.

‘ {$STAMP BS2}
‘ {$PBASIC 2.5}

‘————-[ Line non-twitter Follower de CLH ]—————
‘ Archivo……………CLH Follower.bs2
‘ Propósito………….Tutorial CLH
‘ Autor……………..Goten
‘ E-mail…………….guillermodiazs@gmail.com
‘ Fecha de Desarrollo….03/12/09

‘——- [Descripción del Programa ] ————-

‘   El programa consiste basicamente en recorrer la pista, siguiendo la línea blanca con gran fidelidad mediante el uso de fotoresistencias ubicadas en el robot como “bigotes” a una distancia de 5cm. el uno del otro, que determinen la luminosidad que se encuentra bajo ellos y con lo cual se puede determinar el momento exacto en que comience una curva, debido a que el rango de luminosidad que reciben las fotoresistencias cambiará, y el robot doblará en esa dirección.

‘———-[ Declaración de variables ]———–

fizquierdo VAR Word           ‘  Almacenan los tiempos RC del fotoresistores izquierdo y derecho
fderecho VAR Word
x VAR Word

‘—————[ Inicialización ]————–

DEBUG CLS                    ‘  Abre y limpia la pantalla de datos
OUTPUT 2                     ‘  Fija P2 como salida
FREQOUT 2,2000,3000   ‘  Indicador de reset

inicio:

PULSOUT 12, 600            ‘  Aplica un pulso para avanzar (los servos están conectados en estos puntos).
PULSOUT 13, 900            ‘

HIGH 5                           ‘  Fija P5 como salida alta (fotorresistor)
PAUSE 3                          ‘  Pause de 3ms
RCTIME 5, 1, fizquierdo    ‘  Mide el tiempo de RC en eP5

HIGH 3                           ‘  Fija P3 como salida alta (fotorresistor)
PAUSE 3                          ‘  Pause de 3ms
RCTIME 3, 1, fderecho      ‘  Mide el tiempo de RC en eP3

IF fizquierdo  > 40 AND fderecho  > 50 THEN inicio            ‘  Condiciones que dependiendo de
IF fizquierdo  < 40 AND fderecho  > 50 THEN irizquierda    ‘  los tiempos de RC recibidos
IF fizquierdo  > 40 AND fderecho  < 50 THEN irderecha      ‘  determinan que subrutina seguir.

* Este es el momento donde dirime que hacer.

GOTO inicio                ‘  regresa a inicio
irderecha:                   ‘ aplica un pulso a la derecha por un tiempo determinado

FOR x=1 TO 20            ‘  por la variable x
PULSOUT 12,790
PULSOUT 13, 1000
NEXT
GOTO inicio                ‘  regresa a inicio

irizquierda:                 ‘ aplica un pulso a la izquierda por un tiempo determinado

FOR x=1 TO 20           ‘  por la variable x
PULSOUT 12,500
PULSOUT 13, 750
NEXT
GOTO inicio                ‘  regresa a inicio

‘————– Fin del programa —————

Cargan esta información en la EEPROM del Basic Stamp utilizando el mismo software descargado en la lista de materiales y listo, han construido su primer line follower.

Les llamará la atención que en los materiales indicamos 2 tipos de capacitores, y luego en el diagrama sólo mostramos 1 tipo,  esto es debido a que un fotorresitor es un dispositivo analógico y su valor cambia en forma continua de acuerdo a la luminancia, que es otro valor analógico. La resistencia del fotorresitor es muy baja cuando se expone directamente a la luz del sol. A medida que desciende el nivel de luz, su resistencia aumenta. En completa oscuridad, la resistencia del fotorresitor puede alcanzar valores muy altos. Aunque el fotorresitor es analógico, esto no quiere decir que sea lineal. Esto significa que si la fuente de luz (luminancia) varía a una proporción constante, el valor del fotorresitor no necesariamente variará a una proporción constante. El objetivo de contar con capacitores de distinta capacidad es que ustedes puedan cambiarlos según las condiciones de luz y tener un resultad mucho más efectivo.

Imagen Referencial: Goten’s Lab

A continuación les dejo un video de ejemplo (les pido disculpas de antemano por la calidad, pero no contaba con una buena cámara).

Les agradezco la paciencia de haber leído este tutorial y espero sinceramente que les haya gustado, si tienen dudas o consultas, no duden en escribirnos en la sección de comentarios más adelante, para finalizar agradezco y cito las licencias de las siguientes imágenes:

Cordialmente,

Comparte este tutorial

El culpable de todo esto

Las tardes gloriosas de domingo y las grandes ovaciones a estadio lleno, no son algo extraño para Xabadu. Luego de ser descubierto a los 4 años en un partido de barrio por los ojeadores del gran Aviación F.C., sacudió el mercado nacional al ser traspasado en $500 pesos chilenos (1 USD) y 3 coca colas al renombrado Estrella Blanca de Lolol. Luego de una impresionante carrera por equipos como Lozapenco, Santa Cruz, Deportivo Lago Chungará y una incursión en la 3a división del futbol de Kazajstan, su record imbatible hasta la fecha de 1257 goles en 20 partidos lo llevo a ser elegido como uno de los arqueros más recordados en la historia pelotera nacional. Una lesión en el colmillo superior derecho lo llevó al retiro el año 2003, pero está de vuelta y sin duda que su jerarquía y experiencia internacional será un gran aporte.

En los barrios marginales se le conoce como: Xabadu

Comentarios en Facebook

58 Comentarios

  • como consigo el micro en chile?

  • En 1997 una chica llamada lauren, estaba caminando en un bosque,despues desaparecio de repente nunca nadie la encontro hasta el 2000 cuando otra chica llama Mary encontro su cuerpo y unas marcas en su pecho decian: no era lo suficiente hermosa” y ahora que haz leido esto ella aparecera en tu espejo diciendo que no eres lo suficientemente hermoso y te matara!(por cierto la chica llamada Mary murio poco despues)Para poder salvarte pega esto en otras 10 preguntas mas .ESTO ES CIERTO

  • mm super bueno voy a hacer uno pero una pregunta
    cual de todoslos sofward se deve descargar???

  • Y cuanto sale en plata $.. está buena la idea. Se agradece compartir el conocimiento y experiencia.

  • nesesito q me especifikes donde ban los cables de los serbo motores soy de 2 medio y resien estoy integrandome a lo electronico ok porfavor gracias por tu ayuda

  • una consulta se puede usar el BASIC Stamp 2 FULL KIT USB y un cable usb obviamente??

  • азартные игры бесплатно автоматы играть и на каком сайте лучше играть в покер на деньги онлайн Интернет Покер На Деньги Qiwi азартные игры на деньги в украине.

  • пирамида азартная игра онлайн игры с выводом денег играть игровой автомат пирамида.

1 4 5 6

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Gente linda que nos quiere

Donde mas estamos

news-1701

sabung ayam online

yakinjp

yakinjp

rtp yakinjp

slot thailand

yakinjp

yakinjp

yakin jp

yakinjp id

maujp

maujp

maujp

maujp

slot mahjong

SGP Pools

slot mahjong

sabung ayam online

slot mahjong

SLOT THAILAND

article 999990036

article 999990037

article 999990038

article 999990039

article 999990040

article 999990041

article 999990042

article 999990043

article 999990044

article 999990045

article 999990046

article 999990047

article 999990048

article 999990049

article 999990050

article 710000081

article 710000082

article 710000083

article 710000084

article 710000085

article 710000086

article 710000087

article 710000088

article 710000089

article 710000090

article 710000091

article 710000092

article 710000093

article 710000094

article 710000095

article 710000096

article 710000097

article 710000098

article 710000099

article 710000100

article 710000101

article 710000102

article 710000103

article 710000104

article 710000105

article 710000106

article 710000107

article 710000108

article 710000109

article 710000110

article 710000111

article 710000112

article 710000113

article 710000114

article 710000115

article 710000116

article 710000117

article 710000118

article 710000119

article 710000120

cuaca 638000021

cuaca 638000022

cuaca 638000023

cuaca 638000024

cuaca 638000025

cuaca 638000026

cuaca 638000027

cuaca 638000028

cuaca 638000029

cuaca 638000030

cuaca 638000031

cuaca 638000032

cuaca 638000033

cuaca 638000034

cuaca 638000035

cuaca 638000036

cuaca 638000037

cuaca 638000038

cuaca 638000039

cuaca 638000040

cuaca 638000041

cuaca 638000042

cuaca 638000043

cuaca 638000044

cuaca 638000045

cuaca 638000046

cuaca 638000047

cuaca 638000048

cuaca 638000049

cuaca 638000050

cuaca 638000051

cuaca 638000052

cuaca 638000053

cuaca 638000054

cuaca 638000055

cuaca 638000056

cuaca 638000057

cuaca 638000058

cuaca 638000059

cuaca 638000060

cuaca 638000061

cuaca 638000062

cuaca 638000063

cuaca 638000064

cuaca 638000065

cuaca 638000066

cuaca 638000067

cuaca 638000068

cuaca 638000069

cuaca 638000070

cuaca 638000071

cuaca 638000072

cuaca 638000073

cuaca 638000074

cuaca 638000075

cuaca 638000076

cuaca 638000077

cuaca 638000078

cuaca 638000079

cuaca 638000080

cuaca 638000081

cuaca 638000082

cuaca 638000083

cuaca 638000084

cuaca 638000085

cuaca 638000086

cuaca 638000087

cuaca 638000088

cuaca 638000089

cuaca 638000090

cuaca 638000091

cuaca 638000092

cuaca 638000093

cuaca 638000094

cuaca 638000095

cuaca 638000096

cuaca 638000097

cuaca 638000098

cuaca 638000099

cuaca 638000100

cuaca 898100101

cuaca 898100102

cuaca 898100103

cuaca 898100104

cuaca 898100105

cuaca 898100106

cuaca 898100107

cuaca 898100108

cuaca 898100109

cuaca 898100110

cuaca 898100111

cuaca 898100112

cuaca 898100113

cuaca 898100114

cuaca 898100115

cuaca 898100116

cuaca 898100117

cuaca 898100118

cuaca 898100119

cuaca 898100120

cuaca 898100121

cuaca 898100122

cuaca 898100123

cuaca 898100124

cuaca 898100125

cuaca 898100126

cuaca 898100127

cuaca 898100128

cuaca 898100129

cuaca 898100130

cuaca 898100131

cuaca 898100132

cuaca 898100133

cuaca 898100134

cuaca 898100135

article 868100071

article 868100072

article 868100073

article 868100074

article 868100075

article 868100076

article 868100077

article 868100078

article 868100079

article 868100080

article 868100081

article 868100082

article 868100083

article 868100084

article 868100085

article 868100086

article 868100087

article 868100088

article 868100089

article 868100090

article 888000081

article 888000082

article 888000083

article 888000084

article 888000085

article 888000086

article 888000087

article 888000088

article 888000089

article 888000090

article 888000091

article 888000092

article 888000093

article 888000094

article 888000095

article 888000096

article 888000097

article 888000098

article 888000099

article 888000100

article 328000646

article 328000647

article 328000648

article 328000649

article 328000650

article 328000651

article 328000652

article 328000653

article 328000654

article 328000655

article 328000656

article 328000657

article 328000658

article 328000659

article 328000660

news-1701