Привет! Сегодня сделаем обзор на фоторезистор KY-018 для Ардуино. А также, соберем простую схему и используем лазер для точных измерений фото датчика.
Содержание
- 1 Для выполнения этого урока нам понадобятся
- 2 Принцип работы фоторезистора
- 3 Фоторезистор KY-018
- 4 Лазер
- 5 Полный текст программы
- 6 Заключение
- 7 Где купить
В прошлый раз мы уже делали обзор на лазерный модуль для Ардуино, посмотрите тот пост, если пропустили или уже забыли.
Лазер на Ардуино
Сегодня добавим к лазеру фоторезистор, чтобы посмотреть, какие данные предоставляет резистор при разных уровнях освещенности.
Для выполнения этого урока нам понадобятся
- Ардуино UNO
- Макетная плата
- Перемычки
- Лазер KY-008
- Фоторезистор KY-018
- Кабель USB
Принцип работы фоторезистора
Фоторезистор (фотосопротивление, LDR) – это резистор, электрическое сопротивление которого изменяется под влиянием световых лучей. Оно не зависит от приложенного напряжения, как у обычного резистора.
На схемах фоторезисторы изображаются такой схемой.
Фоторезисторы используются для определения наличия или отсутствия света. Или для измерения интенсивности света. В темноте, их сопротивление высокое. Когда датчик подвергается воздействию света, его сопротивление падает. Сопротивление зависит от интенсивности света.
Фоторезистор KY-018
На модуле KY-018 есть 3 пина для подключения к Ардуино. Для соединения с землей, питанием 5 вольт, и для снятия показаний на аналоговом пине.
Загрузим простой скетч на плату, чтобы посмотреть как работает модуль в обычных условиях.
Снимем показания с аналогового пина. Если дневной свет попадает на сенсор и при закрытом датчике.
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 единиц.
Лазер
Теперь добавим в схему лазер, чтобы освещать сенсор.
И добавим в скетч функции управления лазером. Сделаем так, чтобы интенсивность света изменялась в цикле. И посмотрим, как изменяются показания фоторезистора.
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 и его подключение к Ардуино. Использовали лазер для освещения сенсора, чтобы увидеть разницу дневного света и лазера.
Такую схему можно использовать и для передачи информации, например, с помощью азбуки морзе. Попробуем сделать такой проект в следующий раз.
Спасибо, что дочитали статью до конца.
Пожалуйста, подписывайтесь на блог в яндекс дзен, ставьте лайки и пишите комментарии.
Посмотрите больше уроков и проектов на сайте arcadepub.ru
И подписывайтесь на соц. сети.
Спасибо за внимание, скоро увидимся.
Другие интересные статьи
Ардуино. Урок 8. Звук и музыка в Ардуино
Ардуино. Урок 7. Язык программирования Processing
Ардуино. Урок 6. RGB светодиод
Ардуино. Урок 5. Широтно импульсная модуляция