Orodha ya maudhui:

Nyumba ya Smart na Raspberry Pi: Hatua 5 (na Picha)
Nyumba ya Smart na Raspberry Pi: Hatua 5 (na Picha)

Video: Nyumba ya Smart na Raspberry Pi: Hatua 5 (na Picha)

Video: Nyumba ya Smart na Raspberry Pi: Hatua 5 (na Picha)
Video: Cheki jama alivyo paa na ndege ya kichawi utashangaa 2024, Novemba
Anonim
Nyumba ya Smart na Raspberry Pi
Nyumba ya Smart na Raspberry Pi

Tayari kuna bidhaa kadhaa huko nje ambazo hufanya gorofa yako nadhifu, lakini nyingi ni suluhisho za wamiliki. Lakini kwa nini unahitaji muunganisho wa mtandao kubadili taa na smartphone yako? Hiyo ilikuwa sababu moja kwangu kujenga suluhisho langu mwenyewe la Smart Home.

Nilipanga programu ya seva inayoendesha kwenye Raspberry Pi. Huu ni mradi wa chanzo wazi wa java ambao hukuruhusu kusanidi gorofa yako na unganisha wateja kadhaa na 'vitengo vinavyoweza kudhibitiwa'. Ninaonyesha suluhisho ambalo linashughulikia swichi za usambazaji wa umeme wa rc, hucheza muziki na video kwenye Raspberry Pi, inaonyesha hali kwenye kioo kizuri na inaweza kudhibitiwa na programu ya android na programu mbili za kokoto. Chanzo kimehifadhiwa kwenye github

Hatua ya 1: Vitu Unavyohitaji

Vitu Unavyohitaji
Vitu Unavyohitaji

Kuanzisha Smart Home, unahitaji 'viungo' vifuatavyo

  • Raspberry Pi angalau mfano 2 B
  • Mtumaji wa 433 MHz, kitu kama hiki https://www.ebay.de/itm/5X-433-Mhz-RF-Sender-Empfa …….
  • Cables 3 za kuruka zinazounganisha Raspberry Pi na mtumaji
  • Soketi zingine za kudhibiti redio saa 433 MHz
  • Smartphone ya Android kuendesha programu ya mteja

Kwa kuongeza, unaweza kupanua Nyumba ya Smart na wateja zaidi ya hiari na vitengo kama hii

  • Smartwatch ya kokoto
  • Mirror Smart, angalia mradi huu
  • Ukanda wa LED uliodhibitiwa wa 433 MHz, angalia hii

Hatua ya 2: Andaa Raspberry Pi kwa 433 MHz

Andaa Raspberry Pi kwa 433 MHz
Andaa Raspberry Pi kwa 433 MHz
Andaa Raspberry Pi kwa 433 MHz
Andaa Raspberry Pi kwa 433 MHz

Katika hatua zifuatazo unahitaji ufikiaji wa laini ya amri kwenye Raspberry Pi. Kupata ufikiaji unaweza kusoma hii inayoweza kufundishwa

Unganisha mtumaji wa 433 MHz na Raspberry Pi kama inavyoonekana kwenye picha hapo juu

  • GND (mtumaji) 6 GND (raspi)
  • VCC (mtumaji) 2 + 5V (raspi)
  • DATA (mtumaji) 11 GPIO 17 (raspi)

Tafadhali pia unganisha antena ya 17cm na pini ya mchwa (mtumaji). Hiyo huongeza ishara muhimu.

Kwa kuwa tunahitaji maktaba kadhaa kutoka kwa hazina zingine za git, lazima tuweke git

Sudo apt-get kufunga git-msingi -y

Kuanzisha Raspberry Pi kwa mawasiliano ya 433 MHz tunahitaji maktaba ya wiring ya Pi kwa utunzaji mzuri wa GPIOs.

git clone git: //git.drogon.net/wiringPi

wiringPi ya cd./ijenga

Halafu tunahitaji maktaba ambayo hutumia itifaki za usambazaji wa umeme wa rc.

clone ya git git: //github.com/dabastynator/rcswitch-pi.git

cd rcswitch-pi fanya cp tuma / usr / bin /

"Tuma" inayoweza kutekelezwa hukuruhusu kutuma nambari ili kubadili vifaa vingi vya umeme.

Katika usanidi wangu wa Smart Home nina pia ukanda wa LED wa rc ulioelezewa na hii inayoweza kufundishwa: kutuma nambari yoyote kamili (Hiyo inasimba rangi).

Kwa hivyo, tengeneza sendInt.cpp kwenye reps ya rcswitch-pi na uhamishe kwa / usr / bin / sendInt.

Sudo g ++ sendInt.cpp -o / usr / bin / sendInt / nyumbani / pi / rcswitch-pi/RCSwitch.o -I / nyumba / pi / rcswitch-pi -lwiringPi

Sasa unapaswa sasa kuweza kutuma amri za rc na watekelezaji wawili / usr / bin / send na / usr / bin / sendInt

Hatua ya 3: Sanidi Smart Home Server

Kwanza kabisa unahitaji kusanikisha vifurushi kadhaa. Maombi ya Smart Home ni msingi wa java na inaendesha vizuri na openjdk-11. Sina hakika juu ya mazingira mengine ya wakati wa kukimbia wa java. Mplayer ni mchezaji wa muziki wa mstari wa amri wa minimalist. Omxplayer hutumia picha za Raspberry Pi kwa usimbuaji video, kwa hivyo hii inapaswa kutumika kwa video. Mchwa wa programu inahitajika kujenga programu ya java.

Sudo apt-get kufunga mplayer omxplayer openjdk-11-jdk ant -y

Saraka za usanidi wa faili ya jar na kwa magogo.

sudo mkdir / opt / neo

sudo chown pi: pi / opt / neo mkdir / nyumbani / pi / Magogo

Sanidi hati ya kuanza ili kuanza programu kiatomati kwenye boot. Kwa hivyo nakili hati iliyoambatishwa ya nyumba-smart kwenye saraka /etc/init.d/ Pia niliunda hati katika / usr / bin / kwamba bomba zinaamuru kwa hati iliyoambatanishwa, kwa hivyo ninaingia tu nyumbani-smart kwenye koni ili kutekeleza amri.

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 / smart-home / $ 1 '>> / usr / bin / smart-home "sudo chmod + x / usr / bin / smart-home sudo update-rc.d chaguo-msingi za nyumbani

Sasa ni wakati wa kukagua hazina na kujenga programu. Ikiwa hautaki kujikusanya wewe mwenyewe, unaweza tu kupakua smarthome.jar iliyoambatishwa na kuihamisha kwa / opt / neo /

git clone [email protected]: dabastynator / SmartHome.git

ant -f SmartHome / de.neo.smarthome.build / build.ant build_remote cp SmartHome / de.neo.smarthome.build / build / jar / * / opt / neo /

Jaribu kuanza smart-home na uangalie faili ya logi. Ili kupata ufikiaji wa GPIOs, programu lazima ianzishwe na sudo.

Sudo smart-kuanza nyumbani

Paka magogo / smarthome.log

Unapaswa kuona ujumbe wa kosa faili ya Usanidi haipo ambayo inatuelekeza kwa hatua inayofuata. Hifadhi ina kisoma ambacho kinaelezea faili ya usanidi. Unaweza kuona hii imetolewa vizuri kwenye github:

Nakili xml hii kwa /home/pi/controlcenter.xml, kisha weka eneo la seva yako ya media na ubadilishe yaliyomo jinsi unavyoihitaji. Mara tu unapomaliza usanidi na kuanza tena nyumba ya smart (sart smart-home restart) unapaswa kuona yaliyomo katika smarthome.log

24.05-08: 26 HABARI ZA MBALI na de.neo.smarthome.cronjob. CronJob@15aeb7ab: Ratiba kazi ya cron

24.05-08: 26 HABARI ZA REMOTE na [trigger.light]: Subiri 79391760 ms kwa utekelezaji 24.05-08: 26 TAARIFA YA RMI na Ongeza mtandao-mshughulikiaji (5061 / ledstrip) / action) 24.05-08: 26 TAARIFA ya RMI na Ongeza mshughulikiaji wa wavuti (5061 / mediaserver) 24.05-08: 26 TAARIFA YA RMI na Ongeza mshughulikiaji wa wavuti (5061 / switch) 24.05-08: 26 TAARIFA ya RMI na Ongeza mshughulikiaji wa wavuti 5061 / controlcenter) 24.05-08: 26 TAARIFA ya RMI kwa Anzisha webserver na 5 handler (localhost: 5061) 24.05-08: 26 HABARI ZA REMOTE na Controlcenter: Ongeza 1. kitengo cha kudhibiti: MyUnit (xyz)…

Seva ya wavuti sasa inaendesha:-)

Hatua ya 4: Wateja wa Usanidi

Kuanzisha wateja
Kuanzisha wateja
Kuanzisha wateja
Kuanzisha wateja
Kuanzisha wateja
Kuanzisha wateja

Mteja wa Smartphone wa Android

Hifadhi ya git ya programu ya smart-home pia ina chanzo cha mteja wa android, kwa hivyo unaweza kujikusanya mwenyewe. Lakini niliunganisha APK kwa hatua hii, ambayo inafanya iwe rahisi. Mara ya kwanza unapoanza programu, inakuuliza seva, kama kwenye picha ya kwanza hapo juu. Ingiza url ya seva na ishara ya usalama.

Hiyo inapaswa kuwa hivyo. Sasa unaweza kufikia seva na kudhibiti gorofa yako, kucheza muziki na kutazama video kwa mbali kwenye Raspberry Pi yako. Kumbuka kuwa unaweza kuongeza vilivyoandikwa kwenye skrini yako ya nyumbani, ambayo inafanya swichi na udhibiti wa muziki kupatikana zaidi.

Mteja wa kokoto ya Smartwatch

Chanzo cha wateja wawili wa kokoto kimehifadhiwa kwenye github. Programu moja inaonyesha faili ya muziki inayocheza sasa: https://github.com/dabastynator/PebbleRemoteMusic ……. Hii pia hukuruhusu kusitisha / kucheza na kuongeza sauti juu / chini.

Programu ya pili inasababisha vitendo vitatu: https://github.com/dabastynator/PebbleControl Majina ya vichocheo ni: mobile.come_home mobile.leaving na mobile.go_to_bed. Ukifafanua sheria za hafla za kichocheo hiki katika usanidi wako-xml unazisababisha kwa saa yako.

Yote ni chanzo wazi, lakini hauitaji kuikusanya mwenyewe, pia niliambatisha programu za kokoto. Pakua PBW na smartphone yako, simu yako inapaswa kuiweka kwenye saa yako. Programu za kokoto zinahitaji usanidi ili kuzungumza na seva. Niliambatisha skrini jinsi mipangilio yangu inavyoonekana.

Mteja wa Smartwatch Garmin

Pia kuna mteja anayepatikana kwa Garmin Smartwatches. Programu inapatikana katika duka la garmin kuungana na inaweza kusanikishwa hapa:

apps.garmin.com/en-US/apps/c745527d-f2af-4…

Mteja wa Mirror Smart

Tayari nimeunda maelezo ambayo yanaelezea jinsi ya kuunda Mirror Smart, angalia hii Programu ya Mirror Smart inasoma usanidi kutoka kwa faili smart_config.js ambayo sio sehemu ya hazina ya git. Yaliyomo kwenye faili ya usanidi yanapaswa kuonekana kama orodha hii:

var mOpenWeatherKey = 'ufunguo-wako-wazi';

var mSecurity = 'ishara yako ya usalama';

Lazima pia urekebishe mistari miwili ya kwanza ya faili smart_mirror.js kutaja anwani ya IP ya seva ya Smart Home na eneo ili kupata hali ya hewa inayofaa.

Wateja zaidi

Programu ya seva ni seva rahisi ya wavuti. Hii hukuwezesha kuchochea vitendo kutoka kwa mteja yeyote unayetaka kwa simu rahisi za wavuti. Katika onyesho-video ninaonyesha kiboreshaji wa programu ya android pamoja na AutoVoice. Hii inaniwezesha kuchochea hafla na amri rahisi za sauti. Kwa mfano "ok google, wakati wa kulala" inaweza kusababisha rununu.go_to_bed. Lakini unaweza pia kupiga simu za wavuti kwa mfano kutoka IFTTT. Je! Vipi juu ya ukanda wa taa wa kupepesa wa manjano kwa arifa ya barua pepe?

Unaweza kuuliza seva kwa simu zinazowezekana za wavuti kama viungo vifuatavyo (badilisha ip, bandari na ishara na usanidi wako)

localhost: 5061 / controlcenter / api? token = secu…

localhost: 5061 / action / api? token = usalama-kwa…

localhost: 5061 / mediaserver / api? token = securi…

localhost: 5061 / switch / api? token = usalama-kwa…

localhost: 5061 / ledstrip / api? ishara = usalama-…

Hatua ya 5: Hitimisho

Bado kuna huduma kadhaa za kutekeleza: Kwa kuwa seva hutoa tu wateja rahisi wa wavuti hufanya kura nyingi. Ili kupunguza upigaji kura nataka ujumuishaji wa MQTT kwa arifa bora. Pia vifaa vya umeme vya wifi vinapaswa kufanya uaminifu zaidi kuliko vifaa vya umeme vya rc kwani rc ni njia moja tu ya mawasiliano.

Inafanya raha nyingi kuendeleza kwa mradi huu. Na ni sawa kudhibiti gorofa na vifaa kadhaa, hata ikiwa unganisho la mtandao linavunjika.

Ilipendekeza: