Фоторезистор KY-018. Датчики. Ардуино

Фоторезистор KY-018
Фоторезистор KY-018

Привет! Сегодня сделаем обзор на фоторезистор KY-018 для Ардуино. А также, соберем простую схему и используем лазер для точных измерений фото датчика.

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

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

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

  • Ардуино UNO
  • Макетная плата
  • Перемычки
  • Лазер KY-008
  • Фоторезистор KY-018
  • Кабель USB

Принцип работы фоторезистора

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

На схемах фоторезисторы изображаются такой схемой.

Фоторезистор на схемах
Фоторезистор на схемах

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

Фоторезистор KY-018

На модуле KY-018 есть 3 пина для подключения к Ардуино. Для соединения с землей, питанием 5 вольт, и для снятия показаний на аналоговом пине.

Принципиальная схема подключения фоторезистора KY-018 к Ардуино
Принципиальная схема подключения фоторезистора KY-018 к Ардуино

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

Снимем показания с аналогового пина. Если дневной свет попадает на сенсор и при закрытом датчике.

int photoresistorPin = 0;
int photoresistorValue = 0;

void setup() {
  Serial.begin(9600);
  pinMode(LASER, OUTPUT);
}
void loop() {
  photoresistorValue = analogRead(photoresistorPin);
  Serial.println(photoresistorValue, DEC);
  Delay(100);
}

Откроем плоттер и посмотрим на график. Если сенсор не закрыт от солнечного света, показания колеблются около 300 единиц.

Показания фоторезистора при дневном свете
Показания фоторезистора при дневном свете

Если закрыть датчик от света, то сопротивление растет до 900 единиц.

Показания фоторезистора при закрытом датчике
Показания фоторезистора при закрытом датчике

Лазер

Теперь добавим в схему лазер, чтобы освещать сенсор.

Принципиальная схема подключения фоторезистора KY-018 и лазера к Ардуино
Принципиальная схема подключения фоторезистора KY-018 и лазера к Ардуино

И добавим в скетч функции управления лазером. Сделаем так, чтобы интенсивность света изменялась в цикле. И посмотрим, как изменяются показания фоторезистора.

void loop() {
  
  photoresistorValue = analogRead(photoresistorPin);
  Serial.println(photoresistorValue, DEC);

   for (int i=0; i<=255; i++){
      analogWrite(LASER, i);
   }
   for (int i=255; i>=0; i--){
      analogWrite(LASER, i);
   }

}

Лазер включается и выключается очень быстро, так что глаза не успевают это заметить. Но фоторезистор считывает показания очень точно.

Фоторезистор считывает свет от лазера
Фоторезистор считывает свет от лазера

Полный текст программы

int LASER = 10;
int photoresistorPin = 0;
int photoresistorValue = 0;

void setup() {
  Serial.begin(9600);
  pinMode(LASER, OUTPUT);
}
void loop() {
  
  photoresistorValue = analogRead(photoresistorPin);
  Serial.println(photoresistorValue, DEC);

   for (int i=0; i<=255; i++){
      analogWrite(LASER, i);
   }
   for (int i=255; i>=0; i--){
      analogWrite(LASER, i);
   }

}

Заключение

Итак, мы рассмотрели фоторезистор KY-018 и его подключение к Ардуино. Использовали лазер для освещения сенсора, чтобы увидеть разницу дневного света и лазера.

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

Где купить

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

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