(57)【要約】【課題】記録媒体へのデータの書き込み動作中に書き込み動作が終了した場合でも既に書き込まれたデータを追加回路を設けることなく確実に保存することが可能なデータ記録装置、それを備えたデータ収集装置、データ収集方法およびデータ収集プログラムを提供する。【解決手段】ＣＰＵは、メモリカード内でファイルを開き（ステップＳ１０１）、メモリカード内に予め定められたダミーデータを出力する（ステップＳ１０２）。これにより、ファイルのデータ領域内にダミーデータが書き込まれる。ＣＰＵはファイルのＦＡＴ領域内にＦＡＴデータを書き込み、ファイルを閉じる（ステップＳ１０３）。ＣＰＵは収集データ記憶部から記録対象となるデータを読み出し、読み出したデータをメモリカードへ出力することによりファイルのデータ領域に書き込まれたダミーデータをデータで置換する（ステップＳ１０４）。【選択図】        図５
2004258798.tif 000002
【特許請求の範囲】
【請求項１】
データを記録媒体に記録するデータ記録装置であって、
前記記録媒体に記録すべきデータを記憶するデータ記憶手段と、
前記記録媒体に対するデータの読み書きを制御する制御手段とを備え、
前記制御手段は、
予め定められたダミーデータを前記記録媒体に書き込むことによりファイルを作成した後、前記ファイルのダミーデータを前記データ記憶手段から読み出したデータで置換する置換動作を行うことを特徴とするデータ記録装置。
【請求項２】
前記制御手段は、
前記データ記憶手段から読み出したデータの容量が前記ファイルに書き込まれたダミーデータの容量よりも大きい場合、前記ファイルについて前記置換動作を行った後、ダミーデータを前記記録媒体へ書き込むことにより新たなファイルを作成し、前記新たなファイルのダミーデータに対して前記データ記憶手段から読み出した残りのデータによる前記置換動作を行うことを特徴とする請求項１記載のデータ記録装置。
【請求項３】
前記制御手段は、
ダミーデータを前記記録媒体に書き込む際に、ダミーデータの格納位置を管理する管理情報を前記記録媒体に書き込むことにより前記ファイルを作成することを特徴とする請求項１または２記載のデータ記録装置。
【請求項４】
前記管理情報は、データを識別するための識別情報およびデータの格納位置を示す位置情報からなることを特徴とする請求項３に記載のデータ記録装置。
【請求項５】
予め設定されたデータのレイアウトを示すレイアウト設定情報を記憶する情報記憶手段をさらに備え、
前記制御手段は、
前記情報記憶手段に記憶されたレイアウト設定情報に基づいてデータのレイアウトを定義し、前記ファイルのダミーデータをレイアウトが定義されたデータで置換する置換動作を行うことを特徴とする請求項１〜４のいずれかに記載のデータ記録装置。
【請求項６】
予め設定されたデータのレイアウトを示すレイアウト設定情報を記憶する情報記憶手段をさらに備え、
前記制御手段は、
前記情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータにより前記ファイルを作成し、前記ファイルのダミーデータを前記記録媒体に記録すべきデータで置換する置換動作を行うことを特徴とする請求項１〜４のいずれかに記載のデータ記録装置。
【請求項７】
前記レイアウト設定情報は、データの整列方法を示す整列情報を含み、
前記制御手段は、前記置換動作により前記整列情報に基づいて整列方法が定義されたデータを含む前記ファイルを作成することを特徴とする請求項５または６記載のデータ記録装置。
【請求項８】
前記レイアウト設定情報は、データ間に挿入すべき他のデータを示す挿入情報を含み、
前記制御手段は、前記置換動作により前記挿入情報に基づいてデータ間への他のデータの挿入の定義を含む前記ファイルを作成することを特徴とする請求項５〜７のいずれかに記載のデータ記録装置。
【請求項９】
前記他のデータは空白を示すデータであることを特徴とする請求項８記載のデータ記録装置。
【請求項１０】
前記レイアウト設定情報は、前記データ記憶手段に記憶されたデータとは異なる付加情報を含み、
前記制御手段は、前記ファイルに前記付加情報を合成することを特徴とする請求項５〜９のいずれかに記載のデータ記録装置。
【請求項１１】
外部機器からデータを収集するためのデータ収集装置であって、
予め設定されたデータのレイアウトを示すレイアウト設定情報を外部から取得する情報取得手段と、
前記情報取得手段により取得されたレイアウト設定情報を記憶する情報記憶手段と、
前記外部機器からデータを収集するデータ収集手段と、
前記データ収集手段により収集されたデータを記憶するデータ記憶手段と、
前記情報記憶手段に記憶されたレイアウト設定情報に基づいて前記データ記憶手段に記憶されたデータのレイアウトを定義し、レイアウトが定義されたデータを含むファイルを作成する制御手段とを備え、
前記制御手段は、
予め定められたダミーデータを前記記録媒体に書き込むことによりファイルを作成した後、前記ファイルのダミーデータを前記データ記憶手段から読み出したデータで置換する置換動作を行うことを特徴とするデータ収集装置。
【請求項１２】
外部機器からデータを収集するためのデータ収集装置であって、
予め設定されたデータのレイアウトを示すレイアウト設定情報を外部から取得する情報取得手段と、
前記情報取得手段により取得されたレイアウト設定情報を記憶する情報記憶手段と、
前記外部機器からデータを収集するデータ収集手段と、
前記データ収集手段により収集されたデータを記憶するデータ記憶手段と、
前記情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータを含むファイルを作成する制御手段とを備え、
前記制御手段は、
前記情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータにより前記ファイルを作成した後、前記ファイルのダミーデータを前記記録媒体に記録すべきデータで置換する置換動作を行うことを特徴とするデータ収集装置。
【請求項１３】
データ記憶手段に記憶されたデータを記録媒体に記録するデータ記録方法であって、
予め定められたダミーデータを前記記録媒体に書き込むことによりファイルを作成するステップと、
前記データ記憶手段からデータを読み出すステップと、
前記ファイルの前記ダミーデータを前記データ記憶手段から読み出したデータで置換する置換動作を行うステップとを含むことを特徴とするデータ記録方法。
【請求項１４】
データ記憶手段に記憶されるデータを記録媒体に記録するデータ記録処理を処理装置に実行させるデータ記録プログラムであって、
予め定められたダミーデータを前記記録媒体に書き込むことによりファイルを作成する処理と、
前記データ記憶手段からデータを読み出す処理と、
前記ファイルの前記ダミーデータを前記データ記憶手段から読み出したデータで置換する置換動作を行う処理とを、前記処理装置に実行させることを特徴とするデータ記録プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記録媒体にデータを記録するデータ記録装置、それを備えたデータ収集装置、データ記録方法およびデータ記録プログラムに関する。
【０００２】
【従来の技術】
工場の製造ライン等において、被制御機器をシーケンシャルに制御するためにプログラマブルコントローラが用いられている。また、プログラマブルコントローラよりデータを収集するデータ収集装置が用いられる。このようなデータ収集装置では、プログラマブルコントローラより収集したデータを記録媒体に記録するデータ記録装置が設けられることにより、収集されたデータを容易に保存することが可能となる。
【０００３】
フロッピィディスク、ＣＤ−Ｒ（コンパクトディスク−レコーダブル）またはメモリカード等の種々の記録媒体にデータを記録するデータ記録装置は、記録対象となるデータに基づいて記録媒体にファイルを作成する。この場合、データ記録装置は、まずファイルを開き、そのファイル内にデータを書き込んだ後に、データの格納位置を管理する情報をファイルに書き込み、ファイルを閉じる。それにより、記録媒体のファイル内にデータが保存される。しかしながら、データ記録装置がファイル内にデータを書き込んでいる間に、データ記録装置の電源が遮断されると、ファイル内のデータの格納位置を管理する情報が書き込まれる前に書き込み動作が終了するため、既にファイルに書き込まれたデータを読み出すことができない。そのため、データ記録装置には、記録媒体へのデータの記録動作時に電源を遮断してはならないという制限が課せられている。
【０００４】
しかしながら、記録動作時における電源の遮断は、使用者によるデータ記録装置の誤操作、データ記録装置の誤作動または停電等の要因により確実に防止することが困難である。
【０００５】
上記問題の対応策として、例えば、データの記録動作中に電源が遮断された場合であってもデータ記録装置内部にバッテリバックアップＲＡＭ（ランダムアクセスメモリ）を搭載することによりデータの消失を防止するファイル管理方法（特許文献１参照）、記録媒体へ記録するデータを細かく退避する半導体ファイル装置（特許文献２参照）および電源電圧を監視して電源の切断を未然に検出し、電源の遮断時に記録媒体へ記録するデータを退避するデータ保存装置（特許文献３参照）が提案されている。
【０００６】
【特許文献１】
特開昭６３−４０９４９号公報
【特許文献２】
特開昭６３−５９６４４号公報
【特許文献３】
特開２０００−３０５６１０号公報
【０００７】
【発明が解決しようとする課題】
しかしながら、上記ファイル管理方法およびデータ保存装置においては、データを記録媒体に記録する基本構成に加えてバッテリバックアップＲＡＭまたは電源の遮断を検出する装置等の追加回路が必要となるため複雑な構成となっている。
【０００８】
また、上記半導体ファイル装置においては、電源遮断時に記録媒体へ記録するデータが消滅するという被害は減少するが、未退避のデータが消失してしまうため、本質的な問題の解決になっていない。
【０００９】
本発明の目的は、記録媒体へのデータの書き込み動作中に書き込み動作が終了した場合でも既に書き込まれたデータを追加回路を設けることなく確実に保存することが可能なデータ記録装置、それを備えたデータ収集装置、データ収集方法およびデータ収集プログラムを提供することである。
【００１０】
【課題を解決するための手段および発明の効果】
（第１の発明）
第１の発明に係るデータ記録装置は、データを記録媒体に記録するデータ記録装置であって、記録媒体に記録すべきデータを記憶するデータ記憶手段と、記録媒体に対するデータの読み書きを制御する制御手段とを備え、制御手段は、予め定められたダミーデータを記録媒体に書き込むことによりファイルを作成した後、ファイルのダミーデータをデータ記憶手段から読み出したデータで置換する置換動作を行うものである。
【００１１】
本発明に係るデータ記録装置においては、予め定められたダミーデータが制御手段により記録媒体に書き込まれることによりファイルが作成される。この場合、制御部は、ファイル作成時にデータ記憶手段からデータを読み込む必要がないので、高速で記録媒体内にファイルを作成することができる。
【００１２】
その後、制御手段により作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータで置換される。この場合、既に作成されたファイル内のダミーデータがデータ記憶手段から読み出されたデータで置換されるので、データの書き込み動作中に書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータはファイルに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータを確実に記録媒体に保存することができる。
【００１３】
（第２の発明）
第２の発明に係るデータ記録装置は、第１の発明に係るデータ記録装置において、制御手段は、データ記憶手段から読み出したデータの容量がファイルに書き込まれたダミーデータの容量よりも大きい場合、ファイルについて置換動作を行った後、ダミーデータを記録媒体へ書き込むことにより新たなファイルを作成し、新たなファイルのダミーデータに対してデータ記憶手段から読み出した残りのデータによる置換動作を行うものである。
【００１４】
これにより、データ記憶手段から読み出したデータの容量が予め定められたダミーデータの容量より大きい場合であっても、ファイルに書き込まれない残りのデータが新たなファイルのダミーデータと置換されるので、データ記憶手段から読み出されたデータを容量の大きさにかかわらず確実に記録媒体内に記録することができる。
【００１５】
（第３の発明）
第３の発明に係るデータ記録装置は、第１または第２の発明に係るデータ記録装置において、制御手段は、ダミーデータを記録媒体に書き込む際に、ダミーデータの格納位置を管理する管理情報を記録媒体に書き込むことによりファイルを作成するものである。
【００１６】
この場合、制御手段によりダミーデータが記録媒体に書き込まれるとともに、記録媒体にダミーデータの格納位置を管理する管理情報が書き込まれることによりファイルが作成される。それにより、ファイル内の管理情報に基づいてダミーデータをデータ記憶手段から読み出されたデータで置換することが可能となる。
【００１７】
（第４の発明）
第４の発明に係るデータ記録装置は、第３の発明に係るデータ記録装置において、管理情報は、データを識別するための識別情報およびデータの格納位置を示す位置情報からなるものである。
【００１８】
この場合、識別情報および位置情報に基づいてファイル内のデータを特定することができる。それにより、ファイル内のダミーデータをデータ記録手段から読み出されたデータで置換する動作およびファイル内のデータの読み出しおよび書き込み動作が可能となる。
【００１９】
（第５の発明）
第５の発明に係るデータ記録装置は、第１〜第４のいずれかの発明に係るデータ記録装置において、予め設定されたデータのレイアウトを示すレイアウト設定情報を記憶する情報記憶手段をさらに備え、制御手段は、情報記憶手段に記憶されたレイアウト設定情報に基づいてデータのレイアウトを定義し、ファイルのダミーデータをレイアウトが定義されたデータで置換する置換動作を行うものである。
【００２０】
この場合、情報記憶手段に記憶されたレイアウト設定情報に基づいてデータのレイアウトが定義され、ファイルのダミーデータがレイアウトが定義されたデータで置換される。
【００２１】
これにより、レイアウトが定義されたデータを含むファイルが作成されるので、そのファイルを汎用のアプリケーションプログラムを備えたコンピュータにより開くことによりデータが予め設定されたレイアウトで配置される。したがって、使用者が記録媒体に記録されたファイルを開いた後にデータのレイアウトを指定するための作業が軽減される。
【００２２】
（第６の発明）
第６の発明に係るデータ記録装置は、第１〜第４のいずれかの発明に係るデータ記録装置において、予め設定されたデータのレイアウトを示すレイアウト設定情報を記憶する情報記憶手段をさらに備え、制御手段は、情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータによりファイルを作成し、ファイルのダミーデータを記録媒体に記録すべきデータで置換する置換動作を行うものである。
【００２３】
この場合、情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトが定義され、レイアウトが定義されたダミーデータによりファイルが作成され、ファイルのダミーデータが記録媒体に記録すべきデータで置換される。
【００２４】
これにより、レイアウトが定義されたデータを含むファイルが作成されるので、そのファイルを汎用のアプリケーションプログラムを備えたコンピュータにより開くことによりデータが予め設定されたレイアウトで配置される。したがって、使用者が記録媒体に記録されたファイルを開いた後にデータのレイアウトを指定するための作業が軽減される。
【００２５】
（第７の発明）
第７の発明に係るデータ記録装置は、第５または第６の発明に係るデータ記録装置において、レイアウト設定情報は、データの整列方法を示す整列情報を含み、制御手段は、置換動作により整列情報に基づいて整列方法が定義されたデータを含むファイルを作成するものである。
【００２６】
この場合、レイアウト設定情報に含まれる整列情報に基づいて置換動作により整列方法が定義されたデータを含むファイルが作成される。それにより、使用者が記録媒体に記録されたファイルを開いた後にデータの整列方法を指定するための作業が軽減される。
【００２７】
（第８の発明）
第８の発明に係るデータ記録装置は、第５〜第７のいずれかの発明に係るデータ記録装置において、レイアウト設定情報は、データ間に挿入すべき他のデータを示す挿入情報を含み、制御手段は、置換動作により挿入情報に基づいてデータ間への他のデータの挿入の定義を含むファイルを作成するものである。
【００２８】
この場合、レイアウト設定情報に含まれる挿入情報に基づいて置換動作によりデータ間への他のデータの挿入の定義を含むファイルが作成される。それにより、使用者が記録媒体に記録されたファイルを開いた後にデータ間に他のデータを挿入するための作業が軽減される。
【００２９】
（第９の発明）
第９の発明に係るデータ記録装置は、第８の発明に係るデータ記録装置において、他のデータは空白を示すデータである。
【００３０】
この場合、挿入情報に基づいてデータ間への空白の挿入の定義を含むファイルが作成される。それにより、使用者が記録媒体に記録されたファイルを開いた後にデータ間へ空白を挿入するための作業が軽減される。
【００３１】
（第１０の発明）
第１０の発明に係るデータ記録装置は、第５〜第９のいずれかの発明に係るデータ記録装置において、レイアウト設定情報は、データ記憶手段に記憶されたデータとは異なる付加情報を含み、制御手段は、ファイルに付加情報を合成するものである。
【００３２】
この場合、ファイルにデータ記憶手段に記憶されたデータとは異なる付加情報が合成される。それにより、使用者が記録媒体に記録されたファイルを開いた後にデータに付加情報を合成するための作業が軽減される。
【００３３】
（第１１の発明）
第１１の発明に係るデータ収集装置は、外部機器からデータを収集するためのデータ収集装置であって、予め設定されたデータのレイアウトを示すレイアウト設定情報を外部から取得する情報取得手段と、情報取得手段により取得されたレイアウト設定情報を記憶する情報記憶手段と、外部機器からデータを収集するデータ収集手段と、データ収集手段により収集されたデータを記憶するデータ記憶手段と、情報記憶手段に記憶されたレイアウト設定情報に基づいてデータ記憶手段に記憶されたデータのレイアウトを定義し、レイアウトが定義されたデータを含むファイルを作成する制御手段とを備え、制御手段は、予め定められたダミーデータを記録媒体に書き込むことによりファイルを作成した後、ファイルのダミーデータをデータ記憶手段から読み出したデータで置換する置換動作を行うものである。
【００３４】
本発明に係るデータ収集装置においては、予め設定されたデータのレイアウトを示すレイアウト設定情報が情報取得手段により外部から取得され、取得されたレイアウト設定情報が情報記憶手段に記憶される。また、データ収集手段により外部機器からデータが収集され、収集されたデータがデータ記憶手段に記憶される。さらに、情報記憶手段に記憶されたレイアウト設定情報に基づいてデータ記憶手段に記憶されたデータのレイアウトが定義され、レイアウトが定義されたデータを含むファイルが制御手段により作成される。
【００３５】
この場合、予め定められたダミーデータが制御手段により、記録媒体に書き込まれることによりファイルが作成され、作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータにより置換される。
【００３６】
このようにして、レイアウトが定義されたデータを含むファイルが作成されるので、ファイルを汎用のアプリケーションプログラムを備えたコンピュータにより開くことにより、データが予め設定されたレイアウトで配置される。それにより、使用者が外部機器から収集されたデータのレイアウトを指定するための作業が軽減される。また、データ収集装置にアプリケーションプログラムが動作する環境を内蔵する必要はないので、データ収集装置の小型化および低コスト化が可能となる。
【００３７】
また、予め定められたダミーデータが制御手段により記録媒体に書き込まれることによりファイルが作成され、制御手段は、ファイル作成時にデータ記憶手段からデータを読み出す必要がないので、高速で記録媒体内にファイルを作成することができる。
【００３８】
さらに、既に作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータで置換されるので、データの書き込み動作中に電源の遮断により書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータはファイルに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータを確実に記録媒体に保存することができる。
【００３９】
（第１２の発明）
第１２の発明に係るデータ収集装置は、外部機器からデータを収集するためのデータ収集装置であって、予め設定されたデータのレイアウトを示すレイアウト設定情報を外部から取得する情報取得手段と、情報取得手段により取得されたレイアウト設定情報を記憶する情報記憶手段と、外部機器からデータを収集するデータ収集手段と、データ収集手段により収集されたデータを記憶するデータ記憶手段と、情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータを含むファイルを作成する制御手段とを備え、制御手段は、情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトを定義し、レイアウトが定義されたダミーデータによりファイルを作成した後、ファイルのダミーデータを記録媒体に記録すべきデータで置換する置換動作を行うものである。
【００４０】
本発明に係るデータ収集装置においては、予め設定されたデータのレイアウトを示すレイアウト設定情報が情報取得手段により外部から取得され、取得されたレイアウト設定情報が情報記憶手段に記憶される。また、データ収集手段により外部機器からデータが収集され、収集されたデータがデータ記憶手段に記憶される。さらに、制御手段により情報記憶手段に記憶されたレイアウト設定情報に基づいてダミーデータのレイアウトが定義され、レイアウトが定義されたダミーデータによりファイルが作成され、ファイルのダミーデータが記録媒体に記録すべきデータで置換される。
【００４１】
このようにして、レイアウトが定義されたデータを含むファイルが作成されるので、ファイルを汎用のアプリケーションプログラムを備えたコンピュータにより開くことにより、データが予め設定されたレイアウトで配置される。それにより、使用者が外部機器から収集されたデータのレイアウトを指定するための作業が軽減される。また、データ収集装置にアプリケーションプログラムが動作する環境を内蔵する必要はないので、データ収集装置の小型化および低コスト化が可能となる。
【００４２】
また、予め定められたダミーデータが制御手段により記録媒体に書き込まれることによりファイルが作成され、制御手段は、ファイル作成時にデータ記憶手段からデータを読み出す必要がないので、高速で記録媒体内にファイルを作成することができる。
【００４３】
さらに、既に作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータで置換されるので、データの書き込み動作中に電源の遮断により書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータはファイルに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータを確実に記録媒体に保存することができる。
【００４４】
（第１３の発明）
第１３の発明に係るデータ記録方法は、データ記憶手段に記憶されたデータを記録媒体に記録するデータ記録方法であって、予め定められたダミーデータを記録媒体に書き込むことによりファイルを作成するステップと、データ記憶手段からデータを読み出すステップと、ファイルのダミーデータをデータ記憶手段から読み出したデータで置換する置換動作を行うステップとを含むものである。
【００４５】
本発明に係るデータ記録装置においては、予め定められたダミーデータが記録媒体に書き込まれることによりファイルが作成される。この場合、ファイル作成時にデータ記憶手段からデータを読み込む必要がないので、高速で記録媒体内にファイルを作成することができる。
【００４６】
その後、作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータで置換される。この場合、既に作成されたファイル内のダミーデータがデータ記憶手段から読み出されたデータで置換されるので、データの書き込み動作中に書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータはファイルに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータを確実に記録媒体に保存することができる。
【００４７】
（第１４の発明）
第１４の発明に係るデータ記録プログラムは、データ記憶手段に記憶されるデータを記録媒体に記録するデータ記録処理を処理装置に実行させるデータ記録プログラムであって、予め定められたダミーデータを記録媒体に書き込むことによりファイルを作成する処理と、データ記憶手段からデータを読み出す処理と、ファイルのダミーデータをデータ記憶手段から読み出したデータで置換する置換動作を行う処理とを、処理装置に実行させるものである。
【００４８】
本発明に係るデータ記録装置においては、予め定められたダミーデータが記録媒体に書き込まれることによりファイルが作成される。この場合、制御部は、ファイル作成時にデータ記憶手段からデータを読み込む必要がないので、高速で記録媒体内にファイルを作成することができる。
【００４９】
その後、作成されたファイルのダミーデータがデータ記憶手段から読み出されたデータで置換される。この場合、既に作成されたファイル内のダミーデータがデータ記憶手段から読み出されたデータで置換されるので、データの書き込み動作中に書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータはファイルに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータを確実に記録媒体に保存することができる。
【００５０】
【発明の実施の形態】
図１は、本発明の一実施の形態に係るデータ収集装置を用いたデータ収集システムの構成を示すブロック図である。
【００５１】
図１のデータ収集システムは、データ収集装置１００、設定データ生成装置３００およびプログラマブルコントローラ２００により構成される。
【００５２】
データ収集装置１００は、ＣＰＵ（中央演算処理装置）１１０、プログラム記憶部１２０、設定データ記憶部１３０、通信制御部１４０、メモリカードコネクタ１５０、収集データ記憶部１７０およびバックアップ電源１８０を含む。メモリカードコネクタ１５０には、記録媒体としてメモリカード１６０が挿入される。
【００５３】
ＣＰＵ１１０、プログラム記憶部１２０、設定データ記憶部１３０、通信制御部１４０、メモリカードコネクタ１５０および収集データ記憶部１７０が本実施の形態に係るデータ記録装置１１１を構成する。
【００５４】
プログラム記憶部１２０および設定データ記憶部１３０は、不揮発性メモリからなる。プログラム記憶部１２０には、後述するデータの収集およびファイルの作成を行うためのデータ収集プログラムと収集したデータをメモリカード１６０へ記録するためのデータ記録プログラムとが記憶される。
【００５５】
また、設定データ記憶部１３０には、設定データ生成装置３００により生成された設定データが記憶される。設定データは、データの収集対象を示すデバイス設定情報、データの収集タイミングおよび収集方法を示す動作設定情報およびデータのレイアウトを示すレイアウト設定情報を含む。
【００５６】
ＣＰＵ１１０は、プログラム記憶部１２０に記憶されたデータ収集プログラムを実行することにより設定データ記憶部１３０に記憶された設定データに基づいてデータの収集動作およびファイルの作成動作を制御し、プログラム記憶部１２０に記録されたデータ記録プログラムを実行することによりメモリカード１６０への収集されたデータの記録動作を制御する。
【００５７】
通信制御部１４０は、ＡＳＩＣ（特定用途向け集積回路）により構成され、ＲＳ（Ｒｅｃｏｍｍｅｎｄｅｄ  Ｓｔａｎｄａｒｄ）２３２Ｃ用コネクタ、イーサネット（登録商標）用コネクタ、ＵＳＢ（ユニバーサルシリアルバス）用コネクタを有し、外部機器とのデータ通信を制御するとともに、メモリカードコネクタ１５０に挿入されたメモリカード１６０に対するデータの読み書きを制御する。
【００５８】
本実施の形態では、通信制御部１４０は、設定データ生成装置３００から送信される設定データを受信して設定データ記憶部１３０に転送し、プログラマブルコントローラ２００から与えられるデータを収集データ記憶部１７０に転送する。また、通信制御部１４０は、ＣＰＵ１１０の制御に従って収集データ記憶部１７０から読み出されたデータをメモリカードコネクタ１５０を介してメモリカード１６０に書き込む。
【００５９】
収集データ記憶部１７０は、ＲＡＭ（ランダムアクセスメモリ）からなり、通信制御部１４０から転送されたデータを記憶する。バックアップ電源１８０はバッテリからなり、電源のオフ時に、収集データ記憶部１７０に記憶されたデータを保持するために用いられる。
【００６０】
プログラマブルコントローラ２００には、スイッチ、センサ等の入力機器および電磁開閉器、リレー、ソレノイド、モータ、シリンダ等の出力機器が接続される。このプログラマブルコントローラは、予め作成された制御プログラムに従って被制御機器を制御する。
【００６１】
また、プログラマブルコントローラ２００内のメモリには、種々のデバイスが割り付けられる。ここで、デバイスとは、制御プログラム上で用いられるリレー（入力リレー、出力リレー、入出力リレー、補助リレー等）、タイマ、カウンタ、データメモリ等の要素をいう。
【００６２】
これらのデバイスは、デバイスの名称またはデバイスの番号により特定される。すなわち、デバイスの名称またはデバイスの番号を用いてデバイスが割り付けられたメモリ上のアドレスが特定される。
【００６３】
プログラマブルコントローラによる被制御機器の制御動作に伴ってデバイスの状態が変化する。例えば、入力リレー等のビットデバイスのオンオフや、データメモリ等のワードデバイスのデータ値が変化する。
【００６４】
データ収集装置１００のＣＰＵ１１０は、設定データ記憶部１３０に記憶された設定データに基づいて予め設定されたプログラマブルコントローラ２００のデバイスからデータを通信制御部１４０を介して収集する。収集されたデータは、収集データ記憶部１７０に記憶される。ＣＰＵ１１０は、収集データ記憶部１７０に記憶されたデータを予め設定されたタイミングでメモリカード１６０に記録する。
【００６５】
設定データ生成装置３００は、通信制御部３１０、ディスプレイ３２０、入力装置３３０、ＲＯＭ（リードオンリメモリ）３４０、ＣＰＵ３５０、ＲＡＭ（ランダムアクセスメモリ）３６０、記録媒体駆動装置３７０および外部記憶装置３８０を備える。
【００６６】
通信制御部３１０は、データ収集装置１００との通信を制御する。ディスプレイ３２０は、液晶表示パネル、ＣＲＴ（陰極線管）等からなり、データの収集対象、データの収集タイミングおよび収集方法ならびにレイアウトの設定のための画面を表示する。入力装置３３０は、キーボード、マウス等からなり、使用者が種々の指令およびデータを入力するために用いられる。
【００６７】
ＲＯＭ３４０にはシステムプログラムが記憶される。記録媒体駆動装置３７０は、ＣＤ（コンパクトディスク）−ＲＯＭドライブ、フロッピィディスクドライブ等からなり、ＣＤ−ＲＯＭ、フロッピィディスク等の記録媒体３７１に対してデータの読み書きを行う。記録媒体３７１には、データ収集装置１００に転送される設定データを生成するための設定データ生成プログラムおよび汎用のスプレッドシートプログラムが記録されている。なお、本実施の形態では、設定データ生成プログラムは、汎用のスプレッドシートプログラムの機能を用いて設定データの生成を行うが、設定データ生成プログラムが単独で設定データの生成の機能を有してもよい。
【００６８】
外部記憶装置３８０は、ハードディスク装置等からなり、記録媒体駆動装置３７０を介して記録媒体３７１から読み込まれた設定データ生成プログラムおよびスプレッドシートプログラムを記憶する。
【００６９】
ＣＰＵ３５０は、外部記憶装置３８０に記憶された設定データ生成プログラムおよびスプレッドシートプログラムをＲＡＭ３６０上で実行し、通信制御部３１０、ディスプレイ３２０および入力装置３３０を制御する。
【００７０】
設定データ生成装置３００は、例えばパーソナルコンピュータと、外部記憶装置３８０に記憶された設定データ生成プログラムおよびスプレッドシートプログラムとにより構成される。
【００７１】
なお、設定データ生成プログラムを記録する記録媒体３７１として、ＲＯＭ等の半導体メモリ、ハードディスク等の種々の記録媒体を用いることができる。また、設定データ生成プログラムを通信回線等の通信媒体を介して外部記憶装置３８０にダウンロードし、ＲＡＭ３６０上で実行してもよい。
【００７２】
ここで、図１のデータ収集装置１００において、データ記録装置１１１が収集データ記憶部１７０に記憶されたデータをメモリカード１６０へ記録するデータ記録動作について説明する。本実施の形態において、データ記憶装置１１１は、ＦＡＴ（ファイルアロケーションテーブル）を用いたファイルシステムによりデータをメモリカード１６０内にファイルとして記録する。
【００７３】
図２は、ＦＡＴを用いて作成されたファイルの構成を示す概念図である。図２において、ファイルＦｉはＦＡＴ領域Ｆａおよびデータ領域Ｄａを含む。
【００７４】
図２に示すように、ＦＡＴ領域Ｆａには、個々のデータを識別する識別情報およびデータ領域Ｄａ内での個々のデータの格納位置を示す位置情報からなる管理情報（以下、ＦＡＴデータと呼ぶ）が記録されている。そして、データ領域Ｄａにはデータが記録されている。
【００７５】
このようなＦＡＴを用いたファイルシステムによれば、ＦＡＴ領域Ｆａに記録されているＦＡＴデータに基づいて、データ領域Ｄａにおいてどのデータがどこに位置するのかが容易に管理される。
【００７６】
例えば、図２に示すファイルＦｉが開かれる場合、ＦＡＴ領域ＦａのＦＡＴデータ「データｄ１、ｂ行３列」を参照することによりデータ領域Ｄａのｂ行３列に位置するデータｄ１を読み出し、ＦＡＴデータ「データｄ２、ｃ行６列」を参照することによりデータ領域Ｄａのｃ行６列に位置するデータｄ２を読み出すことができる。
【００７７】
なお、上記説明においては理解を容易とするため図２のデータ領域Ｄａに示されるデータを行および列からなる２次元の配列で示しているが、実際にはデータ領域Ｄａは行および列からなる２次元の配列を有さず、１次元の配列を有する。
【００７８】
図３は、図１のＣＰＵがデータをＦＡＴを用いたファイルシステムによりメモリカードへ記録する際の従来の記録動作を示すフローチャートである。
【００７９】
一般に、図１の収集データ記憶部１７０に記憶されたデータはＦＡＴを用いることにより次のようにメモリカード１６０へ記録される。なお、下記説明において、図１のＣＰＵ１１０は従来の記録動作を行うものとする。
【００８０】
ＣＰＵ１１０は、データの記録動作を開始するとともに、メモリカード１６０に保存すべきファイル名称を作成し、メモリカード１６０内でファイルＦｉを開く（ステップＳ２０１）。
【００８１】
続いて、ＣＰＵ１１０は図１の収集データ記憶部１７０から記録対象となるデータを読み出し、読み出したデータをメモリカード１６０へ出力する（ステップＳ２０２）。それにより、ファイルＦｉのデータ領域Ｄａ内にデータが書き込まれる。
【００８２】
その後、ＣＰＵ１１０はメモリカード１６０に記録すべき全てのデータをメモリカード１６０へ出力すると、ファイルＦｉのＦＡＴ領域Ｆａ内にＦＡＴデータを書き込み、メモリカード１６０内のファイルＦｉを閉じる（ステップＳ２０３）。
【００８３】
図４は、従来の記録動作によりメモリカード内にデータのファイルが作成される様子を示す概念図である。
【００８４】
図４において、（ａ）は図３のステップＳ２０２の処理中のファイルＦｉの状態を示し、（ｂ）は図３のステップＳ２０３の処理中のファイルＦｉの状態を示し、（ｃ）は図３のステップＳ２０３の処理が終了した時点のファイルＦｉの状態を示す。
【００８５】
図４（ａ）に示すように、ＣＰＵ１１０によるメモリカード１６０へのデータｄの出力時において、データｄはファイルＦｉのデータ領域Ｄａ内に書き込まれる。なお、図４（ａ）においては、データ領域Ｄａにデータｄが１つずつ書き込まれていく様子が示されている。しかしながら、ＣＰＵ１１０によりメモリカード１６０に一度に送られるデータ量は予め定められているため、実際には、複数のデータｄが集合した状態でデータ領域Ｄａに書き込まれる。
【００８６】
図４（ａ）に示されるデータｄの書き込み終了後、ＣＰＵ１１０は図４（ｂ）に示すように、ファイルＦｉのＦＡＴ領域Ｆａ内にＦＡＴデータｄｆを書き込む。この書き込み動作が終了することによりファイルＦｉが閉じられ、図４（ｃ）に示すファイルＦｉが作成される。
【００８７】
なお、ＦＡＴデータｄｆの書き込み時においては、ＣＰＵ１１０によりメモリカード１６０に一度に送られるデータ量が予め定められている。このため、複数のＦＡＴデータｄｆが集合した状態でＦＡＴ領域Ｆａに書き込まれる。
【００８８】
以上に示す従来の記録動作によれば、書き込み動作中にデータ記録装置１１１の電源が遮断された場合、ファイルＦｉ内にはＦＡＴ領域Ｆａが作成される前にデータｄの書き込み動作が終了する。この場合、ファイルＦｉ内に、書き込まれたデータｄに対応するＦＡＴデータｄｆが存在しないため、既にファイルＦｉ内に書き込まれたデータｄを読み出すことが不可能となる。それにより、既にファイルＦｉ内に書き込まれたデータが消失した状態となる。
【００８９】
図５は、本実施の形態に係るデータ記録プログラムに基づいて図１のＣＰＵがデータをＦＡＴを用いたファイルシステムによりメモリカードへ記録する際の記録動作を示すフローチャートである。
【００９０】
図１のＣＰＵ１１０は設定データ記憶部１３０に記憶されたデータ記録プログラムを実行することにより、収集データ記憶部１７０に記憶されたデータｄをメモリカード１６０へ記録する。なお、下記記録動作においては、ダミーデータが用いられる。
【００９１】
ダミーデータとは、データ記録プログラム上で予め定められた規則性を有する仮のデータである。例えば、ダミーデータとして、データ記録プログラム上で全てが”０”または全てが”１”という規則性が定められる。
【００９２】
ＣＰＵ１１０は、データｄの記録動作を開始するとともに、メモリカード１６０に保存すべきファイル名称を作成し、メモリカード１６０内でファイルＦｉを開く（ステップＳ１０１）。
【００９３】
続いて、ＣＰＵ１１０はメモリカード１６０内に予め定められたファイルサイズに応じた量のダミーデータを出力する（ステップＳ１０２）。それにより、ファイルＦｉのデータ領域Ｄａ内にダミーデータが書き込まれる。この場合、ダミーデータはデータ記録プログラム上で予め定められており、収集データ記憶部１７０から読み出す必要はないので、ファイルＦｉに高速に書き込むことができる。
【００９４】
続いて、ＣＰＵ１１０は、メモリカード１６０に記録すべき全てのダミーデータを出力すると、ファイルＦｉのＦＡＴ領域Ｆａ内にＦＡＴデータｄｆを書き込み、メモリカード１６０内のファイルＦｉを閉じる（ステップＳ１０３）。
【００９５】
その後、ＣＰＵ１１０は図１の収集データ記憶部１７０から記録対象となるデータｄを読み出し、読み出したデータｄをメモリカード１６０へ出力することにより、ファイルＦｉのデータ領域Ｄａに書き込まれたダミーデータをデータｄで置換する（ステップＳ１０４）。
【００９６】
ここで、ＣＰＵ１１０は、記録対象となる全てのデータｄがファイルＦｉ内のダミーデータと置換されたか否かを判別する（ステップＳ１０５）。メモリカード１６０に記録すべき全てのデータｄがファイルＦｉ内のダミーデータと置換された場合、ＣＰＵ１１０は、データｄのメモリカード１６０への記録動作を終了する。
【００９７】
一方、メモリカード１６０に記録すべき全てのデータｄがファイルＦｉ内のダミーデータと置換されていない場合、ＣＰＵ１１０は、メモリカード１６０に保存すべき新たなファイル名称を作成し、メモリカード１６０内で新たなファイルＦｉを開く（ステップＳ１０６）。
【００９８】
続いて、ＣＰＵ１１０はメモリカード１６０内に予め定められたファイルサイズに応じた量の新たなダミーデータを出力する（ステップＳ１０７）。それにより、新たなファイルＦｉのデータ領域Ｄａ内に新たなダミーデータが書き込まれる。この場合、新たなダミーデータはデータ記録プログラム上で予め定められており、収集データ記憶部１７０から読み出す必要はないので、ファイルＦｉに高速に書き込むことができる。
【００９９】
続いて、ＣＰＵ１１０は、メモリカード１６０に記録すべき全ての新たなダミーデータを出力すると、新たなファイルＦｉのＦＡＴ領域Ｆａ内に新たなＦＡＴデータｄｆを書き込み、メモリカード１６０内の新たなファイルＦｉを閉じる（ステップＳ１０８）。
【０１００】
その後、ＣＰＵ１１０は図１の収集データ記憶部１７０から置換されなかった残りのデータｄをメモリカード１６０へ出力することにより、新たなファイルＦｉのデータ領域Ｄａに書き込まれた新たなダミーデータを残りのデータｄで置換する（ステップＳ１０９）。
【０１０１】
最後に、ＣＰＵ１１０は、残りのデータｄの全てが新たなファイルＦｉ内の新たなダミーデータと置換されたか否かを判別する（ステップＳ１１０）。メモリカード１６０に記録すべき残りのデータｄの全てが新たなファイルＦｉ内の新たなダミーデータと置換された場合、ＣＰＵ１１０は、データｄのメモリカード１６０への記録動作を終了する。
【０１０２】
一方、メモリカード１６０に記録すべき残りのデータｄの全てが新たなファイルＦｉ内の新たなダミーデータと置換されていない場合、ＣＰＵ１１０は、ステップＳ１０６に戻り、ステップＳ１０６〜Ｓ１１０の動作を繰り返す。
【０１０３】
これにより、図１の収集データ記憶部１７０内の記録対象となる全てのデータｄがメモリカード１６０内に記録される。
【０１０４】
図６は、本実施の形態に係るデータ記録プログラムを実行した場合にメモリカード内にデータのファイルが作成される様子を示す概念図である。
【０１０５】
図６において、（ａ）は図５のステップＳ１０２の処理中のファイルＦｉの状態を示し、（ｂ）は図５のステップＳ１０３の処理中のファイルＦｉの状態を示し、（ｃ）は図５のステップＳ１０４の処理中のファイルＦｉの状態を示し、（ｄ）は図５のステップＳ１０５の処理が終了した時点のファイルＦｉの状態を示す。ここでは、ステップＳ１０５において、記録対象となる全てのデータｄがファイルＦｉ内のダミーデータと置換されるものとする。
【０１０６】
図６（ａ）に示すように、ＣＰＵ１１０によるメモリカード１６０へのダミーデータｄｋの出力時において、ダミーデータｄｋはファイルＦｉのデータ領域Ｄａ内に書き込まれる。なお、図６（ａ）においては、データ領域Ｄａにダミーデータｄｋが１つずつ書き込まれていく様子が示されている。しかしながら、ＣＰＵ１１０によりメモリカード１６０に一度に送られるデータ量は予め定められているため、実際には、複数のダミーデータｄｋが集合した状態でデータ領域Ｄａに書き込まれる。
【０１０７】
図６（ａ）に示されるダミーデータｄｋの書き込み終了後、ＣＰＵ１１０は図６（ｂ）に示すように、ファイルＦｉのＦＡＴ領域Ｆａ内にＦＡＴデータｄｆを書き込む。この書き込み動作が終了することにより、ファイルＦｉが閉じられ、ダミーデータｄｋからなるファイルＦｉが作成される。
【０１０８】
なお、メモリカード１６０へのＦＡＴデータｄｆの書き込み時においては、ＣＰＵ１１０によりメモリカード１６０に一度に送られるデータ量が予め定められている。このため、複数のＦＡＴデータｄｆが集合した状態でＦＡＴ領域Ｆａに書き込まれる。
【０１０９】
その後、ＣＰＵ１１０は、ファイルＦｉ内のダミーデータｄｋをデータｄで置換する。ダミーデータｄｋへのデータｄの置換は、図６（ｃ）に示す通りである。全てのデータｄがダミーデータｄｋに置換されることにより、図６（ｄ）に示すようなファイルＦｉが作成される。
【０１１０】
なお、この置換動作時においても上記と同様に、実際には複数のデータｄが集合した状態でファイルＦｉ内のダミーデータｄｋと置換される。
【０１１１】
以上に示す本実施の形態に係るデータｄの記録動作によれば、予め定められたダミーデータｄｋがＣＰＵ１１０によりメモリカード１６０内に書き込まれることによりファイルＦｉが作成される。この場合、ＣＰＵ１１０は収集データ記憶部１７０からデータを読み込む必要がないので、高速でメモリカード１６０内にファイルＦｉを作成することができる。
【０１１２】
また、既に作成されたファイルＦｉ内のダミーデータｄｋが収集データ記憶部１７０から読み出されたデータｄで置換されているので、データｄの書き込み動作中に電源の遮断等により書き込み動作が終了した場合でも、既に記録媒体に書き込まれたデータｄは、ファイルＦｉに読み出し可能に保存される。したがって、追加回路を設けることなく、既に書き込まれたデータｄを確実に記録媒体に保存することができる。
【０１１３】
さらに、収集データ記憶部１７０から読み出したデータｄの容量が予め定められたダミーデータｄｋの容量よりも大きい場合であっても、ファイルＦｉに書き込まれない残りのデータｄが新たなファイルＦｉのダミーデータｄｋと置換されるので、収集データ記憶部１７０から読み出されたデータｄを容量の大きさに関わらず確実にメモリカード１６０内に記録することができる。
【０１１４】
また、ＣＰＵ１１０によりダミーデータｄｋがメモリカード１６０に書き込まれるとともに、メモリカード１６０にダミーデータｄｋの格納位置を管理する管理情報が書き込まれることによりファイルＦｉが作成される。これにより、ファイルＦｉ内の管理情報に基づいてダミーデータｄｋを収集データ記憶部１７０から読み出されたデータｄで置換することが可能となる。
【０１１５】
次に、図１のデータ収集システムの全体の動作について説明する。図７は図１のデータ収集システムの全体の動作を示すフローチャートである。
【０１１６】
まず、使用者は、図１の設定データ生成装置３００によりロギング設定を行う（ステップＳ１）。ロギング設定では、使用者がディスプレイ３２０の画面上でデータの収集対象、データの収集タイミングおよび収集方法ならびにデータのレイアウトを設定する。ロギング設定の詳細については後述する。
【０１１７】
次に、設定データ生成装置３００は、ロギング設定に基づいて設定データを生成する（ステップＳ２）。設定データは、上記のように、デバイス設定情報、動作設定情報およびレイアウト設定情報を含む。レイアウト設定情報の詳細については後述する。設定データは、設定データ生成装置３００のＣＰＵ３５０が設定データ生成プログラムを実行することにより生成される。
【０１１８】
その後、設定データ生成装置３００は、生成された設定データをデータ収集装置１００に転送する（ステップＳ３）。データ収集装置１００においては、設定データが設定データ記憶部１３０に記憶される。
【０１１９】
データ収集装置１００は、設定データ記憶部１３０に記憶された設定データに基づいてプログラマブルコントローラ２００からデータを収集する（ステップＳ４）。この場合、ＣＰＵ１１０は、プログラム記憶部１２０に記憶されたデータ収集プログラムを実行することにより、デバイス設定情報および動作設定情報に基づいて収集対象となるデバイスからデータを所定のタイミングで収集し、収集されたデータを収集データ記憶部１７０に記憶する。
【０１２０】
さらに、データ収集装置１００は、予め設定されたタイミングで収集データ記憶部１７０に記憶されたデータを含むファイルを作成する（ステップＳ５）。
【０１２１】
この場合、ＣＰＵ１１０は、プログラム記憶部１２０に記憶されたデータ収集プログラムを実行することにより、収集データ記憶部１７０に記憶されたデータを設定データ記憶部１３０に記憶されたレイアウト設定情報と合成し、合成されたデータを後述するＣＳＶ（ｃｏｍｍａ  ｓｅｐａｒａｔｅｄ  ｖａｌｕｅ：カンマ区切り）形式のデータファイル（以下、ＣＳＶファイルと呼ぶ）またはＨＴＭＬ（ｈｙｐｅｒｔｅｘｔ  ｍａｒｋｕｐ  ｌａｎｇｕａｇｅ）形式のデータファイル（以下、ＨＴＭＬファイルと呼ぶ）としてメモリカード１６０に保存する。ファイル作成の詳細については後述する。
【０１２２】
メモリカード１６０に保存されたＣＳＶファイルまたはＨＴＭＬファイルは、設定データ生成装置３００またはパーソナルコンピュータ等の汎用のコンピュータにおいてスプレッドシートプログラム等の汎用のアプリケーションプログラムにより開くことができる。
【０１２３】
このようなＣＳＶファイルまたはＨＴＭＬファイルでは、データ収集装置１００により収集されたデータが使用者により設定されたレイアウトを示すレイアウト設定情報と合成されている。それにより、ＣＳＶファイルまたはＨＴＭＬファイルを汎用のスプレッドシートプログラムで開いた場合に、収集されたデータが設定されたレイアウトで配置される。したがって、使用者が外部機器から収集されたデータのレイアウトを指定するための作業を軽減することができる。
【０１２４】
また、データ収集装置１００にスプレッドシートプログラムが動作する環境を内蔵する必要がないので、データ収集装置１００の小型化および低コスト化が可能となる。
【０１２５】
なお、複数のデータ収集装置１００により外部機器のデータを収集することもできる。この場合には、各データ収集装置１００により収集されたデータをＣＳＶファイルにより保存することにより、汎用のコンピュータにおいてスプレッドシートプログラム上で複数のデータ収集装置１００により得られたＣＳＶファイルを合成することができる。
【０１２６】
図８は図１の設定データ生成装置３００によるレイアウト設定方法を示す図である。
【０１２７】
レイアウト設定では、ブロックの設定、ブロックレイアウトの設定およびページレイアウトの設定を行う。
【０１２８】
まず、ブロックの設定では、１回のデータ収集タイミングで収集されたデータが格納されるセルの配置を定義する。ブロックは、ｍ１列×ｎ１行のマトリクスに配置されたセルからなる。ｍ１およびｎ１は、それぞれ１以上の任意の整数である。ブロックの各セルには、収集日時を示すデータ、デバイスからのデータ、ブランク（空白）等の種々のデータを任意に配置することができる。
【０１２９】
図８（ａ）には、ブロックＢＬの一例が示される。図８（ａ）の例では、ブロックＢＬが４列×２行に配置されたセルからなる。ブロックＢＬのセルには、日付を示すデータ、時刻を示すデータ、デバイス「ＤＭ００００１」のデータ、デバイス「ＤＭ００００２」のデータ、２つのブランク（空白）、デバイス「ＤＭ０００１１」のデータおよびデバイス「ＤＭ０００１２」のデータが格納される。
【０１３０】
次に、ブロックレイアウトの設定では、１または複数のブロックの配置およびブロック間の隙間（空白）を定義する。ブロックレイアウトは、ｍ２列×ｎ２行のマトリクスに配置されたブロックからなる。ｍ２およびｎ２は、それぞれ１以上の任意の整数である。ブロックレイアウトをページと呼ぶ。
【０１３１】
図８（ｂ）には、ページＰＧの一例が示される。図８（ｂ）の例では、ページＰＧが２列×３行に配置されたブロックＢＬからなる。ブロックＢＬ間には隙間が設定される。
【０１３２】
さらに、ページレイアウトの設定では、１または複数のページの配置およびページ間の隙間（空白）を定義する。ページレイアウトは、ｍ３列×ｎ３行のマトリクスに配置されたブロックからなる。ｍ３およびｎ３は、それぞれ１以上の任意の整数である。ページレイアウトをシートと呼ぶ。
【０１３３】
図８（ｃ）には、シートＳＨの一例が示される。図８（ｃ）の例では、シートＳＨが３列×２行に配置されたページＰＧからなる。ページＰＧ間には隙間が設定される。
【０１３４】
設定されたレイアウトは、上記のように、レイアウト設定情報としてデータ収集装置１００に転送される。
【０１３５】
次に、ロギング設定の詳細について説明する。図９〜図１４はロギング設定時に図１の設定データ生成装置３００のディスプレイ３２０に表示される画面の表示を示す図である。
【０１３６】
ディスプレイ３２０には図９のロギング設定ウィンドウ５０１が表示される。ロギング設定ウィンドウ５０１はデバイス設定タブ５０２、動作設定タブ５０３およびレイアウト設定タブ５０４を有する。
【０１３７】
使用者がデバイス設定タブ５０２を選択すると、デバイス設定ウィンドウ５０５が表示される。デバイス設定ウィンドウ５０５には、接続先入力欄５０６およびロギングデバイス一覧表５０７が表示される。
【０１３８】
使用者は、データ収集装置１００に接続される外部機器の名称を接続先入力欄５０６に入力する。あるいは、使用者は、プルダウンメニューにおいて予め登録された外部機器の名称からデータ収集装置１００に接続される外部機器の名称を選択することもできる。本実施の形態では、図１のプログラマブルコントローラ２００の名称を接続先入力欄５０６のプルダウンメニューから選択する。
【０１３９】
ロギングデバイス一覧表５０７には、データの収集対象となるデバイスが表示される。図９の例では、デバイス「ＤＭ０１０００」〜「ＤＭ０１００３」が表示されている。また、ロギングデバイス一覧表５０７には、各デバイスから収集したデータの表示形式が表示される。図９の例では、各デバイスの表示形式として符号なしバイナリ（１０進数の自然数）が指定されている。表示形式として文字列を指定することもできる。
【０１４０】
使用者は、ロギングデバイス一覧表５０７においてデバイスを追加する場合には追加ボタン５０９をクリックし、デバイスを変更する場合には変更ボタン５１０をクリックし、デバイスを削除する場合には削除ボタン５１１をクリックする。上下ボタン５１２，５１３はデバイスの並べ替え順序を入れ替えるために用いる。ロギングデバイス一覧表５０７において表示されているデバイス名を直接クリックすることにより追加、変更または削除の対象となるデバイスを指定することができる。
【０１４１】
使用者が追加ボタン５０９をクリックした場合には、図１０に示すデバイス追加ウィンドウ５２０が表示される。追加ウィンドウ５２０は、デバイス入力欄５２１，５２２、表示形式入力欄５２３、ワード数入力欄５２４および連続数入力欄５２５を含む。使用者は、デバイス入力欄５２１，５２２に追加すべきデバイスの名称を入力し、表示形式入力欄５２３に表示形式を入力する。
【０１４２】
また、ワード数入力欄５２４にデバイスのワード数を入力する。また、連続数入力欄５２５に２以上の数値を入力することにより複数のデバイスを連結して用いることができる。
【０１４３】
ＯＫボタン５２７をクリックすることにより、図９のデバイス一覧表５０７にデバイスが追加される。デバイスの追加を取り消す場合にはキャンセルボタン５２８をクリックする。
【０１４４】
図９のロギング設定ウィンドウ５０１において、使用者がＯＫボタン５１４をクリックすると、デバイス設定が確定され、キャンセルボタン５１５をクリックすると、デバイス設定が取り消される。
【０１４５】
使用者が動作設定タブ５０３を選択すると、図１１の動作設定ウィンドウ５３０が表示される。動作設定ウィンドウ５３０は、トリガ設定部５３１、終了後処理設定部５４２および情報付加部５５０を含む。
【０１４６】
使用者は、トリガ設定部５３１において、ロギングトリガ入力欄５３２にデータの収集タイミングをロギングトリガとして設定する。また、クリアチェックボックス５３３にチェックし、クリアトリガ入力欄５３４に収集したデータを消去するタイミングをクリアタイミングとして設定することができる。さらに、ロギング期間チェックボックス５３５のチェックを外すことによりデータの収集期間（ロギング期間）を設定することができる。この場合、開始トリガ入力欄５３６にデータ収集の開始タイミングを開始トリガとして設定し、停止トリガ入力欄５３７にデータ収集の停止タイミングを停止トリガとして設定する。
【０１４７】
また、使用者は、終了後処理部５４２において、設定された数のデータが収集されてデータ収集装置１００の収集データ記憶部１７０に記憶された後の処理を設定することができる。スクロール指定欄５４３を指定した場合には、収集データ記憶部１７０において先頭の格納位置のデータが削除されて残りのデータが１つずつ先頭側へシフトされ、新たに収集されたデータが最後の格納位置に格納される。クリア指定欄５４４を指定した場合には、収集データ記憶部１７０に格納されたデータが消去され、新たに収集されたデータが先頭の格納位置から順に格納される。上書き指定欄５４５を指定した場合には、新たに収集されたデータが収集データ記憶部１７０の先頭の格納位置から順に上書きされる。終了指定欄５４６を指定した場合には、データの収集が終了する。保存後クリア指定欄５４７を指定した場合には、収集データ記憶部１７０に記憶されたデータが、メモリカード１６０に保存された後、消去される。また、保存後クリア指定欄５４７を指定した場合には、保存設定指定欄５４８にメモリカード１６０へのデータの保存方法を指定することができる。
【０１４８】
さらに、情報付加部５５０において、日付付加チェックボックス５５１にチェックした場合には、１回分のデータが収集されるごとに日付を示すデータが付加され、時刻付加チェックボックス５５２にチェックした場合には、１回分のデータが収集されるごとに時刻を示すデータが付加される。
【０１４９】
使用者がＯＫボタン５１４をクリックすると、動作設定が確定され、キャンセルボタン５１５をクリックすると、動作設定が取り消される。
【０１５０】
使用者がレイアウト設定タブ５０４を選択すると、図１２または図１４示すレイアウト設定ウィンドウ５６０が表示される。レイアウト設定ウィンドウ５６０は、レイアウトモード設定部５６１、位置設定部５６４およびレイアウト設定部５７０を含む。
【０１５１】
レイアウトモード設定部５６１は、ロギング指定欄５６２および帳票ロギング指定欄５６３を有する。位置設定部５６４は、始点セル入力欄５６５、対象セル範囲表示部５６６およびプレビューボタン５６７を含む。始点セル入力欄５６５には、シート上でのレイアウトの対象となる範囲の始点セルの位置（左上の位置）を入力する。対象セル範囲表示部５６６には、シート上でのレイアウトの対象となる範囲の始点セルの位置および終点セルの位置（右下の位置）が表示される。プレビューボタン５６７をクリックすると、シート上でのレイアウトの対象となる範囲が色分けや枠線などにより明示される。
【０１５２】
使用者がレイアウトモード設定部５６１において帳票ロギング指定欄５６３を指定した場合には、図１２に示すように、レイアウト設定部５７０にデータ数入力欄５７１、ブロック設定ボタン５７２、ブロックレイアウト設定部５７３およびページレイアウト設定部５８０が表示される。
【０１５３】
使用者は、データ数入力欄５７１にデータの収集回数を示すデータ数を入力する。また、ブロック設定ボタン５７２をクリックと、図１３に示す帳票ロギング・ブロック設定ウィンドウ５９０が表示される。
【０１５４】
帳票ロギング・ブロック設定ウィンドウ５９０は、サイズ指定部５９１およびレイアウト指定部６００を含む。使用者は、サイズ指定部５９１の横サイズ入力欄５９２に横方向のセルの列数を入力し、縦サイズ入力欄５９３に縦方向のセルの行数を入力する。図８の例では、ブロックのセルが４列×２行に設定される。
【０１５５】
レイアウト指定部６００には、デバイス一覧表６０１、セル配置指定欄６０２、移動ボタン６０３，６０４およびレイアウト表示部６０５を含む。
【０１５６】
デバイス一覧表６０１には、図９のデバイス設定ウィンドウ５０２において設定されたデバイスの番号および名称、日付を示す記号「Ｄ」および時刻を示す記号「Ｔ」が表示される。また、レイアウト表示部６０５には、サイズ指定部５９１において指定された横方向のセルの列数および縦方向のセルの行数に基づいてブロックのセルレイアウト６０６が表示される。図１３の例では、４列×２行のセルレイアウト６０６が表示されている。
【０１５７】
デバイス一覧表６０１のデバイス、日付または時刻を指定し、移動ボタンをクリックすると、デバイス一覧表６０１で指定されたデバイス、日付または時刻がレイアウト表示部６０５のセルレイアウト６０６の各セルに順に移動する。それにより、セルレイアウト６０６のセルへデバイス、日付または時刻を順に割り付けることができる。
【０１５８】
セルレイアウト６０６のセルへのデバイス、日付または時刻の割り付け順序は、セル配置指定欄６０２により指定することができる。縦優先指定欄６０７を指定すると、デバイス、日付または時刻が縦方向に順に割り付けられ、横優先指定欄６０８を指定すると、デバイス、日付または時刻が横方向に順に割り付けられる。
【０１５９】
図１３の例では、セルレイアウト６０６の１行目のセルに左から右へ順に日付を示す記号「Ｄ」、時刻を示す記号「Ｔ」、デバイス番号「１」およびデバイス番号「２」が割り付けられ、２行目のセルに左から右へ順にブランク、ブランクおよびデバイス番号「３」が順に割り付けられている。この状態で、デバイス一覧表６０１のデバイス番号「４」のデバイスを指定して移動ボタン６０３をクリックすると、セルレイアウト６０６の２行目の右端のセルにデバイス番号「４」が割り付けられ、デバイス一覧表６０１のデバイス番号「４」のデバイスが消去される。
【０１６０】
移動ボタン６０４をクリックすることにより、セルレイアウト６０６に割り付けられたデバイス、日付または時刻をデバイス一覧表６０１に戻すことができる。
【０１６１】
使用者がＯＫボタン６０９をクリックすると、ブロック設定が確定されて図１２のレイアウト設定ウィンドウ５０４に戻る。使用者がキャンセルボタン６１０をクリックすると、ブロック設定が取り消されて図１２のレイアウト設定ウィンドウ５０４に戻る。
【０１６２】
次に、図１２のレイアウト設定部５７０のブロックレイアウト設定部５７３において、使用者は、横サイズ入力欄５７４に横方向のブロックの列数を入力し、縦サイズ入力欄５７５に縦方向のブロックの行数を入力する。図１２の例では、ページ内のブロックが２列×１０行に設定される。
【０１６３】
また、使用者は、横間隔入力欄５７６に横方向のブロック間の間隔を入力し、縦間隔入力欄５７７に縦方向のブロック間の間隔を入力する。図１２の例では、横方向のブロック間の間隔が１に設定され、縦方向のブロック間の間隔が１に設定される。さらに、使用者が方向指定欄５７８において「縦」を指定した場合には、複数のブロックへのデータの格納順序が縦方向に設定され、使用者が方向指定欄５７８において「横」を指定した場合には、複数のブロックへのデータの格納順序が横方向に設定される。
【０１６４】
次に、図１２のレイアウト設定部５７０のページレイアウト設定部５８０において、使用者は、横サイズ入力欄５８１に横方向のページの列数を入力し、縦サイズ入力欄５８２に縦方向のページの行数を入力する。図１２の例では、シート内のページが１列×１行に設定される。
【０１６５】
また、使用者は、横間隔入力欄５８３に横方向のページ間の間隔を入力し、縦間隔入力欄５８４に縦方向のページ間の間隔を入力する。図１２の例では、横方向のページ間の間隔が１に設定され、縦方向のページ間の間隔が１に設定される。さらに、使用者が方向指定欄５８５において「縦」を指定した場合には、複数のページへのデータの格納順序が縦方向に設定され、使用者が方向指定欄５８５において「横」を指定した場合には、複数のページへのデータの格納順序が横方向に設定される。
【０１６６】
使用者がＯＫボタン５１４をクリックすると、レイアウト設定が確定され、キャンセルボタン５１５をクリックすると、レイアウト設定が取り消される。
【０１６７】
使用者がレイアウトモード設定部５６１においてロギング指定欄５６２を指定した場合には、図１４に示すように、レイアウト設定部５７０に方向指定欄６１１およびデータ数入力欄６１２が表示される。
【０１６８】
使用者は、データ数入力欄６１２にデータの収集回数を示すデータ数を入力する。また、使用者が方向指定欄６１１において「縦」を指定した場合には、データ数入力欄６１２で指定された数のデータがデバイスごとに縦方向に並ぶレイアウトが設定される。使用者が方向指定欄６１１において「横」を指定した場合には、データ数入力欄６１２で指定された数のデータがデバイスごとに横方向に並ぶレイアウトが設定される。
【０１６９】
図１５および図１６は図１の設定データ生成装置２００による設定データ生成処理を示すフローチャートである。ここでは、設定データのデバイス設定情報、動作設定情報およびレイアウト設定情報のうちレイアウト設定情報の生成について説明する。
【０１７０】
まず、設定データ生成装置３００のＣＰＵ３５０は、使用者によるロギング設定を解析する（ステップＳ１１）。ロギング設定の解析では、ＣＰＵ３５０は、使用者によりレイアウト設定ウィンドウ５０４において設定されたレイアウトを左上セルから右下セルまで右方向に走査しつつ下方向へ移動して各セルに配置すべきデータを判定する。
【０１７１】
以下の説明では、設定されたシート数をａとし、シート数の変数をｋとする。また、設定された行数をｂとし、行数の変数をｊとする。さらに、設定された列数をｃとし、列数の変数をｉとする。
【０１７２】
ＣＰＵ３５０は、変数ｋを０に設定し（ステップＳ１２）、シートデータの生成を行う（ステップＳ１３）。シートデータは、対象となるシートの名前、番号および行数を含む。
【０１７３】
次に、ＣＰＵ３５０は、変数ｊを０に設定し（ステップＳ１４）、行データの生成を行う（ステップＳ１５）。行データは、対象となる行の番号およびセル数（列数）を含む。
【０１７４】
さらに、ＣＰＵ３５０は、変数ｉを０に設定し（ステップＳ１６）、セルデータの生成を行う（ステップＳ１７）。セルデータは、対象となるセルの列番号およびデータの詳細を生成する。ここで、データの詳細は、ロギング設定番号、デバイス番号、データ番号および保存形式を含む。
【０１７５】
次に、ＣＰＵ３５０は、当該行における全ての列の処理が終了したか否かを判別する（ステップＳ１８）。この場合、ＣＰＵ３５０は、変数ｉに１を加算し、変数ｉがｃ−１に達したか否かを判別する。全ての列の処理が終了していない場合には、ステップＳ１７に戻り、ステップＳ１７，Ｓ１８の処理を繰り返す。
【０１７６】
全ての列の処理が終了した場合には、ＣＰＵ３５０は、当該シートの全ての行の処理が終了したか否かを判別する（ステップＳ１９）。この場合、ＣＰＵ３５０は、変数ｊに１を加算し、変数ｊがｂ−１に達したか否かを判別する。全ての行の処理が終了していない場合には、ステップＳ１５に戻り、ステップＳ１５〜Ｓ１９の処理を繰り返す。
【０１７７】
全ての行の処理が終了した場合には、ＣＰＵ３５０は、全てのシートの処理が終了したか否かを判別する（ステップＳ２０）。この場合、ＣＰＵ３５０は、変数ｋに１を加算し、変数ｋがａ−１に達したか否かを判別する。全てのシートの処理が終了していない場合には、ステップＳ１３に戻り、ステップＳ１３〜Ｓ２０の処理を繰り返す。
【０１７８】
全てのシートの処理が終了した場合には、ＣＰＵ３５０は、ＣＳＶ形式のレイアウト設定情報（ＣＳＶデータ）の生成が選択されているか否かを判別する（ステップＳ２１）。ＣＳＶデータの生成が選択されている場合には、上記のシートデータ、行データおよびセルデータを含むＣＳＶ形式のレイアウト設定情報を外部記憶装置３８０に保存し、設定データ生成処理を終了する。
【０１７９】
上記のように、ＣＳＶ形式のレイアウト設定情報では、シートデータ、行データおよびセルデータが入れ子状態に配置される。
【０１８０】
ＨＴＭＬデータの生成が選択されている場合、すなわち、ＣＳＶデータの生成が選択されていない場合には、ＣＰＵ３５０は、ＨＴＭＬ保存処理を行う（ステップＳ２２）。このＨＴＭＬ保存処理では、ＣＰＵ３５０は、スプレッドシートプログラムによりＣＳＶデータをＨＴＭＬ形式で保存することによりＨＴＭＬ形式ファイルを得る。ＨＴＭＬ形式ファイルにおいては、各種タグからなるシート情報、行情報およびセル（列）情報によりデータのレイアウトが表される。ＨＴＭＬ形式ファイルには、レイアウト情報に加えて使用者がスプレッドシートプログラム上で指定した文字、フォント、罫線、グラフ等の付加情報が含まれる。また、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルを解析し、データを挿入すべき位置を判別する。
【０１８１】
まず、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルのシート情報のヘッダ部分をシートヘッダ文字列として生成する（ステップＳ２３）。次に、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルの行情報のヘッダ部分を行ヘッダ文字列として生成する（ステップＳ２４）。さらに、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルのセル情報のヘッダ部分をセルヘッダ文字列として生成する（ステップＳ２５）。
【０１８２】
次いで、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルのセル情報のフッタ部分をセルフッタ文字列として生成する（ステップＳ２６）。
【０１８３】
その後、ＣＰＵ３５０は、当該行の全ての列（セル）の処理が終了したか否かを判別する（ステップＳ２７）。全ての列の処理が終了していない場合には、ステップＳ２５に戻り、ステップＳ２５〜Ｓ２７の処理を繰り返す。
【０１８４】
全ての列の処理が終了した場合には、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルの行情報のフッタ部分を行フッタ文字列として生成する（ステップＳ２８）。
【０１８５】
その後、ＣＰＵ３５０は、当該シートの全ての行の処理が終了したか否かを判別する（ステップＳ２９）。全ての行の処理が終了していない場合には、ステップＳ２４に戻り、ステップＳ２４〜Ｓ２９の処理を繰り返す。
【０１８６】
全ての行の処理が終了した場合には、ＣＰＵ３５０は、ＨＴＭＬ形式ファイルのシート情報のフッタ部分をシートフッタ文字列として生成する（ステップＳ３０）。
【０１８７】
その後、ＣＰＵ３５０は、全てのシートの処理が終了したか否かを判別する（ステップＳ３１）。全てのシートの処理が終了していない場合には、ステップＳ２３に戻り、ステップＳ２３〜Ｓ３１の処理を繰り返す。
【０１８８】
全てのシートの処理が終了した場合には、上記のシートヘッダ文字列、行ヘッダ文字列、セルヘッダ文字列、セルフッタ文字列、行フッタ文字列およびシートフッタ文字列を含むＨＴＭＬ形式のレイアウト設定情報（ＨＴＭＬデータ）を外部記憶装置３８０に保存し、設定データ生成処理を終了する。
【０１８９】
図１７は使用者により設定されたレイアウトの一例を示す図である。図１８は図１７のレイアウトをスプレッドシートプログラムにおいてＨＴＭＬ形式で保存することにより得られるＨＴＭＬ形式ファイルを示す図である。図１９は図１７のレイアウトから生成されるＨＴＭＬ形式のレイアウト設定情報を示す図である。
【０１９０】
本例では、シートが１枚である場合を説明する。シートが複数枚の場合には、同様の処理が繰り返される。
【０１９１】
図１７の太線で囲まれた部分にロギング設定により２つのデバイス（横）および２つのデータ（縦）が設定されている。
【０１９２】
この場合、設定データ生成プログラム上では、シートデータ、行データ“１”、セルデータ“１１”、セルデータ“１２”、行データ“２”、セルデータ“２１”およびセルデータ“２２”が生成される。
【０１９３】
シートデータは、シートの名前“ｓｈｅｅｔ１”、シート番号“１”および行数“２”を含む。
【０１９４】
行データ“１”は、行番号“１”およびセル数“２”を含む。セルデータ“１１”は、ロギング設定番号“１”、デバイス番号“１”およびデータ番号“１”を含む。セルデータ“１２”は、ロギング設定番号“１”、デバイス番号“２”およびデータ番号“１”を含む。
【０１９５】
行データ“２”は、行番号“２”およびセル数“２”を含む。セルデータ“２１”は、ロギング設定番号“１”、デバイス番号“１”およびデータ番号“２”を含む。セルデータ“２２”は、ロギング設定番号“１”、デバイス番号“２”およびデータ番号“２”を含む。
【０１９６】
このようにして、シートデータ、行データ“１”、セルデータ“１１”、セルデータ“１２”、行データ“２”、セルデータ“２１”およびセルデータ“２２”からなるＣＳＶ形式のレイアウト設定情報が生成される。
【０１９７】
図１８に示すように、ＨＴＭＬ形式ファイルでは、図１７のレイアウトが各種タグにより表される。
【０１９８】
次に、ＨＴＭＬ形式のレイアウト設定情報を得る場合には、図１８のＨＴＭＬ形式ファイルから、図１９に示すように、シートヘッダ文字列ＳＨ、行ヘッダ文字列ＬＨ１、セルヘッダ文字列ＣＨ１１、セルフッタ文字列ＣＦ１１、セルヘッダ文字列ＣＨ１２、セルフッタ文字列ＣＦ１２、行フッタ文字列ＬＦ１、行ヘッダ文字列ＬＨ２、セルヘッダ文字列ＣＨ２１、セルフッタ文字列ＣＦ２１、セルヘッダ文字列ＣＨ２２、セルフッタ文字列ＣＦ２２、行フッタ文字列ＬＦ２およびシートフッタ文字列ＳＦが生成される。
【０１９９】
このようにして生成されたＣＳＶ形式またはＨＴＭＬ形式のレイアウト設定情報は、データ収集装置１００に転送され、設定データ記憶部１３０に記憶される。
【０２００】
図２０はデータ収集装置１００によるＣＳＶファイルの作成処理を示すフローチャートである。
【０２０１】
以下の説明において、「参照」とは、データ収集プログラムが設定データ記憶部１３０に記憶されたＣＳＶ形式のレイアウト設定情報にアクセスすることをいう。
【０２０２】
まず、ＣＰＵ１１０は、シートデータを参照する（ステップＳ４１）。次に、ＣＰＵ１１０は、新規に作成するファイルを開く（ステップＳ４２）。
【０２０３】
その後、ＣＰＵ１１０は、行データを参照する（ステップＳ４３）。次に、ＣＰＵ１１０は、セルデータを参照する（ステップＳ４４）。
【０２０４】
さらに、ＣＰＵ１１０は、ファイルに改行およびカンマを出力する（ステップＳ４５）。ＣＳＶ形式のデータでは、改行およびカンマによって位置を特定する。ここでは、前回出力したデータの位置から今回出力すべきデータの位置までの差分を改行およびカンマで埋める。例えば、前回出力したデータの座標（Ｘ，Ｙ）が（２，１）であり、今回出力すべきデータの座標（Ｘ，Ｙ）が（４，１０）である場合、９個の改行および４個のカンマを出力する。
【０２０５】
次に、ＣＰＵ１１０は、収集データ記憶部１７０に記憶されたデータをファイルに出力する（ステップＳ４６）。
【０２０６】
その後、ＣＰＵ１１０は、当該行の全ての列（セル）の処理が終了したか否かを判別する（ステップＳ４７）。全ての列の処理が終了してない場合には、ステップＳ４４に戻り、ステップＳ４４〜Ｓ４７の処理を繰り返す。
【０２０７】
全ての列の処理が終了した場合には、ＣＰＵ１１０は、当該シートの全ての行の処理が終了したか否かを判別する（ステップＳ４８）。全ての行の処理が終了していない場合には、ステップＳ４３に戻り、ステップＳ４３〜Ｓ４８の処理を繰り返す。
【０２０８】
全ての行の処理が終了した場合には、ＣＰＵ１１０は、ファイルを閉じる（ステップＳ４９）。その後、ＣＰＵ１１０は、全てのシートの処理が終了したか否かを判別する（ステップＳ５０）。全てのシートの処理が終了していない場合には、ステップＳ４１に戻り、ステップＳ４１〜Ｓ５０の処理を繰り返す。
【０２０９】
全てのシートの処理が終了した場合には、作成されたＣＳＶファイルをメモリカード１６０に保存し、ＣＳＶファイル作成処理を終了する。
【０２１０】
図１６はデータ収集装置１００によるＨＴＭＬファイル作成処理を示すフローチャートである。
【０２１１】
ＨＴＭＬファイル作成処理では、データ収集プログラムが設定データ記憶部１３０に記憶されたＨＴＭＬ形式のレイアウト設定情報を用いる。
【０２１２】
ＣＰＵ１１０は、新規に作成するファイルを開く（ステップＳ６１）。次に、ＣＰＵ１１０は、ファイルにレイアウト設定情報のシ−トヘッダ文字列を出力する（ステップＳ６２）。
【０２１３】
さらに、ＣＰＵ１１０は、ファイルにレイアウト設定情報の行ヘッダ文字列を出力する（ステップＳ６３）。次に、ＣＰＵ１１０は、ファイルにレイアウト設定情報のセルヘッダ文字列を出力する（ステップＳ６４）。
【０２１４】
その後、ＣＰＵ１１０は、収集データ記憶部１７０に記憶されたデータをファイルに出力する（ステップＳ６５）。次に、ＣＰＵ１１０は、ファイルにレイアウト設定情報のセルフッタ文字列を出力する（ステップＳ６６）。
【０２１５】
その後、ＣＰＵ１１０は、当該行の全ての列の処理が終了したか否かを判別する（ステップＳ６７）。全ての列の処理が終了していない場合には、ステップＳ６４に戻り、ステップＳ６４〜Ｓ６７の処理を繰り返す。
【０２１６】
全ての列の処理を終了した場合には、ＣＰＵ１１０は、ファイルにレイアウト設定情報の行フッタ文字列を出力する（ステップＳ６８）。その後、ＣＰＵ１１０は、当該シートの全ての行の処理が終了したか否かを判別する（ステップＳ６９）。全ての行の処理が終了していない場合には、ステップＳ６３に戻り、ステップＳ６３〜Ｓ６９の処理を繰り返す。
【０２１７】
全ての行の処理が終了した場合には、ＣＰＵ１１０は、ファイルにレイアウト設定情報のシートフッタ文字列を出力する（ステップＳ７０）。その後、ＣＰＵ１１０は、全てのシートの処理が終了したか否かを判別する（Ｓステップ７１）。全てのシートの処理が終了していない場合には、ステップＳ６２に戻り、ステップＳ６２〜Ｓ７１の処理を繰り返す。
【０２１８】
全てのシートの処理が終了した場合には、ＣＰＵ１１０は、ファイルを閉じ（ステップＳ７２）、作成されたＨＴＭＬファイルをメモリカード１６０に保存し、ＨＴＭＬファイル作成処理を終了する。
【０２１９】
図２２は設定データ生成装置３００により使用者が設定したデータのレイアウトの一例を示す図である。
【０２２０】
図２２の例では、各ブロックが「日付」、「時刻」、「ブランク」、「ブランク」、「ＤＡＴＡ１」、「ＤＡＴＡ２」、「ＤＡＴＡ３」および「ＤＡＴＡ４」を格納する４列２行のセルからなり、２０個のブロックが２列１０行に配列されている。データは１列目のブロックに縦方向の順序で入力された後、２列目のブロックに縦方向の順序で入力される。また、文字、フォント、罫線等の付加情報が与えられている。
【０２２１】
図２３は図２２のレイアウトをスプレッドシートプログラムにおいてＨＴＭＬ形式で保存することにより得られるＨＴＭＬ形式ファイルの一部を示す図である。
【０２２２】
図２３に示すように、ＨＴＭＬ形式ファイルにおいて、図２２のレイアウトが各種タグにより表されている。
【０２２３】
図２４は図２２のレイアウトに対応するレイアウト設定情報およびデータ収集装置１００により収集されたデータから得られたＣＳＶファイルの一部を示す図である。
【０２２４】
図２４に示すように、ＣＳＶファイルでは、収集されたデータのレイアウトが改行およびカンマで定義されている。
【０２２５】
図２５は図２２のレイアウトに対応するレイアウト設定情報およびデータ収集装置１００により収集されたデータから得られたＨＴＭＬファイルの一部を示す図である。
【０２２６】
図２５に示すように、ＨＴＭＬファイルでは、収集されたデータのレイアウトが各種タグにより定義されている。
【０２２７】
図２６は図２４のＣＳＶファイルを汎用のスプレッドシートプログラムで開いた場合の表示を示す図である。
【０２２８】
図２６に示すように、データ収集装置１００により収集されたデータが日付および時刻とともに、図２２のレイアウトで表示されている。
【０２２９】
図２７は図２５のＨＴＭＬファイルを汎用のスプレッドシートプログラムで開いた場合の表示を示す図である。
【０２３０】
図２７に示すように、データ収集装置１００により収集されたデータが日付および時刻とともに、図２２のレイアウトで表示され、かつ文字、フォント、罫線等の付加情報が与えられている。
【０２３１】
このように、データ収集装置１００により収集されたデータを予め設定したレイアウトで汎用のスプレッドシートプログラムに取り込むことができる。したがって、使用者が収集されたデータのレイアウトを指定するための作業が軽減される。
【０２３２】
なお、本実施の形態では、データ収集装置１００に外部機器としてプログラマブルコントローラ２００が接続されているが、データ収集装置１００に接続する外部機器はこれに限定されず、表示器等の他の外部機器を接続してもよい。
【０２３３】
また、本実施の形態では、データ記憶装置１１１が収集データ記憶部１７０に記憶されたデータをメモリカード１６０へ記録する際に、メモリカード１６０内にダミーデータｄｋによるファイルＦｉを作成し、作成されたファイルＦｉ内のダミーデータｄｋをレイアウトが定義されたデータで置換しているが、これに限らず、メモリカード１６０内に予めレイアウトが定義されたダミーデータｄｋによるファイルＦｉを作成し、作成されたファイルＦｉ内のダミーデータｄｋをレイアウトが定義されていないデータで置換してもよい。
【０２３４】
本実施の形態では、通信制御部１４０が情報取得手段に相当し、設定データ記憶部１３０が情報記憶手段に相当し、ＣＰＵ１１０および通信制御部１４０がデータ収集手段に相当し、収集データ記憶部１７０がデータ記憶手段に相当し、ＣＰＵ１１０および通信制御部１４０が制御手段に相当する。
【０２３５】
また、シートデータ、行データおよびセルデータまたはシートヘッダ文字列、シートフッタ文字列、行ヘッダ文字列、行フッタ文字列、セルヘッダ文字列およびセルフッタ文字列が整列情報に相当する。さらに、ブランク（空白）が他のデータに相当し、カンマおよび改行が挿入情報に相当する。また、文字、フォント、罫線およびグラフが付加情報に相当する。
【図面の簡単な説明】
【図１】本発明の一実施の形態に係るデータ収集装置を用いたデータ収集システムの構成を示すブロック図である。
【図２】ＦＡＴを用いて作成されたファイルの構成を示す概念図である。
【図３】図１のＣＰＵが収集データをＦＡＴを用いたファイルシステムによりメモリカードへ記録する際の従来の記録動作を示すフローチャートである。
【図４】従来の記録動作によりメモリカード内にデータのファイルが作成される様子を示す概念図である。
【図５】本実施の形態に係るデータ記録プログラムに基づいて図１のＣＰＵがデータをＦＡＴを用いたファイルシステムによりメモリカードへ記録する際の記録動作を示すフローチャートである。
【図６】本実施の形態に係るデータ記録プログラムを実行した場合にメモリカード内にデータのファイルが作成される様子を示す概念図である。
【図７】図１のデータ収集システムの全体の動作を示すフローチャートである。
【図８】図１の設定データ生成装置によるレイアウト設定方法を示す図である。
【図９】ロギング設定時に図１の設定データ生成装置のディスプレイに表示されるデバイス設定ウィンドウを示す図である。
【図１０】ロギング設定時に図１の設定データ生成装置のディスプレイに表示されるデバイス追加ウィンドウを示す図である。
【図１１】ロギング設定時に図１の設定データ生成装置のディスプレイに表示される動作設定ウィンドウを示す図である。
【図１２】ロギング設定時に図１の設定データ生成装置のディスプレイに表示されるレイアウト設定ウィンドウを示す図である。
【図１３】ロギング設定時に図１の設定データ生成装置のディスプレイに表示される帳票ロギング・ブロック設定ウィンドウを示す図である。
【図１４】ロギング設定時に図１の設定データ生成装置のディスプレイに表示されるレイアウト設定ウィンドウを示す図である。
【図１５】図１の設定データ生成装置による設定データ生成処理を示すフローチャートである。
【図１６】図１の設定データ生成装置による設定データ生成処理を示すフローチャートである。
【図１７】使用者により設定されたレイアウトの一例を示す図である。
【図１８】図１７のレイアウトをスプレッドシートプログラムにおいてＨＴＭＬ形式で保存することにより得られるＨＴＭＬ形式ファイルを示す図である。
【図１９】図１７のレイアウトから生成されるＨＴＭＬ形式のレイアウト設定情報を示す図である。
【図２０】データ収集装置によるＣＳＶファイルの作成処理を示すフローチャートである。
【図２１】データ収集装置によるＨＴＭＬファイル作成処理を示すフローチャートである。
【図２２】設定データ生成装置により使用者が設定したデータのレイアウトの一例を示す図である。
【図２３】図２２のレイアウトをスプレッドシートプログラムにおいてＨＴＭＬ形式で保存することにより得られるＨＴＭＬ形式ファイルの一部を示す図である。
【図２４】図２２のレイアウトに対応するレイアウト設定情報およびデータ収集装置により収集されたデータから得られたＣＳＶファイルの一部を示す図である。
【図２５】図２２のレイアウトに対応するレイアウト設定情報およびデータ収集装置により収集されたデータから得られたＨＴＭＬファイルの一部を示す図である。
【図２６】図２４のＣＳＶファイルを汎用のスプレッドシートプログラムで開いた場合の表示を示す図である。
【図２７】図２５のＨＴＭＬファイルを汎用のスプレッドシートプログラムで開いた場合の表示を示す図である。
【符号の説明】
１００  データ収集装置
１１０，３５０  ＣＰＵ
１１１  データ記録装置
１２０  プログラム記憶部
１３０  設定データ記憶部
１４０  通信制御部
１５０  メモリカードコネクタ
１６０  メモリカード
１７０  収集データ記憶部
２００  プログラマブルコントローラ
３００  設定データ生成装置
３１０  通信制御部
３２０  ディスプレイ
３３０  入力装置
３４０  ＲＯＭ
３６０  ＲＡＭ
３７０  記録媒体駆動装置
３７１  記録媒体
３８０  外部記憶装置
５０１  ロギング設定ウィンドウ
５０２  デバイス設定タブ
５０３  動作設定タブ
５０４  レイアウト設定タブ
Ｄａ  データ領域
Ｆａ  ＦＡＴ領域
Ｆｉ  ファイル
ＢＬ  ブロック
ＰＧ  ページ
ＳＨ  シート
ｄ  データ
ｄｋ  ダミーデータ
ｄｆ  ＦＡＴデータ
【図１】
2004258798.tif 000003
【図２】
2004258798.tif 000004
【図３】
2004258798.tif 000005
【図４】
2004258798.tif 000006
【図５】
2004258798.tif 000007
【図６】
2004258798.tif 000008
【図７】
2004258798.tif 000009
【図８】
2004258798.tif 000010
【図９】
2004258798.tif 000011
【図１０】
2004258798.tif 000012
【図１１】
2004258798.tif 000013
【図１２】
2004258798.tif 000014
【図１３】
2004258798.tif 000015
【図１４】
2004258798.tif 000016
【図１５】
2004258798.tif 000017
【図１６】
2004258798.tif 000018
【図１７】
2004258798.tif 000019
【図１８】
2004258798.tif 000020
【図１９】
2004258798.tif 000021
【図２０】
2004258798.tif 000022
【図２１】
2004258798.tif 000023
【図２２】
2004258798.tif 000024
【図２３】
2004258798.tif 000025
【図２４】
2004258798.tif 000026
【図２５】
2004258798.tif 000027
【図２６】
2004258798.tif 000028
【図２７】
2004258798.tif 000029