Подключение переферии UNIEL по rs-485

может это просто жаргонное определение… я говорю я не шарю в электрике…

Т.е. я правильно понял что датчик движения подключить к uniel тупо не возможно… точнее возможно но он будет работать не правильно? т.е. он включить лампу а потом не выключет? а если управлять через WB это получается датчик нужно подключать к WB он подаст сигнал WB а WB подаст сигнал на диммер… а диммер выключит лампу или включит в зависимости какую команду получит WB от датчика?

16-ричная система счисления, добавлены “цифры” A,B… 0А=10, 0B=11…

Без понятия. У Вас, как я понял, не светодиодный… там все может быть иначе. Я со своим тоже не сразу разобрался, поначалу он вообще себя вел случайным образом, оказалось там по умолчанию было включено “звездное небо” - вот он и мерцал звездами :smile: И это можно отключить только в их программе.

Да.

Да и как Вы настроите в скрипте задержки и тп…
А не проще просто поставить датчик движения прямо на лампу без изысков? Берете датчик движения (можно микроволновый - его вообще можно спрятать за потолком) с релейным выходом и этот релейный выход подключаете параллельно выходу Uniel. Если свет отключен диммером, но при этом кто-то появился у датчика - свет зажжется… правда я вообще не понимаю зачем тут нужен Uniel.

Спасибо! теперь понял)))

т.е. я могу отключить это не понятное поведение только черех их программу???:anguished:

Вся проблема в том что вся разводка раскинута… и поменять все это дело крайне сложно а некоторых случиях невозможно… но вот с датчиком меня электрик удивил… он мне про датчики движения ни чего не говорил… а тут такая новость))) хорошо…расскажу ему про ваше предложение…

и кстати можете мне пожалуйста скинуть вашу программу котрую вы использовали…может она мне поможет разобраться))) и да на счет программы для com порта… те программы что вы мне предложили не выводят ответ модуля… хоть убейся… либо просто тишина либо просто ошибка таймаута… может подскажите какие настройки вы выставляли когда настраивали диммер?

Какая модель дммера? Скорей всего так. Поглядите что там есть.

У меня в комплекте была для 141 модели, это для LED, как я понимаю, у Вас другой диммер, значит не пойдет. Других программ для терминала нет, я настраивал адрес через нее. Разбирайтесь.

если действительно интересно, то сначала наткнулся на их диммеры, т.к. изучал всё вокруг управления светом. И уже через них вышел на ваш контроллер. У них есть яндекс директ, а вас поисковик яндекса показывает когда ищешь что-то про модели uniel. Итог, если бы не ваша поддержка uniel, не было бы продажи, так что очень ждем фикса поддержки их кривого протокола =)

присоединяюсь!!! мне про контроллер wirenboard рассказал Сергей из ydom. и он сказал, что всё оборудование прекрасно работает с вашими контроллерами. но тут оказалось, что работают только диммеры, да и то как-то так… а остальные железки похоже так и не будут работать :frowning:

Понятно, чиним, скоро будет.

так вроде поддержка есть для обоих диммеров и обоих релейных блоков.

Какие остальные железки не работают и как именно?

http://www.ydom.ru/item.html?page=ydomx10 http://www.ydom.ru/item.html?page=secu-16 http://www.ydom.ru/item.html?page=secu-16i http://www.ydom.ru/item.html?page=thladc ну и в идеале хотелось бы либо поддержки http://www.ydom.ru/item.html?page=secu-16ir либо такого блока расширения от вашей компании. всё-таки инфракрасное управление ещё очень даже в ходу. спасибо!

Это очень радует. Ждем с нетерпением…

Понятно, поддержки железок ydom (кроме тех, которые есть в линейке Uniel) нет и не планируется. Можем сделать только за деньги. Если у вас не коммерческий проект, где таких устройств будут десятки, то это не окупится.

Я поговорил с электриком по этой теме, показал ваше сообщение, он так то понял о чем вы пишите, но попросил у вас узнать как именно вы реализовали эту систему, и попросил если вам не сложно может схему какую то нарисовать ну или ткнуть носом как котят на какую либо статью какую то что и как делать)))

Еще один вопрос, вы упомянули что столкнусь с проблемой того что диммер и контроллер работают слабо друг с другом и будут проблемы, у меня проблема есть и ее я описывал ниже и прилагал скрины, проблема в том что, когда с контрллера посылаю команды на включение или отключение, то она крайне долго реагирует… вы писали что данную проблему можно решить, но придется колдовать, я правильно вас понял?

Не понял что Вы в итоге хотите. Я не использую датчики движения для управления светом (по мне неудобно), только в качестве датчиков сигнализации. Но если хотите использовать - программируйте WB, если все к нему подключено. Или ставьте датчик движения с управлением прямо на лампу. Для последнего варианта можете купить что-нибудь вроде ТАКОГО

На форуме об этом писалось. Проблема не решается, а заметно улучшается связь с Uniel. Но при этом все равно идут ошибки и иногда команда не срабатывает. Делается это подменой файла wb-mqtt-serial на альтернативный. Но лучше подождать исправлений, Евгений говорил, что этим занимаются.

Блин вот… ждать времени нету вообще… у нас объект уже скоро сдадут… а умный дом еще не “Аллё” :worried: Подменной файла… это отлично, что хотя бы так… но вот где мне этот файл взять и как его заливать?))) а на счет датчика спасибо… изучу. отправлю электрику… пусть думает.

Мне вот типа такого надо сделать как описано вот здесь - Настройка uch-m141rc

Тут явно какая-то засада с ядром. Ошибки на Serial идут по обоим портам, только чистый MODBUS это еще как-то проглатывает, а вот Uniel уже нет.
Как временное решение (жуткий костыль) перекомпилили wb-mqtt-serial, поменяв обработку ответа от диммера в uniel_device.cpp, что бы ответ с одним начальным 0xFF тоже принимался за валидный. Стала вполне приемлимая реакция на команды.

void TUnielDevice::ReadResponse(uint8_t cmd, uint8_t* response)
{
uint8_t buf[5];
for ( ;; ) {
if (Port()->ReadByte() != 0xff) {
std::cerr << “uniel: warning: resync” << std::endl;
continue;
}
buf[0] = Port()->ReadByte();
if(buf[0] == 0xff) { buf[0] = Port()->ReadByte(); }

uint8_t s = buf[0];

for (int i = 1; i < 5; ++i) {
    buf[i] = Port()->ReadByte();
    s += buf[i];
}

if (Port()->ReadByte() != s)
    throw TSerialDeviceTransientErrorException("uniel: warning: checksum failure");

break;

}

if (buf[0] != cmd)
throw TSerialDeviceTransientErrorException(“bad command code in response”);

if (buf[1] != 0)
throw TSerialDeviceTransientErrorException(“bad module address in response”);

for (int i = 2; i < 5; ++i)
*response++ = buf[i];
}

А я вообще могу подключится на сам WB по ssh?

Да. Ищите по слову SSH в документации.