管理プログラム~
プログラムとは、何を、どのステージで、どんな目標に向けて育てるかを定めるテンプレートです。区画にプログラムを設定すると、現在のステージ、目標環境、終了予定日が自動的についてきます。
プログラムは Settings > Programs(/geo/programs)にあります。
プログラムは区画ではない
プログラムが表すのは「トマトを、こういう5つのステージで育てる」ということです。区画が表すのは「3号温室の2棟で、3月2日からそのプログラムを使って育てている」ということです。地図に描くのは区画であり、プログラムはその区画が参照する設定にすぎません。複数の区画がひとつのプログラムを共有できます。
植生専用ではない~
どのプログラムにも種類があります — Vegetation(植生)、Livestock(家畜)、Facility(施設)、Other(その他)。「何を、どのステージで、どんな目標に向けて」という同じ構造が、温室の作物にも、家畜の飼育にも、施設の点検サイクルにも同じように使えます。
種類は一致していなければなりません。 植生用の区画に設定できるのは植生プログラムだけです — 家畜用プログラムを設定すると、それらしく見えるステージと目標が画面に表示されてしまいますが、解釈そのものが根本的に間違っており、しかもエラーにはなりません。
プログラムを作成する~
リスト上部のセレクターから選び、Add を押します。
- Empty program(空のプログラム) — デフォルトです。ほとんどの人はここから自分の対象をひとつ作ります。
- Template(テンプレート) — たたき台となる例です。テンプレートは最初から入っているわけではありません — 追加するまでは何も作られないため、自分が育てていない作物がリストを埋めることはありません。
- Copy of one of mine(自分のプログラムのコピー) — 品種違いのバージョンを作るためのものです。
新しく作られた項目をクリックすると、編集ドロワーが開きます。
組み込み・外部プログラムは編集できない
代わりにコピーしてください。もし元のプログラムが編集できてしまうと、アップグレードや外部データの更新のたびに変更が上書きされ、気づかないうちに元に戻されてしまいます。読み取り専用のプログラムには、保存ボタン自体がありません。
項目~
| 項目 | 意味 |
|---|---|
| Name | リストに表示される名前 |
| Kind | Vegetation(植生)/Livestock(家畜)/Facility(施設)/Other(その他)(上記参照) |
| Applies to | このプログラムが対象とするもの — 作物、種、家畜。リストから選ぶか、新しく入力します |
| Variety | 空欄はその対象のデフォルトを意味します。入力すると品種固有の設定になります |
| Base temperature | 積算温度(GDD)の基準になります。空欄だとステージは暦日で進みます(下記参照) |
| Target curves | 項目にMethod(メソッド)を設定すると、ステージの固定値の代わりにカーブに従うようになります |
ステージ表~
1行が1ステージに対応します。
- ステージ名・キー — キーはコードが使う識別子です(
seedling)。順序とともに保持されるため、編集後もステージが読みやすいままになります。 - Days — そのステージの長さであって、累積の合計ではありません。空欄にできるのは最後のステージだけで、「最後まで」を意味します。
- GDD — 積算温度での長さです。空欄はそのステージが暦日で判定されることを意味します。
- [Targets] — そのステージの目標と資源を開きます。値が設定されているステージには ● が付きます。
目標はデフォルトで折りたたまれている
7つのステージそれぞれに6項目ずつあると、画面には42個もの入力欄が並び、ステージの構造そのものが見えなくなってしまいます。
ステージの目標~
Day temp(昼温度)・Night temp(夜温度)・Humidity(湿度)・CO₂・DLI・VPD。
空欄の項目は保存されません — ゼロと未設定は区別できたままでなければなりません。
表示とアドバイスのため
目標を設定しても、それだけで何かが動き出すわけではありません — それには、その目標に対して動くよう構成された環境制御機能が別途存在している必要があります。目標の役割は、人・AI・(設定されていれば)制御機能が「このステージが目指すべき数値」として同じ数字を参照できるようにすることです。
カーブが設定された項目は、この画面には数値を表示しません。 実際にはカーブに従っている項目のステージ値を表示してしまうと、使われていない数値をあたかも目標であるかのように示すことになります — 画面には代わりに「Follows curve: (カーブ名)」と表示されます。そのカーブが特定の日に実際に何を求めていたか、実測がそこからどれだけ離れていたかは、日誌で昼夜に分けて示されます。
区画ごとに目標をオーバーライドする~
プログラム自体の目標は、新しい区画が最初に持つ値にすぎません — その後は、カーブに従っていないどの目標についても、各区画がプログラムやそれを使う他のすべての区画から独立した独自の値を持てます。
- 編集するのはプログラムではなく区画側です —
/plotsページか AoT Plot ウィジェットから行い、ここからは行いません。 - オーバーライドはその区画1つだけのものです。変更してもプログラムには一切影響せず、同じプログラムを使う他のどの区画にも影響しません。
- フィールドを空欄に戻すことがオーバーライドの取り消し方法です — 区画はプログラム自体の値に戻ります。
- カーブに従う項目は、上で数値が表示されないのと同じ理由で、区画ごとに編集することはやはりできません。
ステージの資源~
灌漑・施肥・その他それぞれにひとつずつFunction(機能)を設定します。
プログラムは機能を起動しない
プログラムはそれらを宣言するだけです。区画モーダルはその宣言を実際の状態(「Irrigation・停止中」)と並べて表示し、機能が動き出すのは人が [Apply] を押したときだけです。灌漑をオンにするということは実際に水が流れるということなので、自動では行われません。
[Apply] は宣言されているものだけを操作します。 何かをオフにすることは決してありません — プログラムは農場が持つ機能の全リストを知らないため、オフにする操作は無関係な機能まで止めてしまいかねないからです。
後で機能が削除された場合、それは「Function is gone」としてそのまま残ります。黙って消してしまうと、そのステージが資源を失った事実が見えなくなってしまいます。
GDDでステージを進める~
暦だけで判断すると、涼しい春の年も暑い夏の年も同じ日にステージが切り替わってしまいます。生育は積算された熱に従うため、次の3つすべてが揃っているときはGDDが使われます。
- プログラムに基準温度が設定されている
- 各ステージにGDDの目標がある(ひとつでも空欄があればGDDは使われません — ひとつのプログラムの中で2つの基準を混在させることはありません)
- その区画が80%以上の温度履歴を持っている
いずれかが欠けている場合、ステージは暦に基づく判定に戻り、区画モーダルはその理由を示します — 「By days・基準温度が未設定」「温度履歴が不足」など。
計算式は日平均です: GDD = max(0, (Tmax + Tmin) / 2 − T_base)。温度は区画内のセンサーから取得され、なければそれを囲むゾーンのセンサーが使われます。
環境制御側のGDDとは別物
env_coordinator機能もGDDを積算しますが、そちらは制御補正のためのもので、異なる計算式を使い、その機能自体が存在していることを前提とします。露地の区画にはコーディネーターがないため、こちらの計算は温度履歴だけを使います。両者の値が異なるのは正常です。
ステージ変更の確認・記録・取り消し~
区画モーダルの [Overview] > Program にあります。
計算上すでに次のステージに移っている場合、Stage change の行が表示されます。日付を確認・修正し、[Confirm] を押します。
確認すると起点が動く
「定植は8月4日に始まった」と確認すると、残りのステージはその日から再計算されます。プログラムはあくまで標準であり、現実は標準どおりには進まないため、確認された事実ひとつひとつが残りの日程を組み直します。日付が編集できるのはそのためです — 実際に観察された日は計算上の日とは違うことがあり、その差がそれ以降のすべてを動かします。
確認済みの変更はStage logに蓄積されます。[Undo last] で直近の1件を取り消せます。
- 記録は決して削除されません — 取り消された行も「undone」と表示されたまま残ります。
- 取り消せるのは直近の1件だけです。任意の記録を取り消せるようにすると、起点をたどれなくなってしまいます。
- 一度も確認されたことのない区画は、以前とまったく同じように振る舞います — 既存の区画に対して遡って承認を求めることはありません。
確認するまで何も進みません
区画は一度でも確認されると、次のステージを確認するまで — 目標環境も含めて — 現在のステージにとどまり続けます。計算上すでに次に進んでいても同じです。その場合、次のステージの行は「waiting for your confirmation」と表示されます。(自動進行が設定された区画は例外です — その判断はすでに済んでいるためです。)
日程を編集する — 延期と前倒し~
プログラムのステージ長はあくまで標準であり、区画はそれを参照するだけです。実際の日程は、区画モーダルの [Settings] > Stage schedule で編集します。
- 編集するのはそのステージが何日続くかです — プログラムと同じ言い方なので、日付の計算をする必要はありません。開始日はその結果として横に表示されます。
- まだ来ていないステージの長さを編集し、[Save] を押します。
- ひとつのステージを変更すると、それより後のステージが動きます。 後の日付を固定したいときは、次のステージを同じ日数だけ短くします。
- 最後のステージには長さがありません(最後まで)— いつ終わるかは、区画を終了することで決まります。
- プログラム自体の長さをそのまま入力し直すと、そのステージは標準に戻ります — 専用の「元に戻す」ボタンはありません。
ステージのガイダンス、ステージの追加と削除~
すべて同じ表の中で行い、プログラム自体には触れません — ここで変更した内容はこの区画だけに適用されます。
- ステージの [Edit] を押すと、長さの入力欄とガイダンス欄の両方が開きます。どちらかを変更して [Save] を押せば、両方とも反映されます。プログラム側に何も書かれていない場合でも書き込めます。空にすればプログラム自体の文章に戻ります。
- そのエディター左下の [Remove stage] は、今作にはないステージを外します(育苗ステージなしでいきなり定植、など)。すでに過ぎたステージは外せません — 確認済みの変更がそれを指しているため、外すとそのとき記録したことが失われてしまいます。まず変更を取り消してください。
- 表の下の [Add stage] は、標準には枠のないステージ(追肥など)のための名前と長さの入力欄を開きます。追加分は最後に入り、位置は長さで調整します。
- 現在のステージのガイダンスは、[Status] タブの軸の下にそのまま表示され、クリックする必要はありません。他のステージのガイダンスはこの表の中にあります。
この日程をプログラムとして登録する~
長さを調整し、ステージを追加し、ガイダンスを書き込んだあと、その知識はその区画の中だけにあります。[Settings] タブの [Program] カード下部にある [Register as programme] を使うと、それを再利用できるようにできます。
- 登録される内容は、区画が実際に従っているリストです — 外したステージは入らず、追加したステージは含まれ、長さは標準ではなく境界と境界の間の実際の期間になります。ガイダンスも一緒に登録されます。
- 目標とその項目は、元のプログラムからそのままコピーされます(区画側で編集されることはありません)。ただし返ってくる内容には、この区画が各目標に対して実際に測定した値がステージごとに含まれます — センサーごとの中央値とp25〜p75です。ステージ長はすでに現場の実績で更新されていましたが、目標はそれまで戻す手段のなかった、その仕組みのもう半分でした。
- AIに
adopt_targetsで登録を頼むと、あいまいさのないものだけが実測の中央値に書き換えられます。2つのセンサーの値が食い違う場合、そのステージに実測がない場合、カーブが設定されている場合、または値がその項目の定義範囲を外れている場合は、元の値がそのまま残り、理由が示されます — どのセンサーを信用するかは、システムではなく人が判断することです。 - 画面上では、[Register] を押すとその真下に比較が展開されます — ステージごとに
target → this plot's median、値が食い違う場合はセンサーごとに1行ずつ表示されます。表示するだけで、見ただけでは何も変更されません。 - 区画がそのプログラムに移されるわけではありません。 登録はコピーです — 進行中の作期の解釈を変えてしまうと、何のために育てていたのかが気づかないうちに変わってしまいます。この区画もそのプログラムに乗せたい場合は、[Settings] で新しいプログラムを選んでください。
- すでに使われている名前には、番号が付け加えられます。
- 書き込んだガイダンスはステージ変更をまたいでも残ります。 過去のステージについての観察が次の遷移で消えてしまうのでは、記録としての価値がありません。
- Stage change の行にある [Postpone] は、変更を表示されている日付に動かします。[Confirm] は「その日に起きた」(事実)を意味し、[Postpone] は「その日に起きる予定」(予定)を意味します。
- すでに過ぎた境界はここでは編集しません — それは [Confirm] と [Undo last] の役目です。
- 何らかの日付を設定すると、その区画は積算温度ではなく日付でステージを判定するようになります。すべてクリアすればGDDに戻ります。
- 終了予定日は、編集された日程に従います。
自動進行~
区画で Advance stages automatically をオンにすると、確認を求めずに変更が記録されるようになります。区画モーダルの [Settings] > Stage schedule にあります。
- 区画ごとに設定されます。 同じプログラムを使う2つの区画でも設定が異なってかまいません — 誰も見ていなくてもステージを進めてよいかどうかは、作物についてではなく、その場所についての事実だからです。
- デフォルトはオフです。 デフォルトでオンになっていたら、誰も何も決めていないのにステージが進んでしまいます。
- 記録される日付は、見た時点ではなくデータから導かれた日付です。3週間後に区画を開いても、同じ日付が記録されます。
- 根拠となる日付がなければ、何も記録されず、判断は人に委ねられたままになります。
- 自動で記録された項目は、ログに「auto」と表示されます。
資源まで自動になるわけではない
ステージが自動で進むようになっても、灌漑や施肥の機能が自動でオンになるわけではありません。それは別の判断であり、[Apply] が必要なのは変わりません。
区画を直接管理する~
/plots はすべての区画を一覧表示します — 地図・サイト・ゾーン・種類で絞り込みでき、すでに終了した区画を含めるかどうかもスイッチで切り替えられます。区画はここでは作成できません — 区画はデザインツールのPlotモードで描くことによってのみ生まれます。このページは、すでに存在する区画を管理するためのものです。
区画をクリックすると、このページがプログラム用に使うのと同じ種類のドロワーが開きます — 各ステージの長さ、ガイダンス、その区画の独自の目標がすべてひとつのステージトラックの中にまとまっています。[Save] を押すまでは、ドロワーから何も送信されません。
AoT Plot ウィジェットは、このページに来なくてもダッシュボードから区画をひとつ見続けられるよう、まったく同じドロワーを開きます。地図ウィジェットの区画ポップアップは同じ運用上の事実を示しますが、そのどれも編集はしません。
関連~
- Design Tool(デザインツール) — 区画を描く場所
- Map Widget(地図ウィジェット) — 区画を見て操作する場所
- AoT Plot Widget(AoT_plot ウィジェット) — このページと同じ編集ドロワーを持つ、区画をひとつ見続けるためのダッシュボードウィジェット
- Facility Management(施設管理) — 図形を描かず、棟そのものが位置になる区画