Qahva haqida avtomatik xabar berish tizimi: 7 qadam (rasmlar bilan)
Qahva haqida avtomatik xabar berish tizimi: 7 qadam (rasmlar bilan)
Anonim
Image
Image
Qahva haqida avtomatik xabar berish tizimi
Qahva haqida avtomatik xabar berish tizimi

Ushbu loyihada men ofis qahvaxonasini aqlli qilaman, chunki kimdir yangi qozon qahva qaynatganda Slack xabarnomalarini yuboradigan qahva ogohlantirish tizimini yaratadi. Kodni elektron pochta yoki SMS yuborish uchun o'zgartirish mumkin. Bu loyiha Raspberry Pi Zero-W asosida qurilgan

Buning uchun men qahva mashinasining haroratini doimiy nazorat qilib turishim kerak. Men DS18B20 suv o'tkazmaydigan harorat sensori va Raspberry Pi Zero-W bilan bordim.

Agar sizga bu loyiha yoqsa, meni Instagram va YouTube -da kuzatib boring.

Havolalar

Kod va simlar diagrammasi:

Adafruit Raspberry Pi va DS18B20 harorat sensori bo'yicha qo'llanma:

Qismlar (ba'zi sheriklik havolalari)

Mini lehimsiz prototipli jadval:

Erkak -ayol jumper simlari:

Adafruit -dan DS18B20 raqamli harorat sensori:

EBay-dagi raqamli harorat sensori (men foydalangan):

Raspberry Pi Zero W Kit:

Adafruit -dan Raspberry Pi Zero W ($ 10 etkazib berish):

Menda LED yonma -yon yotardi.

Yagona guruh va quvurlar Lowesdan kelgan

1 -qadam: O'chirish davri

O'chirish davri
O'chirish davri
O'chirish davri
O'chirish davri
O'chirish davri
O'chirish davri
O'chirish davri
O'chirish davri

Bu sxema kechki ovqat uchun oddiy. Men mayda non taxtasida qurdim, shuning uchun lehim qilmasligim kerak edi (men o'sha paytda o'rganayotgan edim). Men DS18B20 dan keladigan simlarga bir nechta o'tish simlarini lehimladim, shuning uchun uni taxtaga ulash mumkin edi. Buni qilishning hojati yo'q, va hamma narsani bir -biriga oson lehimlab qo'yish mumkin edi (Mening Duel of Things of Thermometer videosiga qarang).

Diagrammani ko'rib chiqing.

Asosan, siz 5 -pindan DS18B20 -dagi sariq simga, er simiga (qora) va qizil simga 3.3V ga o'tish simini o'tkazasiz. Keyin, sensordagi 3.3V va sariq sim (signal) o'rtasida 4.7K qarshilik qo'shing

Qo'shimcha ma'lumot olish uchun siz Adafruit -ning Raspberry Pi va DS18B20 harorat sensori qo'llanmasini tekshirishingiz kerak

2 -qadam: Pi -ni sozlash va harorat ko'rsatkichini olish

Pi Zero W-da Raspbian-ni (menda Gist va video bor) o'rnatgandan so'ng, siz haroratni o'lchash interfeysini yoqish uchun Pi-ga SSH kiritishingiz va dtoverlay = w1-gpio-ni ishga tushirishingiz kerak bo'ladi. Keyin sudo reboot -ni ishga tushirish orqali qayta ishga tushiring. SSHing -ni Pi -ga qaytargandan so'ng, harorat ko'rsatkichini olish uchun quyidagilarni bajarishingiz mumkin.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-therm
  • cd/sys/bus/w1/devices ls cd 28-xxxx (bu raqamni qaysi seriya raqami o'rnatilganiga mos keladigan qilib o'zgartiring)
  • mushuk w1_slave

Eslatma: Windows -dagi SSH -ga Putty -dan foydalanish kerak bo'lishi mumkin.

3 -qadam: Qahva qaynatgichga ulanish va kalibrlash

Qahva qaynatgichga ulanish va kalibrlash
Qahva qaynatgichga ulanish va kalibrlash

Harorat o'lchagichini qahva qaynatgichga ulash uchun men metall isituvchi yopishqoq lentani ishlatardim va uni qozon orqasiga yopishtirdim. Bizda ofisda joylashgan qahva qaynatgich - bu eski metall bukchali, issiqlikni yaxshi o'tkazadigan. Siz probni qahva qaynatgichga qo'yish uchun yaxshi joy topishingiz kerak bo'ladi. DS18B20 harorat sensori suv o'tkazmaydigan, shuning uchun sizda variantlar bor.

Tekshirish moslamasi ulangandan so'ng, siz pivo tayyorlash paytida haroratni kuzatib borishingiz va uni pishirish paytida, shuningdek, qachon pishirilganida qanday haroratga tushishini ko'rishingiz kerak bo'ladi. Oddiy harorat va pishirilgan harorat o'rtasida etarlicha katta harorat farqini beradigan joyni topish uchun sensorning joylashuvi bilan o'ynash kerak bo'lishi mumkin.

Harorat raqamlarini olish uchun siz "Pi ni sozlash va haroratni o'qish" bosqichidagi buyruqlarni bajarib, haroratni konsolga yozib qo'yishingiz mumkin.

Eslatma: siz barcha buyruqlarni faqat bir marta ishlatishingiz kerak, so'ngra "cat w1_slave" buyrug'ini ishlatib, eng yangi temp o'qishni ko'rish mumkin.

4 -qadam: Kod

Kodeks
Kodeks

Bu erda kodga havola: https://github.com/calebbrewer/pi-coffee-ready/blo… JavaScript-da yozilgan (nodejs)

Yuqorida bir nechta konstantalar mavjud bo'lib, ularni sozlash uchun ishlashini o'zgartirish mumkin.

  • const brewingTemp = 88; (Bu pishirish paytida eng past harorat. Bu harorat tushganda old tarafdagi LED chiroq yonadi)
  • const brewedTemp = 93; (Bu haroratga yetganda, biz qahva tayyor ekanligini bilamiz)
  • const brewOffset = 45 * 60000; (Bu yana tekshirishdan oldin kutish vaqti. 45 -ni qahva qaynatgich sovishini kutish kerak bo'lgan daqiqalar soniga o'zgartiring)
  • const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Bu vaqtinchalik o'qiladigan faylga yo'l. Sizniki menikidan farq qiladi. "Pi ni sozlash va haroratni o'qish" qadamidagi buyruqlarni bajarish orqali topilgan fayldan foydalaning.)
  • const slackMessage = {"foydalanuvchi nomi": "Qahva boti", "matn": "Yangi qahva bor! Yaxshi bo'lganda oling."}
  • const slackHook = ""; (Sizning bo'sh kancangiz)

Bu kod Slack xabarnomasini yuborishga asoslangan, lekin 75 -qatorda men aslida xabar yuboraman. Siz xohlagan xizmatni bildirishnoma yuborish uchun o'zgartirishingiz mumkin.

Agar siz xabar yuborish uchun Slack kancasini qanday sozlashni bilmoqchi bo'lsangiz, ushbu hujjatni ko'ring:

Kodni Pi -ga qo'shish uchun index.js va package.json fayllarini Pi -ga nusxalash uchun scp buyrug'idan foydalaning. Masalan: scp index.js pi@pi-ip-manzil:/var/pi-qahvaga tayyor

5 -qadam: tugun va kodni PM2 bilan yuklashda boshlash

Tugun va kodni PM2 bilan yuklashda boshlash
Tugun va kodni PM2 bilan yuklashda boshlash

Kodni ishga tushirish uchun quyidagilarni bajarib nodejs ni o'rnatishingiz kerak bo'ladi:

  • SSH kirdi
  • Ishga tushirish: $ wget -O -https://raw.githubusercontent.com/sdesalas/node-p… | bash
  • Kodni kiritadigan katalogga o'tish uchun "cd" buyrug'idan foydalaning
  • "Npm install" ni ishga tushiring
  • "Npm start" ni ishga tushiring

Pi ochilganda kodni ishga tushirish uchun pm2 dan foydalanardim. Pi yugurish paytida:

  • npm pm2 -g ni o'rnating
  • pm2 ni ishga tushirish app.js

Shundan so'ng, skript Pi yuklanganda boshlanadi.

6 -qadam: ajoyib ko'rinishga ega bo'lish

Ajoyib ko'rinishga ega bo'lish
Ajoyib ko'rinishga ega bo'lish
Ajoyib ko'rinishga ega bo'lish
Ajoyib ko'rinishga ega bo'lish
Ajoyib ko'rinishga ega bo'lish
Ajoyib ko'rinishga ega bo'lish

Men komponentlarni ushlab turish uchun chiqish qutisini va uyni ta'mirlash do'konidan 1/2 dyuymli metall quvurni oldim. Quvur quti uchun tayanch bo'lishi uchun men uni birlashtirdim. Keyin men uni qizil va oq rangga bo'yadim.

Men qutining old qismi uchun grafik yaratdim va uni kesish uchun vinil kesgichdan foydalandim. Men indikatorli LED uchun teshik ochdim, keyin vinilni qutining qopqog'iga mahkamladim.

Men Pi -ning orqa qismini elektr tasmasi bilan yopib qo'ydim, shunda orqadagi kontaktlar metall qutiga tushib qolmasdi. Keyin men gilam lentasi bilan qutining bir tomoniga Pi ni yopishtirdim. Men yopishtirilgan taglik yordamida mini -taxtani boshqa tomonga biriktirdim.

Simlar trubadan yaxshi o'tib, T moslamasidan chiqib ketadi. Iltimos, bo'yoq ishlaganini kechiring. Men biroz shoshildim.

7 -qadam: Hammasi bajarildi

Hammasi bajarildi
Hammasi bajarildi
Hammasi bajarildi
Hammasi bajarildi
Hammasi bajarildi
Hammasi bajarildi

Va xuddi shunday, sizda ajoyib ko'rinadigan qahva ogohlantirish tizimi mavjud!

Agar sizga bu loyiha yoqsa, meni Instagram va YouTube -da kuzatib boring.