We have moved our support service to a new technical support system. Since 17.01.2022, we have disabled the ability to create appeals through the userecho personal account. Now all requests are processed via mail to support@iridi.com .
Thank you for your understanding and have a nice day.
Geen vergelijkbare onderwerpen gevonden.
0
Beantwoord
Mute для KNX
Сергей Штирбу 10 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
1
Mute для KNX как можно реализовать на 1 байте кнопку триггер:
1) нажатие выключили (свет, звук.),
2) нажатие включили в тоже значение из которого выключили
1) нажатие выключили (свет, звук.),
2) нажатие включили в тоже значение из которого выключили
Antwoord
Ekaterina (head of support)
10 jaar geleden
Здравствуйте, Сергей
Для создания триггера, который переключается из нуля в последнее принятое состояние, используйте скрипт, приведенный в проекте-примере:
KNX_SmartTrigger.irpz
Проект подходит для любого драйвера, не только KNX. Чтобы он начал работать, настройте KNX, его команды и каналы, создайте кнопки, которые будут служить в качестве "умных" триггеров.
Кнопка должна иметь тип Button, к ней должен быть привязан канал обратной связи от управляемого адреса, чтобы она отображала реальное состояние адреса.
Далее, откройте редактор скриптов - [JS], и создайте в нижней части файла скрипта описание всех "умных" триггеров так же, как это сделано в примере.
Для каждого триггера описывается:
Для создания триггера, который переключается из нуля в последнее принятое состояние, используйте скрипт, приведенный в проекте-примере:
KNX_SmartTrigger.irpz
Проект подходит для любого драйвера, не только KNX. Чтобы он начал работать, настройте KNX, его команды и каналы, создайте кнопки, которые будут служить в качестве "умных" триггеров.
Кнопка должна иметь тип Button, к ней должен быть привязан канал обратной связи от управляемого адреса, чтобы она отображала реальное состояние адреса.
Далее, откройте редактор скриптов - [JS], и создайте в нижней части файла скрипта описание всех "умных" триггеров так же, как это сделано в примере.
Для каждого триггера описывается:
- имя драйвера, с которым связан триггер
- имя команды, куда триггер отправляет данные (оно должно быть таким же, как имя канала обратной связи, откуда триггер получает инофрмацию о текущем состоянии управляемого адреса)
- путь к элементу-триггеру (страница, имя элемента)
- значение триггера по умолчанию. После запуска проекта, если начальное значение адреса было равно нулю, при нажатии на триггер он установит это значение.
trigger(IR.GetDevice("KNX Router (KNXnet/IP)"), // драйвер "Address 1", // адрес KNX (Command = Feedback) IR.GetItem("Page 1").GetItem("Item 2"), // кнопка-триггер 50) // значение триггера по-умолчаниючтобы создать другой триггер, вам нужно скопировать только этот блок данных и заменить необходимые параметры - адрес элемента, адрес KNX, имя драйвера.
0
Beantwoord
Анимация. Повороты
Доброй ночи!
Есть задача поворачивать элемент то влево, то вправо в зависимости от нажатия кнопки слева или справа соответствнно. Планировал реализовать данную функцию при помощи анимации.
Сделал все по инструкции описанной здесь.
Код получился вот такой:
function Turn()
{
var Button1 = IR.GetItem("Page 1").GetItem("Item 2");
var Button2 = IR.GetItem("Page 1").GetItem("Item 3");
var Arrow = IR.GetItem("Page 1").GetItem("Item 1");
IR.AddListener(IR.EVENT_ITEM_PRESS,Button1,function()
{
Animation([Rotate(90)], Arrow, 500, NOT_DELAY, NOT_LOOP, LINEAR);
});
IR.AddListener(IR.EVENT_ITEM_PRESS,Button2,function()
{
Animation([Rotate(-90)], Arrow, 500, NOT_DELAY, NOT_LOOP, LINEAR);
});
}
Есть задача поворачивать элемент то влево, то вправо в зависимости от нажатия кнопки слева или справа соответствнно. Планировал реализовать данную функцию при помощи анимации.
Сделал все по инструкции описанной здесь.
Код получился вот такой:
function Turn()
{
var Button1 = IR.GetItem("Page 1").GetItem("Item 2");
var Button2 = IR.GetItem("Page 1").GetItem("Item 3");
var Arrow = IR.GetItem("Page 1").GetItem("Item 1");
IR.AddListener(IR.EVENT_ITEM_PRESS,Button1,function()
{
Animation([Rotate(90)], Arrow, 500, NOT_DELAY, NOT_LOOP, LINEAR);
});
IR.AddListener(IR.EVENT_ITEM_PRESS,Button2,function()
{
Animation([Rotate(-90)], Arrow, 500, NOT_DELAY, NOT_LOOP, LINEAR);
});
}
0
Beantwoord
IR.EVENT_TAG_CHANGE срабатывает независимо от изменения токена
Алексей Цыганков 9 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
3
Добрый день, помогите, пожалуйста, разобраться с событием EVENT_TAG_CHANGE. В моем проекте данное событие срабатывает при обновлении данных драйвера, а не при изменении токена :(
Для чистоты эксперимента создал пустой проект, добавил драйвер Modbus TCP to RTU, добавил 1 фидбэк, в скрипте прописал:
[05-06-2015 12:14:54.054] INFO Channel 1=0
[05-06-2015 12:14:54.626] INFO Channel 1=0
[05-06-2015 12:14:55.105] INFO Channel 1=0
[05-06-2015 12:14:55.667] INFO Channel 1=0
....
Как видно, токен не меняется, а событие всё равно вызывается каждые 500мс (Update Time в настройках драйвера).
Для чистоты эксперимента создал пустой проект, добавил драйвер Modbus TCP to RTU, добавил 1 фидбэк, в скрипте прописал:
IR.AddListener (IR.EVENT_TAG_CHANGE, IR.GetDevice("Modbus TCP to RTU"), function(name,value) {В итоге в логе вижу:
IR.Log(name + "=" + value);
})
[05-06-2015 12:14:54.054] INFO Channel 1=0
[05-06-2015 12:14:54.626] INFO Channel 1=0
[05-06-2015 12:14:55.105] INFO Channel 1=0
[05-06-2015 12:14:55.667] INFO Channel 1=0
....
Как видно, токен не меняется, а событие всё равно вызывается каждые 500мс (Update Time в настройках драйвера).
0
Beantwoord
Coolmaster 1000D -Daikin
Павел777 10 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
2
На какие модели бытовых кондиционеров рассчитан этот модуль? У Дайкина бытовые сплиты, оснащенные адаптерами KRP928 не поддерживают управление скоростью вентилятора и контроль температуры помещения (источники- мануалы Сoolmaster 1000D, Daikin KRP928) . А в модуле есть элементы управления и контроля этих функций, более, того в характеристиках модуля указано:
- Управление скоростью вентилятора с обратной связью
- Обратная связь от Room и Set Temperature.
У меня вопрос: для каких кондиционеров создавался этот модуль, с какими кондиционерами он тестировался, можно ли, используя этот модуль с бытовыми кондиционерами серии СПЛИТ обойти вышеупомянутые ограничения?
- Управление скоростью вентилятора с обратной связью
- Обратная связь от Room и Set Temperature.
У меня вопрос: для каких кондиционеров создавался этот модуль, с какими кондиционерами он тестировался, можно ли, используя этот модуль с бытовыми кондиционерами серии СПЛИТ обойти вышеупомянутые ограничения?
0
Beantwoord
Отрицательное десятичное число в Javascript.
ai-systems@bk ru 11 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
3
Здравствуйте!
Есть вопрос по преобразованию типов.
По RS232 получаем значение температуры с датчика в формате T=XY.
XY это шестнадцатиричное представление температуры в грудусах цельсия.
Т.е например 26 градусов это 1А и.т.д.
Вот функция:
При положительных значениях - все выводится верно.
Но если вместо 1A (26) будет E6 (-26), функция возвращает 230.
Как получить правильные отрицательные значения?
Есть вопрос по преобразованию типов.
По RS232 получаем значение температуры с датчика в формате T=XY.
XY это шестнадцатиричное представление температуры в грудусах цельсия.
Т.е например 26 градусов это 1А и.т.д.
Вот функция:
llsTemphex = Data.charAt(9) + Data.charAt(10)<br>llsTemp = parseInt(llsTemphex, 16)<br>
При положительных значениях - все выводится верно.
Но если вместо 1A (26) будет E6 (-26), функция возвращает 230.
Как получить правильные отрицательные значения?
0
Beantwoord
Удалённое обновление проекта
Алай Евгений 9 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
1
Здравствуйте.
Возникла необходимость удалённого обновления проекта на iPhone клиента.
Есть статический IP-адрес, в роутере прописал переадресацию порта 10000 на комп с установленным Transfer, которым обычно его (iPhone клиента) и обновляю. Возможно сконнектить удалённый iPhone для обновления проекта?
0
Beantwoord
при запуске приложения Иридиум выключается свет (KNX)
Максим 10 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
1
Здравствуйте,
Есть вопрос, при каждом запуске приложения в комнате выключается свет, где ошибка?
Есть вопрос, при каждом запуске приложения в комнате выключается свет, где ошибка?
Antwoord
Ekaterina (head of support)
10 jaar geleden
Здравствуйте, Максим
Удалите из проекта Иридиум ссылки на групповые адреса, связанные не с исполняющими устройствами в шине KNX, а с клавишными выключателями, которые тоже управляют нагрузкой.
Второй вариант: в ETS убрать галочки Read в настройках групповых адресов клавишных выключателей.
Проблема в том, что при запуске, иридиум опрашивает состояние всех добавленных в проект групповых адресов. Среди них оказываются и адреса выключателей. Если у выключателей активна галочка Read (возможность принудительно опросить адрес), то выключатель отвечает в шину о своем состоянии. Исполняющее устройство воспринимает этот ответ как нажатие на клавишу и свет выключается.
Это осбенность работы шины, которую нужно учитвать или в ETS, или в проекте Иридиум.
В любом случае, удалить лишние адреса из проекта Иридиум будет очень полезно, т.к. они создают лишнюю нагрузку на шину при запуске проекта.
Удалите из проекта Иридиум ссылки на групповые адреса, связанные не с исполняющими устройствами в шине KNX, а с клавишными выключателями, которые тоже управляют нагрузкой.
Второй вариант: в ETS убрать галочки Read в настройках групповых адресов клавишных выключателей.
Проблема в том, что при запуске, иридиум опрашивает состояние всех добавленных в проект групповых адресов. Среди них оказываются и адреса выключателей. Если у выключателей активна галочка Read (возможность принудительно опросить адрес), то выключатель отвечает в шину о своем состоянии. Исполняющее устройство воспринимает этот ответ как нажатие на клавишу и свет выключается.
Это осбенность работы шины, которую нужно учитвать или в ETS, или в проекте Иридиум.
В любом случае, удалить лишние адреса из проекта Иридиум будет очень полезно, т.к. они создают лишнюю нагрузку на шину при запуске проекта.
0
Beantwoord
формирование OSC (OpenSoundControl) комманд ?
Как преобразовать значение из элемента Уровень (float32) в формат HEX ?
Т.е. мне нужно сформировать команду в формате OSC: /volume,f XX XX XX XX, где ХХ - это значение взятое из элемента Уровень в HEX формате. Диапазон значений от -40,00 до 12,00 (числа с плавающей запятой).
Т.е. мне нужно сформировать команду в формате OSC: /volume,f XX XX XX XX, где ХХ - это значение взятое из элемента Уровень в HEX формате. Диапазон значений от -40,00 до 12,00 (числа с плавающей запятой).
Antwoord
Sergey (expert)
9 jaar geleden
Добрый день, Ramil Vafin!
Это связано с отправкой данных в виде строки, требуется вместо этого сформировать массив байт значений.
Это связано с отправкой данных в виде строки, требуется вместо этого сформировать массив байт значений.
var hex = IEEE754_DecToHEX(this.Value);
// Конвертируем в массив байтов
var hexArray = [];
hexArray[0] = parseInt('0x' + hex.charAt(0) + hex.charAt(1), 16);
hexArray[1] = parseInt('0x' + hex.charAt(2) + hex.charAt(3), 16);
hexArray[2] = parseInt('0x' + hex.charAt(4) + hex.charAt(5), 16);
hexArray[3] = parseInt('0x' + hex.charAt(6) + hex.charAt(7), 16);
// Выводим в лог
IR.Log(hex);
IR.Log(hexArray);
var Packet = "/value"; // начало пакета
var end = "\r\n"; // конец пакета
hexArray.unshift(0x00); // Два символа нуля после начала пакета
hexArray.unshift(0x00);
hexArray.unshift(Packet); // Добавляем начало пакета
hexArray.push(end); // Добавляем конец пакета
// отправляем
IR.GetDevice("AV & Custom Systems (TCP)").Send(hexArray);
0
Voltooid
передача от iRidium на удаленное устройство
BlackAngel 10 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
1
взят один из примеров с сайта iRidium где есть получение данных о погоде (YahooMetro). Есть окно где отображается температура (отдельное окошко с получением данных с сервера Yahoo именно температуры) реализовано через скрипт. Скажите возможно ли эти данные передать на устройство по Modbus. Если да, то опишите каким образом.
P.S. в проекте папка content, далее папка weather и в ней попап окно weather, в этом попап есть обьект chil. В скрипте chill упоминается только в таких командах:
.......
var iChill = iPopup.GetItem("Chill");
.......
.......
iChill.Text = xml.rss.channel ["yweather:wind"]["@chill"] + "°" + xml.rss.channel ["yweather:units"]["@temperature"];
P.S. в проекте папка content, далее папка weather и в ней попап окно weather, в этом попап есть обьект chil. В скрипте chill упоминается только в таких командах:
.......
var iChill = iPopup.GetItem("Chill");
.......
.......
iChill.Text = xml.rss.channel ["yweather:wind"]["@chill"] + "°" + xml.rss.channel ["yweather:units"]["@temperature"];
0
Beantwoord
Работа с JSON
Vladimir Muravyev 10 jaar geleden
in Tips and Tricks
•
bijgewerkt door Aleksandr Romanov (CTO) 7 jaar geleden •
2
Существует ли функция которая позволит получить количество обьектов в массиве JSON который пришел от устройства? Сейчас я решаю проблему подсчетом повторяющихся слов с помощью функции indexof (Запрос отправляю видеорегистратору, и приходит ответ с описанием свойств камер подключенных к NVR, это может быть 1 камера может быть 15 камер, хочу забрать эту информацию в двухмерный массив, без точного знания количества элементов массива (камер), не могу).
Customer support service by UserEcho