UD5. Control y Robótica
1. INTRODUCCIÓN: EL INGENIO FRENTE A LA FUERZA FÍSICA
El ser humano tiene una característica que lo diferencia del resto de animales: es físicamente débil pero intelectualmente ingenioso. No tenemos garras afiladas ni corremos a gran velocidad, por lo que, desde la prehistoria, hemos necesitado inventar "trucos" para sobrevivir con el mínimo esfuerzo posible.
A estos trucos los llamamos Tecnología.
Toda la historia de la tecnología se puede resumir en una batalla constante por liberar al ser humano de dos cargas:
- El esfuerzo físico: Dejar de usar nuestros músculos para usar otras energías.
- El esfuerzo mental repetitivo: Dejar de estar pendientes de tareas aburridas para que las máquinas lo hagan solas.
Para entender cómo hemos llegado a tener robots, debemos analizar quién cumple las tres funciones básicas en un trabajo: Motor (quien pone la fuerza), Operario (quien pone la habilidad) y Controlador (quien decide qué hacer).
2. EVOLUCIÓN DE LOS SISTEMAS: DEL ARTESANO AL ROBOT
La forma en que fabricamos objetos ha pasado por tres grandes etapas históricas. Cada etapa supuso una revolución en la forma de vivir de las personas.
2.1. Primera Fase: La Era del Artesano (Trabajo Manual)
Durante miles de años, desde la Edad de Piedra hasta antes de la Revolución Industrial, el ser humano era el centro de todo. Las herramientas (como un martillo, una aguja o un serrucho) eran objetos pasivos que no hacían nada por sí mismos.
- ¿Quién es el Motor? El ser humano. Toda la energía venía de tus músculos. Si te cansabas, el trabajo paraba.
- ¿Quién controla? El ser humano. Tu cerebro y tus manos guiaban la herramienta en todo momento.
- Características: El resultado dependía totalmente de la habilidad del artesano. Era un proceso lento y cada objeto fabricado era único y diferente.
2.2. Segunda Fase: La Mecanización (La Revolución de la Máquina)
Con la llegada de la Revolución Industrial (siglos XVIII y XIX), inventamos máquinas capaces de aprovechar energías potentes como el vapor, y más tarde, la electricidad. Nacen las "Máquinas-Herramienta" (tornos, fresadoras, taladros eléctricos).
- ¿Quién es el Motor? La Máquina. Ella pone la fuerza bruta. Ya no te cansas físicamente al taladrar un agujero.
- ¿Quién controla? El ser humano. La máquina es "tonta"; tiene fuerza pero no sabe cuándo parar ni con qué forma cortar. Necesita un operario humano pegado a ella constantemente manejando palancas y botones.
- El cambio: El humano deja de ser el "motor" para convertirse en el piloto. Ganamos velocidad y potencia, pero seguimos atados a la máquina.
2.3. Tercera Fase: La Automatización y Robotización
Es la etapa en la que vivimos (Siglo XX y XXI). Gracias a la electrónica y la informática, conseguimos ponerle un "cerebro" artificial a las máquinas.
- ¿Quién es el Motor? La Máquina.
- ¿Quién controla? El Ordenador/Microcontrolador. La máquina tiene sensores para "ver" lo que hace y un programa para decidir cómo hacerlo.
- El papel humano: El trabajador ya no es un operario que mancha sus manos, sino un Supervisor. Su trabajo es programar la máquina, arreglarla si se rompe y vigilar que todo vaya bien.
- Resultado: Producción masiva, idéntica y sin descanso.
2.4. Diferencia clave: ¿Es un Robot o es un Autómata?
Es común confundir estos términos. Una lavadora es automática, pero no es un robot. Para que los distingas correctamente:
Es una máquina diseñada para repetir una única tarea específica (o un conjunto limitado de ellas).
Ejemplo: Una embotelladora de refrescos o un semáforo. La embotelladora hace lo mismo millones de veces. Si quieres que fabrique zapatos, tienes que tirar la máquina y comprar otra. No se adapta.
Es una máquina programable multifuncional. Su característica principal es la flexibilidad.
Definición: Un robot dispone de un "brazo" o estructura capaz de manipular materiales y herramientas variadas, y su programa puede cambiarse fácilmente. Ejemplo: Un brazo robótico industrial. Por la mañana puede estar soldando puertas de coches, y por la tarde, si le cambias la herramienta del extremo y el programa, puede estar pintando esos mismos coches o empaquetando cajas. La misma máquina sirve para trabajos distintos.
¿Para qué sirven los robots? (Las 3 D)
En la industria actual, los robots no se usan para sustituir al humano en todo (aún somos más hábiles improvisando), sino para las tareas conocidas como "Las 3 D" (del inglés):
- Dull (Aburridas): Tareas repetitivas que provocan fatiga y distracciones, como poner mil tornillos al día.
- Dirty (Sucias): Entornos con polvo, grasa, pintura o residuos que no son agradables para las personas.
- Dangerous (Peligrosas): Trabajos con temperaturas extremas (fundiciones), gases tóxicos, manejo de explosivos o cargas muy pesadas que dañarían la espalda de un trabajador.
CURIOSIDAD HISTÓRICA: El origen de la palabra
¿Sabías que la palabra "Robot" no la inventó un científico, sino un escritor?. Apareció por primera vez en 1920, en una obra de teatro llamada R.U.R., escrita por el checo Karel Čapek. En la obra aparecían unos seres artificiales creados para trabajar sin descanso. Karel dudaba cómo llamarlos y su hermano le sugirió la palabra checa "Robota", que significaba "trabajo forzado" o "esclavo" (como los siervos de la época medieval). Así que, etimológicamente, un robot es un "trabajador esclavo". Antes de 1920, a estas máquinas se las llamaba simplemente Autómatas.
3. SISTEMAS DE CONTROL: ¿CÓMO FUNCIONAN LAS MÁQUINAS?
Un sistema de control es el conjunto de dispositivos que administran, ordenan o regulan el comportamiento de otro sistema para que funcione como nosotros queremos. Básicamente, todo sistema de control sigue este esquema:
ENTRADA (Orden) → CONTROLADOR → SALIDA (Resultado)
Dependiendo de si la máquina es capaz de saber si lo ha hecho bien o mal, dividimos los sistemas en dos tipos: Lazo Abierto y Lazo Cerrado.
3.1. Sistemas de Lazo Abierto (Open Loop)
Son sistemas "ciegos". La máquina ejecuta una orden sin importarle el resultado final. No tiene sensores para comprobar si ha cumplido su objetivo; simplemente actúa durante un tiempo o según una configuración fija.
Características: Son sencillos y baratos, pero poco precisos si las condiciones cambian.
Imaginate que metes una rebanada de pan y pones la ruleta en el número "3" (que son 2 minutos).
1. Entrada: Tiempo (2 minutos).
2. Proceso: Las resistencias se calientan.
3. Salida: Pan tostado.
¿Cuál es el problema? Si metes un pan que ya estaba tostado, la tostadora no lo sabe. Lo calentará 2 minutos más y saldrá quemado. Como no tiene "ojos" (sensores), no puede corregir el error.
Otros ejemplos: El semáforo (cambia de color por tiempo, haya coches o no), la lavadora (lava el tiempo programado, aunque la ropa siga sucia).
3.2. Sistemas de Lazo Cerrado (Closed Loop)
Son sistemas "inteligentes". La máquina tiene sensores que miden constantemente el resultado de su acción. Si el resultado no es el deseado, la máquina se corrige a sí misma. A esto se le llama Realimentación (Feedback).
Características: Son más complejos y caros, pero mucho más precisos y estables.
Imaginate que configuras el mando a \(22^{\circ}C\) en verano.
1. Entrada: Quiero \(22^{\circ}C\).
2. Comparador: El sensor mide la habitación. ¿Hace 30ºC? ¡Hay un error de 8 grados!.
3. Proceso: El motor arranca a máxima potencia.
4. Realimentación: El sensor sigue midiendo. Cuando la habitación llega a 22°C, el sistema "se entera" y apaga el motor. Si entra calor por la ventana, vuelve a encenderse solo.
La diferencia: El aire acondicionado Sí sabe lo que está pasando en la realidad y reacciona.
3.3. Tabla Resumen: ¿Cuál es mejor?
| Característica | Lazo Abierto (Tostadora) | Lazo Cerrado (Aire Acondicionado) |
|---|---|---|
| ¿Tiene Sensor de Salida? | NO. Es "ciego". | SÍ. Se vigila a sí mismo. |
| Precisión | Baja. Depende de calibración externa. | Alta. Se corrige solo. |
| Reacción a perturbaciones | Nula. Si algo cambia, falla. | Buena. Se adapta al cambio. |
| Coste y Complejidad | Barato y sencillo. | Caro y complejo. |
| Concepto Clave | Calibración. | Realimentación (Feedback). |
Los sistemas biológicos son los mejores ejemplos de control en lazo cerrado (Homeostasis).
• Entrada: Tu cuerpo debe estar a 36.5ºC.
• Perturbación: Haces deporte y tu temperatura sube.
• Sensor: Tu cerebro detecta el calor excesivo.
• Corrección: Empiezas a sudar para enfriarte.
Si tu cuerpo fuera de "Lazo Abierto", seguirías calentándote hasta desmayarte sin que tu cerebro hiciera nada para evitarlo. ¡Menos mal que tenemos sensores!.
4. ANATOMÍA DE UN ROBOT: SENSORES Y ACTUADORES
Si en el punto anterior dijimos que la tarjeta controladora (Arduino/Micro:bit) es el cerebro, ahora vamos a ver el resto del cuerpo. Un robot necesita interactuar con el mundo físico: necesita saber qué pasa a su alrededor y necesita poder moverse o comunicarse. Para ello utiliza dos tipos de dispositivos: los Sensores (entradas) y los Actuadores (salidas).
4.1. Los Sensores (Los Sentidos)
Son los dispositivos encargados de captar información del exterior (luz, temperatura, distancia) y traducirla a señales eléctricas que el "cerebro" pueda entender. Sin ellos, el robot sería ciego y sordo. Podemos clasificar los sensores comparándolos con los sentidos humanos:
Son los "ojos". Miden la distancia a una pared para no chocar (como los murciélagos).
Es un botón que detecta contacto físico. Sirve para saber si el brazo robótico ha tocado un objeto o si ha llegado al tope.
Mide la temperatura. Fundamental en impresoras 3D (para fundir plástico) o en climatización.
Detecta la cantidad de luz ambiental. Se usa para que los robots enciendan sus "faros" al entrar en un túnel oscuro.
Detecta la inclinación y el movimiento. Es lo que usa un móvil para girar la pantalla o un dron para no caerse.
Permite activar el robot mediante palmadas o comandos de voz.
Importante: ¿Digital o Analógico?
• Sensores Digitales: Solo tienen dos estados: Sí o NO (Ej: Un botón pulsado o no pulsado).
• Sensores Analógicos: Tienen muchos valores intermedios (Ej: Un sensor de luz te dice si hay mucha, poca, bastante o ninguna luz).
4.2. Los Actuadores (Los Músculos y la Voz)
Una vez que el cerebro ha decidido qué hacer, envía órdenes eléctricas a los actuadores para transformar esa electricidad en una acción física (movimiento, luz o sonido).
- A) Para Moverse (Motores):
- Motor de Corriente Continua (DC): Es el motor básico de los juguetes. Gira muy rápido (como las ruedas de un coche teledirigido). No controla la posición, solo gira o para.
- Servomotor (Servo): Es un motor inteligente con "puntería". No da vueltas completas, sino que le puedes decir: "Gira exactamente a 90 grados y quédate ahí". Es fundamental para mover los brazos de un robot o girar el cuello de una cámara.
- B) Para Comunicarse (Luz y Sonido):
- LEDs: Son pequeñas luces de bajo consumo. Sirven para avisar del estado del robot (Verde = Todo bien, Rojo = Error).
- Zumbador (Buzzer): Un pequeño altavoz que emite pitidos. Sirve para alarmas o melodías sencillas.
4.3. Morfología: ¿Qué forma tiene un robot?
No todos los robots tienen forma humana (androides). La forma del robot (morfología) depende del trabajo que vaya a realizar. Los clasificamos en tres grandes grupos:
- Robots Industriales (Brazos): Están fijos al suelo. Su estructura imita a un brazo humano (hombro, codo, muñeca). Son los reyes de las fábricas. Ejemplo: El robot SCARA (muy rápido) o el Antropomórfico (muy flexible).
- Robots Móviles: Tienen ruedas, orugas o patas para desplazarse. Ejemplo: El robot aspirador (Roomba) o los vehículos de exploración en Marte (Rovers).
- Androides y Zoomorfos: Intentan imitar la forma de seres vivos para moverse por entornos humanos o naturales difíciles. Ejemplo: Los robots perro de Boston Dynamics o el robot Asimo de Honda.
Imagina un Robot Cortacésped.
- 1. ¿Qué Actuadores tiene? (Pista: Ruedas, Cuchillas...).
- 2. ¿Qué Sensores necesita para no salirse del jardín o no atropellar a tu perro? (Pista: Cable perimetral, sensor de choque...).
5. EL CEREBRO DEL ROBOT: TARJETAS CONTROLADORAS
Hasta ahora hemos estudiado los componentes que forman el "cuerpo" de un sistema automático: la estructura mecánica (esqueleto), los sensores (sentidos) y los actuadores (músculos). Sin embargo, para que todos estos elementos funcionen de manera coordinada e inteligente, hace falta un elemento central que tome decisiones: el sistema de control.
Si comparamos un robot con el ser humano, el sistema de control actúa como el cerebro y el sistema nervioso central. Su función es recibir las señales eléctricas que envían los sensores, procesar esa información siguiendo unas reglas lógicas (algoritmo) y enviar órdenes a los actuadores para realizar una acción.
En la industria pesada, esta función la realizan grandes ordenadores llamados PLC (Autómatas Programables). Sin embargo, en la robótica moderna, la domótica y el aprendizaje tecnológico, utilizamos microcontroladores. Estas son pequeñas tarjetas electrónicas que contienen un ordenador completo en un solo chip, capaces de controlar desde un simple semáforo hasta un brazo robótico complejo.
Para que estas tarjetas funcionen, necesitamos dos componentes inseparables:
- 1. Hardware: La tarjeta física y sus componentes electrónicos (lo que se puede tocar).
- 2. Software: El programa informático o código que le dice a la tarjeta qué debe hacer (lo que se diseña en el ordenador).
En esta unidad nos centraremos en las dos plataformas más utilizadas a nivel mundial para aprender a crear nuestros propios sistemas de control: Micro:bit y Arduino.
5.1. Micro:bit
La BBC micro:bit es una tarjeta programable de bolsillo diseñada originalmente en el Reino Unido para la educación. A diferencia de los autómatas industriales, que son costosos y complejos, la micro:bit permite aprender los conceptos básicos de la robótica y el "Internet de las Cosas" (IoT) de forma inmediata, ya que integra múltiples componentes en la misma placa.
Hardware y Características Técnicas:- Matriz de LED (5x5): La placa cuenta con 25 LEDs rojos en el frontal. Funcionan como una pantalla básica para mostrar mensajes de texto desplazables, números (por ejemplo, el valor de un sensor) o iconos sencillos (caras, flechas). También actúa como sensor de luz ambiental.
- Sensores Integrados (Entradas): Su gran ventaja es que no requiere cablear electrónica externa para empezar a funcionar:
- Acelerómetro: Mide la aceleración en 3 ejes. Permite detectar si el robot se mueve, si se ha caído, o gestos como "agitar" o "inclinar".
- Magnetómetro (Brújula): Detecta el norte magnético, útil para orientar robots móviles.
- Termómetro: El procesador mide su propia temperatura, que sirve como aproximación a la temperatura ambiente.
- Botones Programables (A y B): Dos pulsadores físicos que el usuario puede presionar para iniciar secuencias o cambiar modos de funcionamiento.
- Comunicación Inalámbrica:
- Radio: Permite que varias micro:bits se envíen mensajes entre sí. Esto es fundamental para crear enjambres de robots o mandos a distancia personalizados.
- Bluetooth: Permite programar la tarjeta desde un móvil o tablet sin cables.
- Conector de Borde (Edge Connector): En la parte inferior tiene pines metálicos. A través de ellos, y usando una placa de expansión, se pueden conectar motores, servos y sensores externos, convirtiendo la tarjeta en el cerebro de un coche robot o un brazo robótico.
5.2. Arduino
Arduino no es solo una tarjeta, es una plataforma de "hardware libre" (open-source). Esto significa que sus esquemas son públicos, lo que ha generado una inmensa comunidad mundial de usuarios y fabricantes. En educación y prototipado industrial, es el estándar para el control de procesos.
La placa Arduino UNO (Estándar):- Microcontrolador (ATmega328P): Es el cerebro de la placa. Un pequeño chip capaz de procesar instrucciones a gran velocidad (16 MHz), leer sensores y dar órdenes a los actuadores.
- Sistema de Pines (Entradas y Salidas):
- Pines Digitales (0-13): Solo entienden dos estados: HIGH (5V/ Encendido) y LOW (0V/Apagado). Se usan para pulsadores, finales de carrera o para encender LEDs. Los pines marcados con el símbolo ~ (PWM) pueden simular salidas analógicas para controlar la velocidad de un motor.
- Pines Analógicos (A0-A5): Tienen un conversor Analógico-Digital (ADC) de 10 bits. Leen voltajes variables de 0 a 5V y los transforman en un número entre 0 y 1023. Son vitales para leer potenciómetros, sensores de luz (LDR) o sensores de distancia infrarrojos.
- Alimentación: Puede funcionar conectado al USB del ordenador o de forma autónoma con baterías externas (entre 7V y 12V).
- Capacidad de Expansión (Shields): Dado que el Arduino por sí solo no tiene fuerza eléctrica para mover motores grandes, se le pueden acoplar placas llamadas "Shields" o controladores de motores, que gestionan la potencia necesaria para la robótica.
5.3. Fundamentos de Programación y Algoritmia
Un robot es solo una máquina inerte sin un programa que lo dirija. La programación es el proceso de diseñar y codificar una secuencia lógica de instrucciones que el microcontrolador (Arduino o Micro:bit) ejecutará para resolver un problema.
5.3.1. El Algoritmo
Antes de escribir código, se debe diseñar el algoritmo: una secuencia ordenada de pasos finitos y precisos. En robótica, el algoritmo suele seguir el esquema Entrada - Proceso - Salida:
- Entrada: Leer los sensores (ojos/tacto del robot).
- Proceso: Decidir qué hacer según esos datos (cerebro).
- Salida: Activar los motores o luces (músculos).
5.3.2. Lenguajes de Programación
Para que el procesador entienda el algoritmo, usamos un lenguaje de programación.
- Programación por Bloques (MakeCode, Scratch, Tinkercad): Se utilizan piezas gráficas que encajan como un puzle. Es ideal para principiantes porque evita errores de escritura (sintaxis) y permite visualizar la lógica claramente.
- Programación por Código (Arduino IDE - C++): Se escriben las instrucciones texto a texto. Es más potente, flexible y es el estándar profesional. Requiere respetar estrictamente las reglas de escritura (puntos y coma, paréntesis, etc.).
5.3.3. Estructura de un Programa de Control
A diferencia de un programa informático tradicional (que empieza, hace un cálculo y termina), el software de un robot está vivo continuamente. Su estructura se divide en dos bloques:
- 1. Configuración (Setup / Al iniciar): Se ejecuta una sola vez al encender el robot. Aquí "presentamos" al robot sus componentes: definimos qué pines serán entradas (sensores) y cuáles salidas (motores), e iniciamos las comunicaciones.
- 2. Bucle Principal (Loop / Por siempre): Es el núcleo del control. Las instrucciones dentro de este bloque se repiten indefinidamente a gran velocidad. Gracias a esta repetición constante, el robot puede reaccionar a cambios en su entorno en tiempo real (por ejemplo, detenerse milisegundos después de detectar una pared).
5.3.4. Estructuras de Control y Variables
Son las herramientas lógicas que permiten al robot tomar decisiones "inteligentes":
- Variables: Son "cajas" en la memoria donde guardamos datos que cambian con el tiempo. Ejemplo: Una variable llamada Distancia Obstaculo guardará el valor que está midiendo el sensor de ultrasonidos en cada momento.
- Condicionales (SI... ENTONCES / IF... ELSE): Permiten romper la secuencia lineal. El robot evalúa una condición y elige un camino. Ejemplo: "SI la Distancia Obstaculo es menor de 10 cm, ENTONCES parar motores; SI NO, avanzar".
- Bucles (MIENTRAS / WHILE | DESDE / FOR): Permiten repetir una acción concreta varias veces o mientras se cumpla una condición específica.
5.3.5. Diagramas de Flujo (Organigramas)
Son la representación gráfica del algoritmo. En robótica de control, sustituyen a los organigramas lineales simples por diagramas cíclicos (lazos cerrados). Se utilizan símbolos estandarizados:
- Óvalo: Inicio / Fin (aunque en robots el fin es raro).
- Rombo: Decisión (¿Hay obstáculo?). Tiene dos salidas: Sí y No.
- Rectángulo: Proceso o Acción (Mover motor, encender luz).
- Paralelogramo: Entrada/Salida de datos (Leer sensor).
6. PRÁCTICA: SIMULACIÓN DE CIRCUITOS CON TINKERCAD
Aquí tienes una propuesta para una Práctica Guiada en Tinkercad diseñada específicamente para integrarse en tu unidad didáctica. Esta práctica sirve de puente entre la teoría (puntos 5.2 Arduino y 5.3 Programación) y la realidad, permitiendo a los alumnos "tocar" los componentes sin riesgo de romperlos.
Autodesk Tinkercad es una herramienta online gratuita que nos permite diseñar circuitos electrónicos y programar placas Arduino de forma virtual. Es ideal para probar nuestros algoritmos antes de montar el robot real.
Diseñar y programar un Semáforo Automático.
- Hardware: Aprenderemos a conectar LEDs y resistencias a un Arduino.
- Software: Crearemos un algoritmo secuencial (Lazo Abierto) usando programación por bloques.
Paso 1: Entorno de trabajo
- Entra en tinkercad.com e inicia sesión.
- En el menú lateral, selecciona "Circuitos" y pulsa el botón verde "Crear nuevo circuito".
- A la derecha verás el panel de componentes.
Paso 2: Montaje del Hardware
Arrastra los siguientes componentes al área de trabajo central:
- 1 Placa Arduino Uno R3.
- 1 Placa de pruebas pequeña (Protoboard).
- 3 LEDs: Haz clic sobre ellos para cambiarles el color (1 Rojo, 1 Amarillo, 1 Verde).
- 3 Resistencias: Haz clic sobre ellas y cambia su valor a 220 ohmios (\(\Omega\)). Nota: Las resistencias son necesarias para no quemar los LEDs.
- Conecta un cable desde el pin GND (Tierra/Negativo) del Arduino a la línea negativa (azul) de la placa de pruebas.
- Coloca los LEDs en la placa. Recuerda: la pata corta es el Cátodo (-) y la larga el Ánodo (+).
- Conecta una resistencia desde la pata corta de cada LED hacia la línea negativa.
- Conecta los pines digitales del Arduino a la pata larga de cada LED:
- Pin 13 \(\rightarrow\) LED Rojo.
- Pin 12 \(\rightarrow\) LED Amarillo.
- Pin 11 \(\rightarrow\) LED Verde.
Paso 3: Programación (El Algoritmo)
- Pulsa el botón "Código" arriba a la derecha.
- Selecciona el modo "Bloques".
- Borra los bloques que vengan por defecto y construye esta secuencia lógica:
● Definir pasador [13] en [ALTA]
● Esperar [3] segundos
● Definir pasador [13] en [BAJA]
● Definir pasador [11] en [ALTA]
● Esperar [3] segundos
● Definir pasador [11] en [BAJA]
● Definir pasador [12] en [ALTA]
● Esperar [1] segundos
● Definir pasador [12] en [BAJA]
Paso 4: Simulación
Pulsa el botón "Iniciar simulación". Si todo está correcto, el Arduino se encenderá y los LEDs comenzarán a realizar la secuencia del semáforo repetidamente (Bucle Loop).
7. ACTIVIDAD DE AMPLIACIÓN (RETO)
Transformar el sistema en Lazo Cerrado
El semáforo anterior funciona por tiempo (lazo abierto). El reto consiste en añadir un Pulsador al circuito conectado al Pin 2.
- Objetivo: El semáforo debe estar siempre en Verde para los coches, y SOLO cuando un peatón pulse el botón, debe cambiar a Rojo.
- Pista: Necesitarás usar el bloque de control "SI... ENTONCES" y el bloque de entrada "Leer pasador digital 2".