
Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-23 15:11



I det här projektet gör jag en kaffebryggare på kontoret smart, genom att bygga ett kaffevarningssystem som skickar Slack -meddelanden när någon brygger en ny gryta kaffe. Koden kan ändras för att skicka ett e -postmeddelande eller textmeddelande. Detta projekt är byggt på en Raspberry Pi Zero-W
För att göra detta måste jag kontinuerligt övervaka temperaturen på kaffemaskinen. Jag gick med DS18B20 vattentät temperatursensor och en Raspberry Pi Zero-W.
Om du gillar det här projektet, följ mig på Instagram och YouTube.
Länkar
Kod- och kopplingsschema:
Adafruit's Raspberry Pi & DS18B20 Temperatursensorguide:
Delar (vissa länkar)
Mini lodlös prototypbrödbräda:
Manliga till kvinnliga bygelkablar:
DS18B20 Digital Temp Sensor från Adafruit:
Digital temp-sensor på eBay (den jag använde):
Raspberry Pi Zero W -kit:
Raspberry Pi Zero W från Adafruit ($ 10 frakt):
Jag hade lysdioden liggande.
Singelboxen och rören kom från Lowes
Steg 1: Kretsen




Denna krets är enkel kvällsmat. Jag byggde min på en mini -brödbräda så att jag inte behövde lödda (jag lärde mig just då). Jag löd dock några bygelkablar på trådarna som kom från DS18B20, så att den kunde anslutas till brödbrädet. Du behöver inte göra det på det här sättet, och allt kan lätt lödas ihop (se min Duel Internet of Things Thermometer -video).
Ta en titt på diagrammet.
I princip kör du bara en bygelkabel från stift 5 till den gula ledningen på DS18B20, jordad till jordledningen (svart) och 3,3V till den röda tråden. Lägg sedan till ett 4,7K motstånd mellan 3,3V och den gula ledningen (signalen) på sensorn
För mer information bör du kolla Adafruit's Raspberry Pi & DS18B20 Temperatursensorguide
Steg 2: Konfigurera Pi och få en temperaturavläsning
Efter att ha installerat Raspbian (jag har en Gist och en video för det) på Pi Zero W, måste du SSH in i Pi och köra dtoverlay = w1-gpio för att aktivera gränssnittet för temperatursonder. Starta sedan om genom att köra sudo reboot. Efter SSHing tillbaka till Pi kan du köra följande för att få en temperaturavläsning.
- sudo modprobe w1-gpio
- sudo modprobe w1-therm
- cd/sys/bus/w1/devices ls cd 28-xxxx (ändra detta för att matcha vilket serienummer som dyker upp)
- katt w1_slave
Obs: till SSH i Windows kan du behöva använda Putty.
Steg 3: Anslutning till kaffebryggaren och kalibrering

För att koppla temperatursonden till kaffebryggaren använde jag metalltejp av tejp och fäst den precis bakom pannan. Kaffebryggaren vi har på kontoret är en gammal bulle med en fin metallbaksida som leder värmen bra. Du måste hitta ett bra ställe att sätta sonden på din kaffebryggare. DS18B20 temperaturgivare är vattentät, så du har alternativ.
När sonden är ansluten måste du övervaka temperaturen under bryggningen och se vilken temperatur den når när den bryggs, liksom när den bryggs. Du kan behöva spela med sensorns positionering för att hitta en plats som ger dig en tillräckligt stor tempskillnad mellan normal temp och bryggt temp.
För att få dina temp -nummer kan du logga temperaturen till konsolen genom att köra kommandona från steget "Konfigurera Pi och få en temperaturavläsning".
Obs! Du behöver bara köra alla kommandon en gång och sedan bara köra kommandot "cat w1_slave" för att se den senaste tempavläsningen.
Steg 4: Koden

Här är en länk till koden: https://github.com/calebbrewer/pi-coffee-ready/blo… Den är skriven i JavaScript (nodejs)
Överst finns det några konstanter du kan ändra för att få det att fungera för din installation.
- const brewingTemp = 88; (Detta är den lägsta temperaturen under bryggning. LED -lampan på framsidan blinkar när denna temperatur träffas)
- const brewedTemp = 93; (När denna temperatur har uppnåtts vet vi att kaffet är klart)
- const brewOffset = 45 * 60000; (Det här är tiden att vänta innan du kontrollerar igen. Ändra 45 till det antal minuter du vill vänta på att kaffebryggaren ska svalna)
- const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Detta är sökvägen till filen med tempavläsning. Din kommer att skilja sig från min. Använd filen du hittade genom att köra kommandona i steget "Konfigurera Pi och få en temperaturavläsning".)
- const slackMessage = {"username": "Coffee Bot", "text": "Det finns färskt kaffe! Hämta det medan det är gott."}
- const slackHook = ""; (Din slack krok)
Denna kod är baserad på att skicka en Slack -avisering, men rad 75 är dit jag faktiskt skickar meddelandet. Du kan ändra detta för att skicka ett meddelande med vilken tjänst du vill.
Om du vill veta hur du konfigurerar en Slack-krok för att skicka meddelanden, se detta dokument:
För att lägga till din kod till Pi, använd bara kommandot scp för att kopiera index.js- och package.json -filerna till Pi. Till exempel: scp index.js pi@pi-ip-address:/var/pi-coffee-ready
Steg 5: Nod och starta koden vid start med PM2

För att köra koden måste du installera nodejs genom att göra följande:
- SSH in
- Kör: $ wget -O -https://raw.githubusercontent.com/sdesalas/node-p… | våldsamt slag
- Använd kommandot "cd" för att byta till katalog där du lägger din kod
- Kör "npm install"
- Kör "npm start"
För att köra koden när Pi startar använde jag pm2. Medan du skjuter in i Pi -körningen:
- npm installera pm2 -g
- pm2 starta app.js
Efter detta startar manuset när Pi startar.
Steg 6: Få det att se coolt ut



Jag tog en utloppslåda för att hålla komponenterna och ett metall 1/2 tum rör från en hemförbättringsbutik. Jag satte ihop det så att pipen skulle bli ett stativ för lådan. Sen målade jag det rött och vitt.
Jag skapade en grafik på framsidan av lådan och använde en vinylskärare för att klippa ut den. Jag borrade ett hål för indikatorlampan och fäst sedan vinylen på lådans lock.
Jag täckte baksidan av Pi med eltejp så att kontakterna på baksidan inte skulle bli korta i metallboxen. Jag fäst sedan Pi på ena sidan av lådan med tejp. Jag fäst mini -brödbrädan på andra sidan med den medföljande självhäftande baksidan.
Ledningarna går fint genom röret och ut ur T -kopplingen. Ursäkta färgkörningen. Jag fick lite bråttom.
Steg 7: Allt klart



Och precis så har du ett kaffevarningssystem som ser fantastiskt ut!
Om du gillar det här projektet, följ mig på Instagram och YouTube.
Rekommenderad:
Automatiskt växtbevattningssystem med mikro: bit: 8 steg (med bilder)

Automatiskt växtbevattningssystem med hjälp av en Micro: bit: I denna instruktionsfilm ska jag visa dig hur du bygger ett automatiskt växtbevattningssystem med hjälp av en Micro: bit och några andra små elektroniska komponenter. Micro: bit använder en fuktsensor för att övervaka fuktnivån i växtens mark och
AUTOMATISKT Sopor KAN ELLER BINK. ATT SPARA PLANET .: 19 steg (med bilder)

AUTOMATISKT Sopor KAN ELLER BINK. ATT SPARA PLANET .: Innan vi sätter igång skulle jag rekommendera dig att titta på den första videon innan du läser den här eftersom den är mycket användbar. Hej, jag heter Jacob och jag bor i Storbritannien. Återvinning är ett stort problem där jag bor. Jag ser mycket skräp på åkrarna och det kan vara skadligt. Det
Modelljärnvägslayout med automatiskt sidospår: 13 steg (med bilder)

Modelljärnvägslayout med automatiskt sidospår: Att göra modelltåglayouter är en stor hobby, automatisera det kommer att göra det mycket bättre! Låt oss ta en titt på några av fördelarna med dess automatisering: Lågkostnad: Hela layouten styrs av en Arduino mikrokontroller, med hjälp av en L298N mo
UWaiPi - tidsdrivet automatiskt växtvattensystem: 11 steg (med bilder)

UWaiPi - tidsdrivet automatiskt växtbevattningssystem: Hej! Glömde du att vattna dina växter idag på morgonen? Planerar du en semester men funderar på vem som ska vattna plantorna? Tja, om dina svar är Ja, då har jag en lösning för ditt problem. Jag är verkligen glad att presentera uWaiPi -
Automatiskt vattningssystem med La COOL Board: 4 steg (med bilder)

Automatiskt vattningssystem med La COOL Board: Hej alla, så den här gången börjar vi våra instruktioner genom att gräva lite djupare i La COOL Board. Actor Output på vår bräda aktiverar pumpen när jorden är torr. Först kommer jag att förklara hur det fungerar: La COOL Board har en 3,3 volt utgång