377

Arduino на службе человечеству

У меня есть дом. В доме есть лестница. На лестнице должен быть свет. Никаких нарушений логики нет, подвохов тоже, так как при строительстве был заложен проходной выключатель, который прекрасно функционирует. Внизу включил – сверху выключил, и наоборот. Красота. Чего еще хотеть?  

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

Я тихо-мирно починял примус в гараже, когда вселенское зло в виде моей зайки пробудилось и ворвалось в гараж. Оказывается, свет на лестнице через выключатель – это фу-фу и прошлой век, и в 21 веке все должно включаться автоматически, причем не сверху лестницы, а снизу ступенек, и не одновременно, а по очереди, и выключаться также.  Путем осторожных расспросов было выявлено, что в очередной программе про переделки показали это бесовство, и все, у моей любимой в заднице загорелась береза – нада!

Из желания чисто поржать я посмотрел эту подсветку в интернетах – от 15000 только блоки, плюс светодиодная лента и профиль под нее. Не сказать, что для покупки надо лезть в ипотеку, но потратить 15 тыщ и не потратить 15 тыщ – это две большие разницы, поэтому лезем в закрома и начинаем ваять.

Нам понадобится Arduino Nano, два ультразвуковых датчика измерения дальности,  датчик освещенности и релейный модуль с количеством реле по количеству ступенек. Не рекомендую выбирать датчики HC-SR04, так как из пяти штук, которые были у меня в наличии, стабильные показания стабильные показания давал только один, остальные врали как депутаты. Из-за этих глючащих датчиков я перепробовал все, что только могло прийти в мой воспаленный мозг – пробовал инфракрасный(PIR) с ограничением зоны( тупо заклеивал купол изолентой), использовал VL53L0X – лазерный измеритель расстояния, датчик присутствия – ничего не взлетело, либо какие-то хаотичные сработки, либо слишком большой сектор сработки(PIR) – срабатывало, когда проходишь мимо лестницы. Потом где-то прочитал, что HC-SR04 – это просто исчадие ада, и все конкретные пацаны используют HC-SR05. Купив на алике HC-SR05, я понял, что жизнь удалась и расстояние будет измерено точно.

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

Датчик стоит на краю ступени и постоянно меряет расстояние до противоположной стены(примерно 2 м). Ширина ступени 80 см. Если измеренное расстояние составляет 60 см и меньше,и датчик освещенности говорит, что темно, то начинаем по очереди выдавать HIGH в соответствующие порты с задержкой 300 мс. Затем ждем 10 сек и в той же последовательности загоняем в порты LOW. Направление зажигания/гашения зависит от кого, какой датчик отрапортовал о движении – верхний или нижний.

Так как ступенек у меня 14, пользоваться расширителем портов из-за его отсутствия не хотелось, то пришлось извратиться и использовать все существующие выходы ардуинки. Из-за дефицита ног уровень освещения опрашивается аналоговым входом А2, благо у датчика освещенности есть аналоговый выход.

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

Ну и расположение подсветки

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Датчик нижний

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Датчик верхний

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Блок с ардуинкой, релейным модулем и преобразователем из 12В в 5 для питания ардуино.

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Блок питания

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Ну и пример работы

Единственное, что бы я сейчас сделал по-другому - это подключил бы подсветку не через релейный модуль, а через MOSFETы, ибо уж больно по-бесячьи релюшки щелкают.

Ну и на посошок: на втором этаже три комнаты и туалет. Дом находится на окраине, уличного освещения можно сказать нет, поэтому ночью темно как у негра. Дети, когда выходят ночью по нужде, вынуждены таскать с собой телефоны, для подсветки, поэтому, из неиспользованного PIR-датчика, датчика освещенности, одного MOSFETa, обычного белого светодиода, мелкого блока питания с али и корпуса от какого-то блока питания сваял такую штуку:

Arduino на службе человечеству Рукожоп, Самоделки, Своими руками, Arduino, Подсветка лестницы, Электроника, Видео, Длиннопост

Сверху два отверстия - одно для датчика освещенности, другое - для регулировки длительности работы

Находится как раз напротив дверей комнат детей и работает примерно так:

Горит примерно минуту, детям хватает

ЗЫ. Кстате, скоро еще будут посты про всяческие функциональные поделки на Arduino и ESP8266. Так что если интересно, следите за руками (с) :)

Arduino & Pi

1.5K постов20.8K подписчиков

Правила сообщества

В нашем сообществе запрещается:

• Добавлять посты не относящиеся к тематике сообщества, либо не несущие какой-либо полезной нагрузки (флуд)

• Задавать очевидные вопросы в виде постов, не воспользовавшись перед этим поиском

• Выкладывать код прямо в посте - используйте для этого сервисы ideone.com, gist.github.com или схожие ресурсы (pastebin запрещен)

• Рассуждать на темы политики

• Нарушать установленные правила Пикабу