Модуль фоторезистора KY-018 знаком по уроку: "Подключение модуля освещенности к Arduino" на моем втором сайте про Arduino. Сегодня в уроке рассмотрим данный модуль и научимся подключать KY-018 к Arduino. А также рассмотрим пример сигнализации с использованием модулей KY-008, KY-004, KY-006 и KY-018.

Модуль фоторезистора Arduino KY-018, используемый для измерения интенсивности света. Он может определить наличие или отсутствие света, а также интенсивность освещения - это связано с тем, что модуль является аналоговым и считывает показание с фоторезистора. Также существуют и цифровые модули освещённости, про них вы можете прочитать в уроке "Подключение модуля освещенности к Arduino".

Этот модуль состоит из фоторезистора и линейного резистора 10кОм . Сопротивление фоторезистора будет уменьшаться при наличии света и увеличиваться при его отсутствии. Выходной сигнал является аналоговым и определяет интенсивность света.
Подключите линию питания (посередине) и землю (-) к +5 и GND соответственно. Сигнальный контакт (S) подключите к контакту A0 на Arduino. Для определения освещённости будем использовать светодиод, который подключаем к 7 контакту Arduino.

byte sensorPin = A0;
byte ledPin = 3;
// Присваиваем имя для цифрового значения аналогового входа A0
// int округляет значения
int value = 0;
void setup() {
// Пин 3 со светодиодом будет выходом (англ. «output»)
pinMode(ledPin, OUTPUT);
// Пин A0 с фоторезистором будет входом (англ. «input»)
pinMode(sensorPin, INPUT);
}
void loop() {
// Считываем значение с фоторезистора на аналоговом входе A0
value = analogRead(sensorPin);
// value значение в диапозоне от 0 до 1023
// Полученные значения на аналоговом входе A0 делим на 4
//чтобы уложиться в диопозон от 0 до 255
data = value / 4;
// Включаем светодиод с полученной ранее мощностью - от 0 до 255
analogWrite(ledPin, data);
} Данный пример кода позволяет регулировать яркость свечения светодиода при изменении освещённости в помещении. При ярком освещении светодиод не будет светиться или очень тусклым свечением, а в темное время суток будет светить максимально ярко.Данный скетч можно использовать для автоматического регулирования яркости часов, подсветки и в других проектах на Arduino.
Про данный пример я уже рассказывал в уроке про лазерный модуль KY-008.
В данном примере будем использовать модули из набора: 37 in 1 Sensors Kit for Arduino. Набор датчиков и индикаторов для Arduino
Для этого понадобится:


#define LASER 6 // задаем имя для Pin лазера
#define SENSOR A0 // фоторезистор
#define BUTTON 12 // кнопка
#define BUZZER 10 // звуковой излучатель
int laserThreshold = 100;// значение при котором сробатывае сигнал
void setup() {
pinMode(LASER, OUTPUT);
pinMode(BUTTON, INPUT_PULLUP);
Serial.begin(9600);
}
boolean alarmState = false;
void loop() {
if (! alarmState) {
delay(500);
digitalWrite(LASER, HIGH);
delay(500);
unsigned long startTime = millis();
while (millis() - startTime < 1000) {
int sensorValue = analogRead(SENSOR);
Serial.println(sensorValue);
if (sensorValue > laserThreshold) {
alarmState = true;
break;
}
delay(10);
}
digitalWrite(LASER, LOW);
}
else {
tone(BUZZER, 440);
if (! digitalRead(BUTTON)) {
alarmState = false; noTone(BUZZER);
}
delay(10);
}
}Как видим модуль KY-018 несмотря на свою простоту использования, применим в различных проектах на Arduino. Область применения модуля ограничивается только вашей фантазией.
Понравился Урок Модуль фоторезистора KY-018. Подключение к Arduino? Не забудь поделиться с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.
Спасибо за внимание!
Технологии начинаются с простого!
Фотографии к статье
Файлы для скачивания
| Скетч модуля освещённости KY-018.ino | 1 Kb | 1172 | Скачать | |
| использование KY-018 в качестве сигнализации.ino | 1 Kb | 1100 | Скачать |
37 модулей для Arduino
5 июня , 2021
Комментариев:0
Файлов для скачивания:2
Фото:6
Понравилась статья? Нажми
Читайте также
Мы в соц сетях
Комментарии