Форум » » Crestron + KNX » Ответить

Crestron + KNX

marty_iron: Здравствуйте! На выключателе B.IQ multifunction RTR + display V2 161302 есть уставка температуры,на дисплее... Setpoint Temperature Но встала задача, чтобы у трех выключателей сразу эта уставка если меняется на одном - меняться на всех... или чтобы по шлюзу она приходила с Крестрона на все три. Ну в целом одно и тоже. Я всем этим 3 параметрам уставки включил параметр Чтение. И в мониторинге он у всех реально меняется при изменении на одном. Но на дисплее температура меняется только на том, на котором нажиаешь... Можно ли как-то решить эту пролблему? спасибо!

Ответов - 24, стр: 1 2 All

Игорь K.: Никак. Не установить по шине уставки, на записать их в эти настенные "кнопки", можно только считывать. Или KNX или Crestron.

marty_iron: Игорь K. а если просто попытаться на 3ех выключателях КНХ синхронно регулировать уставку?

Игорь K.: Представтье себя в роли заказчика и попробуйте решить задачу соответственно. Рулить сразу тремя уставками "седалища не хватит".


DmitriiP: Кнопкии на этих "термостатах" меняют не саму Setpoint Temperature а Setpoint Shifting Задачу можно решить считывая показания с Current Setpoint Shifting и устанавливая через Presetting Setpoint Shifting на остальных. Но надо на всех "термостатах" отключить возможность изменения "base setpoint" если когото нечаянно занесёт в настройки термостатов по центральной кнопке и там чтото сдвинут...

marty_iron: DmitriiP а что же тогда меняет и устанавливает Setpoint Temperature?

DmitriiP: В зависимости от настроек термостата Setpoint Temperature устанавливает Base Setpoint для режимов Confort/StandBy/Eco(Night). Но кнопки по краям экрана не меняют этот параметр, а сдвигают именно Setpoint Shifting.

ph1l74: Доброго времени суток, коллеги. Появилась проблема с реализацией задачи. Нужно управлять кондиционерами по KNX через CI-KNX. Год назад с этой же задачей достаточно легко справился. Скачал модули версии 1.6 (тогда еще актуальной) с аппмаркета и настроил их. В этот раз появились проблемы. Первым делом скопировал часть модулей из прошлого проекта. Не заработало, -- выдает ошибку датапоинтов, хотя CI-KNX через ETS настроен. Решил начать с малого. Банальное управление питанием и считывание статуса кондиционера, -- 1-битовые свитчи. Версия актуального модуля уже достигла номера 3.0 и сильно упростила алгоритм работы и понимание: нужно всего лишь указать номер объекта и сигналы для управления. Модуль подключается сам (нужно только указать IP и тип устройства), никаких serial_tx/serial_rx для общения с устройством не надо. Запускаем программу: 1. Подключение проходит успешно. Об этом сообщает аналоговый сигнал обратной связи (2d) и сигнал того, что инициализация прошла успешно от модуля объекта. 2. Начинаем устанавливать значение питания. Отправляем включение/выключение кондиционера (адрес объекта: 1). Никакой реакции ни от устройства, ни на статусе объекта номер 2 (статус питания). 3. Опрашиваем объект с адресом 2. Программа останавливается. Процессор перезагружается. Вопросы: 1. Возможно ли одним модулем "положить" весь процессор? 2. Кто-нибудь встречался с подобной проблемой? 3. Есть какие-нибудь идеи или предложения по поводу реализации данной задачи? Использую Crestron PRO3 и CI-KNX.

Kaveckiy: ph1l74 пишет: Вопросы: 1. Возможно ли одним модулем "положить" весь процессор? 2. Кто-нибудь встречался с подобной проблемой? 3. Есть какие-нибудь идеи или предложения по поводу реализации данной задачи? Использую Crestron PRO3 и CI-KNX. 1. Возможно. Особенно если проблема с IP сетью. На проце и на CI-KNX установлены статические IP? Больше в сети они не дублируются? Подключите проц напрямую к CI-KNX патчкордом и запрограммируйте управление кондером через какой-то DI. Обратную связь заведите на реле для контроля. 2. Нет, не встречался, в версии 3.0 есть проблема с передачей уставки на модуль кондционера - мне трублю прислали обновление. 3. Покажите проект KNX, может там косяки. Да и проект simpl тоже хотелось бы видеть.

ph1l74: Kaveckiy, спасибо за ответ. Kaveckiy пишет: 1. Возможно. Особенно если проблема с IP сетью. На проце и на CI-KNX установлены статические IP? Больше в сети они не дублируются? Нет, DHCP отключен, статические адреса прописаны, дублирования нет. Kaveckiy пишет: Подключите проц напрямую к CI-KNX патчкордом и запрограммируйте управление кондером через какой-то DI. Обратную связь заведите на реле для контроля. Не знаю, как это поможет, но попробую. Правда, будет трудно реализовать, так как очень уж далеко от контроллера находится кондиционер. Kaveckiy пишет: 2. Нет, не встречался, в версии 3.0 есть проблема с передачей уставки на модуль кондционера - мне трублю прислали обновление. А кто прислал? Crestron? Есть возможность поделиться? Kaveckiy пишет: 3. Покажите проект KNX, может там косяки. Да и проект simpl тоже хотелось бы видеть. Вот такой возможностью не обладаю, к сожалению. Проект коммерческий и начальство ругается. Не знаю, почему. Извините. Хотя проверял и со стандартным проектом, который выложен в appmarket'е к CI-KNX. Честно говоря, немного совестно за то, что прошу помощи, а сам отвечаю достаточно абстрактно. Надеюсь, Вы меня поймете. Вот, что пишет контроллер перед "падением": Module S-8.4.10.1:S-1 : volume at line 277: Overflow. Capacity = 100. Length = 101 Error: splusmanagerapp.exe [App 1] # 2016-07-27 19:57:57 # Module S-8.4.10.2:S-1 : volume at line 277: Overflow. Capacity = 100. Length = 101 Error: splusmanagerapp.exe [App 1] # 2016-07-27 19:57:57 # Module S-8.4.10.3:S-1 : volume at line 277: Overflow. Capacity = 100. Length = 101 Error: splusmanagerapp.exe [App 1] # 2016-07-27 19:57:57 # Module S-8.4.10.4:S-1 : volume at line 277: Overflow. Capacity = 100. Length = 101 Может быть, в этом проблема?

ph1l74: Так, с ErrorLog'ом разобрался. Это из-за самодельного модуля обработки звука. Попробую его отключить.

ph1l74: Вот это интересная штука: Error: splusmanagerapp.exe [App 1] # 2016-07-27 23:04:11 # SplusManagerApp: Got unhandled exception System.IndexOutOfRangeException: IndexOutOfRangeException at CrestronKNXLibrary.Communication.CIKNXCommunication.ProcessGatewayMessage(Byte[] data) at CrestronKNXLibrary.Communication.CIKNXCommunication.ProError: splusmanagerapp.exe # 2016-07-27 23:04:11 # Exception: App 1 - SPLUS Repriotizer Thread Exiting - System.Threading.ThreadAbortException: ThreadAbortException at System.Threading.EventWaitHandle.WaitOne() at Amib.Threading.SmartThreadPool.u() Error: nk.exe # 2016-07-27 23:04:33 # WDG: \SIMPL\app01 shutting down unexpectedly. Do Not Start=1 Error: LogicEngine.exe [App 1] # 2016-07-27 23:04:33 # Simpl Plus Manager terminated. Restarting program Info: LogicEngine.exe [App 1] # 2016-07-27 23:04:33 # Stopping Program. Notice: TLDM.exe # 2016-07-27 23:04:34 # **Program 1 Stopped**

Valera: marty_iron пишет: Но встала задача, чтобы у трех выключателей сразу эта уставка если меняется на одном - меняться на всех... Я так понимаю что они в одном помещении? Если так то и значения текущей температуры и уставки должны совпадать. Сейчас не могу посмотреть проект с B.IQ, но на аналогичных KNX термостатах есть объекты именно для настройки схемы: 1. выключатель ведущий 2. остальные ведомые 3. среднее значение текущей температуры берётся исходя из значений всех выключателей 4. уставка меняется на всех сразу, и не важно из крестрона Вы отправили команду или нажали кнопку на выключателе Кроме того можете использовать блок логики, если таковой есть в проекте. Игорь K. пишет: Никак. Не установить по шине уставки, на записать их в эти настенные "кнопки", можно только считывать. Или KNX или Crestron. Если что-то не получается нужно убедить себя что ничего нельзя сделать? :)

Игорь K.: Valera пишет: Если что-то не получается нужно убедить себя что ничего нельзя сделать? :) Нет, это не так. Касалось отельного варианта реализации. Вашего личного мнения я не спрашивал, надеюсь вам тоже понятно.

Kaveckiy: ph1l74 пишет: Нет, DHCP отключен, статические адреса прописаны, дублирования нет. Отключите от этой сети проц и CI-KNX и запустите сканер сети - найдутся такие адреса или нет? Просто чтобы отмести этот вариант. ph1l74 пишет: Не знаю, как это поможет, но попробую. Правда, будет трудно реализовать, так как очень уж далеко от контроллера находится кондиционер. Попробуйте, это исключит влияние IP сети на коммуникацию между процом и шлюзом. Какая разница где установлен кондиционер, важно где установлен проц и шлюз - именно их нужно соединить напрямую. ph1l74 пишет: А кто прислал? Crestron? Есть возможность поделиться? Да, я же пишу, трублю прислали. Есть, пишите электронку. ph1l74 пишет: Вот такой возможностью не обладаю, к сожалению. Проект коммерческий и начальство ругается. Не знаю, почему. Извините. Ну тогда пусть начальство помогает Вам отлавливать косяки - здесь вроде мысли читать пока никто не умеет.

ph1l74: Kaveckiy пишет: Ну тогда пусть начальство помогает Вам отлавливать косяки - здесь вроде мысли читать пока никто не умеет. Я, вроде, прислал ErrorLog, этого недостаточно? Ошибка вполне конкретная. Вопрос -- как её исправить?

ph1l74: Kaveckiy пишет: Да, я же пишу, трублю прислали. Есть, пишите электронку. Ответил в ЛС.

Kaveckiy: ph1l74 чтобы найти причину этой ошибки erroк log не достаточно. Причин может быть масса. Для диагностики проблемы обычно идут последовательно от начала к концу или от конца к началу пути прохождения сигнала. У меня когда-то валился процессор когда я обращался к элементу связи в CI-KNX который забыл активировать (вернее активировал но забыл залить в устройство). И это только один из возможных вариантов.

Игорь K.: Виноват всегда программист. Что-то не учел, где-то фатально ошибся. Берите управление на себя и все получится. Ниже по ссылке обсуждение и ссылки на 3 Демо версию: http://crestron.borda.ru/?1-0-0-00000946-000-0-0-1449575012

terkaxost: Crestron CP3. CI-KNX. Версия модулей v.3.1 и v.3.2. 4 Byte модуль. Пример 1. Отправляю из KNX значение = 1. В формате 14.* 4-byte float value это = 3F 80 00 00. В Crestron на выходах: Value_HightBytes_Analog = 0 = 00 00 Value_LowBytes_Analog = 32831 = 80 3F FP_Value_Text = 0 Пример 2. Отправляю из KNX те же байты, но в обратном порядке 00 00 80 3F в Crestron вижу: Value_HightBytes_Analog = 16256 = 3F 80 Value_LowBytes_Analog = 0 = 00 00 FP_Value_Text = 1.000 Аналогично для любого другого значения. На лицо ошибка в обработке. Дальше Simpl+ не знаком. Поставил Visual Studio, но понимаю, что не понимаю. На блю-саппорт написал, но как всегда сроки. Может ли кто-то помочь? Как я понимаю, если знать, где править, задача не сильно сложная.

eoulianov: Это не в S+, а в S# - там нет исходника. Самое быстрое - это обменять байты в уже полученном Value_HightBytes_Analog - [pre2]ANALOG_INPUT in; ANALOG_OUTPUT swap; change in { swap=in {{ 8; }[/pre2] я пользую 3.2, но пока везёт на простые типы - 1, 4, 8, 16 бит и температуры в EIS5 тоже 16 бит.

terkaxost: Все тот же 4Byte модуль. Отправка значений из Crestron в KNX тоже с ошибками LowBytes уходят на места 3 и 4 Байта в KNX Вне зависимости от значения LowBytes и HightBytes, в KNX на места 1 и 2 Байта уходит: 00 00 Скептик во мне говорит, что мало вероятно, чтобы никто до сих пор не сталкивался. Параноик добавляет, что косячу я. Коллеги, нужен свежий взгляд.

terkaxost: Проблемы поменять байты местами нет, можно даже через готовые Analog To Digital и обратно Digital To Analog. Но модуль и со стороны аналоговых входов имеет проблемы. Любое содержимое HighBytes в KNX уходит нулями. Как следствие, на строке FP_Value_Text, после отправки тоже не то, что требуется. С другой стороны, задача только забирать из KNX. И проблему можно решить, если в среде Simple+ можно конвертнуть по известным правилам: https://ru.wikipedia.org/wiki/%D0%A7%D0%B8%D1%81%D0%BB%D0%BE_%D0%BE%D0%B4%D0%B8%D0%BD%D0%B0%D1%80%D0%BD%D0%BE%D0%B9_%D1%82%D0%BE%D1%87%D0%BD%D0%BE%D1%81%D1%82%D0%B8 В Simple+ можно работать с отрицательными степенями? Или может есть готовые функции представления чисел с плавающей точкой?

DmitriiP: убедитесь что у вас clz от версии 3.2 а не от 3.1, перед рекомпиляцией удалите папку SPlsWork (иногда косячит компилятор) с (little-endian) <-> (big-endian) в 3.1 косяк в 3.1 CrestronKNXLibrary.dll internal override int ConvertFourByteData(byte[] data) { return (int) BitConverter.ToUInt32(data, 0); } поэтому выдаёт ерись в 3.2 они это исправили internal override int ConvertFourByteData(byte[] data) { return (int) BitConverter.ToUInt32(data.Reverse().ToArray(), 0); }

terkaxost: Подтверждаю, в версии 3.2, описанных багов нет. Моя ошибка была, что заменил только .umc, .ush, .usp фалы 4Byte модуля.



полная версия страницы