
Видео
Схема

Исходный код
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// Ночник на LDR
4// ─────────────────────────────────────────
5// Автоматически включает светодиод, когда темнеет. Делитель напряжения с
6// LDR читается на A0; когда значение падает ниже 50 (темно), светодиод на
7// D13 включается, а на свету выключается.
8//
9// Пины:
10// D13 -> Светодиод (с резистором 330 ohm)
11// A0 -> Точка соединения LDR и резистора 10k
12// Другая ножка LDR к 5V, другая ножка 10k к GND
13
14int value; // Уровень света (0-1023)
15
16void setup() {
17 pinMode(13, OUTPUT); // Выход светодиода
18}
19
20void loop() {
21 value = analogRead(A0); // Прочитать уровень света
22
23 // Порог 50: всё, что ниже, считается темнотой. Чувствительность настраивается этим числом
24 if (value < 50) {
25 digitalWrite(13, HIGH); // Темно: светодиод вкл
26 } else {
27 digitalWrite(13, LOW); // Светло: светодиод выкл
28 }
29}
30
Частые вопросы
Как определить пороговое значение?
Чтобы видеть показания, сначала добавь `Serial.begin(9600);` в setup() и `Serial.println(value);` сразу после `value = analogRead(A0);` в loop(), затем открой монитор порта на 9600 бод. Запиши значения при свете и в темноте. Если в темноте подключение даёт меньшие показания, замени 50 в `if (value < 50)` порогом, выбранным между этими двумя значениями.
Около порога светодиод мерцает. Как это предотвратить?
Когда освещённость находится прямо около порога, небольшие колебания заставляют светодиод включаться и выключаться. Если использовать два отдельных порога (один для включения, другой для выключения, например 400 и 450), то есть добавить гистерезис, мерцание исчезнет.
Светодиод освещает LDR и сам себя выключает. Что делать?
Если свет светодиода попадает на LDR, датчик решает, что вокруг светло. Размести LDR подальше от светодиода или так, чтобы он не был к нему обращён; при необходимости сделай вокруг LDR небольшой экран.
Можно ли так зажечь настоящую лампу?
Да, вместо светодиода можно подключить модуль реле и управлять лампой на 220 V. Сетевое напряжение опасно: подключай всё при отключённом от сети устройстве и попроси помощи у взрослого или электрика.
