Mundarija:

IoT simsiz harorat va harakat sensori: 11 qadam (rasmlar bilan)
IoT simsiz harorat va harakat sensori: 11 qadam (rasmlar bilan)

Video: IoT simsiz harorat va harakat sensori: 11 qadam (rasmlar bilan)

Video: IoT simsiz harorat va harakat sensori: 11 qadam (rasmlar bilan)
Video: Telefon zaryadini ikki barobar koʻpga yetkazish 2024, Noyabr
Anonim
IoT simsiz harorat va harakat sensori
IoT simsiz harorat va harakat sensori

Men Instructables -dagi ko'plab IoT loyihalaridan ilhomlandim, shuning uchun men o'rganish jarayonida tegishli bo'lgan foydali ilovalarni birlashtirishga harakat qilaman. IoT harorat sensori bilan bog'liq oldingi ko'rsatmalarni kengaytmasi sifatida men quyi tizimga ko'proq imkoniyatlarni qo'shdim. Qo'shimcha funktsiyalar quyidagilar:

- Vaqt olish uchun NTP ulanishi

- LEDni masofadan boshqarish mumkin

- Harakatni aniqlash uchun PIR sensori

- "Uy" iPhone -ga ulanishga ruxsat berish uchun Raspberry PI -ga ulangan homekit.

1 -qadam: Kontseptsiya, ulanish va komponentlar

Kontseptsiya, ulanish va komponentlar
Kontseptsiya, ulanish va komponentlar

Yuqorida ko'rsatilgan kontseptsiya, agar kimdir uyda bo'lsa, harakatni aniqlashning qo'shimcha qobiliyati bilan masofadan turib haroratni kuzatishga ruxsat berish va LED orqali xabar berishga ruxsat berish. Qurilmaga mahalliy tarmoqdan yoki masofadan turib veb -server orqali kirish mumkin. Siz iPhone "Uy" ilovasiga ulanish uchun malina pirogini (ixtiyoriy) Homekit aksessuari bilan ulashingiz mumkin.

Oldingi versiyada bo'lgani kabi, ushbu loyihada quyidagi komponentlar talab qilinadi, iltimos, quyidagi havola sheriklik havolasi ekanligini unutmang, agar siz o'z hissangizni qo'shishni xohlamasangiz, to'g'ridan -to'g'ri kiring.

- NodeMcu Lua ESP8266 ishlab chiqarish kartasi. Men o'zimni Banggooddan olaman.

- LM35 harorat sensori

- PIR sensori

- LED

- Prototip taxtasi

- Arduino IDE

- PHP server skriptlari yoqilgan ishlaydigan veb -server

- Raspberry pi (ixtiyoriy)

2 -qadam: Arduino IDE -ni ishga tushiring

Arduino IDE -ni ishga tushiring
Arduino IDE -ni ishga tushiring

Bu qadam haqida batafsil ma'lumot olish uchun iltimos, ESP8266 bilan jihozlangan IoT harorat sensori 2 -qadamini ko'ring.

3 -qadam: harorat sensori, LED va PIRni ulash

Harorat sensori, LED va PIRni ulash
Harorat sensori, LED va PIRni ulash
Harorat sensori, LED va PIRni ulash
Harorat sensori, LED va PIRni ulash
Harorat sensori, LED va PIRni ulash
Harorat sensori, LED va PIRni ulash

LM35 harorat sensori 3 oyoqli, birinchi oyog'i VCC, siz uni 3,3V ga ulashingiz mumkin (ESP8266 platasining chiqishi 3,3V). O'rta oyoq - Vout (bu erda harorat o'qiladi, uni ESP8266 pinli AD0 analogli ulanishga ulashingiz mumkin, u rasmda ko'rsatilgandek taxtaning yuqori o'ng tomonida joylashgan. O'ng oyoq esa shunday bo'lishi kerak) erga ulangan.

PIR sensori 3 ta oyoqdan iborat, siz oyog'ining yonidagi PCBda kichik + +0 belgisini ko'rishingiz mumkin. Shunday qilib, "+" ni 3.3V ga, "-" ni erga va o'rta pinni "0" ni ESP8266 D6 piniga ulang.

LEDning faqat 2 ta oyog'i bor edi, "+" (anod), uzunroq oyog'i uni E5866 d5 piniga ulaydi va "-" (katod) qisqa oyoqlari erga (GND) ulangan bo'lishi kerak.

4 -qadam: Bulutli veb -serverni sozlash

Bu qadam uchun ma'lum bir taxmin bor:

Sizda tegishli domenda joylashtirilgan ishlaydigan veb -server mavjud. Siz FileZilla yoki boshqa FTP dasturi yordamida fayllarni FTP orqali veb -serveringizga o'tkazishni yaxshi bilasiz.

Veb -saytingizning ildiziga biriktirilgan zip faylini yuklang. Keling, ushbu mashq uchun sizning veb -saytingiz "https://arduinotestbed.com" deb faraz qilaylik.

Barcha fayllar veb -serverning ildizida joylashgan deb taxmin qilinadi, agar siz uni boshqa papkada saqlasangiz, ArduinoData3.php faylida ham, Arduino eskizida ham fayl o'rnini moslang. Agar ishonchingiz komil bo'lmasa, menga xabar bering va men qo'limdan kelgancha yordam berishga harakat qilaman.

5 -qadam: Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash

Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash
Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash
Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash
Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash
Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash
Ma'lumotlar bazasini harorat ma'lumotlarini saqlash uchun sozlash

Biz ushbu mashq uchun sqllite ma'lumotlar bazasidan foydalanamiz. Sqllite - bu faylni talab qiladigan, ma'lumotlar bazasi, serverni talab qilmaydi. Ma'lumotlar bazasi mahalliy veb -serveringizda joylashgan. Agar siz xavfsizlik haqida qayg'urayotgan bo'lsangiz, kodni mysql yoki MSSQL kabi mos ma'lumotlar bazasi serveridan foydalanish uchun o'zgartirishingiz kerak.

Ishni boshlashdan oldin phpliteadmin.php faylida joylashgan ma'lumotlar bazasi parolini o'zgartirish kerak. Shunday qilib, ushbu faylni veb -serveringizda oching va 91 -qatordagi parol ma'lumotlarini kerakli parolga o'zgartiring.

Keyin veb -serveringizda phpliteadmin.php -ga ishora qiling. Bizning misolimizdan oldin https://arduinotestbed.com/phpliteadmin.php manzilini ko'rsatishingiz kerak.

Serverda ma'lumotlar bazasi yo'qligi sababli sizga ma'lumotlar bazasini yaratish uchun ekran ko'rsatiladi. Ma'lumotlar bazasini kiritish maydoniga "temperatur.db" kiriting va "Yaratish" tugmasini bosing. Keyin ma'lumotlar bazasi muvaffaqiyatli yaratiladi. Bu vaqtda ma'lumotlar bazasi hali ham bo'sh, shuning uchun ma'lumotlarni joylashtirish uchun ma'lumotlar bazasi jadvalining tuzilishini yaratish uchun sizga sql skript kerak bo'ladi.

6 -qadam: "Harorat" jadvalini yarating

Ni yarating
Ni yarating
Ni yarating
Ni yarating

Jadvalni yaratish uchun "SQL" yorlig'ini bosing va quyidagi sql so'roviga joylashtiring.

O'tkazmani boshlang;

-----Harorat uchun jadval tuzilishi ---- "JADVAT" haroratini yaratish ("ID" BOSHCHA KALIT NULL emas, namlik INT NULL emas, harorat REAL, vaqt tamg'asi DATETIME DEFAULT CURRENT_TIMESTAMP, "BOOLEAN", "goaltemp" isitgichi) HAQIQIY); QOMITA;

Keyin pastki qismidagi "O'tish" tugmasini bosing. Jadval muvaffaqiyatli tuzilishi kerak.

Agar siz sahifani yangilasangiz, chapdagi temperatur.db ma'lumotlar bazasi ostidagi "harorat" jadvalini ko'rishingiz kerak. Agar siz hali ham ma'lumotlar bo'lmasa, harorat jadvalini bosing.

Endi bizda ma'lumotlar bazasi yaratildi, siz quyidagi urlga ishora qilishingiz mumkin

arduinotestbed.com/ArduinoData3.php

Siz LEDni yoqish uchun qo'g'irchoq ma'lumotlarini, harakat sensori va boshqaruv panelini ko'rsatadigan haroratni ko'rasiz. Grafikning pastki qismi hali ham bo'sh qoladi, chunki ma'lumotlar yo'q.

7 -qadam: Harorat sensori eskizini ESP8266 -ga yuklang

Harorat sensori eskizini ESP8266 -ga yuklang
Harorat sensori eskizini ESP8266 -ga yuklang
Harorat sensori eskizini ESP8266 -ga yuklang
Harorat sensori eskizini ESP8266 -ga yuklang
Harorat sensori eskizini ESP8266 -ga yuklang
Harorat sensori eskizini ESP8266 -ga yuklang

Endi barcha biriktirilgan faylni nusxalash va "ESP8266TempPIRSensor.ino" ni ochish Arduino interfeysi siz uchun papkani yaratadi. Qolgan fayllarni Arduino interfeysi tomonidan yaratilgan yangi papkaga o'tkazing.

Agar kerak bo'lsa, ko'rsatilgan veb -serverni va data_store3.php faylining joylashishini o'zgartiring. Keyin eskizni ESP8266 -ga yuklang.

Agar hamma narsa yaxshi bo'lsa, u muvaffaqiyatli yuklanishi kerak va ESP birinchi marta AP rejimiga o'tadi. Ulanish uchun siz noutbuk yoki mobil telefondan foydalanishingiz mumkin. Siz "ESP-TEMP" nomi bilan APni topa olishingiz kerak.- Mobil telefoningiz noutbukidan foydalanib, ESP-TEMP-ga ulanishga harakat qiling- IP-manzilingiz nima ekanligini bilib oling. Windows -da "ipconfig" buyrug'i yoki Linux yoki mac -da "ifconfig" buyrug'i. -Agar siz iPhone ishlatayotgan bo'lsangiz, ulangan ESP-TEMP yonidagi i tugmasini bosing-Brauzeringizni oching va ESP-TEMP-ga ishora qiling, agar sizga 192.168.4.10 ip sifatida tayinlangan bo'lsa, ESP-TEMP. 192.168.4.1 IP -ga ega, shuning uchun siz https://192.168.4.1 saytiga o'tishingiz mumkin va sizga wifi router ssid va psk kalitini kiritishingiz mumkin bo'lgan sozlash sahifasi ko'rsatiladi. Agar siz ikkalasini ham kiritgan bo'lsangiz va "Wifi konfiguratsiyasini yangilash" katagiga belgi qo'ying, sozlamani ESP8266 -ga yangilash uchun "yangilash" tugmasini bosing.

Agar siz ketma -ket monitorda disk raskadrovka rejimini yoqmoqchi bo'lsangiz, unga izoh qoldirmasligingiz kerak bo'ladi

#DEBUGni aniqlang

soatidagi chiziq.h va sharh berdi

//#undef xato

chiziq keyin Tools-> Serial monitor-ni bosing. Ketma -ket monitor oynasi sizga Wi -Fi ulanish jarayonini ko'rsatadi va ESP8266 mahalliy IP -manzilini ko'rsatadi. Harorat ko'rsatkichi o'qilganda ichki ko'k LED bir marta yonadi. Harakat aniqlanganda ham yonadi.

8 -qadam: Harorat va harakat sensori

Harorat va harakat sensoriga kirish
Harorat va harakat sensoriga kirish
Harorat va harakat sensoriga kirish
Harorat va harakat sensoriga kirish

Endi siz ESP8266 mahalliy veb -serveriga yana bir bor ishora qilishingiz kerak. Va bu vaqt, harorat va harakat sensori ko'rsatadi.

Endi siz tashqi veb -serveringizga ishora qilishingiz mumkin, bu misolda

LEDni almashtirish uchun boshqaruv paneli ostidagi tugmani suring. Men buni ishdan uyga qaytayotganimda bolalarimga xabar berish uchun ishlataman.

Harakat sensori har soniyada yangilanadi, shuning uchun harakat aniqlanganmi yoki yo'qligini bilish uchun sahifani tez -tez yangilab turish kerak bo'ladi. Hozirgi vaqtda avtomatik yangilanish 60 sekundga o'rnatilgan. Harorat har ikki daqiqada o'qiladi, lekin siz buni o'zingizga mos vaqtga sozlashingiz mumkin.

Tabriklaymiz, agar siz shu paytgacha erishgan bo'lsangiz !!, o'zingizni orqangizdan silang va ijodingizdan zavqlaning. Keyingi qadam ixtiyoriy, faqat agar siz LEDni boshqarishni va haroratni, shuningdek Apple qurilmalaridagi harakat sensori kuzatishni xohlasangiz.

9 -qadam: HomeKit uchun HomeBridge -ni Raspberry Pi -ga o'rnating (ixtiyoriy)

Raspberry Pi -da HomeKit uchun HomeBridge -ni o'rnating (ixtiyoriy)
Raspberry Pi -da HomeKit uchun HomeBridge -ni o'rnating (ixtiyoriy)

Menga GalenW1 ko'rsatmalari ilhom berdi, bu menga HomeBridge haqida ko'p narsalarni bilib olishga imkon beradi.

HomeKit uchun HomeBridge -ni Raspberry Pi -ga o'rnatish uchun siz quyidagi ko'rsatmalardan foydalanishingiz mumkin

github.com/nfarina/homebridge

HomeBridge sizga Iphone -dagi Uy ilovasini oldingi qadamlarda qurilgan sensorlarga ulash imkonini beradi.

HomeBridge -ni o'rnatganingizdan so'ng, siz bir nechta plaginlarni o'rnatishingiz kerak:

- Harorat sensori

- Harakat sensori

- O'tish

sudo npm install -g homebridge-http-harorat

sudo npm install -g homebridge -MotionSensor

sudo npm install -g homebridge-http-simple-switch

Plagin o'rnatilgandan so'ng, quyida joylashgan config.json faylini sozlashingiz kerak bo'ladi

sudo vi /home/pi/.homebridge/config.json

config.json faylining mazmunini quyida ko'rsatilgan tarzda sozlashingiz mumkin, iltimos, url to'g'ri manzilga ishora qilganiga ishonch hosil qiling.

10 -qadam: Homebridge -ni iPhone -ga ulash

Homebridge -ni iPhone -ga ulash
Homebridge -ni iPhone -ga ulash
Homebridge -ni iPhone -ga ulash
Homebridge -ni iPhone -ga ulash
Homebridge -ni iPhone -ga ulash
Homebridge -ni iPhone -ga ulash

Endi barcha aksessuarlar konfiguratsiya qilingan, siz quyidagi buyruq yordamida homebridge -ni ishga tushirishingiz mumkin

uy ko'prigi

Siz ekranni yuqoridagi kabi ko'rishingiz kerak. Homebridge -ni uy to'plamingizga qo'shish uchun siz quyidagi bosqichni bajarishingiz mumkin.

- Endi "Uy" ilovasini iPhone -da ishga tushiring

- "Aksessuarlar qo'shish" tugmasini bosing

- kodni skanerlash uchun sizga ekran ko'rsatiladi, siz Raspberry Pi ekranidan kodni skanerlash yoki qo'lda kodni qo'shish uchun telefon kamerangizdan foydalanishingiz mumkin.

E'tibor bering, Iphone ham, Raspberry Pi ham ishlashi uchun bitta simsiz routerda bo'lishi kerak.

- Ulangach, sizga aksessuaringiz sertifikatlanmaganligi ko'rsatiladigan ekran keladi, davom etish uchun "Baribir qo'shish" tugmasini bosing.

- Sizda har bir aksessuarni sozlash imkoniyati bo'ladi, bu holda bizda yorug'lik tugmasi, harakat sensori va harorat sensori mavjud.

- Yakuniy ekranda sizga ulangan barcha aksessuarlar ko'rsatiladi.

U ulangandan so'ng siz harakat sensori, haroratni tekshirish va chiroqni yoqish va o'chirish uchun Siri -dan foydalanishingiz mumkin.

11 -qadam: Uy ko'prigingizni orqa fonda ishga tushiring

Uy ko'prigingizni orqa fonda ishga tushiring
Uy ko'prigingizni orqa fonda ishga tushiring
Uy ko'prigingizni orqa fonda ishga tushiring
Uy ko'prigingizni orqa fonda ishga tushiring
Uy ko'prigingizni orqa fonda ishga tushiring
Uy ko'prigingizni orqa fonda ishga tushiring

Tabriklayman !! siz qildingiz. Bonus sifatida, siz quyidagi buyruq yordamida homebridge -ni orqa fonda boshqarishingiz mumkin:

homebridge va

Endi siz Siri bilan vaqt o'tkazishingiz va o'zingizning mehnatingizdan bahramand bo'lishingiz mumkin.

Buni oxirigacha kuzatganingiz uchun tashakkur. Agar sizga bu yoqsa, ba'zi sharhlaringizni qoldiring yoki menga ovoz bering.

Tavsiya: