Mundarija:
- 1 -qadam: Sizga kerak bo'lgan narsalar
- 2 -qadam: Raspberry Pi -ni 433 MGts ga tayyorlang
- 3 -qadam: Smart Home serverini o'rnating
- 4 -qadam: mijozlarni sozlash
- 5 -qadam: Xulosa
Video: Raspberry Pi aqlli uyi: 5 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
U erda sizning kvartirangizni aqlli qiladigan bir nechta mahsulotlar bor, lekin ularning aksariyati xususiy echimlardir. Lekin nima uchun smartfon bilan chiroqni almashtirish uchun sizga internet aloqasi kerak? Bu mening shaxsiy Smart Home yechimimni yaratishimga bir sabab bo'ldi.
Men Raspberry Pi -da ishlaydigan server dasturini dasturladim. Bu java -ga asoslangan ochiq kodli loyihadir, bu sizning kvartirangizni sozlash va bir nechta mijozlar va "boshqariladigan birliklar" ni ulash imkonini beradi. Men RC quvvat manbai kalitlarini boshqaradigan, Raspberry Pi -da musiqa va videoni ijro etadigan, aqlli oynadagi holatni ko'rsatadigan va android ilovasi va ikkita toshli dastur yordamida boshqariladigan echimni ko'rsataman. Manba github -da joylashgan
1 -qadam: Sizga kerak bo'lgan narsalar
Aqlli uyni sozlash uchun sizga quyidagi "ingredientlar" kerak bo'ladi.
- Raspberry Pi kamida 2 V modeli
- 433 MGts yuboruvchi, shunga o'xshash
- Raspberry Pi va jo'natuvchini bog'laydigan 3 ta o'tish kabeli
- Ba'zi radio boshqaruv rozetkalari 433 MGts
- Android smartfoni mijoz dasturini ishga tushiradi
Bundan tashqari, siz Smart Home -ni ixtiyoriy mijozlar va shunga o'xshash birliklar bilan kengaytira olasiz
- Pebble aqlli soati
- Smart Mirror, ushbu loyihani ko'ring
- 433 MGts chastotali LED chizig'i, qarang:
2 -qadam: Raspberry Pi -ni 433 MGts ga tayyorlang
Keyingi bosqichlarda siz Raspberry Pi -dagi buyruq satriga kirishingiz kerak. Kirish uchun siz ushbu ko'rsatmalarni o'qishingiz mumkin
Yuqoridagi rasmda ko'rsatilgandek, 433 MGts chastotali yuboruvchini Raspberry Pi bilan ulang
- GND (yuboruvchi) 6 GND (raspi)
- VCC (yuboruvchi) 2 +5V (raspi)
- DATA (jo'natuvchi) 11 GPIO 17 (raspi)
Iltimos, ANT (yuboruvchi) piniga 17 sm uzunlikdagi antennani ulang. Bu signalni sezilarli darajada oshiradi.
Bizga boshqa git omborlaridan ba'zi kutubxonalar kerak bo'lgani uchun biz gitni o'rnatishimiz kerak
sudo apt-get install-core -y ni o'rnating
Raspberry Pi -ni 433 MGts chastotali aloqa uchun sozlash uchun bizga GPIO -lar bilan yaxshi ishlash uchun simli kutubxona kerak.
git klon git: //git.drogon.net/wiringPi
CD simlariPi./build
Keyin bizga odatda rc quvvat manbai protokollarini bajaradigan kutubxona kerak.
git klon git: //github.com/dabastynator/rcswitch-pi.git
cd rcswitch-pi cp send/usr/bin/qilish
"Yuborish" bajarilishi sizga mavjud quvvat manbalarining ko'pini almashtirish uchun kodlarni yuborish imkonini beradi.
Mening Smart Home sozlamamda menda bu yo'riqnomada tasvirlangan rc LED tasmasi ham bor: https://www.instructables.com/id/RC-controlled-LED… Bu LED tasmasini ranglarini sozlash uchun sizga boshqa yuboriladigan bajariladigan dastur kerak bo'ladi. har qanday butun sonni yuborish uchun (bu rangni kodlaydi).
Shuning uchun sendInt.cpp-ni rcswitch-pi repo-da kompilyatsiya qiling va uni/usr/bin/sendInt-ga o'tkazing.
sudo g ++ sendInt.cpp -o/usr/bin/sendInt /home/pi/rcswitch-pi/RCSwitch.o -I/home/pi/rcswitch -pi -lwiringPi
Endi siz rc buyruqlarini ikkita bajariladigan/usr/bin/send va/usr/bin/sendInt bilan yuborishingiz kerak.
3 -qadam: Smart Home serverini o'rnating
Avval siz bir nechta paketlarni o'rnatishingiz kerak. Smart Home dasturi java-ga asoslangan va openjdk-11 bilan yaxshi ishlaydi. Boshqa java ish vaqti muhitlari haqida ishonchim komil emas. Mplayer-bu minimalist buyruq qatorli musiqa pleyeri. Omxplayer videoni kodlash uchun Raspberry Pi grafikasidan foydalanadi, shuning uchun uni video uchun ishlatish kerak. Java dasturini yaratish uchun chumoli dasturi kerak.
sudo apt-get install mplayer omxplayer openjdk-11-jdk chumoli -y
Jar fayli va jurnallar uchun kataloglarni o'rnating.
sudo mkdir /opt /neo
sudo chown pi: pi/opt/neo mkdir/home/pi/Logs
Dastur yuklashda avtomatik ravishda ishga tushishi uchun start skriptini sozlang. Shuning uchun biriktirilgan aqlli uy skriptini.
sudo cp smart-home /etc/init.d/smart-home
sudo chmod +x /etc/init.d/smart-home sudo sh -c "echo '#!/bin/bash'>/usr/bin/smart -home" sudo sh -c "echo '/etc/init. d/aqlli uy / $ 1 '>>/usr/bin/smart-home "sudo chmod +x/usr/bin/smart-home sudo update-rc.d smart-uy standartlari
Endi omborni tekshirish va dasturni yaratish vaqti keldi. Agar siz uni o'zingiz kompilyatsiya qilishni xohlamasangiz, biriktirilgan smarthome.jar -ni yuklab olishingiz va/opt/neo/ga ko'chirishingiz mumkin.
git clone [email protected]: dabastynator/SmartHome.git
chumoli -f SmartHome/de.neo.smarthome.build/build.ant build_remote cp SmartHome/de.neo.smarthome.build/build/jar/*/opt/neo/
Aqlli uyni ishga tushirishga harakat qiling va jurnal faylini tekshiring. GPIO -larga kirish uchun dasturni sudo -dan boshlash kerak.
sudo aqlli uy boshlanishi
mushuk jurnallari/smarthome.log
Bizni keyingi bosqichga ko'rsatadigan konfiguratsiya fayli yo'q degan xato xabarni ko'rishingiz kerak. Ma'lumotlar omborida konfiguratsiya faylini tushuntirib beradigan o'qish dasturi mavjud. Siz buni github -da yaxshi tasvirlanganini ko'rishingiz mumkin:
Ushbu xml -ni /home/pi/controlcenter.xml -ga nusxa ko'chiring, so'ngra media -serveringiz uchun joyni o'rnating va tarkibni kerakli darajada o'zgartiring. Konfiguratsiyani tugatib, aqlli uyni qayta ishga tushirgandan so'ng (sudo smart-home restart) siz smarthome.log saytida quyidagi tarkibni ko'rishingiz kerak.
24.05-08: 26 de.neo.smarthome.cronjob. CronJob@15aeb7ab tomonidan masofadan turib ma'lumot: cron ishini rejalashtirish
24.05-08: 26 [Masofadan ma'lumot [trigger.light] tomonidan: 79391760 ms bajarilishini kutib turing 24.05-08: 26 RMI INFORMATION by Web-handler (5061/ledstrip) qo'shish 24.05-08: 26 RMI INFORMATION by Web-handler (5061) /action) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/mediaserver) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/switch) 24.05-08: 26 RMI INFORMATION by Add web-handler (5061/controlcenter) 24.05-08: 26 RMI INFORMATION Start veb-serveri tomonidan 5 ta ishlovchi bilan (localhost: 5061) 24.05-08: 26 Controlcenter tomonidan masofadan turib ma'lumot: Qo'shish 1. boshqaruv bloki: MyUnit (xyz)…
Veb-server hozir ishlaydi:-)
4 -qadam: mijozlarni sozlash
Smartfon Android uchun mijoz
Aqlli uy ilovasi uchun git omborida android mijozining manbasi ham bor, shuning uchun uni o'zingiz kompilyatsiya qilishingiz mumkin. Ammo men ushbu qadam uchun APK -ni biriktirdim, bu osonlashtiradi. Ilovani birinchi marta ishga tushirganingizda, u yuqoridagi birinchi rasmda bo'lgani kabi sizdan server so'raydi. Server manzilini va xavfsizlik tokenini kiriting.
Bu shunday bo'lishi kerak. Endi siz serverga kirishingiz va kvartirangizni boshqarishingiz, musiqa tinglashingiz va Raspberry Pi -da videolarni masofadan turib tomosha qilishingiz mumkin. E'tibor bering, siz vidjetlarni asosiy ekranga qo'shishingiz mumkin, bu kalit va musiqa boshqaruvini yanada qulay qiladi.
Smartwatch Pebble mijozi
Ikki toshli mijozlar uchun manba github -da joylashgan. Bir ilova joriy ijro etilayotgan musiqa faylini ko'rsatadi: https://github.com/dabastynator/PebbleRemoteMusic… Bu sizga pauza qilish/ijro etish va ovoz balandligini/pastga tushirish imkonini beradi.
Ikkinchi ilova uchta harakatni ishga tushiradi: https://github.com/dabastynator/PebbleControl Trigger-nomlari: mobile.come_home mobile.leaving va mobile.go_to_bed. Agar siz konfiguratsiya-xml-da ushbu tetik uchun voqea qoidalarini aniqlasangiz, ularni soatingiz bilan ishga solasiz.
Hammasi ochiq manba, lekin uni o'zingiz kompilyatsiya qilishingiz shart emas, men ham toshli ilovalarni biriktirdim. PBW -ni smartfon bilan yuklab oling, telefoningiz ularni soatingizga o'rnatishi kerak. Toshli ilovalar server bilan gaplashish uchun konfiguratsiyaga muhtoj. Men sozlamalarim qanday ko'rinishini skrinshot bilan biriktirdim.
Smartwatch Garmin mijozi
Garmin Smartwatches uchun mijoz ham mavjud. Ilova garmin connect app-do'konida mavjud va uni bu erga o'rnatish mumkin:
apps.garmin.com/en-US/apps/c745527d-f2af-4…
Smart Mirror mijozi
Men allaqachon aqlli oynani qanday yaratishni tushuntiradigan ko'rsatma yaratdim, qarang: https://www.instructables.com/id/Smart-Mirror-by-R…. Manba kodi ham github-da joylashgan: https:// github.com/dabastynator/SmartMirror. Smart Mirror dasturiy ta'minoti git_ omboriga kirmaydigan smart_config.js faylidagi konfiguratsiyani o'qiydi. Konfiguratsiya faylining mazmuni quyidagicha bo'lishi kerak:
var mOpenWeatherKey = 'sizning-ochiladigan-g'ildirakli kalitingiz';
var mSecurity = 'your-security-token';
Smart_mirror.js faylining birinchi ikkita satrini Smart Home serverining IP -manzilini va ob -havoni to'g'ri ko'rish uchun manzilni ko'rsatish uchun sozlashingiz kerak.
Ko'proq mijozlar
Server ilovasi oddiy veb -serverdir. Bu sizga oddiy veb-qo'ng'iroqlar orqali istalgan mijozning harakatlarini boshlash imkonini beradi. Demo-videoda men AutoVoice bilan birgalikda android ilovasi vazifasini ko'rsataman. Bu menga oddiy ovozli buyruqlar yordamida voqealarni boshlashga imkon beradi. Masalan, "ok google, uxlash vaqti" mobile.go_to_bed -ni ishga tushirishi mumkin. Ammo siz, shuningdek, IFTTT-dan veb-qo'ng'iroqlar qilishingiz mumkin. Elektron pochta xabarnomasi uchun miltillovchi sariq LED tasmasi haqida nima deyish mumkin?
Siz serverdan quyidagi havolalar kabi mumkin bo'lgan veb-qo'ng'iroqlarni so'rashingiz mumkin (konfiguratsiyangiz bo'yicha ip, port va tokenni almashtiring).
localhost: 5061/controlcenter/api? token = secu…
localhost: 5061/action/api? token = security-to…
localhost: 5061/mediaserver/api? token = securi…
localhost: 5061/switch/api? token = security-to…
localhost: 5061/ledstrip/api? token = xavfsizlik-…
5 -qadam: Xulosa
Hali ham ba'zi funktsiyalarni bajarish kerak: chunki server oddiy web-api mijozlari bilan ko'p so'rov o'tkazadi. Ovoz berishni kamaytirish uchun MQTT integratsiyasini yaxshiroq xabardor qilish uchun xohlayman. Wi -Fi quvvat manbalari rc quvvat manbalariga qaraganda ancha ishonchli ishlashi kerak, chunki rc - bu bir tomonlama aloqa.
Ushbu loyihani ishlab chiqish juda qiziqarli bo'ladi. Kvartirani bir nechta qurilmalar bilan boshqarish juda yaxshi, hatto Internet aloqasi uzilgan bo'lsa ham.
Tavsiya:
Aqlli budilnik: Raspberry Pi -dan tayyorlangan aqlli budilnik: 10 qadam (rasmlar bilan)
Aqlli budilnik: Raspberry Pi bilan yasalgan aqlli budilnik: Siz hech qachon aqlli soatni xohlaganmisiz? Agar shunday bo'lsa, bu siz uchun yechim! Men Smart Budilnikni yaratdim, bu soat, siz budilnik vaqtini veb -saytga ko'ra o'zgartirishingiz mumkin. Signal o'chganda, ovoz eshitiladi va ikkita chiroq yonadi
Budilnik bilan DIY aqlli o'lchov (Wi-Fi, ESP8266, Arduino IDE va Adafruit.io bilan): 10 qadam (rasmlar bilan)
Budilnik bilan DIY aqlli o'lchov (Wi-Fi, ESP8266, Arduino IDE va Adafruit.io bilan): Oldingi loyihamda men Wi-Fi bilan aqlli hammom o'lchovini ishlab chiqdim. U foydalanuvchi vaznini o'lchashi, uni mahalliy ko'rsatishi va bulutga yuborishi mumkin. Bu haqda batafsil ma'lumotni quyidagi havola orqali olishingiz mumkin: https: //www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Aqlli itlar uyi: 6 qadam
Aqlli itlar uyi: Ko'pchilik uy hayvonlari egalari yo'qligida sevimli itlari nima qilayotganiga qiziqishadi, biz Raspberry Pi asosidagi it monitorini yaratamiz. Ish kunidan so'ng siz ilovani tekshirishingiz va uning "skameykada" o'tkazgan vaqtini ko'rishingiz mumkin, qancha
Ardruino uyi: 6 qadam (rasmlar bilan)
Ardruino uyi: Kirish Arduino uyi - bu interaktiv bino bo'lib, siz uni turli vaziyatlarda ishlatishingiz mumkin. Bu deyarli Rojdestvo bayrami va siz Rojdestvo shaharchasida uy qurishni xohlaysizmi? Qorboboning qishlog'ini yanada jozibali qilish uchun Arduino uyidan foydalaning. Qil
Raspberry Pi nol bilan DIY aqlli yorug'lik: 4 qadam (rasmlar bilan)
Raspberry Pi Zero bilan DIY aqlli yorug'lik: aqlli chiroqlar tobora ommalashib bormoqda. Bunday chiroqlar odatda WiFi yoki Bluetooth orqali boshqariladigan LED chiroqlardir. Ranglar, to'yinganlik va yorqinlikni smartfon yordamida o'zgartirish mumkin. Men tushundimki, ko'pincha aqlli