Sistema automático de notificación de café: 7 pasos (con imágenes)
Sistema automático de notificación de café: 7 pasos (con imágenes)
Anonim
Image
Image
Sistema automático de notificación de café
Sistema automático de notificación de café

En este proyecto, hago que una cafetera de oficina sea inteligente mediante la construcción de un sistema de alerta de café que envía notificaciones de Slack cuando alguien prepara una taza de café recién hecho. El código se puede cambiar para enviar un correo electrónico o un mensaje de texto. Este proyecto se basa en una Raspberry Pi Zero-W

Para hacer esto, necesitaré monitorear continuamente la temperatura de la máquina de café. Fui con el sensor de temperatura impermeable DS18B20 y una Raspberry Pi Zero-W.

Si te gusta este proyecto, sígueme en Instagram y YouTube.

Enlaces

Código y diagrama de cableado:

Guía del sensor de temperatura Raspberry Pi y DS18B20 de Adafruit:

Partes (algunos enlaces de afiliados)

Mini tablero prototipo sin soldadura:

Cables de puente macho a hembra:

Sensor de temperatura digital DS18B20 de Adafruit:

Sensor de temperatura digital en eBay (el que usé):

Kit Raspberry Pi Zero W:

Raspberry Pi Zero W de Adafruit (envío de $ 10):

Tenía el LED por ahí.

La caja y la tubería de un solo grupo provienen de Lowes

Paso 1: el circuito

El circuito
El circuito
El circuito
El circuito
El circuito
El circuito
El circuito
El circuito

Este circuito es muy sencillo. Construí el mío en una mini placa para no tener que soldar (estaba aprendiendo en ese momento). Sin embargo, solté algunos cables de puente en los cables que salen del DS18B20, para que pudiera conectarse a la placa de pruebas. No tiene que hacerlo de esta manera, y todo podría soldarse fácilmente (vea mi video de Duel Internet of Things Thermometer).

Eche un vistazo al diagrama.

Básicamente, simplemente ejecute un cable de puente desde el pin 5 al cable amarillo en el DS18B20, tierra al cable de tierra (negro) y 3.3V al cable rojo. Luego, agregue una resistencia de 4.7K entre 3.3V y el cable amarillo (señal) en el sensor

Para obtener más información, debe consultar la Guía del sensor de temperatura Raspberry Pi y DS18B20 de Adafruit

Paso 2: Configurar el Pi y obtener una lectura de temperatura

Después de instalar Raspbian (tengo un Gist y un video para eso) en el Pi Zero W, necesitará SSH en el Pi y ejecutar dtoverlay = w1-gpio para habilitar la interfaz de sondas de temperatura. Luego reinicie ejecutando sudo reboot. Después de volver a SSH en el Pi, puede ejecutar lo siguiente para obtener una lectura de temperatura.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-therm
  • cd / sys / bus / w1 / devices ls cd 28-xxxx (cambie esto para que coincida con el número de serie que aparece)
  • gato w1_slave

Nota: para SSH en Windows, es posible que deba usar Putty.

Paso 3: Conexión a la cafetera y calibración

Conexión a la cafetera y calibración
Conexión a la cafetera y calibración

Para enganchar la sonda de temperatura a la cafetera utilicé cinta adhesiva metálica para calefacción y la coloqué justo detrás de la caldera. La cafetera que tenemos en la oficina es un bollo viejo con un bonito respaldo de metal que conduce bien el calor. Deberá encontrar un buen lugar para colocar la sonda en su cafetera. El sensor de temperatura DS18B20 es a prueba de agua, por lo que tiene opciones.

Una vez que la sonda esté conectada, deberá controlar la temperatura durante la preparación y ver qué temperatura alcanza al preparar la cerveza, así como cuando se prepara. Es posible que tenga que jugar con la posición del sensor para encontrar un lugar que le dé una diferencia de temperatura lo suficientemente grande entre la temperatura normal y la temperatura de preparación.

Para obtener sus números de temperatura, puede registrar la temperatura en la consola ejecutando los comandos del paso "Configurar el Pi y obtener una lectura de temperatura".

Nota: solo necesita ejecutar todos los comandos una vez, luego simplemente ejecute el comando "cat w1_slave" para ver la lectura temporal más reciente.

Paso 4: el código

El código
El código

Aquí hay un enlace al código: https://github.com/calebbrewer/pi-coffee-ready/blo… Está escrito en JavaScript (nodejs)

En la parte superior hay algunas constantes que puede cambiar para que funcione en su configuración.

  • const brewingTemp = 88; (Esta es la temperatura más baja durante la preparación. La luz LED en la parte delantera parpadeará cuando se alcance esta temperatura)
  • const brewedTemp = 93; (Cuando se alcanza esta temperatura sabemos que el café está listo)
  • const brewOffset = 45 * 60000; (Este es el tiempo de espera antes de volver a verificar. Cambie el 45 por la cantidad de minutos que desea esperar para que se enfríe la cafetera)
  • const filePath = '/ sys / bus / w1 / dispositivos / 28-031702a501ff / w1_slave'; (Esta es la ruta al archivo con lectura temporal. El tuyo será diferente al mío. Usa el archivo que encontraste ejecutando los comandos en el paso "Configurar el Pi y obtener una lectura de temperatura").
  • const slackMessage = {"username": "Coffee Bot", "text": "¡Hay café recién hecho! Consíguelo mientras está bueno"}.
  • const slackHook = ""; (Tu gancho Slack)

Este código se basa en enviar una notificación de Slack, pero la línea 75 es donde realmente envío el mensaje. Puede modificar esto para enviar una notificación con el servicio que desee.

Si desea saber cómo configurar un gancho de Slack para enviar mensajes, consulte este documento:

Para agregar su código al Pi, simplemente use el comando scp para copiar los archivos index.js y package.json al Pi. Por ejemplo: scp index.js pi @ pi-ip-address: / var / pi-coffee-ready

Paso 5: Nodo e inicio del código al arrancar con PM2

Nodo e inicio del código al arrancar con PM2
Nodo e inicio del código al arrancar con PM2

Para ejecutar el código, deberá instalar nodejs haciendo lo siguiente:

  • SSH en
  • Ejecutar: $ wget -O - https://raw.githubusercontent.com/sdesalas/node-p… | intento
  • Use el comando "cd" para cambiar al directorio donde puso su código
  • Ejecute "npm install"
  • Ejecute "npm start"

Para ejecutar el código cuando arranca el Pi, utilicé pm2. Mientras está sumergido en la carrera Pi:

  • npm instalar pm2 -g
  • pm2 iniciar app.js

Después de esto, el script se iniciará cuando se inicie el Pi.

Paso 6: hacer que se vea bien

Haciendo que se vea bien
Haciendo que se vea bien
Haciendo que se vea bien
Haciendo que se vea bien
Haciendo que se vea bien
Haciendo que se vea bien

Agarré una caja de distribución para guardar los componentes y un tubo de metal de 1/2 pulgada de una tienda de mejoras para el hogar. Lo puse junto para que el pip fuera un soporte para la caja. Luego lo pinté de rojo y blanco.

Creé un gráfico para el frente de la caja y usé un cortador de vinilo para recortarlo. Perforé un agujero para el indicador LED, luego pegué el vinilo a la tapa de la caja.

Cubrí la parte posterior del Pi con cinta aislante para que los contactos de la parte posterior no se cortocircuitaran en la caja de metal. Luego pegué el Pi a un lado de la caja con cinta de alfombra. Adjunté la mini placa de pruebas al otro lado usando el respaldo adhesivo incluido.

Los cables pasan bien a través de la tubería y salen de la conexión en T. Disculpe la corrida de pintura. Me apresuré un poco.

Paso 7: todo listo

Todo listo
Todo listo
Todo listo
Todo listo
Todo listo
Todo listo

Y así, ¡tienes un sistema de alerta de café que se ve increíble!

Si te gusta este proyecto, sígueme en Instagram y YouTube.