Otomatik Kahve Bildirim Sistemi: 7 Adım (Resimli)
Otomatik Kahve Bildirim Sistemi: 7 Adım (Resimli)
Anonim
Image
Image
Otomatik Kahve Bildirim Sistemi
Otomatik Kahve Bildirim Sistemi

Bu projede, birisi taze bir demlik kahve hazırladığında Slack bildirimleri gönderen bir kahve uyarı sistemi kurarak bir ofis kahve makinesini akıllı hale getiriyorum. Kod, bir e-posta veya kısa mesaj göndermek için değiştirilebilir. Bu proje bir Raspberry Pi Zero-W üzerine inşa edilmiştir.

Bunu yapmak için kahve makinesinin sıcaklığını sürekli olarak izlemem gerekecek. DS18B20 su geçirmez sıcaklık sensörü ve bir Raspberry Pi Zero-W ile gittim.

Bu projeyi beğendiyseniz, lütfen beni Instagram ve YouTube'da takip edin.

Bağlantılar

Kod ve Kablolama Şeması:

Adafruit'in Raspberry Pi & DS18B20 Sıcaklık Sensörü Kılavuzu:

Parçalar (Bazı Ortaklık Bağlantıları)

Mini Lehimsiz Prototip Breadboard:

Erkekten dişiye atlama telleri:

Adafruit'ten DS18B20 Dijital Sıcaklık Sensörü:

eBay'de Dijital Sıcaklık Sensörü (Kullandığım):

Raspberry Pi Zero W Kiti:

Adafruit'ten Raspberry Pi Zero W (10$ kargo):

LED'in etrafını sardım.

Tek çete kutusu ve borular Lowes'tan geldi

Adım 1: Devre

Devre
Devre
Devre
Devre
Devre
Devre
Devre
Devre

Bu devre çok basit. Benimkini mini bir breadboard üzerine kurdum, böylece lehimlemem gerekmedi (o zamanlar sadece öğreniyordum). Bununla birlikte, devre tahtasına takılabilmesi için DS18B20'den çıkan tellere bazı atlama telleri lehimledim. Bunu bu şekilde yapmak zorunda değilsiniz ve her şey kolayca birlikte lehimlenebilir (Düello Nesnelerin İnterneti Termometresi videoma bakın).

Şemaya bir göz atın.

Temel olarak, DS18B20'deki pim 5'ten sarı kabloya, topraklama kablosuna (siyah) ve kırmızı kabloya 3,3V'luk bir atlama kablosu çalıştırırsınız. Ardından, sensördeki 3.3V ile sarı kablo (sinyal) arasına 4.7K direnç ekleyin

Daha fazla bilgi için Adafruit'in Raspberry Pi & DS18B20 Sıcaklık Sensörü Kılavuzuna göz atmalısınız.

Adım 2: Pi'yi Ayarlama ve Sıcaklık Okuması Alma

Raspbian'ı (bunun için bir Gist'im ve bunun için bir videom var) Pi Zero W'ye kurduktan sonra, sıcaklık probları arayüzünü etkinleştirmek için Pi'ye SSH yapmanız ve dtoverlay=w1-gpio çalıştırmanız gerekecek. Ardından sudo yeniden başlatmayı çalıştırarak yeniden başlatın. SSH'yi Pi'ye geri döndürdükten sonra, bir sıcaklık okuması almak için aşağıdakileri çalıştırabilirsiniz.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-term
  • cd /sys/bus/w1/devices ls cd 28-xxxx (bunu, açılan seri numarasıyla eşleşecek şekilde değiştirin)
  • kedi w1_slave

Not: Windows'ta SSH için Putty kullanmanız gerekebilir.

Adım 3: Kahve Makinesine Bağlanma ve Kalibre Etme

Kahve Makinesine Bağlanma ve Kalibre Etme
Kahve Makinesine Bağlanma ve Kalibre Etme

Sıcaklık sensörünü kahve makinesine takmak için metal ısıtmalı koli bandı kullandım ve bunu kazanın hemen arkasına yapıştırdım. Ofisteki kahve makinesi, ısıyı iyi ileten hoş bir metal sırtlı eski bir çörek. Probu kahve makinenize koymak için iyi bir yer bulmanız gerekecek. DS18B20 sıcaklık sensörü su geçirmezdir, bu nedenle seçenekleriniz vardır.

Prob takıldıktan sonra, demleme sırasında sıcaklığı izlemeniz ve demleme sırasında ve demlendiğinde hangi sıcaklığa ulaştığını görmeniz gerekir. Normal sıcaklık ve demlenmiş sıcaklık arasında size yeterince büyük bir sıcaklık farkı veren bir yer bulmak için sensörün konumuyla oynamanız gerekebilir.

Geçici numaralarınızı almak için "Pi'yi Ayarlama & Sıcaklık Okuması Alma" adımındaki komutları çalıştırarak sıcaklığı konsola kaydedebilirsiniz.

Not: Tüm komutları yalnızca bir kez çalıştırmanız, ardından en yeni sıcaklık okumasını görüntülemek için "cat w1_slave" komutunu çalıştırmanız yeterlidir.

Adım 4: Kod

kod
kod

İşte kodun bağlantısı: https://github.com/calebbrewer/pi-coffee-ready/blo… JavaScript ile yazılmıştır (nodejs)

En üstte, kurulumunuz için çalışmasını sağlamak için değiştirebileceğiniz birkaç sabit vardır.

  • const brewingTemp = 88; (Bu, demleme sırasındaki en düşük sıcaklıktır. Bu sıcaklığa ulaşıldığında ön taraftaki LED ışık yanıp sönecektir)
  • const brewedTemp = 93; (Bu sıcaklığa ulaşıldığında kahvenin hazır olduğunu anlarız)
  • const brewOffset = 45 * 60000; (Bu, tekrar kontrol etmeden önce beklemenin zamanıdır. 45'i kahve makinesinin soğumasını beklemek istediğiniz dakika sayısıyla değiştirin)
  • const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Geçici okumalı dosyanın yolu budur. Sizinki benimkinden farklı olacaktır. "Pi'yi Ayarlama & Sıcaklık Okuması Alma" adımındaki komutları çalıştırarak bulduğunuz dosyayı kullanın.)
  • const slackMessage = { "username": "Coffee Bot", "text": "Taze kahve var! İyiyken alın."}
  • const slackHook = ""; (Slack kancanız)

Bu kod, bir Slack bildirimi göndermeye dayanmaktadır, ancak 75. satır, mesajı gerçekten gönderdiğim yerdir. İstediğiniz hizmetle bir bildirim göndermek için bunu değiştirebilirsiniz.

Mesaj göndermek için bir Slack kancasının nasıl kurulacağını öğrenmek istiyorsanız şu belgeye bakın:

Kodunuzu Pi'ye eklemek için, index.js ve package.json dosyalarını Pi'ye kopyalamak için scp komutunu kullanın. Örneğin: scp index.js pi@pi-ip-address:/var/pi-coffee-ready

Adım 5: Düğüm & PM2 ile Önyüklemede Kodu Başlatma

Düğüm & PM2 ile Önyüklemede Kodu Başlatma
Düğüm & PM2 ile Önyüklemede Kodu Başlatma

Kodu çalıştırmak için aşağıdakileri yaparak nodejs yüklemeniz gerekir:

  • SSH'de
  • Çalıştır: $ wget -O - https://raw.githubusercontent.com/sdesalas/node-p… | bash
  • Kodunuzu koyduğunuz dizine geçmek için "cd" komutunu kullanın.
  • "npm kurulumunu" çalıştırın
  • "npm start" komutunu çalıştırın

Pi açıldığında kodu çalıştırmak için pm2 kullandım. Pi çalışmasına girerken:

  • npm pm2 -g'yi kurun
  • pm2 app.js'yi başlat

Bundan sonra, Pi önyüklendiğinde komut dosyası başlayacaktır.

Adım 6: Havalı Görünmesini Sağlayın

Havalı Görünmesini Sağlamak
Havalı Görünmesini Sağlamak
Havalı Görünmesini Sağlamak
Havalı Görünmesini Sağlamak
Havalı Görünmesini Sağlamak
Havalı Görünmesini Sağlamak

Bileşenleri tutmak için bir çıkış kutusu ve bir ev geliştirme mağazasından bir miktar metal 1/2 inç boru aldım. Pip kutu için bir stand olacak şekilde bir araya getirdim. Daha sonra kırmızı beyaza boyadım.

Kutunun ön tarafı için bir grafik oluşturdum ve kesmek için bir vinil kesici kullandım. Gösterge LED'i için bir delik açtım, ardından vinili kutu kapağına taktım.

Pi'nin arkasını elektrik bandıyla kapladım, böylece arkadaki kontaklar metal kutuda kısa devre yapmasın. Daha sonra Pi'yi kutunun bir tarafına halı bandıyla tutturdum. Mini breadboard'u birlikte verilen yapışkan desteği kullanarak diğer tarafa tuttum.

Teller borudan ve T bağlantı parçasından güzel bir şekilde geçer. Lütfen boya kaçmasını mazur görün. Biraz acele ettim.

7. Adım: Hepsi Tamamlandı

Hepsi tamam
Hepsi tamam
Hepsi tamam
Hepsi tamam
Hepsi tamam
Hepsi tamam

Ve aynen böyle, harika görünen bir kahve uyarı sisteminiz var!

Bu projeyi beğendiyseniz, lütfen beni Instagram ve YouTube'da takip edin.