Датчик света, контролируемый Arduino
Мониторинг выхода резистора, зависящего от света, или фоторезистора, позволяет Arduino знать, насколько он светлый или темный. Когда свет падает ниже определенного уровня, Arduino включает несколько светодиодов.
Зависимый от света резистор или фоторезистор - это датчик, сопротивление которого уменьшается по мере увеличения количества света, на него падает. Когда оно темное, сопротивление фоторезистора может достигать нескольких MΩ. Однако, когда он свет, сопротивление фоторезистора может быть столь же низким, как несколько сотен омов.
В этом эксперименте мы подключим фоторезистор к аналоговому входу Arduino и прочитаем значение с помощью функции analogRead (). В зависимости от значения, которое читает Arduino, программа затем установит контакт 3 HIGH или LOW для включения или выключения светодиодных ночных огней. Пороговое значение равно 150. Когда значение аналогового значения меньше 150, Arduino включит светодиоды. Когда аналоговое значение, которое он читает, составляет менее 150, Arduino выключит светодиоды.
Требуется оборудование
- 1 x фоторезистор
- 2 x LED
- 2 x 470 Ом резисторы
- 1 резистор 1 кОм
- 1 x Arduino Mega2560
- 1 макет
- провода перемычки
Схема подключения
Вы подключаете компоненты, как показано на диаграмме ниже. Подключите светодиоды к контакту 3 Arduino. Два резистора 470 Ом являются резисторами, ограничивающими ток. Один вывод фоторезистора подключен к 5V, а другой - к одному из резисторов 1 кОм. Другой вывод резистора 10 кОм подключен к земле. Это формирует делитель напряжения, выход которого соединен с контактом A1 Arduino. По мере того как свет, падающий на фоторезистор, становится сильнее, сопротивление уменьшается, а выход напряжения делителя увеличивается. Обратное происходит, когда падающий свет становится слабее.

Вот фото установки:

Настроить
- Подключите один из двух разъемов LDR к 5 В, а другой - к GND через резистор на один килограмм.
- Подключите один конец провода к аналоговому контакту A1 и другому к не заземленному разъему резистора 1K.
- Соедините два светодиода параллельно, как через резистор 470 Ом, так и с отрицательной клеммой заземленной, как показано на схеме выше.
- Подключите контакт 3 к положительным клеммам светодиодов через резисторы 470 Ом.
- Подключите все заземленные клеммы к контакту GND от Arduino.
- Подключите Arduino с помощью USB-кабеля Arduino и загрузите программу в Arduino с помощью программного обеспечения Arduino IDE.
- Обеспечьте питание платы Arduino, используя блок питания, аккумулятор или кабель USB.
Если в комнате светится, светодиоды не должны гореть. Попробуйте заставить их включить его, закрыв фоторезистор рукой. Снимите руку и обратите внимание, что они снова выключились.
Код
const int led=3; // variable which stores pin number void setup() { pinMode(led, OUTPUT); //configures pin 3 as OUTPUT } void loop() { int sensor_value = analogRead(A0); if (sensor_value < 150)// the point at which the state of LEDs change { digitalWrite(led, HIGH); //sets LEDs ON } else { digitalWrite(led, LOW); //Sets LEDs OFF } }
Скачать код
видео
Попробуйте этот проект сами! Получить спецификацию.