• 검색 결과가 없습니다.

6 주차 2 강 .CDS 조도센서와온습도감지센서제어 IoT 의이해

N/A
N/A
Protected

Academic year: 2022

Share "6 주차 2 강 .CDS 조도센서와온습도감지센서제어 IoT 의이해"

Copied!
26
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

IoT의 이해

전병현 교수

6주차 2강. CDS 조도 센서와

온습도 감지 센서 제어

(2)

학습내용

학습목표

1. CDS 조도 센서 2. 온습도 감지 센서

1. CDS 조도 센서를 제어할 수 있다.

2. 온습도 감지 센서를 제어할 수 있다.

(3)

이미지

준비물 브레드 보드(1개) 아두이노 보드(1개)

이미지

준비물 조도센서

(1개) LED(1개) 10KΩ 저항(1개)

220Ω 저항(1개)

1. CDS 조도 센서(1)

실습 준비물

(4)

1. CDS 조도 센서(2)

회로도 구성(1)

LED(+)에 9번 핀, LED(-)는 220Ω 저항을 연결 후 GND에 연결

조도 센서는 한 쪽은 A0와 10KΩ 저항에 연결 후 GND 연결

출처 : AUTODESK - TINKERCAD. https://www.tinkercad.com

(5)

1 2

1. CDS 조도 센서(3)

회로도 구성(2)

출처 : AUTODESK - TINKERCAD. https://www.tinkercad.com

(6)

1 2

1. CDS 조도 센서(4)

회로도 구성(3)

3

출처 : AUTODESK - TINKERCAD. https://www.tinkercad.com

(7)

5V전원공급/GND/INPUT OUTPUT

1. CDS 조도 센서(5)

회로도 구성(4)

출처 : AUTODESK - TINKERCAD. https://www.tinkercad.com

(8)

1. CDS 조도 센서(6)

실습 소스(1)

int CDSPin = A0;

// CDS 아날로그 값 읽기

int sensorValue = 0;

// 센서 값 출력

void setup() {

pinMode(9, OUTPUT);

// 9핀 OUTPUT으로 지정

Serial.begin(9600);

// 시리얼 통신 시작

}

void loop() {

sensorValue = analogRead(CDSPin);

// CDS값 읽어서 sensroValue에 저장

(9)

1. CDS 조도 센서(7)

실습 소스(2)

Serial.println(sensorValue);

// sensorValue값 프린트

if (sensorValue < 800) {

// CDS값이 800보다 작으면

digitalWrite(9, HIGH);

// 9번 LED ON

}

else {

// 그렇지 않으면

digitalWrite(9, LOW);

// 9번 LED OFF

}

}

(10)

이미지

준비물 아두이노 보드(1개)

이미지

준비물 온습도 센서(1개) 점프선 소량

2. 온습도 감지 센서

실습 준비물

(11)

2. 온습도 감지 센서(2)

회로도 구성

출처 : Fritzing. http://fritzing.org

(12)

2. 온습도 감지 센서(3)

실습 소스(1)

#include <DHT.h> // 라이브러리 추가

#include <DHT_U.h>

#define DHTPIN 2 // dht11 핀 지정

#define DHTTYPE DHT11 // 사용할 dht 타입 지정 DHT dht(DHTPIN, DHTTYPE);

void setup() {

Serial.begin(9600); // 시리얼 통신 시작 dht.begin(); // dht 통신 시작 }

void loop() {

float humidity = dht.readHumidity(); // 습도 float temperature = dht.readTemperature(); // 온도

(13)

2. 온습도 감지 센서(4)

실습 소스(2)

if (isnan(humidity) || isnan(temperature) ) { // 습온도 센서 동작 체크 Serial.println("Failed to read from DHT sensor!");

return;

} // 습온도 센서 동작 체크 끝

Serial.print((int)temperature); // 온도 시리얼모니터에 출력 Serial.print(" *C, ");

Serial.print((int)humidity); // 습도 시리얼 모니터에 출력 Serial.println(" %");

delay(2000);

}

(14)

시리얼모니터

2. 온습도 감지 센서(5)

결과 확인

시리얼 모니터에 온도와 습도가 출력되는 것을 확인

(15)

학습하기가 끝났습니다.

다음페이지 버튼을 클릭하여

평가문항을 풀어보세요. 프로그램 실습

※ 자료실에서 프로그램 소스 코드를 다운로드 받으세요.

(16)

실습

1. CDS 조도 센서(1)

1. 실습 준비물 : 아두이노 보드(1개), 브레드 보드(1개), 조도 센서(1개) , LED(1개), 10kΩ 저항(1개), 220Ω 저항(1개)

2. 조도 센서가 감지한 빛의 밝기에 따라서 LED에 불이 들어온다.

실습 준비물

(17)

실습

1. CDS 조도 센서(2)

1. LED(+)와 디지털 9번 핀을 연결한다.

2. 조도 센서와 A0를 연결을 하고, 10kΩ 저항과 GND를 연결한다.

3. sensorValue = analogRead(CDSPin) : CDS값 읽어서 sensroValue에 저장

실습 소스(1)

(18)

실습

1. CDS 조도 센서(3)

4. Serial.println(sensorValue) : sensorValue 값 프린트 5. if (sensorValue < 800) : CDS값이 800보다 작으면

6. digitalWrite(9, HIGH) : 9번 LED ON, LOW : LED OFF

실습 소스(2)

(19)

실습

1. CDS 조도 센서(4)

1. 조도 센서에 감지되는 센서 값이 800이하면 LED에 불이 들어온다.

실행하기

(20)

실습

2. 온습도 감지 센서(1)

1. 실습 준비물 : 아두이노 보드(1개), 브레드 보드(1개), 온습도 센서(1개) 2. 온습도 감지 센서에 의해 온도와 습도를 시리얼 모니터로 출력한다.

실습 준비물

(21)

실습

2. 온습도 감지 센서(2)

1. 아두이노 보드 디지털 2번 핀과 온습도 센서 1번 핀을 연결한다.

2. #include <DHT.h> : 라이브러리 추가 및 #define DHTPIN 2 : dht11 핀 지정 3. float humidity = dht.readHumidity() : 습도 값을 읽어 옴

4. float temperature = dht.readTemperature() : 온도 값을 읽어 옴

실습 소스(1)

(22)

실습

2. 온습도 감지 센서(3)

4. if (isnan(humidity) || isnan(temperature) ) : 온습도 센서 동작 체크 5. Serial.print((int)temperature) : 온도를 시리얼 모니터에 출력

6. Serial.print((int)humidity) : 습도를 시리얼 모니터에 출력

실습 소스(2)

(23)

실습

2. 온습도 감지 센서(4)

1. 시리얼 모니터로 온도와 습도 결과 값이 출력된다.

실행하기

(24)

실습점검

1. 실습에 필요한 보드와 준비물이 준비가 되었나요?

2. CDS 조도 센서를 활용할 수 있나요?

3. 온습도 센서를 활용할 수 있나요?

아니오 아니오 아니오 실습 재미있게 해보셨나요?

‘CDS 조도 센서와 온습도 감지 센서’

에 대해 실습한 내용과

자신의 실습 결과물을 비교해 보세요.

(25)

실습점검

1. CDS 조도 센서

- 회로도 구성이 잘 되었는지 확인

- 라이브러리 등록이 잘 되었는지 확인

- sensorValue = analogRead(CDSPin) 값이 정상 발생 되는지를 확인 2. 온습도 감지 센서

- 회로도 구성이 잘 되었는지 확인

- 라이브러리 등록이 잘 되었는지 확인

- float humidity = dht.readHumidity 값이 정상 발생 되는지 확인

- float temperature = dht.readTemperature 값이 정상 발생 되는지 확인

교수자 실습 Tip

(26)

다음시간에는…

에 대해 학습해 보겠습니다.

참고문헌

6주차. 센서의 개념과 활용

3강. 초음파 센서 제어

• 프릿징. http://www.fritzing.org

• 팅커캐드. http://www.tinkercad.com

• ㈜메카솔루션. http://mechasolution.com

참조

관련 문서

보게 된 파일들의 집합 Home page, index page, contact info, etc. 사건 데이터 특정

대법원 1987. 선고 86도2360 판결: 피고인은 피해자를 2회 강간하여 2주간 치료를 요 하는 질입구파열창을 입힌 다음 피해자에게 용서를 구하였으나 피해자가

주차 브레이크 (parking brake) 마스터 실린더 (master cylinder) 브레이크 페달 배력 장치.. (booster) 주차

• Not a determinate, logical process but an irrational search over a ground prepared by a knowledge of principles, of prototypes and the characteristics of site and

지구의의 위치에 따라 태양의 남중 고도가 달라지는 경우를 골라 기호를 썼지만 이를 통해 알 수 있는 계 절이 변하는 까닭을 쓰지 못했다.. 하 알맞은 그래프의 형태를

동결방지 조치를 취하여 등을 사용하여 적절한 우려가 있는 곳은 보온재 드레인 호스 설치시 동결.

► 물질분자의 농도가 낮은 곳에서는 물의 농도가 높고, 물질분 자의 농도가 높은 곳은 물의 농도가 낮은 셈이기 때문에 물질분 자의 농도가 낮은 곳에서 높은 곳으로

상층부에서 아파트 건물의 폭은 지상층의 기둥에 하중을 전달하는 일정한 간격으로 배열된 가로의 콘크리트 벽체에 의해 정의됨 건물의 양 측면을 따라