cflora 는 (주)이지팜에서 농촌진흥청과 함께 개발한 온실환경관리 플랫폼입니다. TTAK.06.0288 Part 1, Part 2, Part 3를 지원하며, 오픈소스 하드웨어/소프트웨어로 구성됩니다. 개발 시작단계에서 네이버개발자센터에서 관리되었으나, 네이버 개발자 센터의 오픈프로젝트가 2016년 12월 26일부로 종료됨에 따라 github으로 마이그레이션되었습니다.
- 제어를 위해 Cubieboard 2 를 사용합니다.
- Base 보드, AI 보드, DI 보드, DO 보드 로 구성됩니다.
- 각 보드는 CAN으로 연결되고, AI, DI, DO 보드는 확장이 가능합니다.
- AI 보드는 8개의 아날로그 입력을 받을 수 있고, 전압, 전류, 저항을 측정할 수 있습니다.
- DI 보드는 8개의 디지털 입력을 받을 수 있습니다.
- DO 보드는 8개의 디지털 출력을 보낼 수 있습니다.
- TTAK.06.0286의 온실관제시스템 요구사항 프로파일을 만족합니다.
- 온실운영시스템(gos), 온실통합제어기(gcg), 센서노드/제어노드(node)로 구성됩니다.
- 온실관제시스템 모듈간 통신인터페이스인 TTAK.06.0288 Part 1, Part 2, Part 3를 지원합니다.
- 센서값 변환 기능을 제공합니다.
- 선형변환기능을 제공합니다.
- 계단형 변환기능을 제공합니다.
- 고차형 변환을 위해 구간별 선형변환기능을 제공합니다.
- 가상센서를 지원합니다.
- 자동제어룰을 지원합니다.
- Cubieboard 2는 온라인 쇼핑몰에서 구매가 가능합니다.
- Base 보드, AI 보드, DI 보드, DO 보드는 공개된 PCB를 이용하여 직접 제작하실 수 있으며, (주)이지팜을 통해서 구매도 가능합니다.
cflora 는 cubieboard 2를 사용하고 있습니다. 이를 위한 이미지 파일은 링크에서 구할 수 있습니다. 해당 파일을 받아서 sd 카드에 구워서 사용하시면 됩니다.
cflora 는 다음의 오픈소스를 사용하고 있습니다.
iniparser 와 libtp3는 git submodule 로 연동되어 있습니다. 따라서 다음과 같이 입력하면 컴파일을 위한 소스들을 받아올 수 있습니다.
git submodule init
git submodule update
단 libtp3는 libuv 를 사용하기 때문에 libuv 를 먼저 설치해주어야 합니다. 더 상세한 설명은 libuv 홈페이지를 참조하시길 바랍니다.
wget https://github.com/libuv/libuv/archive/v1.x.zip
unzip v1.x.zip -d v1.x
cd v1.x/libuv-1.x
./autogen.sh
./configure
make
make install
- mysql mysql 은 사용하는 OS에 따라 적절히 설치하면 됩니다. debian 계열의 Ubuntu나 Rasibian 등을 사용하는 경우에는 다음과 같이 설치할 수 있습니다.
sudo apt install mysql-server
cflora 는 cmake 를 이용해서 컴파일이 가능합니다. 개별 폴더로 이동하셔서 다음의 명령을 입력하시면 컴파일이 됩니다.
cmake .
make
컴파일 진행시 다음의 순서로 컴파일을 진행하시면 됩니다.
- libcflora
- libtp12
- node
- gcg
- gos
일련의 과정을 한번에 수행하기 위해서 install 폴더의 build.sh를 실행하실 수 있습니다.
cd install
./build.sh
마지막으로 설치를 위해 install 폴더의 install.sh 를 실행하시면 됩니다.