Arduino Projects - De Básico a Avanzado
Ejemplos de proyectos con Arduino, desde configuraciones básicas hasta sistemas complejos con sensores y actuadores.
Proyectos
01. Alarma de Proximidad
🎯 Descripción
Sistema que detecta objetos cercanos y activa alerta sonora y visual.
⚙️ Lógica
- Distancia < 20 cm → alarma activa
- Distancia ≥ 20 cm → reposo
🧩 Componentes
- Sensor ultrasónico
- Buzzer
- LEDs
💡 Código
alarma.ino
const int TRIG = 7;
const int ECHO = 6;
const int BUZZER = 8;
const int LED = 13;
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(BUZZER, OUTPUT);
pinMode(LED, OUTPUT);
}
long distancia() {
digitalWrite(TRIG, LOW); delayMicroseconds(2);
digitalWrite(TRIG, HIGH); delayMicroseconds(10);
digitalWrite(TRIG, LOW);
return pulseIn(ECHO, HIGH) * 0.034 / 2;
}
void loop() {
long d = distancia();
if (d < 20) {
digitalWrite(LED, HIGH);
tone(BUZZER, 2000);
} else {
digitalWrite(LED, LOW);
noTone(BUZZER);
}
delay(200);
}
02. 02. Puerta Automática
🎯 Descripción
Simulación de puerta que se abre automáticamente al detectar presencia.
⚙️ Lógica
- Cerca → abrir (servo 180°)
- Lejos → cerrar (servo 0°)
🧩 Componentes
- Sensor ultrasónico
- Servo motor
💡 Código
puerta.ino
#include <Servo.h>
Servo servo;
const int TRIG = 7;
const int ECHO = 6;
void setup() {
servo.attach(9);
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
}
long distancia() {
digitalWrite(TRIG, LOW); delayMicroseconds(2);
digitalWrite(TRIG, HIGH); delayMicroseconds(10);
digitalWrite(TRIG, LOW);
return pulseIn(ECHO, HIGH) * 0.034 / 2;
}
void loop() {
if (distancia() < 20) {
servo.write(180);
} else {
servo.write(0);
}
delay(200);
}
03. Sistema de Parqueo (Parking Sensor)
🎯 Descripción
Asistente de estacionamiento con alertas progresivas.
⚙️ Lógica
- <10 cm → alarma continua
- 10–20 cm → beep rápido
20 cm → sin alerta
🧩 Componentes
- Sensor ultrasónico
- Buzzer
💡 Código
parking.ino
const int TRIG = 7;
const int ECHO = 6;
const int BUZZER = 8;
long distancia() {
digitalWrite(TRIG, LOW); delayMicroseconds(2);
digitalWrite(TRIG, HIGH); delayMicroseconds(10);
digitalWrite(TRIG, LOW);
return pulseIn(ECHO, HIGH) * 0.034 / 2;
}
void setup() {
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
}
void loop() {
long d = distancia();
if (d < 10) {
tone(BUZZER, 2000);
} else if (d < 20) {
tone(BUZZER, 1000);
delay(200);
noTone(BUZZER);
delay(200);
} else {
noTone(BUZZER);
}
}
04. Monitor Inteligente (LCD)
🎯 Descripción
Visualización en tiempo real de distancia en LCD.
🧩 Componentes
- Sensor ultrasónico
- LCD I2C
💡 Código
monitor.ino
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
const int TRIG = 7;
const int ECHO = 6;
long distancia() {
digitalWrite(TRIG, LOW); delayMicroseconds(2);
digitalWrite(TRIG, HIGH); delayMicroseconds(10);
digitalWrite(TRIG, LOW);
return pulseIn(ECHO, HIGH) * 0.034 / 2;
}
void setup() {
lcd.init();
lcd.backlight();
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
}
void loop() {
lcd.clear();
lcd.print("Dist:");
lcd.print(distancia());
lcd.print(" cm");
delay(500);
}
05. Sistema Completo Integrado
🎯 Descripción
Sistema reactivo completo con:
- Detección
- Movimiento
- Alarma
- Visualización
🧠 Lógica
Distancia →
├── Servo (accion)
├── Buzzer (alerta)
├── LEDs (estado)
├── LCD (datos)
└── Matriz (visual)
💡 Implementación
sistema_completo.ino
// Integración total de todos los módulos
// (usar tu código final aquí)
💡 Código
sistema.ino
#include <Servo.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
Servo servo;
const int TRIG = 7;
const int ECHO = 6;
const int BUZZER = 8;
const int LED = 13;
void setup() {
servo.attach(9);
pinMode(TRIG, OUTPUT);
pinMode(ECHO, INPUT);
pinMode(BUZZER, OUTPUT);
pinMode(LED, OUTPUT);
lcd.init();
lcd.backlight();
}
long distancia() {
digitalWrite(TRIG, LOW); delayMicroseconds(2);
digitalWrite(TRIG, HIGH); delayMicroseconds(10);
digitalWrite(TRIG, LOW);
return pulseIn(ECHO, HIGH) * 0.034 / 2;
}
void loop() {
long d = distancia();
lcd.clear();
if (d < 20) {
servo.write(180);
digitalWrite(LED, HIGH);
tone(BUZZER, 2000);
lcd.print("ALERTA!");
lcd.setCursor(0,1);
lcd.print(d); lcd.print(" cm");
} else {
servo.write(0);
digitalWrite(LED, LOW);
noTone(BUZZER);
lcd.print("Seguro");
lcd.setCursor(0,1);
lcd.print(d); lcd.print(" cm");
}
delay(200);
}
🎯 Tabla de LEDs Utilizados
| LED | Pin | Función |
|---|---|---|
| LED 1 | 13 | Alerta visual general |
| LED 2 | 12 | Alerta visual 2 |
| LED 3 | 11 | Alerta visual 3 |

