Първи стъпки с OpenHAB Home Automation на Raspberry Pi

Първи стъпки с OpenHAB Home Automation на Raspberry Pi
Това ръководство е достъпно за изтегляне като безплатен PDF файл. Изтеглете този файл сега . Чувствайте се свободни да копирате и споделите това с приятелите и семейството си.

OpenHAB е зряла платформа за домашна автоматизация с отворен код, която работи на разнообразен хардуер и е протоколно агностична, което означава, че може да се свърже с почти всеки хардуер за домашна автоматизация на пазара днес. Ако сте били разочаровани от броя на специфичните за производителя приложения, които трябва да стартирате, само за да контролирате светлините си, тогава имам страхотна новина за вас: OpenHAB е решението, което търсите - това е най -гъвкавият интелигентен дом център, който някога ще намерите.





За съжаление, това е толкова далеч, колкото можете да получите от приятелските за потребителите - но както винаги, тук идва MakeUseOf: ще ви покажем как да станете и да работите с най -добрата система за интелигентен дом, която не е нужно да купувате (защото OpenHAB е 100% безплатно - просто предоставете хардуера).





Първата част на това ръководство се фокусира специално върху това как да получите настройка на OpenHAB с Малина Пи 2 , но по -нататък уроците и съветите могат да се прилагат навсякъде, където е инсталиран OpenHAB.





Това ръководство обхваща три уводни теми и една малко по -напреднала.

  • Стартирането и стартирането на OpenHAB на Pi и инсталирането на конфигурацията на демонстрационната къща, за да се провери дали основните системи работят.
  • Как да добавите обвързвания и профили за устройства. Ще работя с Philips Hue.
  • Активиране на отдалечен достъп и свързване с IFTTT.
  • Добавяне на DIY сензор за присъствие чрез Bluetooth и въведение в интерфейса REST.
  • Конфигуриране на мобилното приложение OpenHAB.

Какво ще ви трябва

Най-малкото ще ви трябват Raspberry Pi (за предпочитане v2) и Ethernet или безжичен адаптер (предпочитан е Ethernet, това ръководство няма да включва инструкции за това как вашият Wi-Fi адаптер да работи). Всичко останало е по избор. Имайте предвид, че OpenHAB ще работи и на оригиналната Raspberry Pi, но има известен проблем с по-бавната обработка и Z-Wave устройства. Ако нямате нужда от Z-Wave, можете спокойно да пренебрегнете това предупреждение и да продължите с Raspberry Pi модел B или B+, защото всичко останало изглежда добре. Винаги можете да надстроите до най-новия Pi, ако и когато добавите Z-Wave.



Това малко нещо може да бъде най -добрият умен дом център, който някога сте имали!

По време на писането последната стабилна версия на OpenHAB е версия 1.71; версия 1.8 се очаква скоро и всичко в това ръководство все още трябва да бъде уместно, въпреки че някои връзки може да имат повече функции. Версия 2 понастоящем е достъпна и като много ранна алфа визуализация, но приема драстично различна архитектура от серията OpenHAB 1: това ръководство не е съвместимо с версия 2.





Силно ви препоръчвам да следвате това ръководство бавно и методично - не се опитвайте да скочите в дълбокия край и да добавите всичко наведнъж. Да, това е дълъг наръчник - OpenHAB е трудна система, която често изисква промяна за вашите нужди, а най -добрият начин да се гарантира успех е да работите бавно и да завършате едно по едно.

Добрата новина е, че след като заработи, това е солидно преживяване и невероятно възнаграждаващо.





Инсталиране на OpenHAB

Няма предварително конфигурирано изображение за OpenHAB, така че инсталацията се извършва по старомоден начин чрез командния ред. Предлагам ви да работите без глава върху RPi - режийните разходи за управление на графичен интерфейс, който рядко ще използвате, не си заслужават.

Започнете с най -новото (пълно) Raspbian SD изображение (не „опростената“ версия, те не включват виртуалната машина на Java). Включете мрежовия си кабел, след това стартирайте и навигирайте през SSH. Бягай:

sudo raspi-config

Разширете файловата система; и от разширеното меню променете разделянето на паметта на 16. Когато приключите, рестартирайте и като добра практика стартирайте пълна актуализация

sudo apt-get update
sudo apt-get upgrade

По -лесният начин да инсталирате средата на изпълнение на OpenHAB е чрез apt-get , но първо трябва да добавим защитен ключ и новото хранилище:

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

Любопитното е, че всичко е инсталирано като собственост на „root“. Трябва да поправим това със следните команди.

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

След това ще инсталираме Samba и ще споделим конфигурационните и потребителските папки-това ще улесни инсталирането на добавки и дистанционната промяна на картата на сайта.

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

Променете името на работната група, ако е необходимо, но в противен случай активирайте поддръжката на WINS:

wins support = yes

(ще трябва да декомментирате реда и да промените не на да)

след това добавете следното към секцията за дефиниции на споделяне (превъртете докрай до дъното на дългия файл):

[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

Коментирах и раздела Принтери. Направих две споделяния, тъй като конфигурационните файлове всъщност се съхраняват отделно в добавките.

Запази и излез. Най -накрая трябва да зададем парола за Samba за потребителя на openhab:

sudo smbpasswd -a openhab

Бих предложил „openhab“ като парола само за по -лесно използване, но това няма значение.

Благодарение на читателя David L - изглежда методът на рестартиране на Samba се е променил в последния Raspian. Ето актуализираните инструкции:

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

След рестартиране на Samba (използват се по -стари инсталации sudo услуга samba рестартиране ), тествайте дали имате достъп до споделеното устройство. Може да не се открива автоматично на Mac; но можете да използвате Finder -> Отивам -> Свържете се със сървъра и адреса

smb://openhab@raspberrypi.local

Удостоверете се с потребителско име openhab и избраната от вас парола, след което отворете и двете си споделяния, за да се огледате наоколо. Трябва дори да можете да отворите http: //raspberrypi.local: 8080/във вашия уеб браузър, но ще получите грешка, тъй като все още не сме създали карта на сайта. Това е нормално.

Сега би било подходящ момент да научите командата за създаване на регистър на OpenHAB, за да можете да следите грешките.

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

Дръжте го работещ и отваряйте в отделен SSH прозорец през цялото време, докато продължите с ръководството.

Инсталирайте Demo House

Преди да се задълбочим в тънкостите на конфигурационните файлове, добавянето на устройства и свързвания и т.н .; нека проверим дали всичко работи, като добавим демо съдържание. Ще намерите „Демо настройка“ в секцията за изтегляне на OpenHAB.org.

След като го разархивирате, има две папки: добавки и конфигурации .

Използвайте мрежовите споделяния, копирайте конфигурации към OpenHAB Config споделете и презапишете съществуващата папка. копие добавки към другия Начална страница на OpenHAB споделете отново, презаписвайки съществуващите папки. Ако не бъдете подканени да презапишете нещо, правите го погрешно. Ако сте хвърлили око на лог файла за отстраняване на грешки, би трябвало да видите трептене на активност, тъй като той забелязва новите свързвания и върти в действие. Отворете raspberrypi.local: 8080/openhab.app? Sitemap = demo, за да видите демонстрацията.

В момента това е малко елементарно, но откритият характер на OpenHAB означава, че можем да инсталираме прекрасна нова тема по -късно или изцяло алтернативен интерфейс. Засега просто трябваше да знаем, че всичко работи. Имайте предвид, че това, което разглеждаме, се нарича а карта на сайта (няма нищо общо с картата на уебсайт). Карта на сайта описва потребителския интерфейс - не действителните устройства във вашата мрежа или сензорите - просто интерфейса, за да ги видите. Всяка част от него е напълно персонализирана. За да разгледате как е създаден този, отворете sitemap/demo.sitemap файл в споделянето на OpenHAB Config.

Това е доста обезсърчително, но в по -голямата си част ще копирате поставяне на фрагменти от код от примери на друго място, за да създадете свой собствен персонализиран интерфейс. Ето и технически преглед от всички възможни елементи на карта на сайта, но засега ще бъде достатъчно само да започнете да мислите какъв интерфейс искате да изградите и каква информация искате да покажете.

Докато сте там, отворете items/demo.items също. Отново изглежда страшно, но тук създавате елементи за контрол и определяте сензори за проследяване.

И така, как работи OpenHAB?

Сега, след като разгледахте бързо папката със картата на сайта и елементите, нека разгледаме какво точно представляват тези файлове и другите основни компоненти на OpenHAB, които комбинират, за да създадат вашия пълен интелигентен дом. Ще намерите поддиректории за всеки от тях в споделената папка на OpenHAB Config.

Елементи е опис на всяко контролно устройство, сензор или информационен елемент, който искате във вашата система. Това също не трябва да бъде физическо устройство - може да определите уеб източник, като например времето или цените на акциите. Всеки елемент може да бъде именуван, да му се присвоят няколко групи (или нито една) и да се свърже със специфично свързване. (Съвет за начинаещи: Писането на главни букви е важно, когато става въпрос за подвързвания. Прекарах дълго време в опити да разбера защо крушките ми „Hue“ не работят; това беше защото вместо това трябваше да са „hue“).

Sitemap се интересува само от интерфейса, който ще видите, когато отворите мобилното или уеб приложението OpenHAB. Можете да контролирате точно как искате разположените бутони и представената информация. Можете да определите групи от най -високо ниво за всяка стая в къщата си; щракването върху всяко ще ви покаже списък с всяко устройство в тази стая. Или може да предпочетете да покажете групи за всеки тип устройство: бутон за светлини, друг за електрически контакти. Може да има някои устройства, които използвате толкова често, че просто искате превключвател за тях точно на началния екран.

Правила тук се появява аспектът на домашната автоматизация, където можете да определите графици или условия за извършване на действие. Прости събития като включване на осветлението в спалнята в 22:00 ч. До топъл червен цвят; или по -сложна логика като включване на отоплителен уред, ако температурата е по -ниска от 0 и някой присъства в тази стая. Ще намерите и a скриптове папка, която предлага подобна функционалност на правилата, но на по -сложно ниво на програмируема логика.

Постоянство е напреднала тема, която няма да разглеждаме в това ръководство, но постоянството определя данните, които искате да запазите. По подразбиране OpenHAB ще показва само текущото състояние на нещо; ако искате да проследявате тази стойност във времето, трябва да настроите дефиниция за постоянство за този източник на данни. В това ще посочите неща като колко често трябва да се измерва точка от данни или кога да изхвърляте стари точки от данни - също ще трябва да й кажете какъв механизъм за устойчивост да използвате, като MySQL или просто влизане във файл .

Трансформирайте съдържа картографиране за стойности на данни към етикети. Например, humidex.мащаб file определя диапазон от стойности на индекса на влажност и как те трябва да бъдат показани на английски: 29-38 е „известен дискомфорт“.

The карта на сайта и елементи файловете са от съществено значение за стартирането на OpenHAB; останалите са по избор. Можете да имате множество карти на сайта и елементи, така че да можете да запазите демонстрационното съдържание и да се обърнете към него по всяко време или да изпробвате ново оформление за вашия домашен интерфейс за управление. Не се притеснявайте, ако всичко това изглежда малко преобладаващо в момента, ще го разделим на управляеми парчета и обещавам до края на това ръководство да имате увереност да създадете своя собствена настройка на OpenHAB.

След това ще ви запознаем с добавянето на общ комплект за интелигентен дом, като започнем от нулата в нова карта на сайта. Всеки от тях ще въведе някои основни концепции, като например как да инсталирате свързвания и дефиниции на елементи, така че силно ви препоръчвам да прочетете тези инструкции дори и да не притежавате тези конкретни устройства .

Започнете, като създадете нов (празно) начало.елементи файл и нов начало.карта на сайта файл в съответните директории. Отвори начало.карта на сайта и поставете следния код. Това просто действа като основен скелет, към който ще добавим битове по -късно.

sitemap home label='My Home'
{

}

Трябва да видите известие, в което да съобщите, че OpenHAB е идентифицирал нова карта на сайта и файл с елементи.

alignncenter размер-голям wp-image-496593

Активирайте режима за отстраняване на грешки

Докато все още се опитвате да накарате OpenHAB да работи правилно, може да бъде полезно да активирате по -подробен дневник за отстраняване на грешки, който изброява всичко, а не само важните неща. За да активирате този режим, отворете споделената папка OpenHAB Config и редактирайте logback.xml . На ред 40 променете следния ред, за да четете DEBUG вместо INFO. След като промените това, ще трябва да рестартирате.

Това е глобална промяна, така че ще получите много повече информация, след като подредите лог файла.

Добавяне на Philips Hue

Ще започна с Philips Hue. Подобно на повечето неща, с които искате да взаимодействате в OpenHAB, крушките Hue изискват от вас да инсталирате a обвързващ - мислете за свързванията като за драйвер на устройство. По време на писането има около 160 свързвания, налични за OpenHAB 1, поради което OpenHAB е толкова мощна система - тя може да взаимодейства с всичко, комбинирайки всички тези различни системи за управление в единен унифициран интерфейс. Ето демонстрация и бърз преглед на съответните стъпки.

Първо трябва да се изтеглят обвързванията и най -лесният начин да направите това на Pi е използването apt-get , след това принуди собствеността на потребителя на openhab.

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

След това трябва да кажете на OpenHAB да зареди това свързване и да конфигурирате всички необходими променливи. Отворете папката с конфигурации и направете копие на openhab-default.cfg , назовавайки го openhab.cfg . Отворете го, потърсете HUE и заменете целия раздел със следния код. Единственото нещо, което трябва да промените, е IP стойността на вашия мост - ако все още не го знаете, опитайте инструмента за онлайн откриване. Тайната стойност всъщност няма значение, това е просто един вид потребителско име, което OpenHAB ще използва, за да се идентифицира към моста.

Бърз съвет : за да активирате ред, просто премахнете # от самото начало. По подразбиране редът, указващ IP адреса на моста, е деактивиран (или технически „коментиран“). Освен това, ако изпробвате алтернативна конфигурация, може да бъде полезно просто да копирате съществуващия ред и да поставите # в началото, за да го маркирате като коментар, за да можете лесно да се върнете, ако нещата се объркат.

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

Запази и излез. Както всяко приложение Hue на трета страна, ще трябва да одобрите OpenHAB на Hue Bridge, като натиснете бутона отпред - трябва да направите това само веднъж. Ще видите съобщение за в очакване на сдвояване ако следите регистрационния файл, но ако сте забравили или сте пропуснали обратното броене, просто нулирайте Pi - ще получите таймер от 100 секунди от момента на стартиране на свързването на Hue. Уверете се, че сте сдвоили успешно, преди да продължите.

След това отворете начало.елементи файл, към който ще добавим няколко крушки Hue. Ето примерна дефиниция на елемент:

Color Bedroom_Hue 'Bedroom Hue' (Bedroom) {hue='1'}
  • The Цвят word определя какъв контрол имаме над този елемент. RGB Hue крушките са „Цветни“, тъй като имаме пълен цветен контрол върху тях. Други светлини може да са просто превключвател.
  • Следва кодовото име на елемента: Аз избрах Bedroom_Hue , но буквално всичко е наред - просто нещо описателно, което ви се струва естествено, защото ще трябва да го запомните по -късно, когато правите картата на сайта. Кодовото име не трябва да има интервали.
  • Между кавичките е етикетът. Нашата е проста в този случай, но за някои елементи като температура или нещо, което отчита стойност, ще добавите специален код, който й казва как да покаже тази стойност или да използва какво трансформирайте. Етикетът е за интерфейса и може да има интервали.
  • Между ъглови скоби е името на иконата. Ще намерите всички налични икони в споделянето на OpenHAB под webapps/изображения директория. Всъщност има цяла гама от икони на нюанси, които представляват различни яркости или включване/изключване. Просто посочете името на основната икона - OpenHAB ще знае автоматично да търси различните икони за включване/изключване, ако това е превключен елемент. Това е по избор.
  • В кръглите скоби ние му казваме кои групи да бъдат част - в този случай само Спалня група.
  • И накрая, и най -важното, ние свързваме елемента към подходящото свързване с всички необходими променливи. В този случай, оттенък обвързване, а номерът на крушката е 1. Можете да намерите номера, като отворите официалното приложение Hue и погледнете раздела за светлини. Всяка крушка има уникален номер.

Добавих общо четири крушки, както и проста декларация на групите, която ще разширим по -късно. Ето моята пълна начало.елементи в този момент:

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 / * Светлини */ текстът е просто коментар, той няма друга функция освен да ни помогне да сканираме файла по -късно, когато стане по -голям. Сега имаме добавени устройства, но отварянето на http: //raspberrypi.local: 8080/? Sitemap = home води до празен интерфейс - разбира се, защото всъщност все още не сме създали елементи на интерфейса в картата на сайта. Нека започнем наистина просто за сега. Отвори начало.карта на сайта .

Кодът, използван за описание на интерфейса, е различен от елементите, но засега ще създадем нова „рамка“ и ще добавим няколко групови контроли заедно с някои икони.

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

Групите са полезен инструмент за бързо тестване, но в действителност ще искате повече контрол върху това как елементите се показват. Засега това ще бъде достатъчно. Запазете и презаредете домашната си карта на сайта в браузъра. Трябва да видите това (или каквито и групи да сте добавили).

Кликнете върху Цялото осветление да виждаме всяка светлина Hue, тъй като всички ние ги определихме като принадлежащи към тази обширна група светлини.

Забележете, че елементът Office Hue се показва с различна икона - това е така, защото лампата на офиса ми вече е включена и OpenHAB знае това, когато говореше с моста Hue и беше достатъчно умен, за да коригира иконата „включена“ версия на файла. За съжаление, той не отразява цвета, но ако имате инсталирано мобилно приложение, това ще отразява текущия цвят.

Ако виждате повече елементи, отколкото сте мислили, че сте дефинирали, или получавате грешки за множество дефиниции, знайте, че въпреки че можете да зареждате само една карта на сайта наведнъж на страницата всички карти на сайта ще изтеглят елементи от всички .item файлове , така че ако сте оставили файла с демонстрационни елементи там, може да се появят и някои допълнителни елементи във вашите групи. Предлагам на този етап да направите резервно копие на съдържанието на демонстрационните елементи и да го преместите от папката, за да избегнете грешки при дублиране.

Отдалечен достъп и IFTTT с My.OpenHAB

В момента трябва да сте в същата локална мрежа, за да получите достъп до вашата OpenHAB система, но какво ще стане, ако искате да контролирате устройствата си и да проверявате сензорите, когато сте извън обсега на вашия Wi-Fi? За целта ще трябва да настроим отдалечен достъп - и ще го направим по лесния начин, с уеб услугата My.OpenHAB [Прекъснат прекъснат URL адрес], която заобикаля необходимостта да се забърква с препращането на портове и конфигурациите на рутера. Като бонус услугата My.OpenHAB има и IFTTT канал, който ви дава безкрайни възможности за дистанционно управление и автоматизация.

Първо: инсталирайте обвързването. Бърз съвет: ако не знаете точното име на конкретен инсталационен пакет, опитайте да го потърсите с apt-cache.

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

Преди да можете да се регистрирате на сайта My.OpenHAB, ще трябва да създадете секретен ключ и да намерите своя UUID, който уникално идентифицира вашата инсталация. Проверете под Споделяне на OpenHAB Home -> уеб приложения -> статичен и трябва да намерите UUID файл, съдържащ вашия уникален идентификатор. В този момент открих, че моят Pi използва по -стара версия на Java, която не създава правилно секретния ключ. Тип

java -version

да проверя. Ако не пише 1.7 или по -висока, имате грешна версия. Странно, но най -новата версия на Raspbian идва с инсталиран Oracle Java 8, но не е зададен по подразбиране.

sudo update-alternatives --config java

защо феновете на лаптопа ми са толкова силни

Изберете опцията, която показва jdk-8-оракул , след това рестартирайте OpenHAB. Бонус: Oracle Java 8 е по -бърз от стандартния OpenJDK!

Сега трябва да намерите и секретен файл в webapps/static папка. Отворете и двете тайна и uuid , и бъдете готови да копирате паста.

Сега отидете да създадете акаунт в My.OpenHAB, като използвате тези подробности, след което се върнете - също ще трябва да потвърдите имейла си, преди всичко да работи. Има още няколко стъпки към това. Първо, трябва да настроим механизма за устойчивост по подразбиране на myopenhab (постоянството е нещо за по -късно ръководство, но независимо от това, трябва да настроим нещо основно, за да „експортираме“ данните си към онлайн услугата и да ги видим за IFTTT) . За да направите това, отворете openhab.cfg и намерете променливата, която казва постоянство: по подразбиране = и го променете на постоянство: по подразбиране = myopenhab . Запазване.

И накрая, създайте нов файл в конфигурации/постоянство папка, наречена myopenhab.persist , и поставете в следното правило.

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

Не е нужно да разбирате това засега, но знайте, че той казва „запазете всяко състояние на елемента, когато се промени“.

За да се свържете с IFTTT, преминете към OpenHAB канал - ще трябва да се удостоверите и да му дадете достъп до вашия MyOpenHAB акаунт. Също така имайте предвид, че докато вашите елементи не се променят поне веднъж, те няма да бъдат видими в списъка с елементи на IFTTT, така че ако не се вижда, включете и изключете нещо, след което презаредете. Поздравления, сега имате пълен IFTTT достъп до всичко във вашата OpenHAB система!

Bluetooth сензор за присъствие, използващ REST

Преди малко ви показах как да направите автоматично заключване на вратата на офиса с помощта на Bluetooth сканиране, за да откриете присъствието на потребителя - исках да внеса нещо подобно в OpenHAB.

На всяка платформа, различна от Raspberry Pi, това би било просто благодарение на готовата Bluetooth връзка; за съжаление, той не работи на Pi поради решаващ Java файл, който би трябвало да се прекомпилира за ARM архитектурата, да се добави към свързването и след това да се възстанови свързването. Достатъчно е да кажа, че опитах това и беше ужасно сложно и не работи. Има обаче много по -лесно решение, което служи и като добро въведение в самата разширяемост на OpenHAB: ние просто ще адаптираме предишния си скрипт на Python, за да го отчитаме директно в интерфейса OpenHAB RESTful.

Освен това: RESTful интерфейс означава, че можете да взаимодействате със система, като използвате вградения уеб сървър, просто като извикате URL адреси и предадете или извлечете данни. Можете да посетите този URL адрес, за да видите прост пример за това на вашия собствен сървър: http: //raspberrypi.local: 8080/rest/items - който извежда кодиран списък с всички ваши дефинирани елементи. Това е изключително мощно, тъй като разкрива пълния потенциал на OpenHAB и ви позволява да пишете персонализирани интерфейси; или в обратна посока, за да докладва състоянието на сензорите, без да има специфично свързване. Ще използваме тази възможност, за да докладваме за наличието на конкретно Bluetooth устройство, без да прибягваме до Bluetooth обвързването.

Започнете с добавяне на нов Превключване артикул към вашия начало.елементи файл. Нарекох моя „JamesInOffice“ и го направих превключвател, а не обикновен контакт за включване/изключване, за да мога ръчно да контролирам присъствието си в случай, че телефонът ми умре.

Switch JamesInOffice 'James in Office' (Office)

Забележете, че не съм дефинирал икона или не съм свързвал конкретно свързване. Това е просто общ превключвател.

След това поставете съвместим USB Bluetooth ключ и инсталирайте някои основни инструменти за взаимодействие с него.

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

Последната команда трябва да показва вашия Bluetooth адаптер. Ако нищо не е посочено, опитайте друг адаптер, вашият не е съвместим с Linux. Следващата стъпка е да намерите хардуерния адрес на Bluetooth на вашето устройство.

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

Уверете се, че телефонът ви е отворен на страницата с настройки за Bluetooth (което го поставя в режим на сдвояване/обществен) и очевидно Bluetooth е активиран. Трябва да намерите изброен шестнадесетичен хардуерен адрес.

От домашната директория на потребителя на Pi създайте нов скрипт на Python и поставете в този код .

Има няколко неща, които трябва да редактирате, като започнете с конкретния адрес на устройството:

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

Както и този ред, който е на две места (да, това вероятно би могло да бъде структурирано по -добре). Променете JamesInOffice на кодовото име на ключа, който сте дефинирали.

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

Последната стъпка е да кажете на този скрипт да се стартира по време на зареждане.

sudo nano /etc/rc.local

Превъртете надолу до дъното и точно преди изхода 0 добавете следните редове:

python /home/pi/detect.py &

Знакът & означава „направи това на заден план“. Продължете и стартирайте скрипта, ако още не сте го направили, и отворете вашия OpenHAB интерфейс. Ако сте го добавили към група, щракнете върху тази група. Актуализирането отнема около 10 секунди, но ще видите как иконата на крушката по подразбиране се включва или изключва в зависимост от това дали телефонът ви е открит или не. Проверете регистрационния файл, ако нищо не се случи, възможно е да сте използвали грешно име на артикул.

Мобилно приложение OpenHAB

Въпреки че разбира се можете да използвате уеб интерфейса от мобилно устройство, OpenHAB има собствени приложения и за двете ios и Android - и те изглеждат а много по -хубав от интерфейса на браузъра по подразбиране. На екрана с настройки въведете локалния URL като вътрешен IP адрес, който сте използвали досега, включително номера на порта. За отдалечен URL адрес въведете https://my.openhab.org , и вашето потребителско име (имейл) и парола, които сте въвели, когато сте се регистрирали. Ако все още не сте се регистрирали за MyOpenHAB, просто оставете празни удостоверяването и отдалечения URL адрес, но ще имате достъп до вашата система само от вашия локален Wi-Fi.

Преместване напред и получаване на помощ

Количеството персонализирани и изчистени функции, които можете да добавите към вашия OpenHAB контролер, е наистина епично. Освен широкия списък с поддържани устройства със свързвания, можете да използвате интерфейса RESTful, HTTP разширения и IFTTT, за да четете или контролирате буквално всякакъв вид IoT устройство, а след това някои (опитайте някои от нашите творчески идеи за осветление). Да, инсталирането е абсолютна болка, но нито една търговска система не може да се доближи до силата на персонализирана система OpenHAB.

Въпреки това, пътуването не беше никак лесно за мен, поради което написах това ръководство, за да улесня процеса за вас. И ако смятате, че системата OpenHAB е преобладаваща, има и други възможности, когато става въпрос за автоматизация на дома в Raspberry-като например използването на Raspberry Pi за автоматизиране на гаражната врата например.

Очаквайте MakeUseOf за разширено ръководство, което обхваща Z-Wave и други готини трикове, които можете да настроите.

Ако имате нужда от помощ с конкретна част от това ръководство, моля, попитайте в коментарите. Ако искате помощ с друго обвързване или някои разширени теми, които все още не сме обхванали, официални форуми на OpenHAB са приветливо място.

Дял Дял Туит електронна поща 5 съвета за зареждане на вашите VirtualBox Linux машини

Уморени ли сте от лошото представяне на виртуалните машини? Ето какво трябва да направите, за да увеличите производителността на VirtualBox.

Прочетете Напред
Свързани теми
  • Направи си сам
  • Умен дом
  • Домашна автоматизация
  • Дълга форма
  • Ръководство за дълги форми
  • Интелигентни концентратори
За автора Джеймс Брус(707 статии са публикувани)

Джеймс има бакалавърска степен по изкуствен интелект и е сертифициран по CompTIA A+ и Network+. Когато не е зает като редактор на хардуерни рецензии, той се радва на LEGO, VR и настолни игри. Преди да се присъедини към MakeUseOf, той беше техник по осветление, учител по английски език и инженер в центъра за данни.

Още от Джеймс Брус

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате