Proyecto 19 - Motor paso a paso (PaP)

Funcionamiento y montaje del motor paso a paso (PaP) En la clase de hoy hemos introducido un nuevo componente, el motor paso a paso, el cual es bastante diferente al motor DC. El motor paso a paso funciona de la siguiente manera: al hacer pasar corriente por una bobina del estator, el campo magnético creado hace que las marcas dentadas del estator y del rotor se alineen. En este tipo de motores, es el rotor el que está formado por un imán permanente, por lo que no necesita escobillas. ...

March 27, 2026

Proyecto 18 - Puente en H

Uso del puente en H para controlar la potencia y el sentido de un motor DC En la clase de hoy hemos estado trabajando con un nuevo componente, el puente en H. En un motor, el sentido de la corriente determina el campo magnético que se crea en el rotor; por tanto, el sentido del giro vendrá dado por el sentido de la corriente. El puente en H es un circuito integrado que permite controlar de manera eléctrica el sentido de la circulación de la corriente, por lo cual podremos seleccionar que la corriente circule en un sentido u otro y, por tanto, el sentido de giro del motor. ...

March 20, 2026

Proyecto 17 - Módulo receptor de IR

Recibir información a través del receptor de infrarrojos En la clase de hoy hemos trabajado con un nuevo componente, el receptor de infrarrojos. Este módulo tiene 3 pines, de los cuales 2 son para tierra (GND) y 5V (VCC), mientras que el otro es la salida digital de señal (S), que conectaremos a un pin digital de Arduino. Este receptor (HX1838) se va a encargar de recibir la información mandada por un mando IR. Este mando es el que nos permite enviar información de forma inalámbrica a una placa de Arduino. La información emitida es digital y se agrupa en tramas de duración y número de bits fijados; es decir, cada botón del mando envía una serie distinta de códigos en el espectro infrarrojo, los cuales serán detectados e interpretados por el receptor. Para que esta comunicación sea posible se hace uso de protocolos de comunicación para determinar una codificación de la información. Por tanto, esta codificación deberá ser conocida tanto por el emisor como por el receptor. ...

March 13, 2026

Proyecto 16 - Números aleatorios y Visualizador 7 segmentos

Generación de números aleatorios En la clase de hoy hemos visto varias cosas, entre ellas la generación de números aleatorios en Arduino; bueno, pseudoaleatorios, ya que es muy importante tener en cuenta que la aleatoriedad no existe realmente en informática. Si tú le pasas las mismas entradas, siempre te dará las mismas salidas. Pero claro, si yo quiero crear un número aparentemente aleatorio voy a tener que hacer uso de una semilla basada en un valor que cambia constantemente. Una práctica muy usada es utilizar como semilla el tiempo Unix, que es un valor de tiempo que siempre aumenta; este empezó el 1 de enero de 1970. ...

March 6, 2026

Proyecto 15 - Registro de desplazamiento

Uso del registro de desplazamiento en Arduino (Entrada del usuario) Como ya sabemos, el número de pines digitales que podemos utilizar en Arduino es limitado. En un Arduino UNO disponemos de 14 pines digitales (0–13), teniendo en cuenta que los pines 0 y 1 se emplean para el puerto serie, y 6 pines analógicos (A0–A5) que también pueden configurarse como digitales. En total, podemos llegar a tener hasta 20 pines digitales configurables. ...

February 27, 2026

Proyecto 14 - Sensor de ultrasonidos

Sensor de ultrasonidos en Arduino Bueno, como veis en el título del proyecto de hoy vamos a aprender a utilizar un sensor de ultrasonidos en Arduino, con el cual vamos a poder medir la distancia al objeto que se encuentre enfrente del sensor e incluso la velocidad a la que se ha movido un objeto de un lado a otro en una ventana de tiempo. Pero vamos por partes. Para el proyecto de hoy vamos a utilizar los siguientes componentes: ...

February 20, 2026

Proyecto 13 - Control del motor y debouncing

Control del motor en Arduino En la clase de hoy hemos empezado un proyecto que consta de dos partes. Parte A (06/02/2026): verificación del control de potencia sobre un motor DC con un montaje sencillo. Parte B (13/02/2026): terminar el proyecto añadiendo pulsadores (acelerador/freno) e implementando “debounce” para evitar rebotes. Antes de nada, decir que el proyecto se puede alimentar con los 5 V de la placa de Arduino o con una pila de 9 V (la típica del kit). Si usas la pila, necesitas el clip/conector de 9 V (habrá que pelar dos cables) para sacar + y −. ...

February 6, 2026

Proyecto 12 - Comunicación entre Arduinos

Trabajando con dos Arduinos En la clase de hoy hemos visto cómo establecer comunicaciones entre dos placas de Arduino mediante el empleo del puerto serie. El proyecto funciona de la siguiente manera: hay dos placas, una de ellas será la placa maestra mientras que la otra será la esclava. La placa maestra poseerá 5 botones que emitirán comunicaciones codificadas en Morse. 1 (p) → Punto 2 (r) → Raya 3 (c) → Conversión a carácter 4 (b) → Borrar último código introducido 5 (e) → Fin de transmisión Esos caracteres al lado de los números son aquellos que se emitirán por el puerto serie. Por otro lado, tenemos la placa esclava, que será la que tiene configurada la pantalla LCD y la que recibirá los diferentes caracteres mandados por los botones de la maestra. ...

January 29, 2026

Proyecto 11 - Pantalla LCD

Pantalla LCD: Montaje En la clase de hoy hemos visto por primera vez la pantalla LCD, la cual contiene 2 filas y 16 columnas. Esta tiene muchas opciones en cuanto a cómo manejarla en software con una librería llamada LiquidCrystal.h; sin embargo, primero hay que montarla y hacerlo bien. El montaje de la placa es el siguiente: VSS -> GND VCC -> 5V V0 -> Pin central del potenciómetro (controlamos el contraste) RS -> Pin digital (Register Selection) R/W -> GND E -> Pin digital D4, D5, D6, D7 -> Pines digitales A (+) -> 5V (Ánodo) (con resistencia de 220 Ω) K (-) -> GND (Cátodo) Tips y consideraciones prácticas La pantalla LCD puede trabajar en modo de 8 bits o de 4 bits. Normalmente se utiliza el modo de 4 bits porque permite ahorrar pines del Arduino sin perder funcionalidad. El potenciómetro es fundamental para ajustar el contraste. Si está mal ajustado, la pantalla puede parecer apagada o mostrar solo bloques negros. La resistencia de 220 Ω en el pin de la retroiluminación protege el LED interno del LCD. Sin esta resistencia existe riesgo de dañar la pantalla. Es obligatorio inicializar la pantalla con lcd.begin(columnas, filas); antes de usar cualquier método de la librería. No es recomendable usar lcd.clear() continuamente dentro del loop() porque puede producir parpadeos en la pantalla. Es mejor sobrescribir el contenido usando lcd.setCursor(). Una vez tengamos todos estos pines conectados a la pantalla LCD, ya podemos configurar el código para empezar a mostrar información por la pantalla. Lo primero que debemos hacer es incluir la librería LiquidCrystal.h. Una vez incluida, podemos crear nuestra pantalla en el código con la siguiente instrucción: ...

December 4, 2025

Proyecto 10 - Reloj de arena digital

Reloj de arena básico en Arduino Hoy hemos visto cómo montar un reloj de arena en Arduino. Para el proyecto de hoy vamos a utilizar los siguientes componentes: 6 LEDs (a poder ser del mismo color) 6 resistencias de 220 Ω para cada LED (si son del mismo color podemos utilizar solo una resistencia común) 1 resistencia de 10 kΩ en caso de no querer usar el pull-up interno 1 sensor de inclinación Como vemos en los componentes, el nuevo componente de hardware del que vamos a aprender hoy es el sensor de inclinación, que básicamente es una pieza que dentro tiene una bolita que hará o no contacto. En mi caso, como utilizo el pull-up interno, si hay contacto dará un 0 (0V) y si hay contacto, es decir, si volteo el sensor, dará un 1 (5V). ...

November 27, 2025

Proyecto 9 - Sensor de humedad y temperatura DHT11

Creando un sensor de Humedad y Temperatura Bueno, para el proyecto vamos por primera vez a instalar una librería que no viene por defecto instalada en el IDE de Arduino para construir un sensor de humedad y temperatura. Esta librería que vamos a instalar se llama DHT sensor library, y es de Adafruit. Esta librería es la que nos va a permitir leer la temperatura y la humedad del sensor. ...

November 20, 2025

Proyecto 8 - Theremín controlado por luz

Entendiendo el Theremín y un ejemplo básico En la clase de hoy hemos creado nuestro primer theremín. El theremín es un instrumento que cambia el sonido que se reproduce dependiendo de la luz. La manera en la que vamos a lograr esto es haciendo uso de un fotorresistor (LDR), ya usado anteriormente en otros proyectos para medir la luz. Este lee un valor entre 0 y 1023, ya que está conectado a un pin analógico. ...

November 13, 2025

Proyecto 7 - Control de Servomotor

Utilizando un servomotor En la clase de hoy hemos visto cómo trabajar con un servomotor, que básicamente es un pequeño motor con realimentación de posición. Tiene tres cables: uno a 5 V, otro a GND (tierra) y, por último, otro que va conectado a un pin digital en la placa (no es necesario que sea PWM). Este servomotor va a girar a X grados, los cuales vamos a poder controlar: los valores mínimo y máximo en grados suelen ser de 0º a 180º. Para controlar este motor vamos a implementar un potenciómetro, ya usado en proyectos anteriores, para leer su valor por un pin analógico y, dependiendo de él, girar el servomotor a X grados. Los grados finales los vamos a mapear haciendo uso de la función map(), a la cual le pasaremos el valor leído por el pin analógico (entre 0 y 1023) y luego el valor final que queremos (entre 0 y 180). ...

November 6, 2025

Proyecto 6 - Mezclando Colores

1. Mezclando colores en función de la luz Para el proyecto de hoy, vamos a hacer uso de las salidas pseudoanalógicas, que son aquellos pines con virgulilla (~), los cuales nos van a permitir generar una salida PWM que indicaremos con la función analogWrite(). Esta función nos permite controlar la potencia media en el pin y, de ahí, entregar más o menos brillo a un LED. Esto lo vamos a juntar con un LED RGB para conseguir una amplia gama de colores. Aparte, haremos que la potencia que entregamos a cada uno de estos colores se mida mediante una fotorresistencia, es decir, una resistencia que varía según la luminosidad. ...

October 30, 2025

Proyecto 5 - Medidor de temperatura

Lo primero nuevo que vemos es un NTC (Negative Temperature Coefficient), es decir, un coeficiente de temperatura negativo. Se trata de un tipo de termistor, una resistencia que varía con la temperatura. Se comporta de la siguiente manera: A baja temperatura, el NTC tiene más resistencia. A alta temperatura, su resistencia disminuye. Esta relación no es lineal, pero en un rango corto (por ejemplo, de 22 a 30 ºC) podemos aproximarla con una recta Mini esquema: Más calor → menos resistencia → más corriente → tensión más baja en el pin analógico. ...

October 23, 2025

Proyecto 4 - Mando analógico

En este proyecto usamos por primera vez un potenciómetro para generar una señal analógica que Arduino leerá por un pin analógico (A0). El cableado es: una patilla exterior del potenciómetro a 5V, la otra exterior a GND, y la patilla central a A0. Así, al girar el pote, la tensión en A0 cambia suave entre 0 V y 5 V. Importante: GND común entre todo. Luego vamos a usar 5 Leds todos ellas del mismo color por preferencia y que todas ellas utilicen la misma resistencia. ...

October 16, 2025

Proyecto 3 - Interfaz de Nave Espacial

Bien para este proyecto lo primero que vamos a tener que hacer es decidir si para la lectura del estado de un botón vamos a querer usar un Pull-Down externo o un Pull-UP interno. Las principales diferencias es que con el externo utilizas más hardware, y con el interno haces uso de la resistencia interna del pin a +5V, en el que se invierte la lógica, es decir, cuando pulsas estas en LOW y cuando no estas en HIGH. ...

October 9, 2025

Proyecto 2 - Control Mediante Puerto Serie

1. Invertir la lógica En el anterior proyecto vimos como controlar el encendido de un LED por instrucciones desde la consola siendo HIGH encendido y LOW apagado, pero que pasa si quiero invertir la lógica: Para invertir el encendido del LED (que LOW encienda y HIGH apague) usamos hundimiento de corriente (sinking). El cableado sería el siguiente: +5 V → ánodo del LED → (LED) → cátodo → resistencia → pin 9. ...

October 2, 2025

Proyecto 1 - Conexiones Serie y en Paralelo

1. Con pulsador Objetivos: Usar la placa Arduino como fuente de 5 V y GND en la protoboard. Entender qué cambia entre serie y paralelo (corriente/tensión). Controlar el encendido de LEDs con pulsadores. Componentes y símbolos: LED, resistencia 220 Ω, pulsador (push button). Recuerda: LED → ánodo (pata larga) a +, cátodo (pata corta) a –. Soluciones posibles: Si quieres hacerlo sin código, basta con intercalar el pulsador en serie en el camino del LED: por ejemplo, +5 V → resistencia 220 Ω → ánodo LED → cátodo LED → pulsador → GND (o poner el pulsador entre +5 V y la resistencia; eléctricamente es equivalente). Así, al pulsar cierras el circuito y el LED se enciende; al soltar, se abre y se apaga. ...

September 25, 2025

Proyecto 0 - Usando el puerto serie

1 2 3 4 5 6 7 8 9 void setup() { Serial.begin(9600); // Abrimos el puerto serie a 9600 Baudios (Habilitamos el UART) Serial.println("Bienvenido!!"); // Imprimimos un mensaje de bienvenida (Solo se imprime una vez) } void loop() { Serial.println("Hola Mundo!!"); // La imprimimos con un salto de línea delay(500); // Esperamos medio segundo entre iteración }

September 18, 2025