본 절은 [GROVE] 아두이노 센서를 사용하기 위해 알아야 할 내용과 실습 방법에 대해 설명한다. 아두이노 센서의 특징, 동작원리, 사양, 연결 핀 배열, 출력 값, 주의사항을 알아본다. 아두이노와 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
목차
GROVE 아두이노 토양 수분 센서 (LCD16X2 키패드실드)
GROVE 센서란?
GROVE 센서는 다음과 같다.
토양 수분센서는 다음과 같다.
GROVE 아두이노 센서 특징
GROVE 센서의 특징은 다음과 같다.
- 토양 저항 측정을 기반으로 한 토양 수분 센서
- 쉬운 사용
- 전류가 토양을 통과하도록 허용하는 두 개의 프로브로 구성
- 2.0cm X 6.0cm 그로브 모듈
상세하게는 다음과 같이 센서의 특징이 있다.
크기 | 60mm x20mm x6.35mm |
무게 | GW 10g |
작동 전압 | 3.3 ~ 5V |
작동 전류 | 35mA |
건조한 토양의 센서 출력 값 | 0 ~ 300 |
습한 토양의 센서 출력 값 | 300 ~ 700 |
수중 센서 출력 값 | 700 ~ 950 |
PCB 크기 | 2.0cm X 6.0cm |
GROVE 센서 동작 원리
GROVE 센서는 토양 저항 측정에 기반한 토양 수분 센서이다. 이 수분 센서는 토양의 수분을 감지하거나 센서 주변에 물이 있는지 판단하는 데 사용할 수 있다. 예를 들어, 정원의 식물이 목이 마르면 사람의 도움을 받을 수 있도록 할 수 있다.
센서는 사용이 매우 간편하며 토양에 간단히 삽입하여 데이터를 읽을 수 있다. 센서를 사용하면 식물이 "이제 목이 마르고 물을 좀주세요"와 같은 메시지를 보낼 수있는 작은 프로젝트를 만들 수 있다.
다음은 센서 출력값에 대한 MIN, MAX 값을 보여준다.
tem | Condition | Min | Typical | Max | Unit |
Voltage | - | 3.3 | - | 5 | V |
Current | - | 0 | - | 35 | mA |
Output Value | Sensor in dry soil Sensor in humid soil Sensor in water |
0 300 700 |
- | 300 700 950 |
GROVE 센서 구입하기
[GROVE 센서]는 알리익스프레스, 네이버 쇼핑몰, 아마존 등에서 센서를 구입할 수 있다
아마존에서 다음과 같이 확인할 수 있다.
GROVE 센서 하드웨어 연결
다음과 같이 GROVE 아두이노 센서를 연결할 수 있다.
아두이노 A1과 센서의 DATA(SIG) 를 연결한다.
Seeeduino | Grove-Moisture Sensor |
5V | Red |
GND | Black |
Not Conencted | White |
A1 | Yellow |
GROVE 센서 소프트웨어 코딩
하드웨어 연결이 완료되면, 아두이노 IDE를 이용해 아두이노 센서 소스코드를 코딩할 수 있다.
센서 코드는 다음과 같다.
/**
Grove Soil Hygrometer Detection Module
@ 모두의 아두이노 환경 센서 (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 inputPin = A1;
int soilMoisture;
void setup() {
pinMode(inputPin, INPUT);
initSensor();
}
void loop() {
onSensor();
displayLCD();
}
void initSensor() {
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("GROVE SOIL");
lcd.setCursor(0, 1);
lcd.print("Ready...........");
delay(1000);
lcd.clear();
}
void onSensor() {
soilMoisture = averageAnalogRead(inputPin);
}
int averageAnalogRead(int pinToRead)
{
byte count = 10;
float value = 0;
for (int x = 0 ; x < count ; x++) {
value += analogRead(pinToRead);
delay(20);
}
value = value / count;
return (value);
}
void displayLCD() {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("GROVE:");
lcd.print(soilMoisture);
if (soilMoisture > 950) {
return;
}
lcd.setCursor(0, 1);
if (soilMoisture > 700) {
lcd.print("WATER");
} else if (soilMoisture > 300) {
lcd.print("HUMID SOIL");
} else {
lcd.print("DRY SOIL");
}
}
GROVE 센서 동작확인
하드웨어 연결, 소프트웨어 코딩이 완료되면 다음과 같이 동작 화면을 확인할 수 있다.
------------------------------------------------------
개발환경 : WINDOWS 10
아두이노 IDE : 1.8.13
------------------------------------------------------
01 연결
- 아두이노와 PC 연결
- 아두이노 IDE 실행
- 메뉴 → 툴 → 보드:아두이노 UNO 확인
- 메뉴 → 스케치 → 확인/컴파일
02 컴파일 확인
스케치>확인/컴파일(CTRL+R) 를 선택해서 컴파일을 진행한다.
03 아두이노 우노 업로드
컴파일이 이상없이 완료되면 스케치>업로드(CTRL+U) 를 선택해서 컴파일 파일을 업로드 한다.
04 동작 확인
다음과 같이 동작을 확인할 수 있다.
마무리
아두이노와 GROVE 센서를 연결하고, 간단한 코딩으로 센서를 쉽게 실습할 수 있다.
모두의 아두이노 환경 센서 책
[모두의 아두이노 환경 센서] 책은 예스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) 를 사용한다.
'모두의 아두이노 센서 > 아두이노 센서 (흙)' 카테고리의 다른 글
SEN0193 아두이노 토양 수분센서 (LCD16X2 I2C) (0) | 2021.05.20 |
---|---|
SEN0193 아두이노 토양 수분센서 (0) | 2021.05.20 |
SEN0193 아두이노 토양 수분센서 (LCD16X2 키패드실드) (0) | 2021.05.20 |
SEN0114 아두이노 토양 수분센서 (LCD16X2 키패드실드) (0) | 2021.05.20 |
OKY3443 (CYT1033)아두이노 토양 수분 센서 (LCD16X2 키패드실드) (0) | 2021.05.20 |
YL-69 토양 수분 아두이노 센서 (LCD1602 I2C) (0) | 2021.05.20 |
YL-69 토양 수분 아두이노 센서 (LCD16X2 키패드실드) (0) | 2021.05.19 |
YL-69 토양 수분 아두이노 센서 (YL-38 / PP-A138 / FC-28 / HL-69 ) (0) | 2021.05.19 |
댓글