아두이노와 습도센서 FC-28을 이용한 화분 습도 측정기

포인투랩의 사무실에는 여러가지 허브와 꽃 화분들이 있는데요, 사실 Sra말고는 그 누구도 언제 물을 줬는지, 또 언제 줘야하는지 모릅니다. 아마 이 글을 읽으시는 분들도 비슷하게 느끼실텐데요, 화분마다 언제 물을 줬는지 일일이 기억하기도 어렵고 또한 흙에 남아있는 수분이 주변 온도나 햇빛등의 영향을 받기 때문입니다. 그래서 아두이노와 토양 습도 센서를 사용하여 화분에 물을 줘야할지 말아야할지 어느정도 판단을 도와주는 간단한 프로젝트를 진행해보았습니다. 얼마전에 만들어두었던 파스텔톤 RGB LED (여기!)도 쓸모가 생겼네요 🙂

준비물:
Arduino Nano x 1
토양 습도 센서 FC-28 x 1
RGB LED x 1
브레드보드 x 1
저항, 전선 몇개

하드웨어 연결:
fritzing
20150717_103352
이번 프로젝트도 하드웨어 연결은 아주 간단합니다. RGB LED를 원하는 GPIO에 연결해주고 (아래 코드를 사용하려면 3, 5, 6에 연결해줍니다) FC-28 센서를 5V 전원, 그라운드, 그리고 Analog input 0번에 연결해줍니다. A0 포트로 들어오는 값에 따라서 LED 색깔을 변경해주는 연결입니다.

아두이노 프로그래밍:

int led1 = 3;           // the pin that the LED1 is attached to
int led2 = 5;           // the pin that the LED2 is attached to
int led3 = 6;           // the pin that the LED3 is attached to

void setup()  {
  Serial.begin(9600);
  // declare pin 3,5,6 to be an output:
  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);
  pinMode(led3, OUTPUT);
  digitalWrite(led1,1);
  digitalWrite(led2,1);
  digitalWrite(led3,1);
}

// the loop routine runs over and over again forever:
void loop()  {
  int sensorValue = analogRead(A0);
  Serial.println(sensorValue);

  if (sensorValue >= 820){
    color(0,10,10); // Red
  }
  else if (sensorValue >= 615 && sensorValue < 820){
    color(1,9,10); // Orange with more Red
  }
  else if (sensorValue >=410 && sensorValue < 615){
    color(3,7,10); // Orange
  }
  else if (sensorValue >=250 && sensorValue <410){
    color(7,3,10); // Yellow
  }
  else if (sensorValue >=0 && sensorValue <250){
    color(10,0,10); // Green
  }
  else {
    color(0,0,0); //White
  }
  delay(10000); // Sensor will read moisture level every 10 seconds
}

void color(int B, int R, int Y){
  analogWrite(led1, B*25);
  analogWrite(led2, R*25);
  analogWrite(led3, Y*25);
}

위의 코드를 보시면 LED 색깔이 흙의 수분 정도가 줄어듬에 따라 초록색에서 주황색, 빨간색으로 바뀌는 것을 알 수 있습니다. 10초마다 다시 습도륵 측정하게 되어있구요. 아래 사진으로 결과물을 확인해볼 수 있는데요, 간단하고 나름 귀엽지않나요? Sra에게 조금이라도 도움이 되었으면 하는 마음으로 이번 포스트를 마칩니다 🙂

a20150717_103128
a20150715_164227
a20150716_143712
공포의 빨간불이 켜졌어요, 얼른 물 주세요!

아두이노와 습도센서 FC-28을 이용한 화분 습도 측정기”의 4개의 댓글

  1. Sra 댓글달기

    넵넵!! ^^ 틸란드시아는 물을 좀 싫어하는 아이여서, 새빨간 불이 켜진 후 하루이틀 후에 주려고해요. 이런 유용한 기구들 좋아요~ YC, 쌩유~

  2. 현지 댓글달기

    와진짜 해보진않았지만 제가원한유용한 정보 대박입니다!!

에 응답 남기기 응답 취소