Фотолента поста - Как я мастерил управление светильниками

Автор: Охлобыстин, 29.11.2016 - 12:27

Пару лет назад взяли с супругой ипотеку и обзавелись своей квартирой в только что построенном доме.

Тем про ремонт здесь уже тысячи их, поэтому не знаю стоит ли писать.

А про управление светильниками напишу, потому что некоторые проблемы решал долго, плохо гуглились решения.

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

Купил Raspberry Pi 2, одно реле на 8 потребителей (потому что не знал пока сколько будет потребителей), заказал кнопки-выключатели у DKC потому что больше ни у кого не нашел.

Что вышло в итоге в этой теме, еще будет 4 фотографии.

Как я мастерил управление светильниками

Квартира двухуровневая, цоколь и первый этаж, поэтому в программе разделены "подвал" и "этаж".

Внизу туалет и студия (кухня-гостиная), наверху две комнаты.

В туалете три потребителя: вентилятор, зеркало с подсветкой из Икеи и верхний свет.
В студии 5 потребителей: три группы светильников, бра над диваном и можно сказать ночник за телевизором.

Есть еще подсветка рабочей зоны кухни, но там простой выключатель без всяких контроллеров.

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

В комнатах по две группы светильников в каждой.

Есть еще над лестницей небольшое помещение, там тоже свет без контроллеров.



Как я мастерил управление светильниками

В итоге получилось 8 потребителей внизу и 4 наверху, т.е. пришлось докупать реле, а общее количество кнопок вышло 13 (учитывая что некоторые кнопки работают параллельно, например свет в комнате управляется на входе и около кровати)

GPIO выходов Raspberry для этого не хватило бы и поскольку там есть аж 4 USB планировал использовать еще и Arduino, но на Ali нашел Ethernet реле и сейчас у меня два реле по 8 потребителей, каждый со своим IP и вебинтерфейсом и одна Raspberry для работы с кнопками.

Вместо Raspberry конечно можно использовать Arduino с Ethernet шилдом и это будет дешевле и может даже надежнее.

Итак о проблемах, когда электричество пропадало на несколько секунд - на Raspberry умирал раздел на SD карте который собственно и хранит ОС.
Решилось установкой ОС на флешку, а на SD только загрузочная часть, которая не падает от отключений электричества.
В этом плане Arduino мне видится более стабильной, но плюсы использования Raspberry в том что можно использовать экран и выводить на него какую-то информацию, например погоду:)

Далее, провода до кнопок у меня проложены не витой парой, а простым телефонным проводом, у Raspberry используется 3.3в для усправления состоянием GPIO, а срабатывать начинает и от меньшего напряжения.
И вот я сделал нижний этаж, подключил всё, радостно понажимал в кнопки, с дребезжанием контактов (debounce) поборолся программно и лёг спать. Ночью начали срабатывать реле тёплого пола в ванной и гостиной, холодильник тоже включался выключался и у меня была прямотаки светомузыка и спать с моргающим светом было очень хорошо.
На следующий день я отключил кнопки до нахождения решения этой проблемы (кроме как впаять конденсатор куда-то ничего не нашел) жили так около года, включая выключая свет только с телефона и вот недавно нашел решение: токовая петля.

Нашел схему, купил все компоненты, спаял, запустил, всё отлично, никаких побочных срабатываний и схема простая как три копейки, подходит для передачи любых цифровых сигналов.

Если на контроллере нет pullup резисторов, то ногу нужно подтягивать к плюсу через резистор 10к.

Как я мастерил управление светильниками

Cледующая проблема: для управления с телефона я использовал программу NetIO (в маркете) и на сайте этой программы был скрипт на Питоне который был сервером и по определенным командам изменял состояние портов GPIO, скипт этот конечно нужно было дописывать, он там только как пример.
Так вот, он иногда выгружался из памяти, т.е. падал, нашел программу Supervisor которая умеет поднимать упавшее и имееет вебинтерфейс для перезагрузки этих скриптов и т.д. Отчасти проблема решилась.

Но когда я сделал кнопки, этот скрипт на Питоне с ними как-то странно работал, некоторые нажатия пропускал. Решил переписывать всё на Си.

Переписал, но пришлось разделить программу которая обрабатывает нажатия кнопок и которая общается сокетами с NetIO, я в Си неписатель и поэтому так вот. Между собой сделал обмен файлами, т.е. есть общие файлы в которых хранится состояние кнопок (чтобы в NetIO показывать что включено что выключено)

Так же сделал для NetIO отдельную конфигурацию которая управляет Ethernet реле напрямую, без Raspberry.

Когда начинал делать ремонт думал что заведу датчики в каждую комнату (температуры влажности), может быть поставлю на батарею автоматические краны или на трубы в ванной.
Но как-то не сложилось, пока делал основной ремонт не всегда находилось время и желание думать об этом, а сейчас уже не везде провода заложены, да и желание именно здесь жить как-то убавилось.
Но это первый опыт ремонта, первый опыт электрификации квартиры и т.д. выводы сделаны и надеюсь что когда-нибудь буду уже строить дом и там найдется время всё обдумать и хотя-бы заложить провода для каких-то таких штук.



Как я мастерил управление светильниками

По деньгам:

1 ШТ. Raspberri Pi 2 B+ :: ~50$ (не нашел заказ)
20 ШТ. NSI45020AT1G NSI45020 SOD-123 :: 2,90$
20 ШТ. SFH610A-1 SFH610 DIP4--NSDQW3 :: 6,83$
3 ШТ. Smart Electronics 5V 8 Eight Channel Relay Module :: 12,60$
3 ШТ. ENC28J60 Network Module 8-Channel Network Contrller :: 18,45$

Провода от RPi покупал в России, обжимал сам, лучше бы заказал из Китая

Датчики движения, работают без контроллера
3 ШТ. PIR Infrared IR Body Motion Sensor 9,09$

Вот так вот, я всё:)

З.Ы. возможно в будущем я всё таки поставлю в гостиной датчик температуры влажности, в спальнях к сожалению нет достаточно проводов для этого (там приходит 1 телефонный провод на 4 жилы и все используются на кнопках)



Как я мастерил управление светильниками

Подписывайтесь на наш канал