Андрей Смирнов
Время чтения: ~17 мин.
Просмотров: 0

Датчик протечки и дождя ардуино

О фоторезисторах

Фоторезисторы, также известные как светозависимые резисторы (LDR) или фотоэлементы, представляют собой недорогие переменные резисторы, сопротивление которых изменяется в зависимости от количества света, попадающего на его поверхность. В темных условиях сопротивление высокое; в светлых условиях сопротивление ниже.

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

Код и схемы ниже описывают использование фоторезистора с Arduino. Наш урок не является подробным руководством, и новичкам, которые не знакомы с Ардуино, мы рекомендуем взглянуть на другие уроки на нашем сайте по изучению основ Arduino. Люди с опытом в области электронной инженерии могут предпочесть более продвинутый курс, который охватывает проводку, установку и программирование Arduino и взаимодействие с LabView. Но надеемся, что наш урок будет полезен всем.

Wrapping up

In this post you’ve learned how to detect colors with the TCSP3200 color sensor.

You can easily build a color sorting machine by simply adding a servo motor.

Do you have project ideas related to color sorting?

Let us know by posting a comment below.

If you like this post, you’ll probably like these posts:

  • 21 Arduino Modules You Can Buy For Less Than $2
  • Guide for Real Time Clock (RTC) Module with Arduino (DS1307 and DS3231)
  • Guide for 0.96 inch OLED Display with Arduino
  • 20 Free Guides for Arduino Modules and Sensors
  • Guide for DHT11/DHT22 Humidity and Temperature Sensor With Arduino

Thanks for reading,

Rui and Sara

Работа ИК — датчика

В электронной схеме датчика, микрочип преобразует входной аналоговый сигнал в цифровой выходной сигнал.
   Для большинства изделий ПИР датчик стал незаменимым элементом благодаря потребительским свойствам, заслуженно вошел в нашу жизнь и верно служит для обнаружения движения на порученных объектах. Благодаря малому энергопотреблению двух элементов питания хватает на год беспрерывной работы. Не забываем, что датчик не способен определить сколько людей находится в контролируемой зоне и на каком они расстоянии от датчика. Самые распространенные сенсоры D203B, D204B, D205B и др.
   ИК-датчик, для улучшения его характеристик, выпускается в герметически закрытом металлическом корпусе, улучшающий шумовые, температурные и защитные свойства.
   В корпусе имеется окно, которое изготовлено из ИК-прозрачного материала, защищающий чувствительный элемент. На пластине располагаются два сбалансированных сенсора.
Зона чувствительности детектора PIR имеет вид.

   В отличие от инфракрасных оптических датчиков, которые используют LED — передатчик и ИК — приемник, ПИР- сенсор ничего не излучает, он работает в пассивном режиме, принимает слабое инфракрасное излучение от объектов. Самым распространенным источником сигнала для сенсора PIR является организм человека, поэтому это свойство успешно применяется для автоматического включения освещения, систем сигнализации и открывания дверей.
   Любой объект, при температуре выше абсолютного нуля, является источником инфракрасного излучения. Это излучение невидимое для человеческого глаза, но не для пироэлектрических материалов который использует PIR датчик. При воздействии инфракрасного излучения, в пироэлектрических материалах образуется слабый электрический заряд, похожий на заряд создаваемый в солнечных батареях.
   Температура тела примерно 34-градуса, как правило, она выше, чем температура общего фона. При нахождении человека в зоне датчика, его более высокая температура вызывает появление потенциала в пироэлектрическом материале. Электронной схемой усиливается слабый сигнал, сгенерированный инфракрасным излучением и далее поступает на вход дифференциального компаратора. Компаратор сравнивает уровень сигнала с предыдущими значениями, что вызывает его срабатывание. В действительности, это слишком простой механизм работы, который может быть использован с любым источником излучения, в том числе таких, как яркий солнечный свет, появления отражений от объектов в жаркие и солнечные дни.
Разработан и применяется алгоритм уменьшения ложных срабатываний. Во-первых, человеческое тело испускает инфракрасное излучение длиной волн от 9 до 10 мкм.

Схема прохождения сигнала от датчика движения.

1Описание и принцип действия ИК датчика препятствий

Инфракрасное (ИК) или infrared (IR) излучение – это невидимое человеческим глазом электромагнитное излучение в диапазоне длин волн от 0,7 до 2000 мкм. Вокруг нас существуют огромное количество объектов, которые излучают в данном диапазоне. Его иногда называют «тепловое излучение», т.к. все тёплые предметы генерируют ИК излучение.

Длины волн разных типов электромагнитного излучения

Модули на основе ИК излучения используются, в основном, как детекторы препятствий для различного рода электронных устройств, начиная от роботов и заканчивая «умным домом». Они позволяют обнаруживать препятствия на расстоянии от нескольких сантиметров до десятков сантиметров. Расстояние до препятствия при этом определить с помощью ИК-сенсора невозможно.

Если оснастить, для примера, своего робота несколькими такими ИК модулями, можно определять направление приближения препятствия и менять траекторию движения робота в нужном направлении.

Модуль сенсора обычно имеет излучатель (светодиод) и детектор (фотодиод) в инфракрасном диапазоне. Инфракрасный светодиод излучает в пространство ИК излучение. Приёмник улавливает отражённое от препятствий излучение и при определённой интенсивности отражённого излучения происходит срабатывание. Чтобы защититься от видимого излучения, фотодиод имеет светофильтр (он выглядит почти чёрным), который пропускает только волны в инфракрасном диапазоне. Разные поверхности по-разному отражают ИК излучение, из-за чего дистанция срабатывания для разных препятствий будет отличаться. Выглядеть ИК модуль может, например, вот так:

Модуль с ИК излучателем и ИК приёмником

Когда перед сенсором нет препятствия, на выходе OUT модуля напряжение логической единицы. Когда сенсор детектирует отражённое от препятствия ИК излучение, на выходе модуля напряжение становится равным нулю, и загорается зелёный светодиод модуля.

Помимо инфракрасного свето- и фотодиода важная часть модуля – это компаратор LM393 (скачать техническое описание на LM393 можно в конце статьи). С помощью компаратора сенсор сравнивает интенсивность отражённого излучения с некоторым заданным порогом и устанавливает «1» или «0» на выходе. Потенциометр позволяет задать порог срабатывания ИК датчика (и, соответственно, дистанцию до препятствия).

Подключение фоторезистора к датчику

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

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

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

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

В качестве источника питания используется сам фоторезистор – датчик освещенности – ардуино. Одной контактной ногой он соединяется с землей, а другой – с аналогово-цифровым преобразователем платы. Вместо АЦП может быть задействован аналоговый пин А0. Ко второй ножке подключается резистор сопротивлением 10 кОм.

Основными функциями дополнительного резистора являются ограничение тока в цепи и формирование требуемого напряжения в схеме с делителем. Ток нужно ограничивать в тех случаях, когда при полном освещении у фоторезистора резко снижается сопротивление. Формирование напряжения требуется для аналогового порта с установленным значением сопротивления. Для нормальной работы фоторезистора вполне достаточно 1 кОм.

За счет изменяющегося сопротивления резистора становится возможной регулировка чувствительности в сторону низкого и высокого уровня освещения. Например, при 1 кОм датчик быстрее определит высокую степень освещенности, а при 10 кОм ускоряются переключения после увеличения света.

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

Датчик расстояния в проектах Arduino

Способность ультразвукового датчика определять расстояние до объекта основано на принципе сонара – посылая пучок ультразвука, и получая его отражение с задержкой, устройство определяет наличие объектов и расстояние до них. Ультразвуковые сигналы, генерируемые приемником, отражаясь от препятствия, возвращаются к нему через определенный промежуток времени. Именно этот временной интервал становится характеристикой помогающей определить расстояние до объекта.

Внимание! Так как в основу принципа действия положен ультразвук, то такой датчик не подходит для определения расстояния до звукопоглощающих объектов. Оптимальными для измерения являются предметы с ровной гладкой поверхностью

Описание датчика HC SR04

Ультразвуковой дальномер HC SR04 имеет такие технические параметры:

  • Питающее напряжение 5В;
  • Рабочий параметр силы т ока – 15 мА;
  • Сила тока в пассивном состоянии < 2 мА;
  • Обзорный угол – 15°;
  • Сенсорное разрешение – 0,3 см;
  • Измерительный угол – 30°;
  • Ширина импульса – 10-6 с.

Датчик оснащен четырьмя выводами (стандарт 2, 54 мм):

  • Контакт питания положительного типа – +5В;
  • Trig (Т) – выход сигнала входа;
  • Echo (R) – вывод сигнала выхода;
  • GND – вывод «Земля».

Схема взаимодействия с Arduino

Для получения данных, необходимо выполнить такую последовательность действий:

  • Подать на выход Trig импульс длительностью 10 микросек;
  • В ультразвуковом дальномере hc sr04 подключенном к arduino произойдет преобразование сигнала в 8 импульсов с частотой 40 кГц, которые через излучатель будут посланы вперед;
  • Когда импульсы дойдут до препятствия, они отразятся от него и будут приняты приемником R, что обеспечит наличие входного сигнала на выходе Echo;
  • На стороне контроллера полученный сигнал при помощи формул следует перевести в расстояние.

При делении ширины импульса на 58.2, получим данные в сантиметрах, при делении на 148 – в дюймах.

Подключение HC SR04 к Arduino

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

Контакт земли подключаем к выводу GND на плате Arduino, выход питания соединяем с 5V. Выходы Trig и Echo подсоединяем к arduino на цифровые пины. Вариант подключения с помощью макетной платы:

Библиотека для работы с HC SR04

Для облегчения работы с датчиком расстояния HC SR04 на arduino можно использовать библиотеку NewPing. Она не имеет проблем с пинговыми доступами и добавляет некоторые новые функции.

К особенностям библиотеки можно отнести:

  • Возможность работы с различными ультразвуковыми датчиками;
  • Может работать с датчиком расстояния всего через один пин;
  • Отсутствие отставания на 1 секунду при отсутствии пинга эха;
  • Для простой коррекции ошибок есть встроенный цифровой фильтр;
  • Максимально точный расчет расстояния.

Скачать бибилотеку NewPing можно здесь

Точность измерения расстояния датчиком HC SR04

Точность датчика зависит от нескольких факторов:

  • температуры и влажности воздуха;
  • расстояния до объекта;
  • расположения относительно датчика (согласно диаграммы излучения);
  • качества исполнения элементов модуля датчика.

В основу принципа действия любого ультразвукового датчика заложено явление отражения акустических волн, распространяющихся в воздухе. Но как известно из курса физики, скорость распространения звука в воздухе зависит от свойств этого самого воздуха (в первую очередь от температуры). Датчик же, испуская волны и замеряя время до их возврата, не догадывается, в какой именно среде они будут распространяться и берет для расчетов некоторую среднюю величину. В реальных условиях из-за фактора температуры воздуха HC-SR04 может ошибаться от 1 до 3-5 см.

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

Также для повышения точности надо правильно направить датчик: сделать так, чтобы предмет был в рамках конуса диаграммы направленности. Проще говоря,  “глазки” HC-SR04 должны смотреть прямо на предмет.

Для уменьшения ошибок и погрешности измерений обычно выполняются следующие действия:

  • усредняются значения (несколько раз замеряем, убираем всплески, потом находим среднее);
  • с помощью датчиков (например, DHT11 или DHT22) определяется температура и вносятся поправочные коэффициенты;
  • датчик устанавливается на серводвигатель, с помощью которого мы “поворачиваем голову”, перемещая диаграмму направленности влево или вправо.

KY-002, датчик вибрации SW-18015P

KY-002 внешний вид

KY-002 схема датчика

 Датчик вибрации стоит около 7 р, сама плата датчика от 60 р за шт.
 Применяется в схемах где необходимо слежение за вибрацией, т.е., например, в схемах автосигнализации на вибрацию корпуса или в производственных схемах за слежением вибрации. У меня такого датчика нет но вероятно устройство следующее: представляет собой трубку в трубке, причем внутренняя трубка имеет некоторые свободный ход. Вероятно подвешена на пружине (в принципе изготовление «на коленке» займет от силы 10 минут). При вибрации внутренняя трубка начинает колебаться и, таким образом, касается стенок наружной трубки. Эти касания подают на выход датчика логический ноль, в то время как в состоянии отсутствия вибрации на выходе логическая единица. Пример обработки сигналов дачтчика вибрации можете посмотреть ЗДЕСЬ.

Как использовать интерфейс PIR Wireless Motion Sensor с Arduino

Ранее мы приводили некоторые схемы безопасности для дома, построенные на дискретных компонентах. Сегодня же рассмотрим схему с применением Arduino и PIR датчика присутствия. Мы приведем принципиальную схему устройства, рассмотрим подключение PIR -датчика к Arduino и разберем скетч.

Наша домашняя система безопасности обнаруживает движение человека и включает свет и звуковой сигнал.

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

Использование

  • После сборки и прошивки устройство требует загрузки конфигурации (с помощью утилиты).
  • При подключении к USB нормальная работа устройства приостанавливается, очередь неотправленных сообщений очищается.
  • При неудачной отправке SMS, устройство произведет повторную попытку через 2 минуты, затем через 5, 10, 20, дважды через 40 и затем каждые 12 часов.
  • После принятого звонка, он будет завершен через 3 минуты.
  • Звуковая сигнализация включается на 30 секунд.
  • События «открытие двери», «движение» и «изменения освещения» срабатывают не чаще, чем раз в 20 мин.
  • Если питание устройства отсутствует более 3 часов, то записанная история измерения температуры сбрасывается.

Умные лампочки

Наверно, многие слышали про так называемые умные лампы. Основной особенностью таких лам является управление их параметрами через смартфон, подключенный к Wi-Fi сети. По сути, вы можете регулировать яркость этих ламп, включать и отключать их посредством программы вашего Android или iPhone телефона. Наиболее популярными умными лампами от именитых брендов являются:

  • LightFreq;
  • Nanoleaf Bloom;
  • BeON;
  • Vocca;
  • Philips Hue;
  • LIFX.

Теперь рассмотрим пример использования нашумевшей умной лампочки LIFX. Популярность эта лампочка приобрела, когда всего за шесть дней смогла набрать сумму более миллиона долларов на краудфандинговой площадке Kickstarter. Собрать такую внушительную сумму LIFX помогла ее простота подключения. Для этой лампочки не нужно дополнительных модулей, которые занимают дополнительное место в квартире. Чтобы заставить ее работать, достаточно вкрутить лампу в цоколь E27 светильника и включить переключатель для поиска сети Wi-Fi. После установки лампочки необходимо скачать официальную программу из магазина приложений для телефонов iPhone или Android. После установки программы необходимо найти подключенную лампу в сети Wi-Fi. В программе вы найдете четыре вкладки, которые позволяют управлять таким функционалом:

  • Colors — эта вкладка позволяет выставлять различные оттенки цветов, которых в этой лампе 16 миллионов;
  • Whites — эта вкладка позволяет выставлять уровень яркости белого цвета, который мы используем в обычных лампах;
  • Themes — множество предустановленных тем, которые активируют различные световые эффекты;
  • Effects — это меню позволяет создавать свои собственные световые эффекты.

На сегодняшний день начальная цена на самую простую модификацию лампы LIFX составляет 30 долларов. Если вы будете приобретать комплекты от двух, трех или выше ламп, то вы сможете существенно сэкономить.

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

Разновидности

Современный рынок предлагает три вида звуковых датчиков, включающих освещение. Это стандартные звуковые и оптико-акустические модели, а также приборы, реагирующие ещё и на движение.

  1. Если классические звуковые модели способны реагировать только на звуковую волну, то оптико-акустические приборы работают несколько по иной схеме. Помимо приёма и обработки звукового сигнала, они способны самостоятельно оценивать уровень освещённости помещения и не позволят включить лампу в светлое время суток, несмотря на присутствие шума. В конструкцию таких моделей входит чувствительный фотоэлемент, реагирующий на количество света в помещении.
  2. Звуковые датчики с функцией движения способны включать свет как при прохождении звуковой волны, так и при появлении человека или животного. Однако такие модели не очень удобны в том плане, что часто реагируют на грызунов и домашних питомцев, повышая тем самым процент ложных срабатываний.
  3. Стандартные звуковые модели подразделяются на два типа: приборы, срабатывающие от любого шума и командные образцы.

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

Образцы дополнены функцией задержки времени отключения и самостоятельно отключаются только через 50-60 секунд после стихания последнего шума. Некоторые модели данного вида оснащены дополнительной опцией задержки включения, которая не позволит прибору зажечь свет от короткого акустического удара, например, раската грома или сигнала авто. Устройство включит свет только в том случае, если шум будет продолжаться в течение сколько-нибудь продолжительного времени. Параметры времени в большинстве случаев можно запрограммировать самому. Достоинствами вида является простота устройства и низкая цена. К недостаткам относят невозможность установки в подъезды, выходящие окнами на шумную магистраль, и использование в жилых помещениях.

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

Более сложные модели способны различать голосовые команды, состоящие из кодовых слов. Однако такие образцы больше являются творением домашних умельцев и на рынке присутствуют в ограниченном количестве. Достоинствами моделей этого вида является возможность их установки в места с умеренным шумом, на который датчик не реагирует. К недостаткам относят неудобство использования моделей, работающих по хлопку, при занятных руках.

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

О том, как выбрать датчик звука для включения света, смотрите в следующем видео.

Chillout – От души красиво

Что дальше

В планах (когда-нибудь):

  • спроектировать и напечатать корпус;
  • подключить ESP-01 для конфигурации и просмотра логов через браузер с телефона.

21.11.2018

◆ MD_TCS230() [2/4]

MD_TCS230::MD_TCS230 (uint8_t s2,
uint8_t s3,
uint8_t oe 
)

Class Constructor — minimal with multiple sensors.

Instantiate a new instance of the class. The parameters passed are used to connect the software to the hardware.

The minimum required to manage the sensor are the s2 and s3 pins for color filter selection. Optionally, the oe pin can be specified if multiple sensors are to be connected, however read the separate documentation on the hardware supported to ensure that the sensor module is suitably modified if control using oe is required.

Parameters
s2Arduino output pin connected to sensor s2 input.
s3Arduino output pin connected to sensor s3 input.
oeArduino output pin connected to sensor oe input.

Управление светодиодом

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

Включение и выключение светодиода в Ардуино

Включение светодиода произойдет в тот момент, когда мы подадим на пин, к которому он подключен, высокий уровень сигнала (напряжение). За это в Ардуино отвечает  функция digitalWrite со вторым параметром HIGH. Например, для светодиода, подключенного к пину 12 команда будет выглядеть так: digitalWrite (12, HIGH);

Чтобы выключить светодиод, мы используем ту же команду, но с параметром LOW: digitalWrite(12, LOW). Если мы вызовем первую команду, а потом чрез какой-то промежуток времени вторую, то у нас светодиод сначала загорится, а потом потухнет. Зациклив включение и выключение, мы получим постоянно включающийся и выключающийся мигающий маячок.

Бывают ситуации, когда светодиод горит не очень ярко и непонятно, что тут пошло не так. На самом деле нужно в первую очередь проверить, не забыли ли вы сконфигурировать пин в качестве выходного. Это делается добавлением функции pinMode (обычно в блоке setup()). Для нашего варианта функция будет выглядеть так: pinMode(12, OUTPUT);

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации