Съдържание:

Автоматична система за уведомяване за кафе: 7 стъпки (със снимки)
Автоматична система за уведомяване за кафе: 7 стъпки (със снимки)

Видео: Автоматична система за уведомяване за кафе: 7 стъпки (със снимки)

Видео: Автоматична система за уведомяване за кафе: 7 стъпки (със снимки)
Видео: Стоян колев се кара с яница 2024, Ноември
Anonim
Image
Image
Автоматична система за уведомяване за кафе
Автоматична система за уведомяване за кафе

В този проект направя офис кафемашина умна, като изграждам система за предупреждение за кафе, която изпраща Slack известия, когато някой свари прясна тенджера кафе. Кодът може да бъде променен за изпращане на имейл или текстово съобщение. Този проект е изграден върху Raspberry Pi Zero-W

За да направя това, ще трябва непрекъснато да наблюдавам температурата на кафе машината. Отидох с водоустойчивия сензор за температура DS18B20 и Raspberry Pi Zero-W.

Ако ви харесва този проект, моля, последвайте ме в Instagram и YouTube.

Връзки

Кодова и електрическа схема:

Ръководство за температурния сензор на Raspberry Pi и DS18B20 на Adafruit:

Части (Някои партньорски връзки)

Прототипна платка за мини без запояване:

Джъмперни проводници от мъжки към женски:

DS18B20 цифров сензор за температура от Adafruit:

Цифров сензор за температура на eBay (този, който използвах):

Raspberry Pi Zero W Kit:

Raspberry Pi Zero W от Adafruit (доставка за $ 10):

Имах LED наоколо.

Единичната банд кутия и тръбопроводите идват от Lowes

Стъпка 1: Веригата

Веригата
Веригата
Веригата
Веригата
Веригата
Веригата
Веригата
Веригата

Тази схема е проста за вечеря. Изградих моята върху мини макет, така че не трябваше да споявам (по това време само се учех). Аз обаче запоях някои джъмперни проводници към проводниците, които излизат от DS18B20, така че да може да се включи в макета. Не е нужно да го правите по този начин и всичко може лесно да бъде споено заедно (вижте моето видео с термометъра Duel Internet of Things).

Разгледайте диаграмата.

По принцип просто пускате джъмпер проводник от щифт 5 към жълтия проводник на DS18B20, заземен към заземяващия проводник (черен) и 3.3V към червения проводник. След това добавете 4.7K резистор между 3.3V и жълтия проводник (сигнал) на сензора

За повече информация трябва да разгледате Ръководството за температурния сензор на Raspberry Pi и DS18B20 на Adafruit

Стъпка 2: Настройване на Pi & Получаване на отчитане на температурата

След като инсталирате Raspbian (имам Gist & видео за това) на Pi Zero W, ще трябва да SSH в Pi и да стартирате dtoverlay = w1-gpio, за да активирате интерфейса за температурни сонди. След това рестартирайте, като стартирате sudo reboot. След SSHing обратно в Pi можете да изпълните следното, за да получите отчитане на температурата.

  • sudo modprobe w1-gpio
  • sudo modprobe w1-therm
  • cd/sys/bus/w1/devices ls cd 28-xxxx (променете това, за да съответства на изскачащия сериен номер)
  • котка w1_slave

Забележка: за SSH в Windows може да се наложи да използвате Putty.

Стъпка 3: Свързване към кафемашина и калибриране

Свързване към кафемашина и калибриране
Свързване към кафемашина и калибриране

За да закача температурната сонда към кафеварката, използвах метална нагревателна лента и я прикрепих точно зад котела. Кафемашината, която имаме в офиса, е стара кок с хубав метален гръб, който добре провежда топлината. Ще трябва да намерите добро място, където да поставите сондата на вашата кафемашина. Температурният сензор DS18B20 е водоустойчив, така че имате опции.

След като сондата е прикрепена, ще трябва да наблюдавате температурата по време на варенето и да видите каква температура достига при варене, както и кога е приготвена. Може да се наложи да си поиграете с позиционирането на сензора, за да намерите място, което ви дава достатъчно голяма разлика в температурата между нормалната температура и варената температура.

За да получите своите временни числа, можете да регистрирате температурата в конзолата, като изпълните командите от стъпката „Настройване на Pi & Получаване на отчитане на температурата“.

Забележка: трябва само да изпълните всички команди веднъж, след това просто изпълнете командата "cat w1_slave", за да видите най -новото темпово четене.

Стъпка 4: Кодът

Кодът
Кодът

Ето линк към кода: https://github.com/calebbrewer/pi-coffee-ready/blo… Той е написан на JavaScript (nodejs)

Най -отгоре има няколко константи, които можете да промените, за да работи за вашата настройка.

  • const brewingTemp = 88; (Това е най -ниската температура по време на варене. LED светлината отпред ще мига, когато тази температура бъде засегната)
  • const brewedTemp = 93; (Когато тази температура бъде достигната, знаем, че кафето е готово)
  • const brewOffset = 45 * 60000; (Това е моментът за изчакване, преди да проверите отново. Променете 45 на броя минути, които искате да изчакате, докато кафеварката се охлади)
  • const filePath = '/sys/bus/w1/devices/28-031702a501ff/w1_slave'; (Това е пътят към файла с временно четене. Вашият ще бъде различен от моя. Използвайте файла, който сте намерили, като изпълните командите в стъпката „Настройване на Pi & Получаване на отчитане на температурата“.)
  • const slackMessage = {"username": "Coffee Bot", "text": "Има прясно кафе! Вземете го, докато е добро."}
  • const slackHook = ""; (Вашата слаба кука)

Този код се основава на изпращане на известие за Slack, но ред 75 е мястото, където всъщност изпращам съобщението. Можете да промените това, за да изпратите известие с каквато услуга ви харесва.

Ако искате да знаете как да настроите Slack кука за изпращане на съобщения, вижте този документ:

За да добавите кода си към Pi, просто използвайте командата scp, за да копирате файловете index.js и package.json в Pi. Например: scp index.js pi@pi-ip-address:/var/pi-coffee-ready

Стъпка 5: Възел и стартиране на кода при зареждане с PM2

Възел и стартиране на кода при зареждане с PM2
Възел и стартиране на кода при зареждане с PM2

За да стартирате кода, ще трябва да инсталирате nodejs, като направите следното:

  • SSH в
  • Изпълнение: $ wget -O -https://raw.githubusercontent.com/sdesalas/node-p… | баш
  • Използвайте командата "cd", за да промените директорията, където сте поставили кода си
  • Изпълнете "npm install"
  • Изпълнете "npm start"

За да стартирам кода, когато Pi се зарежда, използвах pm2. Докато се хвърли в пистата Pi:

  • npm инсталирайте pm2 -g
  • pm2 стартирайте app.js

След това скриптът ще започне, когато Pi се стартира.

Стъпка 6: Да изглежда страхотно

Да изглежда страхотно
Да изглежда страхотно
Да изглежда страхотно
Да изглежда страхотно
Да изглежда страхотно
Да изглежда страхотно

Хванах изходна кутия, за да държа компонентите, и някаква метална 1/2 инчова тръба от магазин за подобряване на дома. Сглобих го така, че пипът да е поставка за кутията. След това го нарисувах червено и бяло.

Създадох графика за предната част на кутията и използвах резачка за винил, за да я изрежа. Пробих дупка за индикаторния светодиод, след което прикрепих винила към капака на кутията.

Покрих задната част на Pi с електрическа лента, така че контактите на гърба да не се късат в металната кутия. След това прикрепих Pi към едната страна на кутията с лента за килим. Прикрепих мини платката към другата страна, като използвам приложената залепваща подложка.

Проводниците преминават добре през тръбата и излизат от Т фитинга. Моля, извинете боя. Побързах малко.

Стъпка 7: Всичко е готово

Готово
Готово
Готово
Готово
Готово
Готово

И точно така, имате система за предупреждение за кафе, която изглежда страхотно!

Ако ви харесва този проект, моля, последвайте ме в Instagram и YouTube.

Препоръчано: