Sommario:

Sistema di notifica automatico del caffè: 7 passaggi (con immagini)
Sistema di notifica automatico del caffè: 7 passaggi (con immagini)

Video: Sistema di notifica automatico del caffè: 7 passaggi (con immagini)

Video: Sistema di notifica automatico del caffè: 7 passaggi (con immagini)
Video: Quando provi a fare un complimento a una ragazza... 2024, Dicembre
Anonim
Image
Image
Sistema di notifica automatico del caffè
Sistema di notifica automatico del caffè

In questo progetto rendo intelligente una caffettiera da ufficio, costruendo un sistema di avviso del caffè che invia notifiche Slack quando qualcuno prepara una tazza di caffè fresca. Il codice può essere modificato per inviare un'e-mail o un messaggio di testo. Questo progetto è basato su un Raspberry Pi Zero-W

Per fare questo dovrò monitorare continuamente la temperatura della macchina del caffè. Sono andato con il sensore di temperatura impermeabile DS18B20 e un Raspberry Pi Zero-W.

Se ti piace questo progetto seguimi su Instagram e YouTube.

Link

Codice e schema elettrico:

Guida al sensore di temperatura Raspberry Pi e DS18B20 di Adafruit:

Parti (alcuni link di affiliazione)

Mini tagliere prototipo senza saldatura:

Ponticelli maschio-femmina:

Sensore di temperatura digitale DS18B20 di Adafruit:

Sensore di temperatura digitale su eBay (quello che ho usato):

Kit Raspberry Pi Zero W:

Raspberry Pi Zero W di Adafruit ($ 10 di spedizione):

Avevo il LED in giro.

La scatola singola e le tubazioni provenivano da Lowes

Passaggio 1: il circuito

Il circuito
Il circuito
Il circuito
Il circuito
Il circuito
Il circuito
Il circuito
Il circuito

Questo circuito è semplicissimo. Ho costruito il mio su una mini breadboard in modo da non dover saldare (stavo solo imparando all'epoca). Ho comunque saldato alcuni fili dei ponticelli sui fili che escono dal DS18B20, in modo che potesse essere collegato alla breadboard. Non devi farlo in questo modo, e tutto potrebbe essere facilmente saldato insieme (vedi il mio video sul termometro di Duel Internet of Things).

Dai un'occhiata al diagramma.

Fondamentalmente, è sufficiente eseguire un ponticello dal pin 5 al filo giallo sul DS18B20, la massa al filo di terra (nero) e 3,3 V al filo rosso. Quindi, aggiungi un resistore da 4,7 K tra 3,3 V e il filo giallo (segnale) sul sensore

Per maggiori informazioni dovresti dare un'occhiata alla guida al sensore di temperatura Raspberry Pi e DS18B20 di Adafruit

Passaggio 2: impostare il Pi e ottenere una lettura della temperatura

Dopo aver installato Raspbian (ho un Gist e un video per questo) sul Pi Zero W, dovrai eseguire SSH nel Pi ed eseguire dtoverlay=w1-gpio per abilitare l'interfaccia delle sonde di temperatura. Quindi riavviare eseguendo sudo reboot. Dopo essere tornato SSH nel Pi, puoi eseguire quanto segue per ottenere una lettura della temperatura.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-therm
  • cd /sys/bus/w1/devices ls cd 28-xxxx (modificalo in modo che corrisponda al numero di serie visualizzato)
  • gatto w1_slave

Nota: per SSH in Windows potrebbe essere necessario utilizzare Putty.

Passaggio 3: collegamento alla caffettiera e calibrazione

Collegamento alla caffettiera e calibrazione
Collegamento alla caffettiera e calibrazione

Per agganciare la sonda di temperatura alla caffettiera ho usato del nastro adesivo riscaldante in metallo, e l'ho attaccato proprio dietro la caldaia. La caffettiera che abbiamo in ufficio è una vecchia ciambella con un bel retro in metallo che conduce bene il calore. Dovrai trovare un buon posto dove mettere la sonda sulla tua caffettiera. Il sensore di temperatura DS18B20 è impermeabile, quindi hai delle opzioni.

Una volta che la sonda è collegata, dovrai monitorare la temperatura durante la preparazione e vedere quale temperatura raggiunge durante la preparazione e quando viene prodotta. Potrebbe essere necessario giocare con il posizionamento del sensore per trovare un posto che ti dia una differenza di temperatura abbastanza grande tra la temperatura normale e la temperatura prodotta.

Per ottenere i tuoi numeri di temperatura, puoi registrare la temperatura sulla console eseguendo i comandi dal passaggio "Impostazione del Pi e lettura della temperatura".

Nota: è sufficiente eseguire tutti i comandi una volta, quindi eseguire semplicemente il comando "cat w1_slave" per visualizzare la lettura temporanea più recente.

Passaggio 4: il codice

Il codice
Il codice

Ecco un link al codice: https://github.com/calebbrewer/pi-coffee-ready/blo… È scritto in JavaScript (nodejs)

Nella parte superiore ci sono alcune costanti che puoi modificare per farlo funzionare per la tua configurazione.

  • const brewingTemp = 88; (Questa è la temperatura più bassa durante la preparazione della birra. La luce LED sulla parte anteriore lampeggerà quando questa temperatura viene raggiunta)
  • const brewedTemp = 93; (Quando questa temperatura viene raggiunta sappiamo che il caffè è pronto)
  • const brewOffset = 45 * 60000; (Questo è il tempo di attesa prima di ricontrollare. Cambiare 45 al numero di minuti che si desidera attendere che la caffettiera si raffreddi)
  • const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Questo è il percorso del file con la lettura temporanea. Il tuo sarà diverso dal mio. Usa il file che hai trovato eseguendo i comandi nel passaggio "Impostazione del Pi e lettura della temperatura".)
  • const slackMessage = { "username": "Coffee Bot", "text": "C'è caffè fresco! Prendilo finché è buono."}
  • const slackHook = ""; (Il tuo gancio Slack)

Questo codice si basa sull'invio di una notifica Slack, ma la riga 75 è dove effettivamente invio il messaggio. Puoi modificarlo per inviare una notifica con qualsiasi servizio desideri.

Se vuoi sapere come impostare un hook Slack per l'invio di messaggi, consulta questo documento:

Per aggiungere il tuo codice al Pi, usa semplicemente il comando scp per copiare i file index.js e package.json sul Pi. Ad esempio: scp index.js pi@pi-ip-address:/var/pi-coffee-ready

Passaggio 5: nodo e avvio del codice all'avvio con PM2

Nodo e avvio del codice all'avvio con PM2
Nodo e avvio del codice all'avvio con PM2

Per eseguire il codice dovrai installare nodejs procedendo come segue:

  • SSH in
  • Esegui: $ wget -O - https://raw.githubusercontent.com/sdesalas/node-p… | bash
  • Usa il comando "cd" per passare alla directory in cui hai inserito il tuo codice
  • Esegui "npm install"
  • Esegui "npm start"

Per eseguire il codice all'avvio del Pi ho usato pm2. Mentre sshed nella corsa Pi:

  • npm install pm2 -g
  • pm2 avvia app.js

Dopodiché lo script verrà avviato all'avvio del Pi.

Passaggio 6: farlo sembrare fantastico

Far sembrare fantastico
Far sembrare fantastico
Far sembrare fantastico
Far sembrare fantastico
Far sembrare fantastico
Far sembrare fantastico

Ho preso una scatola di derivazione per contenere i componenti e un tubo di metallo da 1/2 pollice da un negozio di articoli per la casa. L'ho messo insieme in modo che il pip fosse un supporto per la scatola. Poi l'ho dipinto di rosso e bianco.

Ho creato una grafica per la parte anteriore della scatola e ho usato un cutter per vinile per ritagliarla. Ho praticato un foro per l'indicatore LED, quindi ho attaccato il vinile al coperchio della scatola.

Ho coperto il retro del Pi con del nastro isolante in modo che i contatti sul retro non andassero in cortocircuito nella scatola di metallo. Ho quindi attaccato il Pi a un lato della scatola con del nastro adesivo. Ho attaccato la mini breadboard all'altro lato usando il supporto adesivo incluso.

I fili passano bene attraverso il tubo e fuori dal raccordo a T. Si prega di scusare la corsa di vernice. Ho avuto un po' di fretta.

Passaggio 7: tutto fatto

Tutto fatto
Tutto fatto
Tutto fatto
Tutto fatto
Tutto fatto
Tutto fatto

E proprio così, hai un sistema di avviso per il caffè che sembra fantastico!

Se ti piace questo progetto seguimi su Instagram e YouTube.

Consigliato: