Управление нагрузкой при помощи датчика освещённости на базе Arduino
Здесь мы рассмотрим схему управления нагрузкой на базе Arduino (Ардуино), которая при срабатывании будет запускать радиоприёмник, настроенный на любимую радиостанцию.
Причём, в одном из вариантов схемы приёмник будет включаться при наступлении соответствующего момента времени, а в другом варианте включение приёмника будет инициировать превышение освещённостью комнаты определённого порога (например, утром).
В качестве приёмника можно использовать любую другую нагрузку, с которой может работать реле
данного типа (по спецификации пик – 250 В в 10 ампер) – от лампочек, до двигателей, управляющих “умным домом”, створками “умной теплицы” и т.д.
Сначала рассмотрим устройство, запускающее приёмник. Данное реле работает, как выключатель, управляемый платой Arduino. Оно может по команде с Arduino размыкать или замыкать цепь, в которую реле вмонтировано. В нашем случае данное реле будет замыкать или размыкать цепь питания приемника, обеспечивая тем самым его включение или выключение.
Это реле из набора GROVE и для него по идее необходим соответствующие шилды (о шилдах см.
здесь).
Однако, мы будем подключать данное устройство к Arduino без всяких шилдов. Как следует
отсюда на контакт VCC разъёма реле (на реле VCC обозначено) необходимо подать +5В (есть на плате Arduino), к GND подключить “землю” Arduino, а на вход SIG подать один из цифровых выходов Arduino, например, D1.
Теперь подключим контакты реле “в разрыв питания” приёмника. Сделаем всё это следующим образом:
рис.1h
В Arduino при этом должен быть загружен следующий скетч (
скачать). О загрузке скетчей см.
здесь. Этот скетч переводит цифровой выход D1 в состояние HIGH, что является командой для реле замкнуть контакт (это включает приёмник), через следующие 10 сек D1 переводится в состояние LOW – контакт размыкается, приёмник выключается, через следующие 10 сек приёмник включается и так по кругу до бесконечности.
Вы можете сами модифицировать этот скетч, выставив свои временные промежутки и т.д.
Теперь про датчик освещённости типа
вот этого. В соответствии с информацией
отсюда к VCC датчика (на нём обозначено) нужно подключить +5В, к GND – землю Arduino, а выход SIG подать на один из аналоговых входов Arduino.
Так и сделаем, а в качестве аналогового входа возьмем A0. Arduino будет считывать данные с входа A0 и подавать их на программу построения графиков Stamp Plot (о настройке Arduino для считывания данных с A0 и просмотре этих данных на Stamp Plot см.
здесь). В результате получаем вот такое подключение:
рис.2h
Здесь у меня данные передаются на компьютер по каналу блютуз, хотя можно и по USB кабелю (см.
здесь). Также необходимо отметить, что переключатель питания на Arduino стоит в положении 5V. В результате, заслоняя датчик от света и открывая его, получим соответствующее изменение напряжения на A0. На Stamp Plot это выглядело так:
рис.3h
Теперь подключим к Arduino одновременно датчик освещённости и реле, а в саму плату загрузим скетч (
скачать). Этот скетч подаёт на цифровой вход D1 HIGH при превышении на A0 уровня в 500 единиц (этому соответствует превышение освещённостью определённого уровня). В итоге если мы, например, в тёмной комнате включим свет, то Arduino включит радиоприёмник.
рис.4h
p.s. Для того, кто интересуется объяснениями понятий математики, физики, техники что называется "на пальцах" можно посоветовать вот эту
книгу и в частности главы из её разделов "Математика", "Физика", "Техника" (саму книгу или отдельные главы из неё вы можете приобрести
здесь).
Обсудить на форуме
Комментарии