Pagsisimula sa OpenHAB Home Automation sa Raspberry Pi

Pagsisimula sa OpenHAB Home Automation sa Raspberry Pi
Ang gabay na ito ay magagamit upang i-download bilang isang libreng PDF. I-download ang file na ito ngayon . Huwag mag-atubiling kopyahin at ibahagi ito sa iyong mga kaibigan at pamilya.

Ang OpenHAB ay isang mature, open source platform ng automation ng bahay na tumatakbo sa iba't ibang mga hardware at isang protocol agnostic, ibig sabihin maaari itong kumonekta sa halos anumang hardware ng automation sa bahay sa merkado ngayon. Kung nabigo ka sa bilang ng mga tukoy na app ng tagagawa na kailangan mo upang patakbuhin lamang upang makontrol ang iyong mga ilaw, mayroon akong magandang balita para sa iyo: OpenHAB ang solusyon na iyong hinahanap - ito ang pinaka-nababaluktot na matalinong tahanan hub na makikita mo kailanman.





Sa kasamaang palad, ito ay tungkol sa malayo ka makukuha mula sa consumer friendly - ngunit tulad ng dati, doon nagmumula ang MakeUseOf: ipapakita namin sa iyo kung paano tumayo at tumakbo kasama ang panghuli na smart home system na pera na hindi kailangang bumili (dahil ang OpenHAB ay 100% libre - ibigay lamang ang hardware).





Ang unang bahagi ng gabay na ito ay partikular na nakatuon sa kung paano makakuha ng pag-setup ng OpenHAB gamit ang a Raspberry Pi 2 , ngunit higit pa, ang mga tutorial at payo ay maaaring mailapat sa kahit saan na mai-install ang OpenHAB.





Saklaw ng gabay na ito ang tatlong paksang pambungad, at isa na medyo mas advanced.

  • Ang pagkuha ng OpenHAB up at pagpapatakbo sa Pi, at pag-install ng pag-configure ng demo house upang suriin ang mga pangunahing sistema ay gumagana.
  • Paano magdagdag ng mga bindings, at profile para sa mga aparato. Makikipagtulungan ako sa Philips Hue.
  • Pagpapagana ng malayuang pag-access, at pagkonekta sa IFTTT.
  • Pagdaragdag ng isang presensya ng sensor ng DIY gamit ang Bluetooth, at isang pagpapakilala sa interface ng REST.
  • Ang pag-configure ng OpenHAB mobile app.

Ano ang Kakailanganin Mo

Sa pinakamaliit, kakailanganin mo ang isang Raspberry Pi (v2, mas mabuti), at isang Ethernet o wireless adapter (ginustong Ethernet, hindi isasama sa gabay na ito ang mga tagubilin sa paggana ng iyong Wi-Fi adapter). Ang lahat ng iba pa ay opsyonal. Tandaan na tatakbo din ang OpenHAB sa orihinal na Raspberry Pi din, ngunit may isang kilalang isyu sa mas mabagal na pagproseso at mga Z-Wave device. Kung hindi mo kailangan ng Z-Wave, maaari mong ligtas na balewalain ang babalang ito at magpatuloy sa isang modelo ng Raspberry Pi na B o B +, dahil ang lahat ay mukhang maayos. Maaari mong palaging mag-upgrade sa pinakabagong Pi kung at kailan mo idagdag ang Z-Wave.



Ang maliit na bagay na ito ay maaaring maging pinakamahusay na smart home hub na mayroon ka!

Sa oras ng pagsulat, ang pinakabagong matatag na bersyon ng OpenHAB ay ang bersyon 1.71; ang bersyon 1.8 ay inaasahan sa lalong madaling panahon, at ang lahat ng nasa gabay na ito ay dapat na may kaugnayan pa rin, kahit na ang ilang mga binding ay maaaring may maraming mga tampok. Ang bersyon 2 ay kasalukuyang magagamit din bilang isang napaka-aga ng preview ng alpha, ngunit gumagamit ng isang dramatikong iba't ibang mga arkitektura sa serye ng OpenHAB 1: ang gabay na ito ay hindi tugma sa bersyon 2.





Masidhi kong iminumungkahi na sundin mo ang patnubay na ito sa pamamagitan ng dahan-dahan at pamamaraan - huwag subukang tumalon sa malalim na dulo at idagdag ang lahat nang sabay-sabay. Oo, ito ay isang mahabang gabay - Ang OpenHAB ay isang mahirap na sistema na madalas ay nangangailangan ng pag-aayos para sa iyong mga pangangailangan, at ang pinakamahusay na paraan upang matiyak ang tagumpay ay upang gumana nang dahan-dahan at kumpletuhin ang bawat piraso sa bawat oras.

Ang magandang balita ay sa sandaling ito ay gumagana, ito ay isang matibay na karanasan at hindi kapani-paniwalang rewarding.





Pag-install ng OpenHAB

Walang paunang naka-configure na imahe para sa OpenHAB, kaya't ang pag-install ay tapos na sa makalumang paraan sa pamamagitan ng isang linya ng utos. Iminumungkahi kong magtrabaho ka nang walang ulo sa RPi - ang overhead ng pamamahala ng isang GUI na madalang mong gamitin ay hindi sulit.

Magsimula sa pinakabagong (buong) Raspbian SD na imahe (hindi ang bersyon na 'lite', hindi kasama ang mga ito ang Java Virtual Machine). I-plug in ang iyong network cable, pagkatapos ay mag-boot up, at mag-navigate sa SSH. Patakbuhin:

sudo raspi-config

Palawakin ang filesystem; at mula sa advanced menu, baguhin ang memorya na nahati sa 16. Kapag tapos ka na, muling simulan, at bilang mabuting pagsasanay, magpatakbo ng isang buong pag-update

sudo apt-get update
sudo apt-get upgrade

Ang mas madaling paraan upang mai-install ang OpenHAB runtime ay sa pamamagitan ng apt-get , ngunit kailangan muna naming magdagdag ng isang ligtas na susi at ang bagong imbakan:

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

Nagtataka, ang lahat ay na-install na pagmamay-ari ng 'root'. Kailangan nating ayusin iyon sa mga sumusunod na utos.

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

Susunod, mai-install namin ang Samba at ibahagi ang pagsasaayos at mga folder ng gumagamit - mapadali nito ang pag-install ng mga add-on at palitan nang malayuan ang sitemap.

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

Baguhin ang pangalan ng workgroup kung kinakailangan, ngunit kung hindi man paganahin ang suporta ng WINS:

wins support = yes

(kakailanganin mong i-unsment ang linya, at palitan ang hindi upang oo)

pagkatapos ay idagdag ang sumusunod sa seksyon ng pagbabahagi ng mga kahulugan (mag-scroll hanggang sa ibaba ng mahabang file):

[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

Nagkomento din ako sa seksyong Mga Printer. Gumawa ako ng dalawang pagbabahagi, dahil ang mga file ng pagsasaayos ay aktwal na nakaimbak nang magkahiwalay sa mga add-on.

Makatipid at lumabas. Sa wakas kailangan naming magtakda ng isang Samba password para sa gumagamit ng openhab:

sudo smbpasswd -a openhab

Iminumungkahi ko ang 'openhab' bilang password para lamang sa madaling paggamit, ngunit hindi talaga ito mahalaga.

Salamat sa mambabasa na si David L - lumilitaw na ang pamamaraan ng pag-restart ng Samba ay nagbago sa pinakabagong Raspian. Narito ang mga na-update na tagubilin:

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

Matapos i-restart ang Samba (ginagamit ang mas matandang pag-install sudo service samba restart ), pagsubok maaari mong ma-access ang nakabahaging drive. Maaaring hindi ito awtomatikong matuklasan sa isang Mac; ngunit maaari mong gamitin ang Tagahanap -> Punta ka na -> Kumonekta sa Server at ang address

smb://openhab@raspberrypi.local

Pagpapatotoo gamit ang username openhab at ang iyong napiling password, pagkatapos ay buksan ang parehong iyong pagbabahagi upang tumingin sa paligid. Maaari mo ring mabuksan ang http: //raspberrypi.local: 8080 / sa iyong web browser, ngunit masalubong ka sa isang error dahil hindi pa kami nakakagawa ng isang sitemap. Normal lang iyan.

Ngayon ay magiging isang magandang panahon upang malaman ang utos na i-tail ang OpenHAB log upang masubaybayan mo ang mga error.

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

Panatilihing tumatakbo iyon at buksan sa isang hiwalay na window ng SSH sa lahat ng oras habang nagpapatuloy ka sa gabay.

I-install ang Demo House

Bago namin tuklasin ang mga intricacies ng mga file ng pagsasaayos, pagdaragdag ng mga aparato at bindings atbp; suriin natin ang lahat ay gumagana sa pamamagitan ng pagdaragdag ng nilalaman ng demo. Mahahanap mo ang 'Demo Setup' sa ilalim ng seksyon ng mga pag-download ng OpenHAB.org.

Kapag na-unzip mo ito, mayroong dalawang folder: mga addon at mga pagsasaayos .

Gamit ang pagbabahagi ng network, kopyahin mga pagsasaayos sa OpenHAB Config ibahagi at patungan ang mayroon nang folder. Kopya mga addon sa iba OpenHAB Home ibahagi, muli, pag-o-overtake sa mga umiiral na mga folder. Kung hindi ka sinenyasan na patungan ang isang bagay, mali ang ginagawa mo. Kung nakatuon ka sa file ng pag-log ng debug, dapat mong makita ang isang flutter ng aktibidad dahil napansin nito ang mga bagong bindings at whirs sa pagkilos. Buksan ang raspberrypi.local: 8080 / openhab.app? Sitemap = demo upang makita ang demo.

Ito ay isang maliit na pangunahing pagtingin sa sandaling ito, ngunit ang bukas na kalikasan ng OpenHAB ay nangangahulugang maaari naming mai-install ang isang kaibig-ibig na bagong tema sa paglaon o isang kahaliling interface nang buo. Sa ngayon, kailangan lang naming malaman na gumagana ang lahat. Tandaan na ang tinitingnan natin ay tinatawag na a sitemap (walang kinalaman sa isang mapa ng site ng website). Inilalarawan ng isang sitemap ang interface ng gumagamit - hindi ang aktwal na mga aparato sa iyong network o mga sensor - ang interface lamang upang matingnan ang mga ito. Ang bawat bahagi nito ay ganap na napapasadyang. Upang tingnan kung paano nilikha ang isang ito, buksan ang sitemaps / demo.sitemap file sa bahagi ng OpenHAB Config.

Ito ay medyo nakakatakot, ngunit sa karamihan ng bahagi makokopya mo ang pag-paste ng mga fragment ng code mula sa mga halimbawa sa ibang lugar upang lumikha ng iyong sariling pasadyang interface. Narito ang pangkalahatang ideya ng teknikal ng lahat ng posibleng mga elemento ng sitemap, ngunit sa ngayon ay sasapat lamang ito upang magsimulang mag-isip tungkol sa kung anong uri ng interface ang nais mong buuin at kung anong impormasyon ang nais mong ipakita.

Habang nandiyan ka, magbukas ka mga item / demo.item ganun din Muli, nakakatakot ang hitsura, ngunit dito ka lumilikha ng mga item upang makontrol at tukuyin ang mga sensor upang subaybayan.

Kaya Paano Gumagana ang OpenHAB?

Ngayon na nagkaroon ka ng mabilis na pagbasa sa sitemap at folder ng mga item, paghiwalayin natin nang eksakto kung ano ang mga file na ito at iba pang pangunahing bahagi ng OpenHAB na nagsasama upang likhain ang iyong kumpletong smart home. Mahahanap mo ang mga subdirectory para sa bawat isa sa OpenHAB Config shared folder.

Mga item ay isang imbentaryo ng bawat control device, sensor, o elemento ng impormasyon na gusto mo sa iyong system. Hindi rin dapat ito isang pisikal na aparato - maaari mong tukuyin ang isang mapagkukunan sa web tulad ng mga presyo ng panahon o stock. Ang bawat item ay maaaring mapangalanan, italaga ng maraming mga pangkat (o wala), at konektado sa tukoy na pagbubuklod. (Tip ng nagsisimula: Ang pag-capitalize ay mahalaga pagdating sa mga pagbigkis. Ginugol ko ng mahabang panahon ang pagsubok na mag-ehersisyo kung bakit hindi gumana ang aking mga bombilya na 'Hue'; ito ay dahil dapat ay 'kulay' na sila).

Mga Sitemap nababahala lamang sa interface na makikita mo kapag binuksan mo ang OpenHAB mobile o web app. Maaari mong makontrol ang tumpak kung paano mo nais ang mga pindutan na inilatag at ipinakita ang impormasyon. Maaari mong tukuyin ang mga pangkat sa tuktok na antas para sa bawat silid ng iyong bahay; ang pag-click sa bawat isa ay magpapakita sa iyo ng isang listahan ng bawat aparato sa silid na iyon. O baka mas gusto mong magpakita ng mga pangkat para sa bawat uri ng aparato: isang pindutan para sa mga ilaw, isa pa para sa mga outlet ng kuryente. Maaaring may ilang mga aparato na madalas mong ginagamit na nais mo lamang ng isang switch para sa kanila mismo sa home screen.

Panuntunan ay kung saan nagmula ang aspeto ng pag-aautomat ng bahay, kung saan maaari mong tukuyin ang mga iskedyul o kundisyon para mangyari ang isang pagkilos. Mga simpleng kaganapan tulad ng pag-on ng mga ilaw sa kwarto sa 10pm sa isang mainit na pulang kulay; o mas kumplikadong lohika tulad ng pag-on ng isang space heater kung ang temperatura ay mas mababa sa 0 at mayroong isang tao sa silid na iyon. Mahahanap mo rin ang isang script folder, na nag-aalok ng katulad na pag-andar sa mga patakaran ngunit sa isang mas kumplikadong antas ng mai-program na lohika.

Pagtitiyaga ay isang advanced na paksa na hindi namin sasaklawin sa gabay na ito, ngunit ang pagtitiyaga ay tumutukoy sa data na nais mong panatilihin ang isang talaan. Bilang default, ipapakita lamang ng OpenHAB ang kasalukuyang estado ng isang bagay; kung nais mong subaybayan ang halagang iyon sa paglipas ng panahon, kailangan mong mag-set ng isang kahulugan ng pagtitiyaga para sa mapagkukunan ng data na iyon. Sa ito ay tutukuyin mo ang mga bagay tulad ng kung gaano kadalas dapat masukat ang isang data point, o kung kailan itatapon ang mga dating puntos ng data - kakailanganin mo ring sabihin dito kung anong uri ng pagpupursige engine ang gagamitin, tulad ng MySQL o simpleng pag-log sa isang file .

Magbago naglalaman ng mga pagmamapa para sa mga halaga ng data sa mga label. Halimbawa, ang humidex. scale Tinutukoy ng file ang isang saklaw ng mga halaga ng index ng halumigmig at kung paano ito dapat ipakita sa Ingles: 29-38 ay 'ilang kakulangan sa ginhawa'.

Ang sitemap at mga item Mahalaga ang mga file upang tumakbo ang OpenHAB; ang natitira ay opsyonal. Maaari kang magkaroon ng maraming mga sitemap at item, upang mapapanatili mo ang nilalaman ng demo at bumalik dito anumang oras, o subukan ang isang bagong layout para sa iyong interface ng kontrol sa bahay. Huwag mag-alala kung ang lahat ng ito ay tila medyo napakatindi sa ngayon, ibabahagi namin ito sa mga pamamahala na piraso at nangangako ako sa pagtatapos ng gabay na ito magkakaroon ka ng kumpiyansa na lumikha ng iyong sariling pag-setup ng OpenHAB.

Susunod, ilalakad ka namin sa pamamagitan ng pagdaragdag ng ilang karaniwang smart home kit, simula sa simula sa isang bagong sitemap. Ang bawat isa ay magpapakilala ng ilang mga pangunahing konsepto tulad ng kung paano mag-install ng mga bindings at kahulugan ng item, kaya masidhi kong hinihikayat kang basahin ang mga tagubiling ito kahit na hindi mo pag-aari ang mga partikular na aparato .

Magsimula sa pamamagitan ng paglikha ng isang bagong (blangko) bahay.item file, at bago bahay.sitemap mag-file sa mga nauugnay na direktoryo. Buksan bahay.sitemap at i-paste sa sumusunod na code. Gumagawa lamang ito bilang isang pangunahing balangkas kung saan kami ay magdaragdag ng mga bit sa paglaon.

sitemap home label='My Home'
{

}

Dapat kang makakita ng isang abiso upang iulat na ang OpenHAB ay nakilala ang isang bagong sitemap at mga file ng mga item.

aligncenter laki-malaki wp-imahe-496593

Paganahin ang Debug Mode

Habang sinusubukan mo pa ring gumana ng wasto ang OpenHAB, maaaring maging kapaki-pakinabang upang paganahin ang isang mas verbo log ng pag-debug na nakalista sa lahat, at hindi lamang ang mga mahahalagang bagay. Upang paganahin ang mode na ito, buksan ang nakabahaging folder na OpenHAB Config, at i-edit ang logback.xml . Sa linya 40, baguhin ang sumusunod na linya upang mabasa ang DEBUG sa halip na INFO. Kakailanganin mong i-restart pagkatapos baguhin ito.

Ito ay isang pandaigdigang pagbabago, kaya makakakuha ka ng maraming karagdagang impormasyon sa sandaling nabuntot mo ang file ng log.

Pagdaragdag ng Philips Hue

Magsisimula ako sa Philips Hue. Tulad ng karamihan sa mga bagay na nais mong makipag-ugnay sa OpenHAB, hinihiling sa iyo ng mga bombilya ng Hue na mag-install ng a nagbubuklod - Isipin ang mga bindings tulad ng isang aparato driver. Sa oras ng pagsulat, mayroong halos 160 mga bindings na magagamit para sa OpenHAB 1, na ang dahilan kung bakit ang OpenHAB ay isang napakalakas na system - maaari itong i-interface sa anumang bagay, pagsasama-sama ng lahat ng magkakaibang mga system ng kontrol sa isang solong pinag-isang interface. Narito ang isang demo at mabilis na pangkalahatang ideya ng mga hakbang na kasangkot.

Dapat munang i-download ang mga bindings, at ang pinakamadaling paraan upang magawa ito sa Pi ay gumagamit apt-get , pagkatapos ay pilitin ang pagmamay-ari sa gumagamit ng openhab.

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

Susunod na kailangan mong sabihin sa OpenHAB upang mai-load ang pagbigkis na iyon, at i-configure ang anumang mga kinakailangang variable. Mag-browse sa folder ng mga pagsasaayos at gumawa ng isang kopya ng openhab-default.cfg , pinangalanan ito openhab.cfg . Buksan mo yan, hanapin mo HUE at palitan ang buong seksyon ng sumusunod na code. Ang tanging bagay na kailangan mong baguhin ay ang halaga ng IP ng iyong tulay - kung hindi mo pa alam ito, subukan ang tool sa pagtuklas sa online. Hindi talaga mahalaga ang lihim na halaga, ito ay isang uri lamang ng username na gagamitin ng OpenHAB upang makilala ang sarili nito sa tulay.

Mabilis na tip : upang paganahin ang isang linya, alisin lamang ang # mula sa simula. Bilang default, ang linya na tumutukoy sa IP address ng tulay ay hindi pinagana (o sa teknikal, 'nagkomento'). Gayundin, kung sinusubukan mo ang isang kahaliling pagsasaayos, maaaring maging kapaki-pakinabang na kopyahin lamang ang umiiral na linya at maglagay ng # sa simula upang markahan ito bilang isang komento, upang madali kang makabalik kung nagkamali ang mga bagay.

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

Makatipid at lumabas. Tulad ng anumang application ng third party Hue, kakailanganin mong aprubahan ang OpenHAB sa Hue Bridge sa pamamagitan ng pagpindot sa pindutan sa harap - kakailanganin mo lamang gawin ito nang isang beses. Makakakita ka ng isang mensahe tungkol sa naghihintay na ipares kung binubuntis mo ang file ng log, ngunit kung nakalimutan mo o napalampas mo ang bilang pababa, i-reset lamang ang Pi - makakakuha ka ng 100 segundo na timer mula nang simulan ang Hue binding. Tiyaking matagumpay mong naipares bago magpatuloy.

Susunod, buksan ang bahay.item file, kung saan kami ay magdagdag ng ilang mga Hue bombilya. Narito ang isang halimbawa ng kahulugan ng item:

Color Bedroom_Hue 'Bedroom Hue' (Bedroom) {hue='1'}
  • Ang Kulay tinutukoy ng salita kung anong uri ng kontrol ang mayroon kami sa item na ito. Ang mga bombilya ng RGB Hue ay 'Kulay', dahil mayroon kaming buong kontrol sa kulay sa kanila. Ang iba pang mga ilaw ay maaaring isang Lumipat lamang.
  • Susunod ay ang codename ng item: pinili ko Silid-tulugan_Hue , ngunit sa literal ang anumang bagay ay mabuti - isang mapaglarawang bagay lamang na nararamdamang natural sa iyo, dahil kakailanganin mong alalahanin ito sa paglaon kapag ginagawa ang sitemap. Ang codename ay dapat na walang puwang.
  • Sa pagitan ng mga marka ng panipi ay ang tatak. Ang amin ay simple sa kasong ito, ngunit para sa ilang mga item tulad ng temperatura o isang bagay na nag-uulat ng isang halaga, magdagdag ka ng ilang mga espesyal na code na nagsasabi dito kung paano ipakita ang halagang iyon o ginagamit ang kung ano magbago Ang label ay para sa interface, at maaari itong magkaroon ng mga puwang.
  • Sa pagitan ng mga anggulo ng bracket ay ang pangalan ng icon. Mahahanap mo ang lahat ng magagamit na mga icon sa pagbabahagi ng OpenHAB, sa ilalim ng mga webapp / imahe direktoryo Mayroong talagang isang buong saklaw ng mga icon ng kulay na kumakatawan sa iba't ibang mga brightness o on / off. Tukuyin lamang ang pangalan ng icon ng base - malalaman ng OpenHAB na awtomatikong maghanap para sa iba't ibang mga on / off na icon kung ito ay isang item na lumipat. Opsyonal ito.
  • Sa mga bilog na bracket, sinabi namin dito kung aling mga pangkat ang dapat na bahagi - sa kasong ito, ang Kwarto grupo
  • Sa wakas at krusyal, ikinonekta namin ang item sa naaangkop na pagbubuklod sa anumang mga kinakailangang variable. Sa kasong ito, ang kulay nagbubuklod, at ang bilang ng bombilya ay 1. Maaari mong makita ang numero sa pamamagitan ng pagbubukas ng opisyal na aplikasyon ng Hue at pagtingin sa tab na ilaw. Ang bawat bombilya ay may natatanging numero.

Nagdagdag ako ng kabuuang apat na mga bombilya, pati na rin ang isang simpleng deklarasyon ng mga pangkat na palawakin namin sa paglaon. Narito ang aking kumpleto bahay.item Simula ngayon:

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'}

Ang / * Mga ilaw * / Ang teksto ay isang komento lamang, wala itong pagpapaandar maliban sa matulungan kaming i-scan ang file sa ibang pagkakataon kapag lumaki ito. Ngayon ay naidagdag na namin ang mga aparato, ngunit binubuksan ang http: //raspberrypi.local: 8080 /? Sitemap = mga resulta sa bahay sa isang blangko na interface - syempre, dahil hindi pa talaga namin nilikha ang mga elemento ng interface sa sitemap. Magsimula tayo talagang simple para sa ngayon. Buksan bahay.sitemap .

Ang code na ginamit upang ilarawan ang interface ay naiiba sa mga item, ngunit sa ngayon ay lilikha kami ng isang bagong 'frame' at magdagdag ng isang pares ng mga kontrol ng pangkat kasama ang ilang mga icon.

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'
}
}

Ang mga pangkat ay isang kapaki-pakinabang na tool para sa mabilis na pagsubok, ngunit sa totoo lang gugustuhin mo ang higit na kontrol sa kung paano ipinapakita ang mga item. Sa ngayon, ito ay sasapat na. I-save at i-reload ang iyong sitemap sa bahay sa browser. Dapat mong makita ito (o, anumang mga pangkat na iyong naidagdag).

Mag-click sa Lahat ng ilaw upang makita ang bawat ilaw ng Hue, dahil tinukoy namin silang lahat bilang kabilang sa napakalawak na pangkat ng mga ilaw.

Pansinin na ang item ng Office Hue ay ipinakita na may ibang icon - iyon ay dahil nakabukas na ang ilaw ng aking tanggapan, at alam ito ng OpenHAB nang makausap nito ang Hue bridge at sapat na matalino upang ayusin ang icon na 'on' na bersyon ng file. Sa kasamaang palad, hindi nito sinasalamin ang kulay, ngunit kung mayroon kang naka-install na mobile app, makikita nito ang kasalukuyang kulay.

Kung nakakakita ka ng maraming mga item kaysa sa naisip mong tinukoy o tumatanggap ng mga error tungkol sa maraming mga kahulugan, alamin na kahit na maaari mo lamang mai-load ang isang sitemap nang paisa-isa sa pahina lahat ng mga sitemap ay kukuha ng mga item mula sa lahat ng mga .item file , kaya kung naiwan mo ang file ng mga item ng demo doon, maaari kang magkaroon ng ilang karagdagang mga item na lalabas din sa iyong mga pangkat. Iminumungkahi ko sa puntong ito ang pag-back up ng nilalaman ng mga item sa demo at paglipat nito sa labas ng folder upang maiwasan ang mga pagkakamali sa pagdoble.

Remote Access, at IFTTT kasama ang My.OpenHAB

Sa ngayon, kailangan mong nasa parehong lokal na network upang ma-access ang iyong OpenHAB system, ngunit paano kung nais mong kontrolin ang iyong mga aparato at suriin ang mga sensor kapag wala sa saklaw ng iyong Wi-Fi? Para doon kakailanganin naming i-set up ang malayuang pag-access - at gagawin namin ito sa madaling paraan, kasama ang My.OpenHAB web service [Broken URL Remaced], na pumasa sa pangangailangang magulo kasama ng pagpapasa ng port at mga pagsasaayos ng router. Bilang isang bonus, ang serbisyo ng My.OpenHAB ay mayroon ding isang IFTTT channel, na nagbibigay sa iyo ng walang katapusang mga posibilidad para sa remote control at automation.

Una: i-install ang umiiral. Mabilis na tip: kung hindi mo alam ang eksaktong pangalan ng isang partikular na pakete sa pag-install, subukang hanapin ito gamit ang apt-cache.

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

Bago ka magparehistro sa My.OpenHAB site, kakailanganin mong lumikha ng isang lihim na key, at hanapin ang iyong UUID, na natatanging kinikilala ang iyong pag-install. Suriin sa ilalim ng OpenHAB Home share -> webapps -> static at dapat kang makahanap ng isang UUID file na naglalaman ng iyong natatanging identifier. Sa puntong ito na natuklasan ko ang aking Pi na gumagamit ng isang mas matandang bersyon ng Java na hindi tama ang paglikha ng lihim na susi. Uri

java -version

upang suriin Kung hindi nito sabihin na 1.7 o mas mataas, mayroon kang maling bersyon. Kakatwa, ang pinakabagong bersyon ng Raspbian ay kasama ng Oracle Java 8 na naka-install, ngunit hindi itinakda bilang default.

sudo update-alternatives --config java

bakit patuloy na nagdidiskonekta ang aking ps4 controller

Piliin ang pagpipilian na nagpapahiwatig jdk-8-orakulo , pagkatapos ay muling simulan ang OpenHAB. Bonus: Ang Oracle Java 8 ay mas mabilis kaysa sa default na OpenJDK!

Ngayon ay dapat mo ring makahanap ng isang lihim na file sa webapps / static folder. Buksan ang parehong lihim at uuid , at maging handa upang kopyahin ang i-paste.

Ngayon lumikha ng isang My.OpenHAB account, gamit ang mga detalyeng iyon, pagkatapos ay bumalik - kakailanganin mo ring kumpirmahin ang iyong email bago gumana ang anumang bagay. Mayroong ilang higit pang mga hakbang sa isang ito. Una, kailangan naming itakda ang default na pagpupursige engine sa myopenhab (ang pagtitiyaga ay isang bagay para sa isang susunod na gabay, ngunit anuman, kailangan naming mag-set up ng isang pangunahing bagay upang 'ma-export' ang aming data sa serbisyong online at gawin itong makita sa IFTTT) . Upang magawa ito, buksan ang openhab.cfg, at hanapin ang variable na nagsasabi pagtitiyaga: default = at baguhin ito sa pagtitiyaga: default = myopenhab . Magtipid

Panghuli, lumikha ng isang bagong file sa mga pagsasaayos / pagtitiyaga tinawag ang folder myopenhab.persist , at i-paste sa sumusunod na panuntunan.

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

Hindi mo kailangang maunawaan ito sa ngayon, ngunit alamin na sinasabi nito na 'i-save ang bawat item ng item kapag nagbago ito'.

Upang kumonekta sa IFTTT, magtungo sa OpenHAB channel - kakailanganin mong patunayan at bigyan ito ng access sa iyong MyOpenHAB account. Tandaan din na hanggang sa ang iyong mga item ay nagbago kahit isang beses, hindi makikita ang mga ito sa listahan ng mga item sa IFTTT, kaya kung hindi ito nakikita, i-on at i-off ang isang bagay, pagkatapos ay i-reload. Binabati kita, mayroon ka na ngayong kumpletong pag-access sa IFTTT sa lahat ng bagay sa iyong OpenHAB system!

Bluetooth Presence Sensor gamit ang REST

Ilang sandali lang ang nakalipas ay ipinakita ko sa iyo kung paano gumawa ng isang awtomatikong lock ng pintuan ng opisina gamit ang pag-scan ng Bluetooth upang makita ang pagkakaroon ng gumagamit - Nais kong dalhin ang isang bagay tulad nito sa OpenHAB.

Sa anumang platform maliban sa Raspberry Pi, ito ay magiging simpleng salamat sa isang handa nang pagbuklod ng Bluetooth; sa kasamaang palad, hindi ito gagana sa Pi dahil sa isang mahalagang file ng Java na kailangang muling magkumpuni para sa arkitektura ng ARM, idinagdag sa pagbubuklod, at pagkatapos ay muling itaguyod ang pagbubuklod. Sapat na sabihin, sinubukan ko iyon, at ito ay nakalimutang kumplikado at hindi gumana. Gayunpaman mayroong isang mas madaling solusyon na nagsisilbing isang mahusay na pagpapakilala sa lubos na pagiging malawak ng OpenHAB: iakma lamang namin ang aming nakaraang script ng Python upang maiulat ito nang direkta sa OpenHAB RESTful interface.

Bukod: ang isang RESTful interface ay nangangahulugang maaari kang makipag-ugnay sa isang system gamit ang built in na web server, sa pamamagitan lamang ng pagtawag sa mga URL at pagpasa o pagkuha ng data. Maaari mong bisitahin ang URL na ito upang makita ang isang simpleng halimbawa nito sa iyong sariling server: http: //raspberrypi.local: 8080 / rest / item - na naglalabas ng isang naka-code na listahan ng lahat ng iyong tinukoy na item. Ito sa hindi kapani-paniwala malakas, dahil inilalantad nito ang buong potensyal ng OpenHAB at pinapayagan kang magsulat ng mga pasadyang interface; o sa ginamit na reverse, upang iulat ang katayuan ng mga sensor nang hindi nagkakaroon ng isang tukoy na umiiral. Gagamitin namin ang kakayahang ito upang iulat ang pagkakaroon ng isang tukoy na aparatong Bluetooth nang hindi gumagamit ng umiiral na Bluetooth.

Magsimula sa pamamagitan ng pagdaragdag ng bago Lumipat item sa iyong bahay.item file Tumawag ako sa minahan na 'JamesInOffice', at ginawang isang switch sa halip na isang simpleng contact na naka-on / off upang makontrol ko ang aking presensya kung sakaling mamatay ang aking telepono.

Switch JamesInOffice 'James in Office' (Office)

Pansinin na hindi ko natukoy ang isang icon, o nauugnay ang isang tukoy na pagbubuklod. Ito ay isang generic switch lamang.

Susunod, magpasok ng isang katugmang USB Bluetooth dongle, at mag-install ng ilang pangunahing mga tool para sa pakikipag-ugnay dito.

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

Dapat ipakita ng huling utos ang iyong Bluetooth adapter. Kung walang nakalista, subukan ang isa pang adapter, ang iyo ay hindi tugma sa Linux. Ang susunod na hakbang ay upang mahanap ang address ng hardware ng Bluetooth ng iyong aparato.

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

Tiyaking bukas ang iyong telepono sa pahina ng mga setting ng Bluetooth (na inilalagay ito sa pagpapares / pampublikong mode), at malinaw naman na ang Bluetooth ay naaktibo. Dapat kang makahanap ng isang hexadecimal hardware address na nakalista.

Mula sa iyong direktoryo sa bahay ng gumagamit ng Pi, lumikha ng isang bagong script ng Python at i-paste sa code na ito .

Mayroong ilang mga bagay na kakailanganin mong i-edit, simula sa iyong partikular na address ng aparato:

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

Pati na rin ang linyang ito, na nasa dalawang lugar (oo, maaaring mas mahusay itong maiayos). Baguhin ang JamesInOffice sa codename ng switch na tinukoy mo.

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

Ang huling hakbang ay upang sabihin sa script na ito na ilunsad sa oras ng pag-boot.

sudo nano /etc/rc.local

Mag-scroll pababa sa ibaba at bago ang exit 0, idagdag ang mga sumusunod na linya:

python /home/pi/detect.py &

Ang ibig sabihin ng & sign ay 'gawin ito sa background'. Sige at patakbuhin ang script kung hindi mo pa nagagawa, at buksan ang iyong OpenHAB interface. Kung naidagdag mo ito sa isang pangkat, mag-click sa pangkat na iyon. Inaabot ng humigit-kumulang 10 segundo upang mai-update, ngunit makikita mo ang default na icon ng lightbulb na bukas o i-off depende sa kung nakita ang iyong telepono o hindi. Suriin ang file ng log kung walang nangyari, maaaring mali ang ginamit mong pangalan ng item.

OpenHAB Mobile App

Bagaman maaari mong syempre gamitin ang web interface mula sa isang mobile device, ang OpenHAB ay may mga katutubong app para sa pareho ios at Android - at tumingin sila a marami mas maganda kaysa sa default na interface ng browser. Sa screen ng mga setting, ipasok ang lokal na URL bilang panloob na IP na iyong ginagamit hanggang ngayon, kasama ang numero ng port. Para sa remote URL, ipasok https://my.openhab.org , at ikaw username (email) at password na ipinasok mo noong nag-sign up ka. Kung hindi ka pa nag-sign up para sa MyOpenHAB, iwanang blangko lamang ang pagpapatotoo at remote na URL, ngunit maa-access mo lang ang iyong system mula sa iyong lokal na Wi-Fi.

Sumusulong at Kumuha ng Tulong

Ang dami ng pagpapasadya at maayos na mga tampok na maaari mong idagdag sa iyong OpenHAB controller ay talagang uri ng epiko. Pati na rin ang malawak na listahan ng mga sinusuportahang aparato na may mga binding, maaari mong gamitin ang RESTful interface, mga extension ng HTTP, at IFTTT upang mabasa mula o makontrol ang anumang uri ng IoT device, at pagkatapos ay ilang (subukan ang ilan sa aming mga ideya sa malikhaing ilaw). Oo, ito ay isang ganap na sakit upang mai-install, ngunit hindi isang solong komersyal na sistema ang maaaring makalapit sa lakas ng isang pasadyang sistemang OpenHAB.

Sinabi nito, ang pagsakay ay hindi madali para sa akin, na kung saan ay tiyak kung bakit isinulat ko ang gabay na ito, upang mapagaan ang proseso para sa iyo. At kung nakita mong napakalaki ng system ng OpenHAB, may iba pang mga pagpipilian pagdating sa pag-aautomat ng bahay ng Raspberry --- tulad ng paggamit ng Raspberry Pi upang i-automate ang iyong pintuan ng garahe halimbawa.

Manatiling nakatutok sa MakeUseOf para sa isang advanced na gabay na sumasakop sa Z-Wave at iba pang mga cool na trick na maaari mong i-set up.

Kung kailangan mo ng tulong sa isang tukoy na bahagi ng gabay na ito, mangyaring magtanong sa mga komento. Kung nais mo ng tulong sa isa pang pagbubuklod o ilang mga advanced na paksa na hindi pa namin nasasaklaw, ang opisyal na mga forum ng OpenHAB ay isang nakakaengganyang lugar.

Magbahagi Magbahagi Mag-tweet Email 5 Mga Tip upang Supercharge ang Iyong Mga VirtualBox Linux Machine

Pagod na sa hindi magandang pagganap na inaalok ng mga virtual machine? Narito kung ano ang dapat mong gawin upang mapalakas ang pagganap ng VirtualBox.

Basahin Susunod
Mga Kaugnay na Paksa
  • DIY
  • Smart Home
  • Pag-aautomat sa Bahay
  • Longform
  • Patnubay sa Longform
  • Mga Smart Hubs
Tungkol sa May-akda James Bruce(707 Mga Artikulo Nai-publish)

Si James ay mayroong BSc sa Artipisyal na Katalinuhan at sertipikado sa CompTIA A + at Network +. Kapag hindi siya abala bilang Hardware Review Editor, nasisiyahan siya sa LEGO, VR, at mga board game. Bago sumali sa MakeUseOf, siya ay isang technician sa pag-iilaw, guro ng Ingles, at inhinyero ng data center.

Higit pa Mula kay James Bruce

Mag-subscribe sa aming newsletter

Sumali sa aming newsletter para sa mga tip sa tech, pagsusuri, libreng ebook, at eksklusibong deal!

Mag-click dito upang mag-subscribe