초급 예제

누구나 쉽게 따라해볼 수 있는 쉬운 예제들입니다. 가볍게 도전~!

엔트리 x 오렌지보드-토양수분센서-피에조 부저

2015-12-09 11:35:01

개요

 

1) 토양 수분센서란 무엇인가?


토양 수분센서는 토양 내 수분함량에 따른 저항의 변화를 측정하는 센서입니다.
토양 내 수분과 토양을 구성하는 입자의 크기 및 다양성에 영향을 받으며, 토양 내 수분함량이 많으면 저항값이 작아지고, 수분함량이 적으면 저항값이 커집니다.
그러나 토양 내 수분함량이 매우 많을 때는 전기저항이 둔감하여 오차가 크다는 단점도 가지고 있습니다. 



 

2) 토양 수분센서 사용방법


토양 수분센서는 토양에 직접 꽂는 센서 단자와 센서 보드그리고 케이블로 구성되어 있습니다센서 단자의 2개 핀과 센서 보드의 2개 핀을 서로 연결합니다. (+-는 구분 안해도 됩니다.) 그 다음 케이블을 센서 보드의 DO 핀을 제외한 3개의 핀 (ACC, GND, AO)을 연결합니다.

DO핀은 디지털 출력으로 0과 1만을 출력하며AO핀은 아날로그 출력으로 토양내 수분의 양을 보다 상세하게 출력합니다또한센서보드의 파란색 가변 저항을 돌려서 기준값을 정해놓고 사용할 수 있습니다.

이 예제에서는 AO핀을 사용합니다측정된 값은 수분량을 나타내는 것이 아니라수분량에 따른 저항의 변화를 0~1023 범위내에서 환산된 결과입니다

 

 

 

부품 목록

NO

부품명

수량

상세설명

1

오렌지 보드

1

 

2

토양 수분센서 

1

YL38

3

피에조 부저

1

KPX 1203S

4

브레드 보드

1

 

5

점퍼케이블

13

 

부품명

오렌지 보드

토양 수분센서

피에조 부저

브레드 보드

점퍼케이블

파트

 

 

 

 

하드웨어 making

 

브레드보드 

1. 오렌지보드의 5V핀을 브레드보드의 +버스에 연결합니다. 

2. 오렌지보드의 GND핀을 브레드보드의 -버스에 연결합니다. 

3. 피에조 부저의 +단자를 오렌지보드의 3번핀에 연결합니다. 

4. 피에조 부저의 - 단자를 -버스에 연결합니다. 

5. 토양 수분 센서의 VCC 단자를 +버스에 연결합니다. 

6. 토양 수분 센서의 GND 단자를 -버스에 연결합니다.

7. 토양 수순 센서의 AO단자를 오렌지보드의 A0번핀에 연결합니다. 

 

 

 

전자 회로도

 

 

 

 

엔트리 coding

 

토양 수분 센서를 통해 토양의 수분값을 읽어오고, 수분량에 따라 피에조부저를 제어하는 엔트리 코딩입니다.

아날로그 0번핀에 연결된 토양 수분 센서는 수분량이 많을 때 낮은 값, 수분량이 적을 때 높은 값을 갖습니다.

토양 수분 센서 값(아날로그 0번 센서 값)이 일정 수치보다 적다면, 오렌지 보드에서 피에조 부저에게 0hz의 주파수를 보내 부저에서 소리가 나지 않고, 

일정 수치보다 높다면 오렌지 보드에서 피에조 부저에게 5hz의 주파수를 보내 부저에서 소리가 나게 됩니다.

즉 토양에 수분이 부족하면 피에조부저가 울리게 됩니다.

 

//토양 수분 센서를 아날로그 0번(A0)핀에 연결합니다.
const int soil = A0; 
//피에조 부저를 3번핀에 연결합니다.
int piezo = 3;  

void setup() {
        //시리얼 통신 속도 9600bps로 설정합니다.
        Serial.begin(9600); 
        pinMode(piezo,OUTPUT);
}

void loop() {
        //토양 수분 센서의 센서 값을 시리얼 모니터에 출력합니다. 
        Serial.println(analogRead(soil)); 
        //현재 수분량이 일정 수치보다 낮다면(토양에 수분이 많다면)
        if (analogRead(soil) < 300) { 
                //피에조 부저를 울리지 않습니다.
                analogWrite(piezo,0); 
        //현재 수분량이 일정 수치보다 높다면(토양에 수분이 적다면)
        } else {  
                //피에조 부저를 울립니다.
                analogWrite(piezo,5);  
        }
}

 

 

kocoafabeditor

항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!

엔트리, 토양수분센서, 아두이노, 오렌지보드