
Мазмұны:
2025 Автор: John Day | [email protected]. Соңғы өзгертілген: 2025-01-23 14:51



Бұл жобада мен кеңседегі кофеқайнатқышты ақылды етіп жасаймын, кофе дабыл жүйесін құру арқылы, біреу жаңа піскен кофе қайнатқанда Slack хабарландыруларын жібереді. Кодты электрондық пошта немесе мәтіндік хабар жіберу үшін өзгертуге болады. Бұл жоба Raspberry Pi Zero-W-ге негізделген
Ол үшін маған кофеқайнатқыштың температурасын үнемі бақылау қажет. Мен DS18B20 су өткізбейтін температура сенсорымен және Raspberry Pi Zero-W бардым.
Егер сізге бұл жоба ұнаса, мені инстаграм мен ютуб желісінде қадағалаңыз.
Сілтемелер
Код пен сым диаграммасы:
Adafruit Raspberry Pi және DS18B20 температура сенсоры бойынша нұсқаулық:
Бөлшектер (кейбір серіктестік сілтемелер)
Шағын дәнекерсіз прототиптің электрондық тақтасы:
Аталықтан әйелге секіргіш сымдар:
Adafruit DS18B20 сандық температура сенсоры:
EBay-дегі сандық температура сенсоры (мен қолданған):
Raspberry Pi Zero W жиынтығы:
Adafruit -тен Raspberry Pi Zero W ($ 10 жеткізу):
Менде жарық диоды болды.
Жалғыз бандалық қорап пен құбырлар Лоустан келді
1 -қадам: Цикл




Бұл схема қарапайым кешкі ас. Мен кенішті шағын тақтаға салдым, сондықтан дәнекерлеу қажет болмады (мен ол кезде жаңа үйреніп жүргенмін). Мен кейбір қосқыш сымдарды DS18B20 шығатын сымдарға дәнекерледім, сондықтан оны тақтаға қосуға болады. Мұны істеудің қажеті жоқ, және бәрін оңай дәнекерлеуге болады (менің термометрлік заттардың интернеттегі бейнесін қараңыз).
Диаграмманы қараңыз.
Негізінде, сіз 5 -істіктен DS18B20 -дегі сары сымға, жерге қосылған сымға (қара), ал қызыл сымға 3.3В -ға дейін секіргіш сымды жүргізесіз. Содан кейін сенсордағы 3.3В және сары сым (сигнал) арасындағы 4.7K резисторды қосыңыз
Қосымша ақпарат алу үшін Adafruit Raspberry Pi & DS18B20 температура сенсоры нұсқаулығын қарау керек
2 -қадам: Pi орнату және температура көрсеткішін алу
Pi Zero W-ге Raspbian-ды (менде Gist & бейне бар) орнатқаннан кейін, температура датчиктерінің интерфейсін қосу үшін Pi-ге SSH кіргізіп, dtoverlay = w1-gpio іске қосу қажет болады. Содан кейін sudo reboot іске қосу арқылы қайта жүктеңіз. SSHing -ді Pi -ге қайта енгізгеннен кейін температура көрсеткішін алу үшін келесі әрекеттерді орындауға болады.
- sudo modprobe w1-gpio
- sudo modprobe w1-therm
- cd/sys/bus/w1/ls cd 28-xxxx құрылғылары (оны сериялық нөмірлердің жиналуына сәйкес етіп өзгертіңіз)
- мысық w1_slave
Ескерту: Windows жүйесінде SSH үшін Putty пайдалану қажет болуы мүмкін.
3 -қадам: Кофеқайнатқышқа қосылу және калибрлеу

Температура өлшегішін кофеқайнатқышқа қосу үшін мен металды қыздыратын таспаны қолдандым және оны қазандықтың артына қойдым. Бізде кеңседе кофеқайнатқыш - бұл жылуды жақсы өткізетін металл арқалы ескі тоқаш. Сіз зондты кофеқайнатқышқа қою үшін жақсы орын табуыңыз керек. DS18B20 температура датчигі суға төзімді, сондықтан сізде опциялар бар.
Зонд бекітілгеннен кейін сіз қайнату кезінде температураны бақылап отыруыңыз керек, және оның қайнату кезінде, сондай -ақ қайнату кезінде оның температурасы қандай болатынын көріңіз. Қалыпты температура мен қайнатылған температура арасындағы температура айырмашылығын беретін орынды табу үшін сенсордың орналасуымен ойнауға тура келуі мүмкін.
Уақытша нөмірлерді алу үшін «Pi параметрін орнату және температура көрсеткішін алу» қадамындағы командаларды орындау арқылы температураны консольге тіркеуге болады.
Ескерту: барлық командаларды бір рет қана орындау керек, содан кейін ең жаңа температураны оқу үшін «cat w1_slave» пәрменін орындаңыз.
4 -қадам: Кодекс

Бұл кодқа сілтеме: https://github.com/calebbrewer/pi-coffee-ready/blo… Ол JavaScript-те жазылған (nodejs)
Жоғарғы жағында оны орнату үшін жұмыс істеу үшін өзгертуге болатын бірнеше тұрақтылар бар.
- const brewingTemp = 88; (Бұл қайнату кезіндегі ең төменгі температура. Бұл температураға жеткенде алдыңғы жағындағы жарықдиодты шам жыпылықтайды)
- 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 -ге кодты қосу үшін index.js және package.json файлдарын Pi -ге көшіру үшін scp пәрменін пайдаланыңыз. Мысалы: scp index.js pi@pi-ip-address:/var/pi-coffee-ready
5 -қадам: түйін және кодты PM2 жүктеу кезінде іске қосу

Кодты іске қосу үшін келесі әрекеттерді орындау арқылы nodejs орнату қажет болады:
- SSH кірді
- Іске қосу: $ wget -O -https://raw.githubusercontent.com/sdesalas/node-p… | bash
- Кодты енгізетін каталогқа ауысу үшін «cd» пәрменін пайдаланыңыз
- «Npm install» іске қосыңыз
- «Npm start» іске қосыңыз
Pi жүктелген кезде кодты іске қосу үшін мен pm2 қолдандым. Pi жүгіру кезінде:
- npm pm2 -g орнатыңыз
- pm2 іске қосу app.js
Осыдан кейін сценарий Pi жүктелген кезде басталады.
6 -қадам: оны керемет етіп көрсету



Мен компоненттерді ұстау үшін розетка мен үйге арналған дүкеннен 1/2 дюймдік металл құбырды алдым. Мен құбырды қорапқа тірек болатындай етіп жинадым. Содан кейін мен оны қызыл және ақ түске боядым.
Мен қораптың алдыңғы жағына графика жасадым және оны кесу үшін винил кескішті қолдандым. Мен индикатор светодиодына тесік бұрғыладым, содан кейін винилді қораптың қақпағына бекіттім.
Мен Пи -дің артқы жағын электр таспасымен жауып қойдым, сондықтан артқы жағындағы контактілер металл қорапта қысылып қалмас үшін. Содан кейін мен пиді қораптың бір жағына кілем таспасымен жаптым. Мен шағын нан тақтасын басқа жаққа бекітілген жабысқақ тірек арқылы бекіттім.
Сымдар құбыр арқылы жақсы өтеді және Т фитингінен шығады. Бояу ағынын кешіріңіз. Мен сәл асығып кеттім.
7 -қадам: Барлығы дайын



Дәл осылай сізде кофе дабыл жүйесі бар, ол керемет көрінеді!
Егер сізге бұл жоба ұнайтын болса, мені инстаграм мен ютубтан қадағалаңыз.
Ұсынылған:
Қолды автоматты түрде жуу туралы хабарлама: 5 қадам

Қолмен жуу туралы автоматты хабарлама: бұл есіктен кіргенде біреуге хабар бере алатын машина. Оның мақсаты - біреуге үйге қайтқанда қолын жууды еске салу. Қораптың алдында ультрадыбыстық сенсор бар, ол кіретін адамды сезеді
Есту қабілеті нашар адамдарға арналған үй автоматикасы туралы есік қоңырауы туралы хабарландыру (ESP-now, MQTT, Openhab): 3 қадам

Есту қабілеті нашар адамдарға арналған үй автоматикасы туралы есік қоңырауы туралы хабарландыру (ESP-now, MQTT, Openhab): Бұл нұсқаулықта мен сіздің үй автоматикасына қалыпты есік қоңырауын қалай енгізгенімді көрсетемін. Бұл шешім есту қабілеті нашар адамдарға өте ыңғайлы. Менің жағдайда мен балалардың туған күнінде бөлме бос емес және шулы болса, хабарландыру алу үшін қолданамын. Мен
IFTTT көмегімен веб -сайтқа келушілер туралы хабарлама: 6 қадам

IFTTT көмегімен веб -сайтқа келушілер туралы хабарландыру: Бұл нұсқаулықта біреу сіздің веб -сайтыңызға кірген кезде сіз Android туралы хабарлама аласыз, бұл үшін сізге PHT бағдарламалау тілі мен қарапайым С тілі туралы қарапайым білім қажет, бұл IFTTT қосымшасының қалай болатынын білу үшін. жұмыстар (
IoT негізіндегі кір жуу туралы хабарлама жүйесі: 18 қадам

IoT негізіндегі кір жуу туралы хабарландыру жүйесі: HiThis нұсқаулығы кір жууға арналған IoT негізіндегі хабарландыру жүйесін құру бойынша қадамдық кіріспе береді. Бұл жерде демо болу үшін біз екі тартпа мен бір кір жуғыш пакетті алдық. Сезеді
Strida жиналмалы велосипед дөңгелегіндегі жарықдиодты хабарлама жүйесі: 7 қадам

Strida жиналмалы велосипед дөңгелегіндегі жарықдиодты хабарлама жүйесі: Мен стридаға жиналмалы велосипед сатып алғаннан кейін, бірінші кезекте стридаға қатысты жобалар үшін instablesable.com сайтына кірдім. Және олардың жоқ екеніне таң қалдым. Сондықтан мен үйренуге болатын нұсқаулық жасауды жоспарладым