Darbo su „OpenHAB Home Automation“ pradžia „Raspberry Pi“

Darbo su „OpenHAB Home Automation“ pradžia „Raspberry Pi“
Šį vadovą galima atsisiųsti kaip nemokamą PDF. Atsisiųskite šį failą dabar . Nesivaržykite nukopijuoti ir pasidalyti šia informacija su draugais ir šeima.

„OpenHAB“ yra subrendusi, atviro kodo namų automatikos platforma, kuri veikia su įvairia aparatine įranga ir yra protokolo agnostika, o tai reiškia, kad ji gali prisijungti prie beveik bet kokios namų rinkoje esančios aparatūros. Jei buvote nusivylę daugybe konkrečių gamintojų programų, kurias turite paleisti tik norėdami valdyti savo šviesas, turiu jums puikių naujienų: „OpenHAB“ yra sprendimas, kurio ieškojote - tai lanksčiausias išmanusis namas centrą, kurį kada nors rasite.





Deja, tai yra tiek, kiek galite gauti iš draugiško vartotojams, bet kaip visada, čia ir yra „MakeUseOf“: parodysime, kaip pradėti veikti, naudojant geriausią išmaniųjų namų sistemą, kurios nereikia pirkti (nes „OpenHAB“ 100% nemokama - tiesiog aprūpinkite aparatūrą).





Pirmoje šio vadovo dalyje daugiausia dėmesio skiriama „OpenHAB“ sąrankai naudojant Raspberry Pi 2 , bet toliau pamokos ir patarimai gali būti taikomi bet kur, kur įdiegta „OpenHAB“.





Šis vadovas apima tris įvadines temas ir vieną šiek tiek pažangesnę.

  • „OpenHAB“ paleidimas ir „Pi“ įdiegimas bei demonstracinio namo konfigūracijos įdiegimas, siekiant patikrinti, ar pagrindinės sistemos veikia.
  • Kaip pridėti įrišimus ir įrenginių profilius. Aš dirbsiu su „Philips Hue“.
  • Įgalinama nuotolinė prieiga ir prisijungimas prie IFTTT.
  • „Pasidaryk pats“ buvimo jutiklio pridėjimas naudojant „Bluetooth“ ir įvadas į REST sąsają.
  • „OpenHAB“ programos mobiliesiems konfigūravimas.

Ko jums reikės

Bent jau jums reikės „Raspberry Pi“ (pageidautina, v2) ir eterneto arba belaidžio adapterio (pageidautina „Ethernet“, šiame vadove nebus instrukcijų, kaip „Wi-Fi“ adapteris veiktų). Visa kita yra neprivaloma. Atminkite, kad „OpenHAB“ veiks ir su originaliu „Raspberry Pi“, tačiau yra žinoma problema, susijusi su lėtesniu apdorojimu ir „Z-Wave“ įrenginiais. Jei jums nereikia Z-Wave, galite saugiai ignoruoti šį įspėjimą ir tęsti Raspberry Pi modelį B arba B+, nes visa kita atrodo gerai. Visada galite atnaujinti į naujausią „Pi“, jei ir kai pridėsite „Z-Wave“.



Ši smulkmena gali būti geriausias išmaniųjų namų centras, kokį kada nors turėjote!

Rašymo metu naujausia stabili „OpenHAB“ versija yra 1.71; 1.8 versijos tikimasi netrukus, ir viskas šiame vadove vis tiek turėtų būti aktualu, nors kai kurie susiejimai gali turėti daugiau funkcijų. 2 versija šiuo metu taip pat prieinama kaip labai ankstyva alfa peržiūra, tačiau jos architektūra skiriasi nuo „OpenHAB 1“ serijos: šis vadovas nesuderinamas su 2 versija.





Aš primygtinai siūlau jums vadovautis šiuo vadovu lėtai ir metodiškai - nebandykite įšokti giliai ir pridėti viską iš karto. Taip, tai ilgas vadovas - „OpenHAB“ yra sudėtinga sistema, kuriai dažnai reikia pritaikyti jūsų poreikius, o geriausias būdas užtikrinti sėkmę yra lėtai dirbti ir užbaigti vieną kūrinį vienu metu.

Geros naujienos yra tai, kad kai tik tai veikia, tai yra neįtikėtinai maloni patirtis ir nepaprastai naudinga.





„OpenHAB“ diegimas

Nėra iš anksto sukonfigūruoto „OpenHAB“ vaizdo, todėl diegimas atliekamas senamadiškai naudojant komandų eilutę. Siūlau jums dirbti be galvos su RPi - retai naudojamos GUI administravimo išlaidos neapsimoka.

Pradėkite nuo naujausias (visas) „Raspbian“ SD vaizdas (ne „lite“ versija, ši neapima „Java“ virtualios mašinos). Prijunkite tinklo kabelį, tada paleiskite ir naršykite per SSH. Vykdyti:

sudo raspi-config

Išplėskite failų sistemą; ir išplėstiniame meniu pakeiskite atminties padalijimą į 16. Kai baigsite, paleiskite iš naujo ir, kaip gera praktika, paleiskite visą atnaujinimą

sudo apt-get update
sudo apt-get upgrade

Lengviausias būdas įdiegti „OpenHAB“ vykdymo laiką yra per apt-get , bet pirmiausia turime pridėti saugų raktą ir naują saugyklą:

wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' |sudo apt-key add -
echo 'deb http://dl.bintray.com/openhab/apt-repo stable main' | sudo tee /etc/apt/sources.list.d/openhab.list
sudo apt-get update
sudo apt-get install openhab-runtime
sudo update-rc.d openhab defaults

Įdomu tai, kad viskas buvo įdiegta kaip „root“ nuosavybė. Turime tai išspręsti naudodami šias komandas.

sudo chown -hR openhab:openhab /etc/openhab
sudo chown -hR openhab:openhab /usr/share/openhab

Tada įdiegsime „Samba“ ir bendrinsime konfigūraciją bei naudotojų aplankus-taip bus lengviau įdiegti priedus ir nuotoliniu būdu keisti svetainės schemą.

sudo apt-get install samba samba-common-bin
sudo nano /etc/samba/smb.conf

Jei reikia, pakeiskite darbo grupės pavadinimą, bet kitaip įgalinkite WINS palaikymą:

wins support = yes

(turėsite panaikinti eilutės komentarą ir pakeisti „ne“ į „taip“)

tada pridėkite prie bendrinimo apibrėžimų skyriaus (slinkite iki pat ilgo failo apačios):

[OpenHAB Home]
comment= OpenHAB Home
path=/usr/share/openhab
browseable=Yes
writeable=Yes
only guest=no
create mask=0777
directory mask=0777
public=no
[OpenHAB Config]
comment= OpenHAB Site Config
path=/etc/openhab
browseable=Yes
writeable=Yes
only guest=no
create mask=0777
directory mask=0777
public=no

Aš taip pat pakomentavau skyrių „Spausdintuvai“. Aš padariau du bendrinimus, nes konfigūracijos failai iš tikrųjų saugomi atskirai prie priedų.

Išsaugoti ir išeiti. Pagaliau turime nustatyti „Samba“ slaptažodį „openhab“ vartotojui:

sudo smbpasswd -a openhab

Siūlyčiau „openhab“ kaip slaptažodį, kad būtų lengviau naudotis, bet tai tikrai nesvarbu.

Dėkojame skaitytojui Davidui L - atrodo, kad „Samba“ paleidimo iš naujo metodas pasikeitė naujausiame „Raspian“. Štai atnaujintos instrukcijos:

sudo update-rc.d smbd enable
sudo update-rc.d nmbd enable
sudo service smbd restart

Iš naujo paleidus „Samba“ (naudojami senesni diegimai sudo paslaugos samba paleidimas iš naujo ), išbandykite, ar galite pasiekti bendrą diską. Tai gali būti automatiškai neatrasta „Mac“; bet jūs galite naudoti Ieškiklis -> Eik -> Prisijunkite prie serverio ir adresą

smb://openhab@raspberrypi.local

Autentifikuokite naudodami „openhab“ naudotojo vardą ir pasirinktą slaptažodį, tada atidarykite abi dalis, kad galėtumėte apsižvalgyti. Jūs netgi turėtumėte turėti galimybę atidaryti http: //raspberrypi.local: 8080/savo žiniatinklio naršyklėje, tačiau jūsų laukia klaida, nes mes dar nesukūrėme svetainės schemos. Tai normalu.

Dabar būtų tinkamas laikas išmokti komandą pritaikyti „OpenHAB“ žurnalą, kad galėtumėte stebėti klaidas.

tail -f /var/log/openhab/openhab.log

Tęskite vadovo teikimą ir visada atidarykite jį atskirame SSH lange.

Įdiekite demonstracinį namą

Prieš įsigilindami į konfigūracijos failų subtilybes, pridėdami įrenginių ir įrišimų ir tt; patikrinkime, ar viskas veikia, pridėdami demonstracinį turinį. „Demo Setup“ rasite OpenHAB.org atsisiuntimų skiltyje.

Kai atspausdinsite, bus du aplankai: priedai ir konfigūracijos .

Naudodami tinklo dalis, nukopijuokite konfigūracijos į „OpenHAB Config“ bendrinti ir perrašyti esamą aplanką. Kopijuoti priedai kitam „OpenHAB Home“ dar kartą pasidalykite, perrašydami esamus aplankus. Jei jūsų neprašo ką nors perrašyti, tai darote neteisingai. Jei pastebėjote derinimo žurnalo failą, turėtumėte pastebėti veiklos virpulį, nes jis pastebi naujus įrišimus ir švilpukus. Norėdami pamatyti demonstracinę versiją, atidarykite raspberrypi.local: 8080/openhab.app? Sitemap = demo.

Šiuo metu tai šiek tiek elementaru, tačiau atviras „OpenHAB“ pobūdis reiškia, kad vėliau galime įdiegti gražią naują temą arba visiškai alternatyvią sąsają. Kol kas mums tiesiog reikėjo žinoti, kad viskas veikia. Atminkite, kad tai, ką mes žiūrime, vadinama a svetainės schema (nieko bendro su svetainės svetainės žemėlapiu). Svetainės schema apibūdina vartotojo sąsają, o ne tikrus jūsų tinklo įrenginius ar jutiklius, o tik sąsają, kad galėtumėte juos peržiūrėti. Kiekviena jo dalis yra visiškai pritaikoma. Norėdami pamatyti, kaip šis buvo sukurtas, atidarykite sitemaps/demo.sitemap failą „OpenHAB Config“ dalyje.

Tai gana nelengva, tačiau dažniausiai nukopijuosite įklijuotus kodo fragmentus iš pavyzdžių kitur, kad sukurtumėte savo pasirinktinę sąsają. Štai techninė apžvalga visų galimų svetainės schemos elementų, tačiau kol kas užteks tik pradėti galvoti, kokią sąsają norite sukurti ir kokią informaciją norite rodyti.

Kol esi ten, atsiversk elementai/demo.items taip pat. Vėlgi, atrodo baisu, tačiau čia kuriate elementus, kuriuos norite valdyti ir nustatyti jutiklius, kuriuos norite stebėti.

Taigi, kaip veikia „OpenHAB“?

Dabar, kai greitai apžiūrėjote svetainės schemos ir elementų aplanką, išsiaiškinkime, kokie yra šie failai ir kiti pagrindiniai „OpenHAB“ komponentai, kurie kartu sukuria jūsų protingus namus. Kiekvieno iš jų pakatalogius rasite „OpenHAB Config“ bendrinamame aplanke.

Daiktai yra kiekvieno jūsų sistemoje norimo valdymo įtaiso, jutiklio ar informacijos elemento inventorius. Tai taip pat neturi būti fizinis įrenginys - galite apibrėžti žiniatinklio šaltinį, pvz., Orą ar akcijų kainas. Kiekvienas elementas gali būti pavadintas, priskirtas kelioms grupėms (arba ne) ir susietas su konkrečiu įrišimu. (Patarimas pradedantiesiems: didžiosios raidės yra svarbios, kai kalbama apie apkaustus. Ilgai bandžiau išsiaiškinti, kodėl mano „Hue“ lemputės neveikia; taip buvo todėl, kad jos turėjo būti „atspalvio“).

Svetainės schemos yra susijusi tik su sąsaja, kurią matysite atidarę „OpenHAB“ mobiliesiems ar žiniatinklio programą. Galite tiksliai valdyti, kaip norite išdėstyti mygtukus ir pateikti informaciją. Galite nustatyti aukščiausio lygio grupes kiekvienam savo namo kambariui; spustelėjus kiekvieną iš jų, bus parodytas visų to kambario įrenginių sąrašas. Arba galbūt norėsite rodyti kiekvieno tipo prietaisų grupes: mygtuką žibintams, kitą - elektros lizdams. Gali būti, kad kai kuriuos įrenginius naudojate taip dažnai, kad tiesiog norite juos perjungti tiesiai pagrindiniame ekrane.

Taisyklės čia atsižvelgiama į namų automatizavimo aspektą, kuriame galite nustatyti veiksmų tvarkaraščius ar sąlygas. Paprasti įvykiai, pavyzdžiui, 22 val. Įjungti miegamojo šviesas ir įgauti šiltą raudoną spalvą; arba sudėtingesnę logiką, pavyzdžiui, įjungti patalpos šildytuvą, jei temperatūra yra žemesnė nei 0 ir kažkas yra toje patalpoje. Taip pat rasite a scenarijus aplanką, kuris siūlo panašias funkcijas kaip taisyklės, tačiau sudėtingesniu programuojamos logikos lygiu.

Atkaklumas yra išplėstinė tema, kurios šiame vadove nenagrinėsime, tačiau atkaklumas apibrėžia duomenis, kuriuos norite išsaugoti. Pagal numatytuosius nustatymus „OpenHAB“ parodys tik dabartinę kažko būseną; jei norite stebėti šią vertę laikui bėgant, turite nustatyti to duomenų šaltinio patvarumo apibrėžimą. Čia nurodysite, pavyzdžiui, kaip dažnai turi būti matuojamas duomenų taškas arba kada išmesti senus duomenų taškus - taip pat turėsite pasakyti, kokį atkaklumo variklį naudoti, pvz., „MySQL“ ar paprastą prisijungimą prie failo .

Transformuoti yra duomenų reikšmių susiejimas su etiketėmis. Pavyzdžiui, humidex.skalė failas apibrėžia drėgmės indekso reikšmių diapazoną ir tai, kaip jos turėtų būti rodomos anglų kalba: 29–38 yra „diskomfortas“.

The svetainės schema ir elementus failai yra būtini norint paleisti „OpenHAB“; likusi dalis yra neprivaloma. Galite turėti keletą svetainių schemų ir elementų, kad galėtumėte išsaugoti demonstracinį turinį ir bet kuriuo metu jį peržiūrėti, arba išbandyti naują namų valdymo sąsajos išdėstymą. Nesijaudinkite, jei visa tai šiuo metu atrodo šiek tiek per daug, mes suskaidysime ją į valdomas dalis ir pažadu, kad šio vadovo pabaigoje turėsite pasitikėjimo savo „OpenHAB“ sąranka.

Toliau paaiškinsime, kaip pridėti įprastą išmaniųjų namų rinkinį, pradedant nuo naujos svetainės schemos. Kiekvienas iš jų supažindins su pagrindinėmis sąvokomis, pvz., Kaip įdiegti įrišimus ir elementų apibrėžimus, todėl primygtinai rekomenduoju perskaityti šias instrukcijas net jei neturite tų konkrečių įrenginių .

Pradėkite kurdami naują (tuščią) namai.elementai failą ir naują namai.svetaine failą atitinkamuose kataloguose. Atidaryti namai.svetaine ir įklijuokite šį kodą. Tai tiesiog veikia kaip pagrindinis skeletas, prie kurio vėliau pridėsime bitų.

sitemap home label='My Home'
{

}

Turėtumėte pamatyti pranešimą, kad „OpenHAB“ nustatė naują svetainės schemos ir elementų failą.

aligncenter size-large wp-image-496593

Įgalinti derinimo režimą

Nors vis dar bandote, kad „OpenHAB“ veiktų tinkamai, gali būti naudinga įgalinti išsamesnį derinimo žurnalą, kuriame išvardijama viskas, o ne tik svarbūs dalykai. Norėdami įjungti šį režimą, atidarykite „OpenHAB Config“ bendrinamą aplanką ir redaguokite logback.xml . 40 eilutėje pakeiskite šią eilutę, kad vietoj INFO būtų rodoma DEBUG. Pakeitę turėsite iš naujo paleisti.

Tai yra visuotinis pokytis, todėl, kurdami žurnalo failą, gausite daug daugiau informacijos.

Pridedamas „Philips Hue“

Pradėsiu nuo „Philips Hue“. Kaip ir dauguma dalykų, su kuriais norėsite bendrauti „OpenHAB“, „Hue“ lemputes reikia įdiegti privalomas - pagalvokite apie apkaustus kaip įtaiso tvarkyklę. Rašymo metu „OpenHAB 1“ yra apie 160 įrišimų, todėl „OpenHAB“ yra tokia galinga sistema - ji gali sąveikauti su bet kuo, sujungdama visas tas skirtingas valdymo sistemas į vieną vieningą sąsają. Pateikiame demonstracinę versiją ir greitą atliktų veiksmų apžvalgą.

Įrišimus pirmiausia reikia atsisiųsti, o lengviausias būdas tai padaryti naudojant „Pi“ apt-get , tada priversti nuosavybę „openhab“ vartotojui.

sudo apt-get install openhab-addon-binding-hue
sudo chown -hR openhab:openhab /usr/share/openhab

Toliau turite pasakyti „OpenHAB“, kad įkeltų tą susiejimą, ir sukonfigūruoti visus reikalingus kintamuosius. Eikite į konfigūracijų aplanką ir padarykite jo kopiją openhab-default.cfg , pavadindamas jį openhab.cfg . Atidarykite tai, ieškokite ATSPALVIS ir pakeiskite visą skyrių tokiu kodu. Vienintelis dalykas, kurį reikia pakeisti, yra jūsų tilto IP vertė - jei to dar nežinote, išbandykite internetinį atradimo įrankį. Slaptoji vertė tikrai nesvarbi, tai tik tam tikras vartotojo vardas, kurį „OpenHAB“ naudos identifikuodamas tiltą.

Greitas patarimas : norėdami įjungti eilutę, tiesiog pašalinkite # iš pradžių. Pagal numatytuosius nustatymus eilutė, nurodanti tilto IP adresą, yra išjungta (arba techniškai „pakomentuota“). Be to, jei bandote alternatyvią konfigūraciją, gali būti naudinga tiesiog nukopijuoti esamą eilutę ir pradžioje įrašyti #, kad ji būtų pažymėta kaip komentaras, kad galėtumėte lengvai sugrįžti, jei kažkas negerai.

################################ HUE Binding ######################################### # IP of the Hue bridge
hue:ip=192.168.1.216
hue:secret=makeuseofdotcom
hue:refresh=10000

Išsaugoti ir išeiti. Kaip ir bet kuri trečiosios šalies „Hue“ programa, turėsite patvirtinti „OpenHAB“ ant „Hue Bridge“, paspausdami priekyje esantį mygtuką - tai reikia padaryti tik vieną kartą. Pamatysite pranešimą apie laukia susiejimo jei kuriate žurnalo failą, bet jei pamiršote ar praleidote skaičiavimą, tiesiog iš naujo nustatykite „Pi“ - gausite 100 sekundžių laikmatį nuo tada, kai bus pradėtas „Hue“ susiejimas. Prieš tęsdami įsitikinkite, kad sėkmingai susiejote.

Toliau atidarykite namai.elementai failą, prie kurio pridėsime kelias „Hue“ lemputes. Štai elemento apibrėžimo pavyzdys:

Color Bedroom_Hue 'Bedroom Hue' (Bedroom) {hue='1'}
  • The Spalva žodis nurodo, kokią mes galime kontroliuoti šį elementą. „RGB Hue“ lemputės yra „Spalvotos“, nes mes visiškai kontroliuojame jų spalvas. Kiti žibintai gali būti tik jungiklis.
  • Kitas yra kodinis prekės pavadinimas: aš pasirinkau Miegamasis_ atspalvis , bet pažodžiui viskas yra gerai - tiesiog kažkas aprašomojo, kuris jums atrodo natūralus, nes vėliau turėsite tai prisiminti kurdami svetainės schemą. Kodo pavadinime neturėtų būti tarpų.
  • Tarp kabučių yra etiketė. Mūsų atveju šiuo atveju viskas paprasta, tačiau kai kuriems elementams, pvz., Temperatūrai ar kitai, kuri praneša apie vertę, pridėsite specialų kodą, nurodantį, kaip tą vertę rodyti arba naudoti transformuoti. Etiketė skirta sąsajai ir gali turėti tarpų.
  • Tarp kampinių skliaustų yra piktogramos pavadinimas. Visas galimas piktogramas rasite „OpenHAB“ bendrinimo skiltyje žiniatinklio programos/vaizdai katalogą. Iš tikrųjų yra daugybė atspalvių piktogramų, vaizduojančių skirtingą ryškumą arba įjungimą/išjungimą. Tiesiog nurodykite pagrindinės piktogramos pavadinimą - „OpenHAB“ žinos, kad automatiškai ieškos skirtingų įjungimo/išjungimo piktogramų, jei tai yra perjungtas elementas. Tai neprivaloma.
  • Apvaliuose skliaustuose nurodome, kurioms grupėms priklausyti - šiuo atveju tik Miegamasis grupė.
  • Galiausiai ir labai svarbu, kad elementas būtų prijungtas prie tinkamo įrišimo su visais reikalingais kintamaisiais. Šiuo atveju, atspalvis įrišimas, o lemputės numeris yra 1. Numerį galite rasti atidarę oficialią „Hue“ programą ir pažvelgę ​​į žibintų skirtuką. Kiekviena lemputė turi unikalų numerį.

Iš viso pridėjau keturias lemputes, taip pat paprastą grupių, kurias vėliau išplėsime, deklaraciją. Štai mano pilnas namai.elementai Šiuo atveju:

Group Bedroom
Group Office
Group Kai
Group Living_Room
Group Cinema
Group Secret
Group Lights /* Lights */
Color Bedroom_Hue 'Bedroom Hue' (Bedroom,Lights) {hue='1'}
Color Office_Hue 'Office Hue' (Office, Lights) {hue='2'}
Color Secret_Hue 'Secret Hue' (Secret, Lights) {hue='3'}
Color Kai_Hue 'Kai's Hue' (Kai, Lights) {hue='4'}

The / * Šviesos */ tekstas yra tik komentaras, jis neturi jokios kitos funkcijos, kaip tik padėti mums nuskaityti failą vėliau, kai jis padidės. Dabar mes pridėjome įrenginius, tačiau atvėrus http: //raspberrypi.local: 8080/? Sitemap = home atsiranda tuščia sąsaja - žinoma, nes mes iš tikrųjų dar nesukūrėme sąsajos elementų svetainės schemoje. Pradėkime nuo šiol tikrai paprastai. Atidaryti namai.svetaine .

Sąsajai apibūdinti naudojamas kodas skiriasi nuo elementų, tačiau kol kas sukursime naują „rėmelį“ ir pridėsime keletą grupės valdiklių kartu su kai kuriomis piktogramomis.

sitemap home label='My Home'
{
Frame {
Group item=Lights label='All lighting' icon='hue'
Group item=Bedroom label='Bedroom' icon='bedroom'
Group item=Office label='Office' icon='desk'
}
}

Grupės yra naudingas greito testavimo įrankis, tačiau iš tikrųjų norėsite labiau kontroliuoti elementų rodymą. Kol kas to pakaks. Išsaugokite ir iš naujo įkelkite namų svetainės schemą naršyklėje. Turėtumėte tai pamatyti (ar bet kokias pridėtas grupes).

Spustelėkite Visas apšvietimas pamatyti kiekvieną atspalvio šviesą, nes mes juos visus apibūdinome kaip priklausančius tai pagrindinei šviesų grupei.

Atkreipkite dėmesį, kad „Office Hue“ elementas rodomas su kita piktograma - taip yra todėl, kad mano biuro lemputė jau dega, o „OpenHAB“ tai žino, kai kalbėjo su „Hue Bridge“, ir buvo pakankamai protinga, kad pritaikytų piktogramą „įjungta“ failo versija. Deja, ji neatspindi spalvos, bet jei esate įdiegę programą mobiliesiems, tai atspindės esamą spalvą.

Jei matote daugiau elementų, nei manėte, kad apibrėžėte, arba gaunate klaidų dėl kelių apibrėžimų, žinokite, kad nors vienu metu į puslapį galite įkelti tik vieną svetainės schemą visos svetainės schemos ištrauks elementus iš visų .item failų , taigi, jei ten palikote demonstracinių elementų failą, gali būti, kad kai kurie papildomi elementai bus rodomi ir jūsų grupėse. Siūlyčiau šiuo metu sukurti atsarginę kopiją demonstracinių elementų turiniui ir perkelti jį iš aplanko, kad būtų išvengta dubliavimo klaidų.

Nuotolinė prieiga ir IFTTT su „My.OpenHAB“

Šiuo metu, norėdami pasiekti „OpenHAB“ sistemą, turite būti tame pačiame vietiniame tinkle, bet ką daryti, jei norite valdyti savo įrenginius ir patikrinti jutiklius, kai esate už „Wi-Fi“ ribų? Tam turėsime nustatyti nuotolinę prieigą - ir tai padarysime paprastu būdu, naudodami „My.OpenHAB“ žiniatinklio paslaugą [Broken URL Removed], kuri apeina poreikį kištis į prievadų peradresavimo ir maršrutizatoriaus konfigūracijas. „My.OpenHAB“ paslauga taip pat turi IFTTT kanalą, suteikiantį begalę nuotolinio valdymo ir automatizavimo galimybių.

Pirma: įdiekite įrišimą. Greitas patarimas: jei nežinote tikslaus konkretaus diegimo paketo pavadinimo, pabandykite jo ieškoti naudodami apt-cache.

sudo apt-get install openhab-addon-io-myopenhab
sudo chown -hR openhab:openhab /usr/share/openhab

Prieš registruodamiesi „My.OpenHAB“ svetainėje, turite sukurti slaptą raktą ir rasti savo UUID, kuris unikaliai identifikuoja jūsų diegimą. Patikrinkite po „OpenHAB Home“ bendrinimas -> žiniatinklio programos -> statinis ir turėtumėte rasti UUID failą, kuriame yra jūsų unikalus identifikatorius. Būtent šiuo metu aš sužinojau, kad mano „Pi“ naudoja senesnę „Java“ versiją, kuri netinkamai sukuria slaptą raktą. Tipas

java -version

patikrinti. Jei nenurodyta 1.7 ar naujesnė versija, turite neteisingą versiją. Kaip bebūtų keista, naujausioje „Raspbian“ versijoje yra įdiegta „Oracle Java 8“, bet nenustatyta kaip numatytoji.

sudo atnaujinimo alternatyvos --config java

kodėl mano Amazonės ugnies lazda tokia lėta?

Pasirinkite nurodytą parinktį jdk-8-oracle , tada iš naujo paleiskite „OpenHAB“. Premija: „Oracle Java 8“ yra greitesnė nei numatytoji „OpenJDK“!

Dabar taip pat turėtumėte rasti slaptą failą žiniatinklio programos/statinis aplanką. Atidarykite abu paslaptis ir uuid ir būkite pasiruošę įklijuoti.

Dabar eikite, sukurkite „My.OpenHAB“ paskyrą, naudodami šią informaciją, tada grįžkite - taip pat turėsite patvirtinti savo el. Yra dar pora žingsnių. Pirma, mes turime nustatyti numatytąjį patvarumo variklį į myopenhab (atkaklumas yra kažkas vėlesnio vadovo, bet nepaisant to, turime nustatyti kažką pagrindinio, kad „eksportuotume“ savo duomenis į internetinę paslaugą ir padarytume juos matomus IFTTT) . Norėdami tai padaryti, atidarykite openhab.cfg ir suraskite kintamąjį, kuris sako atkaklumas: numatytasis = ir pakeiskite jį į atkaklumas: numatytasis = myopenhab . Sutaupyti.

Galiausiai sukurkite naują failą konfigūracijos/atkaklumas aplankas vadinamas myopenhab.išsilaikyti ir įklijuokite šią taisyklę.

Strategies {
default = everyChange
}
Items {
* : strategy = everyChange
}

Šiuo metu jums to nereikia suprasti, tačiau žinokite, kad sakoma „išsaugokite kiekvieną elemento būseną, kai jis pasikeičia“.

Norėdami susisiekti su IFTTT, eikite į „OpenHAB“ kanalas - turėsite autentifikuoti ir suteikti jai prieigą prie „MyOpenHAB“ paskyros. Taip pat atkreipkite dėmesį, kad kol jūsų elementai bent kartą nepasikeis, jie nebus matomi IFTTT elementų sąraše, taigi, jei jie nematomi, įjunkite ir išjunkite ką nors, tada įkelkite iš naujo. Sveikiname, dabar turite visišką IFTTT prieigą prie visko, kas yra jūsų „OpenHAB“ sistemoje!

„Bluetooth“ buvimo jutiklis naudojant REST

Prieš kurį laiką parodžiau, kaip padaryti automatinį biuro durų užraktą naudojant „Bluetooth“ nuskaitymą, kad būtų galima aptikti vartotojo buvimą - norėjau kažką panašaus įtraukti į „OpenHAB“.

Bet kurioje platformoje, išskyrus „Raspberry Pi“, tai būtų paprasta dėl paruošto „Bluetooth“ įrišimo; deja, jis neveikia „Pi“ dėl esminio „Java“ failo, kurį reikės iš naujo sukompiliuoti ARM architektūrai, pridėti prie įrišimo ir tada atkurti įrišimą. Pakanka pasakyti, aš tai išbandžiau, ir tai buvo baisiai sudėtinga ir neveikė. Tačiau yra daug paprastesnis sprendimas, kuris taip pat yra geras įvadas į tiesioginį „OpenHAB“ išplėtimą: mes tiesiog pritaikysime ankstesnį „Python“ scenarijų, kad jis praneštų tiesiogiai apie „OpenHAB RESTful“ sąsają.

Be to: RESTful sąsaja reiškia, kad galite sąveikauti su sistema naudodami įmontuotą žiniatinklio serverį, tiesiog skambindami URL adresais ir perduodami arba gaudami duomenis. Galite apsilankyti šiuo URL ir pamatyti paprastą to pavyzdį savo serveryje: http: //raspberrypi.local: 8080/rest/items - kuris pateikia koduojamą visų jūsų apibrėžtų elementų sąrašą. Tai neįtikėtinai galinga, nes atskleidžia visas „OpenHAB“ galimybes ir leidžia rašyti pasirinktines sąsajas; arba atvirkščiai - pranešti apie jutiklių būseną be konkretaus įrišimo. Pasinaudosime šia galimybe pranešti apie konkretaus „Bluetooth“ įrenginio buvimą, nesinaudodami „Bluetooth“ įrišimu.

Pradėkite pridėdami naują Perjungti daiktas jums namai.elementai failą. Aš pavadinau savo „JamesInOffice“ ir padariau jį jungikliu, o ne paprastu įjungimo/išjungimo kontaktu, kad galėčiau rankiniu būdu valdyti savo buvimą, jei telefonas sugestų.

Switch JamesInOffice 'James in Office' (Office)

Atminkite, kad neapibrėžiau piktogramos ir nesusiejau konkretaus įrišimo. Tai tik bendras jungiklis.

Tada įdėkite suderinamą USB „Bluetooth“ raktą ir įdiekite keletą pagrindinių sąveikos įrankių.

sudo apt-get install bluez python-bluez python-pip
sudo pip install requests
hcitool dev

Paskutinė komanda turėtų parodyti „Bluetooth“ adapterį. Jei nieko nenurodyta, išbandykite kitą adapterį, jūsų nesuderinamas su „Linux“. Kitas žingsnis - surasti įrenginio „Bluetooth“ aparatinės įrangos adresą.

wget https://pybluez.googlecode.com/svn/trunk/examples/simple/inquiry.py
python inquiry.py

Įsitikinkite, kad jūsų telefonas yra atidarytas „Bluetooth“ nustatymų puslapyje (kuris įjungia suporavimo/viešąjį režimą) ir, žinoma, kad „Bluetooth“ yra suaktyvintas. Turėtumėte rasti šešioliktainį aparatūros adresą.

Iš savo Pi vartotojo namų katalogo sukurkite naują „Python“ scenarijų ir įklijuokite šį kodą .

Turite redaguoti keletą dalykų, pradedant nuo konkretaus įrenginio adreso:

result = bluetooth.lookup_name('78:7F:70:38:51:1B', timeout=5)

Taip pat ši eilutė, kuri yra dviejose vietose (taip, tai tikriausiai galėtų būti geriau suplanuota). Pakeiskite „JamesInOffice“ į jūsų apibrėžto jungiklio kodinį pavadinimą.

r = requests.put('http://localhost:8080/rest/items/JamesInOffice/state',data=payload)

Paskutinis žingsnis yra nurodyti šiam scenarijui paleisti įkrovos metu.

sudo nano /etc/rc.local

Slinkite žemyn iki apačios ir prieš pat išėjimą 0 pridėkite šias eilutes:

python /home/pi/detect.py &

Ženklas & reiškia „darykite tai fone“. Eikite į priekį ir paleiskite scenarijų, jei to dar nepadarėte, ir atidarykite „OpenHAB“ sąsają. Jei pridėjote jį prie grupės, spustelėkite tą grupę. Atnaujinimas užtrunka apie 10 sekundžių, tačiau pamatysite, kad numatytoji lemputės piktograma įsijungia arba išsijungia priklausomai nuo to, ar jūsų telefonas yra aptiktas, ar ne. Patikrinkite žurnalo failą, jei nieko neatsitiks, gali būti, kad naudojote netinkamą elemento pavadinimą.

„OpenHAB Mobile App“

Nors, žinoma, galite naudoti žiniatinklio sąsają iš mobiliojo įrenginio, „OpenHAB“ turi savąsias programas abiem ios ir „Android“ - ir jie atrodo a daug gražesnė nei numatytoji naršyklės sąsaja. Nustatymų ekrane įveskite vietinį URL kaip vidinį IP, kurį naudojote iki šiol, įskaitant prievado numerį. Jei norite gauti nuotolinį URL, įveskite https://my.openhab.org , ir vartotojo vardą (el. pašto adresą) bei slaptažodį, kuriuos įvedėte prisiregistruodami. Jei dar nesate prisiregistravę prie „MyOpenHAB“, tiesiog palikite autentifikavimą ir nuotolinį URL tuščius, bet prieisite prie sistemos tik iš vietinio „Wi-Fi“.

Judėjimas pirmyn ir pagalbos gavimas

Tinkinimo ir tvarkingų funkcijų, kurias galite pridėti prie „OpenHAB“ valdiklio, kiekis yra tikrai epas. Be didžiulio palaikomų įrenginių su įrišimais sąrašo, galite naudoti „RESTful“ sąsają, HTTP plėtinius ir IFTTT, kad skaitytumėte arba pažodžiui valdytumėte bet kokį „IoT“ įrenginį, o vėliau ir kai kuriuos (išbandykite kai kurias mūsų kūrybinio apšvietimo idėjas). Taip, diegimas yra absoliutus skausmas, tačiau nė viena komercinė sistema negali priartėti prie pritaikytos „OpenHAB“ sistemos galios.

Tai reiškia, kad važiuoti man nebuvo lengva, būtent todėl aš parašiau šį vadovą, kad palengvintų jums procesą. Ir jei jums atrodo, kad „OpenHAB“ sistema yra didžiulė, yra ir kitų variantų, susijusių su „Raspberry“ namų automatizavimu, pvz., Naudojant „Raspberry Pi“, pavyzdžiui, automatizuojant garažo duris.

Sekite „MakeUseOf“, kad gautumėte išplėstinį vadovą, apimantį „Z-Wave“ ir kitus šaunius triukus, kuriuos galite nustatyti.

Jei jums reikia pagalbos dėl konkrečios šio vadovo dalies, paprašykite komentaruose. Jei norite padėti su kitu įrišimu ar kai kuriomis išplėstinėmis temomis, kurių dar neaptarėme, oficialūs „OpenHAB“ forumai yra svetinga vieta.

Dalintis Dalintis „Tweet“ Paštu 5 patarimai, kaip perkrauti „VirtualBox Linux“ mašinas

Pavargote nuo prastų virtualių mašinų našumo? Štai ką turėtumėte padaryti, kad padidintumėte „VirtualBox“ našumą.

Skaityti toliau
Susijusios temos
  • Pasidaryk pats
  • Išmanieji namai
  • Namų automatika
  • Ilga forma
  • „Longform“ vadovas
  • Išmanieji centrai
Apie autorių Jamesas Bruce'as(Paskelbti 707 straipsniai)

Jamesas turi dirbtinio intelekto bakalauro laipsnį ir yra „CompTIA A+“ ir „Network+“ sertifikuotas. Kai jis nėra užsiėmęs aparatūros apžvalgų redaktoriumi, jam patinka LEGO, VR ir stalo žaidimai. Prieš pradėdamas dirbti „MakeUseOf“, jis buvo apšvietimo technikas, anglų kalbos mokytojas ir duomenų centro inžinierius.

Daugiau iš Jameso Bruce'o

Prenumeruokite mūsų naujienlaiškį

Prisijunkite prie mūsų naujienlaiškio, kad gautumėte techninių patarimų, apžvalgų, nemokamų el. Knygų ir išskirtinių pasiūlymų!

Norėdami užsiprenumeruoti, spustelėkite čia