Меню

Ардуино свет управляемый датчиком



Проект 13. Автоматическое управление светом

Устройство предназначено для управления светом. Рассмотрим два варианта управления светом либо включение или выключение осветительного прибора, либо изменение свечения светодиодной ленты.

Вариант 1:

В первом варианте будем включать ваш осветительные прибор в момент когда уровень освещенности слишком низок и вы хотели бы включить свет. Устройство само по заданному уровню определит, когда его включить и вы всегда будете находится при достаточном уровне освещенности.

Описание работы:

Для начала работы подключите питание к Arduino. Подключите к реле источник света. Теперь потенциометром отрегулируйте уровень при котором будет включаться реле, а значит и наш источник света.

Нам понадобится:
  • Arduino Uno х 1шт.
  • Trema Set Shield х 1шт.
  • Trema-модуль реле х 1шт.
  • Trema-модуль потенциометр х 1шт.
  • Trema-модуль датчик освещённости х 1шт.
  • Проводков для пайки. (в ассортименте: 5 см, 10 см, 20 см)
Схема сборки:
  • Устанавливаем Trema Set Shield в Arduino Uno.
  • Устанавливаем Trema-модуль потенциометр во 2 посадочную площадку.
  • Устанавливаем Trema-модуль реле в 4 посадочную площадку.
  • Устанавливаем Trema-модуль датчик освещённости в 6 посадочную площадку.
  • Подключаем лампочку через реле, как показано на рисунке.
Код программы:
Алгоритм работы:

В начале скетча (до кода setup) выполняются следующие действия:

В коде setup выполняются следующие действия:

  • Переводим выводы pinRele для реле в режим выхода.

В коде loop выполняются следующие действия:

  • Считываем показания потенциометра.
  • Считываем показания датчика освещенности.
  • Если показания потенциометра + 5 меньше показаний датчика освещенности, то включаем реле.
  • Если показания потенциометра — 5 больше показаний датчика освещенности, то выключаем реле.

Вариант 2:

Во втором варианте мы будем управлять светодиодной лентой. А именно чем темнее помещение, тем ярче будет светить светодиодная лента. Постепенный переход из дневного времени суток в ночной благоприятно влияет на организм и вы не заметите как наступит ночь.

Описание работы:

Для начала работы подключите питание к Arduino. Подключите источник света через силовой ключ. Теперь в зависимости от уровня освещенности наш источник света будет так же менять свое свечение. При максимальной яркости стороннего света,

Нам понадобится:
  • Arduino Uno х 1шт.
  • Trema Set Shield х 1шт.
  • Trema-модуль cиловой ключ х 1шт.
  • Trema-модуль потенциометр х 1шт.
  • Trema-модуль датчик освещённости х 1шт.
  • Источник питания на 12В. 1А. для Arduino х 1шт.
  • Коннектор power jack Мама с клемником для Arduino х 1шт.
  • Проводков для пайки. (в ассортименте: 5 см, 10 см, 20 см)
Схема сборки:
  • Устанавливаем Trema Set Shield в Arduino Uno.
  • Устанавливаем Trema-модуль потенциометр во 2 посадочную площадку.
  • Устанавливаем Trema-модуль cиловой ключ в 4 посадочную площадку.
  • Устанавливаем Trema-модуль датчик освещённости в 6 посадочную площадку.
  • Подключить светодиодную ленту к Источник питания на 12В, через Коннектор с помощью Проводков, как показано на рисунке ниже.
Код программы:
Алгоритм работы:

В начале скетча (до кода setup) выполняются следующие действия:

В коде setup выполняются следующие действия:

  • Переводим выводы pinPowerKey для силового ключа в режим выхода.

В коде loop выполняются следующие действия:

  • Проверяем показания с датчика освещенности, если показания больше максимального значения, то подаем ноль на силовой ключ.
  • Считываем показания датчика освещенности и присваиваем его значения силовому ключу в диапазоне от 255 до 0.
  • Проверяем показания с датчика освещенности, если показания меньше минимального значения, то подаем 100% напряжения на силовой ключ.
Читайте также:  Без электричество свет включит
Особенности:

В скетче присутствуют переменные «minL» — минимальная граница и «maxL» — максимальная граница. Это переменные между которыми датчик освещенности плавно переходит из яркого состояния в темное. И так как датчик освещенности в зависимости от помещения не может достигнуть своего максимального или минимального значения, вводятся константы, для того чтобы, при значениях датчика освещенности которые вышли за пределы диапазона от «minL » до «maxL», источнику света принудительно подается максимальное либо минимальное напряжение. Эти константы регулируются в скетче в начале программы.

Источник

Управление светом в доме с помощью сенсорного датчика и Arduino

Для управления различными устройствами в настоящее время придумано достаточно много разнообразных кнопок, переключателей и датчиков. Одним из подобных устройств является сенсорный датчик, который еще называют датчиком касания – от англ. Touch Sensor. Сенсорные датчики значительно упрощают ввод информации и легко подключаются к различным микроконтроллерам. Сейчас наиболее распространены емкостные сенсорные датчики – его подключение к плате Arduino мы и рассмотрим в данном проекте. С его помощью мы будем включать и выключать свет в комнате.

Сенсорный датчик (датчик касания) TTP223

Сенсорный датчик, который мы будем рассматривать в данном проекте, состоит из модуля емкостного сенсорного датчика и драйвера датчика на основе микросхемы TTP223. Рабочее напряжение для микросхемы TTP223 составляет от 2 до 5,5 В. Потребление тока у этой микросхемы очень низкое. Благодаря относительно дешевой цене, низкому энергопотреблению и легкости интеграции в различную встраиваемую электронику сенсорные датчики TTP223 получили в настоящее время достаточно широкое распространение.

Внешний датчика TTP223 показан на следующем рисунке.

Как видно из представленного рисунка, распиновка датчика достаточно проста. На одной стороне платы датчика расположена сенсорная область размером 11 мм на 10,5 мм с диапазоном срабатывания около 5 мм. На другой стороне платы датчика установлена микросхема TTP223, светодиод, резисторы и конденсатор.

При подключении датчика TTP223 к питанию по умолчанию на выходе OUT устанавливается напряжение низкого уровня (LOW). Если прикоснуться пальцем к рабочей области датчика, то выход OUT переключается с низкого уровня на высокий и загорается встроенный светодиод датчика. При необходимости настройки датчика можно использовать перемычки А и В, а так же перемычку без подписи (по умолчанию перемычки не установлены).

Назначение перемычек А и В:
► А – 0 / В – 0 – без фиксации состояния, при касании на выходе «1»
► A – 1 / B – 0 – без фиксации состояния, при касании на выходе «0»
► A – 0 / B – 1 – с фиксацией состояния (триггер), при касании на выходе «1»
► A – 1 / B – 1 – с фиксацией состояния (триггер), при касании на выходе «0»

То есть, перемычка А устанавливает логическое состояние на выходе «1» или «0» при нажатии, а перемычкой В включаем триггер и чтобы переключить состояние, необходимо повторно коснуться датчика.

Настройка чувствительности осуществляется с помощью добавления конденсатора от 0 до 50 пФ, где 0 пф соответствует максимальной чувствительности, а 50 пф – самой низкой чувствительности.

Для более подробного изучения принципов работы датчика рекомендуем вам посмотреть даташит на датчик TTP 223.

Немного о принципах работы реле

В этом проекте мы будем управлять включением/выключением электрической лампочки с помощью сенсорного датчика, платы Arduino и реле. Принцип работы реле различного типа показан на следующем рисунке.

Читайте также:  Человек который отвечает за свет

NO на этом рисунке обозначает нормально разомкнутые контакты, а NC – нормально замкнутые контакты. L1 и L2 – это выводы катушки реле. Когда на катушку реле не подано напряжения реле находится в выключенном состоянии – якорь (POLE) подключен к нормально замкнутому контакту. При подаче питания на катушку якорь реле подключается к нормально разомкнутому контакту.

Очень важно определить рабочие параметры реле перед тем как включать его в схему. Реле различаются, в частности, по рабочему напряжению, прикладываемому к катушке реле (контакты L1 и L2). Некоторые реле имеют рабочее напряжение 12 В, некоторые – 6 В, а некоторые – 5 В. Для нашего проекта мы использовали реле с управляющим (рабочим) напряжением 5 В с возможностью коммутации напряжения 250 В с током до 6 А.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. USB кабель для программирования и питания.
  3. Сенсорный датчик (Touch Sensor) TTP223 (купить на AliExpress).
  4. Транзистор BC549B (купить на AliExpress).
  5. Диод 1N4007 (купить на AliExpress).
  6. Резистор 2 кОм (купить на AliExpress).
  7. Резистор 4,7 кОм (купить на AliExpress).
  8. Реле с управляющим напряжением 5 В.
  9. Электрическая лампочка с держателем.
  10. Макетная плата.
  11. Соединительные провода.

Резистор 2 кОм, транзистор BC549B и диод 1N4007 можно заменить модулем реле.

Работа схемы

Схема управления светом в доме с помощью сенсорного датчика и платы Arduino представлена на следующем рисунке.

Транзистор используется для включения и выключения реле – он используется в связи с тем, что контакты платы Arduino не способны обеспечить ток, необходимый для срабатывания реле. Диод 1N4007 предназначен для блокировки (гашения) электромагнитных импульсов, возникающих при включении и выключении реле. Сенсорный датчик непосредственно подключен к плате Arduino.

Внешний вид собранной на макетной плате конструкции проекта показан на следующем рисунке.

А на следующем рисунке показана схема соединений проекта на макетной плате.

Объяснение программы для Arduino

Полный текст программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

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

Источник

Использование светозависимого датчика с Ардуино

Простой проект с использованием Ардуино, который автоматически включает свет, когда датчик LDR зафиксировал сумерки.

Что такое LDR?

LDR сенсор на английском звучит как Light Dependent resistor, что в переводе означает «светозависимый резистор».

Неправда ли, было бы интересно иметь под рукой устройство, которое включает свет при наступлении сумерок? Цель нашего проекта сделать именно такое устройство.

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

Чтобы обнаружить интенсивность света или темноты, мы используем датчик, называемый LDR (резистор, зависящий от света или светозависимый резистор).

LDR — это особый тип резистора, который позволяет пропускать через себя более высокие напряжения (низкое сопротивление), когда есть высокая интенсивность света, и пропускает низкое напряжение (высокое сопротивление), когда слабая интенсивность света. Мы можем воспользоваться этим свойством LDR и использовать его в нашем проекте Ардуино.

Читайте также:  Как сделать свет прихожей

Как это работает?

Эта система работает, измеряя интенсивность света в окружающей среде. Датчик, который может использоваться для обнаружения света, является LDR. Он недорогой, и вы можете купить его в любом местном магазине электроники или в Интернете.

LDR выдает аналоговое напряжение при подключении к VCC (5V), которое изменяется по величине прямо пропорционально интенсивности входного света на нем. То есть, чем больше интенсивность света, тем больше будет соответствующее напряжение от LDR.

Поскольку LDR выдает аналоговое напряжение, он подключается к выходу аналогового входа на Arduino. Arduino со встроенным АЦП (аналого-цифровым преобразователем) преобразует аналоговое напряжение (от 0-5 В) в цифровое значение в диапазоне от 0 до 1023.

Когда в окружающей среде или на ее поверхности достаточно света, преобразованные цифровые значения, считываемые из LDR через Arduino, будут находиться в диапазоне 800-1023.

Кроме того, мы запрограммируем Ардуино на включение реле. Соответственно, реле заставит включиться лампочку при слабой интенсивности света (например, вы покроете датчик LDR полотенцем или чем-то еще), то есть когда цифровые значения считаются в более высоком диапазоне, чем обычно.

Соединение Arduino и LDR датчика

Во-первых, вам необходимо подключить LDR к выходу 0 аналогового входа на Arduino. Для этого вам нужно использовать конфигурацию делителя напряжения. Схема подключения для Arduino приведена ниже.

Одна нога LDR соединена с VCC (5V) на Arduino, а другая с аналоговым выводом 0 на Arduino. Резистор 100K также подключен к одной и той же ноге и заземлен.

Тестирование кода для датчика Arduino LDR

После подключения LDR к Arduino вы можете проверить значения, поступающие из LDR через Arduino. Для этого подключите Arduino через USB к компьютеру и откройте программное обеспечение Arduino IDE. Затем вставьте этот код и загрузите его в Arduino:

После загрузки кода нажмите кнопку на Arduino IDE под названием «Последовательный монитор» (Serial Monitor). Это откроет новое окно, которое печатает на экране различные значения.

Теперь, проверьте датчик, закрыв его поверхность от света и посмотрите, какие значения показывает серийный монитор. Вот как выглядит последовательный монитор:

Подключение реле к Arduino

Реле представляет собой электромеханический выключатель. Он может использоваться для включения / выключения устройства в режиме AC / DC. Когда Arduino подает на реле высокое напряжение (5 В), он включает его (переключатель включен), в противном случае он остается выключенным.

В этом проекте мы использовали реле 5D SPDT (single pole double throw — один полюс, два направления). Одна клемма катушки реле соединена с цифровым выводом 2 Arduino, а другая с землей GND.

Мы также подключили лампочку. Поскольку мы имеем дело с напряжением переменного тока большой мощности, обязательно соблюдайте надлежащие меры предосторожности. Общая схема показана ниже:

Скетч для Ардиуно

После подключения Ардуино, как показано выше, нам нужно проверить его, загрузив финальный код. Окончательный эскиз ниже:

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

Таким образом, Arduino включает лампочку (через реле), когда интенсивность света падает ниже 700. Когда она выше 700, она выключает лампочку.

Источник