Avtomatik Qəhvə Bildirim Sistemi: 7 Adım (Şəkillərlə birlikdə)
Avtomatik Qəhvə Bildirim Sistemi: 7 Adım (Şəkillərlə birlikdə)
Anonim
Image
Image
Avtomatik Qəhvə Bildirim Sistemi
Avtomatik Qəhvə Bildirim Sistemi

Bu layihədə, birisi təzə bir qəhvə dəmləyəndə Slack bildirişləri göndərən bir qəhvə xəbərdarlıq sistemi quraraq bir ofis qəhvə maşınını ağıllı hala gətirirəm. Kod bir e -poçt və ya mətn mesajı göndərmək üçün dəyişdirilə bilər. Bu layihə Raspberry Pi Zero-W üzərində qurulub

Bunu etmək üçün qəhvə maşınının temperaturunu daim izləməli olacam. DS18B20 suya davamlı temperatur sensoru və Raspberry Pi Zero-W ilə getdim.

Bu layihəni bəyəndinizsə, məni İnstagram və YouTube -da izləyin.

Bağlantılar

Kod və Kablo Şeması:

Adafruit-in Raspberry Pi və DS18B20 İstilik Sensoru Kılavuzu:

Parçalar (Bəzi Tərəfdaş Bağlantıları)

Mini Lehimsiz Prototip Breadboard:

Kişi və dişi tullanan tellər:

Adafruit -dən DS18B20 Rəqəmsal Temperatur Sensoru:

EBay-da rəqəmsal temperatur sensoru (istifadə etdiyim):

Raspberry Pi Zero W Kit:

Adafruit -dən Raspberry Pi Zero W (10 dollar göndərmə):

Ətrafımda LED -lər vardı.

Tək dəstə qutusu və borular Lowesdan gəldi

Addım 1: Dövrə

Dövrə
Dövrə
Dövrə
Dövrə
Dövrə
Dövrə
Dövrə
Dövrə

Bu şam yeməyi sadədir. Mina çörək taxtası üzərində qurdum ki, lehimləməyim olmasın (o vaxtlar yeni öyrənirdim). Ancaq bəzi tullanan telləri DS18B20 -dən çıxan tellərə lehim etdim, buna görə çörək taxtasına qoşula bilər. Bunu bu şəkildə etmək lazım deyil və hər şey asanlıqla lehimlənə bilər (Duel of Things Internet Thermometer videosuma baxın).

Diaqrama baxın.

Əsasən, 5 -ci pindən DS18B20 -dəki sarı telə, torpaq telinə (qara) və 3.3V -ə qırmızı telə keçid telini çəkin. Sonra, 3.3V ilə sensordakı sarı tel (siqnal) arasında 4.7K rezistor əlavə edin

Daha çox məlumat üçün Adafruit -in Raspberry Pi və DS18B20 Temperatur Sensor Bələdçisini yoxlamalısınız

Addım 2: Pi qurmaq və temperatur oxunuşu əldə etmək

Pi Zero W-də Raspbian-ı (bunun bir mənası və videom var) qurduqdan sonra, temperatur probları interfeysini aktivləşdirmək üçün Pi-yə SSH daxil etməlisiniz və dtoverlay = w1-gpio proqramını işə salmalısınız. Sonra sudo rebootu işə salaraq yenidən başladın. SSHing -i Pi -yə qaytardıqdan sonra temperatur oxunuşu əldə etmək üçün aşağıdakıları işlədə bilərsiniz.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-term
  • cd/sys/bus/w1/cihazlar ls cd 28-xxxx (bunu hansı seriya nömrələri ilə üst-üstə düşmək üçün dəyişdirin)
  • pişik w1_slave

Qeyd: Windows -da SSH üçün Putty istifadə etməyiniz lazım ola bilər.

Addım 3: Qəhvə hazırlayıcıya qoşulma və kalibrləmə

Qəhvə hazırlayıcısına qoşulma və kalibrləmə
Qəhvə hazırlayıcısına qoşulma və kalibrləmə

İstilik ölçmə cihazını qəhvə maşınına bağlamaq üçün metal qızdırıcı bant istifadə etdim və qazanın arxasına yapışdırdım. Ofisdə olan qəhvə hazırlayıcısı, istiliyi yaxşı keçirən gözəl bir metal arxa köhnə çörəkdir. Zondu qəhvə hazırlayıcınıza qoymaq üçün yaxşı bir yer tapmalısınız. DS18B20 temperatur sensoru suya davamlıdır, buna görə seçimləriniz var.

Sondanı bağladıqdan sonra dəmləyərkən istiliyi izləməli və dəmləyərkən nə qədər dəm vurduğunu görməlisiniz. Normal temperaturla dəmlənmiş temperatur arasında kifayət qədər böyük bir temperatur fərqi verən bir yer tapmaq üçün sensorun yerləşdirilməsi ilə oynamaq lazım ola bilər.

Müvəqqəti nömrələrinizi əldə etmək üçün "Pi qurmaq və temperatur oxunuşu əldə etmək" addımından əmrləri yerinə yetirərək istiliyi konsola daxil edə bilərsiniz.

Qeyd: bütün əmrləri yalnız bir dəfə yerinə yetirməlisiniz, sonra ən yeni temp oxunuşunu görmək üçün "cat w1_slave" əmrini yerinə yetirməlisiniz.

Addım 4: Kod

Kod
Kod

Kodun bağlantısı budur: https://github.com/calebbrewer/pi-coffee-ready/blo… JavaScript-də yazılmışdır (nodejs)

Üst hissədə, quraşdırma üçün işləməsi üçün dəyişə biləcəyiniz bir neçə sabit var.

  • const brewingTemp = 88; (Bu, dəmləmə zamanı ən aşağı tempdir. Bu temp vurulduqda öndəki LED işığı yanıb sönəcək)
  • const brewedTemp = 93; (Bu tempə çatanda qəhvənin hazır olduğunu bilirik)
  • const brewOffset = 45 * 60000; (Yenidən yoxlamadan əvvəl gözləmək vaxtıdır. 45 -i qəhvə makinesinin soyumasını gözləmək istədiyiniz dəqiqə sayına dəyişin)
  • const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Bu, temp oxunuşlu faylın yoludur. Sizinki mənimkindən fərqli olacaq. "Pi qurmaq və temperatur oxunuşu əldə etmək" addımında əmrləri işlədərək tapdığınız faylı istifadə edin.)
  • const slackMessage = {"istifadəçi adı": "Qəhvə Botu", "mətn": "Təzə qəhvə var! Yaxşı olarkən alın"}
  • const slackHook = ""; (Slack çəngəliniz)

Bu kod bir Slack bildirişi göndərməyə əsaslanır, amma 75 nömrəsi əslində mesajı göndərdiyim yerdir. İstədiyiniz xidmətlə bir bildiriş göndərmək üçün bunu dəyişə bilərsiniz.

Mesaj göndərmək üçün Slack kancasının necə qurulacağını bilmək istəyirsinizsə, bu sənədə baxın:

Kodunuzu Pi -yə əlavə etmək üçün index.js və package.json fayllarını Pi -yə kopyalamaq üçün sadəcə scp əmrindən istifadə edin. Məsələn: scp index.js pi@pi-ip-ünvan:/var/pi-qəhvəyə hazır

Addım 5: Düyün və Kodu PM2 ilə Bootda Başlayın

Node & PM2 ilə Boot -da Kodun Başlanması
Node & PM2 ilə Boot -da Kodun Başlanması

Kodu işə salmaq üçün aşağıdakıları etməklə nodejs qurmalısınız:

  • SSH daxil
  • Çalış: $ wget -O -https://raw.githubusercontent.com/sdesalas/node-p… | bash
  • Kodunuzu qoyduğunuz qovluğa keçmək üçün "cd" əmrindən istifadə edin
  • "Npm install" ı işə salın
  • "Npm start" ı işə salın

Pi açıldıqda kodu işə salmaq üçün pm2 istifadə etdim. Pi qaçışına girərkən:

  • npm pm2 -g quraşdırın
  • pm2 start app.js

Bundan sonra, skript Pi çəkildikdə başlayacaq.

Addım 6: Sərin görünməsini təmin edin

Sərin görünməsi
Sərin görünməsi
Sərin görünməsi
Sərin görünməsi
Sərin görünməsi
Sərin görünməsi

Komponentləri saxlamaq üçün bir çıxış qutusu və bir ev yaxşılaşdırma mağazasından 1/2 düymlük metal bir boru tutdum. Borunun qutu üçün dayaq olması üçün bir araya gətirdim. Sonra qırmızı və ağ rəngə boyadım.

Qutunun önü üçün bir qrafik yaratdım və onu kəsmək üçün vinil kəsici istifadə etdim. Göstərici LED üçün bir çuxur qazdım, sonra vinili qutunun qapağına bağladım.

Pi'nin arxasını elektrik lentlə örtdüm ki, arxa tərəfdəki kontaktlar metal qutuda qısalmasın. Sonra Pi -ni xalçanın lentlə qutunun bir tərəfinə bağladım. Daxili yapışqan dəstəyi istifadə edərək mini çörək taxtasını digər tərəfə bağladım.

Tellər borudan yaxşı keçir və T armaturundan çıxır. Zəhmət olmasa boya işini bağışlayın. Bir az tələsdim.

Addım 7: Hər şey bitdi

Hər şey hazırdır
Hər şey hazırdır
Hər şey hazırdır
Hər şey hazırdır
Hər şey hazırdır
Hər şey hazırdır

Və bunun kimi, möhtəşəm görünən bir qəhvə xəbərdarlıq sisteminə sahibsiniz!

Bu layihəni bəyəndinizsə, məni İnstagram və YouTube -da izləyin.