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

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

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

  1. Smith2007
    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748

    Smith2007

    Живу здесь

    Smith2007

    Живу здесь

    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748
    Адрес:
    Россия
    Вот
    • 1 (0x01) — чтение значений из нескольких регистров флагов (Read Coil Status).
    • 2 (0x02) — чтение значений из нескольких дискретных входов (Read Discrete Inputs).
    • 3 (0x03) — чтение значений из нескольких регистров хранения (Read Holding Registers).
    • 4 (0x04) — чтение значений из нескольких регистров ввода (Read Input Registers).
    • 16 (0x10) — запись значений в несколько регистров хранения (Preset Multiple Registers)
    Команды 01 и 02 не поддерживаются.

    При этом хотел бы отметить. Быстрее считать весь регистр целиком, чем считывать побитно. АСУТПшники редко используют битовое чтение.
     
  2. Andrei81
    Регистрация:
    11.01.11
    Сообщения:
    1.312
    Благодарности:
    1.505

    Andrei81

    Проектирую

    Andrei81

    Проектирую

    Регистрация:
    11.01.11
    Сообщения:
    1.312
    Благодарности:
    1.505
    Адрес:
    Глаголево
    Вот и не понятно, зачем оно надо: разбирать сообщения на слова, да еще читать побитово. В MQTT передаются строки. Если передаете число, то в ОН обзываете как Number. Если передается текст, то String. Если передается только 0 и 1, то Switch. И все. Без головняка с битами и байтами.
     
  3. Smith2007
    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748

    Smith2007

    Живу здесь

    Smith2007

    Живу здесь

    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748
    Адрес:
    Россия
    Поверьте, иногда это полезно :)
    Как Вы думаете, что бы в mqtt передать число 32767 сколько необходимо передать данных и за какое время это число будет передано?

    А теперь эту же задачку при помощи Modbus попробуйте решить.

    Даже если не учитывать всякие заголовки и т. д. в mqtt потребуется передать как минимум 5 байт, а если еще в кодировке UTF8 - еще больше. В то время как в modbus это значение уместится в 2 байта.

    А теперь представьте, что у Вас сотни переменных. А еще Вы хотите, что бы система не тормозила при нажатии на клавиши. И система не должна требовать Core i7 с разогнанным ядром и 32 Гига оперативы :)
    А такой скромненький ARM
     
  4. alexeyand
    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61

    alexeyand

    Живу здесь

    alexeyand

    Живу здесь

    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61
    Адрес:
    Philadelphia, Pennsylvania
    Я связал настенный knx контроллер с ресивером, плеером squeezebox и пультом rti при помощи ОН
    естественно полная обратная связь между всеми устройствами, от уровня громкости до now playing

    в rules пригодились циклы, поиск по строкам, обрезка строк, посылка http запросов, вызов скриптов...
    весело конечно, но какой-нибудь mqtt вряд ли справится :)
    кроме ОН может быть еще крестрон справится с такой задачей
     
  5. lingvo
    Регистрация:
    25.11.15
    Сообщения:
    1.416
    Благодарности:
    459

    lingvo

    Живу здесь

    lingvo

    Живу здесь

    Регистрация:
    25.11.15
    Сообщения:
    1.416
    Благодарности:
    459
    @Smith2007, передать 5 или 20 байт при скорости Ethernet 100Мбит - это разница на уровне микросекунд - ничто на транспортном уровне. Поэтому "за сколько передастся N байт" не имеет особого смысла. А вот на уровне выше возникает разница - если у вас есть дискретный вход и вам надо узнать его состояние и выполнить определенное действие с задержкой не более 10мс какова будет разница между MQTT и Modbus TCP? Огромная.
    В первом случае контроллер просто подписывается на нужный топик (ну пусть будет даже 100 байт) и потом спокойно себе работает дальше, занимаясь своими делами. Состояние входа изменилось, пришло сообщение (ну пусть будет 20 байт), контроллер отвлекся, его обработал и выполнил действие. Т. е получаем трафик в 20 байт и практически никакой нагрузки на контроллер.
    А что Modbus? Ну да, нам надо пять байт. Пять байт на команду чтения регистров, пять байт ответа от слейва. Но вот прикол - нам надо это делать раз в 10мс. То есть 200 сообщений в секунду, которые надо сформировать, послать, принять и обработать. В итоге имеем трафика на 2000байт и это в секунду! А сколько работы контроллеру по обработке этого всего и это только от одного слейва!
    В итоге если у вас будет сотня переменных и требоваться нетормознутость где потребуется Core i7 с 32 Гб оперативки, а где справится и простенький ARM?
     
  6. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    Естественно пробовал - получил 10 файлов логов ошибок по 28 тыс строк в каждом.
    2017-10-02 16:46:09.375 [ERROR] [.binding.modbus.internal.ModbusSlave] - ModbusSlave (slave2): Error getting modbus data for request net. wimpi. modbus. msg. ReadCoilsRequest@1e83865. Error: Error Code = 1. Endpoint ModbusTCPSlaveEndpoint@17628b5[address=172.20.2.71,port=502]. Connection: TCPMasterConnection@33b8cd[socket=Socket[addr=/172.20.2.71,port=502,localport=64206]

    Из документации по модбас ОН

    Read and write functions (modbus slave type)
    Modbus read functions

    • type=coil uses function 1 “Read Coil Status”
    • type=discrete uses function 2 “Read Input Status” (readonly inputs)
    • type=holding uses function 3, “Read Holding Registers”
    • type=input uses function 4 “Read Input Register” (readonly-registers eG analogue inputs)
    Modbus write functions

    • type=coil uses function 5 “Write Single Coil
    • type=holding uses function 6 “Write Single Register”, or function 16 “Write Multiple registers” when writemultipleregistersis true

    Из букваря по овну
    img-2017-10-04-22-25-16.png

    з. ы. по утилите - ну не надо впадать в крайности, это одна из самых распространенных утилит.
     
  7. Smith2007
    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748

    Smith2007

    Живу здесь

    Smith2007

    Живу здесь

    Регистрация:
    27.05.12
    Сообщения:
    1.265
    Благодарности:
    748
    Адрес:
    Россия
    я уже ответил - "вот"
     
  8. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    ну да - по ценам сильно кондово, особенно приятно будет при перегорании ламп - очень много отзывов по одновременному перегоранию реле. Мне камрад рассказывал свежий пример этого года - отключился автомат при перегорании лампы накаливания.
    тоже сначала думал пойти этим путем, заказал порядка 4 разных диммируемых светодиодных ламп на 12 вольт, причем внутри были разные чипы. У всех были проблемы с диммированием, очень большая неравномерность регулирования, при уменьшении яркости до ночных режимов - гудят безбожно. Тестировал на шим-модуле фибаро. А вот ленты диммировалось отлично. Но они мне - не того.

    з. ы. а если взять стоимость модуля диммирования для KNX - ценник просто невменяемый
     
  9. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    в конфигурации без ПЛК с прямым управлением через ОН вообще пофигу. Для входов новые модули модбаса подходят неплохо. Но для выходов - явно не вариант.

    за раз читаю 48 байт по 12 выходам - вот с этим вообще ни разу не проблема.
     
  10. alexeyand
    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61

    alexeyand

    Живу здесь

    alexeyand

    Живу здесь

    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61
    Адрес:
    Philadelphia, Pennsylvania
    так кз при перегорании лн в порядке вещей. бывает что нить сгорает с дугой. реле надо защищать автоматами
    у меня в процессе ремонта куча лампочек ильича перегорали 100 раз. ни одно реле не сдохло, автоматы отрабатывают. для особых случаев есть даже автоматика с защитой от дуги (в штатах это стандарт кстати). если защиту не ставить, этак у вас и говен залипнет или промежуточное реле
    за последние несколько лет на форумах по кнх видел может один случай с залипшим реле, и то при мутных обстоятельствах. так либо по гарантии модуль поменять, либо самому реле перепаять, делов то

    видимо проблема в вашем диммере или в лампах. вся планета пользуется
    что за лампы на 12в непонятно. скорее всего ретрофит под галогенки и их трансформатор с какой-нибудь переменкой
    надо брать диммируемые лампы на 220 для обычного диммера-крутилки (triac) и соответствующий модуль

    knx по рознице покупают только дилетанты. по нормальным входам цены нормальные
    к тому же, не зная рынка, шанс самому подобрать правильное оборудование невысок. зато отличный шанс найти не то что нужно по конской цене. отсюда и мифы про заоблачную стоимость. и если все-таки покупают, сталкиваются с программированием (хотя никакого кода там писать не надо, правильней сказать - параметрирование) и начинают мусолить какое уг этот ваш knx
    не нравится knx, возьмите dmx. 20-30$ за 3-4 канала
    для особых любителей там даже модули реле бывают
    программировать ничего не надо, адреса выставил и все. дальше в ОН
    https://docs.openhab.org/addons/bindings/dmx/readme.html
     
  11. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    фибаро RGBW модуль, ШИМ модуляция на 4 канала по 12 В. Для лент работает отлично.

    возможно в них, но что есть то есть. Ни одна светодиодная диммируемая лампа на 12 в нормально не работала. А вот обычная галогенка работала отлично и светодиодные ленгты тоже.
     
  12. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    Подключил к OH2 ImperiHome

    img-2017-10-05-12-50-03.png

    единственно не происходит обновления статусов в вебе, нужно перегружать страницу. В общем-то не критично.

    Групповой свитч в IH работает некорректно. Начинает клацать релюхами по кругу. Возможно связано с моей обработкой изменений по битовой маске.

    Порадовала корректная работа отображения статуса реле при переключении физической кнопкой. В целом нормально, устраивает.

    Остается разобраться с удаленным доступом, поскольку выкладывать "голый зад" в инет не хочется.
     
  13. alexeyand
    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61

    alexeyand

    Живу здесь

    alexeyand

    Живу здесь

    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61
    Адрес:
    Philadelphia, Pennsylvania
    Зачем это?
    у он есть облако, прямой ип не нужен. работает как будто в родной сети
    стандартный интерфейс у меня прошел waf, это о многом говорит)
    для особых изысков можно использовать родной habpanel - выглядит получше вашего скрина
    некоторые подключают к он command fusion. тоже нормально работает

    и все таки копните в сторону dmx. может даже дешевле будет, плюс отсутствие гемороев
    проводки тоже требуется меньше. декодеры можно ставить по месту. единственный ньюанс - шина должна быть без ветвлений. зато шин может быть несколько. но при грамотном проектировании мне это ни разу не требовалось

    наверно потому что он для лент :)]
    по сути вопрос просто в подборе ламп. и проще всего подобрать лампы под триак. и тут бонус будет - не нужны блоки питания
     
  14. kam711
    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182

    kam711

    Строю дом...

    kam711

    Строю дом...

    Регистрация:
    26.04.09
    Сообщения:
    20.548
    Благодарности:
    43.182
    Адрес:
    Москва
    для лент понимаю, но как на лед-лампы его заводить?
     
  15. alexeyand
    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61

    alexeyand

    Живу здесь

    alexeyand

    Живу здесь

    Регистрация:
    13.01.14
    Сообщения:
    199
    Благодарности:
    61
    Адрес:
    Philadelphia, Pennsylvania
    Там есть triac диммеры (принцип диммирования как в обычном диммере-крутилке)
    под такие диммеры есть лампы, причем их большинство
    вот и все