Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Máquina expendedora inversa (RVM)

Componentes y suministros

Arduino Mega 2560
× 1
NodeMCU ESP8266 Breakout Board
× 1
Sensor de proximidad inductivo, 15 mm
× 2
Sensor de proximidad capacitivo, 12 mm
× 1
Micro-servo motor SG90
× 2
LCD alfanumérico, 16 x 2
× 1
Sensor ultrasónico - HC-SR04 (genérico)
× 2
Módulo GPS (genérico)
× 1
Buzzer, Piezo
× 1
Potenciómetro de una sola vuelta de 100 k ohmios
× 1
Actuador de interruptor, cabezal para pulsador de retorno por resorte
× 1
LED de 5 mm:rojo
× 2
Cables de puente (genéricos)
× 1
Batería, 12 V
× 1
batería de 9V (genérica)
× 1
Breadboard (genérico)
× 2

Herramientas y máquinas necesarias

Soldador (genérico)
Multímetro digital Digilent Mastech MS8217 Autorange
Pelacables y cortador, 18-10 AWG / 0,75-4 mm² Cables de capacidad

Aplicaciones y servicios en línea

Arduino IDE
Blynk
API ThingSpeak

Acerca de este proyecto

MOTIVACIÓN:

¿Dónde terminan las botellas de agua de plástico?

En vertederos, flotando en océanos o ríos y aceras. Se estimó que 46,000 piezas de basura plástica están flotando en el océano por milla cuadrada. Este plástico está matando animales, filtrando productos químicos y alterando los ecosistemas. Cada botella puede tardar hasta mil años en descomponerse, con fugas de sustancias químicas peligrosas y nocivas durante el proceso. Algunas toxinas filtradas podrían causar cáncer y discapacidades reproductivas. La quema de plástico genera emisiones tóxicas como monóxido de carbono, cloro, ácido clorhídrico, fur-ans y nitritos. Desafortunadamente, el argumento del reciclaje solo puede hacer muy poco por su caso, ya que solo el 12% de los treinta y cinco mil millones de botellas que se usan al año se recicla, lo que indica que solo la mitad de lo que se coloca en una papelera de reciclaje en realidad se recicla.

IDEA:

Una máquina inteligente para la eliminación de desechos de plástico y metal es un sistema que acepta desechos de plástico (botellas) y latas de metal para su reciclaje y, a cambio, dispensa pintas en la billetera al operador que recicla los desechos. La máquina expendedora inversa está equipada con sensor de proximidad para distinguir entre diferentes tipos de botellas y los puntos se obtienen cuando el usuario ingresa el código en el sitio web.Esta invención se refiere en general a la gestión de residuos y al reciclaje de los residuos plásticos y metálicos (botellas) en el entorno. La basura de desechos plásticos en el medio ambiente y la menor disposición a reciclar el plástico presenta un problema continuo para el medio ambiente y para todos los seres vivos.

FUNCIONANDO:

Una máquina expendedora inversa es un dispositivo que acepta envases de bebidas usados ​​y devuelve dinero al usuario (lo contrario del ciclo de venta típico). Las máquinas son populares en lugares que tienen leyes de reciclaje obligatorias o legislación sobre depósito de contenedores.

Las operaciones básicas implican pasos en los que el reciclador coloca la botella / lata vacía en la abertura de recepción; el sistema de alimentación horizontal permite al usuario insertar contenedores de uno en uno. La botella / lata se escanea automáticamente con la ayuda de sensores de proximidad capacitivos e inductivos. Si el valor del sensor del sensor inductivo es 1, entonces el objeto es plástico y si el valor del sensor del sensor inductivo es 0 y el valor del sensor capacitivo es 1, entonces el objeto es plástico.

En cuanto al sistema de recompensas, RVM distribuye tokens valiosos, como monedas o cupones, cuando se reciclan los envases de bebidas. Luego, los cupones se utilizan para canjear regalos en el mostrador. Sin embargo, la conciencia de los problemas ambientales y el objetivo de reducir el uso de papel, la impresión de cupones no es muy favorecida. Entonces, en nuestro sistema propuesto, a medida que se detecta el plástico, aparece un código encriptado en la pantalla LCD. Luego, el usuario tiene que escanear el código OR presente en la máquina para navegar al sitio web y canjear sus puntos ingresando el código que obtuvo en la pantalla LCD.

Existe una base de datos para el usuario que tiene una cuenta en el sitio web de la máquina expendedora de plástico inversa. Es obligatorio tener una cuenta para iniciar sesión en el sitio web y canjear los puntos por desechar plástico.

La máquina tiene una característica más, si la máquina está llena, los recolectores de basura o los proveedores de reciclaje y se notifica con la ayuda de una aplicación. El nivel de la máquina se monitorea usando un sensor ultrasónico y NodeMCU, ya que la máquina está llena, los recolectores son informados y la ubicación exacta de la máquina se envía con la ayuda del sistema de posicionamiento global.

Código

  • Segregación de residuos
  • Monitoreo del nivel del cubo de basura
Segregación de residuos C / C ++
 #include  // # incluye "Arduino.h" // # incluye "Button.h" #include  LiquidCrystal lcd (1,2,4,5,6,7); const int knapp =3; int ButtonState =0; // estado actual del buttonint oldButtonState =0; const int ledPin1 =10; const int ledPin2 =11; const int buzz1 =12; const int buzz2 =13; const int plasticsensor =A0; int metalsensor =A1; int metalsensor_M =A2; Servo myservo; Servo myservo_M; int pos =90; int pos_M =360; void setup () {pinMode (knapp, INPUT); digitalWrite (knapp, BAJO); lcd.begin (16,2); lcd.clear (); myservo.attach (9); myservo_M.attach (8); pinMode (sensor de plástico, INPUT_PULLUP); pinMode (sensor de metales, INPUT_PULLUP); pinMode (metalsensor_M, INPUT_PULLUP); pinMode (ledPin1, SALIDA); pinMode (ledPin2, SALIDA); pinMode (buzz1, SALIDA); pinMode (buzz2, SALIDA); Serial.begin (9600);} bucle vacío () {lcd.setCursor (0,0); lcd.print ("INSERTAR METAL EN"); lcd.setCursor (0,1); lcd.print ("LADO DERECHO"); retraso (6000); lcd.clear (); int sensor_read =digitalRead (sensor de plástico); Serial.println ("sensor de plástico"); Serial.println (sensor_read); // retraso (10); int sensor_read_m =digitalRead (metalsensor); // Bandeja de plástico Serial.println ("metal sensor1"); Serial.println (sensor_read_m); // retraso (10); int sensor_read_mm =digitalRead (metalsensor_M); Serial.println (sensor_read_mm); // retraso (10); if ((sensor_read ==1) &&(sensor_read_m! =1)) {for (pos =90; pos <=240; pos + =1) {// va de 0 grados a 180 grados // en pasos de 1 grado myservo.write (pos); // le dice al servo que vaya a la posición en la variable 'pos' // delay (5); digitalWrite (ledPin1, ALTO); digitalWrite (buzz1, ALTO); // espera 15ms a que el servo alcance la posición} // delay (5000); for (pos =240; pos> =90; pos - =1) {// va de 0 grados a 180 grados // en pasos de 1 grado myservo.write (pos); // retraso (5); }} else {// va de 180 grados a 0 grados myservo.write (pos); digitalWrite (ledPin1, BAJO); digitalWrite (buzz1, BAJO); } if ((sensor_read_mm ==1) &&(sensor_read ==0)) {for (pos_M =360; pos_M> =50; pos_M - =1) {// va de 0 grados a 180 grados // en pasos de 1 grado myservo_M.write (pos_M); // retraso (5); digitalWrite (ledPin2, ALTO); digitalWrite (buzz2, ALTO); } // le dice al servo que vaya a la posición en la variable 'pos' // delay (5000); for (pos_M =50; pos_M <=360; pos_M + =1) {// va de 180 grados a 0 grados myservo_M.write (pos_M); // le dice al servo que vaya a la posición en la variable 'pos' // delay (5); // espera 15ms a que el servo alcance la posición}} else {myservo_M.write (pos_M); digitalWrite (ledPin2, BAJO); digitalWrite (buzz2, BAJO); }} 
Supervisión del nivel del cubo de basura C / C ++
 #include "ThingSpeak.h" #include  #include  #include  #include  #define BLYNK_PRINT Serial #define 5WiFi.h> cliente; static const int RXPin =4, TXPin =5; // GPIO 4 =D2 (conecta Tx de GPS) y GPIO 5 =D1 (Conecta Rx de GPSstatic const uint32_t GPSBaud =9600; // si la velocidad en baudios 9600 no funcionó en tu caso, usa 4800 unsigned long myChannelField =1067056; / / Channel IDconst int ChannelField =1; // Qué canal escribir dataconst char * myWriteAPIKey ="FMV95MD2A1J7Y8SP"; // Su escritura ATinyGPSPlus gps; // The TinyGPS ++ objectWidgetMap myMap (V0); // V0 para pin virtual de Map WidgetSoftwareSerial ss (RXPin, TXPin); // La conexión en serie al dispositivo GPS Temporizador BlynkTimer; // Debe obtener el token de autenticación en la aplicación Blynk.char auth [] ="YVvgHBx9fIM1-yR_2XrGXXkKdIuEmrYL"; // Sus credenciales de WiFi.// Establecer contraseña a "" para redes abiertas.char ssid [] ="diksha"; char pass [] ="diksha19"; unsigned int move_index =1; void setup () {Serial.begin (115200); ss.begin (GPSBaud); Blynk.begin (auth, ssid, pass); // timer.setInterval (5000L, checkGPS); pinMode (TRIGGER2, OUTPUT); pinMode (ECHO2, INPUT); pinMode (BUILTIN_LED, OUTPUT); WiFi.mode (WIFI_STA); ThingSpeak. begin (cliente);} / * void checkGPS () {if (gps.charsProcessed () <10) {Serial.println (F ("No se detectó GPS:verifique el cableado.")); }} * / void loop () {if (WiFi.status ()! =WL_CONNECTED) {Serial.print ("Intentando conectarse a SSID:"); Serial.println (ssid); while (WiFi.status ()! =WL_CONNECTED) {WiFi.begin (ssid, pass); Serial.print ("."); retraso (100); } Serial.println ("\ nConectado."); } while (ss.available ()> 0) {// sketch muestra información cada vez que una nueva oración se codifica correctamente. if (gps.encode (ss.read ())) Serial.println ("GPS conectado"); // displayInfo (); {if (gps.location.isValid ()) {flotante latitud =(gps.location.lat ()); // Almacenando el Lat. y Lon. longitud flotante =(gps.location.lng ()); Serial.print ("LAT:"); Serial.println (latitud, 6); // flotar ax posiciones decimales Serial.print ("LONG:"); Serial.println (longitud, 6); ThingSpeak.setField (3, latitud); ThingSpeak.setField (4, longitud); ThingSpeak.writeFields (myChannelField, myWriteAPIKey); Blynk.virtualWrite (V1, String (latitud, 6)); Blynk.virtualWrite (V2, String (longitud, 6)); myMap.location (move_index, latitud, longitud, "GPS_Location"); }}} // larga duración1, distancia1; larga duración2, distancia2; digitalWrite (TRIGGER2, LOW); delayMicroseconds (2); digitalWrite (TRIGGER2, HIGH); delayMicroseconds (10); digitalWrite (TRIGGER2, LOW); duration2 =pulseIn (ECHO2, HIGH); distancia2 =(duración2 / 2) / 29,1; if (distancia2 <=5) {Blynk.notify ("¡¡Por favor !! vacíe el cubo de la basura");} Serial.println ("2 centímetro ultrasónico:"); Serial.println (distancia2); Blynk.virtualWrite (V6, distancia2); ThingSpeak.writeField (myChannelField, ChannelField, distancia2, myWriteAPIKey); retraso (100); Blynk.run (); timer.run ();} 

Esquemas


Proceso de manufactura

  1. Máquina de coser
  2. Haga una puerta de oficina con bloqueo automático con sensor de proximidad para teléfono inteligente
  3. Sensor de temperatura Raspberry Pi
  4. ¿Cómo funciona una máquina expendedora de papas fritas?
  5. ¿Qué es una máquina expendedora de leche?
  6. ¿Cómo puede una máquina expendedora de chips proporcionar chips frescos y calientes?
  7. ¿Qué es una máquina expendedora de fideos?
  8. ¿Qué es una máquina expendedora de sopa de té y café?
  9. ¡Tenga una comida saludable con la máquina expendedora Meal Prep!
  10. ¿Qué esperar de una máquina expendedora de refrescos?
  11. Máquina expendedora de paletas heladas:el potencial comercial