miércoles, 29 de julio de 2026

CARRO SEGUIDOR DE LÍNEA - TCRT5000

 

CARRO SEGUIDOR DE LÍNEA CON SENSOR INFRARROJO TCRT5000

Introducción

Un carro seguidor de línea es un robot móvil capaz de desplazarse automáticamente siguiendo una línea dibujada sobre una superficie. Generalmente, la línea es de color negro sobre un fondo blanco, aunque también puede funcionar de forma inversa si se configura adecuadamente.

Este tipo de robot constituye uno de los proyectos más importantes para iniciarse en la robótica móvil, ya que integra conocimientos de electrónica, programación, sensores y control de movimiento.

En este proyecto, el "cerebro" del robot es una placa Arduino, mientras que sus "ojos" son los sensores infrarrojos TCRT5000, encargados de detectar la posición de la línea durante el recorrido.


¿Qué es un robot seguidor de línea?

Un robot seguidor de línea es un sistema automático diseñado para desplazarse siguiendo un camino previamente marcado.

Su funcionamiento se basa en tres etapas fundamentales:

1.     Detectar la posición de la línea.

2.     Procesar la información recibida por los sensores.

3.     Controlar los motores para mantenerse sobre la trayectoria.

Todo este proceso ocurre cientos de veces por segundo.


¿Qué es el sensor TCRT5000?

El TCRT5000 es un sensor óptico infrarrojo de reflexión ampliamente utilizado en robótica educativa.

Su función consiste en detectar diferencias de color mediante la reflexión de luz infrarroja.

Está formado por dos componentes principales:

  • Un LED emisor infrarrojo.
  • Un fototransistor receptor.

El LED emite luz infrarroja continuamente hacia el suelo.

El fototransistor mide cuánta luz regresa después de reflejarse sobre la superficie.


Principio de funcionamiento

El sensor no detecta colores directamente.

Lo que realmente detecta es la cantidad de luz infrarroja reflejada.

Cuando la luz emitida golpea una superficie:

  • Si la superficie refleja mucha luz, el sensor recibe una señal alta.
  • Si la superficie absorbe la luz, el sensor recibe una señal baja.

¿Por qué distingue entre blanco y negro?

Los colores poseen diferentes propiedades de reflexión.

Superficie blanca

  • Refleja gran parte de la luz.
  • El sensor recibe mucha luz infrarroja.
  • Detecta un nivel alto de reflexión.

Superficie negra

  • Absorbe gran parte de la luz.
  • El sensor recibe muy poca luz.
  • Detecta un nivel bajo de reflexión.

Gracias a esta diferencia el robot puede identificar dónde se encuentra la línea.


Componentes principales del TCRT5000

El módulo normalmente incluye:

  • LED infrarrojo emisor.
  • Fototransistor receptor.
  • Comparador electrónico.
  • Potenciómetro para ajustar sensibilidad.
  • LED indicador.
  • Pines de alimentación y salida.

¿Qué hace el potenciómetro?

El potenciómetro permite ajustar la sensibilidad del sensor.

Con él es posible determinar qué cantidad de luz reflejada será considerada como blanco o negro.

Este ajuste depende de:

  • La iluminación del ambiente.
  • El color del piso.
  • El tipo de cinta utilizada.
  • La distancia entre el sensor y la superficie.

Importancia de la distancia

El sensor funciona mejor cuando se encuentra aproximadamente entre 2 mm y 10 mm de la superficie.

Si queda demasiado alto:

  • La reflexión disminuye.
  • Puede dejar de detectar correctamente la línea.

Si queda demasiado bajo:

  • Puede rozar el suelo.
  • Las mediciones pueden volverse inestables.

¿Por qué se utilizan dos sensores?

Un solo sensor únicamente puede indicar si está sobre la línea o fuera de ella.

Con dos sensores el robot puede conocer la posición relativa de la línea.

Normalmente se colocan:

  • Sensor izquierdo.
  • Sensor derecho.

Así el robot puede decidir hacia dónde debe girar.


Interpretación de los sensores

Ambos sensores detectan blanco

El robot ha perdido la línea.

Debe buscar nuevamente la trayectoria.


Ambos sensores detectan negro

El robot se encuentra completamente sobre la línea o ha llegado a una intersección.


Sensor izquierdo detecta negro

La línea se encuentra hacia la izquierda.

El robot debe corregir su trayectoria hacia ese lado.


Sensor derecho detecta negro

La línea está hacia la derecha.

El robot debe girar ligeramente hacia la derecha.


El cerebro del robot: Arduino

Arduino recibe continuamente la información de los sensores.

Después toma decisiones para controlar los motores.

El proceso ocurre de manera repetitiva:

1.     Leer sensores.

2.     Analizar información.

3.     Decidir movimiento.

4.     Mover motores.

5.     Volver a comenzar.

Este ciclo se ejecuta muchas veces por segundo.


Importancia de la calibración

Antes de utilizar el robot es necesario calibrar los sensores.

Una mala calibración puede provocar:

  • Que no detecte la línea.
  • Que gire continuamente.
  • Que avance en zigzag.
  • Que se salga del recorrido.

Una buena calibración mejora considerablemente el desempeño del robot.


Factores que afectan el funcionamiento

Existen varios factores que pueden alterar las lecturas del sensor.

Iluminación

Una luz solar intensa puede interferir con la luz infrarroja.


Color del piso

No todos los pisos blancos reflejan igual cantidad de luz.


Tipo de cinta

Las cintas negras mate suelen funcionar mejor que las brillantes.


Polvo

La suciedad puede reducir la reflexión de la luz.


Vibraciones

Si el robot vibra demasiado, las lecturas pueden cambiar constantemente.


Ventajas del sensor TCRT5000

  • Bajo costo.
  • Fácil de utilizar.
  • Alta velocidad de respuesta.
  • Bajo consumo de energía.
  • Excelente para proyectos educativos.
  • Compatible con Arduino.
  • Muy utilizado en competencias de robótica.

Limitaciones

  • Depende de una buena iluminación.
  • Requiere calibración.
  • Funciona mejor a corta distancia.
  • No identifica colores; solamente mide reflexión.
  • Puede verse afectado por superficies muy brillantes.

Aplicaciones del sensor TCRT5000

El TCRT5000 no solo se utiliza en robots seguidores de línea.

También tiene aplicaciones industriales y comerciales.

Entre ellas:

  • Robots seguidores de línea.
  • Robots de reparto.
  • Vehículos autónomos educativos.
  • Detección de objetos cercanos.
  • Conteo de piezas en bandas transportadoras.
  • Sistemas automáticos de clasificación.
  • Detección de marcas de posición.
  • Robots de competencias.
  • Sistemas de automatización industrial.
  • Sensores de presencia de objetos pequeños.

Aplicaciones de los robots seguidores de línea

Aunque suelen emplearse con fines educativos, también tienen aplicaciones reales.

En la industria

  • Transporte automático de materiales.
  • Movimiento de herramientas.
  • Distribución de piezas.
  • Líneas de ensamblaje.

En hospitales

  • Transporte de medicamentos.
  • Distribución de alimentos.
  • Entrega de muestras de laboratorio.

En bodegas

  • Transporte de cajas.
  • Organización de inventarios.
  • Distribución automática de productos.

En aeropuertos

  • Transporte automático de equipaje.
  • Vehículos de mantenimiento.

En agricultura

  • Robots para inspección de cultivos.
  • Transporte de pequeñas cargas.

En educación

  • Enseñanza de programación.
  • Electrónica.
  • Robótica.
  • Automatización.
  • Inteligencia artificial.

Competencias de robótica

Los robots seguidores de línea participan en numerosas competencias nacionales e internacionales.

Durante estas pruebas se evalúan aspectos como:

  • Velocidad.
  • Precisión.
  • Estabilidad.
  • Tiempo de respuesta.
  • Calidad de la programación.
  • Diseño mecánico.

Relación con otras áreas

Este proyecto integra conocimientos de diferentes asignaturas:

  • Matemáticas: medición de distancias, ángulos y lógica.
  • Física: reflexión de la luz, movimiento y velocidad.
  • Tecnología: diseño y construcción del robot.
  • Electrónica: sensores, motores y circuitos.
  • Programación: desarrollo de algoritmos de control.
  • Ingeniería: integración de sistemas mecánicos y electrónicos.

Conceptos clave

  • Sensor: dispositivo que detecta cambios en el entorno.
  • Infrarrojo: tipo de luz invisible para el ojo humano.
  • Reflexión: rebote de la luz sobre una superficie.
  • Calibración: ajuste para obtener mediciones correctas.
  • Automatización: realización de tareas sin intervención humana.
  • Algoritmo: conjunto ordenado de instrucciones para resolver un problema.
  • Control: proceso mediante el cual el robot toma decisiones para corregir su trayectoria.

Conclusión

El carro seguidor de línea representa uno de los proyectos más importantes para iniciarse en la robótica, ya que combina sensores, programación, electrónica y control automático. El sensor TCRT5000 permite detectar la diferencia entre superficies claras y oscuras mediante la reflexión de luz infrarroja, mientras que Arduino procesa esa información para controlar el movimiento del robot en tiempo real. Comprender estos principios constituye la base para desarrollar sistemas más avanzados, como robots autónomos, vehículos inteligentes y aplicaciones de automatización industrial.

 

martes, 14 de julio de 2026

CARROS - SENSOR DE OBSTACULOS HC-SR504

 

Sensor Ultrasónico HC-SR04

El HC-SR04 es un sensor electrónico diseñado para medir distancias sin necesidad de contacto físico. Utiliza ondas ultrasónicas de alta frecuencia (aproximadamente 40 kHz), las cuales son inaudibles para el oído humano. Es uno de los sensores más utilizados en proyectos de robótica, automatización y sistemas de navegación debido a su bajo costo, facilidad de uso y buena precisión.




¿Cómo funciona?

El sensor posee dos transductores:

  • TRIG (Transmisor): Emite un pulso de ultrasonido.
  • ECHO (Receptor): Detecta el eco cuando las ondas rebotan en un objeto.

El proceso de medición ocurre de la siguiente manera:

  1. El Arduino envía un pulso de 10 microsegundos al pin TRIG.
  2. El HC-SR04 emite un tren de 8 pulsos ultrasónicos de 40 kHz.
  3. Las ondas viajan por el aire hasta encontrar un objeto.
  4. Las ondas rebotan y regresan al sensor.
  5. El pin ECHO permanece en nivel alto durante el tiempo que tarda el sonido en ir y regresar.
  6. El Arduino mide ese tiempo y calcula la distancia utilizando la velocidad del sonido.


Fórmula utilizada

La distancia se calcula mediante la siguiente expresión:

Distancia=Tiempo×Velocidad del sonido2\text{Distancia} = \frac{\text{Tiempo} \times \text{Velocidad del sonido}}{2}

Donde:

  • Velocidad del sonido ≈ 343 m/s (0.0343 cm/μs).
  • Se divide entre 2 porque el sonido realiza un viaje de ida y vuelta.

Aplicaciones

El HC-SR04 es ampliamente utilizado en:

  • Robots móviles para evitar obstáculos.
  • Vehículos autónomos.
  • Sistemas de estacionamiento asistido.
  • Medición del nivel de agua en tanques.
  • Automatización de puertas.
  • Alarmas y sistemas de seguridad.
  • Proyectos educativos de Arduino y electrónica.
  • Medición de distancia en laboratorios y prototipos.

Ventajas

  • Bajo costo.
  • Fácil integración con Arduino y otros microcontroladores.
  • Buena precisión para proyectos educativos.
  • No requiere contacto con el objeto.
  • Bajo consumo de energía.

Limitaciones

  • La superficie del objeto influye en la medición; materiales blandos o absorbentes pueden reflejar menos sonido.
  • El rango útil disminuye con objetos muy pequeños o inclinados.
  • La temperatura y la humedad pueden afectar ligeramente la velocidad del sonido y, por tanto, la precisión.
  • No funciona correctamente en el vacío, ya que el sonido necesita un medio (como el aire) para propagarse.

Conclusión

El HC-SR04 es un sensor de distancia basado en el principio del eco ultrasónico, similar al funcionamiento del sonar utilizado por murciélagos y submarinos. Su facilidad de programación, bajo costo y precisión lo convierten en una excelente opción para proyectos de robótica, automatización y aprendizaje de sistemas embebidos con Arduino.


CODIGO A EJECUTAR EN CLASE

SIGA LAS INSTRUCCIONES DEL PROFESOR

// ===============================

// Prueba Sensor Ultrasónico HC-SR04

// Arduino UNO / Nano / Mega

// ===============================


const int TRIG = 9;

const int ECHO = 10;


long duracion;

float distancia;


void setup() {

  Serial.begin(9600);


  pinMode(TRIG, OUTPUT);

  pinMode(ECHO, INPUT);


  digitalWrite(TRIG, LOW);


  Serial.println("=== PRUEBA HC-SR04 ===");

}


void loop() {


  // Generar pulso de disparo

  digitalWrite(TRIG, LOW);

  delayMicroseconds(2);


  digitalWrite(TRIG, HIGH);

  delayMicroseconds(10);


  digitalWrite(TRIG, LOW);


  // Leer el tiempo del eco

  duracion = pulseIn(ECHO, HIGH);


  // Calcular distancia en centímetros

  distancia = duracion * 0.0343 / 2;


  Serial.print("Distancia: ");

  Serial.print(distancia);

  Serial.println(" cm");


  delay(500);

}

martes, 9 de junio de 2026

PREGUNTAS 06-08

 PREGUNTAS 06-08


1. ¿POR QUÉ SE CONSIDERA QUE LAS COMPETENCIAS DE CARROS ROBOTS 

ARDUINO SON UNA VERSIÓN TEMPRANA DE LOS SISTEMAS AUTÓNOMOS DEL FUTURO? 

2. ¿QUÉ VENTAJAS OFRECE ARDUINO QUE PERMITEN A ESTUDIANTES Y COLEGIOS 

EXPERIMENTAR CON TECNOLOGÍAS AVANZADAS? 

3. ¿CUÁL ES EL OBJETIVO PRINCIPAL DE UN ROBOT SEGUIDOR DE LÍNEA (LINE 

FOLLOWER)? 

4. MENCIONA TRES TECNOLOGÍAS UTILIZADAS EN LOS ROBOTS SEGUIDORES DE LÍNEA. 

5. ¿EN QUÉ CONSISTE LA COMPETENCIA MINI SUMO ROBOT Y CUÁL ES SU OBJETIVO 

PRINCIPAL? 

6. ¿QUÉ TIPOS DE COMPORTAMIENTOS AUTÓNOMOS BÁSICOS PUEDEN OBSERVARSE EN LOS 

ROBOTS MINI SUMO? 

7. ¿CUÁL ES EL PROPÓSITO DE UN ROBOT MAZE SOLVER (LABERINTO)? 

8. ¿QUÉ ALGORITMOS SE UTILIZAN COMÚNMENTE EN LOS ROBOTS MAZE SOLVER PARA 

ENCONTRAR LA SALIDA DE UN LABERINTO?

9. ¿QUÉ FUNCIÓN CUMPLE EL MONITOR SERIAL EN ARDUINO Y PARA QUÉ SE UTILIZA 

DURANTE EL DESARROLLO DE PROGRAMAS?

lunes, 1 de junio de 2026

MI PRIMERA APP EN PYTHON CON FLASK

 

Mini Proyecto: “Muro de Mensajes del Curso”

Los estudiantes crean una pequeña App de red social tipo página web donde cualquier usuario puede escribir un mensaje y este aparece publicado en pantalla.

Estructura del proyecto

mini_flask/

── venv/ Entorno virtual (se crea automáticamente), espere instrucciones…

── app.py Programa principal Flask, es el programa servidor

── requirements.txt Dependencias del proyecto

── static/ Archivos estáticos

└── estilos.css

── templates/ Plantillas HTML

└── index.html ←paginas clientes que se conectan al servidor de Flask (app.py)

└── README.md ← (Opcional) descripción del proyecto

 

1.      EN SU USB CREE UNA CARPETA CON EL NOMBRE DE: mini_flask

2.      HAGA CLIC DERECHO SOBRE DICHA CARPETA Y HAGA CLIC EN: Abrir con Code

3.      ACTIVE LA TERMINAL DE VSCODE – Atentos a las explicaciones del profesor

4.      CREACION Y ACTIVACION DEL ENTORNO VIRTUAL – Siga las indicaciones del profesor

A.      Crear el entorno virtual con alguno de los siguientes comandos: py -3.8 -m venv venv   /  python -m venv venv

B.      Activacion del entorno:  venv\Scripts\activate

C.      Debe aparecerle en la terminal algo parecido a: (venv) C:\mini_flask>

5.      Instalar Flask

En la terminal escriba y haga ENTER: pip install Flask

Verifique que ha quedado instalado: pip show Flask

6.      INSTALANDO LAS PLANTILLAS JINJA2

En la terminal escribo y hago ENTER: pip install Jinja2==3.1.6

Verifico que han quedado instaladas: pip show Jinja2

7.      CONSULTANDO QUE LIBRERIAS TENGO INSTALADAS ESCRIBES: pip list  Presionas ENTER

 

CODIFICACION Y CREACION DE ARCHIVOS

Atentos a las explicaciones del profesor…

1.      CREANDO EL SERVIDOR

Código principal (app.py) programa servidor

EN EL DIRECTORIO PRINCIPAL (mini_flask) PROCEDA A CREAR EL ARCHIVO: app.py COPIE Y PEGUE EN ESE ARCHIVO EL SIGUIENTE CODIGO, Atentos a las explicaciones

from flask import Flask, render_template, request, redirect

app = Flask(__name__)

mensajes = []

@app.route("/", methods=["GET", "POST"])
def inicio():

    if request.method == "POST":
        texto = request.form["mensaje"]

        if texto != "":
            mensajes.append(texto)

        return redirect("/")

    return render_template("index.html", mensajes=mensajes)

if __name__ == "__main__":
    app.run(debug=True)

 

TAREA EN CLASE

INVESTIGAR LOS METODOS POST Y GET EN HTML Y EN FLASK

 

2.      CREANDO LA HOJA DE ESTILO (CSS)

EN LA RUTA “static” CREAMOS EL ARCHIVO: estilos.css  COPIAMOS EL SIGUIENTE CODIGO EN DICHO ARCHIVO

body {
    font-family: Arial, sans-serif;
    width: 80%;
    margin: auto;
}

h1 {
    color: navy;
}
input {     padding: 8px; }
button {     padding: 8px;     cursor: pointer; }
.mensaje {     background-color: #f0f0f0;     padding: 10px;     margin-top: 5px;     border-radius: 5px; }

 

3.      CREANDO EL CLIENTE

EN LA CARPETA “templates” CREAMOS EL ARCHIVO: index.html COPIAMOS DENTRO DE ESE ARCHIVO EL SIGUIENTE CODIGO:

<!DOCTYPE html>
<html>
<head>
<title>Chat del Salón</title>
<link rel="stylesheet" href="{{ url_for('static', filename='estilos.css') }}">
</head> <body>
    <h1>Muro del Curso</h1>
    <form method="POST">
        <input type="text" name="mensaje" placeholder="Escribe algo">
        <button type="submit">             Enviar         </button>
    </form>     <hr>     <h2>Mensajes:</h2>
    {% for mensaje in mensajes %}         <p>- {{ mensaje }}</p>     {% endfor %}
</body> </html>

 

4.      EJECUCION DEL APP

PARA EJECUTAR LA APP DEBE IR A LA TERMINAL Y ESCRIBIR LOS SIGUIENTES COMANDOS:

Escriba:
venv\Scripts\activate ENTER espere unos segundos a que aparezcan algunos msgs


Escriba:
python app.py ENTER, APARECERA UNA DIRECCION IP POR DEFECTO, LA DE SU
COMPUTADOR:
http://127.0.0.1:5000 

DEBE PROCEDER DE LA SIGUIENTE FORMA: MANTENGA PERSIONADA LA TECLA :
CTRL (LA DEL LADO IZQUIERDO DEL TECLADO), Y SIN SOLTAR ESA TECLA ENTONCES
HAGA CLIC SOBRE LA DIRECCON IP (
http://127.0.0.1:5000).
 
SE ABRIRA SU NAVEGADOR CON LA APP DESPLEGADA.
 
 
INVESTIGAR LOS SIGUIENTES CONCEPTOS:

·         QUE ES UN DECORADOR EN PYTHON (FLASK)

·         QUE ES FRONTED

·         QUE ES BACKEND

·         PARA QUE SIRVE: redirect("/") EN FLASK

·         QUE HACE render_template("index.html") EN FLASK

·         PARA QUE SIRVE: app.run(host="0.0.0.0") EN FLASK

CARRO SEGUIDOR DE LÍNEA - TCRT5000

  CARRO SEGUIDOR DE LÍNEA CON SENSOR INFRARROJO TCRT5000 Introducción Un carro seguidor de línea es un robot móvil capaz de desplazarse...