Стоит не дорого, свой стабилизатор питания (можно подавать от 5 до 20В), регулировка чувствительности радиуса обнаружения (от 3х до 7 метров), угол обнаружения (120-140, зависит от конкретной линзы и типа датчика), регулировка времени отпускания, а так же два режима работы:
1. Одиночный захват — в этом режиме при срабатывании датчика несколько раз подряд на его выходе остается высокий логический уровень.
2. Импульсный захват — в этом режиме на выходе при каждом срабатывании датчика появляется отдельный импульс.
Снабдив такой датчик источником постоянного тока и небольшой платой с транзисторным ключом, парой резисторов, диодом и реле, получаем готовое устройство, которое сможет включать и отключать нашу нагрузку, когда в поле датчика будет находиться объект.
Поразмыслив дальше, все-таки решил я применить простой микроконтроллер Attiny13 и связать все в один взаимосвязанный пучок: клавишный выключатель, PIR-датчик и еще добавил датчик уровня освещенности (о нем речь пойдет ниже).
Логика работы устройства:
- Приоритет включения всегда у клавишного выключателя, не зависимо от уровня освещенности и нахождения объекта в поле PIR-датчика.
- По истечении примерно 5 часов, при включенном клавишном выключателе, свет автоматически отключится. Иногда домочадцы, а порой и я сам забываю выключить свет.
- Если клавишный выключатель выключен, объект находится в поле PIR-датчика и на улице темно (тут на помощь приходит фото датчик), свет включается, и горит пока объект не выйдет из поля PIR-датчика.
- Если клавишный выключатель выключен, объект находится в поле PIR-датчика и на улице темно, свет включается, и горит, если объект выйдет из поля PIR датчика, освещение продолжает работать в промежутке времени, заданным регулировочным потенциометром на PIR- датчике от 5 секунд до 300 секунд.
- Если клавишный выключатель выключен, объект находится в поле PIR-датчика и на улице светло, свет не включится, пока уровень освещенности не упадет до заданного порога или не включится клавишный выключатель.
Далее была разработана схема электрическая принципиальная, содержащая недорогие и доступные компоненты:
Для питания схемы используется трансформатор с двумя выходными обмотками по 9В (ТПГ-2), первая обмотка служит для питания микропроцессорной части устройства и выносного датчика уровня освещенности. Вторая обмотка для питания PIR-датчика и обмотки реле. Для 12В использован однополупериодный выпрямитель и интегральный стабилизатор напряжения, в данном случае такая схема думаю оправдана т.к в PIR-датчике присутствует свой стабилизатор напряжения. Транзистор Q3 служит для согласования уровней между PIR-датчиком и микроконтроллером, выход PIR — датчика LVTTL c максимальным порогом 3,3В. Транзистор Q2 служит для индикации состояния, транзистор Q1 управляет обмоткой силового реле к которому подключена наша лампа освещения. Переменный резистор необходим для регулировки чувствительности датчика освещения. Цепочка R2, D3, D6, C2 необходима для захвата напряжения сети от клавишного выключателя. Дребезг пульсаций обрабатывается программно.
Для разработки датчика освещения я использовал импортный фототранзистор из своих старых залежей, не знаю даже маркировки, но думаю подойдет например такой BPW96C. Так как устройство находится далеко от улицы или какого-либо проема, просто припаять фототранзистор на плату в моем случае не получится, а тянуть линию порядка 10 метров до фототранзистора я не рискнул, в связи с чем сделал повторитель на Rail-to-Rail операционном усилителе. Но тут натолкнулся на проблемы с калибровкой, в общем сигнал фототранзистора был очень мал для нормальной работы, и я переделал повторитель на не инвертирующий усилитель с коэффициентом усиления 2:
Если вы будете повторять конструкцию и фототранзистор будет выдавать подходящий уровень, вместо резистора R2 установите перемычку 1206 с 0 значением, а резистор R4 исключите из схемы. Фототранзистор у меня был NPN, подключил пину J1-1 коллектор, к пину J1-2 эмиттер.
Собрав датчик уровня освещенности я залил плату компаундом Виксинт ПК-68 и усадил в термоусадочную трубку, оставив на поверхности только шляпку фототранзистора с окошком.
Печатные платы контроллера:
датчика уровня освещенности:
Фото готового устройства на этапе отладки:
Схема соединений всех устройств:
Дополнительно была разработана вторая версия печатной платы для корпуса типа D3MG с установкой на DIN-рейку и разъемом для программирования микроконтроллера AVRISP (в первой версии я для программирования подпаивал провода с разъемом к плате). Микропрограмма микроконтроллера написана на языке С в среде Atmel Studio.
Исходный код, две версии печатных плат и схем электрических принципиальных с перечнями комплектующих (использовался САПР Dip Trace 3.0.0.1), а также файл симуляции для Proteus 8 вы можете найти в репозитории — LightController.
PS: перед установкой, плату контроллера и PIR-датчика на всякий случай вскрыл двумя слоями цапон-лака. Устройство подключается к сети через автоматический выключатель (номинал зависит от потребления ламп), в моем случае автомат подключен через автоматический выключатель номиналом 2 А.
Комментарии (78)
GipsyIF
01.01.2017 20:14+1До сих пор не могу понять, поему лаком «вскрывают» а не «покрывают»?
Мне кажется вскрывать — применимо к сейфам, консервам… чему-то закрытому.
Кто-то может обьяснит?YouHim
01.01.2017 20:30+1Есть мнение что термин «вскрыть» применяется при лакировке для проявления(вскрытия) текстуры дерева.
Rumlin
01.01.2017 21:59полу офф
Изучая док на этот датчик я увидел, что не впаянная деталь RT это фоторезистор.
А вот зачем — уже не помню. Возможно для автоматической подстройки чувствительности датчика при сильной засветке от внешнего источника света.Jmann
01.01.2017 22:25+1Вот что говорит документ:
Photosensitive control (optional, not factory-set) can be set photosensitive control, day or light intensity without induction.
? Temperature compensation (optional, factory reset): In the summer when the ambient temperature rises to 30 ° C to 32 ° C, the detection
Но пока тюнинг не производил. Наверное все-таки придется к лету добавить термокомпенсацию.telobezumnoe
02.01.2017 12:07мне эти датчики как то не показались надежными, после полугодового валяния в коробке у меня перестали адекватно работать сразу два датчика. кстати есть еще мткроволновые датчики, на 5.8 ГГц, чуть дороже инфракрасных. правда у них один минус, они и сквозь стены движение фиксируют, (если конечно она не металлическая)
ra3vld
02.01.2017 15:03+1Есть микроволновые RCWL-0516 — даже дешевле hc-sr50 (30-40р/штука на али)
Но у меня и на hc-sr50 нареканий нет. Года 4 назад купил десяток. Из них на текущий момент штук 7 поставил, все нормально работают.
Seven-ov
02.01.2017 07:52Не совсем. Фоторезистор нужен что бы отключать датчик движения при достаточном освещении. Зачем включать свет, где и так светло. Этот стандартный функционал есть в некоторых готовых устройствах.
Rumlin
02.01.2017 10:06+1Китайская экономность, судя по всему «Cds2» означает 2 кОм с не понятным порогом срабатывания. Классического делителя в схеме нет, регулировок нет. Подозреваю, что при необходимости лучше использовать некую внешнюю схему для установки точного уровня освещенности для срабатывания.
leocat33
01.01.2017 22:01Все ничего, но… если перестать двигаться, то освещение благополучно выключится.
Второе: уж коль скоро используете PIR от ардуины, то почему не взять цифровой датчик освещения?
Напр: BH1750Jmann
01.01.2017 22:17У меня нет привычки стоять смирно в гараже =). По сути вы правы, но в программе можно сделать debounce на вкл/выкл. Сейчас там от дребезга стоит несколько секунд. А датчик света, ну по привычке сделал самодельный.
ArseGun
02.01.2017 09:54Элементы Q2 и R6 здесь явно излишние. Светодиод можно подключить параллельно обмотке реле через свой резистор, естественно.
Jmann
02.01.2017 09:58Я так стараюсь не делать из-за ЭДС самоиндукции в катушке реле. Придерживаюсь принципа "разделяй и властвуй".
Aleksandr_Zh
02.01.2017 10:53+1я молчал, но коль коллеги взялись за схему, то при выходе из строя светодиода и резистора в его цепи у вас реле не включится.
да и сопротивление резистора я б немного ниже взял, а то только 3 mA придёт на светодиод… и ток базы следующего транзистора на грани. Хотя бы 2к2 поставить
но после НГ лень читать даташит на эти транзисторы и искать его h21э :)Jmann
02.01.2017 11:03Возможно, всего не продублируешь. Теоретически и Q1 может выйти из строя, так же как и любой элемент схемы. По поводу резисторов замечание верное, я посмотрю после праздников, что я на самом деле установил на плату (может после наладки, в схеме номинал не исправил.)
Jmann
02.01.2017 11:12Токоограничивающий резистор светодиода в районе 680 — 1000 Ом, при токе на светодиод 10-15 мА.
Aleksandr_Zh
02.01.2017 11:54у него в схеме 12 вольт! зачем на св.диод тут дуть почти 15мА? вполне оптимально для ДАННОЙ схемы 5 мА: и для св.диода, и для управления следующим транзистором
ArseGun
02.01.2017 14:28Энергия ЭДС самоиндукции эффективно гасится уже присутствующим на схеме диодом, включенным параллельно катушке реле.
leocat33
03.01.2017 20:26Верно. Но если реле управляет мощным соленоидом, напр. клапан с ЭМ включением, то веселуха будет еще та! Лучше вообще, вместо транзисторов вкупе с диодом гашения самоиндукции использовать что то типа CPC1035NTR. И деталей меньше, и работает надежнее, да и катушка реле может быть под любое напряжение от DC 5V до AC 220V.
AVKinc
02.01.2017 11:15-3Это творение уровня школьного кружка.
Для чего выкладывать такое здесь если вам более 12 лет — загадка.
Или по новым стандартам это уже огого какой уровень?
Тогда печаль.Aleksandr_Zh
02.01.2017 11:56этот форум — не элеткронщиков-аппаратчиков. Это гики. Тут и телефон из спичечных коробков — великая прикольная хрень-развлекуха. Форум этот хорош именно этакой современной популяризацией науки так таковой.
пусть хоть так…Jmann
02.01.2017 15:17+1Вы знаете, на том же радиокоте или изи электроникс коллеги всегда относятся с пониманием. В нашей стране как никогда необходимо развивать электронику.
Jmann
02.01.2017 11:37Я не знаю какие стандарты вы имеете ввиду. Я лишь поделился простым решением проблемы. Надеюсь что решение поможет как начинающим так и опытным радиолюбителям, гикам и технарям.
Aleksandr_Zh
02.01.2017 11:57-2опыт разный бывает )) спец старой закалки сделает это на 5 корпусах, на уровне аналогового управления, спец, работавший с 8битками — на двух корпусах: МК и ключи, ну, а пром.электронщик — на ПЛК Сименс в стойке :)
Jmann
02.01.2017 12:02Я как-то тут видел статью про освещение сделанную на ПР110(программируемое реле фирмы овен). Вы забыли еще Ардуино и Малинку :)
iig
02.01.2017 14:40… А электрик положит лишние 10 м провода и установит выключатели так, чтобы пользоваться ими в гараже было удобно.
ClearAirTurbulence
02.01.2017 16:52+1С одной стороны, да У самого была такая мысль — что мешает перенести\продублировать выключатель так, чтобы было удобно пользоваться. С другой стороны, гараж, в отличие от жилой комнаты — не то место, где при нахождении человека в тёмное время суток может быть не нужен свет. Т.е. удобно сделать включение по присутствию и принудительное включение\отключение руками на всякий случай. И это удобнее, чем двигать руками и нажимать пальцами на кнопки.
gsaw
02.01.2017 16:05Поясние пожалуйста чайнику про «Цепочка R2, D3, D6, C2 необходима для захвата напряжения сети от клавишного выключателя. Дребезг пульсаций обрабатывается программно.»
Я правильно понимаю, что выключатель подключен к фазе и на JP5 подается по сути 220В? У меня люстра управляется с двух выключателей, а только в одном у меня реле. Для обратной связи хочу в люстру встроить контроллер, проверять включенна лампочка или нет. Ищу схему попроще, что бы и запитать контроллер и GPIO подцепить. Запитать я могу и от простого блока питания для мобильника, а вот GPIO подключить уже сложно. Какие диоды у вас стоят? На GitHub-e непонятные файлы.
И что значит «Дребезг пульсаций». Ну дребезг контактов я понимаю, а «дребезг пульсаций» нет. Может имелось ввиду «дребезг контактов и пульсации переменного тока»?gsaw
02.01.2017 17:06Блин, что значит чайник. Толко сейчас вот подмал, достаточно и просто питания. GPIO не надо подключать. Там же питание в люстре только если лампа включенна.
Jmann
02.01.2017 21:35На Этот узел, при включенном выключателе, подается переменное напряжение, его нужно выпрямить, для этого необходим диод. Схема выпрямителя однополупериодная, каждую положительную полуволну он выпрямит, но теряется отрицательная полуволна. И если такой сигнал подать на пин микроконтроллера, то он даже при включенном выключателе, в период когда проходит отрицательная полуволна сетевого напряжения, будет думать, что выключатель выключается. Вот этот эффект и устраняет программная обработка.
Jmann
02.01.2017 22:02Я по перечням вам отвечу 4-5 января. Сейчас нет возможности качественно подготовить информацию. На гите лежат файлы программы Dip Trace 3 версии.
eldarmusin
04.01.2017 08:39+1Для обратной связи хочу в люстру встроить контроллер, проверять включенна лампочка или нет
Без схемы трдуно сказать, но решений есть несколько
- Можно просто оптопару поставить
- Можно делитель напряжения 2К + 230К + 100n + 1n4001
- Можно датчик тока, например ACS712
serafims
04.01.2017 01:15В принципе, учитывая, что часто для дежурного света используется светодиодная лента, можно дополнить данный автомат ШИМ-выходом с плавно нарастающей яркостью…
Jmann
04.01.2017 11:52Была такая идея. Плюс вместо реле использовать симистор со снабберной цепочкой (плавное включение и/или диммирование лампы накаливания) или простое вкл/выкл любой лампы, кнопку для переключения вида лампы и тд. Если будет время, сделаю на более многоножном микроконтроллере :) Может и с семисегментным индикатором.
Looka
04.01.2017 19:31+1Не увидел схемы искрогашения силовых контактов реле.
С лампами накаливания не так актуально но рано или поздно появятся LED или импульсные блоки питания.
Попадались блоки питания, после уже нескольких включений/выключений которых, контакты релюшек слипались…
Вот хорошая номограмма для расчета http://old.meandr.ru/texts/RC.htmlJmann
04.01.2017 19:33По началу хотел установить снабберную цепь. Но исходя из того, что в гараже стоит эконом-лампа небольшой мощности, я сэкономил место. Но можно подпаять к контактам или установить в клеммы, куда приходят контакты реле — варистор.
gsaw
04.01.2017 19:35+1Я у себя для включения ленты поставил твердотельное реле. Не сильно дороже и бесшумно. Пока работает.
Jmann
04.01.2017 23:19Хорошее решение. В моем случае, если бы я конечно использовал светодиодные ленты, скорее всего использовал n-канальный МДП-транзистор + ШИМ от микроконтроллера для управления яркостью ленты (можно например сделать от датчика освещения и уровень яркости ленты в помещении).
HiTechSpoon
04.01.2017 19:33Очень нехорошо, что оставили цепь питания без предохранителей.
Jmann
04.01.2017 19:34В первой версии предохранителя нет, контроллер подключен через автоматический выключатель номиналом 2 ампера. В версии с корпусом на DIN-рейку предохранитель предусмотрен.
Wan-Derer
06.01.2017 08:43Не очень понятно зачем тащить фазу с клавиши на МК. Почему не просто "сухой контакт"?
И поддержу комент выше: когда будут использоваться светодиодные лампы или энергосберегайки, маленькое реле может быстро загнуться. Их лучше включать через контактор. Подробности: http://cs-cs.net/ostorozhno-svetodiody-pitanie-led-lampJmann
06.01.2017 08:51Не "сухой контакт" потому, что проводка уже под штукатуркой и тянуть "лапшу" поверх отделки я уже не хотел. Во вторых, при выходе из строя автоматики, я могу просто снова соединить лампу с выключателем, минуя контроллер. Если вы будете использовать одну лампу LED уже со встроенным драйвером, то 10А реле, что установлено в автомате справится, можно установить дополнительно RC-цепь или варистор. Если вы хотите брать с запасом, подключаете катушку пускателя в разрыв реле автомата и устанавливаете рядом, но возможно катушку пускателя придется зашунтировать RC-цепочкой для подавления импульсных помех при срабатывании. У меня была ситуация, когда самодельная автоматика для насоса работала с плясками при включении пускателя, пока не установил RC-цепь.
Wan-Derer
07.01.2017 21:482. В приведённой мной статье рассказывается о причине подгорания контактов реле при коммутации драйверов СД-ламп: сверхток во время заряда фильтрующего конденсатора. Можно предположить что этот эффект зависит не от мощности лампы, а от схемы драйвера, от того предприняты ли меры по ограничению сверхтока. Если у нас лампы в «обычном» цоколе Е27, то вряд ли там что-то есть — мало места. Так что обычное реле будет страдать даже от одной лампы. С ростом кол-ва ламп эффект будет усиливаться.
RC-цепь тут не поможет, она работает для ограничения напряжения при индуктивной нагрузке, а не тока при емкостной.
1. Если проводка сделана правильно, т.е. без распаек, то вполне можно отключить от клавиши фазу и подключить два имеющихся провода так чтобы привести на контроллер «сухой контакт». А фаза и так имеется на контроллере, так что сделать «затычку» вместо него тоже легко.
3. Впрочем, я придумал один резон тащить фазу :) Можно чухать момент перехода напряжения через 0 и коммутировать реле так чтобы контакты замыкались в этот момент. Это улучшит тяжёлую ситуацию с драйверами СД/сберегаек.Rumlin
09.01.2017 21:17Рассматривал платы нескольких сгоревших энергосберегающих ламп — там было место для термистора используемого для ограничения коротких бросков тока. Видимо они где-то бывают.
Antofka
09.01.2017 14:16А функцией «проводи меня домой»(follow me home) в самом автомобиле никто не пользуется? Если после выключения зажигания «моргнуть» дальним светом, то ближний(или как настроишь в зависимости от модели авто и комплектации) остаётся светиться от 15 секунд до 1...2 минут(в некоторых авто нажатия добавляют по 15...30 секунд и появляется обратный отсчёт). За это время успеваешь взять сумку и выйти из гаража.
У меня была подобная проблема, пока мне сосед по гаражу не подсказал эту функцию(она есть в большинстве авто начиная с середины 2000х годов).
Ничуть не пытаюсь умалить способностей, порыв и/или проделанную автором работу.Jmann
09.01.2017 14:22Хорошая функция и не знал даже. Но у меня скорее всего такого нет. Еще один момент, что фары светят вперед и при въезде в темное помещение не будет полноценного освещения.
AlexeyLebedev
10.01.2017 08:21Вопрос: в схемах фотодрайвера и материнки указаны диоды зеннера или стабилитроны? В чем их разница? Не пинайте сильно, если не в тему, я уже новичок, вырос, когда были радиолампы и транзисторы МП39, направьте куда нужно, спасибо…
Если использовать стабилитроны, что изменится?Jmann
10.01.2017 08:23Абсолютно ничего, Американский физик первым описал свойство стабилитрона. Стабилитрон и диод Зенера — это одно и то же.
Jmann
10.01.2017 08:28+1Я сам вырос на МП26-МП41, в детстве ковырял с плат, которые находил у друзей и одноклассников гаражах. Первый девайс был у меня изготовлен по "нанотехнологиям", на картонке =)
Это 2000 год.
AlexeyLebedev
10.01.2017 09:54Знакомая технология изготовления «печатных плат» :) Сам частенько к таким прибегал, если не было фанеры для навесного монтажа. Спасибо за ответ, успехов, с прошедшими праздниками!!!
telobezumnoe
вероятно я напишу глупость, но мне кажется избыточным подобное проектирование. конечно можно шим блок питания разработать с нуля и тд. но для подобного устройства имхо излишне. проще взять какой нибудь контроллер от ардуино до nodeMCU, подключить твердотельное реле соответствующее нагрузке, и запитать все от старого телефонного блока питания, плюс всякие mqtt и еще какие нибудь средства контроля и автоматизации
alexkunin
Исходя из «лень», я бы прикрутил к выключателю неонку или купил бы готовый выключатель с подстветкой. Но, конечно, это было бы не так интересно.
telobezumnoe
все равно же удобнее, когда свет включается отключается автоматически, вообще не стоит идти к выключателю, или же думать выключил свет или нет (вот настоящая лень-двигатель прогресса
iig
Проходной выключатель (2шт) решил бы эту проблему… Но тогда не было бы статьи
Jmann
Это уже не автоматизация.
iig
Автоматизация ради автоматизации. Если (когда) home made в единственном экземпляре контроллер поломается/заглючит, что делать? Создавать копию (аналог) из того что под рукой?
Jmann
А что там может заглючить кроме программы? (кстати в программе нет watchdog, это мой недочет) но и код выложен, можно под себя поправить. Электроника дубовая в принципе, гореть и глючить нечему. В любом случае можно отсоединить от входа выключателя и на контакт с лампой соединить, и будет выключатель работать по дефалту.
Rumlin
У человека проблема найти в темноте гаража кнопку. А в случае длинного коридора в доме/ квартире это была бы статья как простробить стену под новую проводку и выжить. Т.к. портить ремонт никому не позволено :)
Jmann
До выключателя в темноте еще нужно дойти. В моем случае выключатель находится возле дверного проема с другой стороны. Я физически не увижу подсветку.
Argons
Я щас конечно тоже глупость ляпну и не было бы никакой статьи, как насчет просто датчика движения с таймером коих в магазинах полно на любой вкус хоть сразу встроенные в патрон для лампочки?
Jmann
По началу была такая идея. В начале статьи это указано.
telobezumnoe
вероятно они просто дороже, можно аналог меньше 300 рублей слепить, плюс реагирует на освещенность, да еще и другими нагрузками можно управлять, в зависимости от сценариев.
Jmann
Зачем стрелять по воробьям ракетой, когда с этим справляется 8ми ногий микроконтроллер семейства Tinny.
telobezumnoe
согласен, но с другой стороны удобно контролировать текущее состояние средств автоматики, да и вдруг впоследующем вообще автоматические ворота решите сделать. и тут цена того же nodeMCU всего 200 руб, и запас в модернизации
Jmann
Этот проект я продумал только для автономной работы с расширяемыми функциями. В данном случае мне не нужен был удаленный контроль и сбор телеметрии.
areht
хм… А зачем стрелять 8-ми ногим контроллером, если с задачей справляется фоторезистор ( http://img.alibaba.com/img/pb/061/452/919/919452061_739.jpg ) и 555 таймер на 5 часов.
Jmann
Вы можете устанавливать что вам угодно, идея не навязчива, автор лишь поделился своим открытым решением.
areht
При отсутствии ответа на «зачем» это не «открытое решение», а «легаси код»
Jmann
Все зависит от решения, в данном автомате оно гибкое, возможно вы захотите расширить функционал, решение на таймере 555 без переделки паяльником скорее всего невозможно. А так подключим шнурок программатора и перезапишем исполняемую программу (захотим изменить время отключения, паузы переключений автомата, debounces сигналов с датчиков и тд.). Для элементарного примера, вначале статьи я писал, что можно просто к PIR-датчику подключить ключ с реле и получаем готовый автомат.
areht
Там в датчике паузы и так отверткой программируются. Скручивать в ноль и реализовывать то же программно?
gsaw
Я так и делал. На терассе поставил датчик движения, что бы знать, когда кошки приходят, к нему подсветку подключил. Иногда на терассе жена ставила белье сушится и в ветренную погоду срабатывал датчик на редкое движение белья. Для компенсации я перепрограммировал микроконтроллер так, что бы подсветка только после второго срабатывания включалась. Никогда не знаешь, что может повлиять на работу, а перепрограммировать дешевле, чем железяку переделывать. Или если захочется тоже устройство поставить в другом месте, с другими условиями.
areht
Хм… А живого человека ждать второго срабатывания не бесит?
gsaw
Это было сделанно для живых кошек, люди через террасу не ходят. Там подсветка небольшого участка перед дверью на террасу, что бы было видно кошку из комнаты. Помимо подсветки еще шлется сообщение через Телеграмм. Если человек потопчется перед дверью более 20 секунд, то и на него сработает. Освещение на террасе руками включается, у нас никто не курит, и сидим на террасе не часто. Проще конечно было бы дырку для кошек в балконной двери сделать, но квартиру мы снимаем, что-то менять не хочется.