データファイル書式について

メッシュ栽培管理ソフトが使用するデータファイル

メッシュ栽培管理ソフト:PFUManager が使用しているデータファイルは, その目的に応じて複数の形式のファイルがあります。いずれも,テキストファイルですので,テキストエディタやWindowsメモ帳(notepad)などで,簡単に内容を表示・確認できます。

作業管理ファイル
次の作業ファイルで記述されている個々の「作業」を,一連の作業として管理するためのファイルです。
通常,同一の圃場に対して実施される一連の栽培管理作業を記述するために用います。このファイルで管理される主要な情報(作業名,作業者,作業時間など)はそのまま履歴情報として使用されることになります。
ファイル名はM({作業管理名}).csvの形式で,先頭が必ず'M'で始まり'()'内に作業管理名が入ります。拡張子は".csv"となります。
作業ファイル
ある圃場において実施される一つの作業を記述するためのファイルです。作業全般の情報を記録するヘッダ部分と,ユーザ定義による作業固有データ,地点データ(位置情報と属性情報から成ります)が,この順に記述・保管されます。本ソフトの中核となるデータファイルであり,この作業が実施された圃場,さらにはその圃場が属する地域をそれぞれ記述した圃場ファイル,地域ファイルへの参照情報(圃場ID,圃場名,地域名)もヘッダ内に記述されています。
ファイル名はW({作業名}).csvの形式で,先頭が必ず'W'で始まり'()'内に作業名が入ります。拡張子は".csv"となります。
地域ファイル
複数の圃場から構成される「地域」を記述(定義)しているファイルです。地域の名称(地域ファイル名の一部として利用されます),地域の基準点(緯度経度)・方位,所属する圃場のリストなどが記述・保管されます。
ファイル名はA({地域名}).csvの形式で,先頭が必ず'A'で始まり'()'内に地域名が入ります。拡張子は".csv"となります。
圃場ファイル
作業が実施される場となる「圃場」を記述(定義)しているファイルです。圃場のIDコードや名称(圃場ファイル名の一部として利用されます),圃場の基準点(緯度経度)・方位,圃場形状を表す圃場区画外周頂点座標(緯度経度および基準点に対するローカルXY座標)のリストなどが記述・保管されます。
ファイル名はF({圃場ID+圃場名}).csvの形式で,先頭が必ず'F'で始まり'()'内に圃場IDと圃場名をつないだ文字列が入ります。拡張子は".csv"となります。

作業管理ファイルの書式

 テキストファイルで,各行に以下の情報が記述されています。

[ 作業管理ファイルフォーマット ]
データ名 仕様(意味,目的,書式など)
1 ファイル識別子 "###PFUManager!FarmingFile###"が行頭からこの通りに記述されている必要があります。
上記において二重引用符は含まれません。半角文字で大文字小文字は区別されます。
2 作業管理情報名
 
この一連の作業を識別するための名称(文字列)を指定します。
通常,圃場毎の作付けに応じて一作ごとに作成すると思われますので,対象となる圃場名や年度,作型名などを連結した名称にすればよいでしょう。
eg. 「2005年45番圃場水稲作」,「A圃場小麦」,「2006年冬作」など。
3 情報管理者名 この作業管理情報を管理する担当者名(文字列)を指定します。
4 圃場名 この作業管理情報が対象とする圃場名(圃場ファイル名の一部として使用されています)を指定します。
6行目以降で登録される作業ファイルは,この圃場名で指定される圃場での作業でなければ登録できません(作業対象圃場としてこの圃場名が指定されていること)。
5 備考(コメント) この作業管理情報についてのコメント(文字列)を任意に指定します。
6 作業名
(以下繰り返し)
1番目の作業名(この作業管理情報に登録する最初の作業)
以下,登録する作業名(作業ファイル名の一部として使用されています)を順に指定します。
7 作業名2 2番目の作業名
8 作業名3 3番目の作業名
 ・ (以下,必要な件数だけ繰り返し)
 ・  ・

 作業管理ファイルを読み込むと,6行目以降に指定された作業名の作業ファイルが順次読み込まれます。この際,各作業の圃場名が4行目で指定されている圃場と一致しているかチェックされます。異なる圃場名を持つ作業ファイルは読み込まれません(読み込みに失敗します)。

作業ファイルの書式

 テキストファイルで,各行に以下の情報が記述されています。

[ 作業ファイルフォーマット ]
データ名 仕様(意味,目的,書式など)
1 ファイル識別子 "###PFUManager!WorkFile###"が行頭からこの通りに記述されている必要があります。
上記において二重引用符は含まれません。半角文字で大文字小文字は区別されます。
2 作業名
 
この作業を識別するための名称(文字列)を指定します。
通常,ある圃場における一つ一つの作業毎に作成するので,対象となる作業名の他に圃場名や日付などを連結した名称にすればよいでしょう。
eg. 「20050425耕起A圃場」,「20060718生育量測定B-4圃場」・・・など。
3 作業者名 この作業を実施・担当したオペレータ名など(文字列)を指定します。
4 作業開始日時 作業を開始した日時(日本標準時)を"yyyy/MM/dd HH:mm:ss"形式で指定します。
eg. 2004/03/10 13:25:04
5 作業終了日時 作業を終了した日時を,開始日時と同様に指定します。
6 備考(コメント) この作業についてのコメント(文字列)を任意に指定します。
7 使用機材名 使用した機械名(文字列)を指定します。
現在は,任意の文字列を指定できます(PFUManagerで使用していないため)が,将来的には機械名として使用するために予約されている項目です。
8 地域名 作業が行われた圃場が所属する地域名(文字列)を指定します。
9 圃場名 作業が行われた圃場名(文字列)を指定します。
10 ユーザ定義データ
ブロック識別子
"[CustomData]"(固定,但しユーザ定義カスタムデータがある場合のみ)

ユーザ定義カスタムデータブロックの開始を識別するための固定文字列です。この通りに指定する必要があります(二重引用符は含みません)。
11 カスタムデータ1 1番目のユーザ定義カスタムデータを指定します。

カスタムデータは,1行内に,半角カンマで区切って,"データ名(文字列),単位(文字列),データ型(文字列),データ値(数値または文字列(データ型による)),データコメント(任意の文字列),履歴使用フラグ(true または false のいずれか)"の形式で指定します。

データ型(文字列)には,"text", "integer", "real", "date", "time" のいずれかを指定します。
履歴使用フラグが true のユーザ定義カスタムデータは,作業履歴データとして使用されます。

eg. メッシュ平均(施肥量),g/m2,real,25.4358,圃場全メッシュの平均施肥量,true
12 カスタムデータ2 2番目のユーザ定義カスタムデータ
 ・ (以下,必要な件数だけ繰り返し)
 ・  ・
10+N カスタムデータN N番目のユーザ定義カスタムデータ
M=10
or
10+N+1
地点データ
ブロック識別子
”[PointData]"(固定)

地点データブロックの開始を識別するための固定文字列です。この通りに指定する必要があります(二重引用符は含みません)。
M+1 地点データ1 地点毎の詳細データ(位置情報や属性データ値など)を,半角カンマで区切って,1地点1行で,以下順次指定します。
行内の項目の並び(書式等)については,次表に記載しています。
M+2 地点データ2 同上
 ・ (以下,必要な件数だけ繰り返し)
 ・  

  * ユーザ定義カスタムデータブロックは任意です。存在しない場合は,10行目から地点データブロック("[PointData]"以下)が始まります。

 

 地点データブロックでは,地点毎に一行ずつ使用して,地点データを指定・保管しています。

 地点データ毎(各行)の行内項目書式は下表の通りとなっています。各項目は','(半角カンマ)で区切ります(CSV形式)。

[ 地点データ行内項目フォーマット ]
データ名 仕様(意味,目的,書式など)
1 地点ID 地点番号(ID)を,0から始まる0以上の整数値で指定します。
2 前地点ID この地点の一つ前の地点IDを指定します。作業順の指定に使用する予定ですが,現行版では使用していません。
3 次地点ID この地点の次の地点IDを指定します。作業順の指定に使用する予定ですが,現行版では使用していません。
4 使用 この地点データを使用するかしないかを,-1(使用),0(不使用)のいずれか(整数値)で指定します。
5 属性型番号 地点属性データタイプ定義識別番号(整数値)を指定します。
6 日時 この地点データの取得または作成日時(JST)を "yyyy/MM/dd HH:mm:ss" 形式で指定します。
7 UTC時刻 この地点データをGPSから取得した際のUTC時刻を "yyyyMMdd.HHmmss"の実数形式文字列(実数値表記)で指定します。
8 GPS取得 この地点データを取得した時のGPS受信状況(整数値)を,1(取得),0(エラー)で指定します。
9 GPS衛星数 この地点データを取得した時のGPS受信衛星数(整数値)を指定します。
10 緯度 地点データの緯度(十進数小数点形式の実数値)。 eg. 34.3569713485463
11 経度 地点データの経度(十進数小数点形式の実数値)。 eg. 133.5890120424523
12 標高 地点データの標高(同上,メートル単位)。未受信時は0で可。
13 ジオイド高 GPS受信したジオイド高。未受信時は0で可。
14 X 座標値 ローカル座標系における地点の X 座標値(実数値,メートル単位)。
15 Y 座標値 ローカル座標系における地点の Y 座標値(実数値,メートル単位)。
16 速度 X ローカル座標系における X 方向移動速度成分値(実数値,メートル毎秒[m/s]単位)。
17 速度 Y ローカル座標系における Y 方向移動速度成分値(実数値,メートル毎秒[m/s]単位)。
18 方位 この地点における進行方位。Y+軸方向を基準(0°)とし,時計回りに正とする実数値で指定します。
19 属性値1 1番目の地点属性値(実数値)。数値の意味は,属性データタイプ定義(属性型番号)に従って決まります。
20 属性値2 2番目の地点属性値(実数値)。使用しない場合は 0 を指定します。
21 属性値3 3 〃
22 属性値4 4 〃
23 属性値5 5 〃
24 属性値6 # 6 〃
25 属性値7 # 7 〃
26 属性値8 # 8 〃
27 属性値9 # 9 〃
28 属性値10 # 10 〃
29 属性値11 # 11 〃
30 属性値12 # 12 〃
31 属性値13 # 13 〃
32 属性値14 # 14 〃
33 属性値15 # 15 〃
34 属性値16 # 16 〃
35 アラーム この地点において警報機能を使用する(1)か否か(0)を整数値で指定します。
36 作業半径 この地点での作業半径(実数値)。使用しない場合は 0 を指定します。
37 作業幅 この地点での作業幅(実数値)。使用しない場合は 0 を指定します。

  * 通常,未使用の項目には 0 (ゼロ)を指定しておきます(フィラー)。

  # 属性値が5個の場合は,属性値6〜16が存在しません。

地域ファイルの書式

 テキストファイルで,各行に以下の情報が記述されています。

[ 地域ファイルフォーマット ]
データ名 仕様(意味,目的,書式など)
1 ファイル識別子 "###PFUManager!AreaFile###"が行頭からこの通りに記述されている必要があります。
上記において二重引用符は含まれません。半角文字で大文字小文字は区別されます。
2 地域名 この地域ファイルで記述する地域の名称(地域を識別するための文字列)を指定します。
この地域名が地域ファイル名の一部としても使用されます。
3 基準方位 対象地域を2次元ローカル座標系に投影変換する際の,北緯方向に対するY+軸の方位角(時計回りに正)を指定します。
4 基準点緯度 対象地域を2次元ローカル座標系に投影変換する際の基準点(ローカル座標原点)の緯度(北緯)を指定します。
5 基準点経度 対象地域を2次元ローカル座標系に投影変換する際の基準点(ローカル座標原点)の経度(東経)を指定します。
6 圃場1
(以下繰り返し)
1番目の圃場
地域に含まれる圃場のIDと圃場名を,半角カンマで区切って指定します("圃場ID,圃場名"の形式)。
7 圃場2 2番目の圃場
8 圃場3 3番目の圃場
 ・ (以下,必要な圃場数だけ繰り返し。最低一つは圃場が含まれている必要があります)
 ・  ・

圃場ファイルの書式

 テキストファイルで,各行に以下の情報が記述されています。

[ 圃場ファイルフォーマット ]
データ名 仕様(意味,目的,書式など)
1 ファイル識別子 "###PFUManager!FieldFile###"が行頭からこの通りに記述されている必要があります。
上記において二重引用符は含まれません。半角文字で大文字小文字は区別されます。
2 圃場ID番号 0以上の整数値で指定する圃場ID番号を指定します。
この番号が圃場ファイル名の一部としても使用されます("ID+圃場名"の形式)。
3 圃場名 この圃場ファイルで記述する圃場の名称(圃場を識別するための文字列)を指定します。
4 圃場所有者名 圃場の所有者・耕作者名等(文字列)を指定します。
5 備考(コメント) この圃場についての備考(メモ・コメントなど任意の文字列)を指定します。
6 基準方位 圃場を2次元ローカル座標系に投影変換する際の,北緯方向に対するY+軸の方位角(時計回りに正)を指定します。
7 基準点緯度 圃場を2次元ローカル座標系に投影変換する際の基準点(ローカル座標原点)の緯度(北緯)を指定します。
8 基準点経度 圃場を2次元ローカル座標系に投影変換する際の基準点(ローカル座標原点)の経度(東経)を指定します。
9 メッシュサイズ
(X軸方向)
X軸方向のメッシュサイズをメートル単位で指定します。
10 メッシュサイズ
(Y軸方向)
Y軸方向のメッシュサイズをメートル単位で指定します。
11 メッシュオフセット
(X軸方向)
X軸方向のメッシュオフセットをメートル単位で指定します。
ローカル座標系における原点(圃場基準点)とメッシュ基準点(最初のメッシュの原点(左下隅))のX軸方向のズレ(オフセット)で,通常は0を指定します(オフセットなし)。
12 メッシュオフセット
(Y軸方向)
Y軸方向のメッシュオフセットをメートル単位で指定します。
ローカル座標系における原点(圃場基準点)とメッシュ基準点(最初のメッシュの原点(左下隅))のY軸方向のズレ(オフセット)で,通常は0を指定します(オフセットなし)。
13 地域名 この圃場が所属する地域名(文字列)を指定します。
14 区画頂点座標1 圃場区画を形成する外周頂点の座標を順に指定します。N角形の区画であればN個の頂点座標が必要となります。
頂点座標は緯度経度値で,半角カンマで区切って,"緯度値,経度値,標高値"の形式で指定します(標高値*は0で構いません)。
15 区画頂点座標2 同上
16 区画頂点座標3 同上
 ・ (以下,必要な区画頂点数だけ繰り返し。最低3つは頂点座標が含まれている必要があります)
 ・  ・

  * 頂点座標では「標高値(メートル単位)」を記述できるようになっていますが,現行のPFUManagerでは使用されていません。


(C) 2007 DSS(LAIS).WeNARC