![[Arduino] 아두이노 포토레지스터 ( CDS ) 사용하기 (11)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdt7SOy%2FbtsHpK8j3s6%2FkokohpRQgThhLdF0xowKP0%2Fimg.png)
[Arduino] 아두이노 포토레지스터 ( CDS ) 사용하기 (11)Embedded System/Arduino Board2024. 6. 8. 00:01
Table of Contents
반응형
안녕하세요.
이번 포스트에서는 아두이노에서 밝기에 대한 정보를 입력 받아 밝기를 조건으로 LED를 켜보는 내용에 대해 알아보겠습니다.
포토레지스터(Photoresistor)는 빛의 강도에 따라 저항값이 변하는 빛 감지 센서입니다. 주로 조도(밝기)를 측정하거나 빛의 존재 여부를 감지하는 데 사용됩니다. 포토레지스터는 저항값이 빛의 강도에 반비례하여 작동합니다. 즉, 빛이 강해지면 저항값이 낮아지고, 빛이 약해지면 저항값이 높아집니다.
※1. 포토레지스터의 기본 원리
포토레지스터는 빛을 감지하는 재료로 구성되어 있으며, 이 재료는 일반적으로 **황화카드뮴(CdS)**을 사용합니다. CdS는 반도체 특성을 가지며, 빛을 받으면 전도도가 증가합니다. 이로 인해 저항값이 낮아집니다.
주요 특성
- 감도: 포토레지스터의 저항값은 주로 가시광선(약 400~700nm)에 반응합니다.
- 응답 시간: 포토레지스터는 빛의 변화에 대해 빠르게 반응하지만, 몇 밀리초의 지연이 있을 수 있습니다.
- 비선형성: 포토레지스터의 저항값과 빛의 강도 간의 관계는 비선형적입니다. 따라서 정확한 조도 측정에는 보정이 필요할 수 있습니다.
- 온도 의존성: 포토레지스터의 저항값은 온도 변화에 따라 달라질 수 있습니다.
※2. Wiring (배선 연결)
포토레지스터를 사용하여 빛의 강도를 측정하려면, 간단한 전압 분배 회로를 구성할 수 있습니다. 일반적으로 아날로그 입력 핀을 사용하여 마이크로컨트롤러(예: Arduino)와 연결합니다.
기본 회로
- 포토레지스터: 한 쪽 끝은 전원(Vcc)에 연결됩니다.
- 저항: 포토레지스터의 다른 쪽 끝과 접지(GND) 사이에 연결됩니다.
- 아날로그 입력: 포토레지스터와 저항 사이의 접점에서 전압을 측정하여 아날로그 입력 핀에 연결합니다.
CDS를 사용하여 밝기에 따라서 LED가 On/Off되는 동작을 구현하겠습니다.
※3. 소스코드 및 동작
▶1. 소스코드
CDS를 통해 LED를 제어하는 코드를 실행해 보겠습니다. (소스코드는 첨부파일 제공해 드리겠습니다.)
const int cdsPin = A0; // CDS 센서가 연결된 아날로그 핀 const int ledPin = 13; // LED가 연결된 디지털 핀 void setup() { pinMode(ledPin, OUTPUT); Serial.begin(9600); } void loop() { int cdsValue = analogRead(cdsPin); // CDS 센서에서 값 읽기 Serial.println(cdsValue); // 시리얼 모니터에 CDS 값 출력 // CDS 값이 일정 임계값(예: 500) 이하인 경우 LED 켜기 if (cdsValue <= 50) { digitalWrite(ledPin, HIGH); } else { digitalWrite(ledPin, LOW); } delay(1000); // 1초간 대기 } |
▶2. 하드웨어 연결 및 동작 확인
CDS를 강제로 가져서 밝기를 어둡게 할때 LED가 켜짐을 확인할 수 있습니다.
이상으로 아두이노에서 CDS를 다루는 방법에 대한 설명을 마치겠습니다.
감사합니다.

반응형
'Embedded System > Arduino Board' 카테고리의 다른 글
[Arduino] 아두이노 초음파 거리센서 ( HC-SR04 ) 사용하기 (13) (0) | 2024.06.10 |
---|---|
[Arduino] 아두이노 온도센서 ( LM35, DS18B20 ) 사용하기 (12) (0) | 2024.06.09 |
[Arduino] 아두이노 슬라이드 스위치로 LED제어 (10) (0) | 2024.06.07 |
[Arduino] 아두이노 택트 스위치로 LED제어 (9) (1) | 2024.06.07 |
[Arduino] 아두이노 3색 LED 제어하기(빨 초 파 흰)_Common Cathode (8) (0) | 2024.06.07 |
@SEMICIRCUIT :: SEMICIRCUIT
전자공학 블로그에 오신 것을 환영합니다! 최신 기술 동향, 회로 설계, 반도체 및 전자 부품에 대한 유용한 정보와 실습 팁을 제공합니다.