В последнее время тематика умного дома набирает все большую популярность, появляются все новые и новые статьи, отзывы, обсуждения, и практически на любой вопрос можно сходу найти несколько мнений и ответов. Но во всем этом мире информации по-прежнему остается одна белая область, а именно логика работы. Мы не побоялись и решили представить на суд общественности наши заготовки по этому вопросу.
Для начала пару слов об объекте, который предстоит оснастить системами автоматизации. Это небольшой многоквартирный дом, каждая квартира которого оснащается независимыми системами кондиционирования, вентиляции, отопления и теплого пола.
В качестве основных требований заказчик отметил: единый интерфейс для управления всеми системами умного дома, ограниченный бюджет и минимальное количество дополнительной проводки. После небольшого исследования рынка систем автоматизации мы остановились на решении от Fibaro, так как основные преимущества этого решения практически идеально повторяют наши условия.
В этой статье мы опишем процесс создания подобия HVAC системы для квартиры на базе протокола Z-Wave. Надеемся получить кучу замечаний от сообщества, чтобы довести наше решение до съедобного состояния. Если ожидаемый результат будет достигнут, то мы с удовольствием продолжим этот цикл другими публикациями, в которых будем делиться своим опытом использования Z-Wave устройств.
Итак, опишем исходные данные и условия функционирования нашей системы.
В первую очередь мы задались вопросом, что будет управлять всеми системами. В качестве головного устройства мы остановились на контроллере Home Center 2. Изначально планировалось создать сеть из пяти контроллеров и организовать систему таким образом, чтобы один контроллер управлял всеми квартирами на одном этаже здания. Но вскоре выяснилось, что таким образом построить систему не получится, так как у HC2 есть ограничение на количество подключенных z-wave устройств, а объединение контроллеров в одну сеть дает только расширение зоны действия z-wave сети, но не увеличивает предельно допустимое количество подключенных устройств. Одновременно к одному контроллеру можно подключить не больше 230 устройств. Соответственно, к пяти контроллерам, объединенным в единую сеть, по-прежнему можно подключить лишь 230 устройств. Поэтому нам пришлось увеличить количество контроллеров в проекте в два раза и отказаться от объединения их в единую сеть. Теперь один HC2 будет работать на 4-5 квартир, что дает нам возможность использовать от 46 до 57 z-wave устройств в каждой квартире.
После того, как мы определились с главным контроллером, встал вопрос, какие данные необходимо собирать, и как это делать. Для управления климатом необходимо знать текущее положение дел в квартире, а именно: температуру внутри и снаружи помещения, влажность, уровень CO2, положение окон и дверей, наличие жильцов дома. Поскольку бюджет проекта ограничен, мы отказались от мониторинга влажности и уровня CO2.
Для мониторинга температуры внутри помещения многие z-wave устройства содержат встроенные датчики температуры, дополняющие основной функционал устройства. И, конечно же, существуют датчики температуры в отдельном исполнении. Согласно нашему проекту, в каждой квартире будет примерно 35 устройств, которые так или иначе будут показывать значение температуры. Это три датчика протечки FIB_FGFS-101, три IR преобразователя REM_ZXT120, термостат RS 014G0160, датчики движения, и по три датчика температуры DS 18B20 на каждый контур теплого пола и контур системы отопления. Мониторинг температуры контура теплого пола необходим в первую очередь для того, чтобы не допустить перегрева паркета, т.к. максимально допустимая температура паркета не превышает 27 градусов.
Контроль температуры для защиты паркета от перегрева
Поскольку все эти значения температуры могут достаточно серьезно отличаться друг от друга, в зависимости от того, где устройство установлено – для определения температуры в помещении мы будем высчитывать среднее значение по всем показателям из данного помещения.
Для определения температуры снаружи помещения существуют два варианта. В HC2 есть функция получения прогноза погоды для города, который задается при первоначальной настройке контроллера. Однако такой метод определения температуры не отличается приемлемой точностью, поэтому мы для этих целей будем использовать несколько датчиков DS 18B20, установленных на внешнем фасаде здания. При этом следует учесть, что датчики нужно располагать не напрямую на фасаде и избегать попадания на них прямых солнечных лучей.
В любом умном доме одной из главных целей его создания является снижение затрат на обогрев и охлаждение помещений, поэтому очень важным становится понимание текущего положения окон и дверей. Для того чтобы отключать отопление и кондиционирование, если открыто окно или дверь, мы будем использовать обычные магнитно-контактные датчики, а для их интеграции в сеть z-wave они будут подключены к универсальным бинарным датчикам FIB_FGBS-001.
Подключение датчиков температуры DS18B20
Для определения наличия жильцов дома мы создали виртуальное устройство, которое представляет собой кнопку. При нажатии на эту кнопку пользователь сообщает системе, что дома никого нет.
Виртуальное устройство — кнопки включения режимов дом/работа
Когда в систему поступает сигнал, что дома никого нет, контроллер отключает все системы HVAC и переходит в режим энергосбережения до тех пор, пока пользователь не соберется домой. Находясь в режиме энергосбережения, система продолжает контролировать температуру, и не допустит переохлаждения помещений и снижения температуры ниже отметки в 18 градусов.
Еще один немаловажный элемент управления климатом в жилом помещении это уставка температуры. В нашем решении пользователи смогут изменять ее двумя способами. С помощью настенного термостата или при помощи специально созданного виртуального устройства используя смартфон или планшет.
Разобравшись с мониторингом текущего состояния микроклимата в квартире, мы перешли к изучению непосредственно тех устройств, которыми нам предстояло управлять.
Каждая квартира будет оборудована 3 кондиционерами производства Mitsubishi Еlectric. Управление ими планируется осуществлять при помощи IR преобразователей REM_ZXT120. Эти устройства имеют предустановленные настройки для управления наиболее распространенными моделями кондиционеров от ведущих производителей, а так возможность обучения IR командам с пульта дистанционного управления.
Помимо кондиционеров каждая квартира будет оснащена независимой системой приточно-вытяжной вентиляции, и управление ей будет организовано с использованием двухканальных реле FIB_FGS-222.
Также во всех квартирах будут установлены семь контуров теплого пола и один контур центрального отопления. Каждый контур оснащается трехпозиционным клапаном с сервоприводом. Управляется при помощи RGBW модуля FIB_FGRGB-101.
После подбора и изучения всего необходимого оборудования нашей следующей задачей стала разработка наиболее эффективного и самодостаточного алгоритма управления климатом.
Кликабельно:
На блок-схеме приведен алгоритм, который представляет собой основную логику работы всей системы управления HVAC.
Получившийся алгоритм реализован в виде одного главного скрипта и нескольких вспомогательных. В НС2 эти скрипты называются сценами и пишутся на lua.
Для того чтобы не сильно загружать контроллер, сцены запускаются только при срабатывании так называемых триггеров.
Для основной сцены в качестве триггеров выступают следующие события:
- один из показателей температуры изменится более чем на один градус
- пользователь изменил уставку температуры
- пользователь включил/выключил режим на работе
- окно или дверь (на лоджию или входная) были открыты/закрыты
--[[
%% properties
3 Temperature --температура за окном
85 value --датчик температуры 1
86 value --датчик температуры 2
87 value --датчик температуры 3
%% events
%% globals
tempSet
--]]
local temp1 = tonumber(fibaro:getValue(85, "value")) -- датчик температуры 1
local temp2 = tonumber(fibaro:getValue(86, "value"))-- датчик температуры 2
local temp3 = tonumber(fibaro:getValue(87, "value"))-- датчик температуры 3
local tempOUT = tonumber(fibaro:getValue(3, "Temperature"))-- датчик температуры за окном
local IDCooler = 99 -- вентиляция
local IDCond = 100 -- кондиционер
local IDCondHeat = 102 -- кондиционер обогрев (для тестирования)
local IDFloor = 23 -- теплый пол
local IDHeat = 24 -- радиатор
local tempset = fibaro:getGlobalValue("tempSet")
local workmode = fibaro:getGlobalValue("Workmode")
local tempInside = (temp1 + temp2 + temp3) / 3
local date = os.date("!*t", now)
local currtime = date.hour*60 + date.min --текущее время в минутах
local d = tempset - tempInside
local w = tempset - tempOUT
--globals:
-- Workmode
-- TempSet
-- WinStatus
-- Isventnow
-- CHeating
local cHeating = "on"
local winStatus = "closed"
print("Starting Climate Control")
print("t в помещении = "..tempInside..", t целевая = "..tempset)
print("Workmode: "..workmode..", Windows: "..winStatus,", Central Heating: "..cHeating)
--режим на работе включен
if (fibaro:getGlobalValue("Workmode1") == "At work")
then
--если прохладно
if (tempInside < 18)
then --включить подогрев
if (cHeating == "on")
then -- включить радиаторы
print("включить радиаторы")
fibaro:call(IDHeat, "turnOn")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
fibaro:call(IDCondHeat, "turnOff")
fibaro:call(IDCond, "turnOff")
fibaro:call(IDFloor, "turnOff")
elseif (windows == "closed")
then -- включить кондиционер наобогрев
print("включить обогрев кондиционера")
fibaro:call(IDCondHeat, "turnOn")
fibaro:call(IDCond, "turnOn")
fibaro:call(IDFloor, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
fibaro:call(IDHeat, "turnOff")
end
--если жарко и радиаторы включены
elseif (tempInside > 21)
then --выключить радиаторы
if(fibaro:getValue(IDHeat, value) >0)
then
print("выключить радиаторы")
fibaro:call(IDHeat, "turnOff")
else
fibaro:call(IDCondHeat, "turnOn")
fibaro:call(IDCond, "turnOn")
fibaro:call(IDFloor, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
end
end
-- если достигли нужной температуры
elseif d < 1 and d > -1
then
print("выключаем всё")
--выключить кондиционер
fibaro:call(IDCondHeat, "turnOff")
fibaro:call(IDCond, "turnOff")
--выключить вентиляцию
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
--выключить радиаторы
fibaro:call(IDHeat, "turnOff")
--выключить теплый пол
fibaro:call(IDFloor, "turnOff")
-- если включено центральное отопление
elseif (cHeating == "on")
then --включено центральное отопление
if (d >= 1)
then --обогрев
if (d <= 3)
then
print("включить теплый пол")
--включить теплый пол
fibaro:call(IDFloor, "turnOn")
fibaro:call(IDCondHeat, "turnOff")
fibaro:call(IDCond, "turnOff")
fibaro:call(IDHeat, "turnOff")
fibaro:call(IDCooler, "turnOff")
elseif (d > 3)
then
print("включить теплый пол и радиаторы")
--включить теплый пол
fibaro:call(IDFloor, "turnOn")
--включить радиаторы
fibaro:call(IDHeat, "turnOn")
fibaro:call(IDCondHeat, "turnOff")
fibaro:call(IDCond, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
end
elseif (d <= -1)
then --охлаждение
print("включить вентиляцию")
-- включить вентиляцию
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOn")
end
lastCondition = currTime
end
--если выключено центральное отопление
elseif (cHeating == "off")
then --обогрев
if (d >= 1)
then
if (w <= 0)
then
print("включить вентиляцию")
-- включить вентиляцию
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOn")
end
fibaro:call(IDCondHeat, "turnOff")
lastCondition = currTime
elseif (d < 4)
then
print("включить вентиляцию")
-- включить вентиляцию
fibaro:call(IDCondHeat, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOn")
end
lastCondition = currTime
elseif (winStatus == "closed")
then
print("включить кондиционер на обогрев")
-- включить кондиционер на обогрев
fibaro:call(IDCondHeat, "turnOn")
fibaro:call(IDCond, "turnOn")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
end
elseif (d <= -1)
then --охлаждение
if(w >= 0)
then
if(d > -4)
then
print("включить вентиляцию")
-- включить вентиляцию
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOn")
end
fibaro:call(IDCondHeat, "turnOff")
fibaro:call(IDCond, "turnOff")
elseif (winStatus == "closed")
then
print("включить кондиционер")
-- включить кондиционер
fibaro:call(IDCond, "turnOn")
fibaro:call(IDCondHeat, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
end
elseif (winStatus == "closed")
then
print("включить кондиционер")
-- включить кондиционер
fibaro:call(IDCond, "turnOn")
fibaro:call(IDCondHeat, "turnOff")
if(Isventnow == "no")
then
fibaro:call(IDCooler, "turnOff")
end
end
end
end
Как видно из кода основной сцены, в своей работе она использует глобальные переменные:
- Workmode {«at work», «at home»} //режим на работе
- TempSet //температура уставки
- WinStatus {'opened", «closed»} //открыты ли окна и двери на лоджию (нужны для ограничения работы кондиционеров)
- CHeating {«on»,«off»} //включено ли центральное отопление
Мониторинг текущего положения окон и дверей в квартире будет осуществляться вспомогательной сценой. Результат ее работы хранится в глобальной переменной WinStatus. Так же отдельная сцена контролирует изменение температуры датчиков возле насосов центрального отопления в подвале здания и определяет включено ли центральное отопление. Результат ее работы хранится в глобальной переменной CHeating.
Так как для комфорта очень важно чтобы воздух в квартире был свежий, мы решили, что будет правильно сделать систему принудительного проветривания помещений через приточно-вытяжную вентиляцию. Если в течение последних трех часов вентиляция не работала, то автоматически запустится сценарий проветривания помещения длительностью 15 минут. Принудительное проветривание не осуществляется если включен режим «на работе».
function vent_forced()
local workmode = fibaro:getGlobal('Workmode')
local isventnow = fibaro:getGlobal('Isventnow')
local lastModified = fibaro:getGlobalModificationTime('Isventnow')
if ((os.time() - lastModified) < 10800) then
print ("время с последнего проветривания в секундах "..(os.time() - lastModified))
print ("с последнего проветривания прошло меньше 3-х часов")
end
if ( workmode == 'At home' and isventnow == 'no' and (os.time() - lastModified) > 10800 ) then
print ("время с последнего проветривания в секундах "..(os.time() - lastModified))
fibaro:call(99, "turnOn")
fibaro:setGlobal('Isventnow', 'yes')
print ("с последнего проветривания прошло больше 3 часов")
print ("принудительное проветривание помещения включено")
fibaro:sleep(900000)
fibaro:call(99, "turnOff")
fibaro:setGlobal('Isventnow', 'no')
print ("принудительное проветривание помещения выключено")
end
end
local sourceTrigger = fibaro:getSourceTrigger()
if (sourceTrigger["type"] == "autostart") then
while true do
fibaro:debug('Сцена запущена автоматически')
local currentDate = os.date("*t")
if (currentDate.min >= 0 and currentDate.min <= 60) then
vent_forced()
end
fibaro:debug('Сцена отработала, следующий запуск через 1 час')
fibaro:sleep(3600*1000)
end
end
Вот так мы планируем решать поставленную задачу. На повестке дня стоит еще много вопросов, предстоит решить много проблем и преодолеть множество трудностей. Это наша проба пера, просим вас отнестись с добротой и пониманием.
Комментарии (38)
QWhisper
14.10.2016 23:10Я правильно понял что по СО2, алгоритм, просто раз в 3 часа проветривать? то есть никакого мониторинга и подстраивания под текущую ситуацию нет?
Draftt
17.10.2016 11:14Поскольку бюджет ограничен, мы выбрали наиболее приоритетные направления, которые и проработали. Остальной функционал, по большому счёту, может быть доработан в процессе эксплуатации, при желании со стороны заказчика.
himch
14.10.2016 23:15Из опыта — теплый пол (ТП) должен обеспечивать комфорт, радиаторное отопление должно заниматься отоплением, система кондиционирования охлаждением.
Соотвественно ТП вообще не трогаем — его температуру должна регулировать локальная автоматика, управляющая трехходовым клапаном по показаниям датчика температуры на обратке.
Температура выставляется при пусконаладке раз и навсегда, тем более, если у вас паркет. Почему датчик на обратке? Если теплосъем с пола увеличивается — обратка охлаждается сильнее и трехходовой подает больше энергии для компенсации теплопотерь и наоборот. Таким образом, имеем стабильную комфортную температуру пола. И паркету хорошо, и пользователю.
Непонятен смысл отключать кондиционирование или отопление при открытом окне.
Т. е. зимой, открыв окно на весь день, мы рискуем выморозить квартиру. Мне кажется, пользователи открывают окно не для того, чтобы отрегулировать температуру, а для проветривания помещения. Для регулирования температуры служит термостат.
По поводу термостата не очень ясно. Он у вас будет один на квартиру или в каждой комнате свой? Как правило, пользователь хотел бы в living room иметь температуру повыше, в спальне пониже. Кондиционеров у вас три на квартиру, а контур радиаторного отопления один. Как управлять будете? Механическими головками на радиаторах? Тоже, кстати, вариант, а трехходовой использовать для общего понижения температуры в квартире на время отсутствия хозяев.Draftt
17.10.2016 11:24Из опыта — теплый пол (ТП) должен обеспечивать комфорт, радиаторное отопление должно заниматься отоплением, система кондиционирования охлаждением.
Полностью с вами согласны, но главный архитектор проекта хочет реализовать отопление исключительно теплым полом.
Соотвественно ТП вообще не трогаем — его температуру должна регулировать локальная автоматика, управляющая трехходовым клапаном по показаниям датчика температуры на обратке.
Температура выставляется при пусконаладке раз и навсегда, тем более, если у вас паркет. Почему датчик на обратке? Если теплосъем с пола увеличивается — обратка охлаждается сильнее и трехходовой подает больше энергии для компенсации теплопотерь и наоборот. Таким образом, имеем стабильную комфортную температуру пола. И паркету хорошо, и пользователю.
Именно так! Только трёхходовой будет регулировать температуру всей гребёнки. А на каждом контуре будет свой сервопривод для управления.
Непонятен смысл отключать кондиционирование или отопление при открытом окне.
Т. е. зимой, открыв окно на весь день, мы рискуем выморозить квартиру. Мне кажется, пользователи открывают окно не для того, чтобы отрегулировать температуру, а для проветривания помещения. Для регулирования температуры служит термостат.
Алгоритм устроен таким образом, что он не позволит температуре в помещении опуститься ниже заданного порога, у нас он установлен на уровне 18 градусов, но может меняться. По поводу открытого окна согласны с вами, только проветривание у нас работает через вентиляцию (приточно-вытяжную) возможно и необходимость в открытом окне будет отсутствовать, но если всё-таки это будет необходимо, то мы реализовали принцип экономного расходования энергии обогрева. Другое дело что наверное необходимо добавить уведомление о том что окна долго открыты….
По поводу термостата не очень ясно. Он у вас будет один на квартиру или в каждой комнате свой? Как правило, пользователь хотел бы в living room иметь температуру повыше, в спальне пониже. Кондиционеров у вас три на квартиру, а контур радиаторного отопления один. Как управлять будете? Механическими головками на радиаторах? Тоже, кстати, вариант, а трехходовой использовать для общего понижения температуры в квартире на время отсутствия хозяев.
Так как бюджет проекта ограничен изначально мы закладываем по одному термостату на каждую квартиру. Но благодаря плюсам беспроводного решения, не проблема в дальнейшем, исходя из пожелания пользователей, добавить столько термостатов и зон сколько будет нужно.
lingvo
14.10.2016 23:16+1Ой-е! (рука-лицо)
Извиняюсь, но для такого проекта вы выбрали самую неподходящую технологию. Жалко мне ваших будущих жильцов. Кто ж вам напроектировал это все?
Godless
14.10.2016 23:44Ребята, не мне вам советовать, но все же. Может проводные решения, а?? Я же могу прийти в этот дом и сначала наснифать трафика, а потом и наслать чтоб все системы с ума сошли. Это же небезопасно… Ну если все таки решитесь, подумайте о шифровании стойком и обновлении ПО. ибо ошибки и дыры находить не перестанут…
Aleksandr_Zh
15.10.2016 07:04полностью за проводное! намучались мы с блютузом, WiFi и самодельным на 886 Мгц… только медь, только хардкор :)
RusikR2D2
15.10.2016 00:03Вижу много «каменей». И самый главный — все люди разные.
Мне, к примеру, нравится, когда в спальне "+10"… (серьезно). А кому-то "+30".
Терпеть не могу теплый пол. в моем понимании пол должен быть холодным, холоднее воздуха. (а кто считает иначе)
Т.е. регулироваться должно все в широких пределах.
Выключать отопление при открытой форточке как-то неправильно. Открывая форточку люди хотят проветрить комнату. (мы считаем что температура нормальная). А если зима, то при открытии форточки станет холоднее, и, по идее, нужно наоборот «прибавить» тепла. (да, это неправильно с точки зрения экономии)
Опускать температуру принудительно при отсутствии человека неправильно. У кого-то растения, у кого-то рыбки, у кого-то что-то еще. И такие скачки не пойдут им на пользу.
Опять же, кто-то придет неожиданно и обнаружит, что дома холоднее, чем он привык.
Где-то читал, что такая плавающая температура в течении дня практически никак не экономит энергию (а это затевается явно для этих целей). Большинство людей приходит домой примерно в одно время с работы, что создаст на этот период повышенную нагрузку на отопления, чтобы «подогреть» к приходу квартиры.
ИМХО, влажность очень важна. Зимой сухо и неприятно, а летом может быть излишне влажно, вещи не будут сохнуть и т.д.
А контроль «дома»-«не дома» может стать наводкой для преступников.
Забыл, не нужно этих «беспроводных» штуковин. Во первых — это уязвимость, а во вторых — не удобно — нужно везде батарейки менять. Опять же, могут быть какие-то помехи.himch
15.10.2016 00:11>нравится, когда в спальне "+10"
>пол должен быть холодным, холоднее воздуха
Даже страшно предположить, какой температуры у вас в спальне пол и какими техническими средствами вы добились такой температуры!RusikR2D2
15.10.2016 00:28в спальне «пофиг» на пол — я там только сплю. он такой температуры, как получится. А так — открытая форточка, а ней круглосуточно работающий вентилятор на вдув. Летом, понятно, не +10, а как повезет — кондиционера нет. А в остальных комнатах — пол охлаждается естественным образом — открытые форточки и один вентилятор на выдув (тоже без остановки)
VaalKIA
15.10.2016 21:31Скорее всего у вас нарушена терморегуляция, не завидую тем, кто будет с вами жить. Возможно такие вещи можно лечить, проконсультируйтесь у врача.
Draftt
17.10.2016 11:35Выключать отопление при открытой форточке как-то неправильно. Открывая форточку люди хотят проветрить комнату. (мы считаем что температура нормальная). А если зима, то при открытии форточки станет холоднее, и, по идее, нужно наоборот «прибавить» тепла. (да, это неправильно с точки зрения экономии)
Мы пытаемся найти золотую середину между комфортом и экономией. Как уже говорилось выше система построена таким образом что отпадает необходимость открывать окна для того чтобы проветрить квартиру, но даже если окно открыли для проветривания или по другой причине, в квартире не станет заметно холоднее так как батареи это только часть системы отопления и при их отключении теплый пол продолжит нагревать помещения.
Опускать температуру принудительно при отсутствии человека неправильно. У кого-то растения, у кого-то рыбки, у кого-то что-то еще. И такие скачки не пойдут им на пользу.
Опять же, кто-то придет неожиданно и обнаружит, что дома холоднее, чем он привык.
Где-то читал, что такая плавающая температура в течении дня практически никак не экономит энергию (а это затевается явно для этих целей). Большинство людей приходит домой примерно в одно время с работы, что создаст на этот период повышенную нагрузку на отопления, чтобы «подогреть» к приходу квартиры.
Еще раз повторюсь, что алгоритм устроен таким образом, что он не позволит температуре в помещении опуститься ниже заданного порога, у нас он установлен на уровне 18 градусов, но может меняться.
А контроль «дома»-«не дома» может стать наводкой для преступников.
ИМХО, если кому-то плохому понадобится наводка то есть куда больше более простых способов ее получить ;)
Забыл, не нужно этих «беспроводных» штуковин. Во первых — это уязвимость, а во вторых — не удобно — нужно везде батарейки менять. Опять же, могут быть какие-то помехи.
Да это те неудобства, которые присущи всем беспроводным решениям, но заказчик хочет создать возможность последующего развития умного дома в каждой квартире без ремонта и прокладки дополнительных кабелей. Но поскольку эти неудобства широко известны, с ними борются сами производители. Например, многие датчики могут питаться не от батареек а по проводам или от тех устройств, к которым они подключены. Если такой возможности нет то система следит за уровнем заряда и сообщит когда и где необходимо поменять устаревший элемент питания.
Касательно помех, то плюсом технологии Z-Wave является то, что она организована на принципах Mesh-сети.
Aleksandr_Zh
15.10.2016 07:07влажность контролировать надо. У меня дома в течение года было 45-65%. С первыми морозами опустилось до 30-35%. Мне плохо, если ниже 40-42% (у меня проблемы с лёгкими). У детей сразу кашель начинается…
В прошлом году купил бытовой увлажнитель, подтянул влажность до 50-52%. Измеритель влажности был бытовой (у меня такой: https://ru.aliexpress.com/item/Wireless-Outdoor-Indoor-Temperature-Humidity-Monitor-Sensor-Digital-Thermometer-Hygrometer-with-Daily-Display/32351413361.html?spm=2114.30010708.3.160.qgJBcA&ws_ab_test=searchweb0_0,searchweb201602_2_10065_10068_10069_10017_10080_10082_10081_10060_10061_10062_10039_10056_10055_10054_10059_10078_10079_10073_10070_421_420_10052_10053_10050_10051,searchweb201603_6&btsid=5417aec8-07bb-4eb4-ae84-994d76e4a749)
пробовал измерять другими (от dht22 и прочими) — примерно совпадает).ru_vlad
15.10.2016 10:13Простите что вмешиваюсь, а где живете?
Ниже 66% врачи уже бьют тревогу, а 35% для человека это очень хреново, кожа, асма и прочее.
У самого старый классический гидрометр ВИТ-1 (с сухим и влажным термометром), летом 80-90%, зимой с отоплением не ниже 65-66%
На счет увлажнение, тут пожалуй спасет только мокрый пододеяльник.Aleksandr_Zh
15.10.2016 11:31почему же? ГОСТ на работе искал, САНПИНы тоже писали про 40-60% для школ. Давно читал, больше 10 лет, но не думаю, что организм сильно изменился за это время :)
а) Общеобразовательные учреждения
( Санитарные правила и нормы СанПиН 2.4.576-96)
Относительная влажность воздуха должна быть 40-55 %
в кухне и прачечной — до 60-70%
http://base.garant.ru/4173106/
6.5. При температуре воздуха на рабочих местах 25° С и выше максимально допустимые величины относительной влажности воздуха не должны выходить за пределы:
70% — при температуре воздуха 25°С;
65% — при температуре воздуха 26°С;
60% — при температуре воздуха 27°С;
55% — при температуре воздуха 28°С.
При работах, выполняемых сидя, температуру и скорость движения воздуха следует измерять на высоте 0,1 и 1,0 м, относительную влажность воздуха — на высоте 1,0 м от пола или рабочей площадки. При работах, выполняемых стоя, температуру и скорость движения воздуха следует измерять на высоте 0,1 и 1,5 м, а относительную влажность воздуха — на высоте 1,5 м.
ru_vlad
15.10.2016 14:15Да, виноват. Поверил на слово знакомым врачам.
Посмотрел ГОСТ 30494-96 ;) честно скажу не хотел бы я в таких условиях жить.
По мне если влажность ниже 60% при температуре +23 кожа трескается.
Draftt
17.10.2016 11:54Контролировать влажность не проблема, есть как отдельные сенсоры так и комплексные решения. Но возникает вопрос что делать дальше, чем и как изменять влажность в помещении если из имеющегося оборудования есть кондиционер вентиляция и система отопления.
mrigi
15.10.2016 11:11Как-то слишком вскользь про приточно-вытяжную вентиляцию. Хотелось бы намного больше информации по реализации механики, а не логики. Продуман ли подогрев воздуха в холодное время? Установлен ли рекуператор на каждую квартиру или как-то по другому? Что за вентиляторы и насколько всё шумно работает? Детали, господа, а не вилами по воде, будьте любезны.
Имена переменных — ад какой-то. То Isventnow, то turnOn, то потом уже autostart. Нормализуйте свой CamelCase может как-то. Нельзя же так халтурно относится к названиям!Draftt
17.10.2016 12:06Вентиляционные установки поставляются и устанавливаются другой организацией. Мы знаем, только что будет по одной установке на каждую квартиру, рекуператоров не будет, подогрев воздуха в этих установках не предусмотрен, про шум пока ничего сказать не можем.
Не знаю что именно вас смутило в названии переменных но могу точно сказать что вы смешали в одну кучу как наши переменные, так и методы которые придумали не мы, а разработчики Fibaro :)mrigi
17.10.2016 12:42Меня смутило то, что управлять вы похоже собираетесь какими-то обмылками, а не климатическими системами. Рекуператор позволяет экономить энергию, плюс подавать воздух в помещение более подходящей температуры. Без подогрева воздуха зимой вентиляцией будет некомфортно пользоваться. Шумные вентиляторы могут вынудить владельцев вообще навсегда выключить вентиляцию и заклеить воздуховоды обоями. Моё мнение — куда умнее иметь всё то, чего у вас нет и не предусмотрено, чем то что вы делаете.
frombrest
17.10.2016 14:04Я думаю что не стоит так резко выражаться по поводу оборудования которое там будет применяться, тем более что вы наверняка понятия не имеете что там будет стоять. Наверняка вы не знаете всей специфики строительства объекта. Мне кажется что шум вентустановки в этой статье обсуждать не уместно, статья вообще о другом. И ваше мнение господин далеко не самое умное…
GrishaTav
15.10.2016 11:12Я бы не стал делать отопление на радиоинтерфейсе и на общем контроллере. Вот заглючит это чудо — и что тогда делать? Всякие игрушки типа вентиляции и кондиционеров — да пожалуйста, а на отопление лучше поставить надежный проводной термостат, пусть и с каким-либо дополнительным интерфейсом для умного дома. Тем более, что отключить кондиционер от данной системы и перевести его в режим ручного управления очень просто — достаточно просто выкинуть ИК-шлюз или залепить его скотчем :), а вместо вентиляции можно открыть форточку.
Ну в самом крайнем случае предусмотрите легкий доступ к вентилю отопления, чтобы можно было быстро скинуть электропривод и отрегулировать подачу теплоносителя вручную.
И насчет локального термостата на теплые полы я бы тоже подумал…
Не очень нравится идея только виртуальной кнопки присутствия, я бы добавил еще обычные кнопки вкл/выкл на входе в квартиру. Мобильник может быть разряжен, на нем могут закончиться деньги, его можно забыть на работе — и что, дома в холоде сидеть??? Кстати, на эти кнопки я бы повесил и отключение части ненужной электропроводки. У себя дома я так и сделал — отключается все, кроме холодильника и собственно автоматики.Draftt
17.10.2016 12:25Мы остановились именно на таком самом крайнем случае) Мы предусмотрели возможность легкого доступа к гребенке с сервоприводами, и сами сервоприводы оснащены механизмом который позволит отрегулировать подачу теплоносителя в контуры отопления и теплого пола вручную. А вот за совет продублировать виртуальную кнопку физической спасибо!
lingvo
17.10.2016 13:06Не знаю, что у вас там за сервоприводы, но обыкновенные гребеночные сервопривода для теплого пола имеют только два ручных положения — полностью открыто или полностью закрыто. Регулировать ими получается плохо.
Draftt
17.10.2016 14:15Совершенно верно, но ведь в этой ветке речь идет о форс мажоре, когда чудо заглючило и нам необходимо временно отключить управление и вручную включить контур отопления. В штатном режиме регулировать работу клапанов будет система а не человек и для нее достаточно и двух положений.
Aleksandr_Zh
16.10.2016 13:45в личку пошли вопросы о CO2
чтобы не плодить вопросы отвечу тут:
китайцы предлагают почти готовое на плате. Я-то просто датчики покупаю.
вот например: ru.aliexpress.com/item/1PCS-MQ135-MQ-135-Air-Quality-Sensor-Hazardous-Gas-Detection-Module/32328610097.html?spm=2114.13010708.0.0.AApN8a
датчик на плате.
подаёте питание 5 вольт, подойдёт бытовая usb-зарядка на 0.5А
на плате есть крутилка — переменный резистор, им можно задать уровень чувствительности датчика. Как только превысило — сразу загорается светодиодик. На плате есть выход, на нём появляется минус, когда CO2 превысило установленную вами норму. Можно поставить транзистор и через него питать пищалку.
сразу скажу, чтобы не вчитывались в даташит: после покупки включить его и дать прогреться минимум 24 часа, а лучше 48. В это время показания датчика дико врут, не стоит настраивать.
После это откалибруйте под себя. Я делал как: включал, ждал 10 минут прогрева (датчик имеет внутри себя нагреватель, потребляет около 120-150 мА!), потом ставил его с комнате и закрывал доступ воздуха. Сидел там часа 4-5, и потом выставлял срабатывание датчика. Как показала практика — это нормальный метод настройки.
Как проверить работу: секунд 10 дуть на датчик. Поставить перед ним открытую бутылку со спиртом или растворителем на расстоянии в 30-50 см. Через минуту срабатывает
на плате есть аналоговый выход. Но китайцы не были бы китайцами, если бы не подложили свинью: на плате в цепи делителя напряжения стоит резистор 1-2 кОм. А надо бы от 4 до 10 кОм. Я выпаял, поставил на 8к2 с точностью в 1%. Тогда аналоговые показания более адекватны: датчик начинает чувствовать даже присутствие человека на расстоянии в 30-50см! (может пот, влага в выдыхаемом воздухе — не знаю, но показания меняются в большую сторону )Winnie_The_Pooh
17.10.2016 12:17Датчики на принципе изменения проводимости полупроводникового слоя очень неточны (1), показания их очень сильно зависят от влажности воздуха (2), обладают низкой стабильностью и повторяемостью показаний (3), избирательности у них никакой вообще (4) и срок службы — год-два. Единственный плюс — цена.
Т.е. с точки зрения метрологии — это индикаторы на уровне «хорошо-плохо».
Для измерения СО2 есть отличные инфракрасные датчики на принципе поглощения СО2 инфракрасного излучения (NDIR). Точны, огромный срок службы, цена около 70-100 долл.alemv
17.10.2016 14:33Совершенно согласен с Вами по качеству и удобству NDIR-датчиков, сам купил пару лет назад mh-z14 где-то баксов за 60, помню тогда были предложения и за сотню. Посмотрел ради интереса текущие цены на Али и хм… Похоже, китайцы, совершили реальный прорыв на этом фронте: mh-z14 можно купить уже за 24, mh-z19 — за 22.80!
Winnie_The_Pooh
17.10.2016 14:41Да, это совсем другое дело :) я года три-четыре назад покупал к-30 из Штатов, но они были единственные на рынке и по распродаже они обошлись в 60+ долл.
А по 22.80 — это очень хорошо! Еще бы такого принципа на СО :)
Aleksandr_Zh
мониторинг влажности и CO2 = от 450р :) в розницу. От 10 шт и уже почти на треть дешевле.
Как раз шаманю в этом направлении…
почему именно этот метод связи?
Nizametdinov
Можно подробнее, что за датчики и как с точностью\диапазоном?
Aleksandr_Zh
Даже на более дешевые перешел, сейчас они по сотне рублей. Искать по MQ135. Документация в Сети есть. Только в нижнем плече ставить резистор не ниже 4-5 кОм, китайцы же лепят на типовых платках 1-2 кОм.
Aleksandr_Zh
про точность: показометр :)
Nizametdinov
Спасибо, если есть возможность — сделайте обзор в пару страниц, интересно как он в реале.
Aleksandr_Zh
статью написать?… эх, лет 8 назад последнюю писал :)
а что писать-то? воду лить не хочу, а коротко и по сути: чувствительность датчика к разным хим.веществам соответствует заявленному производителем и указано в даташите изделия.
Оный в Сети есть, бери и качай.
Draftt
Беспроводное решение было выбрано из-за того, что заказчик хочет создать возможность последующего развития умного дома в каждой квартире без ремонта.
Из всех беспроводных был выбран Z-Wave потому как все устройства, вне зависимости от фирмы-производителя, базируются на беспроводных модулях Sigma Designs (именно эта компания разработала протокол). Как следствие, все они совместимы друг с другом. Кроме этого большинство устройств имеет выгодно отличающийся дизайн что было довольно важно для заказчика. Так же к плюсам технологии надо отнести наличие бесплатного программного обеспечения и хорошего API. По крайней мере у тех контроллеров, которые выбрали мы.