Страница 3 из 8

Re: ioBroker и Мега

Добавлено: 03 ноя 2016, 14:11
Haus
Evgeny_nd писал(а):Что касается драйвера для новой меги. У меня есть новая мега в эксплуатации и ее драйвер (Mega-D Adapter) ioBroker считал без проблем.
Вы па пробуйте настроить все возможные настройки на сегодняшний день на Megad-2561 (7 шим портов, DS2413, WBUS....), и считать. Драйвер Megad-328 как и прошивка будут правится незначительна, а драйверу Megad-2561 предстоит развиваться параллельно развитию проекта. Буду рад любым наблюдениям и замечаниям пользователей Megad-2561 в ioBroker http://forum.iobroker.net/viewtopic.php?f=16&t=4076

Re: ioBroker и Мега

Добавлено: 03 ноя 2016, 20:18
Evgeny_nd
Andrey2509 писал(а):
Evgeny_nd писал(а):Andrey2509, а вы давно используете систему в работе?
Могли бы скрипты выложить для примера? Я думаю что тем кто только разбирается они бы сильно помогли....
Скрипты чего? У меня была цель удалённое управление дачей. Часть функционала понятна по скриншотам...
Скрипты по которым например отопление включается или те которые обрабатывают события сигнализации.

Re: ioBroker и Мега

Добавлено: 03 ноя 2016, 21:28
Haus
Evgeny_nd писал(а):
Andrey2509 писал(а):
Evgeny_nd писал(а):Andrey2509, а вы давно используете систему в работе?
Могли бы скрипты выложить для примера? Я думаю что тем кто только разбирается они бы сильно помогли....
Скрипты чего? У меня была цель удалённое управление дачей. Часть функционала понятна по скриншотам...
Скрипты по которым например отопление включается или те которые обрабатывают события сигнализации.
Готовых под вас найти будет трудно, но на основе множества примеров подправив под себя можно.
Там даже есть скрипт контроля отопления сделанный(сырой и с взаимодействием с базой demo) на основе demo Андрея. Новую версию выложу позже чисто под ioBroker.
http://forum.iobroker.net/viewforum.php?f=26
http://forum.iobroker.net/viewforum.php?f=21
http://www.iobroker.net/?page_id=2786&lang=de

Re: ioBroker и Мега

Добавлено: 07 ноя 2016, 06:26
Evgeny_nd
Спасибо большое!

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 17:08
Evgeny_nd
Bluefox писал(а):
Evgeny_nd писал(а):Уважаемые коллеги,
кто может подсказать как в ioBroker сделать кнопку, аналогично как это сделано в OpenHAB?
Т.е. управляется она через http запросы?
Switch Out_Heat_Sw1 "Обогрев канализационных труб" <switch> (Heat_Switches, Switches_Set) {http=">[ON:GET:http://192.168.4.21/sec/?sw=5-1] >[OFF:GET:http://192.168.4.21/sec/?sw=5-0]"}

И если сформулировать вопрос более в общем.
То как в ioBroker работать (через какие драйвера и виджеты) с оборудованием через http запросы? Считывать и отображать статус, включать, выключать и т.д.
Надо создать скрипт в драйвере Javascript:

Код: Выделить всё

var request = require('request');

createState('heating', {type: "boolean", name: "обогрев"}, function  () {
    on({id: "heating", change: 'ne', ack: false}, function (obj) {
      request('http://192.168.1.214/sec/?cmd=a:' + (obj.state.val === 'false' || obj.state.val === false ? '0' : '1'));
    });
});
И потом можно везде использовать javascript.0.heating переменную.
BlueFox, это работает, спасибо за помощь. А как быть со статусом или температурой например?
Когда получаем значение строкой:
http://192.168.4.21/sec/?js=:300000:REGEX(.*?pst......................(....).*)
или
http://192.168.4.16/sec/?pt=6&cmd=get:60000:REGEX(.*?([0-9]+).*)
Как полученный ответ передать в переменную ioBroker?

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 18:18
bondrogeen
BlueFox, это работает, спасибо за помощь. А как быть со статусом или температурой например?
Когда получаем значение строкой:
http://192.168.4.21/sec/?js=:300000:REGEX(.*?pst......................(....).*)
или
http://192.168.4.16/sec/?pt=6&cmd=get:60000:REGEX(.*?([0-9]+).*)
Как полученный ответ передать в переменную ioBroker?

Код: Выделить всё

var request = require('request');
createState('Test.test1', '');         //создаем переменную test1 в iobroker 

request("http://192.168.1.14/sec/?pt=6&cmd=get", function(error, response, body){  
    if(error) { 
        log(error);  // если ошибка
  } 
    else{
      var test1 = body; 
      setState("javascript.0.Test.test"/*Test.test*/, test1,true/*ack*/);  // записывает значения test1 в переменную iobroker
    log (body);
        
    }
}); 

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 19:52
Evgeny_nd
Получилось!
Спасибо большое.
А как все-таки решается вопрос по тому чтобы переменные в базе хранить не в привязке к объектам (например Megad.0.p17), а к их названиям?
Вот о какой ситуации идет речь:
У меня сейчас временный датчик температуры в доме будет привязан к переменной (которую я создал из скрипта): javascript.0.HomeTemp
Я настрою в ее свойствах сохранение ее значений в базу. Затем позже датчик будет привязан к порту меги, которая придет и будет установлена чуть позже. И будет она установлена на переменную типа Megad.15.P2.
А как быть с теми значениями, которые будут хранится месяц или более? Потом их использовать не получится и статистика начнется с начала...
Я пока вижу один способ, не работать напрямую с портами меги, а заводить значения (свои) и скриптом считывать значения с портов меги в них и хранить их, но это при наличии драйверов меги с нормальным функционалом неправильно.
Кто-нибудь задумывался над этим вопросом или нет?

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 20:17
bondrogeen
Evgeny_nd писал(а):Получилось!
Спасибо большое.
А как все-таки решается вопрос по тому чтобы переменные в базе хранить не в привязке к объектам (например Megad.0.p17), а к их названиям?
Вот о какой ситуации идет речь:
У меня сейчас временный датчик температуры в доме будет привязан к переменной (которую я создал из скрипта): javascript.0.HomeTemp
Я настрою в ее свойствах сохранение ее значений в базу. Затем позже датчик будет привязан к порту меги, которая придет и будет установлена чуть позже. И будет она установлена на переменную типа Megad.15.P2.
А как быть с теми значениями, которые будут хранится месяц или более? Потом их использовать не получится и статистика начнется с начала...
Я пока вижу один способ, не работать напрямую с портами меги, а заводить значения (свои) и скриптом считывать значения с портов меги в них и хранить их, но это при наличии драйверов меги с нормальным функционалом неправильно.
Кто-нибудь задумывался над этим вопросом или нет?

Как по мне так это дополнительные сложности, когда все настроено будет у Вас на постоянной основе, тогда и на начинайте хранить историю.

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 20:27
Evgeny_nd
Вы от части правы, но в любом случае по ходу строительства и эксплуатации оборудование и подключение к ним датчиков может изменится. И данные терять очень не хотелось бы.

Re: ioBroker и Мега

Добавлено: 10 ноя 2016, 20:37
Haus
Evgeny_nd писал(а):Получилось!
Спасибо большое.
А как все-таки решается вопрос по тому чтобы переменные в базе хранить не в привязке к объектам (например Megad.0.p17), а к их названиям?
Вот о какой ситуации идет речь:
У меня сейчас временный датчик температуры в доме будет привязан к переменной (которую я создал из скрипта): javascript.0.HomeTemp
Я настрою в ее свойствах сохранение ее значений в базу. Затем позже датчик будет привязан к порту меги, которая придет и будет установлена чуть позже. И будет она установлена на переменную типа Megad.15.P2.
А как быть с теми значениями, которые будут хранится месяц или более? Потом их использовать не получится и статистика начнется с начала...
Я пока вижу один способ, не работать напрямую с портами меги, а заводить значения (свои) и скриптом считывать значения с портов меги в них и хранить их, но это при наличии драйверов меги с нормальным функционалом неправильно.
Кто-нибудь задумывался над этим вопросом или нет?
Как вариант, если конкретно знаете порт меги к которому будет привязан датчик то установив драйвер вручную сконфигурируйте и сохраните настройки, всё теперь драйвер можно отключать и в эти переменные любым для вас удобным способом вписывать значение. Внимание очерёдность портов очень важна
Также можно создать свои переменные и в них вписывать значение с меги

Код: Выделить всё

createState('tempOutside','');
on({id: 'owfs.0.wires.temp_out', change: 'any'}, function (obj) {
         setState('javascript.0.tempOutside', parseFloat(obj.newState.val).toFixed(0));
});

Re: ioBroker и Мега

Добавлено: 11 ноя 2016, 08:02
Andrey2509
Альтернативный вариант - узнать ID старого (OLDID) и нового (NEWID) объектов в sql таблице БД :
SELECT * FROM iobroker.datapoints;
Затем в таблице iobroker.ts_number поменять старый ID на новый ID:
UPDATE iobroker.ts_number SET ID="NEWID" WHERE ID ="OLDID";
Не проверял, но должно сработать.

Re: ioBroker и Мега

Добавлено: 11 ноя 2016, 11:39
Bluefox
Haus писал(а):
Evgeny_nd писал(а):Получилось!
Спасибо большое.
А как все-таки решается вопрос по тому чтобы переменные в базе хранить не в привязке к объектам (например Megad.0.p17), а к их названиям?
Вот о какой ситуации идет речь:
У меня сейчас временный датчик температуры в доме будет привязан к переменной (которую я создал из скрипта): javascript.0.HomeTemp
Я настрою в ее свойствах сохранение ее значений в базу. Затем позже датчик будет привязан к порту меги, которая придет и будет установлена чуть позже. И будет она установлена на переменную типа Megad.15.P2.
А как быть с теми значениями, которые будут хранится месяц или более? Потом их использовать не получится и статистика начнется с начала...
Я пока вижу один способ, не работать напрямую с портами меги, а заводить значения (свои) и скриптом считывать значения с портов меги в них и хранить их, но это при наличии драйверов меги с нормальным функционалом неправильно.
Кто-нибудь задумывался над этим вопросом или нет?
Как вариант, если конкретно знаете порт меги к которому будет привязан датчик то установив драйвер вручную сконфигурируйте и сохраните настройки, всё теперь драйвер можно отключать и в эти переменные любым для вас удобным способом вписывать значение. Внимание очерёдность портов очень важна
Также можно создать свои переменные и в них вписывать значение с меги

Код: Выделить всё

createState('tempOutside','');
on({id: 'owfs.0.wires.temp_out', change: 'any'}, function (obj) {
         setState('javascript.0.tempOutside', parseFloat(obj.newState.val).toFixed(0));
});
Не советую использовать toFixed так как выходным типом является строка. Лучше Math.round

Re: ioBroker и Мега

Добавлено: 11 ноя 2016, 11:43
Bluefox
Evgeny_nd писал(а):Вы от части правы, но в любом случае по ходу строительства и эксплуатации оборудование и подключение к ним датчиков может изменится. И данные терять очень не хотелось бы.
Вот тут обсуждается как раз такое решение http://forum.iobroker.net/viewtopic.php?f=26&t=4111

Я даже подумал, что это один и тот же человек спрашивает.

Re: ioBroker и Мега

Добавлено: 11 ноя 2016, 19:27
Evgeny_nd
Bluefox писал(а):
Evgeny_nd писал(а):Вы от части правы, но в любом случае по ходу строительства и эксплуатации оборудование и подключение к ним датчиков может изменится. И данные терять очень не хотелось бы.
Вот тут обсуждается как раз такое решение http://forum.iobroker.net/viewtopic.php?f=26&t=4111

Я даже подумал, что это один и тот же человек спрашивает.
Изображение почитал, действительно интересный и логичный подход разделить логику и физические устройства, но я воспользуюсь способом обновления данных в MySQL предложенный выше. Т.к. делать это придётся в единичных случаях Изображение.

Re: ioBroker и Мега

Добавлено: 19 ноя 2016, 20:42
Evgeny_nd
Haus, а этот скрипт в первом сообщении функциональный?
http://forum.iobroker.net/viewtopic.php ... 2df6138d2b

Re: ioBroker и Мега

Добавлено: 19 ноя 2016, 23:25
Haus
Evgeny_nd писал(а):Haus, а этот скрипт в первом сообщении функциональный?
http://forum.iobroker.net/viewtopic.php ... 2df6138d2b
Там скорей полуфабрикат на javascript на основе demo Андрея, то есть даже не копия. В скрипте используются запросы в базу параллельно работающую у меня на другом сервере (основном) сильно переделанная demo Андрея. Сейчас потихоньку переделываю чисто под ioBroker с его базами, новую версию выложу позже.
У Андрея в demo за счёт CMS можно настроить несколько разнообразных контуров, под различные системы. В ioBroker аналогичное(универсальность) можно сделать наверно через драйвер (настройки разных контуров, подвязка датчиков, насосов, актуаторов, трёх ходовых....) но это пока мысли в слух.

Re: ioBroker и Мега

Добавлено: 20 ноя 2016, 12:00
Bluefox
За последний месяц в iob появилось много новых драйверов:

- Radar, для слежения за устройствами по пингу или Bluetooth
- probemon для слежения за устройствами по wifi пакетам
- upnp для управления и получения информации от устройств поддерживающих UPnP
- km200, xs1 понятия не имею для чего они :)
- rflink управление и принятие информации через ардуину с датчиков и устройств по 433,868 MHz
- foobar2000 управление плеером
- Lgtv управление телевизором lg
- pushsafer как pushover для отсылки сообщений на мобильный,
- lightify управление лампочками
- wm-bus, Wireless M-Bus
- wifilight, управление лампочками
- hid HID devices e.g. Apple Remote
- find-my-iphone служба apple
- tr-064 для рутеров fritz.box
- nuimo для устройств nuimo

И из них я написал только один. Все остальные от сообщества.

В разработке homekit2, ScriptGui, мега 2561 и, наверное, ещё десяток о которых я не знаю.

Re: ioBroker и Мега

Добавлено: 20 ноя 2016, 20:05
Evgeny_nd
Haus писал(а):
Evgeny_nd писал(а):Haus, а этот скрипт в первом сообщении функциональный?
http://forum.iobroker.net/viewtopic.php ... 2df6138d2b
Там скорей полуфабрикат на javascript на основе demo Андрея, то есть даже не копия. В скрипте используются запросы в базу параллельно работающую у меня на другом сервере (основном) сильно переделанная demo Андрея. Сейчас потихоньку переделываю чисто под ioBroker с его базами, новую версию выложу позже.
У Андрея в demo за счёт CMS можно настроить несколько разнообразных контуров, под различные системы. В ioBroker аналогичное(универсальность) можно сделать наверно через драйвер (настройки разных контуров, подвязка датчиков, насосов, актуаторов, трёх ходовых....) но это пока мысли в слух.
Буду тогда потихоньку пилить свою Изображение

Re: ioBroker и Мега

Добавлено: 20 ноя 2016, 20:06
Evgeny_nd
Bluefox писал(а):За последний месяц в iob появилось много новых драйверов:

- Radar, для слежения за устройствами по пингу или Bluetooth
- probemon для слежения за устройствами по wifi пакетам
- upnp для управления и получения информации от устройств поддерживающих UPnP
- km200, xs1 понятия не имею для чего они :)
- rflink управление и принятие информации через ардуину с датчиков и устройств по 433,868 MHz
- foobar2000 управление плеером
- Lgtv управление телевизором lg
- pushsafer как pushover для отсылки сообщений на мобильный,
- lightify управление лампочками
- wm-bus, Wireless M-Bus
- wifilight, управление лампочками
- hid HID devices e.g. Apple Remote
- find-my-iphone служба apple
- tr-064 для рутеров fritz.box
- nuimo для устройств nuimo

И из них я написал только один. Все остальные от сообщества.

В разработке homekit2, ScriptGui, мега 2561 и, наверное, ещё десяток о которых я не знаю.
BlueFox, а почему после переноса данных на другой физический сервер часть драйверов отображается так как на картинке?
Изображение

Re: ioBroker и Мега

Добавлено: 20 ноя 2016, 22:26
aurodionov
Нажать кнопку обновить

Пишу с пульта....