Proyecto: Construcción y Programación de un Robot de Evasión de Obstáculos
Clase 36 de 38 • Curso Fundamentos de Desarrollo de Hardware con Arduino
Contenido del curso
Introducción al hardware libre
- 3

Arduino: Desarrolla Prototipos Interactivos con Microcontroladores
11:46 min - 4

Desarrollo de Prototipos de Hardware: Diseño y Fabricación
09:18 min - 5

Diseño Mecánico de Hardware con SolidWorks y Herramientas Paramétricas
05:03 min - 6

Desarrollo de Interfaces y Prototipos con QT en Sistemas Embebidos
04:07 min - 7

Limitaciones de Arduino en productos finales
04:27 min - 8
Selección de Arduino para Envío de Datos a Servidor
00:14 min - 9
Fundamentos de Desarrollo de Hardware con Arduino
01:27 min - 10
Proyectos con Arduino: Componentes y Materiales Necesarios
01:13 min
Sensores, Actuadores y Procesadores
Introducción a la electrónica
Manos a la obra
- 19

Conociendo los Puertos y Alimentación del Arduino Uno
09:40 min - 20

Funcionamiento de la Protoboard para Prototipado Electrónico
04:36 min - 21

Programación Básica en Arduino: Primeros Pasos con LED y Código
07:53 min - 22

Declarar variables para pines de Arduino
05:53 min - 23

Creación y Uso de Librerías en Arduino
03:09 min - 24

Uso del Potenciómetro para Control de LED con Arduino
10:06 min - 25

Comunicación Serial en Arduino: Uso del Monitor Serial
10:32 min - 26

Cómo PWM simula voltaje analógico
05:51 min - 27

Cómo Arduino simplifica el PWM
14:18 min - 28

Uso de Botones con Resistencia Pull-Up en Arduino
13:01 min - 29

Monitor temperatura con Arduino y LM35
10:59 min - 30

Cálculo del Multiplicador para Convertir Lecturas de Sensor a Celsius
05:05 min - 31

LCD 16x2 con Arduino sin conexión PC
17:28 min - 32

Programación de Semáforos con Arduino y Sensores
02:09 min
Automatización de procesos
- 33

Motores con Arduino y puente H L293D
23:17 min - 34

Cómo funciona un servomotor con Arduino
11:06 min - 35

Potenciómetro controla servomotor en Arduino
04:35 min - 36

Proyecto: Construcción y Programación de un Robot de Evasión de Obstáculos
Viendo ahora - 37

Programación de Funciones de Control de Movimiento en Arduino
08:09 min - 38

Robot sensor Pololu: lógica inversa y ciclo while
17:47 min
Construye un robot evasor con Arduino que detecta obstáculos y cambia de trayectoria con un flujo de trabajo claro: del hardware esencial a la programación con PWM y puente H. Aprende a organizar pines, definir inputs y outputs, y estructurar funciones para el movimiento de forma simple y replicable.
¿Qué hardware se necesita y cómo se arma con Arduino?
Para el movimiento y la detección se combinan componentes accesibles. La base puede ser una placa plástica o madera con un protoboard montado. El objetivo: detectar un objeto con un sensor Pololu y evitarlo cambiando de ruta, usando tracción con caja de reducción.
- Sensor de presencia Pololu: tres pines (alimentación, tierra y salida). Entrega 0 cuando hay objeto y 1 cuando no hay objeto.
- Kit Tamiya de caja de reducción: multiplica el torque con engranes y lleva el movimiento a las llantas.
- Rueda loca al frente: permite sostén y maniobra del chasis.
- Cinta doble faz: ideal para prototipado rápido y limpio.
- Puente H L293D: necesario para invertir el sentido de giro de los motores.
- Batería de 9 V: suficiente para alimentar sin usar recargables.
- Arduino y protoboard: base de conexiones y control.
La lógica de evasión se implementa en código: cuando el sensor detecta (0), el robot evita; cuando no detecta (1), mantiene la trayectoria. La “magia” está en programar movimientos y decisiones simples pero efectivos.
¿Cómo organizar pines, PWM y entradas/salidas en el sketch?
Se parte de un sketch nuevo guardado como “robotsito” en minúsculas: nombre claro, sin gritos. La configuración declara el sensor, un botón de inicio, los pines para el sentido de giro de cada motor y los pines PWM para velocidad. Se prioriza el orden: usar PWM 10 y 11 para tenerlos consecutivos y separar los pines de dirección.
- Sensor digital en el pin 2.
- Botón de inicio en el pin 7.
- Dirección de motores: M1A en 3, M1B en 4, M2A en 5, M2B en 6.
- Velocidad con PWM en 10 y 11.
- Nota práctica: los pines PWM no se declaran como output para evitar sobredefinir.
¿Cómo declarar constantes y pines con claridad?
Se usa const int para mapear pines a nombres legibles. Luego, con pin mode se definen input y output en grupos ordenados.
// Mapeo de pines
const int sensorUno = 2; // Sensor Pololu: 0 si detecta, 1 si no
const int botonUno = 7; // Botón de inicio
// Dirección de motores con L293D
const int motorUnoA = 3;
const int motorUnoB = 4;
const int motorDosA = 5;
const int motorDosB = 6;
// Velocidad (PWM)
const int PWM1 = 10; // PWM motor 1
const int PWM2 = 11; // PWM motor 2
void setup() {
// Entradas
pinMode(sensorUno, INPUT);
pinMode(botonUno, INPUT);
// Salidas: dirección de motores
pinMode(motorUnoA, OUTPUT);
pinMode(motorUnoB, OUTPUT);
pinMode(motorDosA, OUTPUT);
pinMode(motorDosB, OUTPUT);
// PWM: se usan con analogWrite, sin pinMode OUTPUT explícito
}
void loop() {
// Estructura principal: leer sensor/botón, mover o evadir
}
¿Qué estructura de programa conviene preparar?
Se propone un esqueleto claro: configuración en setup, ciclo en loop y funciones auxiliares. Se planifica crear funciones específicas para el movimiento: girar a la izquierda y girar a la derecha. Además, se usará una única velocidad en todo el proyecto para simplificar validaciones.
- Leer botón para iniciar el prototipo.
- Leer sensor Pololu y decidir: seguir o evadir.
- Activar dirección con M1A/M1B y M2A/M2B.
- Ajustar velocidad con PWM 10 y 11.
¿Qué habilidades y conceptos clave se refuerzan con este proyecto?
Este ejercicio concentra fundamentos de robótica y control con Arduino, útiles para prototipos funcionales y económicos.
- Puente H L293D: invierte sentido de giro de motores de forma segura.
- Señal digital del sensor: 0 con objeto, 1 sin objeto.
- Organización de pines: separar dirección y PWM para claridad.
- PWM para velocidad: una sola velocidad estable durante el desarrollo.
- Estructura de sketch: declarar constantes, definir inputs/outputs con pin mode y crear funciones de movimiento.
- Prototipado rápido: cinta doble faz, base rígida y rueda loca para estabilidad.
- Ahorro práctico: batería de 9 V estándar, sin recargables.
¿Te gustaría que profundicemos en la lógica de evasión o en las funciones de giro? Comparte tus dudas o ideas para mejoras creativas del chasis y el cableado.