A PHP Error was encountered

Severity: Notice

Message: Undefined index: HTTP_ACCEPT_LANGUAGE

Filename: core/KF_Controller.php

Line Number: 155

조도센서 사용하기

부품설명

자주 사용하는 부품들의 사용법에 대하여 알아봅니다.

조도센서 사용하기

2014-08-05 11:32:35

개요

개요

조도센서와 LED를 이용하여 조도센서의 측정값에 따라 LED의 깜빡임을 변화시켜보는 회로를 만들어 보자.
조도센서란 빛의 양을 감지하는 센서로 실내, 실외 환경의 빛의 양을 측정할 수 있게 도와준다.

빛을 사용하는 분야와 센서는 실생활 및 연구개발에서 다양하게 쓰인다.
빛이라는 소재는 어느 곳이든 존재하고 생활편의에 지대한 영향을 끼치기 때문에 조도센서의 사용처는 무궁무진하다.
일례로 우리가 사용하는 스마트폰에도 조도센서는 존재하여 어두워지면 액정을 밝게 비춘다든가 어두워지면 빛으로 핸드폰의 상태를 표현한다던가의
여러 가지 옵션을 제공해 준다.




아래와 같은 상품은 조도센서가 내장되어 있어 어두워지면 자동으로 불이 켜지는 조명기구이다.




아두이노에서는 조도센서는 센서사용에서도 기본에 속하고 원리 및 사용방법 또한 매우 간단하기 때문에 사용법을 알아둔다면 유용하게 사용할 수 있을 것이다.


 

미리보기 동영상

 

 

만들기전 필요한 사전지식

LED사용법

 

 

 

부품 목록

 

 

부품목록

 

NO 부품명 수량 상세설명
1 아두이노 1 오렌지 보드
2 조도센서 1  
3 100Ω저항 1  
4 1.5kΩ저항 3  
5 Red LED 1  
6 브레드보드 1  

 

부품 사진

부품명 아두이노 조도센서 100Ω저항 1.5kΩ저항 Red LED 브레드보드
파트

 

 

 

하드웨어 making

 

 

 

전자 회로도


 

브레드 보드

 

소프트웨어 coding

 

/*
EarthShine Electronics

Project 13 - Light Sensor
*/

int ledPin = 6; //LED 입출력핀변수를 6으로 선언 
int ldrPin = 0; //조도센서 입출력핀 변수를 0으로 선언 
int lightVal = 0; //조도센서 변수 초기화 

void setup() { 
  pinMode(ledPin, OUTPUT); //LED입출력핀을 OUTPUT Mode로 선언 
} 

void loop() { 
  lightVal = analogRead(ldrPin); //조도센서의 값을 읽어 lightVal변수에 저장
  digitalWrite(ledPin, HIGH); // LED를 켠다 
  delay(lightVal); // 조도센서의 측정값만큼 딜레이 생성 
  digitalWrite(ledPin, LOW); //LED를 끈다 
  delay(lightVal); // 조도센서의 측정값만큼 딜레이 생성 
}

 

 

소스코드

LED입출력핀은 6번으로 선언하고 조도센서 입출력 핀은 아날로그 0번핀으로 선언한다.

선언하고 회로를 연결하여 아날로그 핀에서 계속해서 조도센서를 통해 센서값을 측정하여 lightVal이라는 변수에 저장한다.
그 저장 값은 delay를 통해 지연시간으로 변하게 되고 그 지연시간만큼 LED는 깜빡깜빡하게 된다. 

상대적으로 조도센서가 값을 크게 측정할 경우(밝을 경우)에는 깜빡거림이 덜하므로 상대적으로 어둡게 나오고 값을 낮게 측정할 경우(어두울 경우)에는 깜빡거림이 심하므로 밝게 보인다.
 

기술문서

  • 부품 목록
  • 회로도
  • 브레드보드 레이아웃
  • 스케치

kocoafabeditor

항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!

아두이노, 조도센서, LED, 초급