Конфигурация - openHAB

Переходим к следующему этапу, установим и настроим платформу автоматизации openHAB.

Для работы сервера платформы необходимо наличие java.

$ sudo apt-get install oracle-java8-jdk

Сначала произведем загрузку установочных пакетов.

$ sudo mkdir /opt/openhab
$ cd /opt/openhab
$ sudo wget https://bintray.com/artifact/download/openhab/bin/distribution-1.8.3-runtime.zip
$ sudo wget https://bintray.com/artifact/download/openhab/bin/distribution-1.8.3-addons.zip
$ sudo unzip distribution-1.8.3-runtime.zip 

Пакет дополнений извлекаем во временную папку, для ускорения загрузки платформы мы возьмем только необходимые модули.

$ sudo unzip distribution-1.8.3-addons.zip -d addons-distrib
$ sudo rm distribution-1.8.3-*

Скопируем необходимые нам модули.

$ sudo cp addons-distrib/org.openhab.binding.exec-1.8.3.jar addons/
$ sudo cp addons-distrib/org.openhab.binding.ntp-1.8.3.jar addons/
$ sudo cp addons-distrib/org.openhab.persistence.logging-1.8.3.jar addons/
$ sudo cp addons-distrib/org.openhab.persistence.rrd4j-1.8.3.jar addons/

Создаем файл конфигурации устройств.

$ sudo nano configurations/items/default.items
Group   All
Group   devrm   (All)
DateTime Date "Дата [%1$td %1$tb %1$tY]" { ntp="Europe/Moscow:ru_RU" }
Number  devrm_t "RM2-T [%.1f °C]" (devrm)  { exec="<[/opt/broadlink/temp.py:300000:]" }
Switch  devrm_01 (devrm) { exec=">[ON:/opt/broadlink/send.py /opt/broadlink/code/rm1_a] >[OFF:/opt/broadlink/send.py /opt/broadlink/code/rm1_d]" }

Создадим файл конфигурации пользовательского интерфейса.

$ sudo nano configurations/sitemaps/default.sitemap
sitemap default label="Мой Дом" {
 Frame label="Дата" {
  Text item=Date icon="calendar"
 }
 Frame label="Умный Дом" {
  Switch item=devrm_01 label="Switch" icon="switch" mappings=["ON"="Вкл.","OFF"="Выкл."]
  Text item=devrm_t icon="temperature"
  Image url="http://10.0.1.12:8080/rrdchart.png?items=devrm_t&period=3D"
 }
}

Создадим файл конфигурации для системы хранения.

$ sudo nano configurations/persistence/rrd4j.persist
Strategies {
        everyMinute     : "0 * * * * ?"
        default = everyChange
}
Items {
        devrm_t : strategy = everyChange, everyMinute, restoreOnStartup
}

Создадим файл конфигурации платформы автоматизации openHAB.

$ sudo cp configurations/openhab_default.cfg configurations/openhab.cfg 

Конфигурирование и добавление openHAB в автозагрузку системы.

Создадим скрипт запуска службы.

$ sudo nano /etc/init.d/openhab
#!/bin/sh
### BEGIN INIT INFO
# Provides:          openhab
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: OpenHAB Daemon
# Description: Build your smart home in no time!
### END INIT INFO

ROOT_DIR=/opt/openhab
eclipsehome="$ROOT_DIR/server";
HTTP_PORT=8080
HTTPS_PORT=8443

cp=$(find $eclipsehome -name "org.eclipse.equinox.launcher_*.jar" | sort | tail -1);

DAEMON_USER=root
DAEMON_NAME=openhab

DAEMON=/usr/bin/java
DAEMON_ARGS="-Djna.boot.library.path=/usr/lib/jni -Dgnu.io.rxtx.SerialPorts=/dev/ttyAMA0 -Dosgi.clean=true -Declipse.ignoreApp=true -Dosgi.noShutdown=true -Djetty.port=$HTTP_PORT -Djetty.port.ssl=$HTTPS_PORT -Djetty.home=. -Dlogback.configurationFile=configurations/logback.xml -Dfelix.fileinstall.dir=addons -Djava.library.path=lib -Djava.security.auth.login.config=./etc/login.conf -Dorg.quartz.properties=./etc/quartz.properties -Dequinox.ds.block_timeout=240000 -Dequinox.scr.waitTimeOnBlock=60000 -Dfelix.fileinstall.active.level=4 -Djava.awt.headless=true -jar $cp $* -console "
PIDFILE=/var/run/$DAEMON_NAME.pid

. /lib/lsb/init-functions

do_start() {      
  log_daemon_msg "Starting system $DAEMON_NAME daemon"
  start-stop-daemon --start --background --pidfile $PIDFILE --make-pidfile --user $DAEMON_USER --chuid $DAEMON_USER --chdir $ROOT_DIR --exec $DAEMON -- $DAEMON_ARGS
  log_end_msg $?
}
do_stop() {
  log_daemon_msg "Stopping system $DAEMON_NAME daemon"
  start-stop-daemon --stop --pidfile $PIDFILE --retry 10
  log_end_msg $?
}

case "$1" in

    start|stop)
        do_${1}
        ;;

    restart|reload|force-reload)
        do_stop
        do_start
        ;;

    status)
        status_of_proc "$DAEMON_NAME" "$DAEMON" && exit 0 || exit $?
        ;;
    *)
        echo "Usage: /etc/init.d/$DAEMON_NAME {start|stop|restart|status}"
        exit 1
        ;;

esac
exit 0

Сохраняем скрипт, делаем его исполняемым и добавляем в автозагрузку системы.

$ sudo chmod a+x /etc/init.d/openhab 
$ sudo update-rc.d openhab defaults

Перегружаем систему. После перезагрузки в браузере открываем адрес http://a.b.c.d:8080, где a.b.c.d — IP-адрес Raspberry Pi. Если все настроено правильно, то мы увидим настроенный нами пользовательский интерфейс openHAB.

Не забудьте установить официальное мобильное приложение openHAB на мобильное устройство по управлением Android или iOS.

Шаг 1. Raspberry Pi 3  |  Шаг 3. Broadlink RM2 Pro

vk ok ma fb tw

Открой свой бизнес!  |  Рецепты жидкостей для парения!  |  Best mobile Wallpapers!  |  Linux certification!

Вы можете копировать информацию с данного сайта только для личного некоммерческого пользования; изменение и дальнейшее тиражирование информации запрещено. Копирование и использование информации с данного сайта в каких-либо иных целях запрещается. | Все товарные знаки являются собственностью соответствующих владельцев.
© 1998-2020 Sameak. Все права защищены.