Taula de continguts:
- Pas 1: el circuit
- Pas 2: configurar el Pi i obtenir una lectura de temperatura
- Pas 3: Connexió a la cafetera i calibració
- Pas 4: el codi
- Pas 5: nodeu i inici del codi a l'arrencada amb PM2
- Pas 6: fer que sembli genial
- Pas 7: tot fet
Vídeo: Sistema de notificació automàtica de cafè: 7 passos (amb imatges)
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
En aquest projecte, faig intel·ligent una cafetera d’oficina mitjançant la creació d’un sistema d’alerta de cafè que envia notificacions de Slack quan algú prepara una cafetera fresca. Es pot canviar el codi per enviar un correu electrònic o un missatge de text. Aquest projecte es basa en un Raspberry Pi Zero-W
Per fer-ho, hauré de controlar contínuament la temperatura de la màquina de cafè. Vaig anar amb el sensor de temperatura impermeable DS18B20 i un Raspberry Pi Zero-W.
Si t’agrada aquest projecte, segueix-me a Instagram i YouTube.
Enllaços
Codi i diagrama de cablejat:
Guia del sensor de temperatura Raspberry Pi i DS18B20 d’Adafruit:
Parts (alguns enllaços d'afiliats)
Mini tauler de prototip sense soldadura:
Filferros de pont masculí a femení:
Sensor de temperatura digital DS18B20 d'Adafruit:
Sensor de temperatura digital a eBay (el que he utilitzat):
Kit Raspberry Pi Zero W:
Raspberry Pi Zero W d’Adafruit (enviament de 10 dòlars):
Tenia el LED col·locat al voltant.
La caixa i la canonada de banda única provenien de Lowes
Pas 1: el circuit
Aquest circuit és senzill. Vaig construir la meva sobre una mini taula de treball, de manera que no vaig haver de soldar (només estava aprenent en aquell moment). Tanmateix, he soldat alguns cables de pont als cables que surten del DS18B20, de manera que es podrien connectar a la placa. No ho heu de fer d’aquesta manera i es pot soldar fàcilment tot junt (vegeu el vídeo del termòmetre Duel Internet of Things).
Mireu l’esquema.
Bàsicament, només heu d’executar un cable de pont des del pin 5 al fil groc del DS18B20, terra al fil de terra (negre) i 3,3 V al fil vermell. A continuació, afegiu una resistència de 4,7 K entre 3,3 V i el fil groc (senyal) del sensor
Per obtenir més informació, consulteu la Guia del sensor de temperatura Raspberry Pi i DS18B20 d’Adafruit
Pas 2: configurar el Pi i obtenir una lectura de temperatura
Després d’instal·lar Raspbian (tinc un Gist i un vídeo per a això) al Pi Zero W, haureu d’iniciar SSH al Pi i executar dtoverlay = w1-gpio per habilitar la interfície de les sondes de temperatura. A continuació, reinicieu executant sudo reboot. Després de SSHing de nou al Pi, podeu executar el següent per obtenir una lectura de temperatura.
- sudo modprobe w1-gpio
- sudo modprobe w1-therm
- cd / sys / bus / w1 / devices ls cd 28-xxxx (canvieu-ho perquè coincideixi amb el número de sèrie que apareix)
- gat w1_esclau
Nota: a SSH al Windows potser haureu d'utilitzar Putty.
Pas 3: Connexió a la cafetera i calibració
Per enganxar la sonda de temperatura a la cafetera, vaig utilitzar cinta adhesiva metàl·lica per escalfar-la i la vaig col·locar just darrere de la caldera. La cafetera que tenim a l’oficina és un pa vell amb un bonic respatller metàl·lic que condueix bé la calor. Haureu de trobar un bon lloc per posar la sonda a la cafetera. El sensor de temperatura DS18B20 és a prova d’aigua, de manera que teniu opcions.
Un cop connectada la sonda, haureu de controlar la temperatura mentre s’elabora i veure quina temperatura impacta quan s’elabora, així com quan s’elabora. És possible que hàgiu de jugar amb el posicionament del sensor per trobar un lloc que us doni una diferència de temperatura suficientment gran entre la temperatura normal i la temperatura elaborada.
Per obtenir els vostres números temporals, podeu registrar la temperatura a la consola executant les ordres del pas "Configuració del Pi i obtenció d'una lectura de temperatura".
Nota: només heu d'executar totes les ordres una vegada i, tot seguit, executeu l'ordre "cat w1_slave" per veure la lectura temporal més recent.
Pas 4: el codi
Aquí hi ha un enllaç al codi: https://github.com/calebbrewer/pi-coffee-ready/blo … Està escrit en JavaScript (nodejs)
A la part superior hi ha algunes constants que podeu canviar perquè funcioni per a la vostra configuració.
- const brewingTemp = 88; (Aquesta és la temperatura més baixa mentre es prepara. El llum LED de la part frontal parpellejarà quan es faci servir aquesta temperatura)
- const brewedTemp = 93; (Quan s'arriba a aquesta temperatura sabem que el cafè està a punt)
- const brewOffset = 45 * 60000; (Aquest és el moment d'esperar abans de tornar a comprovar-ho. Canvieu els 45 pel nombre de minuts que vulgueu esperar perquè la cafetera es refredi)
- const filePath = '/ sys / bus / w1 / devices / 28-031702a501ff / w1_slave'; (Aquest és el camí cap al fitxer amb lectura temporal. El vostre serà diferent del meu. Utilitzeu el fitxer que heu trobat executant les ordres del pas "Configuració del Pi i obtenció d'una lectura de temperatura".)
- const slackMessage = {"username": "Coffee Bot", "text": "Hi ha cafè fresc! Obteniu-lo mentre sigui bo."}
- const slackHook = ""; (El vostre ganxo Slack)
Aquest codi es basa en l’enviament d’una notificació d’Slack, però realment envio el missatge a la línia 75. Podeu modificar-ho per enviar una notificació amb qualsevol servei que vulgueu.
Si voleu saber com configurar un ganxo Slack per enviar missatges, consulteu aquest document:
Per afegir el vostre codi al Pi, només cal que utilitzeu l'ordre scp per copiar els fitxers index.js i package.json al Pi. Per exemple: scp index.js pi @ pi-ip-address: / var / pi-coffee-ready
Pas 5: nodeu i inici del codi a l'arrencada amb PM2
Per executar el codi, haureu d'instal·lar nodejs fent el següent:
- SSH a
- Executa: $ wget -O - https://raw.githubusercontent.com/sdesalas/node-p… | bash
- Utilitzeu l'ordre "cd" per canviar al directori on poseu el codi
- Executeu "npm install"
- Executa "npm start"
Per executar el codi quan arrenca el Pi, he utilitzat pm2. Mentre us dirigiu a l'execució del Pi:
- npm instal·leu pm2 -g
- pm2 start app.js
Després d'això, el guió s'iniciarà quan arrenci el Pi.
Pas 6: fer que sembli genial
Vaig agafar una caixa de sortida per contenir els components i una canonada metàl·lica de 1/2 polzada d'una botiga de millores per a la llar. El vaig ajuntar perquè el pip fos un suport per a la caixa. Aleshores el vaig pintar de vermell i blanc.
Vaig crear un gràfic per a la part frontal de la caixa i vaig utilitzar un tallador de vinil per retallar-lo. He forat un forat per al LED indicador i després he connectat el vinil a la tapa de la caixa.
Vaig cobrir la part posterior del Pi amb cinta elèctrica perquè els contactes de la part posterior no quedessin curts a la caixa metàl·lica. Després he adjuntat el Pi a un costat de la caixa amb cinta adhesiva. Vaig fixar la mini tauleta a l'altre costat amb el suport adhesiu inclòs.
Els cables passen molt bé per la canonada i surten de la connexió T. Disculpeu la pintura. Vaig tenir una mica de pressa.
Pas 7: tot fet
I així, teniu un sistema d’alerta de cafè que té un aspecte fantàstic.
Si t’agrada aquest projecte, segueix-me a Instagram i YouTube.
Recomanat:
Oficina amb bateria. Sistema solar amb panells solars de commutació automàtica est / oest i turbina eòlica: 11 passos (amb imatges)
Oficina amb bateria. Sistema solar amb panells solars de commutació automàtica est / oest i turbina eòlica: el projecte: una oficina de 200 peus quadrats ha de funcionar amb bateria. L'oficina també ha de contenir tots els controladors, bateries i components necessaris per a aquest sistema. L’energia solar i eòlica carregarà les bateries. Hi ha un petit problema de només
Làmpada de notificació Kodak Pi dels anys 30: 6 passos (amb imatges)
Làmpada de notificació Kodak Pi dels anys 30: es tracta d’un visor de taula Kodak dels anys 30 que he adaptat per mostrar notificacions i alertes mitjançant una gamma de colors vius. La font de llum és un Unicorn pHAT, una matriu programable de LEDs brillants, i està controlada per un Raspberry Pi Zero W, que
Alerta d'assecadora de rentadora Arduino: notificació automàtica al telèfon amb Blynk: 5 passos (amb imatges)
Alerta d’assecadora de rentadora Arduino: notificació automàtica per telèfon amb Blynk: la nostra rentadora és al garatge i no sentim els sons que indiquen que el rentat s’ha completat. Volia trobar una manera de rebre notificacions, fos on fos a casa, quan es va acabar el cicle. He estat jugant amb Arduino, ESP8266 WiFi
Sensor de notificació de la rentadora: 6 passos (amb imatges)
Sensor de notificació de la rentadora: aquest sensor de la rentadora es troba a la part superior de la meva rentadora i utilitza un acceleròmetre per detectar les vibracions de la màquina. Quan detecta que el cicle de rentat ha finalitzat, m’envia una notificació al telèfon. Ho vaig construir perquè la pròpia màquina
Notificació push IoT mitjançant Nodemcu al telèfon (per a qualsevol cosa): 5 passos (amb imatges)
Notificació push IoT mitjançant Nodemcu al telèfon (per a qualsevol cosa): l'enviament de notificacions de missatges, els correus electrònics són a l'antiga … Per tant, fem alguna cosa nova que sigui molt fàcil i senzilla. nivell de la bomba d'aigua, reg del jardí, f