Я уже
писал, что хотел ультразвуковой дальномер HC-SR04.
На этот раз, он пришёл быстро, всего за 2 недели.
Но всё не было времени, покрутить его в руках.
И вот сегодня, я наконец таки вытащил его из упаковки, и подключил к МК.
Пока это всё на макетке, в корпус буду запихивать потом... как опять дойдут руки :)
Датчик будет укреплён на двери. Унитаз находится прямо напротив, расстояние от переднего края унитаза до двери = 85 см. Если сесть на унитаз, то расстояние от человека до двери, примерно 90 см. Но будем брать с запасом - 1 метр и 10 см.
Дверь открывается наружу, поэтому при открытии двери, расстояние от датчика до стены будет уменьшаться.
Исходя из этих соображений, быстренько написал простенькую программу.
Алгоритм такой: если расстояние до объекта меньше или равно 110 см - включаем свет.
Если расстояние больше 110см - гасим свет.
Всё просто. Но это только на первый взгляд. На практике, дальномер не чётко видит человека, одежда гасит звуковые волны, и датчик иногда сбивается в измерениях, в большую сторону. Поэтому пришлось сделать задержку на отключение реле в 1 секунду (на транзисторе и конденсаторе). Этого оказалось достаточно.
Ну а работает это так:
Открыл человек дверь в туалет, свет зажёгся. Зашёл, сделал свои дела сколь угодно долго - свет горит.
Вышел, закрыл дверь - свет потух.