«Красный свет — папа занят». Как собрать светофор для удаленки

в 10:04, , рубрики: diy или сделай сам, diy-проекты, esp8266, Блог компании Admitad, светофор
«Красный свет — папа занят». Как собрать светофор для удаленки - 1

Всю весну я пытался объяснить детям (3 и 6 лет), что «папа на работе» и «папа дома» — это фактически разные сущности, но на практике всё оказалось сложнее. На дворе осень, по городу катится вторая волна пандемии, а дети снова заперты дома. Как дать им понять, что папу трогать нельзя? Нам помогли цветовой код и геймификация.


Хроника событий

Чукча не писатель, чукча R&D продакт в Admitad и сидит на удаленке с марта. Первый месяц работы из дому был бесконечным квестом, как совместить работу и семью. Детям сложно объяснить, что сейчас ты занят. Они требуют твоего внимания, когда им этого хочется, а не когда у тебя есть на них окошко в расписании.

К слову, мой календарь на неделю выглядит примерно так: 

«Красный свет — папа занят». Как собрать светофор для удаленки - 2

А вот так выглядит моё рабочее место на весенне-летне-осенний период.

«Красный свет — папа занят». Как собрать светофор для удаленки - 3

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

Решение первое: футболки

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

Но такая система немного приелась, и нам захотелось чего-то поинтереснее.

Решение второе: светофор

Нам нужен был индикатор того, можно ли идти к папе на балкон или нет. Самый логичный и наглядный индикатор —  это светофор. Так родилась идея сделать его управляемым.

Но есть загвоздка: ребенок не станет слушать бездушную машину, которая говорит ему, что делать. Зато он с радостью будет пользоваться устройством, которое сам помог собрать. Поэтому, мы подключили детей к творчеству ;)

«Красный свет — папа занят». Как собрать светофор для удаленки - 4

Что понадобилось?

1) Есть светофор на 220 вольт, купленный на Авито. В него воткнуты китайские светодиодные лампочки, которыми управляет блок из двух реле. Зачем два реле, если одного достаточно, чтобы подавать фазу поочередно то на один цвет, то на другой? Затем, что в светофоре предусмотрен еще ночной режим, когда выключается весь свет, и потому проще повесить по независимому реле на каждую лампочку.

Первое тестовое включение в ручном режиме… работает!

«Красный свет — папа занят». Как собрать светофор для удаленки - 5

Как светофор понимает, когда и каким цветом ему светить?

Блоком реле управляет микроконтроллер esp8266, который цепляется к вайфаю и по https идет в интернет за статусом. А тем временем в этом самом интернете крутится небольшой php-скрипт, который через API Google Calendar собирает мой текущий статус занятости. А заодно проверяет, не наступила ли ночь (с 23:00 до 9:00).

Заливаем бэкенд, собираем прототип на скрутках и соплях, заливаем прошивку… работает! По крайней мере, с десятого раза;) Собираем поаккуратнее, фиксируем все на соплемёт.

«Красный свет — папа занят». Как собрать светофор для удаленки - 6
«Красный свет — папа занят». Как собрать светофор для удаленки - 7

Основная сложность — несмотря на большой размер светофора, свободного места внутри не очень много. Перед лампой ничего ставить нельзя, так как будет видна тень от проводов, остается место только внизу и сзади от нее. Утрамбовываем все вокруг патрона в нижней части, собираем и получаем… та-да!

«Красный свет — папа занят». Как собрать светофор для удаленки - 8

Решение, работающее для всех встреч, указанных в гугл-календаре. 

Внеплановые встречи

Во время тестовой эксплуатации возникли ситуации, когда встречи отменялись через 5 минут после начала, или же наоборот — кто-то решал позвонить по слаку, увидев окно в моем расписании. Под такие спонтанные встречи я собрал простенький интерфейс, принудительно выставляющий светофору статус на ближайшие 15 минут.

«Красный свет — папа занят». Как собрать светофор для удаленки - 9

Со «свободен», «занят» и «ночь» всё понятно, а вот Party-mode включает и выключает рандомные цвета через случайные промежутки времени (от 200мс до 2с). Чем не стильная замена новогодней гирлянде?

В тот день, когда я расшарил коллегам ссылку на интерфейс, мы с семьей как раз смотрели кино перед сном… и вдруг началась светомузыка! Было забавно :)

Результат

Профит есть. Сделали еще один интересный девайс вместе с детьми, заодно и повод еще немного попрограммировать.

Теперь если ребёнок всё же добрался до спальни, то прежде, чем зайти на балкон, он видит еще одно предупреждение, что делать этого сейчас не стоит. А если ему очень горит показать мне робота из лего, лучше это сделать, не врываясь на важный созвон ?

Поделитесь опытом, как это работает у вас? Как ваши дети понимают, что родители сейчас работают, и их нельзя отвлекать?

Автор: Druno

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js