Давно мечтал дома установить сенсорный выключатель, мечта сбылась, когда мне подарили недорогой сенсорный выключатель FD Electronics. Выглядит красиво, работает отлично. Но это просто выключатель, а у меня умный дом на базе Z-Wave и конечно я захотел интегрировать его в свою систему.
У FD Electronics, Livolo и DeLumo есть радио выключатели работающие на частотах 433МГц и 868МГц соответственно, но интегрировать их в умный дом не получится. Эти выключатели работают только с пультами этих же производителей, управления с компьютера нет, обратной связи нет, т.е. если кто-то включит свет я об этом не узнаю.
Было принято решение скрестить
Самой популярной микросхемой для создания сенсорной кнопки является TTP-223. Главной особенностью TTP-223 является способность автокалиброваться. При подаче питания микросхема измеряет емкость на ножке сенсора I и принимает её за 0, это удобно так как не нужно ничего настраивать. При касании к сенсору, на ножке Q появляется напряжение, туда подключаем нагрузку (LED, реле, оптопара).
С помощью ножек TOG и AHLB настраивается реакция на касание к сенсору. Я настроил режим включения, соединив TOG и AHLB с землей, это означает, что когда я касаюсь сенсора на ножке Q появляется напряжение, когда отпускаю сенсор, напряжение пропадает. Еще можно настроить режим переключения, тогда каждое касание переводит ножку Q в противоположное состояние.
Для теста TTP-223 на макетке собрал схему по управлению реля для Arduino. Прекрасно работает.
Чтобы имитировать нажатия физических кнопок, я использовал оптопару PC817C. Оптопары я припаял вместо кнопок на мой диммер. При подаче напряжения на оптопару, она замыкается, для диммера это как будто нажали кнопку. С помощью ЛУТ была сделана плата-переходник, с одной стороны схема сенсора, с другой оптопары.
Соединив весь этот бутерброд у меня получился сенсорный Z-Wave диммер. На все тесты и сборку ушло 2 вечера. Выключатель установил в коридоре, где им управляет датчик движения, а если нужно принудительно выключить или включить на определенный уровень яркости, то можно легонько прикоснуться к прекрасному!
PS. Полученный опыт я решил использовать для создания сенсорного выключателя на батарейках, и уже заказал с aliexpress сенсорную панель от выключателя Livolo, но об этом позже.
Комментарии (45)
amarao
18.04.2016 14:34+7Я правильно понимаю, что раньше на выключателе тактильный фидбэк был, а теперь не стало? Крутой апгрейд, поздравляю.
PoltoS
18.04.2016 14:52-3Раньше тоже не было — выключатель имел две тактовые кнопки. В нормальном положении он в нейтральном положении, после нажатия возвращался назад. Это позволяет делать нормальное диммирование: долгое нажатие — это диммирование, короткое — это включение/выключение. С обычными бистабильными выключателями диммеры делать неудобно.
Так что автор сделал сенсорный выключатель без потери функциональности, за что ему плюс в карму.
dimasikstd
18.04.2016 14:36У ливоло можно организовать обратную связь и управление с ардуины. Нужен выключатель с сом. Радио тоже можно подцепить.
dimasikstd
18.04.2016 15:15Ссылочки нет, наверно я единственный кто это сделал. Нужен выключатель, который по СОМ соединяется с другим выключателем (проходной), СОМ подключается к ардуине через две оптопары (параллельно, одна вход другая выход) сигнал там простой типа 20мс высокий, 40мс низкий, 20мс высокий.
aivs
18.04.2016 15:19+1Интересно конечно же было бы посмотреть фотки подключения, да и более подробно почитать про доработку. Для arduino есть библиотека позволяющая управлять Livolo, но про обратную связь ни слова.
Duti_Fruti
18.04.2016 15:47Я реализовывал для ESP8266 обратную связь очень простым способом. Подпаивал к светодиоду :)
aivs
18.04.2016 15:48Тоже вариант, но с com портом Livolo оказывается все можно сделать намного проще
dimasikstd
18.04.2016 16:53>Я реализовывал для ESP8266
В Вашем случае только информация о состоянии, я же говорю про полноценное управление.Duti_Fruti
18.04.2016 16:58Нет, управление и состояние. Управление через порт для радио модуля.
dimasikstd
18.04.2016 17:13Поделитесь впечетлениями от работы ESP8266, у меня сложилось плохое мнение о его надёжности. Я запускал еспешку в режиме сервера и время от времени она зависала. Прошивка заводская.
Duti_Fruti
18.04.2016 17:19Есть за ней такой косяк. По моим наблюдениям ей нужен стабильный источник питания.
Вроде с новыми SDK стало получше.
dimasikstd
18.04.2016 15:27+1Библиотека для радиосигнала (на сколько мне известно) я же говорю про проводную связь. У меня есть обязательство перед коллегой, которое не позволяет мне выложить схему, в противном случае эта инфа давно была бы в сети.
dimasikstd
18.04.2016 15:39+1Повторюсь, там всё предельно просто. Когда вы нажимаете кнопку на ливоле, он отправляет на дублирующий выключатель сигнал 20 40 20, вы этот сигнал ловите ардуиной (прерыванием). Ловить надо через оптопару, так как там 12 вольт, и таким же образом отправляете сигнал с ардуины (другой пин) на выключатель. Вся схема — это два провода от выключателя плюс и минус (минус он же ноль 220), две оптопары и резистор.
aivs
18.04.2016 15:46Нашел схемку, это круто! Судя по схеме по Com порту можно и отправлять команду и получать. Уже продумываю как с этих выключателей управлять моими радио релюшками.
dimasikstd
18.04.2016 15:48>по Com порту можно и отправлять команду и получать
Я же написал, по сому передаётся простой сигнал 20 40 20 мс — включить, 40 20 20 мс выключить.
Предварительно надо согласовать выключатели.aivs
18.04.2016 15:53Какая процедура для согласования?
dimasikstd
18.04.2016 16:05Стандартная, между двумя выключателями.
lolipop
18.04.2016 17:28а какая стандарная? у меня проходной выключатель(без радио) синкался тоже через com. значит там тоже есть какой-то сигнал для подвязки. либо действительно просто по сигналу включения.
dimasikstd
18.04.2016 18:01Не понял ваш вопрос.
lolipop
18.04.2016 18:02какая стандартная процедура для согласования?
dimasikstd
18.04.2016 18:20Ну, когда у вас два выключателя в одной комнате (например в разных углах), то для того чтоб эти выключатели «договорились» между собой их нужно запрограммировать (удержание кнопки — писк — нажатие такой же кнопки на втором выключателе). Это я имел в виду.
Вот этот то сигнал (с помощью которого выключатели в дальнешем общаются) нам и нужен.lolipop
18.04.2016 18:24именно об этом я ранее и писал. если вы соснифали сигналы включения и сигналы выключения, то почему не соснифали как происходит процедура договора между выключателями?
dimasikstd
18.04.2016 18:30Соснифали все сигналы.
lolipop
18.04.2016 18:32+1что ж всё из вас вытягивать надо? и какой сигнал(-ы) отвечает за договор?
dimasikstd
18.04.2016 18:41Я его не сохранял нигде (могу сказать только, что он такой же как и сигнылы включения/выключения только интервалы другие), так как он мне не нужен по причине наличия нескольких выключателей.
Я их согласовал и послушал чем они обмениваются.
void on_Livol1_left()
{
impulsi = 0;
detachInterrupt(0);
D23_High;
delay_ms(40);
D23_Low;
delay_ms(20);
D23_High;
delay_ms(20);
D23_Low;
delay_ms(10);
attachInterrupt(0, schet, CHANGE);
d6 = 1;
}
Alexdesinger
20.04.2016 13:49Скажите а как по com порту прочитать сигнал для ардуино?
dimasikstd
21.04.2016 11:30Можно осциллографом, можно самой ардуиной.
Alexdesinger
21.04.2016 11:56в каком смысле самой ардуиной? Вы писали что там сигнал 12v а ардуинка до 5v на пин принимает если я ничего не путаю? Или можно просто через резистор подключить? И скажите там можно просто от ком порта на пин 1 провод юзать как сигнал? Ах, все я понял, прочитал выше, что вы не можете схемкой делиться))) Жаль, очень жаль, хочется научиться управлять livolo )))
aivs
18.04.2016 16:30Для темноты есть два светодиода, которые как раз видно только, когда свет выключен. Сам не ожидал, но не глядя тоже удобно, зона обнаружения касания не ограничена нарисованным квадратиком, а занимает почти пол выключателя, т.е. при касании в любой точке ниже середины свет выключается, при касании в верхней части свет включается. Я проходя мимо, просто провожу рукой по низу или по верху выключателя. Это НЕ не удобно, это по другому. У меня в семье никто не жаловался, и это не потому что у нас жаловаться нельзя )
heibert
18.04.2016 16:56а нет ли у вас опыта по модернизации радио выключателей для работы со светодиодными и энергосберегающими лампами?
по моим понятиям, надо сделать так, чтобы приёмно-исполнительный блок включался не последовательно с нагрузкой, а на него подавалось полноценное сетевое напряжение, а выходило уже управляемое.
к сожалению, не могу найти схему на свой снятый с призводства duwi.aivs
18.04.2016 16:59Чтоб не моргали led и энергосберегайки с диммером нужен шунт. Диммер будет работать в режиме реле, здесь подробнее https://geektimes.ru/company/zwave/blog/269014/
MAXXL
а что за интерфейс на планшете?
aivs
В iRidium сам сделал
R0mjke
Приложением не поделитесь? Помню помню этот айфон 4 в стене)
aivs
Да, пора его уже в гит залить, выложу ссылочку.