Horticultural Science and Technology. 31 December 2016. 860-870
https://doi.org/10.12972/kjhst.20160090

ABSTRACT


MAIN

서 언

국내의 시설 채소재배 면적은 2014년 현재 총 51,787ha이며, 비닐온실이 51,382ha, 경질판 온실 76ha, 유리온실 329ha의 규모 이다 (MFAFF, 2015). 비닐온실이 전체 시설 채소재배 면적의 99.2%를 차지하고 있으며 비닐온실 중 단동 온실이 86.0%를 차 지하고 있어, 우리나라의 시설 채소재배는 단동 비닐온실에 의존적이라 할수 있다. 최근 시설원예는 사물인터넷을 활용한 스 마트 자동화 농업으로 전환되고 있다. 스마트농업은 농작물의 파종부터 출하, 유통 및 소비에 이르는 전 과정을 ICT(Information & Communication Technology) 기술을 활용하여 생산자에게 안정적 수익을 지원하고 소비자에게는 안전한 농식품 제공을 목 적으로 하는 일련의 농업기술이다(Kim, 2014). 그러나, 스마트농업에서 성공적 작물재배를 위해 가장 중요한 복합환경제어 기술의 완성은 시설내의 환경계측부터 시작된다. 이러한 ICT 기술은 대부분 규모가 큰 온실에 적용되고 있어, 단동 온실이 주 류인 국내의 경우에는 그 파급력이 크지 못하다. 또한 규모가 작은 단동 온실에 기존 대형 온실을 대상으로 개발된 기술을 적 용했을 때 많은 문제가 발생하기 쉽다. 따라서, 소규모 비닐 온실 환경을 저비용으로 손쉽게 계측할 수 있는 시스템이 필요하다.

시설 내부의 온도, 상대습도, 이산화탄소 환경요인 들은 작물의 생육속도, 광합성, 동화산물의 이동, 수확시기, 품질, 병충해 예방 및 근권부의 양수분 이동 등에 매우 밀접한 영향을 미친다. 이러한 환경요인들은 스마트농업에 있어서 중요한 계측 및 제어 대상이 될 것이다. 시설내의 온도와 상대습도는 항상 상호작용을 가지고 있기 때문에 두 요인을 자동적으로 조절할 필 요가 있으며, 이를 통하여 작물의 생육과 품질을 향상시키며, 병 발생을 예방할 수 있다 (Kwon et al., 2006). 또한 이산화탄소 농도는 광합성과 매우 밀접한 관련이 있기 때문에, 최근 들어 공정육묘 재배에서 이산화탄소 농도 조절에 대한 관심이 집중 되고 있다 (Jang et al., 2014).

따라서, 우리나라의 시설 채소재배의 대부분을 점유하고 있는 단동 비닐온실에서 환경측정 및 제어기술을 적용하기 위해 서는 고가의 복합환경제어 장치보다는 저비용이면서 간단한 계측 시스템이 필요하다. Yeon et al.(2015)는 아두이노 하드웨어 플랫폼을 이용하여 양액 조절이 가능한 자동화 시스템과 모니터링 시스템을 만들었으며, Thalheimer(2013), Bitella et al.(2014) 와 Ferrarezi et al.(2015)는 저비용의 open-source microcontroller를 활용해 환경요인을 제어하는 자동시스템을 개발하기도 하였 다. 특히 개방형 microcontroller의 하나인 아두이노는 다수의 센서로부터 값을 받아들여, 외부 전자 장치들을 통제함으로써 환 경과 상호작용이 가능한 시스템을 구성할 수 있다. 또한 전체 장치의 일부분으로 제어가 필요한 시스템을 갖춘 특정 목적의 컴퓨터 시스템(임베디드) 중의 하나로 손쉽게 개발 및 장치를 제어할 수 있는 특징이 있다(D’Ausilio, 2012; Wikipedia, 2016). 환 경 계측과 모니터링 시스템을 위해서는 센서, microcontroller 및 LCD 기기가 기반이 된다. 또한 아두이노는 AVR의 ATmega의 MCU를 기반으로 만들어진 것이어서, ATmega에 내장된 기본 모듈을 함수화하여 쉽게 접근할 수 있으며, 다른 여러 가지 부 품을 적용할 경우, 다양한 라이브러리(소프트웨어에 쓰이는 클래스나 서부루틴들의 모임)가 존재할 수 있다(D’Ausilio, 2012; Wikipedia, 2016).

본 연구의 목적은 저비용의 개방형 microcontroller를 기반으로 온도, 상대습도, 이산화탄소 농도 측정이 가능한 소규모 온실 환경 계측시스템을 개발하고 검증하는 것이다.

재료 및 방법

Open-source prototype board(Arduino Uno R3, Arduino, Ivrea, Italy)를 탑재한 microcontroller를 이용하여 환경계측 시스 템을 개발하였다(Table 1, Fig. 1 and Fig. 2). CO2 센서(SE-0018, CO2Meter, Inc, FL, USA)와 토양 온도/습도 센서(SHT10,Adafruit Industries, NY, USA)는 open-source prototype board에 연결되었으며, 128x64 graphic LCD(SE-KLCD-A, Sample electronics, Korea)를 사용하여 실시간으로 환경값을 확인할 수 있었다. CO2 센서는 비분산적외선 센서로, 2초 마다 1-10,000ppm 범위를 측정할 수 있으며 정확도는 ±30 ppm이다(CO2Meter.com, 2016b). 토양 온도/습도 센서는 Sensiron 온 습도 센서 모듈을 탑재한 것으로, 동작 온도/습도범위는 각각 -40~120°C와 0~100%이다. 온도와 상대습도 센서의 정확도는 각각 0.5°C, 4.5%이었다(Value Creation Technology, 2016). LCD 디스플레이는 128x64 그래픽으로, 완성형 KS_5601 코드가 지원된다(Sample electronic, 2016).

Table 1. Equipment list and component price needed to build a monitoring system (Jan., 2016). http://static.apub.kr/journalsite/sites/kshs/2016-034-06/N0130340606/images/Table_KSHS_34_04_06_T1.jpg
http://static.apub.kr/journalsite/sites/kshs/2016-034-06/N0130340606/images/Figure_KSHS_34_04_06_F1.jpg
Fig. 1

Open-source prototype board(Arduino Uno, Arduino, Ivrea, Italy, A), 128x64 graphic LCD(SE-KLCD-A, Sample Electronics, Korea, B), CO2 meter(SE-0018, CO2Meter, Inc, FL, USA, C), and soil temperature/moisture sensor(SHT10, Adafruit Industries, NY, USA, D).

http://static.apub.kr/journalsite/sites/kshs/2016-034-06/N0130340606/images/Figure_KSHS_34_04_06_F2.jpg
Fig. 2

A wiring diagram connected with two sensors and a LCD monitor with a microcontroller.

Uno R3는 컴퓨터와 연결하는 USB 인터페이스를 가지고 있으며, 6개의 아날로그 입력과 14개의 디지털 입력/출력핀을 가지고 있다(Fig. 1A). 아날로그 입력핀은 볼트(V) 출력을 지닌 센서를 측정하는데 사용될 수 있다. 디지털 입력핀은 온도, 상대습 도, 광도와 같은 디지털 센서에 사용될 수 있으며, 디지털 출력핀은 릴레이나 모터 및 LED 등과 같은 외부 기기에 5V 직류(DC) 를 공급하는데 사용될 수 있다. 입력 전원은 컴퓨터U SB 포트, DC power supply나 밧데리(5-12 V DC)가 사용된다.

CO2 센서는 D12와 D13 디지털 핀에 연결하였으며, 토양 온도/습도 센서는 D2와 D3 디지털 핀에 연결하였다(Fig. 2). 환경 모니터링을 위하여 LCD은 data transmission(TX) 통신핀(D1)에 연결하였다. 개발 프로그램은 C/C++ 프로그램 언어를 사용 하는 아두이노 프리웨어[버전 1.6.8, Arduino(Arduino, 2016)]로 개발하였다. CO2 센서는 Jason Berger 코딩 방법(CO2Meter. com, 2016a), 토양 온도/습도 센서는 Jonathan Oxer와 Maurice Ribble의 코딩 방법(GitHub, 2016), LCD는 샘플전자(Sample electronics, 2016)의 코딩 방법을 이용하였다.

온실 환경 측정 시스템은 온실 바닥면으로부터 1m 위치에 설치하였으며, 온도, 상대습도 및 이산화탄소 농도 측정값은 SD shield(SD 2.0, Adafruit)를 추가하여 매 30초마다 저장하였다. 노점온도는 대기온도와 상대습도를 이용하여 계산하였다. 환경 계측 장치는 온실 바닥면에서 1.5m 부분에 설치하였다.

결과 및 고찰

온실 환경 측정 시스템에 사용되는 제품 별 가격은 총 244달러(한화 29만원 정도)가 소요되었다(Table 1). 쉴드(Shield)는 특 정 기능을 갖는 보드로, 아두이노와 결합하여 특정한 입출력 기능을 탑재할 수도 있다. 만약 저장장치인 SD shield(SD 2.0, Adafruit)를 부착하면 대략 20달러 이상(SD 카드 포함한 가격)의 추가 비용이 소요된다.

본 모니터링 시스템에 사용된 라이브러리는 SoftwareSerial, Wire와 Sensirion이 사용되었다(Appendix A). SoftwareSerial 라이브러리는 아두이노의 다른 디지털핀을 이용하여 시리얼 통신을 위해 개발된 것이다. 즉, 블루투스 모듈이나 UART통신을 사용하는 모듈을 사용할 때 소프트웨어적으로 일반 I/O 핀들을 시리얼 통신을 하는데 사용할 수 있도록 한다. Wire 라이브러 리는 I2C 통신을 초기화하고 활성화하는 함수로, 본 시스템에 사용된 온도 및 상대습도 센서는 I2C(Inter-Integrated Circuit) 통신방식으로 되어있어 이러한 라이브러리에 근거하여 모니터링 시스템이 프로그램되었다. Sensirion 라이브러리는 센시리 온 회사에서 센서에 맞게 개발한 라이브러리로, 본 시스템에 사용된 온습도 센서가 센시리온 온습도 센서 모듈을 탑재하였기 때문에, 센시리온 라이브러리로 간단하게 프로그래밍할 수 있었다.

온실에 설치한 후 이산화탄소 농도 변화를 측정한 결과는 Fig. 3과 같다. 온도와 상대습도는 연속적으로 잘 측정되었으나, 이 산화탄소 농도는 측정값이 튀는 현상이 발생하였다(Fig. 3A). 그 측정값은 모두 4294967295이란 수치로 나타났다. 따라서 이 상한 측정값에 대해서는 이전 값으로 표기할 수 있도록 다음과 같이 프로그래밍하였다.

float data_valCO2 = 0;

float data_CO2_value = 0;

if (valCO2 > 10000) {

valCO2 = data_valCO2; }

data_valCO2 = valCO2;

http://static.apub.kr/journalsite/sites/kshs/2016-034-06/N0130340606/images/Figure_KSHS_34_04_06_F3.jpg
Fig. 3

Changes in CO2 concentration for one day. Arrow indicates a mistaken value of CO2 sensor. A and B are original and modified sketches, respectively.

여기에서, valCO2는 센서에 의해 측정한 값이고, data_valCO2는 다음에 측정한 값이 10,000 μmol·mol-1 이상일 경우 이전 에 측정한 값이 된다. 이렇게 프로그램을 수정한 후의 이산화탄소 농도의 일중 변화는 Fig. 3B와 같았다. 수정한 프로그램으로 온실에서 온도, 상대습도 및 이산화탄소 농도는 튀는 현상없이 측정되었다(Fig. 4).

http://static.apub.kr/journalsite/sites/kshs/2016-034-06/N0130340606/images/Figure_KSHS_34_04_06_F4.jpg
Fig. 4

Changes in temperature (A), relative humidity (B), and CO2 concentration (C) in a velno-type greenhouse from March 27, 2016 to April 2, 2016.

농업분야에 저비용 개방형의 아두이노를 활용한 연구들이 많았다. D’Ausilio(2012)는 아두이노 보드가 많은 연구실에서 쉽 고 저렴한 다목적 도구로 활용될 수 있을 것이라고 하였다. 그 예로 Thalheimer(2013)는 사과 과수원에서 토양수분장력계 (MPX5100DP; Freescale Semiconductor, 2010)를 이용하여 수분함량을 계측할 수 있는 하드웨어 설계와B itella et al.(2014) 는 토양 깊이에 따른 수분함량과 대기 및 토양온도를 측정하기 위한 하드웨어를 설계하였으며, Ferrarezi et al.(2015)는 토양 수분센서(10HS; Decagon devices, Pullman, WA)를 이용하여 수분함량을 제어할 수 있는 하드웨어를 설계하였다.

온도와 상대습도의 2가지 공기 상태값을 측정할 수 있으면, 습공기 선도에 의해 모든 물리적인 항목(엔탈피, 포화수증기압, 수증기압, 포화수증기압차, 절대습도, 습구온도와 노점온도 등)을 계산할 수 있다. 습공기선도를 이용하며, 작물 재배 온실에 열 및 수분을 투입한 후, 공기상태를 예측하는 것이 가능하고, 역으로 최초의 공기상태에서 원하는 공기상태로 만들기 위해서 필 요한 열이나 수분 투입량을 계산할 수 있다 (Moon et al., 2012). 이러한 방법으로 온실에 투입되는 열이나 수분 등을 계산할 수 있어서 보다 지속적인 환경친화적인 작물 재배 방식 실현에 많은 도움을 줄 것이며, 경제적인 측면에서도 농가에 많은 도움을 줄 것으로 기대된다. 따라서 이러한 저비용의 open-source 소프트웨어를 이용한 온실환경계측 시스템의 보급은 시설원예 현 대화와 스마트팜 농업 보급화에 크게 이바지 할 수 있을 것이다.

Appendix A

#include <SoftwareSerial.h>

#include <Wire.h>

#include <Sensirion.h>

#define KLCD_HOME 0 x01

#define KLCD_CLSTART 0 x02

#define KLCD_CRIGHT

#define KLCD_CLEFT

#define KLCD_CUP

#define KLCD_CDOWN 0 x06

#define KLCD_NORMAL 0 x08

#define KLCD_REVERSE

#define KLCD_CLEAR 0 x0B

#define KLCD_ENTER

#define KLCD_LOCATE

SoftwareSerial K_30_Serial(12,13);

const uint8_t dataPin = 2;

const uint8_t clockPin = 3;

Sensirion Sensor = Sensirion(dataPin, clockPin);

byte readCO2[] = {

0xFE, 0X44, 0X00, 0X08, 0X02, 0X9F, 0X25};

byte response[] = {0,0,0,0,0,0,0};

int valMultiplier = 1;

Float temperature;

float humidity;

float dewpoint;

float data_valCO2 = 0;

float data_CO2_value = 0;

void klcd(unsigned int v) {

unsigned char d;

if (v > 0xFF) {

d = (v>>8) & 0xFF;

Serial.write(d);

}

d = v & 0xFF;

Serial.write(d);

}

void klcd_locate(unsigned char r, unsigned char c) {

unsigned char t;

Serial.write(KLCD_LOCATE);

t = ((r<<5) | (c & 0x1F));

Serial.write(t);

}

void setup() {

Serial.begin(9600);

K_30_Serial.begin(9600);

Wire.begin();

klcd(KLCD_CLEAR);

delay(300);

}

void loop() {

sendRequest(readCO2);

unsigned long valCO2 = getValue(response);

ReadSHT();

if (valCO2 > 10000) {

valCO2 = data_valCO2;

}

data_valCO2 = valCO2;

klcd(KLCD_CLEAR);

klcd(KLCD_NORMAL);

klcd(0xBFC2);

klcd(0xB5B5);

klcd('= ');

Serial.print(temperature, 1);

Serial.println(" C");

klcd(0xB3EB);

klcd(0xC1A1);

klcd('= ');

Serial.print(dewpoint, 1);

Serial.println(" C");

klcd(0xBDC0);

klcd(0xB5B5);

klcd('= ');

Serial.print(humidity, 1);

Serial.println("%");

klcd(0xB0A1);

klcd(0xBDBA);

klcd('= ');

Serial.print(valCO2);

Serial.print( " ppm" );

delay(5000);

}

void sendRequest(byte packet[]){

while(!K_30_Serial.available()){

K_30_Serial.write(readCO2,7);

delay(50);

}

int timeout=0; //set a timeoute counter

while(K_30_Serial.available() < 7 ) {

timeout++;

if(timeout > 10) {

while(K_30_Serial.available())

K_30_Serial.read();

break;

}

delay(50);

}

for (int i=0; i < 7; i++){

response[i] = K_30_Serial.read();

}

}

klcd(0xC1A1);

klcd('= ');

Serial.print(dewpoint, 1);

Serial.println(" C");

klcd(0xBDC0);

klcd(0xB5B5);

klcd('= ');

Serial.print(humidity, 1);

Serial.println("%");

klcd(0xB0A1);

klcd(0xBDBA);

klcd('= ');

Serial.print(valCO2);

Serial.print( " ppm" );

delay(5000);

}

Acknowledgements

본 연구는 농림축산식품부 첨단생산기술개발사업(과 제번호:1545011435)에 의해 이루어진 것임.

References

1
Arduino (2016) Downloads the Arduino software. https://www.arduino.cc/en/Main/Software Accessed 14 March 2016 Bitella G, Rossi R, Bochicchio R, Perniola M, Amato M (2014) A novel low-cost open-hardware platform for monitoring soil water content and multiple soil-air-vegetation parameters. Sensors 14:19639-19659. doi:10.3390/s141019639
2
CO2meter.com (2016a) News. Arduino code for K-30 CO2 sensor works for S8 sensor too. http://www.co2meter.com/blogs/news/35432257-arduino-code-for-k-30-co2-sensor-works-for-s8-sensor-too Accessed 14 March 2016
3
CO2meter.com (2016b) Sensors. K-30 10,000ppm CO2 Sensor. http://www.co2meter.com/collections/co2-sensors/products/k-30-co2-sensor-module Accessed 14 March 2016
4
D’Ausilio A (2012) Arduino: A low-cost multipurpose lab equipment. Behav Res 44:305-313. doi.org/10.3758/s13428-011-0163-z
5
Feescale Semiconductor (2010) Technical data sheet for MPX5100. http://www.freescale.com/files/sensors/doc/data_sheet/MPX5100.pdf?pspll=1. Accessed 9 May 2016
6
Ferrarezi RS, Dove SK, MW van Lersel (2015) An automated system for monitoring soil moisture and controlling irrigation using lowcost open-source microcontrollers. HortTechnology 25:110-118
7
Github (2016) STH1x. https://github.com/practicalarduino/SHT1x. Accessed 14 March 2016
8
Jang YA, Mon BH, Do KR, Chun CH (2014) Effects of photosynthetic photon flux and carbon dioxide concentration on the photosynthesis and growth of grafted pepper transplants during healing and acclimatization. Hortic Environ Biotechnol 55:387- 396. doi:10.1007/s13580-014-0221-4
9
Kim YD (2014) Sensor data standardization technology for smart agriculture. The Korea Institute of Electronic Communication Sciences 8(2):267-270. doi.org/10.13067/JKIECS.2014.9.2.267
10
Kwon JK, Kang KH, Kweon GB, Choi YH, Kang NJ, Lee JH, Rhee HC (2006) Effect of automatic ventilation of greenhouse during daytime on the growth and wilting occurrence in watermelon. Korean J Hortic Sci Technol 24:138-142
11
Moon W, Lee YB, Son JE (2012) Protected horticulture. KNOU Press, Seoul, Korea, pp253-259
12
Ministry of Food, Agriculture, Forestry and Fisheries (MFAFF) (2015) Statistics of vegetable production in the year 2014. http://ebook.mafra.go.kr/preview/viewer/main.php?site=2&menuno=2&previewno=7548&iframe=0&dlbt= Accessed 9 May 2016
13
Sample Electronic (2016) Arduino shield SE-KLCD-A. http://www.robot.co.kr/front/php/product.php?product_no=2581&main_cate_no=1&display_group=2 Accessed 14 March 2016
14
Thalheimer M (2013) A low-cost electronic tensiometer system for continuous monitoring of soil water potential. J Agric Eng 44:114-119. doi : 10.4081/jae.2013.e16
15
Value Creation Technology (2016) Sensors. http://www.vctec.co.kr/product/detail.html?product_no=951&cate_no=145&display_group=1 Accessed 14 March 2016
16
Wikipedia (2016) Arduino.https://ko.wikipedia.org/wiki/%EC%95%84%EB%91%90%EC%9D%B4%EB%85%B8 Accessed 14 March 2016
17
Yeon IW, Choi JP, Lee WC (2015) Plant factory nutrient automation system using Arduino hardware platform. Proceedings of Symposium of the Korean Institute of Communications and Information Sciences 581-582
페이지 상단으로 이동하기