Separador Inteligente de Residuos Secos/Húmedos con Arduino Mega
Componentes y suministros
| Componente | Cantidad | Función |
|---|---|---|
| Arduino Mega 2560 | 1 | Cerebro del proyecto |
| Sensor táctil capacitivo digital DFRobot Gravity | 1 | Clasifica residuos secos |
| Sensor humedad suelo SparkFun (con terminales tornillo) | 1 | Detecta humedad → clasifica seco/húmedo |
| Micro-servomotor SG90 | 1 | Actuador (mueve la compuerta) |
| Láminas acrílicas | 1 | Cuerpo del separador |
| Protoboard medio | 1 | Conexiones |
| Cables puente (genéricos) | 1 | Conexiones |
| Pila 9V (genérica) | 1 | Alimentación |
Herramientas necesarias
- Pelacables/cortacables 18-10 AWG / 0.75-4mm²
- Pistola de silicona caliente
Aplicaciones y servicios online
- Arduino IDE - Plataforma de programación compatible
Sobre el proyecto
Descripción: Este separador puede separar residuos secos y húmedos con éxito.
Nota: No separa plástico ni metal. Para ello se necesitan sensores y módulos adicionales.
Construcción
- Usé 2 láminas acrílicas como cuerpo del separador.
- El servomotor actúa como actuador girando según el tipo de residuo (seco o húmedo).
- Usé una regla escolar de plástico de muy bajo coste como eje del servomotor. Conecta la base superior y el servomotor. Lo pegué con pistola de silicona. Nota: también puedes usar cianocrilato (tipo Super Glue) pero es arriesgado, úsalo con cuidado.
- El sensor de humedad se fija en la parte superior de forma que el residuo caiga directamente sobre él. Junto a él coloqué el sensor táctil para detectar residuo seco. Esto completa la construcción.
¿Por qué sensor táctil si el de humedad ya clasifica?
- Sí, el sensor de humedad clasifica residuo húmedo. Pero no puede clasificar residuo seco. Imagina un estado neutro sin residuo sobre el sensor. Por mucho que intentes, no lograrás este estado neutro. El sensor de humedad siempre estará en estado "seco" por defecto, haciendo que el separador se incline siempre a un lado. Para solucionarlo se usa el sensor táctil.
Implementación paso a paso
- Paso 1: Consigue 2 láminas acrílicas (en tiendas locales o Amazon).
- Paso 2: Haz agujeros en las láminas como en la imagen para fijar el portapilas.
- Paso 3: En la parte superior del portapilas pega el servomotor apuntando recto (cinta doble cara o silicona).
- Paso 4: Toma una regla plástica escolar y haz un agujero en su extremo inferior, ligeramente menor que el diámetro del eje del motor (puedes usar soldador caliente o varilla fina de acero).
- Paso 5: Pega la otra lámina acrílica sobre la regla con silicona. Asegúrate de que quede firme y no se mueva.
- Paso 6: Coloca el sensor de humedad y el sensor táctil sobre la lámina acrílica superior.
> Siguiendo estos 6 pasos correctamente ya lo tienes listo :)
Explicación del hardware
Para implementar este montaje necesitas conocer en profundidad:
- Arduino: Microcontrolador usado en el proyecto. Aprende todo en arduino.cc y la documentación oficial.
- Programación C++: Para programar Arduino necesitas C++ nivel intermedio y funciones básicas de Arduino.
- Sensor de humedad: Interfaz con Arduino y diagrama de conexiones.
- Sensor táctil: Interfaz con Arduino y diagrama de conexiones.
- Servomotor: Funcionamiento y control con Arduino.
Funcionamiento del separador inteligente paso a paso
- Paso 1: Se echa el residuo y cae sobre el sensor de humedad.
- Paso 2: Según el umbral configurado, el sensor clasifica como seco o húmedo.
- Paso 3: Inmediatamente el servomotor gira hacia un lado u otro según el tipo y el residuo va al compartimento correspondiente.
- Paso 4: El proceso es autónomo y continuo.
Video: No te pierdas el funcionamiento del proyecto (enlace abajo).
Código
Separador Inteligente (C/C++)
#include <Servo.h>
class Smart_Segregator {
/* _____________________________________________________________
| | Descripción |
| ----------- |
| - Separador inteligente que separa residuos secos y húmedos. |
| (No separa metal ni plástico) |
|............................................................... |
| | Atributos |
| ---------- |
| pin_1 : int | - Pin del servomotor. |
| pin_2 : int | - Pin del sensor de humedad. |
| pin_3 : int | - Pin del sensor táctil. |
|............................................................... |
| | Métodos |
| ------- |
| dry_waste() | - Compuerta gira a la derecha (seco). |
| wet_waste() | - Compuerta gira a la izquierda (húmedo). |
| neutral_state() | - Compuerta en posición central. |
| execute() | - Inicia operación del separador. |
|_____________________________________________________________ */
public:
int servo_pin;
int moisture_sensor_pin;
int touch_sensor_pin;
int detect_moisture;
int detect_touch;
Servo servo;
Smart_Segregator(int pin_1, int pin_2, int pin_3) {
servo_pin = pin_1;
moisture_sensor_pin = pin_2;
touch_sensor_pin = pin_3;
detect_moisture = 0;
detect_touch = false;
}
void init() {
Serial.begin(9600);
servo.attach(servo_pin);
servo.write(90); // Posición neutral
pinMode(moisture_sensor_pin, INPUT);
pinMode(touch_sensor_pin, INPUT);
Serial.println("¡Tu Separador Inteligente está listo para separar!");
}
void dry_waste() { servo.write(0); } // Derecha
void wet_waste() { servo.write(180); } // Izquierda
void neutral_state() { servo.write(90); } // Centro
void execute() {
detect_moisture = digitalRead(moisture_sensor_pin);
detect_touch = digitalRead(touch_sensor_pin);
if (detect_moisture > 85 && detect_touch == true) {
wet_waste(); // Húmedo: humedad alta Y tacto detectado
} else if (detect_moisture <= 85 && detect_touch == true) {
dry_waste(); // Seco: humedad baja Y tacto detectado
} else {
neutral_state(); // Sin residuo: posición neutral
}
}
};
Smart_Segregator segregator(8, 6, 2); // Servo pin 8, humedad pin 6, tacto pin 2
void setup() {
segregator.init();
}
void loop() {
segregator.execute();
}
Esquemáticos
Proceso de manufactura
- Construya un Sistema de Monitorización de Temperatura y Luz Multi‑Sensor con Raspberry Pi y DS18B20
- Papelera Inteligente Avanzada: Optimización de Recogida de Residuos con Sensores IoT
- Proyecto Sensor DHT11 Temperatura y Humedad con Indicadores LED y Altavoz Piezo
- Persianas Inteligentes: Control Automático de Luz con Arduino y Energía Solar
- Construye un tarro inteligente IoT con ESP8266, Arduino y sensor ultrasónico: Monitorización en tiempo real
- Zapatillas Inteligentes Autoajustables con Cosecha de Energía Integrada
- Construye una Torre de Sensores con Arduino Cloud: Temperatura, Movimiento y Gas
- Brazo Robótico Inteligente Controlado por Arduino: Tutorial DIY Fácil
- Tacómetro Arduino de Alta Velocidad – Algoritmo "Single-Shot" para RPM Preciso
- Sistemas de Cárter Húmedo vs Seco: Guía Completa de Lubricación
- Sensores para Arduino: Tipos, Aplicaciones y Proyectos Reales