датчики там наверное оптические или ультразвуковые,
в нишах, чтобы не срабатывали когда котяра просто мимо проходит (как датчики движения или присутствия)
логика программы примерно такая:
ели сработал датчик,
то пищать БЗЗером или вибромотором 1 секунду,
провернуть сервопривод на 90 градусов, ждать 5 секунд,
если за эти 5 секунд сработал внутренний, а потом внешний (другой датчик), то зажечь дежурный светодиод "кот ушёл",
если сработал внешний, а потом внутренний, то зажечь светодиод "кот позвал подругу", включить БЗЗер и отправить сообщение в телеграм,
провернуть сервопривод на -90 (закрыть дверцу)
если активен светодиод "кот ушёл" и сработал внешний датчик,
то включить БЗЗер или вибромотор на 1 секунду, открыть дверь, ждать 5 секунд,
если сработал внешний датчик, а потом внутренний, то погасить светодиод "кот ушёл" и зажечь светодиод "кот дома",
если сработал внутренний датчик, а потом внешний,
то не гасить светодиод "кот ушёл", но зажечь "домовой ушёл искать кота",
заркыть дверь, отправить в телеграм сообщение "все ушли"
ну как-то так, хз, нужно тестить а потом дописывать логику под хитрожопость кота,
калибровать датчики (вероятно)...
++
нужна кнопка для сброса состояний светодиодов на тот случай если горит "кот ушёл", а этот подлец вернулся через дверь или через окно - чтобы ардуинка не понимала, что кот уже дома и не открывала дверку чужим
Это сообщение отредактировал Aberrant - 4.11.2023 - 00:51