PTENES
RUTA 2 · INTERMEDIO

🧭 Robot autónomo

El rover de la Ruta 1 incorpora control desde el celular, sentidos de posición y un cerebro de control de verdad. Conectas Wi-Fi y BLE, mides el giro y la distancia con IMU y encoders, dominas el PID, ejecutas varias tareas al mismo tiempo, registras todo en gráficos y terminas con un seguidor de línea con PID que ajustas mirando los datos.

6
Módulos
36
Temas
Intermedio
Nivel
ESP32 + IMU
Base del robot
0%
0 de 0 temas leídos en esta ruta
2.1celular 2.2posición 2.3PID 2.4tareas 2.5datos 2.6seguidor azul: comandar, medir, controlar cian: organizar y visualizar cada módulo funciona por sí solo; el 2.3 (PID) es el que más se reutiliza

Cómo leer: los tres primeros pasos (azul) le dan al robot control remoto, noción de dónde está y la capacidad de llegar a un objetivo sin oscilar. Los dos siguientes (cian) organizan el código y muestran lo que ocurre por dentro. El último, con brillo, integra todo en el seguidor de línea. ¿Ya sabes usar Wi-Fi? Comienza en el 2.2.

🏁 Lo que construyes en esta ruta

El mismo rover de la Ruta 1, ahora con encoders en las ruedas, IMU y una barra de sensores de línea en la parte inferior. Durante el recorrido quedan listos: un control con joystick en el navegador del celular, un medidor de inclinación, la posición del robot en x, y y θ, dos ruedas que avanzan a la misma velocidad, un registro de datos en una tarjeta microSD y un panel en vivo. Al final, el robot sigue una línea negra en curvas cerradas e intersecciones, contra el reloj.

  • ✓Código completo para ESP32 en la API 3.x
  • ✓PID que puedes probar con un motor simulado
  • ✓Detención segura cuando se pierde la señal
  • ✓Base directa para micro-ROS en la Ruta 4

💡 Antes de comenzar

Necesitas que el rover de la 1.6 ya funcione y saber usar el Serial Monitor. El PID (2.3) y el código sin bloqueos (2.4) funcionan en Wokwi; para la IMU y los encoders necesitas las piezas del kit de abajo.

Mapa de la ruta

Contenido detallado

2.1
Práctica
0%

📱 Control desde el celular: Wi-Fi y BLE

Wi-Fi en modo estación y punto de acceso, página con botones, WebSocket sin retraso, BLE con una app genérica, watchdog de comandos y un joystick en el navegador para conducir el rover.

Qué es:

Las dos formas en que el ESP32 usa Wi-Fi: conectarse a la red de casa o crear su propia red, con un sketch que intenta una opción y, si falla, usa la otra.

Por qué aprenderlo:

Todo control inalámbrico y toda telemetría comienzan aquí; elegir el modo correcto evita que el robot no se conecte durante una feria.

Conceptos clave:

STA · AP · dirección IP · 2,4 GHz.

Qué es:

La biblioteca WebServer de la 3.x sirve una página con cinco botones que envían comandos al robot.

Por qué aprenderlo:

Cualquier celular se convierte en control, sin instalar una app, y después el mismo servidor ajusta parámetros.

Conceptos clave:

Ruta · solicitud GET · handleClient · fetch.

Qué es:

Un canal que permanece abierto entre el navegador y el ESP32 y lleva comandos breves en ambos sentidos.

Por qué aprenderlo:

El joystick y la telemetría continua necesitan poco retraso; HTTP abre y cierra la conexión con cada comando.

Conceptos clave:

Latencia · canal abierto · comunicación bidireccional · biblioteca WebSockets.

Qué es:

Bluetooth de bajo consumo con la biblioteca BLE incluida en el paquete esp32: un servicio, una característica y una app genérica.

Por qué aprenderlo:

Funciona sin ninguna red y es el mismo estándar de los controles y sensores inalámbricos.

Conceptos clave:

Servicio · característica · UUID · advertising.

Qué es:

Contraseña en la red del robot y watchdog de comandos: si no llega un mensaje nuevo durante 300 ms, el robot se detiene solo.

Por qué aprenderlo:

La señal se pierde; un robot que sigue con el último comando de «adelante» choca. La falla segura es una regla para todo robot real.

Conceptos clave:

Watchdog · timeout · falla segura · velocidad máxima en el robot.

Qué es:

Sketch completo: punto de acceso, página con joystick, WebSocket, mezcla diferencial y watchdog, para conducir el rover real.

Por qué aprenderlo:

Es el modo manual que todo robot autónomo necesita para pruebas y rescates.

Conceptos clave:

Mezcla diferencial · pointer events · cadena sin procesar · 10 envíos por segundo.

Ver completo
2.2
Fundamentos
0%

🧭 IMU y encoders: saber dónde está

El acelerómetro y el giroscopio, cómo leer la MPU-6050 directamente por sus registros, el filtro complementario, los encoders en cuadratura y la odometría en x, y y θ, con los errores que se acumulan.

Qué es:

El chip que detecta la gravedad y el giro en tres ejes, y las fortalezas y debilidades de cada sensor.

Por qué aprenderlo:

Girar exactamente 90°, detectar una pendiente y detectar una caída dependen de ella.

Conceptos clave:

g · °/s · integrar · deriva · MPU-6050 x ICM-20948.

Qué es:

Cuatro cables y un sketch que activa el sensor y lee 14 bytes de aceleración y giro, sin biblioteca adicional.

Por qué aprenderlo:

El mismo procedimiento sirve para casi cualquier sensor I2C que uses después.

Conceptos clave:

Registro · dirección 0x68 · lectura en ráfaga · conversión de unidades.

Qué es:

Combinar el giroscopio (rápido, deriva) y el acelerómetro (lento, ruidoso) para obtener una inclinación estable, con tres curvas en el Serial Plotter.

Por qué aprenderlo:

Es la fusión de sensores más sencilla y la puerta de entrada al filtro de Kalman.

Conceptos clave:

atan2 · offset del giroscopio · α = 0,98 · dt fijo.

Qué es:

Un disco o imán que genera pulsos al girar; dos canales en cuadratura indican el sentido; una interrupción cuenta sin perder ninguno.

Por qué aprenderlo:

La velocidad real de la rueda es la entrada del PID y la base de la odometría.

Conceptos clave:

Pulsos por vuelta · cuadratura · ISR con IRAM_ATTR · volatile.

Qué es:

Cinco operaciones que suman cuánto avanzó cada rueda y lo convierten en posición y dirección.

Por qué aprenderlo:

Volver a la base y avanzar hasta un punto exigen saber dónde estás; eso es lo que micro-ROS publica en la Trilha 4.

Conceptos clave:

Pose · metros por pulso · distancia entre ruedas · radián.

Qué es:

Por qué la posición estimada se aleja de la real y la calibración en cuatro pasos que reduce el error.

Por qué aprenderlo:

Muestra cuándo basta la odometría y cuándo el robot necesita una línea, una cámara o un LiDAR para corregirse.

Conceptos clave:

Error acumulado · error sistemático · deslizamiento · referencia externa.

Ver completo
2.3
Fundamentos
0%

🎯 Control PID en la práctica

Por qué el encendido/apagado oscila, la función de P, I y D, un PID completo probado con un motor simulado, ajuste metódico, anti-windup y dos ruedas a la misma velocidad.

Qué es:

El vaivén de quien solo conoce el «todo o nada» y la idea de corregir en proporción al error.

Por qué aprenderlo:

Es el problema que el PID resuelve en autos, drones, impresoras 3D y brazos robóticos.

Conceptos clave:

Objetivo · medición · error · lazo cerrado.

Qué es:

Volante proporcional, corrección del viento constante y freno antes de pasarte: las tres letras con una analogía y tres curvas.

Por qué aprenderlo:

Con clara la función de cada ganancia, ajustas leyendo la gráfica, sin tantear.

Conceptos clave:

Kp · Ki · Kd · sobreimpulso · error en estado estable.

Qué es:

Un PID completo a 100 Hz frente a un motor simulado, con ganancias ajustables desde el Serial Monitor, que se ejecuta en Wokwi.

Por qué aprenderlo:

Es la estructura que puedes reutilizar en el seguidor de línea y en todos los controles posteriores.

Conceptos clave:

Período fijo · micros() · planta simulada · Serial Plotter.

Qué es:

El orden P → I → D para ajustar manualmente y la tabla de Ziegler-Nichols a partir de la ganancia crítica.

Por qué aprenderlo:

Un PID mal ajustado oscila y calienta el motor; con un método, bastan unas pocas pruebas.

Conceptos clave:

Ku · Tu · una ganancia a la vez · prueba en el suelo.

Qué es:

Las tres trampas del PID real y las cuatro líneas de código que las resuelven.

Por qué aprenderlo:

Es la diferencia entre el PID que funciona en la simulación y el que funciona en el robot.

Conceptos clave:

Saturación · anti-windup · derivada de la medición · pasa-bajas.

Qué es:

Un PI por rueda, el mismo objetivo en RPM y cada uno leyendo su propio encoder: el rover avanza en línea recta.

Por qué aprenderlo:

Base estable para el seguidor de línea y para /cmd_vel de ROS 2.

Conceptos clave:

Un PID por rueda · RPM medida · PI basta · poner la integral en cero al detenerse.

Ver completo
2.4
Práctica
0%

🧵 Varias tareas al mismo tiempo

Por qué delay() bloquea el robot, tareas sin bloqueo con millis(), máquina de estados, FreeRTOS con tareas en ambos núcleos, colas y semáforos, y código organizado en archivos y clases.

Qué es:

Qué ocurre con los sensores, el PID y la comunicación mientras el programa está detenido en un delay().

Por qué aprenderlo:

Un robot «ciego» durante medio segundo choca antes de percibir el obstáculo.

Conceptos clave:

Código bloqueante · tiempo de respuesta · bucle principal.

Qué es:

Cada tarea con su propio reloj: leer un sensor cada 20 ms, parpadear un LED cada 500 ms y enviar telemetría cada 100 ms.

Por qué aprenderlo:

Es la forma más sencilla de hacer varias cosas «al mismo tiempo» en un solo bucle.

Conceptos clave:

Tarea periódica · desbordamiento de millis() · planificador cooperativo.

Qué es:

Estados, eventos y transiciones definidos antes de escribir el código, con acciones de entrada y salida.

Por qué aprenderlo:

Comportamiento complejo sin anidar if; fácil de probar y modificar.

Conceptos clave:

Estado · evento · transición · enum class.

Qué es:

El sistema en tiempo real que ya se ejecuta dentro del ESP32: crear tareas con prioridad y elegir el núcleo para cada una.

Por qué aprenderlo:

El control de los motores se mantiene al día incluso cuando el Wi-Fi y la telemetría ocupan el procesador.

Conceptos clave:

Tarea · prioridad · núcleo · vTaskDelayUntil.

Qué es:

Cómo una tarea pasa datos a otra de forma segura, sin que ambas modifiquen la misma variable al mismo tiempo.

Por qué aprenderlo:

Evita los errores más difíciles de encontrar: valores corruptos que aparecen una vez por hora.

Conceptos clave:

Cola · mutex · semáforo · condición de carrera.

Qué es:

Separar motores, sensores y control en pestañas .h/.cpp y clases pequeñas dentro del sketch.

Por qué aprenderlo:

El seguidor del 2.6 y el robot de la Trilha 3 crecen sin convertirse en un archivo de mil líneas.

Conceptos clave:

Clase · encabezado .h · responsabilidad única · reutilización.

Ver completo
2.5
Práctica
0%

📈 Telemetría y registro de datos

Qué medir y con qué frecuencia, gráfico en vivo en Serial Plotter, registro en CSV en la tarjeta microSD, MQTT a través de la red, panel en el navegador o en Node-RED/Grafana y análisis en Python.

Qué es:

Elegir las variables que explican el comportamiento del robot y la frecuencia adecuada para cada una.

Por qué aprenderlo:

Medir todo satura el procesador; medir poco no explica la falla.

Conceptos clave:

Frecuencia de muestreo · marca de tiempo · variable de estado.

Qué es:

El formato «nombre:valor» que Arduino IDE 2 convierte en curvas, con varias variables a la vez.

Por qué aprenderlo:

Es la herramienta más rápida para ajustar el PID y detectar ruido.

Conceptos clave:

Etiqueta · escala · ventana de tiempo.

Qué es:

Registrar los datos en un archivo de texto separado por comas, sin cable y con el robot en movimiento.

Por qué aprenderlo:

El robot que está lejos de la computadora también necesita registrar lo que ocurrió.

Conceptos clave:

SPI · archivo CSV · flush · tarjeta FAT32.

Qué es:

El protocolo ligero para publicar y suscribirse a mensajes por temas, con un broker en la PC o en el Raspberry Pi.

Por qué aprenderlo:

Varios robots y paneles se comunican por el mismo canal; es la idea que amplía ROS 2.

Conceptos clave:

Broker · tema · publicar · suscribirse.

Qué es:

Ver la telemetría en tiempo real: una página servida por el propio ESP32 o un panel creado en Node-RED o Grafana.

Por qué aprenderlo:

Mostrar el robot «por dentro» ayuda a depurarlo y a presentar el proyecto.

Conceptos clave:

Panel · serie temporal · WebSocket · indicador.

Qué es:

Abrir el CSV en la computadora, calcular promedios y errores, y crear un gráfico del antes y el después.

Por qué aprenderlo:

Decidir con datos si el ajuste mejoró el robot, en lugar de basarte en una impresión.

Conceptos clave:

pandas · DataFrame · matplotlib · comparación antes/después.

Ver completo
2.6
Proyecto
0%

🏁 Proyecto: seguidor de línea con PID

Pista y barra de sensores, error de la línea mediante promedio ponderado, PID de dirección sobre la velocidad base, calibración automática, ajuste con telemetría y desafíos contra el cronómetro.

Qué es:

Armar una pista con cinta aislante negra y colocar la barra de 5 sensores IR a la altura correcta.

Por qué aprenderlo:

La altura y la separación de los sensores determinan la mitad del rendimiento del seguidor.

Conceptos clave:

TCRT5000 / QTR · altura del sensor · contraste de la pista.

Qué es:

Convertir cinco lecturas en un solo número: la posición de la línea con respecto al centro del robot.

Por qué aprenderlo:

Un error continuo, en lugar de «izquierda/derecha», es lo que permite un PID suave.

Conceptos clave:

Promedio ponderado · posición de la línea · línea perdida.

Qué es:

La corrección del PID se suma a una rueda y se resta de la otra, sobre una velocidad base.

Por qué aprenderlo:

Es la arquitectura de casi todos los seguidores de competencia.

Conceptos clave:

Velocidad base · corrección · saturación por rueda.

Qué es:

El robot gira sobre la línea durante los primeros segundos y aprende el mínimo y el máximo de cada sensor.

Por qué aprenderlo:

La luz ambiente y la pista cambian de un lugar a otro; calibrar en el momento evita tener que modificar el código.

Conceptos clave:

Mínimo y máximo · normalización · EEPROM/Preferences.

Qué es:

Registrar el error de la línea durante una vuelta, cambiar una ganancia, volver a registrar y comparar los gráficos.

Por qué aprenderlo:

Convierte «parece mejor» en «el error promedio se redujo a la mitad».

Conceptos clave:

Error promedio · tiempo por vuelta · un ajuste a la vez.

Qué es:

Pistas más difíciles, como detectar cruces y líneas perdidas, y cronometrar la vuelta.

Por qué aprenderlo:

Prepárate para competencias como la OBR y para el robot con visión de la Trilha 3.

Conceptos clave:

Velocidad adaptativa · memoria del último error · vuelta cronometrada.

Ver completo

📌 Mapa de pines de la trilha

Toda la Trilha 2 usa el mismo mapa. Cambia un poco con respecto al rover de la Trilha 1: el motor derecho pasa de los pines 33/32/4 a 14/16/17, y STBY del controlador queda conectado directamente a 3V3. Así quedan libres pines del ADC1 para los sensores de línea y los pines 18/19 para los encoders o el microSD.

PiezaPin del ESP32Módulos
Motor izquierdo (TB6612FNG)PWMA 25, AIN1 26, AIN2 272.1, 2.3, 2.4, 2.6
Motor derechoPWMB 14, BIN1 16, BIN2 172.1, 2.3, 2.4, 2.6
STBY del controlador3V3todos
Encodersizquierdo 18/19, derecho 34/352.2, 2.3
HC-SR04TRIG 13, ECHO 4 (divisor para 3,3 V)2.4
microSDCS 5, SCK 18, MISO 19, MOSI 232.5, 2.6
Sensores de línea36, 39, 34, 35, 32 (solo ADC1)2.6

✗ Lo que no se conecta al mismo tiempo

Los encoders y el microSD comparten los pines 18 y 19, y el encoder derecho usa 34/35, que también son sensores de línea. Por eso, cada proyecto conecta solo lo que usa: el PID del 2.3 usa encoders sin microSD; el seguidor del 2.6 usa sensores y microSD sin encoders.

🧰 Kit de la trilha

Piezas que se suman al rover de la Trilha 1. Precio aproximado de R$ 150 a R$ 350 por el conjunto adicional (oct/2026; confirma antes de comprar: varía según la tienda, el envío y el tipo de cambio).

🧭 IMU

Módulo MPU-6050 (GY-521), el más barato y documentado. Alternativa con brújula: ICM-20948 (9 ejes), más caro.

⚙️ Motores con encoder

Par de motores N20 con encoder magnético (dos canales) y ruedas, o los motores TT de la T1 con disco de encoder y sensor óptico.

〰️ Sensores de línea

Barra de 5 sensores infrarrojos (TCRT5000) o barra QTR, con salida analógica, para el seguidor del 2.6.

💾 Registro

Módulo lector de tarjetas microSD (SPI, 3,3 V) y una tarjeta de 8 a 32 GB formateada en FAT32.

🖥️ Opcional

Pantalla OLED SSD1306 (I2C, 0,96") para mostrar el estado, las ganancias y el tiempo de vuelta en el propio robot.

🏁 Pista

Cinta aislante negra de 19 mm sobre cartulina blanca, MDF claro o piso liso.

✓ Vale la pena

Encoders de dos canales (indican el sentido del giro) y ruedas de goma firme, que patinan menos y hacen más confiable la odometría.

✗ No compres para esta trilha

Sensores de línea digitales de un solo bit (solo indican «línea sí/no») y módulos de IMU de 5 V sin regulador.