(57)【特許請求の範囲】
【請求項１】
ＦＡネットワークを介してプログラマブルロジックコントローラに接続し、上記プログラマブルロジックコントローラのデータを管理するデータ管理装置におけるデータ管理方法において、
上記プログラマブルロジックコントローラに対する各処理の開始タイミングを示す複数のトリガのそれぞれに対して、トリガを発生するためのトリガ種別実行プログラムと一意のトリガＩＤとを対応させて設定し、
上記プログラマブルロジックコントローラに対する各処理の実際の内容を示す複数のアクションのそれぞれに対して、アクションを実行するためのアクション種別実行プログラムと一意のアクションＩＤとを対応させて設定し、
上記複数のトリガの中から発生させるトリガが選択され、そのトリガが発生したときに実行するアクションが選択され、その選択されたトリガとアクションとの組み合わせを上記トリガＩＤと上記アクションＩＤとを対応させて記憶することにより、ジョブを設定し、
上記トリガ種別実行プログラムを起動して実行することによって、対応するトリガＩＤを付加したトリガを発生し、そのトリガＩＤを元に上記設定したジョブを検索して対応するアクションＩＤを特定し、その特定のアクションＩＤに対応するアクション種別実行プログラムを実行して、上記ジョブ設定にしたがって所望のアクションを自動実行する
ことを特徴とするデータ管理方法。
【請求項２】
ＦＡネットワークを介してプログラマブルロジックコントローラに接続し、上記プログラマブルロジックコントローラのデータを管理するデータ管理装置において、
上記プログラマブルロジックコントローラに対する各処理の開始タイミングを示す複数のトリガのそれぞれに対して、トリガを発生するためのトリガ種別実行プログラムと一意のトリガＩＤとを対応させて設定するトリガ設定手段と、
上記プログラマブルロジックコントローラに対する各処理の実際の内容を示す複数のアクションのそれぞれに対して、アクションを実行するためのアクション種別実行プログラムと一意のアクションＩＤとを対応させて設定するアクション設定手段と、
上記複数のトリガのいずれかのトリガと、そのトリガが発生したときに実行するアクションとの組み合わせのジョブを、上記トリガＩＤと上記アクションＩＤとを対応付けて設定し、それを記憶するジョブ設定手段と、
上記トリガ設定手段からトリガ種別実行プログラムを読み出し、そのトリガ種別実行プログラムを実行することによって対応するトリガＩＤを付加してイベント通知をし、イベント通知によりそのトリガＩＤを元に上記ジョブ設定手段を検索することによって対応するアクションＩＤを取得し、上記アクション設定手段から取得した特定のアクションＩＤに対応するアクション種別実行プログラムを取得し、そのアクション種別実行プログラムの実行処理を行う制御手段と、
を具備することを特徴とするデータ管理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、データ管理方法、データ管理装置及びそれらの記録媒体に関し、詳しくは、ＰＬＣ（プログラマブルロジックコントローラ）と該ＰＬＣから収集したデータを蓄積するデータベース若しくは該ＰＬＣの制御に係るアプリケーションとの間のデータの流れの制御を、トリガとアクションとの対応付け設定により自動実行するようにしたデータ管理方法、データ管理装置及びそれらの記録媒体に関する。
【０００２】
【従来の技術】
最近のＦＡ（ファクトリオートメーション）でのアプリケーションでは、「何か必要なタイミング」が発生したときに、「それに対応するする処理」を実行するという形で構築される場合が多い。
【０００３】
例えば、
１）所定の時間が経過する毎にＰＬＣのデータをユーザが指定する形で収集してデータベースに蓄積する
２）ＰＬＣによる生産が開始される時に、レシピデータ、マスタデータ、作業指示等の必要なデータを検索してＰＬＣにダウンロードする
という形でアプリケーションが構築される。
【０００４】
【発明が解決しようとする課題】
しかし、上記アプリケーションのプログラミングは、「何か必要なタイミング」が発生したとき、すなわち、トリガが発生したとき、「それに対応するする処理」を実行する、すなわち、アクションを実行するというように、各トリガ種別、各アクション種別に対応してそれぞれ別々にプログラミングしており、また、この種のプログラミングにおいては他のユーザアプリケーションとの連携が要求されることも多いので、その結果、この種のアプリケーションの開発コストが高くなり、また、処理変更時の対応にも時間がかかるという問題があった。
【０００５】
そこで、この発明は、トリガ種別やアクション種別が増加しても容易に対応することができ、しかもその開発コストも低く抑えることのできるデータ管理方法、データ管理装置及びそれらの記録媒体を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、請求項１記載の発明は、ＦＡネットワークを介してプログラマブルロジックコントローラに接続し、上記プログラマブルロジックコントローラのデータを管理するデータ管理装置におけるデータ管理方法において、上記プログラマブルロジックコントローラに対する各処理の開始タイミングを示す複数のトリガのそれぞれに対して、トリガを発生するためのトリガ種別実行プログラムと一意のトリガＩＤとを対応させて設定し、上記プログラマブルロジックコントローラに対する各処理の実際の内容を示す複数のアクションのそれぞれに対して、アクションを実行するためのアクション種別実行プログラムと一意のアクションＩＤとを対応させて設定し、上記複数のトリガの中から発生させるトリガが選択され、そのトリガが発生したときに実行するアクションが選択され、その選択されたトリガとアクションとの組み合わせを上記トリガＩＤと上記アクションＩＤとを対応させて記憶することにより、ジョブを設定し、上記トリガ種別実行プログラムを起動して実行することによって、対応するトリガＩＤを付加したトリガを発生し、そのトリガＩＤを元に上記設定したジョブを検索して対応するアクションＩＤを特定し、その特定のアクションＩＤに対応するアクション種別実行プログラムを実行して、上記ジョブ設定にしたがって所望のアクションを自動実行する。
【０００７】
また、請求項２記載の発明は、ＦＡネットワークを介してプログラマブルロジックコントローラに接続し、上記プログラマブルロジックコントローラのデータを管理するデータ管理装置において、上記プログラマブルロジックコントローラに対する各処理の開始タイミングを示す複数のトリガのそれぞれに対して、トリガを発生するためのトリガ種別実行プログラムと一意のトリガＩＤとを対応させて設定するトリガ設定手段と、上記プログラマブルロジックコントローラに対する各処理の実際の内容を示す複数のアクションのそれぞれに対して、アクションを実行するためのアクション種別実行プログラムと一意のアクションＩＤとを対応させて設定するアクション設定手段と、上記複数のトリガのいずれかのトリガと、そのトリガが発生したときに実行するアクションとの組み合わせのジョブを、上記トリガＩＤと上記アクションＩＤとを対応付けて設定し、それを記憶するジョブ設定手段と、上記トリガ設定手段からトリガ種別実行プログラムを読み出し、そのトリガ種別実行プログラムを実行することによって対応するトリガＩＤを付加してイベント通知をし、イベント通知によりそのトリガＩＤを元に上記ジョブ設定手段を検索することによって対応するアクションＩＤを取得し、上記アクション設定手段から取得した特定のアクションＩＤに対応するアクション種別実行プログラムを取得し、そのアクション種別実行プログラムの実行処理を行う制御手段と、を具備する。
【００１１】
【発明の実施の形態】
以下、この発明に係るデータ管理方法、データ管理装置及びそれらの記録媒体の一実施の形態を添付図面を参照して詳細に説明する。
【００１２】
図１は、この発明に係るデータ管理方法、データ管理装置及びそれらの記録媒体を適用して構成したデータフロー制御システムの一実施の形態を示すシステム構成図である。
【００１３】
図１において、このデータフロー制御システムは、ＦＡネットワーク３０に接続された複数のＰＬＣ２０−１、２０−２と、データファイル４０およびユーザアプリケーション５０との間にデータフロー制御装置１０を接続し、このデータフロー制御装置１０は、各種トリガと該トリガに対応する各種アクションとを対応付けて設定し、トリガの発生に対応して該トリガに対応する所望のアクションを自動実行することにより、複数のＰＬＣ２０−１、２０−２とデータファイル４０およびユーザアプリケーション５０との間のデータの流れを制御するように構成される。
【００１４】
ここで、データフロー制御装置１０は、ＦＡパーソナルコンピュータ（ＦＡパソコン）から構成され、複数のＰＬＣ２０−１、２０−２とデータファイル４０およびユーザアプリケーション５０との間のミドルウエアとして機能し、各種トリガの発生により起動され、複数のＰＬＣ２０−１、２０−２から収集したデータをデータファイル４０に格納したり、ユーザアプリケーション５０に通知したりする処理、およびデータファイル４０およびユーザアプリケーション５０のデータを複数のＰＬＣ２０−１、２０−２にダウンロードする処理等をユーザの設定に対応して自動実行する。
【００１５】
図２は、図１に示したデータフロー制御装置の詳細構成を示すブロック図である。
【００１６】
図２において、このデータフロー制御装置１０は、このデータフロー制御装置１０に対する各種設定を行う装置設定ツール１１、装置設定ツール１１で設定された設定内容を格納する設定テーブル１２、このデータフロー制御装置１０によるデータ転送のタグの設定を行うタグ設定ツール１３、タグ設定ツール１３で設定されたタグを格納するタグデータベース１４、このデータフロー制御装置１０によるデータ流れ制御のサービスを実行するサービス処理部１５を具備して構成される。
【００１７】
ここで、サービス処理部１５は、このデータフロー制御装置１０によるデータ流れ制御を実行する制御モジュール１６、各種トリガを発生するトリガモジュール１７、各種アクションを実行するアクションモジュール１８を具備して構成される。
【００１８】
また、サービス処理部１５の制御モジュール１６に対して、ユーザアプリケーション５０からデータ収集開始、停止等の指令が通知され、トリガモジュール１７に対して、ユーザアプリケーション５０からトリガ発生等の指令が通知され、アクションモジュール１８からユーザアプリケーション５０に対してアプリケーションの通知（アプリ通知）がなされる。
【００１９】
また、アクションモジュール１８は、ユーザデータファイル４０との間でデータの送受を行う。
【００２０】
また、サービス処理部１５は、ゲートウエイ６０を介して複数のＰＬＣ２０−１、２０−２との間でデータの送受を行う。
【００２１】
ここで、サービス処理部１５によるサービスは、データのロギング処理、ダウンロード処理等を実現する。すなわち、サービス処理部１５では、あるトリガが発生したときに、そのトリガに対応するアクションを実行する。これにより
１）ＰＬＣ２０−１、２０−２のデータをユーザデータファイル４０に格納する
２）ユーザ作成のデータベースを、指定した条件で検索し、その結果をＰＬＣ２０−１、２０−２に書込む
３）トリガが発生した際に、アクションとしてユーザアプリケーション５０に通知する
等の処理を実現する。
【００２２】
また、装置設定ツール１１は、
１）サービス処理部１５のサービスに必要な設定データの登録
２）サービス処理部１５のサービスの開始、停止
３）あるトリガとそのときにロギングするアクション（作業）のまとまりの単位であるジョブの登録、開始、終了
等の機能を提供する。
【００２３】
また、タグ設定ツール１３は、
１）対象機器の変数エリアに対するタグの設定
２）対象機器との間でのイベントメモリのマッピングの設定
等の機能を提供する。
【００２４】
また、タグデータベース１４は、タグ設定ツール１３で設定したタグ情報を格納するデータベースである。
【００２５】
また、設定テーブル１２は、サービス処理部１５のサービスの実行に必要なデータの集まりを格納するデータベースである。
【００２６】
また、ユーザデータファイル４０は、実際にデータがロギングされるデータが格納されるデータベース、またはダウンロードするデータが格納されるデータベースである。このデータベースのテーブル構成（スキーマ）は、ユーザが設計、作成することができる。
【００２７】
図３は、図２に示したデータフロー制御装置の詳細動作を示す機能ブロック図である。
【００２８】
図３において、トリガ設定部１１１は、トリガ種別の設定プログラム、すなわち、トリガ種別１設定プログラム１５１−１、トリガ種別２設定プログラム１５１−２、トリガ種別３設定プログラム１５１−３を実行し、その結果をトリガ設定データベース（トリガ設定ＤＢ）１２１に設定する。
【００２９】
また、ジョブ設定部１１２は、トリガとアクションを対応付けたジョブをジョブ設定データベース（ジョブ設定ＤＢ）１２２に設定する。
【００３０】
アクション設定部１１３は、アクション種別の設定プログラム、すなわち、アクション種別１設定プログラム１５２−１、アクション種別２設定プログラム１５２−２、アクション種別３設定プログラム１５２−３を実行し、その結果をアクション設定データベース（アクション設定ＤＢ）１２３に設定する。
【００３１】
トリガ起動部１５１は、トリガ設定データベース（トリガ設定ＤＢ）１２１に設定されたトリガおよびジョブ設定データベース（ジョブ設定ＤＢ）１２２に設定されたジョブを読み込み、トリガ種別の実行プログラム、すなわち、トリガ種別１実行プログラム１５３−１、トリガ種別２実行プログラム１５３−２、トリガ種別３実行プログラム１５３−３、トリガ種別４実行プログラム１５３−４に対してその開始／停止の指令を通知する。
【００３２】
トリガ種別１実行プログラム１５３−１、トリガ種別２実行プログラム１５３−２、トリガ種別３実行プログラム１５３−３、トリガ種別３実行プログラム１５３−４の実行により、イベントが発生すると、そのイベントをフローコントロール部１５２に通知する。
【００３３】
イベントを実行するフローコントロール部１５２は、アクション設定データベース（アクション設定ＤＢ）１２３に設定されたアクションおよびジョブ設定データベース（ジョブ設定ＤＢ）１２２に設定されたジョブを読み込み、アクション種別の実行プログラム、すなわち、アクション種別１実行プログラム１５４−１、アクション種別２実行プログラム１５４−２、アクション種別３実行プログラム１５４−３、アクション種別４実行プログラム１５４−４に対してその実行の指令を通知する。
【００３４】
図４は、図３に示したジョブ設定データベース（ジョブ設定ＤＢ）の一例を示す図である。
【００３５】
図４において、ジョブ設定データベース（ジョブ設定ＤＢ）１２２は、ジョブテーブル１２２−１を具備して構成される。
【００３６】
図４に示すジョブテーブル１２２−１は、トリガＩＤに対してアクションＩＤが対応して記憶されるテーブルである。
【００３７】
すなわち、図４に示すジョブテーブル１２２−１においては、トリガＩＤ「１００」に対してアクションＩＤ「２００」が設定され、トリガＩＤ「１００」に対してアクションＩＤ「２１０」が設定され、トリガＩＤ「１１０」に対してアクションＩＤ「２３０」が設定されていることを示している。
【００３８】
図５は、図３に示したトリガ設定データベース（トリガ設定ＤＢ）の一例を示す図である。
【００３９】
図５において、トリガ設定データベース（トリガ設定ＤＢ）１２１は、トリガテーブル１２１−１、トリガプログラム情報テーブル１２１−２、トリガ種別ごとのテーブル１２１−３を具備して構成される。
【００４０】
図５に示すトリガテーブル１２１−１は、トリガＩＤに対してトリガ名、トリガ種別ＩＤが対応して記憶されるテーブルである。
【００４１】
すなわち、図５に示すトリガテーブル１２１−１においては、トリガＩＤ「１００」に対してトリガ名「３０秒ごと」、トリガ種別ＩＤ「１」が設定され、トリガＩＤ「１１０」に対してトリガ名「生産開始」、トリガ種別ＩＤ「３」が設定されていることを示している。
【００４２】
また、図５に示すトリガプログラム情報テーブル１２１−２は、トリガ種別ＩＤに対してトリガ種別名、設定プログラム、実行プログラムが対応して記憶されるテーブルである。
【００４３】
すなわち、図５に示すトリガプログラム情報テーブル１２１−２においては、トリガ種別ＩＤ「１」に対してトリガ種別名「定周期」、設定プログラム「ＳｅｔＣｙｃｌｉｃ」、実行プログラム「ＣｙｃｌｉｃＥｘｅ」が設定され、トリガ種別ＩＤ「２」に対してトリガ種別名「指定時刻」、設定プログラム「ＳｅｔＴｉｍｅ」、実行プログラム「ＴｉｍｅＥｘｅ」が設定され、トリガ種別ＩＤ「３」に対してトリガ種別名「条件一致」、設定プログラム「ＳｅｔＴａｇ」、実行プログラム「ＴａｇＥｘｅ」が設定されていることを示している。
【００４４】
また、図５に示すトリガ種別ごとのテーブル１２１−３は、定周期トリガ用のテーブルを示すもので、トリガＩＤに対して定周期が対応して記憶されるテーブルである。
【００４５】
すなわち、図５に示すトリガ種別ごとのテーブル１２１−３においては、トリガＩＤ「１００」に対して定周期「０：０：３０」が設定され、トリガＩＤ「１０１」に対して定周期「０：１：０」が設定されていることを示している。
【００４６】
図６は、図３に示したアクション設定データベース（アクション設定ＤＢ）の一例を示す図である。
【００４７】
図６において、アクション設定データベース（アクション設定ＤＢ）１２３は、アクションテーブル１２３−１、アクションプログラム情報テーブル１２３−２、アクション種別ごとのテーブル１２３−３を具備して構成される。
【００４８】
図６に示すアクションテーブル１２３−１は、アクションＩＤに対してアクション名、アクション種別ＩＤが対応して記憶されるテーブルである。
【００４９】
すなわち、図６に示すアクションテーブル１２３−１においては、アクションＩＤ「２００」に対してアクション名「実績データ収集」、アクション種別ＩＤ「１」が設定され、アクションＩＤ「２１０」に対してアクション名「設備異常」、アクション種別ＩＤ「１」が設定され、アクションＩＤ「２３０」に対してアクション名「指示ダウンロード」、アクション種別ＩＤ「３」が設定されていることを示している。
【００５０】
また、図６に示すアクションプログラム情報テーブル１２３−２は、アクション種別ＩＤに対してアクション種別名、設定プログラム、実行プログラムが対応して記憶されるテーブルである。
【００５１】
すなわち、図６に示すアクションプログラム情報テーブル１２３−２においては、アクション種別ＩＤ「１」に対してアクション種別名「データ収集（ファイル）」、設定プログラム「ＳｅｔＣｏｌｌｅｃｔＦｉｌｅ」、実行プログラム「ＣｏｌｌｅｃｔＦｉｌｅＥｘｅ」が設定され、アクション種別ＩＤ「２」に対してアクション種別名「データ収集（ＤＢ）」、設定プログラム「ＳｅｔＣｏｌｌｅｃｔＤＢ」、実行プログラム「ＣｏｌｌｅｃｔＤＢＥｘｅ」が設定され、アクション種別ＩＤ「３」に対してアクション種別名「データダウンロード」、設定プログラム「ＳｅｔＤｏｗｎＬｏａｄＦｉｌｅ」、実行プログラム「ＤｏｗｎＬｏａｄＦｉｌｅＥｘｅ」が設定されていることを示している。
【００５２】
また、図６に示すアクション種別ごとのテーブル１２３−３は、データ収集用のテーブルを示すもので、アクションＩＤに対してデータ収集ファイル、収集内容が対応して記憶されるテーブルである。
【００５３】
すなわち、図６に示すアクション種別ごとのテーブル１２３−３においては、アクションＩＤ「２００」に対してデータ収集ファイル「Ｃｏｌｌｅｃｔ１．ｌｏｇ」が設定されていることを示している。
【００５４】
図７は、図３に示したトリガ設定部の処理を示すフローチャートである。
【００５５】
図７において、図３に示したトリガ設定部１１１の処理が開始されると、まず、図５に示したトリガプログラム情報テーブル１２１−２に登録されているトリガ種別名から１つをユーザに選択させる（ステップ２０１）。
【００５６】
そして、登録されたトリガ種別名に対応する設定プログラムを実行する（ステップ２０２）。その後、このジョブ設定部１１１の処理を終了する。
【００５７】
図８は、図７に示した処理で選択された種別ごとのトリガ設定プログラムにより実行される処理の一例を示すフローチャートである。
【００５８】
なお、図８に示す処理は、トリガ種別が「定周期」の場合の設定プログラムにより実行される処理を示している。
【００５９】
図８において、この処理が開始されると、まず、トリガ名を入力する（ステップ２１１）。次に、定周期で発生させる間隔を入力する（ステップ２１２）。
【００６０】
そして、図５に示したトリガテーブル１２１−１を設定する（ステップ２１３）。ここで、トリガ名は、本プログラムで入力したトリガの名前、すなわちステップ２１１で入力されたトリガ名に設定され、トリガＩＤは、一意のＩＤを生成して設定され、トリガ種別は、定周期をあらわす種別ＩＤに設定される。
【００６１】
次に、図５に示したトリガ種別ごとのテーブル（定周期トリガテーブル）１２１−３を設定する（ステップ２１４）。ここで、トリガＩＤは、トリガテーブル１２１−１に設定したトリガＩＤと同じＩＤ、すなわち、ステップ２１３で設定したＩＤと同じＩＤが設定され、定周期は、ステップ２１２で入力された定周期の値が設定される。その後、この処理を終了する。
【００６２】
図９は、図３に示したアクション設定部の処理を示すフローチャートである。
【００６３】
図９において、図３に示したアクション設定部１１３の処理が開始されると、まず、図６に示したアクションプログラム情報テーブル１２３−２に登録されているアクション種別名から１つをユーザに選択させる（ステップ２２１）。
【００６４】
そして、登録されたアクション種別名に対応する設定プログラムを実行する（ステップ２０２）。その後、このアクション設定部１１３の処理を終了する。
【００６５】
図１０は、図９に示した処理で選択された種別ごとのアクション設定プログラムにより実行される処理の一例を示すフローチャートである。
【００６６】
なお、図１０に示す処理は、アクション種別が「収集」の場合の設定プログラムにより実行される処理を示している。
【００６７】
図１０において、この処理が開始されると、まず、アクション名を入力する（ステップ２３１）。次に、データ収集に必要な情報を入力する（ステップ２３２）。
【００６８】
そして、図６に示したアクションテーブル１２３−１を設定する（ステップ２３３）。ここで、アクション名は、本プログラムで入力したアクションの名前、すなわちステップ２３１で入力されたアクション名に設定され、アクションＩＤは、一意のＩＤを生成して設定され、アクション種別は、収集をあらわす種別ＩＤに設定される。
【００６９】
次に、図６に示したアクション種別ごとのテーブル（データ収集テーブル）１２３−３を設定する（ステップ２３４）。ここで、アクションＩＤは、アクションテーブル１２３−１に設定したアクションＩＤと同じＩＤ、すなわち、ステップ２３３で設定したＩＤと同じＩＤが設定され、ファイル名は、データ収集するファイル名に設定され、データ収集フォーマットは、どのデータをどのように収集するかを設定する。その後、この処理を終了する。
【００７０】
図１１は、図３に示したジョブ設定部の処理を示すフローチャートである。  図１１において、図３に示したジョブ設定部１１２の処理が開始されると、まず、図５に示したトリガテーブル１２１−１に登録されているトリガの一覧を表示し、その中で発生させるトリガを選択する（ステップ２４１）。
【００７１】
次に、図６に示したアクションテーブル１２３−１に登録されているアクションの一覧を表示し、その中で先ほど選択したトリガが発生したときに実行させるアクションを選択する（ステップ２４２）。
【００７２】
そして、選択したトリガとアクションの組み合わせの各ＩＤを図４に示したジョブテーブル１２２−１に登録し（ステップ２４３）、このジョブ設定部１１２の処理を終了する。
【００７３】
図１２は、図３に示したトリガ起動部による起動処理を示すフローチャートである。
【００７４】
図１２に示す起動処理においては、まず、図４に示したジョブテーブル１２２−１に登録されているジョブのトリガＩＤを取得する（ステップ２５１）。
【００７５】
次に、上記トリガＩＤを図４に示したジョブテーブル１２２−１より検索し、トリガ種別を知る（ステップ２５２）。
【００７６】
そして、上記トリガ種別に対応した実行プログラムを図５に示したトリガプログラム情報テーブル１２１−２より検索し対応する実行プログラムを起動する。この時、実行プログラムの起動パラメータとしてトリガＩＤを渡す（ステップ２５３）。
【００７７】
次に、全てのジョブを終了したかを調べ（ステップ２２６）、全てのジョブを終了しない場合は（ステップ２５４でＮＯ）、ステップ２５１に戻るが、全てのジョブを終了したと判断した場合は（ステップ２５４でＹＥＳ）、ステップ２５５に進む。
【００７８】
ステップ２５５では、図４に示したジョブテーブル１２２−１に登録されているジョブアクションＩＤを取得する。
【００７９】
そして、上記アクションＩＤを図６に示したアクションテーブル１２３−１より検索し、アクション種別を知る（ステップ２５６）。
【００８０】
次に、上記アクション種別に対応した実行プログラムを図６に示したアクションプログラム情報テーブル１２３−２より検索し対応する実行プログラムを起動する。この時、実行プログラムの起動パラメータとして、アクションＩＤを渡す（ステップ２５７）。
【００８１】
そして、全てのジョブを終了したかを調べ（ステップ２５８）、全てのジョブを終了していない場合は（ステップ２５８でＮＯ）、ステップ２５５に戻るが、全てのジョブを終了したと判断した場合は（ステップ２５８でＹＥＳ）、この処理を終了する。
【００８２】
図１３は、図１２に示した処理により起動された各トリガごとの実行プログラムによる処理を示すフローチャートである。
【００８３】
図１３において、この処理が開始されると、ます、起動時に渡されたトリガＩＤより図５に示したトリガ種別ごとのテーブル１２１−３、すなわち、例えば、定周期トリガテーブルよりなるトリガ種別ごとの設定テーブルを検索する（ステップ２６１）。
【００８４】
そして、検索したトリガＩＤに対応する種別ごとの設定内容を取得する（ステップ２６１）。ここで、取得するトリガＩＤに対応する種別ごとの設定内容とは、例えば、定周期トリガテーブルでは定周期にトリガを発生させる間隔である。
【００８５】
次に、取得した情報を元にトリガを発生させるための準備を行う（ステップ２６３）。ここで、取得した情報を元にトリガを発生させるための準備とは、例えば、トリガ種別が定周期である場合は、周期ごとにトリガを発生させるタイマを開始させることになる。
【００８６】
そして、トリガが発生したことを認識すると、例えば、定周期トリガで、定周期にタイマ割り込みが発生すると、図３に示したフローコントロール部１５２に対してイベント通知を行う。このイベント通知においてはトリガＩＤを付加して通知する（ステップ２６４）。
【００８７】
次にこの処理を終了するかを調べ（ステップ２６５）、終了しない場合は（ステップ２６４でＮＯ）、ステップ２６３に戻るが、終了と判断されると（ステップ２６５でＹＥＳ）、この処理を終了する。
【００８８】
図１４は、図３に示したフローコントロール部の処理を示すフローチャートである。
【００８９】
図１４において、図３に示したフローコントロール部１５２の処理が開始されると、まず、イベント受信待ちになる（ステップ２７１）。
【００９０】
そして、次に、イベント受信かを調べる（ステップ２７２）。ここで、イベント受信でないと判断されると（ステップ２７２でＮＯ）、ステップ２７１に戻るが、イベント受信と判断されると（ステップ２７２でＹＥＳ）、渡されたトリガＩＤを元に図４に示したジョブテーブル１２２−１を検索し、対応するアクションＩＤを取得し（ステップ２７３）、図６に示したアクションテーブル１２３−１を検索し、対応するアクション種別実行プログラムを取得する（ステップ２７４）。
【００９１】
そして、図１２に示した起動処理で起動したアクションＩＤごとのアクション実行プログラムにトリガ発生を通知する（ステップ２７５）。
【００９２】
次に、この処理を終了するかを調べ（ステップ２７６）、終了しないと判断されると（ステップ２７６でＮＯ）、ステップ２７１に戻るが、終了すると判断されると（ステップ２７６でＹＥＳ）、この処理を終了する。
【００９３】
図１５は、図１２の処理により起動した各アクション種別ごとの実行プログラム初期化処理を示すフローチャートである。
【００９４】
図１５において、この処理が開始されると、まず、起動時に渡されたアクションＩＤにより、図６に示したアクションごとのテーブル１２３−３、すなわち、例えば、データ収集アクションテーブルからなるアクションごとの設定テーブルを検索する（ステップ２８１）。
【００９５】
次に、検索したアクションＩＤに対応する種別ごとの設定内容、例えば、データ収集アクションテーブルでは、収集ファイル名と収集フォーマットの情報を取得する（ステップ２８２）。
【００９６】
そして、各種別ごとの処理を行う（ステップ２８３）。例えば、データ収集では、指定データ収集ファイルをオープンするなどの処理を行う。
【００９７】
この状態で、図３に示したフローコントロール部１５２からトリガ発生が通知されると、設定内容にしたがってデータ収集など、アクション種別固有の実行処理を行う（ステップ２８４）。
【００９８】
次に、この処理を終了するかを調べ（ステップ２８５）、終了しないと判断されると（ステップ２８５でＮＯ）、ステップ２８４に戻るが、終了すると判断されると（ステップ２８５でＹＥＳ）、この処理を終了する。
【００９９】
このように、この実施の形態においては、複数のＰＬＣ２０−１、２０−２と、データファイル４０およびユーザアプリケーション５０との間にデータフロー制御装置１０を接続し、このデータフロー制御装置１０は、各種トリガと該トリガに対応する各種アクションとを対応付けて設定し、トリガの発生に対応して該トリガに対応する所望のアクションを自動実行するように構成したので、複数のＰＬＣ２０−１、２０−２とデータファイル４０およびユーザアプリケーション５０との間のデータの流れ制御を、トリガ種別やアクション種別が増加しても容易に行うことができ、しかもその開発コストも低く抑えることのできる。
【０１００】
【発明の効果】
以上説明したように、請求項１の発明によれば、処理の開始タイミングを示すトリガと該処理の実際の内容を示すアクションとを関連付けて設定し、上記トリガの発生に基づき該トリガに対応して設定されたアクションを自動実行するように構成したので、トリガ種別やアクション種別が増加しても容易に対応することができ、しかもその開発コストも低く抑えることのできるデータ管理方法を提供することができる。
【０１０１】
また、請求項２の発明によれば、処理の開始タイミングを示すトリガを設定するトリガ設定手段と、上記処理の実際の内容を示すアクションを設定するアクション設定手段と、上記トリガ設定手段で設定したトリガに対応して前記アクション設定手段で設定したアクションを関連付けることによりジョブを設定するジョブ設定手段と、上記トリガ設定手段で設定したトリガの発生に対応して上記ジョブ設定手段で関連付けられたアクションを実行する制御手段とを具備して構成したので、トリガ数やアクション数が増加しても容易に対応することができ、しかもその開発コストも低く抑えることのできるデータ管理装置を提供することができる。
【図面の簡単な説明】
【図１】この発明に係るデータ管理方法、データ管理装置及びそれらの記録媒体を適用して構成したデータフロー制御システムの一実施の形態を示すシステム構成図。
【図２】図１に示したデータフロー制御装置の詳細構成を示すブロック図。
【図３】図２に示したデータフロー制御装置の詳細動作を示す機能ブロック図。
【図４】図３に示したジョブ設定データベース（ジョブ設定ＤＢ）の一例を示す図。
【図５】図３に示したトリガ設定データベース（トリガ設定ＤＢ）の一例を示す図。
【図６】図３に示したアクション設定データベース（アクション設定ＤＢ）の一例を示す図。
【図７】図３に示したトリガ設定部の処理を示すフローチャート。
【図８】図７に示した処理で選択された種別ごとのトリガ設定プログラムにより実行される処理の一例を示すフローチャート。
【図９】図３に示したアクション設定部の処理を示すフローチャート。
【図１０】図９に示した処理で選択された種別ごとのアクション設定プログラムにより実行される処理の一例を示すフローチャート。
【図１１】図３に示したジョブ設定部の処理を示すフローチャート。
【図１２】図３に示したトリガ起動部による起動処理を示すフローチャート。
【図１３】図１２に示した処理により起動された各トリガごとの実行プログラムによる処理を示すフローチャート。
【図１４】図３に示したフローコントロール部の処理を示すフローチャート。
【図１５】図１２の処理により起動した各アクション種別ごとの実行プログラム初期化処理を示すフローチャート。
【符号の説明】
１０    データフロー制御装置
１１    装置設定ツール
１２    設定テーブル
１３    タグ設定ツール
１４    タグデータベース
１５    サービス処理部
１６    制御モジュール
１７    トリガモジュール
１８    アクションモジュール
２０−１、２０−２    ＰＬＣ（プログラマブルロジックコントローラ）
３０    ＦＡネットワーク
４０    データファイル
５０    ユーザアプリケーション
６０    ゲートウエイ
１１１    トリガ設定部
１１２    ジョブ設定部
１１３    アクション設定部
１２１    トリガ設定データベース（トリガ設定ＤＢ）
１２１−１    トリガテーブル
１２１−２    トリガプログラム情報テーブル
１２１−３    トリガ種別ごとのテーブル
１２２    ジョブ設定データベース（ジョブ設定ＤＢ）
１２２−１    ジョブテーブル
１２３    アクション設定データベース（アクション設定ＤＢ）
１２３−１    アクションテーブル
１２３−２    アクションプログラム情報テーブル
１２３−３    アクション種別ごとのテーブル
１５１    トリガ起動部
１５１−１    トリガ種別１設定プログラム
１５１−２    トリガ種別２設定プログラム
１５１−３    トリガ種別３設定プログラム
１５２    フローコントロール部
１５２−１    アクション種別１設定プログラム
１５２−２    アクション種別２設定プログラム
１５２−３    アクション種別３設定プログラム
１５３−１    トリガ種別１実行プログラム
１５３−２    トリガ種別２実行プログラム
１５３−３    トリガ種別３実行プログラム
１５３−４    トリガ種別４実行プログラム
１５４−１    アクション種別１実行プログラム
１５４−２    アクション種別２実行プログラム
１５４−３    アクション種別３実行プログラム
１５４−４    アクション種別４実行プログラム
【図１】
0003580347.tif 000002
【図２】
0003580347.tif 000003
【図３】
0003580347.tif 000004
【図４】
0003580347.tif 000005
【図５】
0003580347.tif 000006
【図６】
0003580347.tif 000007
【図７】
0003580347.tif 000008
【図８】
0003580347.tif 000009
【図９】
0003580347.tif 000010
【図１０】
0003580347.tif 000011
【図１１】
0003580347.tif 000012
【図１２】
0003580347.tif 000013
【図１３】
0003580347.tif 000014
【図１４】
0003580347.tif 000015
【図１５】
0003580347.tif 000016