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

Drei Browser-Experimente

Das Panel oben führt die Wärmebilanz aus. Ändern Sie LED-Last, Kühlkapazität, mittlere Außentemperatur, Belüftung und Kühl-Sollwert. Feuchtigkeit und CO₂ laufen als separate Modelle in den Panels unten. Es wird keine Python-Installation benötigt; die lokalen Anweisungen später im Artikel sind optional.

Feuchtigkeitsexperiment öffnen

CO₂-Experiment öffnen

Alle drei behalten die ursprünglichen synthetischen Eingaben und expliziten 60-Sekunden-Schritte über 24 Stunden ab Mitternacht bei. Die Beleuchtung bleibt von 08:00 bis 24:00 Uhr eingeschaltet. Die oberen Diagramme verbinden Anfangs- und Stundenwerte, nicht die vollständige Schalt- oder Extremwerthistorie; Minimum-/Maximum-Kennzahlen verwenden jede Minute. Die stündlichen Außenwerte des Thermikmodells behalten den Wert des ursprünglichen Codes eine Minute vor jeder angezeigten Stunde bei. Die unteren Balken zeigen täglich integrierte Größen. Positive Belüftung bedeutet Nettotransfer nach außen; negativ bedeutet nach innen. Verwenden Sie den A/B-Vergleich, die Tabelle und gemeinsame Bedingungen, um Ergebnisse zu prüfen.

Thermische Konstanten: 12 MJ/K Wärmekapazität, 450 W/K Gebäudehülle (UA), 800 W sonstige Wärme, anfänglich 22 °C, Außenamplitude 6 °C mit Spitzenwert um 15:00 Uhr. Die Kühlung schaltet bei Sollwert ±0,5 °C. Die gesamte LED-Leistung wird zu Wärme. Die thermische kWh der Kühlung ist kein elektrischer Verbrauch.

Feuchtigkeitskonstanten: 300 m³ bei 24 °C, anfänglich 65 % RH, Entfeuchter an bei 75 % und aus bei 65 %. Überschüssiges Wasser oberhalb der Sättigung wird separat als Kondensation gezählt. Transpiration ist vorgegeben und nicht aus der relativen Luftfeuchtigkeit vorhergesagt. Die latente Last ist kein elektrischer Verbrauch. Es wird auch angenommen, dass die Außenluft 24 °C hat.

CO₂-Konstanten: 300 m³, 24 °C, 101325 Pa, anfänglich 600 ppm, Injektion an bei 700 und aus bei 900 ppm. Die ursprüngliche Vereinfachung verwendet Aufnahme nur bei Licht und Atmung nur bei Dunkelheit. Browser-Grenzwerte von Belüftung ≥0,03 m³/s und Aufnahme ≤0,08 kg/h halten CO₂ innerhalb der freigegebenen Bereiche nichtnegativ. Dies sind Lehrgrenzwerte, keine Kultur-, Belüftungs- oder Sicherheitsstandards.

Diese Modelle sind nicht gekoppelt: Die Temperatur für Feuchtigkeit/CO₂ stammt nicht aus dem Wärmemodell. Sie sagen weder Geräteeignung, reale Anlagenleistung noch Kulturertrag voraus. Die ursprünglichen ZIP-Dateien und erwarteten Ergebnisse sind unverändert. Speichern Sie jeden Browser-Einstiegspunkt, Kernel und die Konfiguration zusammen, um die Standardwerte lokal zu reproduzieren.

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

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

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

Wärmebilanz-Labor für den Anbauraum — LEDs, Belüftung, Gebäudehülle und Kühlung getrennt betrachten

Beginnen Sie mit dem Ergebnis

Über die synthetischen 24 Stunden bewegt sich die Raumtemperatur zwischen 18,884–24,547 °C. LEDs fügen der Raumgrenze 192,0 kWh Wärme hinzu, und die Kühlung entfernt 184,333 kWh thermische Energie. Dies sind keine Messungen oder identifizierten Parameter einer realen Indoor-Farm. Es sind Lehreingaben, um zu prüfen, ob eintretende, austretende und akkumulierte Wärme eine konsistente Energiebilanz verwendet.

Änderung Erwarteter Effekt Konstant gehalten
LED-Leistung halbieren Halbe Beleuchtungswärme; geringere Kühllast Wetter und Gebäudehülle
Kapazität verdoppeln Langsamere Temperaturänderung Stationäre Bilanz
Belüftung erhöhen Mehr Austausch entsprechend der Innen-Außen-Differenz Gebäudehülle UA
Kühlkapazität auf null setzen Keine gerätebedingte Unterdrückung des Anstiegs LED-Wärme

Die CEA-Übersicht definierte die Grenze zwischen Pflanze, Umgebung und Ausrüstung, und das VPD/DLI-Labor leitete Größen aus Beobachtungen ab. Dieser nächste Schritt baut das kleinstmögliche dynamische Modell auf, das Ausrüstung mit der Raumtemperatur verbindet.

Diagram 1 · Use the button to switch views
Eine Einzonen-Wärmebilanz für einen Anbauraum, die LED- und Gerätegewinne, Gebäudehülle und Belüftungsaustausch sowie Kühlentzug mit der thermischen Speicherung verbindet

Diagramm: Duskcoil. Eine schematische Berechnungsgrenze für ein gelumptes Einzonenmodell. Pflanzen, Luftfeuchtigkeit, CO₂, latente Wärme und räumliche Temperaturgradienten sind ausgeschlossen.

Wärmeraten hinzufügen, bevor die Temperatur aktualisiert wird

Nehmen Sie eine perfekt durchmischte Zone mit effektiver thermischer Kapazität C [J/K] und Raumtemperatur T [°C] an. Drücken Sie jede Wärmerate in Watt (J/s) aus:

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

Verwenden Sie K=UA+\rho c_p\dot V [W/K]. Die Gebäudehülle wird zu UA zusammengefasst, während \rho c_p\dot V den sensiblen Austausch durch Außenluftbelüftung darstellt. Wenn es draußen wärmer ist, ist T-T_{out} negativ, und dieser Term fügt drinnen Wärme hinzu. Seine Richtung folgt der Temperaturdifferenz; er ist nicht immer ein Verlust.

Der Gewächshausleitfaden der Oklahoma State University Extension verbindet ebenfalls die Heizkapazität mit exponierter Fläche, Isolierung und der Innen-Außen-Temperaturdifferenz und erklärt die Rolle der Belüftung bei der Temperatur- und Feuchtigkeitsregelung. Die Übersicht des U.S. DOE zur Gebäudeenergiemodellierung beschreibt physikbasierte Kombinationen aus Gebäudehülle, Beleuchtung, HLK, Zeitplänen und Wetter, einschließlich ihrer Wechselwirkungen.

Die Lehrgrenze festlegen

Größe Synthetischer Wert Bedeutung in diesem Modell
Kapazität C 12 MJ/K Fiktives Aggregat aus Luft und Innenraummasse
Gebäudehülle UA 450 W/K Wände und Decke zu einem Wert zusammengefasst
Belüftung \dot V 0,08 m³/s Sensibler Austausch mit Luft auf Außentemperatur
LED-Leistung 12 kW, 08:00–24:00 Uhr Wird innerhalb dieser Grenze schließlich zu Wärme
Sonstige Gewinne 0,8 kW Konstantes Aggregat aus Pumpen, Ventilatoren und Geräten
Kühlkapazität 14 kW Entzogene Wärme bei EIN, nicht elektrischer Bedarf
Außentemperatur 21±6 °C Sinuskurve mit Spitzenwert um 15:00 Uhr

Licht erreicht zunächst Blätter und Oberflächen, bevor es zu Wärme abgebaut wird. Da dieses Modell Strahlung, Konvektion oder Pflanzenmasse nicht trennt, weist die Baseline elektrischer Beleuchtung innerhalb der Raumgrenze einen Wärmeanteil von 1,0 zu. Die DOE-Beleuchtungsrichtlinie behandelt Beleuchtung ebenfalls als internen Wärmegewinn, der die Kühllast beeinflusst. Eine reale Grenze muss aus dem Raum austretende Strahlung, entfernte Treiber und für die Verdunstung genutzte latente Wärme neu berücksichtigen.

Der Wert 14 kW für die Kühlung ist thermischer Entzug, nicht Kompressorstrom. Es wird kein COP angenommen, sodass dieses Ergebnis nicht direkt in eine Stromrechnung umgerechnet werden kann.

In Ein-Minuten-Schritten integrieren

Das explizite Euler-Verfahren führt den Zustand von n nach n+1 weiter:

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

Die Kühlung verwendet einen Sollwert von 24 °C und eine Hysterese von 0,5 °C: EIN bei oder über 24,5 °C und AUS bei oder unter 23,5 °C. Dies ist eine minimale Schaltregel, kein PID oder MPC. Eine größere Schrittweite verändert Schaltzeiten und Temperaturausschläge; vergleichen Sie daher Schrittweiten, bevor Sie dem numerischen Ergebnis vertrauen.

Führen Sie den Code aus und prüfen Sie die Eingabe

Entpacken Sie das Experiment-ZIP und führen Sie es in diesem Verzeichnis aus. Es benötigt Python 3.10+ und nur die Standardbibliothek; es wird kein Netzwerkzugriff verwendet.

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

Siehe config.json, expected.json und die vollständige experiment.py. manifest.json erfasst den Eingabevertrag und die SHA-256-Hashes.

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

Ändern, brechen und überprüfen

  1. Setzen Sie led_power_w auf 6000. Die LED-Wärme wird zu 96 kWh, und der Kühlentzug sollte sinken.
  2. Verdoppeln Sie thermal_capacitance_j_per_k. Die kurzfristige Temperaturänderung verlangsamt sich, während die Quellenergie in kWh unverändert bleibt.
  3. Setzen Sie Innen- und Außentemperatur auf 20 °C und alle Gewinne, Kühlung, Belüftung und UA auf null. Der Raum muss nach einer Stunde bei 20 °C bleiben.
  4. Erhöhen Sie time_step_seconds und vergleichen Sie die Extremwerte. Beanspruchen Sie keine Regelleistung, wenn Ergebnisse stark vom numerischen Schritt abhängen.
  5. Löschen Sie einen Schlüssel, fügen Sie einen unbekannten Schlüssel hinzu, oder geben Sie NaN oder eine negative Kapazität ein. Das Programm sollte ablehnen, anstatt zu raten.

Die zehn Tests decken die Baseline, Nullfluss-Erhaltung, eine analytische Lösung erster Ordnung, proportionale LED-Heizung, Energie-Restwert und fehlerhafte Eingaben ab. Ihr Bestehen validiert keine Anlage.

Was dieses Modell nicht beantworten kann

  • Blatttemperatur, Transpiration, Entfeuchtungs-Latentwärme, Luftfeuchtigkeit oder VPD
  • CO₂-Konzentration und Belüftungsmassenbilanz
  • Gefälle zwischen Regalen, Luftstrom-Kurzschlüsse oder Sensorplatzierung
  • HLK-Teillasteffizienz, Abtauung, Ventilator- oder Pumpenstrom
  • Kulturwachstum, Qualität, Ertrag oder Optimaltemperatur

Eine spätere Feuchtigkeitserweiterung sollte die Wasserdampf-Erhaltung und latente Wärme hinzufügen, während die thermische Energie-Restwertprüfung erhalten bleibt. Bevor Sie Regler vergleichen, legen Sie fest, welche Koeffizienten gemessen werden und welche Ausgaben zur Identifikation verwendet werden.

Referenzen

Feuchtigkeitsbilanz-Labor für den Anbauraum — Dampfmasse erhalten, nicht relative Luftfeuchtigkeit

Beginnen Sie mit dem Ergebnis

Für einen synthetischen, fest auf 24 °C gehaltenen 300-m³-Raum ergibt die 24-Stunden-Berechnung 64,817–75,269 % RH, 34,8 kg vorgegebenen Pflanzendampf, 12,793 kg Netto-Entzug durch Belüftung und 21,542 kg Entzug durch den Entfeuchter. Der Wasserbilanz-Restwert bleibt unter 10^{-12} kg. Dies sind Lehreingaben, keine gemessene Kulturtranspiration oder Anlagenleistung.

Diagram 2 · Use the button to switch views
Ein Einzonenmodell, das Transpiration, Belüftung, Entfeuchtung und Kondensation mit gespeicherter Dampfmasse verbindet und dann Masse und Temperatur in relative Luftfeuchtigkeit umrechnet

Diagramm: Duskcoil. Synthetisch, gut durchmischt und bei fester Temperatur; die relative Luftfeuchtigkeit selbst wird nicht als erhaltener Zustand integriert.

Prozentsätze nicht addieren

Die relative Luftfeuchtigkeit ist ein Verhältnis zur Sättigung bei der aktuellen Temperatur. Dieselbe Dampfmasse kann daher bei Temperaturänderung eine andere relative Luftfeuchtigkeit ergeben. Speichern Sie stattdessen die Dampfmasse m_v [kg]:

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

Verwenden Sie \rho_v=e/(R_vT_K) und e=RH\,e_s(T)/100, mit der Sättigungsbeziehung aus FAO-56, Gleichung 11. Dampf oberhalb der Sättigung wird explizit als Kondensat übertragen, anstatt die relative Luftfeuchtigkeit stillschweigend zu begrenzen.

Synthetische Grenze

Eingabe Wert Umfang
Innen-/Außentemperatur fest 24 °C Keine dynamische thermische Kopplung
Anfangs-/Außen-RH 65 % / 60 % Bei 24 °C in Dichte umgerechnet
Belüftung 0,08 m³/s Gut durchmischter Nettoaustausch
Dampfquelle hell 2,0, dunkel 0,35 kg/h Vorgegeben, kein Kulturmodell
Entfeuchtung 2,5 kg/h Wasserentzug, kein Strom
EIN-/AUS-Schwellenwerte 75 % / 65 % Einfache Hysterese

Penn State Extension behandelt Kondensation, Luftfeuchtigkeit, Belüftung und Luftzirkulation als verbundene Anliegen des Gewächshausmanagements. Dieses Labor sagt keine Krankheiten voraus.

Latente Last aus der Wassermasse ablesen

Mit der FAO-Näherung \lambda=2,45 MJ/kg nahe 20 °C entspricht die synthetische Quelle von 34,8 kg 23,683 kWh Phasenwechselenergie. Diese latente Last unterscheidet sich von LED-Wärme und sensibler Kühlung. Aus entzogenem Wasser abgeleitete latente Last ist kein Kompressorstrom; COP und Wärmeabgabe des Entfeuchters sind ausgeschlossen.

Ausführen und überprüfen

Entpacken Sie das ZIP und führen Sie es mit Python 3.10+ aus:

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

Das Paket stellt config.json, expected.json und experiment.py bereit. Zehn Tests decken RH-Dichte-Rückumrechnungen, Erhaltung im geschlossenen Raum, eine bekannte Quelle, latente Umrechnung und abgelehnte Eingaben ab.

Ändern Sie Belüftung, Entfeuchtung und Transpiration einzeln. Ändern Sie auch die Temperatur bei fester Dampfmasse und beobachten Sie die Änderung der relativen Luftfeuchtigkeit. Das Modell kann Blattkondensation, lokalen Luftstrom, reaktive Transpiration, Krankheiten, Wachstum oder CO₂ nicht beantworten. Sensorplatzierung sowie unabhängige Messungen von Transpiration und aufgefangenem Kondensat sind Voraussetzungen für eine reale Identifikation.

Referenzen

CO₂-Bilanz-Labor für den Anbauraum — Belüftung, Aufnahme, Atmung und Zufuhr verfolgen

Beginnen Sie mit dem Ergebnis

Für einen synthetischen, fest auf 24 °C und 101325 Pa gehaltenen 300-m³-Raum bewegt sich CO₂ über 24 Stunden zwischen 600–906,209 ppm. Die vorgegebene Aufnahme beträgt 1,28 kg, die Atmung fügt 0,16 kg hinzu, die Zufuhr fügt 2,967 kg hinzu, und die Belüftung entfernt 1,756 kg netto. Der Restwert der Stoffmengenbilanz bleibt unter 10^{-10} mol. Dies sind keine Messungen der Kultur- oder Anlagenleistung.

Diagram 3 · Use the button to switch views
Ein Schema, das CO2-Zufuhr und Atmung, Pflanzenaufnahme und Belüftung mit der gespeicherten Innenraum-CO2-Menge und ppm verbindet

Diagramm: Duskcoil. Ein gut durchmischtes Idealgasmodell bei fester Temperatur und festem Druck.

Menge erhalten, nicht ppm

Sei die gesamte Raumluft n_{air}=PV/(RT) mol und das gespeicherte CO₂ n mol, mit ppm=10^6n/n_{air}:

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

Die Belüftung folgt der Innen-Außen-Konzentrationsdifferenz und dem molaren Luftstrom. Eine Änderung von Temperatur, Druck oder Volumen ändert die ppm, die derselben CO₂-Menge entsprechen.

Die Oklahoma State University Extension verbindet photosynthetische Nutzung am Tag, nächtliche Atmung, Belüftung und Zufuhr. Eine USDA-ARS-Berechnung verwendet ebenfalls Gewächshausvolumen und angenommene Aufnahme, um den Rückgang abzuschätzen. Die Flüsse dieses Labors sind synthetisch und bilden weder Ertragseffekte noch empfohlene Einstellungen ab.

Ausführen und überprüfen

Entpacken Sie das ZIP, dann verwenden Sie Python 3.10+:

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

Das Paket enthält config.json, expected.json und experiment.py. Die Zufuhr schaltet bei 700 ppm ein und bei 900 ppm aus. Acht Tests decken die Erhaltung im geschlossenen Raum, eine bekannte Ein-Mol-Quelle, den Bilanzrestwert und ungültige Eingaben ab.

Setzen Sie Belüftung, Aufnahme und Zufuhr einzeln auf null. Eine reale Identifikation erfordert den Gasaustausch des Blattdachs, Leckagen, Sensorplatzierung/-kalibrierung und Messungen des Zufuhrstroms. Dieses Modell kann keine Sicherheitsgrenzen, Kulturreaktion, Verbrennungsschadstoffe, CO₂-Kosten oder gekoppelte Temperatur-/Feuchtigkeitsregelung bestimmen.

Referenzen

What to read next

Review the backgroundVPD- und DLI-Labor – Überprüfung der Feuchtigkeits- und LichtzeitreihenContinue the seriesCEA-Klimasteuerung – Temperatur, Feuchtigkeit, Sensoren, Reaktion und KopplungExplore another aspect of this fieldCEA-Aquaponik – Wasserqualitätsgrenzen für Fische, Mikroben und Pflanzen