¿Cómo hacer una papelera inteligente usando Arduino?

El mundo se mueve rápido y la tecnología también se mueve con él en el campo de la electrónica. Todo en esta era moderna se está volviendo inteligente. ¿Por qué no hacemos que los botes de basura sean inteligentes? Es un problema común que se ve en nuestro entorno que la mayoría de los botes de basura están tapados desde arriba. Las personas se sienten incómodas al tocar la tapa y abrirla para arrojarle el sarpullido. Podemos solucionar este problema de algunas personas automatizando la tapa del basurero.



Papelera inteligente

Un Arduino y un sensor ultrasónico junto con el servomotor se pueden integrar para hacer un bote de basura inteligente. Si el contenedor detecta basura frente a él, abrirá su tapa automáticamente y la tapa se cerrará después de un retraso de algunos segundos.



¿Cómo abrir y cerrar automáticamente la tapa del cubo de basura con Arduino?

Ahora que conocemos el resumen del proyecto, avancemos y comencemos a recopilar más información sobre los componentes, el funcionamiento y el diagrama del circuito para comenzar a trabajar de inmediato en el proyecto.



Paso 1: recopilación de los componentes

Si quieres evitar cualquier inconveniente en medio de cualquier proyecto, lo mejor es hacer un listado completo de todos los componentes que vamos a utilizar. El segundo paso, antes de empezar a realizar el circuito, es pasar por un breve estudio de todos estos componentes. A continuación se proporciona una lista de todos los componentes que necesitamos en este proyecto.



  • [Amazon Link = ”B07QTQ72GJ” title = ”Arduino Nano” /]
  • [Amazon Link = ”B07JJSGL5S” title = ”Sensor ultrasónico” /]
  • [Amazon Link = ”B07D3L25H3 ″ title =” Servo motor ”/]
  • [Amazon Link = ”B07PPP185M” title = ”Protoboard” /]
  • [Amazon Link = ”B01D9ZM6LS” title = ”Cables de puente de tablero” /]
  • [Amazon Link = ”B07QNTF9G8 ″ title =” Adaptador de corriente de 5 V para Arduino ”/]

Paso 2: estudiar los componentes

Ahora, como tenemos una lista completa de todos los componentes, avancemos un paso y revisemos un breve estudio del funcionamiento de cada componente.

Arduino Nano es una placa de microcontrolador compatible con protoboard que se utiliza para controlar o realizar diferentes tareas en un circuito. Quemamos un Código C en Arduino Nano para decirle a la placa del microcontrolador cómo y qué operaciones realizar. Arduino Nano tiene exactamente la misma funcionalidad que Arduino Uno pero en un tamaño bastante pequeño. El microcontrolador de la placa Arduino Nano es ATmega328p. si no tiene un Arduino Nano, también puede usar Arduino Uno o Arduino Maga.

Arduino Nano



La placa HC-SR04 es un sensor ultrasónico que se utiliza para determinar la distancia entre dos objetos. Consta de un transmisor y un receptor. El transmisor convierte la señal eléctrica en una señal ultrasónica y el receptor convierte la señal ultrasónica de nuevo en la señal eléctrica. Cuando el transmisor envía una onda ultrasónica, se refleja después de chocar con cierto objeto. La distancia se calcula utilizando el tiempo que tarda la señal ultrasónica en ir desde el transmisor y volver al receptor.

Sensor ultrasónico.

A Servo Motor  es un actuador rotatorio o lineal que se puede controlar y mover en incrementos exactos. Estos motores son diferentes de los motores de CC. Estos motores permiten el control preciso del movimiento angular o rotatorio. Este motor está acoplado a un sensor que envía información sobre su movimiento.

Servo Motor

Paso 3: Entender el funcionamiento

Estamos haciendo un cubo de basura cuya tapa se abrirá y cerrará automáticamente y no habrá necesidad de tocarlo físicamente. Solo tendremos que llevar la basura frente al basurero. El sensor ultrasónico detectará automáticamente la basura y abrirá la tapa con la ayuda de un servomotor. Cuando la tapa esté abierta, tiraremos la basura a la papelera y cuando terminemos, la tapa se cerrará automáticamente después de un retraso de algunos segundos. Este es el principio de funcionamiento simple detrás de este proyecto.

Paso 4: Montaje de los componentes

  1. Coloque una placa de pruebas en el costado de un contenedor. Inserta una placa Arduino Nano en ella.
  2. Coloque un sensor ultrasónico en frente del contenedor. el sensor debe estar orientado ligeramente hacia arriba con un pequeño ángulo de elevación.
  3. Tome el servomotor y fije un brazo de servo en él. Coloca el servomotor en la junta del contenedor y la tapa con la ayuda de pegamento caliente.
  4. Ahora haga todas las conexiones a través de cables de conexión. Conecte el Vin y la tierra del motor y el sensor ultrasónico a los 5V y la tierra de Arduino. Conecte el pin de disparo del sensor al pin2 y el pin de eco al pin3 del Arduino. Conecta el pin PWM del servomotor al pin 5 del Arduino.
  5. Ahora que todas las conexiones del circuito están hechas, debería verse así:

    Diagrama de circuito

Paso 5: Empezando con Arduino

Si aún no está familiarizado con Arduino IDE, no se preocupe porque a continuación se explica un procedimiento paso a paso para configurar y usar Arduino IDE con una placa de microcontrolador.

  1. Descargue la última versión de Arduino IDE de Arduino.
  2. Conecte su placa Arduino Nano a su computadora portátil y abra el panel de control. en el panel de control, haga clic en Hardware y sonido . Ahora haga clic en Dispositivos e impresoras. Aquí, busque el puerto al que está conectada su placa de microcontrolador. En mi caso es COM14 pero es diferente en diferentes computadoras.

    Encontrar puerto

  3. Haga clic en el menú de herramientas. y coloque el tablero en Arduino Nano en el menú desplegable.

    Tablero de ajuste

  4. En el mismo menú de herramientas, establezca el puerto en el número de puerto que observó antes en el Dispositivos e impresoras .

    Puerto de configuración

  5. En el mismo menú de herramientas, configure el procesador ATmega328P (antiguo cargador de arranque).

    Procesador

  6. Para escribir código para operar los servomotores, necesitamos una biblioteca especial que nos ayudará a escribir varias funciones para los servomotores. Esta biblioteca se adjunta junto con el código, en el enlace a continuación. Para incluir la biblioteca, haga clic en Bosquejo> Incluir biblioteca> Agregar ZIP. Biblioteca.

    Incluir biblioteca

  7. Descargue el código adjunto a continuación y péguelo en su IDE de Arduino. Clickea en el subir para grabar el código en la placa del microcontrolador.

    Subir

Para descargar el código, haga clic aquí.

Paso 6: Comprensión del código

El código está bastante bien comentado, pero aún así, se explica brevemente a continuación.

1. Al principio, se incluye una biblioteca para que podamos usar funciones integradas para operar el servomotor. También se inicializan dos pines de la placa Arduino Nano para que puedan usarse para el disparador y el pin de eco del sensor ultrasónico. También se hace un objeto para que pueda usarse para establecer valores para los servomotores. También se declaran dos variables para que el valor de la distancia y el tiempo de la señal ultrasónica se pueda guardar y luego usar en la fórmula.

#include // Incluir biblioteca para servomotor Servo servo; // Declarar un objeto para el servomotor int const trigPin = 2; // Conecta el pin2 de arduino con el trigonometraje del sensor ultrasónico int const echoPin = 3; // Conecta el pin3 del arduino con el eco del sensor ultrasónico int duración, distancia; // Declarar variables para almacenar distancia y tipo de señal ultrasónica

2. configuración vacía () es una función en la que inicializamos los pines de la placa Arduino para ser utilizados como ENTRADA o SALIDA. El pin de disparo se utilizará como salida y un pin de eco como entrada. Hemos usado el objeto servo , para conectar el motor al pin 5 del Arduino nano. Pin5 se puede utilizar para enviar la señal PWM. La velocidad en baudios también se configura en esta función. La velocidad en baudios es la velocidad de bits por segundo a la que el microcontrolador se comunica con los dispositivos externos.

configuración vacía () {Serial.begin (9600); // establecer la velocidad en baudios del microcontrolador pinMode (trigPin, OUTPUT); // pin de activación se utilizará como salida pinMode (echoPin, INPUT); // pin de eco se utilizará como entrada servo.attach (5); // Conecta el servomotor al pin 5 de arduino}

3. bucle vacío () es una función que se ejecuta una y otra vez en un bucle. En este bucle, se envía una onda ultrasónica al entorno y se recibe de vuelta. La distancia recorrida se mide utilizando el tiempo que tarda la señal en dejar el sensor y volver a él. Luego, la condición se aplica a la distancia en consecuencia.

bucle vacío () {digitalWrite (trigPin, HIGH); // enviando una señal ultrasónica en el entorno delay (1); digitalWrite (trigPin, BAJO); // Mide la entrada de pulso en el pin de eco. Duration = pulseIn (echoPin, HIGH); // La distancia es la mitad de la duración dividida por 29,1 (de la hoja de datos) distancia = (duración / 2) / 29,1; // si la distancia es menor a 0.5 metros y mayor que 0 (0 o menos significa sobre rango) if (distancia = 0) {servo.write (50); retraso (3000); } else {servo.write (160); }}

Ahora que conocemos todos los pasos a seguir para realizar este increíble proyecto, date prisa y disfruta haciendo tu papelera inteligente.