본 절은 [KY-028] 아두이노 센서를 사용하기 위해 알아야 할 내용과 실습 방법에 대해 설명한다. 아두이노 센서의 특징, 동작원리, 사양, 연결 핀 배열, 출력 값, 주의사항을 알아본다. 아두이노와 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
목차
KY-028 아두이노 온도 센서 (LCD16X2 키패드실드)
KY-028 센서란?
KY-028 센서는 다음과 같다.
다음은 데이터시트 파일이다.
- 온도 측정 범위 : -55 ° C / + 125 ° C이 모듈에는 NTC 서미스터가 포함되어 있다. 온도가 높을수록 저항이 떨어진다.
- 디지털 출력 : 한계 값보다 높은 온도를 측정하는 동안 표시된다. 전위차계를 통해 한계 값을 설정할 수 있다.
- 아날로그 출력 : 센서 장치 직접 측정
- LED1 : 센서에 전원이 공급되고 있음을 나타낸다.
- LED2 : 자기장이 감지되었음을 표시한다.
KY-028 아두이노 센서 특징
KY-028 센서의 특징은 다음과 같다.
- NTC 서미스터 센서 사용, 좋은 감도
- 온도 분포 비트 감지 임계 값 조정
- 작동 전압 3.3V-5V
- 출력 형식 : 디지털 스위칭 출력 (0 및 1)
- 작은 보드 PCB 크기 : 3.2cm x 1.4cm
- 넓은 전압 LM393 비교기 사용
KY-028 센서 동작 원리
KY-028 센서의 원리는 다음과 같다.
- 센서의 회로 기판에는 3 개의 주요 구성 요소가 있다.
- 먼저 모듈 전면에있는 센서 유닛이 면적을 물리적으로 측정하고 아날로그 신호를 두 번째 유닛 인 증폭기로 전송한다.
- 증폭기는 전위차계의 저항 값에 따라 신호를 증폭하고 신호를 모듈의 아날로그 출력으로 보낸다.
- 세 번째 구성 요소는 신호가 특정 값 아래로 떨어지면 디지털 출력과 LED를 전환하는 비교기입니다.
전위차계를 조정하여 감도를 제어 할 수 있다.
신호가 반전되어 출력된다. 즉, 높은 값을 측정하면 아날로그 출력에 낮은 전압 값으로 표시된다.
KY-028 센서 구입하기
[KY-028 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존 등에서 센서를 구입할 수 있다
KY-028 센서 하드웨어 연결
다음과 같이 KY-028 아두이노 센서를 연결할 수 있다.
KY-028 센서 소프트웨어 코딩
하드웨어 연결이 완료되면, 아두이노 IDE를 이용해 아두이노 센서 소스코드를 코딩할 수 있다.
센서 코드는 다음과 같다.
/*
KY-028 Digital temperature Sensor
@ 모두의 아두이노 환경 센서 (Arduino Sensors for Everyone)
https://book.naver.com/bookdb/book_detail.nhn?bid=18030644
@ author STEAMEDU123 <steamedu123@gmail.com>
*/
#include <LiquidCrystal.h>
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
int sensorPin = A1;
int sensorValue = 0;
float value = 0;
float fixtemp = 20.;
int fixInput = 560;
float fixedDegreeValue = 5.5;
void setup() {
Serial.begin (9600);
lcd.begin(16, 2);
}
void loop() {
ky028_read();
delay(1000);
}
void ky028_read() {
sensorValue = analogRead(sensorPin);
if (sensorValue > fixInput ) {
value = sensorValue - fixInput;
value = value / fixedDegreeValue;
fixtemp = fixtemp - value;
displayLCD(fixtemp);
} else if (sensorValue < fixInput) {
value = fixInput - sensorValue;
value = value / fixedDegreeValue;
fixtemp = fixtemp + value;
displayLCD(fixtemp);
} else if (sensorValue == fixInput ) {
displayLCD(sensorValue);
}
fixtemp = 20;
}
void displayLCD(float temp) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("KY-028");
lcd.setCursor(0, 1);
lcd.print("Temp:");
lcd.print(temp);
lcd.print(" C");
}
KY-028 센서 동작확인
하드웨어 연결, 소프트웨어 코딩이 완료되면 다음과 같이 동작 화면을 확인할 수 있다.
------------------------------------------------------
개발환경 : WINDOWS 10
아두이노 IDE : 1.8.13
------------------------------------------------------
01 연결
- 아두이노와 PC 연결
- 아두이노 IDE 실행
- 메뉴 → 툴 → 보드:아두이노 UNO 확인
- 메뉴 → 스케치 → 확인/컴파일
02 컴파일 확인
스케치>확인/컴파일(CTRL+R) 를 선택해서 컴파일을 진행한다.
03 아두이노 우노 업로드
컴파일이 이상없이 완료되면 스케치>업로드(CTRL+U) 를 선택해서 컴파일 파일을 업로드 한다.
04 동작 확인
다음과 같이 동작을 확인할 수 있다.
마무리
아두이노와 KY-028 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
모두의 아두이노 환경 센서 책
[모두의 아두이노 환경 센서] 책은 예스24, 인터넷 교보문고, 알라딘, 인터파크도서, 영풍문고, 반디앤루니스 , 도서11번가 등에서 구입할 수 있다. 이 책에서는 PMS7003, GP2Y1010AU0F, PPD42NS, SDS011 미세먼지 센서, DHT22 온습도 센서, MH-Z19B 이산화탄소 센서, ZE08-CH2O 포름알데히드 센서, CCS811 총휘발성유기화합물 TVOC, GDK101 방사선(감마선) 센서, MQ-131 오존(O3) 센서, MQ-7 일산화탄소, MICS-4514 이산화질소 센서, MICS-6814 암모니아 센서, DGS-SO2 아황산가스(SO2) 센서, BME280 기압 센서, GUVA-S12SD 자외선(UV) 센서, MD0550 기류 센서, QS-FS01 풍속 센서(Wind speed) 를 사용한다.
'모두의 아두이노 센서 > 아두이노 센서 (공기)' 카테고리의 다른 글
DSM501A 아두이노 미세먼지 센서 (LCD16X2 키패드실드) (0) | 2021.05.26 |
---|---|
MQ2 아두이노 가스 센서 (LCD16X2 키패드실드) (0) | 2021.05.26 |
MQ135 아두이노 대기오염 센서 (LCD16X2 키패드실드) (0) | 2021.05.26 |
HTU21D 아두이노 온도 습도 센서 (LCD16X2 키패드실드) (0) | 2021.05.25 |
DHT11 아두이노 온도 습도 센서 (LCD16X2 I2C) (0) | 2021.05.25 |
DHT11 아두이노 온도 습도 센서 (0) | 2021.05.25 |
KY-013 아두이노 온도 센서 (LCD16X2 키패드실드) (0) | 2021.05.25 |
댓글