CCU.IO + DashUI
Re: CCU.IO + DashUI
Бежит на малинке (Raspberry pi) ,подключено 8 датчиков DS18B20 и 2 меги. Появилось желание подключить еще одну мегу ,для управления теплицей . К меге подключить датчики влажности почвы и датчик температуры/влажности DHT22. Физически датчик подключен и в браузере показывает значения, но вот как эти значения присвоить переменным в CCU.IO ?
Собираюсь в скором времени перейти на io.broker ,но вопрос по датчику и там актуален.
Собираюсь в скором времени перейти на io.broker ,но вопрос по датчику и там актуален.
Re: CCU.IO + DashUI
В ioBroker должен со следующей недели появится owfs драйвер. С его помощью можно будет подключить 1Wire датчики.
Re: CCU.IO + DashUI
1-wire я и так имею.Я хотел узнать как с помощью скрипта опросить мегу с датчиком и получить значения влажности и температуры в CCU.IO?
Re: CCU.IO + DashUI
Я могу сказать, как получить с меги значение с цифрового или аналогового (0-255) портов, но как подключить туда датчик - понятия не имею. У меня даже Меги то нет.
Re: CCU.IO + DashUI
Спасибо за участие ,но с аналоговыми портами я уже разобрался.Может кто из знающих подскажет как с этим датчиком подружиться.
Re: CCU.IO + DashUI
Участие возможно только если представлена вся информация. Давайте поподробнее :fotya писал(а):Бежит на малинке (Raspberry pi) ,подключено 8 датчиков DS18B20 и 2 меги. Появилось желание подключить еще одну мегу ,для управления теплицей . К меге подключить датчики влажности почвы и датчик температуры/влажности DHT22. Физически датчик подключен и в браузере показывает значения, но вот как эти значения присвоить переменным в CCU.IO ?
Собираюсь в скором времени перейти на io.broker ,но вопрос по датчику и там актуален.
Написано, что в браузере показывает значение. По какому адресу и что показывает?
Re: CCU.IO + DashUI
Вот по этому запросу в браузере показывает значения влажность/температура http://192.168.0.34/sec/?pt=1&cmd=get.
192.168.0.34 ip адрес меги.
192.168.0.34 ip адрес меги.
Re: CCU.IO + DashUI
Создай в папке scripts файл temperature.js:
После перезапуска ccu.io у тебя будут 2 переменные с температурой и влажностью.
Код: Выделить всё
// Create variable "Temperature"
setObject(100015, {
Name: "Temperature",
TypeName: "VARDP"
});
// Create variable "Humidity"
setObject(100016, {
Name: "Humidity",
TypeName: "VARDP"
});
// request url
function getValues() {
request("http://192.168.0.34/sec/?pt=1&cmd=get", function (error, response, body) {
log("webservice: " + body); // remove it later
if (body) {
var parts = body.split('/');
if (parts.length == 2) {
setState(100016, parts[0]);
setState(100015, parts[1]);
}
}
});
}
// every minute
schedule("*/1 * * * *", function () {
getValues();
});
// Initial read
getValues();
Re: CCU.IO + DashUI
Переменные появились, но выглядят они так - hum:26 и temp:27
Теперь надо отфильтровать hum: и temp: Я не думал ,что так получится и поэтому не придал значения тому что в браузере это выглядит так - temp:27/hum:26 .
Огромное спасибо Bluefox.
Теперь надо отфильтровать hum: и temp: Я не думал ,что так получится и поэтому не придал значения тому что в браузере это выглядит так - temp:27/hum:26 .
Огромное спасибо Bluefox.
Re: CCU.IO + DashUI
Код: Выделить всё
// Create variable "Temperature"
setObject(100015, {
Name: "Temperature",
TypeName: "VARDP"
});
// Create variable "Humidity"
setObject(100016, {
Name: "Humidity",
TypeName: "VARDP"
});
// request url
function getValues() {
request("http://192.168.0.34/sec/?pt=1&cmd=get", function (error, response, body) {
if (body) {
var m = body.match(/temp:([0-9]+)\/?hum:([0-9]+)/);
if (m) {
setState(100016, parseFloat(m[2]));
setState(100015, parseFloat(m[1]));
}
}
});
}
// every minute
schedule("*/1 * * * *", function () {
getValues();
});
// Initial read
getValues();
Re: CCU.IO + DashUI
Спасибо заработало!!!
Никак не могу с этим языком разобраться ,объясни в двух словах как это работает?
Никак не могу с этим языком разобраться ,объясни в двух словах как это работает?
Re: CCU.IO + DashUI
Ты лучше к нам на форум приходи, там и пообщаемся