본 절은 [Grove SI1145] 아두이노 센서를 사용하기 위해 알아야 할 내용과 실습 방법에 대해 설명한다. 아두이노 센서의 특징, 동작원리, 사양, 연결 핀 배열, 출력 값, 주의사항을 알아본다. 아두이노와 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
목차
Grove Si1145 아두이노 센서 (LCD16X2 키패드실드)
Grove SI1145 센서란?
Grove-Sunlight Sensor는 UV 광선, 가시 광선 및 적외선을 감지하는 기능이있는 다중 채널 디지털 광선 센서이다. 센서는 멀티 채널 광센서로 UV, 가시광, IR을 검출할 수 있다.
Si1145는 I2C 디지털 인터페이스 및 프로그래밍 가능한 이벤트 인터럽트 출력을 갖춘 저전력, 반사율 기반, 적외선 근접, UV 인덱스 및 주변 광 센서다. 이 장치는 넓은 다이나믹 레인지와 직사광선을 포함한 다양한 광원에서 뛰어난 성능을 제공한다. Grove-Sunlight Sensor에는 온 바드 Grove 커넥터가 포함되어있어 Arduino를 쉽게 연결할 수 있다. 간단한 UV 감지기와 같이 빛을 감지해야하는 프로젝트를 만드는 데이 장치를 사용할 수 있다.
다음은 센서의 작동 환경을 보여준다.
Grove SI1145 아두이노 센서 특징
Grove SI1145 센서의 특징은 다음과 같다. 디지털 광 센서로, 정확도 향상을위한 넓은 스펙트럼 감지 범위를 가지고 있다. 또한, 다양한 애플리케이션에 다용도로 사용할 수있는 프로그래밍 가능한 구성으로 되어 있다. 햇빛을 직접 감지 하며, Grove 호환 된다. I2C 인터페이스 (7 비트)를 제공하고 있다.
- Digital light sensor
- Wide spectrum detection range
- Programmable configuration
- 3.3/5V Supply
- Detect sunlight directly
- Grove compatible
- I2C Interface(7-bit)
- Operating Voltage: 3.0-5.5V
- Working current: 3.5mA
- Wave length: 280-950nm
- Operating Temperature: -45-85oC
제품 모델 | Grove SI1145 태양광 |
측정범위 | 280 ~ 950nm |
측정종류 | 자외선UV, 적외선IR, 가시광선 |
작동온도 | -45 ~ 85도 |
핀배치 | VCC, GND, SDA, SCL |
작동전압 | 3.3 ~ 5.5V |
Default I2C Address 는 0x60이다.
Grove Si1145 센서 동작 원리
멀티 채널 광센서로 UV, 가시광, IR을 검출할 수 있는 능력이 있다. 실리콘랩사의 SI1145를 기반으로 제작된 제품으로 저전력이며, I2C 인터페이스와 에벤트에 프로그래밍 가능한 인터럽트 출력을 가지고 있다.
다음은 센서의 가시 광선 및 적외선에 대한 포토 다이오드 스펙트럼 응답을 보여준다.
Grove SI1145 센서 구입하기
[Grove SI1145 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존, 가치장조기술 등에서 센서를 구입할 수 있다
Grove SI1145 하드웨어 연결
다음과 같이 Grove SI1145 아두이노 센서를 연결할 수 있다.
Grove SI1145 소프트웨어 코딩
하드웨어 연결이 완료되면, 아두이노 IDE를 이용해 아두이노 센서 소스코드를 코딩할 수 있다.
센서 코드는 다음과 같다.
/**
ML8511 Sensor
@ 모두의 아두이노 환경 센서 (Arduino Sensors for Everyone)
https://book.naver.com/bookdb/book_detail.nhn?bid=18030644
@ author STEAMEDU123 <steamedu123@gmail.com>
*/
#include <LiquidCrystal.h>
#include "Adafruit_SI1145.h"
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
Adafruit_SI1145 uv = Adafruit_SI1145();
void setup()
{
lcd.begin(16, 2);
if (! uv.begin()) {
//Serial.println("Didn't find Si1145");
while (1);
}
//Serial.println("OK!");
}
void loop()
{
uint16_t vis = uv.readVisible();
uint16_t ir = uv.readIR();
float UVindex = uv.readUV();
UVindex /= 100.0;
displayLCD(vis, ir, UVindex);
delay(1000);
}
void displayLCD(uint16_t vis, uint16_t ir, float UVindex) {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Vis:");
lcd.print(vis);
lcd.print(" IR:");
lcd.print(ir);
lcd.setCursor(0, 1);
lcd.print("UV:");
lcd.print(UVindex);
if (UVindex < 3) lcd.print(" Low");
else if ( 3 <= UVindex && UVindex < 6) lcd.print(" Moderate");
else if ( 6 <= UVindex && UVindex < 8 ) lcd.print(" High");
else if ( 8 <= UVindex && UVindex < 11) lcd.print(" Very High");
else if ( UVindex >= 11) lcd.print(" Extreme");
}
Grove SI1145 센서 동작확인
하드웨어 연결, 소프트웨어 코딩이 완료되면 다음과 같이 동작 화면을 확인할 수 있다.
------------------------------------------------------
개발환경 : WINDOWS 10
아두이노 IDE : 1.8.13
------------------------------------------------------
01 연결
- 아두이노와 PC 연결
- 아두이노 IDE 실행
- 메뉴 → 툴 → 보드:아두이노 UNO 확인
- 메뉴 → 스케치 → 확인/컴파일
02 컴파일 확인
스케치>확인/컴파일(CTRL+R) 를 선택해서 컴파일을 진행한다.
03 아두이노 우노 업로드
컴파일이 이상없이 완료되면 스케치>업로드(CTRL+U) 를 선택해서 컴파일 파일을 업로드 한다.
04 동작 확인
다음과 같이 동작을 확인할 수 있다.
마무리
아두이노와 Grove SI1145 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
모두의 아두이노 환경 센서 책
[모두의 아두이노 환경 센서] 책은 예스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) 를 사용한다.
'모두의 아두이노 센서 > 아두이노 센서 (불)' 카테고리의 다른 글
GYML8511 아두이노 UV 센서 (0) | 2021.05.19 |
---|---|
KY-026 아두이노 불꽃 센서 (LCD16X2 키패드실드) (0) | 2021.05.19 |
ML8511 (SEN0175) 아두이노 UV 센서 (LCD16X2 키패드실드) (0) | 2021.05.19 |
TSL2561 아두이노 조도 센서 (LCD16X2 키패드실드) (0) | 2021.05.19 |
BH1750 아두이노 조도 센서 (LCD16X2 키패드실드) (0) | 2021.05.17 |
KY-018 아두이노 조도 센서 (LCD16X2 키패드실드) (0) | 2021.05.16 |
댓글