код для фоторезистора ардуино

Arduino для начинающих. Урок 7. Подключение фоторезистора

код для фоторезистора ардуино

Продолжаем серию уроков “Arduino для начинающих”. Сегодня подключаем фоторезистор (фотоэлемент) к плате Arduino. Фоторезисторы используются в роботах как датчики освещенности. В статье видео-инструкция, листинг программы, схема подключения и необходимые компоненты.

Фоторезистор — резистор, сопротивление которого зависит от яркости света, падающего на него. В нашей модели светодиод горит, только если яркость света над фоторезистором меньше определенной, эту яркость можно регулировать программно.

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

Видео-инструкция сборки модели Arduino с фоторезистором:

Для сборки модели с сервоприводом нам потребуется:

код для фоторезистора ардуино

Необходимые компоненты для подключения фоторезистора на Arduino

Схема подключения модели Arduino с фоторезистором:

код для фоторезистора ардуино

Схема подключения фоторезистора на Arduino

Для работы этой модели подойдет следующая программа (программу вы можете просто скопировать в Arduino IDE):

Так выглядит собранная модель Arduino с фоторезистором:

код для фоторезистора ардуино

Готовая модель подключения фоторезистора на Arduino

Если светодиод не реагирует на изменение освещенности, то попробуйте поменять число 800 в программе, если он все время горит — уменьшите, если не горит — увеличьте.

Смотрите также:

Посты по урокам:

Все посты сайта «Занимательная робототехника» по тегу Arduino.

Наш YouTube канал, где публикуются видео-уроки.

Не знаете, где купить Arduino? Все используемые в уроке комплектующие входят в большинство готовых комплектов Arduino, их также можно приобрести по отдельности. Подробная инструкция по выбору здесь. Низкие цены, спецпредложения и бесплатная доставка на сайтах AliExpress и DealExtreme. Если нет времени ждать посылку из Китая — рекомендуем интернет-магазины Амперка и DESSY. Низкие цены и быструю доставку предлагает интернет-магазин ROBstore. Смотри также список магазинов.

Источник

Как использовать фоторезистор вместе с Ардуино?

Использование фоторезистора вместе с Ардуино, аналоговое значение отображаем на последовательном мониторе.

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

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

код для фоторезистора ардуино

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

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

Комплектующие

Для создания проекта нам понадобятся:

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

Схемы соединения

Вариантов соединений фоторезистора с Ардуино может быть несколько, но мы разберем пару вариантов.

Вариант 1

код для фоторезистора ардуино

Вариант 2

код для фоторезистора ардуино

Выше показана вторая схема, которую вы можете использовать, чтобы начать любые эксперименты. Фоторезистор и резистор 10 кОм питаются от источника питания 5 В Arduino и образуют делитель потенциала, который защищает Arduino от коротких замыканий и гарантирует, что по крайней мере какое-то сопротивление всегда присутствует на линии.

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

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

Коды проекта

Согласно нашим схемам мы приведем примеры различных вариантов для работы фоторезистора с Ардуино с некоторыми разъяснениями.

Вариант 1

В «void setup» мы инициализируем последовательный монитор:

Затем мы читаем аналоговое значение, поступающее от фоторезистора, и определяем его как value («значение»):

И мы записываем значение на последовательном мониторе:

Вариант 2

Чтобы убедиться, что все работает правильно, вы можете создать базовый эскиз, который считывает уровень напряжения и выводит значение в последовательный порт. Закрывая фоторезистор, вы увидите изменение показаний.

Чтобы создать эскиз вольтметра:

Чтобы загрузить эскиз на свой Arduino и посмотреть результат нужно:

Обнаружение изменений

Точные значения, выводимые на последовательном мониторе в скетче выше, будут различаться в зависимости от нескольких факторов:

Гораздо важнее обнаруживать изменения уровня освещенности, чем иметь дело с реальными цифрами.

Эскиз ниже считывает уровень освещенности в процедуре настройки для использования в качестве базового измерения, а затем определяет, когда фоторезистор закрыт. Когда это происходит, при вызове digitalWrite() загорается встроенный светодиод Arduino на цифровом выводе 13.

Установка порогов

Вы можете подключить потенциометр разными способами, пример которого показан ниже:

код для фоторезистора ардуино

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

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

Источник

#27. Подключение фоторезистора к Arduino.

код для фоторезистора ардуино

Сегодня в уроке рассмотрим, что такое фоторезистор, и подключим его в Arduino UNO и Arduino NANO. Рассмотрим пару примеров как с помощью данного элемента электрической цепи можно управлять яркостью светодиода и светильника.

Что такое Фоторезистор?

У полупроводниковых материалов есть много интересных свойств. Одно из них – изменение сопротивления под действием света.Электрическое сопротивление полупроводниковых элементов используется в приборах под названием «фоторезистор».

код для фоторезистора ардуино

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

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

Устройство фоторезистора.

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

код для фоторезистора ардуино

Напыленный слой соединяют с электродами, на которые поступает электрический ток.

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

В этом уроке соберем электрическую схему «умного» светильника. Если в одном из предыдущих уроков, с помощью ШИМ сигнала, изменяли яркость светодиода, то сегодня мы будем использовать фоторезистор в схеме для автоматического включения светодиода. Фоторезистор будет играть роль переменного сопротивления, которое изменяет напряжение на аналоговом входе A0.

код для фоторезистора ардуино

Для урока понадобиться:

Схема подключения фоторезистора к Arduino UNO.

код для фоторезистора ардуино

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

Пояснения к коду:

Скетч умного светильника на Arduinoи фоторезисторе.

Схема подключения остается без имения. Внесем небольшие изменения в коде, и вот, что у нас получится.

Пояснения к коду:

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

код для фоторезистора ардуино

В этом уроке мы рассмотрели, как подключить фоторезистор к Arduino, в предыдущем уроке мы подключили инфракрасный датчик препятствия YL-63 к Arduino.

Появились вопросы или предложения, не стесняйся, пиши в комментарии!

Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.

Всем Пока-Пока.

И до встречи в следующем уроке.

Понравилась статья? Поделитесь ею с друзьями:

Источник

#28. Подключение модуля освещенности к Arduino.

код для фоторезистора ардуино

В данном Arduino уроке подключим модуль освещённости к Arduino, и научимся настраивать датчик для работы при различной освещённости. В основе датчика лежит светочувствительный полупроводниковый прибор – фоторезистор. Что такое фоторезистор, и как его можно подключить к Arduino, рассматривали в предыдущем уроке: «Подключение фоторезистора к Arduino». В чем преимущество модуля освещённости, и как его использовать в Arduino проектах, рассмотрим в данном уроке.

Два вида моделей освещённости.

При покупке модуля освещённости, нужно определиться с вашей задачей. Что вы планируете собрать, и как должен работать модуль освещённости. Это связано с тем, что модули освещённости бывают разные. На фото ниже приведены 2 модуля освещённости.

код для фоторезистора ардуино

Аналоговый модуль освещённости KY-018.

Arduino модуль освещённости KY-018 черного цвета. Этот модуль состоит из фоторезистора и линейного резистора 10 кОм. Сопротивление фоторезистора будет уменьшаться при наличии света, и увеличиваться при его отсутствии. Выход аналоговый, и он определяет интенсивность света.

код для фоторезистора ардуино

Схема подключения модуля освещённости KY-018 к Arduino.

код для фоторезистора ардуино

На модуль подается питание 5 Вольт, а в зависимости от освещенности в помещении, на выходе модуля (S) меняется напряжение от 0 до 5 Вольт. При подаче этого сигнала на аналоговый вход микроконтроллера, Arduino преобразует сигнал, при помощи АЦП, в диапазоне значений от 0 до 1023.

код для фоторезистора ардуино

Скетч для модуля освещённости KY-018.

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

Цифровой датчик освещённости на LM393.

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

код для фоторезистора ардуино

Модуль освещенности на LM393.

Модуль освещенности на LM393 используется для измерения интенсивности света в различных устройствах, таких как: автоматизация света (включение света ночью), в роботах (определение дня или ночи) и приборах, контролирующих уровень освещенности. Измерение осуществляется с помощью светочувствительного элемента (фоторезистора), который меняет сопротивление в зависимости от освещенности.

Технические параметры

Общие сведения датчик освещённости на LM393.

Существуют два модуля на базе LM393, их визуальное отличие только в количестве выводов (3 pin и 4 pin), дополнительный вывод добавлен для снятия прямых показаний с фоторезистора (аналоговый выход), по аналогии работы модуля KY-018. Рассмотрим четырех контактный вариант модуля. У этих двух модулей измерение осуществляется с помощью фоторезистора, который изменяет напряжение в цепи, в зависимости от количества света, попадающего на него. Чтобы представить, как свет будет влиять на фоторезистор, приведу краткую таблицу.

код для фоторезистора ардуино

Модуль освещенности с четырьмя выводами содержит два выходных контакта, аналоговый и цифровой, и два контакта для подключения питания. Для считывания аналогово сигнала предусмотрен отдельный вывод «AO», с которого можно считать показания напряжения с 0 В … 3.3 В или 5 В, в зависимости от используемого источника питания. Цифровой вывод DO, устанавливается в лог «0» или лог «1», в зависимости от яркости, чувствительность выхода можно регулировать с помощью поворотного потенциометра. Выходной ток цифрового выхода способен выдать более 15 мА, что очень упрощает использование модуля, и дает возможность использовать его, минуя контроллер Arduino, и подключая его напрямую к входу одноканального реле, или одному из входов двухканального реле. Принципиальная схема модуля освещенности на LM393 с 3 pin и 4 pin, показана ниже.

Принципиальная схема модуля освещенности на LM393 с 4 pin.

код для фоторезистора ардуино

Принципиальная схема модуля освещенности на LM393 с 3 pin.

код для фоторезистора ардуино

код для фоторезистора ардуино

Назначение J1 (в исполнении 4 pin)

Назначение J1 (в исполнении 3 pin)

Подключение модуля освещенности к Arduino UNO.

код для фоторезистора ардуино

Подключение модуля освещенности к Arduino NANO

код для фоторезистора ардуино

Подключение:

В данном примере буду использовать модуль освещенности LM393, 3 pin, и Arduino UNO, все данные будут передаваться в «Мониторинг порта». Схема не сложная, необходимо всего три провода, сначала подключаем D0 к 2 цифровому пину Arduino, осталось подключить питание GND к GND и VCC к 5V (можно запитать и от 3.3В), схема собрана, теперь надо подготовить программную часть.

Запускаем среду разработки и загружаем данный скетч, затем открываем мониторинг порта.

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

код для фоторезистора ардуино

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

код для фоторезистора ардуино

Появились вопросы или предложения, не стесняйся, пиши в комментарии!

Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.

Всем Пока-Пока.

И до встречи в следующем уроке.

Понравилась статья? Поделитесь ею с друзьями:

Источник

Ардуино: датчик света на фоторезисторе

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

Еще одно применение датчиков света — это детектирование препятствия роботом, путешествующем по лабиринту. Либо детектирование линии роботом следопытом (LineFollower). Но в этих двух случаях, в паре с датчиком света используют специальный источник света.

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

код для фоторезистора ардуино

Различаются фоторезисторы по диапазону сопротивления. Например:

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

код для фоторезистора ардуино

Подключение

Для того, чтобы подключить наш фоторезистор к Ардуино Уно, необходимо будет вспомнить урок, посвященный аналого-цифровому преобразованию (АЦП). Ведь на выходе цепи фоторезистора мы получим некое напряжение, в диапазоне от 0 до 5 Вольт, которое нам потребуется превратить во вполне себе конкретное число, с которым уже будет работать программа микроконтроллера. Держа в уме, что в Ардуино Уно есть 6 аналоговых входов на ногах A0-A5, подключаем фоторезистор по следующей схеме:

код для фоторезистора ардуино

Внешний вид макета

код для фоторезистора ардуино

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

код для фоторезистора ардуино

Программа

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

Запустив эту программу у нас в хакспейсе, мы получили следующие значения с датчика:

код для фоторезистора ардуино

А теперь прикроем датчик рукой:

код для фоторезистора ардуино

Видно, что значение сильно меняется. От 830 при прямом попадании света, до 500 в случае затенения (появление преграды на пути света). Зная такое поведение, мы можем численно определить порог срабатывания. Пусть он будет равен, скажем, 600. Не ровно 500, потому что мы хотим обезопасить себя от случайного срабатывания. Вдруг над датчиком пролетит муха — он слегка затенится, и покажет 530.

Наконец, добавим в программу некое действие, которое будет совершаться если уровень освещенности станет ниже заданного порога. Самое простое, что мы можем сделать — это зажигать на Ардуино штатный светодиод #13. Получается такая вот программа:

Накрываем датчик рукой (или выключаем свет в комнате) — светодиод зажигается. Убираем руку — гаснет. Работает, однако. А теперь представьте, что вы зажигаете не светодиод, а подаете сигнал на реле, которое включает лампу в подъезде вашего дома. Получаеся готовый прибор для экономии электроэнергии. Или ставите такой датчик на робота, и он при наступлении ночи ложится спать вместе с вами 🙂 В общем, как говорил профессор Фарнсворт, у датчика света тысяча и одно применение!

К размышлению

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

код для фоторезистора ардуино

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

Во-вторых, чтобы измерять освещенность в люксах, инженеры-осветители используют более сложные датчики — люксметры. Задача такого датчик — чувствовать свет, также, как глаз человека. Модуль люксметра тоже легко подключается к Ардуино, но об этом на другом уроке.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *