[DIY 스마트팜] 지렁이 상토/액비 생산 시스템 구축 아이디어

  생활형 순환 스마트팜을 위한 환경 제어 모델 안녕하세요. 이번 글에서는 단순 퇴비통이 아니라, 실내 육묘 시스템과 연계 가능한: 지렁이 상토 생산 액비(Vermi Tea) 생성 함수율 제어 환경 모니터링 까지 포함한 소형 자동화 시스템을 정리해봅니다. 특히 PLC 엔지니어 관점에서: 함수율 환기 액비 체류 시간 발효 안정성 을 어떻게 관리할 것인지에 초점을 맞췄습니다. 1. 시스템 목표 이번 시스템의 핵심 목표는 다음과 같습니다. 사용 후 코코피트 재활용 지렁이 분변토 생산 저농도 액비 생성 냄새/혐기화 최소화 실내 육묘 시스템과 연계 2. 전체 시스템 구조 입력(Input) 사용 후 코코피트 식물 잔사 마른 종이류 소량의 유기물 ↓ 처리(Process) 지렁이 분해 미생물 활성 함수율 유지 약한 환기 ↓ 출력(Output) 지렁이 분변토 Vermi Tea 액비 3. 환경 모델(Environment Model) 지렁이 시스템은 사실: "미생물 환경 제어" 에 가깝습니다. 중요한 환경 변수는 다음과 같습니다. 핵심 변수 항목 목표 범위 함수율 60~80% 온도 18~28°C 산소 상태 약한 호기성 액비 체류 시간 짧게 환기 약한 지속 환기 왜 중요한가? 지렁이 시스템이 실패하는 가장 큰 이유는: 과습 혐기화 정체 입니다. 즉: "산소 공급" 이 핵심입니다. 4. 추천 하드웨어 구조 센서 SHT30 (온습도) Capacitive Soil Sensor DS18B20 (베드 내부 온도) 액추에이터 DC 24V 팬 소형 펌프 배출 솔레노이드 밸브 제어 장치 PLC Python PC/Raspberry Pi 5. 제어 프로세스(Control Process) 기본 철학 "짧게 공급하고 빠르게 배출" 입니다. 함수율 제어 프로세스 함수율 측정 목표 함수율 이하 확인 분무/급수 일정 시간 유지 자동 배출 약한 환기 PLC 시퀀스 예시 STEP 1: 함수율 LOW 감지 ↓ STEP 2: 펌프 ON (10초) ↓ STEP 3...

[DIY 스마트팜] 적산온도(GDD) 기반 생육 모드 전환 시스템 아이디어

안녕하세요. 이번 글에서는 단순 타이머 기반 자동화를 넘어, 식물의 실제 생장 상태를 기반으로 환경을 전환하는 적산온도(GDD) 기반 생육 모드 전환 시스템 아이디어를 정리해봅니다. 핵심은: "며칠이 지났는가?"가 아니라 "식물이 실제로 얼마나 성장했는가?"를 기준으로 제어하는 것입니다. PLC의 안정적인 제어와 Python의 데이터 처리 능력을 결합하면, 작은 DIY 육묘기도 꽤 고도화된 생육 제어 시스템으로 발전시킬 수 있습니다. 1. 시스템 개요 이번 시스템은 크게 3개의 모드로 구성됩니다. 발아 모드 (Germination Mode) 육묘 모드 (Seedling Mode) 재배 모드 (Grow Mode) 그리고 이 모드 전환 기준을 단순 날짜가 아닌: "적산온도(GDD, Growing Degree Days)" 로 판단합니다. 2. 왜 적산온도가 중요한가? 식물은 단순히 시간이 흐른다고 성장하지 않습니다. 실제로는: 온도 광량 수분 VPD 같은 환경 조건에 영향을 받습니다. 특히 온도는 생장 속도에 직접적인 영향을 줍니다. 예를 들어: 평균 15°C 환경에서의 10일 평균 25°C 환경에서의 10일 은 생장량이 완전히 다릅니다. 즉: "10일 후 재배 모드 전환" 같은 단순 시간 기반 로직은 계절과 환경 변화에 취약합니다. 3. 적산온도(GDD)란? 적산온도는 식물이 성장 가능한 온도를 얼마나 누적해서 받았는지를 계산하는 모델입니다. 붙여넣기용 수식: GDD = Σ(Tavg - Tbase) 설명: Tavg = 평균 온도 Tbase = 생육 시작 기준 온도 예를 들어: 평균 온도: 22°C 기준 온도: 10°C 라면: GDD = 22 - 10 = 12 즉 하루에 12의 생육량이 누적됩니다. 4. 시스템 아키텍처 L0 — Sensor / Actuator DS18B20 (지온 측정) SHT3x (온습도) DC 24V 팬 저면관수 펌프 배출 솔레노이드 밸브 L1 — PLC PLC는 실시간 ...

[DIY 스마트팜] PLC와 Python으로 만드는 스펀지 포트 기반 자동 육묘 시스템 아이디어

이번 글에서는 PLC 엔지니어의 관점에서 “공장형 스마트팜의 초기 육묘 시스템”을 어떻게 가성비 있게 구현할 수 있는지 정리해 보겠습니다. 특히 이번 시스템은: 스펀지 포트 기반 육묘 저면급수 자동 배출 약한 환기(Flicker Ventilation) 구조를 중심으로 설명합니다. 복잡한 AI보다: “제어하기 쉬운 물리 시스템” 을 먼저 만드는 방향입니다. 1. 왜 스펀지 포트를 사용하는가? 공장형 스마트팜 영상을 보면 씨앗을 작은 스펀지에 꽂아 발아시키는 경우가 많습니다. 이유는 단순합니다. 자동화에 매우 유리하기 때문입니다. 일반 상토의 문제점 상토는 자연 재료라서 편차가 큽니다. 예를 들어: 함수율 편차 밀도 편차 배수 편차 공극률 편차 가 존재합니다. 즉: 같은 시간 동안 물을 공급해도 결과가 달라질 수 있습니다. PLC 제어 입장에서는 매우 까다로운 조건입니다. 반면 스펀지 포트는? 스펀지 포트는: 크기 일정 공극률 일정 함수율 패턴 일정 배수 특성 일정 합니다. 즉: “반복성이 매우 높다” 는 강력한 장점이 있습니다. 예를 들어: 저면급수 30초 → 거의 일정한 함수율 이라는 재현성이 가능합니다. 이건 PLC 타이머 제어와 궁합이 매우 좋습니다. 2. 시스템 구성 이번 시스템은 다음 구조를 사용합니다. 센서 구성 온습도 센서 SHT30 SHT31 SHT35 역할: 온도 측정 상대습도 측정 VPD 계산용 데이터 제공 지온 센서 DS18B20 방수형 역할: 스펀지 트레이 온도 측정 히터 제어 발아 단계에서는 기온보다 지온 안정성이 훨씬 중요합니다. 수위 센서 역할: 저면급수 수위 감지 펌프 공회전 방지 3. 액추에이터 구성 저면급수 펌프 추천: DC 24V 다이아프램 펌프 또는: 소형 수중 펌프 드레인 밸브 역할: 급수 후 자동 배출 과습 방지 환기 팬 중요 포인트: 강한 환기가 아니라: “약한 지속 환기” 가 중요합니다. 히터 매트 발아 안정성을 크게 올려주는 핵심 장치입니다. 특히 겨울철에는 매우 중요합니다. 4. 추천 제어 구조 이번 시스템에서 가장...

[DIY 스마트팜] PLC와 Python으로 만드는 스마트 육묘 시스템 아이디어

  - 스펀지 포트 기반 자동 발아 시스템 설계 - 안녕하세요! 오늘은 PLC의 안정성과 Python의 데이터 분석 능력을 결합하여, 공장형 스마트팜 구조에 가까운 “스펀지 포트 기반 자동 육묘 시스템”을 구축하는 방법을 정리해 봅니다. 이번 시스템은 단순히 씨앗에 물을 주는 수준이 아니라: VPD(포차) 적산온도(GDD) 저면급수 배출(Drain) 순환(Circulation) 함수율 기반 관수 까지 고려한 데이터 기반의 정밀 육묘 시스템입니다. 특히 이번 글에서는 실제 공장형 스마트팜에서 많이 사용하는: 스펀지 포트 우레탄 폼 폼 배지 기반의 육묘 구조를 중심으로 설명합니다. 1. 왜 공장형 스마트팜은 스펀지 포트를 사용하는가? 많은 사람들이 스마트팜이라고 하면: 복잡한 AI 고급 센서 비싼 제어 알고리즘 을 먼저 떠올립니다. 하지만 실제 공장형 스마트팜에서는 오히려: “배지를 규격화하여 제어를 단순화” 하는 접근을 많이 사용합니다. 상토 기반의 문제점 일반 상토는 자연 재료이기 때문에 편차가 큽니다. 예를 들어: 함수율 편차 밀도 편차 배수 편차 공극률 편차 가 존재합니다. 즉: “같은 시간 동안 물을 공급해도 결과가 달라질 수 있다” 는 문제가 발생합니다. PLC 엔지니어 관점에서는 이런 편차가 매우 불리합니다. 반면 스펀지 포트는? 스펀지 포트는: 크기 일정 공극률 일정 함수율 패턴 일정 배수 특성 일정 합니다. 즉: “반복성이 매우 높다” 는 강력한 장점이 있습니다. 예를 들어: 30초 저면급수 → 거의 동일한 함수율 이라는 재현성이 가능합니다. 이는 자동화 시스템에서 매우 중요한 특징입니다. 2. 시스템 아키텍처 (Hybrid Architecture) 시스템은 크게 3개 계층으로 구성됩니다. L0 (Sensor / Actuator) 실제 센서와 액추에이터 계층입니다. 센서 구성 SHT3x 온습도 센서 DS18B20 수온/지온 센서 수위 센서 EC 센서(Optional) 조도 센서(Optional) 액추에이터 구성 DC 24V 저면급수 펌프 순...

[DIY 스마트팜] PLC와 Python으로 만드는 모종 발아 시스템 아이디어 노트

안녕하세요! 오늘은 산업용 자동화 기술(PLC)과 데이터 분석 언어(Python)를 결합하여, 가정에서도 전문가 수준의 환경 제어를 구현하는 스마트 모종 발아 시스템 설계법을 정리해 봅니다. 단순히 온도를 끄고 켜는 제어를 넘어, 식물 생장 모델인 ‘적산온도(GDD)’와 ‘VPD(포차)’를 적용한 고차원 제어 모델입니다. 1. 하이브리드 제어 아키텍처 (Hybrid Control Architecture) 가장 먼저 하드웨어와 소프트웨어의 역할을 명확히 나눕니다. 가성비를 위해 비싼 산업용 센서 대신 아두이노와 정밀 모듈을 활용합니다. L0 (Sensor / Actuator) 아두이노 SHT3x 온습도 센서 DS18B20 방수 온도 센서 정전용량형 토양수분 센서 SSR DC 24V 팬 초음파/진동자 가습기 DC 24V 다이아프램 펌프 또는 연동 펌프 L1 (Control) PLC PID 제어 시퀀스 인터록 안전 로직 관수 시퀀스 제어 L2 (Intelligence) Python VPD 계산 적산온도(GDD) 추적 증산량 기반 관수 보정 데이터 로깅 이상 패턴 분석 핵심은 PLC가 “안정성”을 담당하고, Python이 “지능형 분석”을 담당하는 구조입니다. 2. 핵심 제어 로직: VPD (Vapor Pressure Deficit) 단순 습도(%) 제어는 식물에게 큰 의미가 없습니다. 온도가 변하면 상대습도 역시 함께 변하기 때문입니다. 실제 식물은 “공기가 얼마나 수분을 더 가져갈 수 있는 상태인가”를 기준으로 반응합니다. 이를 수치화한 것이 바로 VPD(Vapor Pressure Deficit, 포차)입니다. 왜 VPD가 중요한가? 너무 낮은 VPD 과습 곰팡이 발생 증산 억제 너무 높은 VPD 과도한 건조 발아 스트레스 성장 저하 발아 및 초기 육묘 단계에서는 일반적으로 다음 범위를 많이 사용합니다. 0.4 ~ 0.8 kPa 발아 및 초기 육묘의 골든 존 곰팡이 위험 감소 안정적인 증산 환경 형성 Python에서 실시간으로 온도와 습도를 읽어 VPD를 계산하고...

[아두이노] 라이브러리 없이 SHT30 온습도 센서 직접 제어하기 (Arduino/I2C)

대부분 아두이노에서 센서를 다룰 때는 전용 라이브러리를 사용합니다. 하지만 산업 현장이나 임베디드 환경에서는 메모리 절약, 디버깅 편의성, 그리고 예외 처리 강화를 위해 데이터시트를 직접 해석하여 구현하는 경우가 많습니다. 특히 PLC, 산업용 제어기기, 펌웨어 개발에서는 라이브러리 의존성을 줄이는 것이 시스템 안정성 측면에서 큰 장점이 됩니다. 이번 글에서는 Wire.h 만 사용하여 SHT30 센서를 직접 제어하는 방법을 정리해 보겠습니다. 1. SHT30의 통신 메커니즘 이해하기 SHT30은 I2C 기반 디지털 온습도 센서입니다. 라이브러리 내부에서 실제로 수행되는 동작은 생각보다 단순합니다. MCU와 센서는 아래 순서대로 통신합니다. Single Shot Mode 동작 순서 I2C START 조건 생성 센서 주소( 0x44 ) 전송 측정 명령어( 0x2C06 ) 전송 센서 내부 측정 완료까지 대기 측정 결과 6바이트 읽기 Raw 데이터를 온습도로 변환 즉, 라이브러리란 결국 이 과정을 함수로 감춰놓은 것에 불과합니다. 2. SHT30 기본 배선 Arduino UNO 기준 SHT30 Arduino UNO VCC 3.3V ~ 5V GND GND SDA A4 SCL A5 3. 중요한 특징: I2C 주소는 제조 단계에서 결정됨 SHT30 모듈은 일반적으로 아래 두 가지 주소 중 하나를 사용합니다. ADDR 핀 상태 I2C 주소 LOW 0x44 HIGH 0x45 문제는 알리익스프레스 등에서 판매되는 일부 SHT30 모듈은: ADDR 핀이 외부로 노출되지 않거나 PCB 내부에서 GND/VCC로 고정되어 있는 경우가 많다는 점입니다. 즉: 사용자가 주소를 변경할 수 없는 경우가 존재 제조 단계에서 주소가 사실상 결정됨 이라는 특징이 있습니다. 따라서 여러 개의 SHT30을 동시에 연결하려면: 0x44 0x45 주소 조합을 고려해야 하며, 동일 주소 센서를 여러 개 연결해야 하는 경우에는: I2C 멀티플렉서(TCA9548A) 별도 I2C 버스 RS485 기반 센서 등을...

[아두이노] SHT30 온습도 센서 직접 연결 가이드: I2C 배선부터 실전 트러블슈팅까지

  산업용 현장에서 많이 사용하는 SHT30 온습도 센서는 정확도가 높고 반응 속도가 빨라 아두이노 프로젝트에서도 자주 사용됩니다. 하지만 실제로 연결해 보면: 센서가 인식되지 않음 값이 NaN으로 출력됨 습도가 이상하게 튐 온도가 계속 높게 나옴 같은 문제를 자주 겪게 됩니다. 이번 포스팅에서는 SHT30의 I2C 연결 원리 → 아두이노 배선 → 주소(Address) 개념 → 실전 테스트 코드 → 현장에서 자주 발생하는 오류 원인 까지 한 번에 정리해 보겠습니다. 1. SHT30이란? SHT30은 Sensirion 계열의 디지털 온습도 센서입니다. 특징: 높은 정확도 빠른 응답 속도 디지털 출력 I2C 인터페이스 사용 아날로그 센서처럼 ADC 계산이 필요하지 않고, 온도와 습도를 디지털 데이터로 바로 읽을 수 있습니다. 2. SHT30은 왜 I2C를 사용할까? SHT30은 I2C(Inter-Integrated Circuit) 통신을 사용합니다. I2C는 단 2개의 신호선만으로 여러 장치를 연결할 수 있는 통신 방식입니다. 사용되는 선: 이름 역할 SDA 데이터(Data) SCL 클럭(Clock) 즉: 아두이노 ↔ SHT30 사이에: 데이터 선(SDA) 타이밍 선(SCL) 2개만 있으면 통신이 가능합니다. 3. 아두이노 연결 방법 (Wiring) Arduino Uno/Nano 기준 연결입니다. SHT30 선 색상 기능 Arduino 적색 (Red) VCC 5V 또는 3.3V 흑색 (Black) GND GND 백색 (White) SDA A4 녹색 (Green) SCL A5 4. 가장 많이 하는 실수: SDA/SCL 반전 현장에서 가장 흔한 문제입니다. 다음 두 선을 헷갈리는 경우가 매우 많습니다. 선 기능 SDA 데이터 SCL 클럭 만약 두 선이 뒤바뀌면: 전원 LED는 정상 아두이노도 정상 코드도 정상 인데 센서만 동작하지 않습니다. 대표 증상 다음과 같은 현상이 발생합니다. SHT30 미검출 또는: nan nan nan 이 계속 출력됩니다. 5. I2...