1 2 3 4 5 6 7 8 9 10 10/10 10,00оценок: 5

OpenHAB - обмен опытом, совместное изучение и т. п

Тема в разделе "Умный дом", создана пользователем Anton66, 15.03.14.

  1. lingvo
    Регистрация:
    25.11.15
    Сообщения:
    1.416
    Благодарности:
    458

    lingvo

    Живу здесь

    lingvo

    Живу здесь

    Регистрация:
    25.11.15
    Сообщения:
    1.416
    Благодарности:
    458
    Да. Только не в среде OH, а в среде Node-red
     
  2. vshaev
    Регистрация:
    23.05.16
    Сообщения:
    97
    Благодарности:
    37

    vshaev

    Живу здесь

    vshaev

    Живу здесь

    Регистрация:
    23.05.16
    Сообщения:
    97
    Благодарности:
    37
    Можно начать с изучения вот этого https://geektimes.ru/post/279814/
    Впрочем на оффсайте http://nodered.org/ всё расписано довольно подробно. Но на английском.
     
  3. Smith2007
    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    747

    Smith2007

    Живу здесь

    Smith2007

    Живу здесь

    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    747
    Адрес:
    Россия
    @Pagan, установите HabMin - визуальный редактор UI
    Будет проще рисовать интерфейс, иконки назначать и пр.
     
  4. Pagan
    Регистрация:
    30.12.10
    Сообщения:
    283
    Благодарности:
    68

    Pagan

    Живу здесь

    Pagan

    Живу здесь

    Регистрация:
    30.12.10
    Сообщения:
    283
    Благодарности:
    68
    Адрес:
    Анапа
    Спасибо вам за подсказки...Попробую.
     
  5. annakin
    Регистрация:
    17.03.17
    Сообщения:
    1
    Благодарности:
    0

    annakin

    Новичок

    annakin

    Новичок

    Регистрация:
    17.03.17
    Сообщения:
    1
    Благодарности:
    0
    Добрый День.
    Ребята может ктото помочь или направить на нужный форум.
    Настроил OH2 на RPi3 всё норм.
    Есть контроллер Arduino Uno к нему подключён передатчик и приёмник 433Mhz в контроллер залит скетч с шлюзом mqtt.
    Захожу на RPi3 через shh и делаю команду:
    mosquitto_pub -t home/commands/MQTTto433 -m 3361064
    Передатчик включает свет.
    Но когда я пытаюсь сделать это через OH2 не выходит.
    Ниже Итемы и СайтМапы:
    Switch. items:
    Switch mqttsw1 "Switch 1" (all) {mqtt=">[RFController:home/commands/MQTTto433:command:on:3361064],>[RFController:home/commands/MQTTto433:command:off:3361064]"}

    Switch. sitemap:
    sitemap Alice label="Alice"
    {
    Frame label="MQTT"
    {
    Switch item=mqttsw1 label="MQTT Switch 1"
    }
    }

    =
    Подскажите что я делаю не так ?
     
  6. vshaev
    Регистрация:
    23.05.16
    Сообщения:
    97
    Благодарности:
    37

    vshaev

    Живу здесь

    vshaev

    Живу здесь

    Регистрация:
    23.05.16
    Сообщения:
    97
    Благодарности:
    37
    Проверьте (или покажите) что у вас в файле mqtt. cfg
    Судя по
    у вас должна быть раскомментирована и иметь следующий вид строка
    RFController. url=tcp:/<здесь ваш адрес>:<а здесь номер порта брокера>
    у меня она выглядит так -
    mybroker. url=tcp:/192.168.0.160:1883
    и соответственно фрагмент item - а выглядит так -
    Switch Light_rGF_Living "подсветка TV" (rGF_Living) {mqtt=">[mybroker:cmnd/sonoff_1/POWER:command:ON:1]

    кстати, ещё попробуйте у себя команды "on/off" переписать заглавными. У меня точно с этим были проблемы, но не помню в каком месте. Может в правилах ?
     
  7. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Я тоже в это упёрся. Сами команды надо прописывать в. rules, а в. items путь до правил. Но у меня так и не завелось, юзаю OH 1.8.3.
     
  8. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    А что не так с иконками в UI? Выставить параметр image=Bitmap надо к твоему sitemap, или иной параметр, в зависимости от расширения иконок. Далее кладём иконки в /etc/openhab2/images/classic (верно путь прописал) и всё. И да, в. items указываем имя файла изображения.
     
  9. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Итак. Сразу скажу спасибо xassius за идею трансляции видеопотока в OH без использования дополнительного WEB-сервера. В общем я озадачился этим и между делом сделал. Оговорюсь сразу, что у меня OH крутится не на RPi, а на неттопе с полноценной Linux Mint (XFCE). Потом куплю как-нибудь камеру на RPi и попробую на ней проделать всё то же самое. Ну что ж, приступим.
    Первым делом ставим ffmpeg на том устройстве, куда подключена физически камера:
    # apt update && apt install ffmpeg screen -y
    Затем надо создать или исправить текущий конфиг ffserver'a и прописать следующие параметры:
    # mv -v /etc/ffserver.conf /etc/ffserver.conf_orig && vi /etc/ffserver.conf
    Port 8100
    BindAddress 0.0.0.0
    MaxClients 10
    MaxBandwidth 20000
    NoDaemon
    <Feed feed. ffm>
    File /tmp/feed.ffm
    FileMaxSize 30M
    </Feed>
    <Stream test. flv>
    Feed feed. ffm
    Format flv
    VideoCodec flv
    VideoFrameRate 60
    VideoBufferSize 80000
    # VideoBitRate 200
    VideoQMin 1
    VideoQMax 5
    VideoSize 1280x720
    PreRoll 1
    Noaudio
    </Stream>
    <Stream test. swf>
    Feed feed. ffm
    Format swf
    VideoCodec flv
    VideoFrameRate 60
    VideoBufferSize 50000
    # VideoBitRate 100
    VideoQMin 1
    VideoQMax 5
    VideoSize 1280x720
    PreRoll 0
    Noaudio
    </Stream>

    Вкратце расскажу. Мы объявили некий фид feed. ffm который будет слушать ffserver, а раздавать видеопоток будет всем, кто подключится к порту 8100, получился такой вот multicast. Остальные параметры нужны для того, чтобы в браузере у нас это дело воспроизводилось с помощью flash-плеера. Строгим параметром является VideoSize - он должен быть везде одинаковым. На этом всё, запускаем ffserver в скрине:
    # screen -S ffserver
    # ffserver

    Следующим шагом будет захват видеопотока с камеры и трансляция его в объявленный фид ffserver'a:
    # ffmpeg -s 1280x720 -r 60 -f video4linux2 -i /dev/video0 http://localhost:8100/feed.ffm
    тут ключом -s задаём разрешение такое же, как и в конфиге ffserver'a; ключом -r задаём частоту кадров и снова такую же, как и в конфиге ffserver'a; ключом -f задаём формат видеопотока; ключом -i указываем устройство, с которого будем захватывать видеопоток, в моём случае это камера /dev/video0; следующий параметр после устройства входящего потока указывает адрес фида, который слушает ffserver.
    Теперь можно запустить браузер и ввести в адресную строку http://<некий IP>:8100/test.swf. Должны увидеть видеотрансляцию.
    Если на этом шаге всё получилось, то переходим к настройкам OH.
    Открываем наш sitemap и прописываем любым удобным для нас способом, у меня это отдельный фрейм:
    Frame label="Видеонаблюдение" {
    Text label="Камера" icon="camera_new" {
    Webview url="http://<некий IP>:8100/test.swf" height=25
    }
    }
    Поясню, в чём успел разобраться. Вместо Webview можно указать Image, но тогда вы будете видеть только картинку, а не видеопоток, параметром refresh можно указать частоту обновления Image, но мы не этого хотели, поэтому это можно отбросить. Также вместо Webview можно указать Video, но в таком случае у меня вообще не взлетела видеотрансляция в OH. Параметр height=25 для Webview задаёт высоту кадра, которая будет отображаться в OH. Я опытным путём выставил height=25, чтобы без скролинга видеть всю картинку.
    Собственно всё. Всем спасибо за внимание. Будут вопросы - задавайте.
     
  10. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Ребят, кто-нибудь смог выполнить скрипт при переключении Switch в OH2? Сколько не пытался - скрипт не выполнялся, хоть и в логах была верная запись по типу "script.sh 0 0", где "0 0" передаваемые параметры. Есть предположение, что OH2 передаёт параметры в виде string, перевод значений из string в int в самом скрипте ничего не изменили.
     
  11. xassius
    Регистрация:
    12.07.14
    Сообщения:
    23
    Благодарности:
    7

    xassius

    Участник

    xassius

    Участник

    Регистрация:
    12.07.14
    Сообщения:
    23
    Благодарности:
    7
    Адрес:
    Нальчик
    да вроде получается без особых танцев с бубном.

    есть item
    Switch WakeUpDesktop "Вкл/Выкл комп" {nh="192.168.1.2", wol="192.168.1.255#MAC_ADDRESS", exec=">[OFF:/bin/sh@@-c@@/opt/openhab2/conf/scripts/shutdown_pc 192.168.1.2 username password]" }

    к нему скрипт shutdown_pc:
    #!/bin/sh
    # Shutdown script

    ipaddress=$1
    user=$2
    password=$3

    net rpc shutdown -I $ipaddress -U $user%$password -f -t 60

    Работает без нареканий.

    -Upd
    Кстати, еще раз спасибо за подсказку с видеопотоком. Работает отлично.
     
  12. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Попробую вечером воспроизвести проблему. Исходя из твоего примера, я выбрал тернистый путь прописав выполнение команд в. rules.

    Upd. За видеопоток не за что =)
     
  13. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Собственно воспроизвёл проблему. Мой item:
    Switch Light_entrance_hall "Общее освещение" <light> (Entrance_hall) {exec=">[OFF:/usr/bin/python3@@/opt/openhab/configurations/scripts/mtrf 0 1] >[ON:/usr/bin/python3@@/opt/openhab/configurations/scripts/mtrf 0 2]"}

    В логах информирует об изменении статуса Switch, но при том свет не загорается. Причём из командной строки работает без нареканий от root и от пользователя openhab.
     
  14. Across
    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11

    Across

    Участник

    Across

    Участник

    Регистрация:
    28.01.17
    Сообщения:
    33
    Благодарности:
    11
    Вопрос закрыт. Разобрался =). Решение проблемы скрывалось во включении параметра "Include Legacy 1. x Bindings" в PaperUI -> Cjnfiguration -> System, после чего идём также в PaperUI -> Add-ons -> BINDINGS -> Ищем "Exec" и устанавливаем "Exec Binding (1.x)". После этих манипуляций items- и sitemaps-файлы некогда написанных для OH 1.8.3, в OH2 не редактировались.
     
  15. Dallas7
    Регистрация:
    09.11.15
    Сообщения:
    2
    Благодарности:
    0

    Dallas7

    Участник

    Dallas7

    Участник

    Регистрация:
    09.11.15
    Сообщения:
    2
    Благодарности:
    0
    Дорогие любители ОН,
    помогите настроить Modbus RTU на RPi c ОН для контроля разных устройств (SMH 2010, термостат с модбас). Есть переходник USB-RS485.
    Только начал разбираться, поставил ОН 2 на RPi - все заработало. Что дальше делать?
    Как проинсталировать переходник?
    В качестве теста хочу получить температуру с термостата и поуправлять ним