В этом обзоре мы рассмотрим подключение фоторезистора к аналоговым портам платы Arduino. Мы разберем, как подключить фоторезистор к Ардуино Уно, принцип работы полупроводников и способы автоматизации механизмов на основе LDR фоторезистора. Мы соберем схему с автоматическим включением светодиодов, а также с автоматическим изменением яркости светодиодов, в зависимости от освещенности в помещении.
СОДЕРЖАНИЕ
Необходимые компоненты:
- Arduino Uno / Arduino Nano / Arduino Mega
- фоторезистор MLG5516B
- светодиоды и резисторы
- макетная плата
- коннекторы
Дополнительные материалы на эту тему:
Фоторезистор (ldr arduino) — это полупроводниковый прибор, который уменьшает свое электрическое сопротивление при воздействии света. На основе этого элемента собран модуль датчика освещенности ky-018 для платы Ардуино. Основной частью фоторезистора является полупроводниковый элемент (например, сульфид свинца или сульфид кадмия), расположенный на сенсоре так, чтобы на элемент максимально попадал свет.
Фоторезистор характеристики, принцип работы

Характеристики LDR MLG5516B (datasheet)
- Напряжение питания: до 150 В
- Потребляемая мощность: 100 мВт
- Температура эксплуатации: -30…+70°C
- Сопротивление при 10 Lux: 5-10 кОм
Явление фотопроводимости — это увеличение электропроводности полупроводника при воздействии электромагнитного излучения. Принцип работы фоторезистора основан на появлении подвижных носителей заряда (электронов) в результате поглощения полупроводником световой энергии, вследствие чего сопротивление ldr элемента уменьшается, то есть в электрической цепи появляется дополнительная проводимость.
Как подключить фоторезистор к Ардуино (LDR)

Соберите схему, как показано на рисунке выше. Принцип работы данной сборки заключается в следующем: сопротивление полупроводника изменяется в зависимости от освещенности в помещении, соответственно меняются данные на аналоговом входе A1 (эта информация выводится на монитор порта утилиты Arduino IDE). После сборки схемы с фоторезистором и Arduino, загрузите в микроконтроллер следующую программу.
Скетч для фоторезистора и измерения освещенности
#define LDR A1 // пин подключения ldr
unsigned int value;
void setup() {
Serial.begin(9600);
pinMode(LDR, INPUT);
}
void loop() {
value = analogRead(LDR);
Serial.print("LDR - ");
Serial.println(value);
delay(1000);
}
Подключение светодиода и фоторезистора Ардуино

В первой программе использован тип данных unsigned int, который определяет, что переменная может принимать только целое положительное значение. В следующем примере светодиод будет включаться автоматически, в зависимости от уровня освещенности. Значение при котором будет происходить включение светодиода можно изменить, оно может быть в реальности разным и зависит от сопротивления в цепи.
Скетч для автоматического включения светодиода
#define LDR A1 // пин подключения ldr
#define LED 10 // пин подключения led
unsigned int value;
void setup() {
Serial.begin(9600);
pinMode(LED, OUTPUT);
pinMode(LDR, INPUT);
}
void loop() {
value = analogRead(LDR);
Serial.print("LDR - ");
Serial.println(value);
if (value < 500) { digitalWrite(LED, HIGH); }
if (value > 500) { digitalWrite(LED, LOW); }
delay(1000);
}
Заключение. Устройство и принцип действия LDR Arduino максимально просты, поэтому эти полупроводниковые приборы широко применяются сегодня во многих отраслях техники. Это обусловлено высокой чувствительностью фоторезисторов MLG5516B, малыми размерами и простотой конструкции устройства, долговечностью в эксплуатации, а также возможностью обеспечения довольно точных измерений освещенности.
