Всем привет, меня зовут Саша и у меня не так давно появилась кошка. Как известно, кошка в доме появляется не одна, а с лотком. Лоток обычно ставят в туалете (запах, сами понимаете) и я не стал исключением. И вот после этого я столкнулся с проблемой…
Проблема
Чтобы кошка могла сходить по своим делам в лоток (а не куда придется) дверь в туалет должна быть приоткрыта. Если после посещения уборной забыл про это — могут быть проблемы. Хорошо, если ты остался дома и кошка мяукнет. Хотя моя почему-то так не делает, а просто решает найти себе новый туалет…
В общем появилась у меня еще одна тревога — забыть приоткрыть дверь.
А помимо меня (и кошки) в доме еще есть жена, ребенок, тёща. Иногда приходят друзья, приезжают родственники. И им тоже необходимо объяснять о том, что дверь в туалет нужно оставлять приоткрытой.
Варианты решения
Идею с выпиливанием в двери небольшого прохода я отмел сразу т.к. не хочу портить дверь.
Временным решением было установить на дверь защиту от защемления, которая осталась с тех времен, когда ребенок был маленький.
Это позволило защититься от случайного закрытия двери проходя рядом, но добавила лишних телодвижений: при посещении уборной нужно защиту снять, а после выхода обратно установить на дверь. Неудобно.
Первым делом я стал думать в сторону автоматизации и умного дома, но … не встретил варианта который бы мне понравился. Существует интересный датчик открытия двери с датчиком света от Ксяоми. Казалось бы — вот то, что нужно! Но я не нашел нужного мне сценария автоматизации. К тому же для этого датчика нужен хаб. И что-то для оповещения именно в квартире т.к. просто уведомление мне на телефон не подходит — я могу находится не дома, а звонить домой со словами “дорогая, кто-то забыл приоткрыть дверь для кошки” не очень красивое решение.
Мне кажется с этой проблемой должно справляться простое устройство, не требующее ни хабов, ни интернетов, ни моего участия. Такое, которое я мог бы поставить даже своей бабушке. Такого я не нашел и поэтому решил сделать сам.
Первый прототип
Имеем ТЗ: сделать устройство, которое будет следить за дверью и за светом, если дверь закрыта и свет выключен — истошно кричать подавать звуковой сигнал.
Зачем следить за светом? Чтобы устройство не срабатывало, когда вы сами пойдете в туалет и закроете дверь. Благо привычка выключать свет выходя из туалета приобретена уже давно.
Сделать я решил на базе платы Arduino т.к. есть небольшой опыт работы с ней.
Получается нужно понимать: 1) включен ли свет и 2) приоткрыта ли дверь. Если с первым проблем никаких и решается простым фоторезистором, то со вторым пришлось поэкспериментировать.
Первое, что мне пришло в голову, так это использовать ИК датчик препятствий.
Что понадобилось: Arduino Nano, фоторезистор, резистор 10 кОм, датчик препятствий, зуммер (попросту пищалка), батарейный блок (АААх3) и выключатель.
Корпус напечатал на 3Д принтере. Получилось вот такое устройство:
Расположил устройство на двери с помощью усиленного многоразового двустороннего скотча. Сначала были опасения не отвалится ли, но по факту держится очень хорошо и когда понадобилось снять пришлось приложить немало усилий.
Немного поигравшись с настройкой чувствительности датчика препятствий все заработало! Но радость была недолгой — примерно через день сели батарейки.
Второй прототип
После этого стало понятно, что нужно что-то делать с энергопотреблением.
Стал изучать тему с засыпанием Arduino и понял, что для экономии мне нужно добавить датчик вибрации. Его часто используют в охранных системах.
Идея такова: кто-то трогает дверь (открывает или закрывает) — срабатывает датчик вибрации — Ардуино просыпается. После нескольких секунд работы снова засыпает.
Идея оказалась рабочая и теперь устройство проработало … около месяца и батарейки опять кончились.
Третий прототип
Следующая идея — заменить датчик препятствия и датчик вибрации на простой микропереключатель (или просто микрик).
Смысл такой: при закрывании двери микрик нажимается дверной коробкой и устройство оживает. Идея мне очень понравилась, устройство стало проще, правда времени жизни на одних батарейках осталось плюс-минус тем же…
Честно говоря на этом этапе у меня уже начали опускаться руки т.к. больше идей как экономить энергию не было, а менять батарейки каждый месяц сомнительное удовольствие.
Разработка своей платы и четвертый прототип
На помощь мне пришел мой давний хороший друг Алексей, который силен в схемотехнике. Он предложил сделать свою плату на простых компонентах не прибегая к помощи микроконтроллера.
Удивительно, но самым сложным оказалось реализовать прерывистый затухающий сигнал на зуммере. Было несколько вариантов, но мы остановились на использовании операционных усилителей для реализации затухающего сигнала (приятно звучит). Если кому-то интересна схемотехника, то рекомендую видео, где приведена схема похожего устройства и объясняется весь принцип работы.
Через н-ое количество времени схема была готова и на моделировании все работало как надо. Осталось заказать платы. Если раньше процесс заказа был прост, то в нынешних реалиях пришлось потратить много усилий, чтобы найти китайскую фабрику которая работает с нашей страной.
Заказать я хотел сразу с установленными компонентами, чтобы можно было просто припаять 4 провода, установить батарейки и оно работало.
Усилия не прошли даром и через полтора месяца долгожданные платы к нам пришли.
И вот устройство собрано, провода припаяны и … оно не работает 🙁
Точнее работает не так как ожидалось. Видно, что фоторезистор срабатывает, но зуммер не выдает нужный сигнал. Тут то мы и поняли, что моделирование это одно, а суровая реальность это другое. Капитулирен? Нихт!
Новая плата и пятый прототип
В новой версии мы решили отказаться от операционных усилителей и сложного сигнала на зуммере, а сделать схему на основе таймера NE555 и использовать активный зуммер. Для этого пришлось перейти на питание 6 В и на батарейки CR2032 (“таблетки”).
На этот раз перед заказом плат мы собрали на столе макет и проверили на практике работу — все работало как надо.
Также удалось еще немного уменьшить габариты платы и, соответственно, устройства. Далее уже по привычной схеме — заказываем платы, чуть более месяца ожидания и они у нас.
Снова собираем, устанавливаем, проверяем и … оно работает!
Энергопотребление в режиме работы (при закрытой двери и включенном свете) составило около 0,15 мА, что очень хорошо. Время работы от одних батареек при использовании по 2 часа в день по расчетам около 3-х лет! Более чем достаточно.
Итог
В результате с 5-й попытки нам удалось сделать рабочее устройство. Прожив с ним какое-то время, могу сказать, что оно пригождается чуть ли не каждый день.
Устройство назвали WCat (от WC — туалет и Cat — кошка).
Кому интересна дальнейшая судьба этого устройства, приглашаю в наш телеграм-канал. Спасибо за внимание!