Contents — find the section you need

Change parameters and verify

Open the panel, then press Run to load Python. You can stop execution and reset parameters. Results are computed on this device. No Python installation is required.

Local execution steps below are optional for reproducing the source results; they are not required for the browser experiment.

The experiment controls are in English.

Open experiment panel in a new tab

Download reproduction source

세 가지 브라우저 실험

위 패널은 열 수지를 실행합니다. LED 부하, 냉방 제거 용량, 평균 실외 온도, 환기, 냉방 설정값을 변경해 보십시오. 습도와 CO₂는 아래 패널에서 별도의 모델로 실행됩니다. Python 설치는 필요하지 않으며, 문서 뒤쪽의 로컬 실행 안내는 선택 사항입니다.

습도 실험 열기

CO₂ 실험 열기

세 실험 모두 원래의 가상 입력값과 자정부터 24시간 동안의 60초 명시적 스텝을 그대로 유지합니다. 조명은 08:00부터 24:00까지 켜져 있습니다. 위쪽 그래프는 초기값과 매시 샘플을 연결한 것이며, 전체 전환 이력이나 극값 이력을 나타내지는 않습니다. 최소/최대 지표는 매분 값을 사용합니다. 열 모델의 매시 실외 샘플은 원래 코드의 값, 즉 표시되는 각 정시 1분 전의 값을 그대로 유지합니다. 아래쪽 막대는 하루 누적값을 나타냅니다. 양의 환기값은 실외로의 순 전달을, 음의 값은 실내로의 순 전달을 의미합니다. A/B 비교, 표, 공통 조건을 이용해 결과를 살펴보십시오.

열 상수: 열용량 12 MJ/K, 외피 UA 450 W/K, 기타 발열 800 W, 초기 온도 22°C, 실외 진폭 6°C(15:00에 최대). 냉방은 설정값 ±0.5°C에서 전환됩니다. LED 전력은 모두 열로 바뀝니다. 냉방 열량 kWh는 전력 소비량이 아닙니다.

습도 상수: 24°C의 300 m³, 초기 상대습도 65%, 제습기는 75%에서 켜지고 65%에서 꺼집니다. 포화를 초과하는 물은 응축수로 별도 집계됩니다. 증산량은 상대습도로부터 예측되는 것이 아니라 미리 지정된 값입니다. 잠열 부하는 전력 소비량이 아닙니다. 실외 공기 또한 24°C로 가정합니다.

CO₂ 상수: 300 m³, 24°C, 101325 Pa, 초기 600 ppm, 주입은 700에서 켜지고 900 ppm에서 꺼집니다. 원래의 단순화 모델은 조명 시간에만 흡수를, 어두운 시간에만 호흡을 적용합니다. 환기 ≥0.03 m³/s, 흡수 ≤0.08 kg/h라는 브라우저 한계는 노출된 범위 내에서 CO₂가 음수가 되지 않도록 유지합니다. 이는 교육용 한계이며 작물, 환기 또는 안전 기준이 아닙니다.

이 모델들은 서로 결합되어 있지 않습니다. 습도/CO₂의 온도는 열 모델에서 오지 않습니다. 이 모델들은 장비 적합성, 실제 시설 성능, 작물 수확량을 예측하지 않습니다. 원본 ZIP과 예상 결과는 변경되지 않았습니다. 각 브라우저 진입점, 커널, 설정 파일을 함께 저장하면 기본값을 로컬에서 재현할 수 있습니다.

thermal: experiment.py · thermal_kernel.py · config.json

moisture: experiment.py · moisture_kernel.py · config.json

co2: experiment.py · co2_kernel.py · config.json

재배실 열 수지 연구실 — LED, 환기, 외피, 냉방을 분리하십시오

결과부터 시작

가상의 24시간 동안 실내 온도는 18.884–24.547°C 범위를 오갑니다. LED는 실내 경계에 192.0 kWh의 열을 더하고, 냉방은 184.333 kWh의 열에너지를 제거합니다. 이는 실제 실내 농장의 측정값이나 동정된 파라미터가 아닙니다. 이는 열의 유입, 유출, 축적이 하나의 일관된 에너지 장부를 사용하는지 확인하기 위한 교육용 입력값입니다.

변경 예상 효과 고정 조건
LED 전력을 절반으로 조명 발열이 절반; 냉방 부하 감소 기상 조건과 외피
열용량을 두 배로 온도 변화가 느려짐 정상 상태 수지
환기 증가 실내외 온도차에 따라 교환 증가 외피 UA
냉방 용량을 0으로 온도 상승을 억제하는 장비가 없음 LED 발열

CEA 개요는 식물-환경-장비 경계를 정의했고, VPD/DLI 연구실은 관찰값으로부터 물리량을 도출했습니다. 이 다음 단계는 장비와 실내 온도를 연결하는 가장 작은 동적 모델을 구축합니다.

Diagram 1 · Use the button to switch views
LED 및 장비 발열, 외피 및 환기 교환, 냉방 제거를 열 저장량과 연결하는 단일 구역 재배실 열 수지

Diagram: Duskcoil. 단일 구역 집중 정수 모델을 나타낸 개략적 계산 경계입니다. 식물, 습도, CO₂, 잠열, 공간적 온도 구배는 제외됩니다.

온도를 갱신하기 전에 열량 속도를 더하십시오

유효 열용량 C [J/K]와 실내 온도 T [°C]를 갖는 완전히 혼합된 하나의 구역을 가정합니다. 모든 열량 속도는 와트(J/s) 단위로 표현합니다.

C\frac{dT}{dt}=Q_{LED}+Q_{other}-K(T-T_{out})-Q_{cool}

K=UA+\rho c_p\dot V [W/K]를 사용합니다. 외피는 하나의 UA 값으로 집약되며, \rho c_p\dot V는 실외 환기로 인한 현열 교환을 나타냅니다. 실외가 더 따뜻할 때는 T-T_{out}이 음수가 되어 이 항이 실내에 열을 더합니다. 이 항의 방향은 온도차를 따르며, 항상 손실을 의미하지는 않습니다.

오클라호마 주립대학교 익스텐션의 온실 가이드 또한 난방 용량을 노출 면적, 단열, 실내외 온도차와 연결하고, 환기가 온도 및 습도 조절에서 맡는 역할을 설명합니다. 미국 에너지부(DOE)의 건물 에너지 모델링 개요는 외피, 조명, HVAC, 스케줄, 기상 조건 간의 상호작용을 포함한 물리 기반 결합을 설명합니다.

교육용 경계를 고정하십시오

물리량 가상 값 이 모델에서의 의미
열용량 C 12 MJ/K 공기와 실내 질량을 합친 가상의 집약값
외피 UA 450 W/K 벽과 천장을 하나의 값으로 합침
환기 \dot V 0.08 m³/s 실외 온도 공기와의 현열 교환
LED 전력 12 kW, 08:00–24:00 결국 이 경계 내부에서 열이 됨
기타 발열 0.8 kW 펌프, 팬, 장비의 일정한 합계
냉방 용량 14 kW ON일 때 제거되는 열량이며, 전기 수요가 아님
실외 온도 21±6°C 15:00에 최대가 되는 사인파

빛은 열로 저하되기 전에 먼저 잎과 표면에 도달합니다. 이 모델은 복사, 대류, 식물 질량을 구분하지 않으므로, 기준 조건은 전기 조명에 실내 경계 내부에서 1.0의 발열 비율을 부여합니다. DOE의 조명 지침 역시 조명을 냉방 부하에 영향을 미치는 실내 발열로 취급합니다. 실제 경계에서는 실외로 빠져나가는 복사, 원격 구동장치, 증발에 사용되는 잠열을 다시 고려해야 합니다.

14 kW의 냉방 값은 압축기 전력이 아니라 열 제거량입니다. COP는 가정하지 않았으므로 이 결과를 그대로 전기 요금으로 환산할 수 없습니다.

1분 간격으로 적분하십시오

명시적 오일러 방법은 상태를 n에서 n+1로 진행시킵니다.

T_{n+1}=T_n+\frac{Q_{net,n}\Delta t}{C}

냉방은 24°C 설정값과 0.5°C 히스테리시스를 사용합니다. 24.5°C 이상에서 ON, 23.5°C 이하에서 OFF입니다. 이는 PID나 MPC가 아니라 최소한의 전환 규칙입니다. 시간 스텝을 크게 하면 전환 시각과 온도 변동폭이 달라지므로, 수치 결과를 신뢰하기 전에 스텝 크기를 비교하십시오.

코드를 실행하고 입력하십시오

실험 ZIP을 압축 해제하고 해당 디렉터리 안에서 실행하십시오. Python 3.10 이상과 표준 라이브러리만 필요하며, 네트워크 접근은 사용되지 않습니다.

python3 experiment.py config.json > result.json
python3 -m unittest -v

config.json, expected.json, 그리고 전체 experiment.py를 참조하십시오. manifest.json은 입력 계약과 SHA-256 해시를 기록합니다.

conductance = envelope_ua + air_density * air_cp * ventilation
net_heat = led_heat + other_heat - conductance * (indoor - outside) - cooling
indoor_next = indoor + net_heat * dt / thermal_capacitance

변경, 오류 발생, 검증

  1. led_power_w를 6000으로 설정합니다. LED 발열은 96 kWh가 되고 냉방 제거량은 줄어야 합니다.
  2. thermal_capacitance_j_per_k를 두 배로 합니다. 단기 온도 변화는 느려지는 반면, kWh 단위의 소스 에너지는 변하지 않습니다.
  3. 실내외를 모두 20°C로 설정하고 모든 발열, 냉방, 환기, UA를 0으로 설정합니다. 한 시간 후에도 실내는 20°C를 유지해야 합니다.
  4. time_step_seconds를 늘려 극값을 비교합니다. 결과가 수치 스텝에 크게 의존할 때 제어 성능을 주장하지 마십시오.
  5. 키를 삭제하거나, 알 수 없는 키를 추가하거나, NaN이나 음의 용량을 입력합니다. 프로그램은 추측하는 대신 거부해야 합니다.

열 개의 테스트는 기준값, 무유량(제로 플럭스) 보존, 1차 해석해, LED 발열에 대한 비례성, 에너지 잔차, 잘못된 형식의 입력을 다룹니다. 이 테스트를 통과했다고 해서 실제 시설이 검증되는 것은 아닙니다.

이 모델이 답할 수 없는 것

  • 잎 온도, 증산, 제습 잠열, 습도 또는 VPD
  • CO₂ 농도와 환기 몰 수지
  • 랙 간 구배, 기류 단락, 센서 배치
  • HVAC 부분 부하 효율, 제상, 팬 또는 펌프 전력
  • 작물 생장, 품질, 수확량, 최적 온도

이후의 습도 확장 모델은 열 에너지 잔차 검증을 유지하면서 수증기 보존과 잠열을 추가해야 합니다. 컨트롤러를 비교하기 전에 어떤 계수가 측정되었고 어떤 출력이 동정에 사용되었는지 명시하십시오.

참고 자료

재배실 습도 수지 연구실 — 상대습도가 아니라 수증기 질량을 보존하십시오

결과부터 시작

24°C로 고정된 가상의 300 m³ 방에서, 24시간 계산 결과는 64.817–75.269% RH, 미리 지정된 식물 증산량 34.8 kg, 환기에 의한 순 제거량 12.793 kg, 제습기 제거량 21.542 kg입니다. 물 수지 잔차는 10^{-12} kg 미만을 유지합니다. 이는 교육용 입력값이며, 측정된 작물 증산량이나 시설 성능이 아닙니다.

Diagram 2 · Use the button to switch views
증산, 환기, 제습, 응축을 저장된 수증기 질량과 연결한 뒤 질량과 온도를 RH로 변환하는 단일 구역 모델

Diagram: Duskcoil. 가상의, 잘 혼합된, 고정 온도 모델이며, RH 자체는 보존되는 상태량으로 적분되지 않습니다.

백분율끼리 더하지 마십시오

상대습도는 현재 온도에서의 포화 상태에 대한 비율입니다. 따라서 동일한 수증기 질량이라도 온도가 변하면 다른 RH를 낼 수 있습니다. 대신 수증기 질량 m_v [kg]를 저장하십시오.

\frac{dm_v}{dt}=\dot m_{plant}-\dot V(\rho_{v,in}-\rho_{v,out})-\dot m_{dehum}-\dot m_{cond}

\rho_v=e/(R_vT_K)와 e=RH\,e_s(T)/100을 사용하며, 포화 관계식은 FAO-56 식 11을 따릅니다. 포화를 초과하는 수증기는 RH를 조용히 잘라내는 대신 명시적으로 응축수로 이전됩니다.

가상 경계

입력값 값 범위
실내/실외 온도 24°C로 고정 동적 열 결합 없음
초기/실외 RH 65% / 60% 24°C에서 밀도로 환산
환기 0.08 m³/s 잘 혼합된 순 교환
수증기원 점등 시 2.0, 소등 시 0.35 kg/h 미리 지정된 값이며 작물 모델이 아님
제습 2.5 kg/h 물 제거량이며 전력이 아님
ON/OFF 임계값 75% / 65% 단순 히스테리시스

펜실베이니아 주립대학교 익스텐션은 응축, 습도, 환기, 공기 순환을 연결된 온실 관리 사안으로 다룹니다. 이 연구실은 질병을 예측하지 않습니다.

수분 질량으로부터 잠열 부하를 읽어내십시오

20°C 부근에서 FAO의 근사값 \lambda=2.45 MJ/kg을 사용하면, 가상의 34.8 kg 수증기원은 상변화 에너지 23.683 kWh에 해당합니다. 이 잠열 부하는 LED 발열이나 현열 냉방과는 구분됩니다. 제거된 물로부터 도출한 잠열 부하는 압축기 전력이 아니며, COP와 제습기의 방열은 제외됩니다.

실행 및 검증

ZIP을 압축 해제하고 Python 3.10 이상으로 실행하십시오.

python3 experiment.py config.json > result.json
python3 -m unittest -v

이 패키지는 config.json, expected.json, experiment.py를 제공합니다. 열 개의 테스트는 RH-밀도 왕복 변환, 밀폐된 방의 보존, 알려진 수증기원, 잠열 변환, 거부되는 입력값을 다룹니다.

환기, 제습, 증산을 하나씩 변경해 보십시오. 수증기 질량을 고정한 채 온도를 변경하여 RH의 변화도 관찰하십시오. 이 모델은 잎 표면 응결, 국소 기류, 반응성 증산, 질병, 생장, CO₂에 대해 답할 수 없습니다. 센서 배치와 증산량 및 수거된 응축수의 독립적인 측정은 실제 동정을 위한 전제 조건입니다.

참고 자료

재배실 CO₂ 수지 연구실 — 환기, 흡수, 호흡, 공급을 추적하십시오

결과부터 시작

24°C, 101325 Pa로 고정된 가상의 300 m³ 방에서 CO₂는 24시간 동안 600–906.209 ppm의 범위를 오갑니다. 미리 지정된 흡수량은 1.28 kg, 호흡에 의한 추가량은 0.16 kg, 공급에 의한 추가량은 2.967 kg, 환기에 의한 순 제거량은 1.756 kg입니다. 몰 수지 잔차는 10^{-10} mol 미만을 유지합니다. 이는 작물이나 장비의 성능 측정값이 아닙니다.

Diagram 3 · Use the button to switch views
CO2 공급 및 호흡, 식물 흡수, 환기를 실내에 저장된 CO2량과 ppm에 연결하는 개략도

Diagram: Duskcoil. 고정된 온도와 압력에서의 잘 혼합된 이상 기체 모델입니다.

ppm이 아니라 물질량을 보존하십시오

실내 총 공기량을 n_{air}=PV/(RT) mol, 저장된 CO₂를 n mol이라 하고, ppm=10^6n/n_{air}로 둡니다.

\frac{dn}{dt}=\dot n_{supply}+\dot n_{resp}-\dot n_{uptake}-\dot n_{vent}

환기는 실내외 농도차와 몰 유량을 따릅니다. 온도, 압력, 부피를 바꾸면 동일한 CO₂ 물질량에 대응하는 ppm이 달라집니다.

오클라호마 주립대학교 익스텐션은 주간 광합성 이용, 야간 호흡, 환기, 보충을 연결합니다. USDA ARS의 계산 역시 온실 부피와 가정된 흡수량을 이용해 고갈을 추정합니다. 이 연구실의 유량은 가상값이며, 수확량 효과나 권장 설정값을 재현하지 않습니다.

실행 및 검증

ZIP을 압축 해제한 뒤 Python 3.10 이상을 사용하십시오.

python3 experiment.py config.json > result.json
python3 -m unittest -v

이 패키지는 config.json, expected.json, experiment.py를 포함합니다. 공급은 700 ppm에서 켜지고 900 ppm에서 꺼집니다. 여덟 개의 테스트는 밀폐된 방의 보존, 알려진 1몰 수증기원, 수지 잔차, 잘못된 입력값을 다룹니다.

환기, 흡수, 공급을 하나씩 0으로 설정해 보십시오. 실제 동정에는 캐노피 기체 교환, 누출, 센서 배치/교정, 공급 유량 측정이 필요합니다. 이 모델은 안전 한계, 작물 반응, 연소 오염물, CO₂ 비용, 결합된 온도/습도 제어를 판단할 수 없습니다.

참고 자료

What to read next

Review the backgroundVPD 및 DLI 연구실 - 습도 및 광량 시계열 검증Continue the seriesCEA 기후 제어 — 온도, 습도, 센서, 응답, 상호결합Explore another aspect of this fieldCEA 아쿠아포닉스 — 어류, 미생물, 식물을 위한 수질 경계