Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Chasisrobotica
La plataforma que nos permitirá conseguir el movimiento de nuestro robot está compuesta por
los siguientes elementos:
2 motores de corriente continua (motor CC) acoplados a ruedas neumáticas se encargan de dar
tracción
Protoboard
1 driver L298n
Driverl298n
El driver L298n nos permitirá gobernar los motores de corriente continua con las ruedas
acopladas y, por tanto, gobernar el movimiento de nuestro vehículo. Se recomienda leer el
artículo para más información.
Tcrt5000
El sensor de infrarrojos nos permitirá detectar la presencia de una línea negra y de esta manera
enrutar nuestra trayectoria para poder seguirla (más información sobre este sensor)
Cables
Estos cables nos permiten conectar de manera sencilla todos los elementos del
circuito.Tecnopatafisica: física, química, tecnología,informática al alcance de todos
Arduino: “Robot siguelíneas”
Introducción
En este tutorial explicaremos el procedimiento para crear un robot móvil con Arduino usando
nuestros conocimientos previos adquiridos tras la lectura de los correspondientes artículos
publicados en este blog, sobre el sensor de infrarrojos TCRT5000 (ver artículo) y sobre los
motores de corriente continua (ver artículo) para crear un interesante robot móvil en el que
usaremos los 2 componentes de manera conjunta.
El objetivo de nuestro proyecto será crear un robot móvil que siga el recorrido marcado por
una línea negra. El robot detectará con sensores de infrarrojos la presencia de la línea negra
para poder rectificar su trayectoria y seguir el recorrido marcado por la misma.
Siguelineaschasis2
Material necesario
Chasisrobotica
La plataforma que nos permitirá conseguir el movimiento de nuestro robot está compuesta por
los siguientes elementos:
2 motores de corriente continua (motor CC) acoplados a ruedas neumáticas se encargan de dar
tracción
Protoboard
1 driver L298n
Driverl298n
El driver L298n nos permitirá gobernar los motores de corriente continua con las ruedas
acopladas y, por tanto, gobernar el movimiento de nuestro vehículo. Se recomienda leer el
artículo para más información.
Tcrt5000
El sensor de infrarrojos nos permitirá detectar la presencia de una línea negra y de esta manera
enrutar nuestra trayectoria para poder seguirla (más información sobre este sensor)
Cables
Estos cables nos permiten conectar de manera sencilla todos los elementos del circuito.
Dado que en otras sesiones ya trabajamos con el driver L298n para controlar 2 motores de
corriente contínua y con el sensor de infrarrojos TCRT5000 para detectar la presencia de la
línea negra, combinaremos la circuitería de ambos circuitos para crear nuestro proyecto
conjunto.
Lógica del circuito (algoritmo para la programación)
Antes de empezar a programar, vamos a recordar cómo se supone que debería funcionar el
robot:
Si se ha salido hacia la izquierda: giramos a la derecha hasta tener los dos sensores sobre la
línea
Si se ha salido hacia la derecha: giramos hacia la izquierda hasta tener los dos sensores sobre la
línea
Algoritmo
Presentaremos 2 versiones..
En la primera controlaremos la velocidad del motor mediante la activación de los jumpers
(ENA, ENB) del driver L298n..
Arduino Code
Const int IN1 = 13; // Pin digital 13 para controlar sentido giro motor izquierdo
Const int IN2 = 12; // Pin digital 12 para controlar sentido giro motor izquierdo
Const int IN3 = 11; // Pin digital 11 para controlar sentido giro motor izquierdo
Const int IN4 = 10; // Pin digital 10 para controlar sentido giro motor izquierdo
Const int sensorIzqPin = A0; // El sensor izq irá conectado al pin analógico A0
Const int sensorDerPin = A1; // El sensor derecho irá conectado al pin analógico A1
Void setup()
Void loop()
// Se analiza el resultado de los sensores para hacer que el robot siga la línea negra
robotDerecha();
robotIzquierda();
}
// Si ambos sensores retornan 0 (zona negra) el robot sigue recto
Serial.println(“robot avanza”);
/*
Negra.
*/
Void lecturaSensorIR()
Serial.println(lecturaSensorIzq);
Serial.println(lecturaSensorDer);
/*
Función robotAvance: esta función hará que ambos motores se activen a máxima potencia
*/
Void robotAvance()
{
// Motor izquierdo
// Motor derecho
/*
Función robotRetroceso: esta función hará que ambos motores se activen a máxima potencia
*/
Void robotRetroceso()
// Motor izquierdo
// Al mantener un pin LOW y el otro HIGH el motor gira en sentido contrario al anterior
// Motor derecho
// Al mantener un pin LOW y el otro HIGH el motor gira en sentido contrario al anterior
}
/*
*/
Void robotDerecha()
// Motor izquierdo
// Motor derecho
/*
*/
Void robotIzquierda ()
// Motor izquierdo
/*
*/
Void robotParar()
// Motor izquierdo
// Motor derecho